|
КД 2. Замена значения при перегрузке табличной части "Номенклатура".
| ☑ |
0
Koliaff
26.11.13
✎
13:57
|
Доброго времени суток. Помогите с КД 2.
При выгрузке надо по определенному условию заменять реквизит "Номенклатура" в табличной части "Товары" документа Поступления ТиУ. А именно если номенклатура находится в папке с кодом "Т00000105", вместо исходной номенклатуры надо перегружать сводную номенклатуру под кодом "00000000319".
Вот написал такой код в ПКС реквизита "Номенклатура", табличной части "Товары" :
Если Источник.Номенклатура.ПринадлежитЭлементу(Справочники.Номенклатура.НайтиПоКоду("Т00000105")) Тогда
Значение = Справочники.Номенклатура.НайтиПоКоду("00000000319");
КонецЕсли;
=================================
Выдает ошибку "поле номенклатура" не обнаружена.
Делал подобное при замене реквизита шапки "Контаргент", все получалось. Вот рабочий код :
Если Источник.Контрагент.Родитель.Код = "000000089" Тогда
Значение = Справочники.Контрагенты.НайтиПоКоду("ОФ0000273");
КонецЕсли;
================================
А как правильно обратиться к реквизиту табличной части ?
|
|
1
vicof
26.11.13
✎
13:58
|
В табличной части есть свойство ОбъектКоллекции
|
|
2
vicof
26.11.13
✎
13:59
|
Если ОбъектКоллекции.Номенклатура...блаблабла
|
|
3
Рэйв
26.11.13
✎
14:00
|
ПослеЗагрузки
Пребеирай Объект.Товары и меняй что хошь
|
|
4
Necessitudo
26.11.13
✎
14:00
|
На самом деле получается плохо просто потому что вы инициируете запрос в цикле. Лучше сделать ПВД по ПТУ и в произвольном алгоритме запросом указать нужные данные для переноса.
|
|
5
Necessitudo
26.11.13
✎
14:01
|
Но это конечно если вся номенклатура есть в источнике и нужно при выгрузке заменить номенклатуру выгружаемую.
|
|
6
Koliaff
26.11.13
✎
14:01
|
(vicof) Спасибо, выгрузка прошла, сейчас попробую загрузить.
(Рэйв) Не нужны лишние данные в конфигурации приемнике.
|
|