|
|
|
Ну помогите мне, пожалуйста. Как мне заменить прораммно в карточке ГТД и Ст | ☑ | ||
|---|---|---|---|---|
|
0
mulder_mulder
03.03.08
✎
11:48
|
Ну помогите мне, пожалуйста. Как мне заменить прораммно в карточке товара ГТД и Страну, если можно, пример..
Я уже третий день бьюсь, прошлые ответы не помогли. Все мои попытки приводят к сообщению, что элемент справочника не может быть перепозицирован. Уже появляется желание побится головой о стену. |
|||
|
1
p1l1
03.03.08
✎
11:50
|
Приведите пример вашего кода и документ в котором вы его пробовали запустить
|
|||
|
2
mulder_mulder
03.03.08
✎
11:56
|
вот написал процедуру целую.
Процедура поменять_гтд_и_страну(гтд_,страна_,номенкл) с_гтд = создатьобъект("Справочник.гтд"); с_страна = создатьобъект("Справочник.оксм"); с_гтд.Найтипонаименованию(гтд_);//ищем, и выбираем нужную позицию if с_гтд.Выбран() > 0 Тогда//если есть номенкл.НомерГТД = с_гтд.текущийэлемент();//меняем ГТД endif; if с_гтд.Выбран() <= 0 Тогда//если_нет с_гтд.новый(); с_гтд.наименование=гтд_; с_гтд.комментарий=""; с_гтд.записать(); с_гтд.Найтипонаименованию(гтд_);//выбираем нужную позицию if с_гтд.Выбран() > 0 Тогда номенкл.НомерГТД = с_гтд.текущийэлемент();//забиваем ГТД endif; endif; с_страна.Найтипонаименованию(страна_);//ищем, и выбираем нужную позицию if с_страна.Выбран() > 0 Тогда//если есть номенкл.странаПроисхождения = с_страна.текущийэлемент();//забиваем страна_ану endif; if с_страна.Выбран() <= 0 Тогда//если_нет с_страна.новый(); с_страна.наименование=страна_; с_страна.код=""; с_страна.записать(); с_страна.Найтипонаименованию(страна_);//выбираем нужную позицию if с_страна.Выбран() > 0 Тогда номенкл.странаПроисхождения = с_страна.текущийэлемент();//забиваем страна_ану endif; endif; номенкл.записать(); КонецПроцедуры не работает, выдаёт, что не выбран элемент Когда прямо в код вставляешь, без процедуры. результат тот же |
|||
|
3
mulder_mulder
03.03.08
✎
11:58
|
В этой процедуре продуманный код, по добавлению нового значения в списки ГТД и Страны (если нет) По этому такой длинный код
|
|||
|
4
mulder_mulder
03.03.08
✎
12:01
|
(2) (3) документ, по заведению товара из выгрузки. Условие такое, что если такой товар в базе уже есть То поменять в уже существующей карточке ГТД и Страну
|
|||
|
5
Zmich
03.03.08
✎
12:03
|
(2). ИМХО, ты, скорей всего, передаешь в процедуру не элемент справочника Номенклатура, а его значение.
Используй НайтиЭлемент() в начале процедуры. |
|||
|
6
у лю 427
03.03.08
✎
12:02
|
___|____|____|____|____|__
_|____|____|____|____|____| ___|____|_биться___|____|__ _|____|___здесь_|____|____| ___|____|____|____|____|_ _|____|____|____|____|____| ___|____|____|____|____|___ |
|||
|
7
mulder_mulder
03.03.08
✎
12:08
|
(6)Орригинально, но не смешно
|
|||
|
8
у лю 427
03.03.08
✎
12:09
|
ГТД в карточке переписывать нельзя - а вдруг товар по предыдущей ГТД еще не кончился?
Тогда данные рвать будет |
|||
|
9
mulder_mulder
03.03.08
✎
12:11
|
А моему главбуху Побарабану. Я ему уже пол недели об этом говорю.
|
|||
|
10
mulder_mulder
03.03.08
✎
12:11
|
(8)То есть ей
|
|||
|
11
Восточный Парень
03.03.08
✎
12:11
|
с_гтд.Найтипонаименованию(гтд_);//ищем, и выбираем нужную позицию
if с_гтд.Выбран() > 0 Тогда//если есть Жесть |
|||
|
12
mulder_mulder
03.03.08
✎
12:12
|
(11)А как тогда правильно...
|
|||
|
13
Восточный Парень
03.03.08
✎
12:45
|
Если у тебя "гтд_" это элемент справочника, то в твоем случае его искать совсем не надо, а просто присваивать. Если это наименование, то играйся с параметрами "НайтиПоНаименованиею()" и проверяй выполнено или нет.
НУ блин и пиши код либо на русском, либо на английском. И поставь себе телепат. |
|||
|
14
Джинн
03.03.08
✎
12:49
|
Ты разобрался какой метод списания себестоимости?
|
|||
|
15
maxar
03.03.08
✎
12:51
|
Если с_гтд.Найтипонаименованию(гтд_)= 1 Тогда //ищем, и выбираем нужную позицию
//чего то делаем Иначе // создаем новый КонецЕсли; |
|||
|
16
Ёпрст2
03.03.08
✎
12:56
|
(0) Хз чего там тебе надо ....
Процедура поменять_гтд_и_страну(гтд_,страна_,номенкл) гтд = СоздатьОбъект("Справочник.Гтд"); страна = СоздатьОбъект("Справочник.Оксм"); Спр = СоздатьОбъект("Справочник.Номенклатура"); Если гтд.НайтиПоНаименованию(гтд_)=0 Тогда гтд.Новый(); гтд.Наименование=гтд_; гтд.Комментарий=""; гтд.Записать(); КонецЕсли; Если страна.НайтиПоНаименованию(страна_)=0 страна.Новый(); страна.Наименование=страна_; страна.Записать(); КонецЕсли; Спр.СтранаПроисхождения = с_страна.текущийэлемент();//забиваем страна_ану Спр.НомерГТД = гтд.ТекущийЭлемент(); Спр.Записать(); КонецПроцедуры |
|||
|
17
mulder_mulder
03.03.08
✎
13:20
|
(14) Моё начальство плюёт на все законы бухгалтерского ведения, им тупо надо, чтобы вся база подгонялась, под новый товар. Глупо получается, но ничего не поделаешь.
|
|||
|
18
Джинн
03.03.08
✎
13:27
|
(17) В третий уже раз спрашиваю - какой метод списания себестоимости выбран. От этого и дальше плясать нужно.
|
|||
|
19
mulder_mulder
03.03.08
✎
13:29
|
(13)гтд_ у меня строковый параметр, выдираемый из тхт, файла выгрузки приходника
который сначала ищется, если (на всякий случай) его нет, если нет, то записывает как новый параметр, а потом просто выбирает. Но это не важно. Мне сейчас надо поменять в уже готовой карточке НАПЛЕВАВ на законы бухгалтерии ГТД и Страну, чтобы мне ни сказали. и чтобы при том не вылезло сообщение о неперепозиированном объекте, и о том, что я якобы не выбрал элемент. |
|||
|
20
mulder_mulder
03.03.08
✎
13:34
|
Можно, лично для меня, пояснить, что такое "метод списания себестоимости"
Я всю свою сознательную жизнь писал в делфи. Потом, в один прекрасный день, попросили написать обработку в 1С, потом мне просто сели на шею, и сказали, чтобы я дополнил эту АБАРМОТКУ, с чем я сейчас и сижу. ЗЫ желаю приятно посмеятся, буду рад если мне помогут |
|||
|
21
selenat
03.03.08
✎
13:32
|
(19) ты себе бумажку с ТЗ и подписью ГБ вытребовал? А то ведь потом ты виноват останешся...
|
|||
|
22
Джинн
03.03.08
✎
13:37
|
(20) Мдя.... Спроси хотя бы у главбуха, если сам не знаешь где посмотреть.
|
|||
|
23
mulder_mulder
03.03.08
✎
14:40
|
(21) Что такое бумажка с Т3 ?
(22) Глав бух говорит, что метод списания товара у него скорее всего имеет вид "Покупная" |
|||
|
24
Митор
03.03.08
✎
14:55
|
(23) писец главбуха ф Топку, беги с этой фирмы подальше
|
|||
|
25
mulder_mulder
03.03.08
✎
15:48
|
(24)Ну то всё хорошо... но тема, есть тема..
|
|||
|
26
Митор
03.03.08
✎
15:52
|
(25) ну тебе в (16) вроде ответили уже
|
|||
|
27
mulder_mulder
03.03.08
✎
15:56
|
(26)Тогда, спасибо, а то я на работе, а обормотка дома.
Проверить не на чем. :) |
|||
|
28
Ёпрст
гуру
03.03.08
✎
16:02
|
(27) Там не хватает одной строчки кода ...
|
|||
|
29
mulder_mulder
03.03.08
✎
16:37
|
(28) Ели не секрет?? каккая строка, а то уменя уже голова в хлам, мысли сбиваются в кучки, а толку не какого...
Скоро буду издавать глухие мычащие звуки, вообще... :) |
|||
|
30
mulder_mulder
03.03.08
✎
18:10
|
(16)не получается, вот что пишет программа:
Вентилятор для корпуса 80*80*25 (питание от материнской платы, 3pin), подшипник номенкл.Записать(); {Обработка.Загрузка_Товара_ООО_Техника.Форма.Модуль(322)}: Не выбран элемент! |
|||
|
31
Ёпрст
гуру
03.03.08
✎
18:11
|
(30)
Спр.НайтиЭлемент(номенкл); воткни ... радуйся |
|||
|
32
mulder_mulder
03.03.08
✎
18:26
|
(31)Жаль смалЙков нет, но у меня рот до ушей, наконец-то получилось.
Одно непонятно, зачем передавать папраметр позиции, в другой объект. если можо было воспользоваться переданным в процедуру. Например в делфи я так только и поступаю. Но 1С это другое, ладно, буду теперь учёным, запомню, Сделал шаг - наделай кучу экземпляров объекта, и передай в них значения собратьев клонов. Нет, на самом деле, я без ума от счаться. Теперь пусть главбух, пожинает плоды своих желаний ;). Спасибо всем... |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |