Имя: Пароль:
1C
1С v8
Программное присвоение значения КД 2
0 Aftee
 
27.09.17
22:05
Здравствуйте.

Обмен между УТ -> БП. В УТ реквизит спр. контрагенты называется ЮрФизЛицо, в БП - ЮридическоеФизическоеЛицо.
Подскажите, пожалуйста, как программно присвоить значение реквизиту ЮридическоеФизическоеЛицо в зависимости от значения реквизита ЮрФизЛицо?

Пытаюсь так сделать, но ругается:

Если Источник.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо Тогда
    Приемник.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо;
Иначе
    Приемник.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо;
КонецЕсли;
1 Лефмихалыч
 
27.09.17
22:10
Если я ни чего не путаю, то - имя значения перечисления строкой:

Приемник.ЮридическоеФизическоеЛицо = "ЮридическоеЛицо";
2 Amra
 
27.09.17
22:15
А зачем?  Делаешь ПКС ЮрФизЛицо-ЮридическоеФизическоеЛицо, указываешь для него правило конвертации соответсвующих перечислений, в правиле перечисления указываешь соответствие значений. Ни единой строчки кода
3 Aftee
 
27.09.17
22:24
(2) Создано ПКС, назначено ему правило конвертации перечислений. Все равно при загрузке не заполняются реквизиты так как надо.
4 Aftee
 
27.09.17
22:33
(1) Может я не в том обработчике событий делаю? Ругается на МетодОбъектаНеОбнаружен
5 h-sp
 
27.09.17
23:10
(4) скопируй из типовых правил этот момент.
6 Aftee
 
27.09.17
23:13
(5) да вот есть аналогичные правила для таких же конфигураций. В одних загружаются значения, в других нет. Все идентично для конкретных реквизитов
7 vicof
 
27.09.17
23:16
(2) +1
8 Aftee
 
27.09.17
23:23
Получилось сделать, как обычно из-за невнимательности. Спасибо. Есть теперь другой вопрос. Как сделать проверку на заполненность реквизиты и в зависимости от этого плясать уже?
9 Mankubus
 
28.09.17
07:19
(8) Если ЗначениеЗаполнено(Реквизит) Тогда Плясать..
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший