Имя: Пароль:
1C
1С v8
Маленький вопрос по КД.
0 GreatOne
 
04.12.14
13:42
В типовой КД есть пример обмена УТ-БП.
В ПКС "СчетБанк" есть код:

Если Источник.ВалютаДокумента = Константы.ВалютаРегламентированногоУчета.Получить() Тогда
    Значение = "51";
Иначе
    Значение = "52";
КонецЕсли;
, ПКО у источника не указано, источник тоже. Если указать источник(с тем учетом, что имеется идентичный), то код работать перестает. Отработает лишь прямое указание счета:

Если Источник.ВалютаДокумента = Константы.ВалютаРегламентированногоУчета.Получить() Тогда
    Значение = ПланыСчетов.Хозрасчетный.НайтиПоКоду("51");;
Иначе
    Значение = ПланыСчетов.Хозрасчетный.НайтиПоКоду("52");;
КонецЕсли;


Т.к. не понимаю, что происходит, долго бился над одной задачей, пока не решил ради эксперимента удалить источник и ПКО.

Что значит Значение = "51"? Как оно обрабатывается и понимает,что это счет с кодом 51?
1 GreatOne
 
04.12.14
13:43
там не ПКО у источника, а просто ПКО у этого ПКС
2 Godofsin
 
04.12.14
13:57
(1) Преобразование это
3 Godofsin
 
04.12.14
13:58
Преобразование строки в тип приемника
4 Godofsin
 
04.12.14
14:02
По коду )))
5 GreatOne
 
04.12.14
14:03
То есть он понимает, что строку надо преобразовать в код приемника, вне зависимости какого типа приемник? Где это почитать можно? Ведь инфа как-то очень уж специфичная
6 GreatOne
 
04.12.14
14:03
в смысле так-то оно видимо и есть, но самому додуматься сложно, не совсем очевидно как-то.
7 JeyRico
 
04.12.14
14:07
Из строки в ссылочный тип автоматически переводятся предопределенные элементы справочников и значения перечислений.
8 GreatOne
 
04.12.14
14:11
(7) Здорово. Но вот у плана счетов предопределенные элементы называются "Вспомогательный счет", "ПродажиПоПлатежнымКартам" и т.д. То есть просто принять как данное и все? Что для плана счетов или справочников строка переводится в код предопределенного значения?