![]() |
|
Перенос справочника в перечисления | ☑ | ||
---|---|---|---|---|
0
rt2000
27.12.16
✎
11:27
|
Документ поступления товаров. В табличной части есть реквизит СтавкаНДС.
У справочника нет предопределенных элементов, значит сопоставить нельзя. Создал ПКО "СтавкиНДС". В событии "Перед выгрузкой", написал код. В ПКС, не добавлял реквизиты. т.к. в приемнике их нету. Сопаставлять нечем. если Источник.Наименование = "10%" тогда Значение = "НДС10"; //Выражение = "Перечисления.СтавкиНДС.НДС10"; иначеЕсли Источник.Наименование = "18%" тогда Значение = "НДС18"; //Выражение = "Перечисления.СтавкиНДС.НДС18"; конецЕсли; Это не работает 2) сделал по другому Зашел в ПКО документа "Поступления". открыл ПКС "СтавкиНДС", установил связь "правило конвертации" на правило "СтавкиНДС" Что добавить еще? |
|||
1
rt2000
27.12.16
✎
11:46
|
Подскажите, может умная мысль будет? Наверняка что то упустил, нужен свежий взгляд.
|
|||
2
SergTheGreat
27.12.16
✎
13:32
|
(0) Давай еще раз. В источнике есть колонка ТЧ типа "справочник", а в приемнике - "перечисление" и нужно перенести документ, конвертируя справочник в перечисление, так?
|
|||
3
тарам пам пам
27.12.16
✎
13:38
|
в ПКО в "ПередВыгрузкой" переменная "Значение" не имеет особого смысла. Тебе нужно добавить ПКС, поставить там флаг "Передавать данные в параметр", обозвать его например "Наименование" и поставить по нему флаг "поиск". Затем в ПКО в событии "Поля поиска" по этому параметру вручную найти перечисление, например так:
Наименование = ПараметрыОбъекта["Наименование"]; Ссылка = Перечисления.СтавкиНДС[Наименование]; |
|||
4
тарам пам пам
27.12.16
✎
13:42
|
Блин, перечитал еще раз справку, похоже я нагнал тут лишнего. В твоем примере замени просто "Значение" на "Приемник" и все.
|
|||
5
takefive
27.12.16
✎
14:03
|
ПКО не нужно...
|
|||
6
rt2000
27.12.16
✎
14:14
|
Нашел другой способ. Если кому то будет дальше интересно.
ПКО "СтавкиНДС". "Перед выгрузкой" Приемник = Источник; "После выгрузке" если Источник.Наименование = "10%" тогда //Значение = "НДС10"; //Выражение = "Перечисления.СтавкиНДС.НДС10"; УзелСсылки = "НДС10"; иначеЕсли Источник.Наименование = "18%" тогда //Значение = "НДС18"; //Выражение = "Перечисления.СтавкиНДС.НДС18"; УзелСсылки = "НДС18"; конецЕсли; Отказ = ИСТИНА; И поставить галочку "Не запоминать выгруженные объекты" Так работает. Проверил. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |