Имя: Пароль:
1C
1С v8
Динамическое добавление номенклатуры в табличную часть (Заказ клиента, ЕРП)
0 denis_z3x
 
17.08.20
16:44
Здравствуйте!
Есть ЕРП. Хочу сделать автоматический подбор номенклатуры опираясь на данные с сайта.
Есть такая процедура

<pre>
&НаКлиенте
Процедура Расш1_ПартнерПриИзмененииПосле(Элемент)
    
    товар = получитьНоменклатуру("00-00000252");   // Код приходит с сайта. По Коду нахожу нужную позицию номенклатуры
    
    намкл = Объект.Товары.Добавить();
    
    намкл.Номенклатура =   товар.ссыль;
    намкл.Характеристика = ХарактеристикаТовара(товар.хар); // Запрашиваю первую характеристику данной номенклатуры
    намкл.Количество =   2 ;
    намкл.КоличествоУпаковок =   1 ;
    
    Сообщить(""+товар.хар+"=Товар=="+ХарактеристикаТовара(товар.хар)); //выдает номенклатуру и характеристику всегда
    
        
КонецПроцедуры
</pre>

При запуске процедуры в таблице появляется строка с названием номенклатуры, количеством. Но без характеристики!
Если еще раз запустить процедуру, то появляется 2 строка, с той же номенклатурой, при этом!!! в первой строке заполняется характеристика, а вторая строка остается без характеристики.
Как так?

P.S Когда запускаю процедуру первый раз то Сообщение выдает номенклатуру и характеристику.
1 lodger
 
17.08.20
17:17
сразу после добавления напиши:
намкл = Объект.Товары.Добавить();
намкл.ХарактеристикиИспользуются = истина;

Как так? - уот так уот. при обновлении таблицы, когда ты вкрячиваешь следующую строку, пересчитывается предыдущая.
2 denis_z3x
 
17.08.20
19:28
(1) Ну ты Божина... Спасибо!
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший