Имя: Пароль:
1C
1С v8
v8: ПКО. Конвертация из числа в перечисление
0 NikePopov
 
30.11.12
11:02
Добрый день, Господа.

Столкнулся с проблемой:
Требуется создать автономное ПКО для конвертации из числа в перечисление(пример - ставки НДС). Вариант с изменением значения в ПКС известен, но при текущей задаче неудобен.

Варианты решения:
В обработчике перед выгрузкой объекта изменил источник:

Если Источник = 10 Тогда
   Приемник = "НДС10";
ИначеЕсли Источник = 18 Тогда
   Приемник = "НДС18";
Иначе
   Приемник = "БезНДС";
КонецЕсли;

Результат:

Ошибка в обработчике события ПередОбработкойПравилаВыгрузки
   ПВД                    =  Продукты
   Обработчик             =  ПередОбработкойВыгрузкиДанных
   ОписаниеОшибки         =  Значение не является значением объектного типа (ЗаписатьКонецЭлемента)
   ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(9751)
   КодСообщения           =  31

Вариант 2. В обработчике при выгрузке объекта попробовал сам описать узел Приемника:

ЗначениеУзла = СоздатьУзел("Значение");
Если Источник = 10 Тогда
   ЗначениеУзла.ЗаписатьТекст("НДС10");
ИначеЕсли Источник = 18 Тогда
   ЗначениеУзла.ЗаписатьТекст("НДС18");
Иначе
   ЗначениеУзла.ЗаписатьТекст("БезНДС");
КонецЕсли;
ДобавитьПодчиненный(Приемник, ЗначениеУзла);

Результат: Не верный формат файла.

Есть идеи как неиспользуя переменную значение В ПКС(и собственно само ПКС) реализовать такое ПКО? Буду очень признателен.
1 NikePopov
 
30.11.12
11:04
Прошу прощения за орфографический беспредел, тяжко по Москве нынче добираться.
2 cw014
 
30.11.12
11:05
> Вариант с изменением значения в ПКС известен, но при текущей задаче неудобен.

Почему?
3 NikePopov
 
30.11.12
11:08
Разработку правил производит специалист(ну, если меня так можно назвать) правила обмена постоянно предполагается менять, и далеко не факт, что это будет делать хоть немного знакомый с КД человек. При разработке правил пишу документацию, по которой возможно в целом понять принципы её работы. Одно из правил в таких случаях - автономность объектов.
4 NikePopov
 
30.11.12
11:10
При этом задача оптимизации стоит на последнем месте в списке(если где-то можно, то сделать, если нет - и фиг с ним).
5 NikePopov
 
30.11.12
14:42
Вопрос закрыт. Решение:

Если Источник = 10 Тогда
   УзелСсылки  = "НДС10";
ИначеЕсли Источник = 18 Тогда
   УзелСсылки  = "НДС18";
Иначе
   УзелСсылки  = "БезНДС";
КонецЕсли;


В обработчик "ПослеВыгрузкиОбъекта" в ПКО.
6 acsent
 
30.11.12
14:44
нужно
Значение = "..."
7 lxndr
 
30.11.12
14:45
(6) это в ПКС. А ему ПКС не хочется
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn