![]() |
|
БП 3.0 Использование подписки зля заполнения аналитики проводок | ☑ | ||
---|---|---|---|---|
0
Sasha_1CK
11.03.15
✎
10:07
|
Задача - добавить оборотное Субконто "Подразделение" на счета учета ДС (50.01, 51)
Использовать галочку Учет по подразделениям - не кошерно - так как остатки естественно не нужны. Приход и расход и дет по разным подразделениям. Создал субконто - "Подразделения". Программно добавил на счета 50.01 и 51. На 50.01 получилось 2-ое субконто. На 51 получилось 3-е субконто. Учет по ДДС включен. Добавил подписку на событие "ОбработкаПроведения". При проведении делаю перебор движений хозрасчетных и если счет Дт или Кт равен 50.01 или 51 устанавливаю в субконто "Подразделения" реквизит подразделение из документа. Для ПКО и РКО отрабатывается прекрасно. Я для банковских выписок - никак не отрабатывается. Учитывая что после проведения документа отрабатывается еще 100500 процедур и оповещений - никак не могу отловить момент когда же сбрасывается 3-е субконто. Может кто нибудь уже сталкивался с подобным поведением аналитики по счет 51? Вообще потребность в оборотной доп аналитике на 51/50 возникает постоянно, а прописывать ее каждый раз для дестяка все возможных операций по ДС - накладно и обновлять потом муторно - все ж таки хочется разобраться почему подписка не срабатывает. |
|||
1
Креатив
11.03.15
✎
10:26
|
(0)Перебор движений каким образом осуществляешь? Код в студию!
|
|||
2
Sasha_1CK
11.03.15
✎
10:42
|
ВидСубконтоПОдразделения = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НайтиПоКоду("А0002");
Для каждого Движение Из Источник.Движения.Хозрасчетный Цикл Если Движение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("50.01") Тогда БухгалтерскийУчет.УстановитьСубконто(Движение.СчетДт, Движение.СубконтоДт, ВидСубконтоПодразделения, Источник.ПодразделениеОрганизации); ИначеЕсли Движение.СчетКт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("50.01") Тогда БухгалтерскийУчет.УстановитьСубконто(Движение.СчетКт, Движение.СубконтоКт, ВидСубконтоПодразделения, Источник.ПодразделениеОрганизации); ИначеЕсли Движение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("51") Тогда БухгалтерскийУчет.УстановитьСубконто(Движение.СчетДт, Движение.СубконтоДт, ВидСубконтоПодразделения, Источник.ПодразделениеОрганизации); ИначеЕсли Движение.СчетКт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("51") Тогда БухгалтерскийУчет.УстановитьСубконто(Движение.СчетКт, Движение.СубконтоКт, ВидСубконтоПодразделения, Источник.ПодразделениеОрганизации); КонецЕсли; КонецЦикла; |
|||
3
Креатив
11.03.15
✎
10:54
|
(2)Тогда ещё проверь, что именно подписка висит у тебя на тех банковских документах, которые делают проводки. Ну а дальше в отладчик. Там ещё куча чего после твоей подписки обрабатывается.
|
|||
4
lxndr
11.03.15
✎
11:07
|
я бы добавил подписку на запись набора регистра бухгалтерии
|
|||
5
Sasha_1CK
12.03.15
✎
07:59
|
(4) Она выполняется до подписки на проведение выписки банка. С тем же результатом
(3) Я по этой куче уже второй день отладчиком туда и обратно хожу - не могут понять в какой момент из движения исчезает подразделение. Если сделать РКО на 51 счет - тоже подписка отрабатывает по РКО и подразделение встает и по кредиту 50.01 и по дебету 51. При этом, если этот же код поместить в модуль объекта СсРС - перед Движения.Записать() подразделение прописывается. И ничего не исчезает. Уже ничего не понимаю. Почему так? |
|||
6
Sasha_1CK
12.03.15
✎
08:12
|
Блин
На 3-й день "зоркий глаз" заметил что в сарае нет 4-й стенки. Почему то у ПКО и РКО в момент срабатывания подписки на проведение - реквизит "Записывать" стоит в Истина. а у ПнРС и СсРС в "Ложь". Обидно блин, как всегда самые простые вещи - самые незаметные. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |