Имя: Пароль:
1C
 
Перенос справочника Способ отражения зп в бух из ЗУП 2.5 в З.1
0 Wefast
 
13.03.19
10:10
Понадобилось сделать функционал справочника Способ отражения зп в бух в ЗУП 3.1 такой же как в 2.5

Я честно говоря немного забыл принципиальную разницу программирования в обычных формах и УФ

Пытаюсь переносить куски кода и адаптировать под УФ.

Если в кратце
У объекта есть реквезиты СчетДТ, СубконтоДТ1-3
На форме есть счет(из плана счетов), и есть его субконто.
При изменение счета субконто должны стать определенного типа, чтобы при попытке выбора субконто открывался соответствующий справочник.

В 2.5 это было реализовано так:
Вызывалась процедура из модуля объекта:
    ВидыСубконтоСчета = Счет.ВидыСубконто;

    Для Ном = 1 по 3 Цикл
        Если Ном <= ВидыСубконтоСчета.Количество() и ЗначениеЗаполнено(Счет) и
        //    ВидыСубконтоСчета[Ном-1].ВидСубконто.ТипЗначения.СодержитТип(ТипЗнч(ЭтотОбъект["Субконто"+ДтКт+Ном])) Тогда
        ВидыСубконтоСчета[Ном-1].ВидСубконто.ТипЗначения = ЭтотОбъект["Субконто"+ДтКт+Ном] Тогда
        //    // Без изменений
        //Иначе
            Если Ном <= ВидыСубконтоСчета.Количество() тогда
            ЭтотОбъект["Субконто"+ДтКт+Ном] = Новый(ВидыСубконтоСчета[Ном-1].ВидСубконто.ТипЗначения.Типы()[0]);
        ИначеЕсли  ЭтотОбъект["Субконто"+ДтКт+Ном] <> Неопределено Тогда
            ЭтотОбъект["Субконто"+ДтКт+Ном] = Неопределено;
        КонецЕсли;
    КонецЦикла;


Я перенес ее в 3.1, заменил ЭтотОбъект на Объект. В пределах процедуры тип у субконто меняется. Но при возвращение на форму тип становится Неопределенно(тоже не понятно почему такой тип, так как по умолчанию это ПланВидовХарактеристик.ВидыСубконтоХозрасчетные
И при нажатие кнопки выбора нужно сначала выбрать, список которых указан в плане характеристик.

Подозреваю что ЭтотОбъект в обычных формах и Объект в уф немного разные вещи, да и принципе я наверное могу изменить тип только реквизита формы.

Пытаюсь подсматривать в БП 3.0, но там совсем иначе все реализовано, используется куча общих бухгалтерских модулей и все как всегда в новых конфигурациях запутано.



Мне бы не помешал какой ни-будь путь для реализации задачи в целом или конкретной подзадачи. Может не менять тип реквизитов, а в момент выбора значения субконто подсказывать какой там тип должен быть.
что то типа если это Субконто1, то РеквизитНаФорме.ТипЗначения = Новый (Счет.ВидыСубконто[1].ВидСубконто.ТипЗначения)
1 Wefast
 
13.03.19
10:11
Про объект и этотОбъект я наверное ошибся, т.к. код уже из 3.1
2 dnab
 
13.03.19
10:31
Интересно, зачем это надо?
3 piter3
 
13.03.19
10:32
(2) хочет свою выгрузку нарисовать в бп
4 Wefast
 
13.03.19
10:36
(3) все так, все ради выгрузки, только не в бп, а комплексную конфигурацию (7.7)
5 Wefast
 
13.03.19
12:34
В общем не лезу в модуль объекта. Пишу там откуда ее вызывал

    УстановитьВидимостьСубконто(Счет, ДтКт);
    
    Для Н = 1 По 3 Цикл
        Если Н <= Счет.ВидыСубконто.Количество() и ЗначениеЗаполнено(Счет) и
            Объект["Счет"+ДтКт].ВидыСубконто[Н-1].ВидСубконто.ТипЗначения.Типы()[0] = ТипЗнч(Объект["Субконто"+ДтКт+Н]) Тогда
            // Без изменений
        ИначеЕсли Н <= Счет.ВидыСубконто.Количество() тогда
            Объект["Субконто"+ДтКт+Н] = Новый(Счет.ВидыСубконто[Н-1].ВидСубконто.ТипЗначения.Типы()[0]);
        ИначеЕсли  Объект["Субконто"+ДтКт+Н] <> Неопределено Тогда
            Объект["Субконто"+ДтКт+Н] = Неопределено;
        КонецЕсли;
    КонецЦикла;
6 Skylark
 
13.03.19
12:37
Это всё цветочки - способы отражения ты сделаешь, а вот алгоритм формирования проводок по регистрам ЗУП 3.1 и этим способам отражения...
Я что-то сомневаюсь.
Будешь вытаскивать его из Бухгалтерии?
7 Wefast
 
13.03.19
12:44
(6) Пока проводки вроде не нужны. Все это надо лишь для формирования файла при выгрузке и для понимания что способы отражения чем то отличаются, если наименование будет похожим.

А если отчеты какие то понадобятся будет достаточно регистров где сам способ указан.

Наверное
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс