Формирование проводок в УПП и КА

15.08.14

Разработка - Механизмы типовых конфигураций

В конфигурациях УПП и Комплексная автоматизация часто очень сложно найти код, который формирует проводки документа. Есть простой способ найти откуда растут ноги.
Места вызова процедур, которые формируют проводки в КА и УПП, не всегда логичны. Так, например, процедура формирования проводки для табличной части Прочее Документа Авансовый отчет в УПП вызывается в общем модуле УправлениеЗапасамиПартионныйУчет.
 
Мой простой способ заключается в следующем:

У регистра бухгалтерии хозрасчетный есть Модуль набора записей
В нем процедура ПередЗаписью. Она вызывается каждый раз, когда что-то пишется в регистр.
В эту процедуру нужно поставить точку останова.
Остается только понять, что именно в данный момент пишется в регистр (таблицу проводок), т.к. один документ может несколько раз создавать проводки. Для этого есть функция Выгрузить(). Ее можно написать прямо в табло или в выражении для вычисления.
После этого остается в режиме отладки дойти до конца процедуры и выйти из нее через F11. Таким образом мы попадем в процедуру, которая вызвала запись проводки. А из нее в предыдущую и так далее до тех пор, пока не дойдем до модуля документа или другой известной процедуры. 


Этот способ работает для любого регистра, у которого есть процедура ПередЗаписью в модуле набора записей. Если ее нет, ее можно временно создать.


Как и все остальные серверные процедуры, ПередЗаписью можно отладить только в файловом режиме или в клиент-серверном, но в режиме отладки.


Проводки УПП КА Комплексная автоматизация Формирование проводок

См. также

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

В этой статье расскажу, как можно добавлять свои отборы в типовую обработку формирования заказов по потребностям с минимальными доработками.

27.02.2025    622    PROSTO-1C    0    

5

Механизмы типовых конфигураций HighLoad оптимизация Программист Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Бесплатно (free)

Пример популярной пользовательской настройки плана счетов. К чему это может привести, почему «всё тормозит» и как это поправить.

18.02.2025    3083    pbelousov    10    

6

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Расчет себестоимости в типовых конфигурациях 1С – для многих «черный ящик», работающий по жестко зашитым в него алгоритмам. Реализация этого «черного ящика» может меняться в зависимости от конкретной конфигурации – УПП, БП 3.0, ERP. Но принцип работы везде одинаковый. Расскажем о том, как устроен расчет себестоимости, как его дорабатывать, и какие методы могут быть эффективны и без доработок.

27.12.2024    13218    Begemoth80    32    

86

СКД Механизмы типовых конфигураций Запросы Программист Платформа 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

Работая с типовыми отчетами в конфигурациях «Зарплата и управление персоналом, редакция 3», «Зарплата и кадры государственного учреждения, редакция 3» и подобных, в схемах компоновки данных можно встретить конструкции запросов, которые обращаются к некоторым виртуальным таблицам.

20.08.2024    2941    PROSTO-1C    0    

22
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. davealone 165 15.08.14 17:22 Сейчас в теме
Не обязательно спускаться до конца процедуры. Можно воспользоваться стеком вызовов во время нахождения на точке останова (Ctrl+Alt+C). И этот способ сработает только, если был явный вызов метода "Записать" для набора записей.
user689379_di_ang; korzhishe; borrman; nikolayvg; adhocprog; +5 Ответить
2. nikolayvg 23 15.08.14 22:22 Сейчас в теме
(1) davealone, Спасибо за дополнение. А можно привести простой пример, когда такой способ не сработает? Я думал эта процедура вызывается при любой записи регистра
3. davealone 165 18.08.14 10:55 Сейчас в теме
(2) nikolayvg. Например, Конфигурация "Бухгалтерия для Украины" документ "Реализация товаров и услуг". Там метод "Записать" для регистра бухгалтерии вызывается только для очистки движений при повторном проведении, а сами движения формируются, но явно не записываются. Запись происходит средствами платформы. Поэтому попадая в процедуру "ПриЗаписи" набора записей регистра нет стека вызовов и при выходе из процедуры по F11 ничего не происходит.
4. nikolayvg 23 18.08.14 10:20 Сейчас в теме
(3) davealone, а такая запись возможна из процедур общего модуля, или только из процедуры ОбработкаПроведения()?
7. karapuzzzz 63 20.08.14 11:29 Сейчас в теме
(1) davealone, спасибо тебе, Человечище. Весь отдел разработки шлет тебе лучи радости :)
korzhishe; adhocprog; +2 Ответить
14. kudzia1 21.10.14 04:18 Сейчас в теме
(7) karapuzzzz, Надо же какая удивительная формулировка !
Вроде бы такие простые слова - а сколько неподдельного позитива !
Зачет. =)
5. davealone 165 18.08.14 11:53 Сейчас в теме
Да, возможна. Можно даже добавить свою подписку на проведение, где добавить движения без вызова "Записать". Платформа сама определяет необходимость и порядок записи таких движений.
6. nikolayvg 23 18.08.14 14:44 Сейчас в теме
(5) davealone, Понятно. А жаль :)
8. adhocprog 1144 20.08.14 15:52 Сейчас в теме
Спасибо, полезная статья )
9. gigaline 21.08.14 12:42 Сейчас в теме
Намотал так сказать на ус, спасибо )
10. gull22 105 25.08.14 15:45 Сейчас в теме
11. Migleon 16.09.14 12:59 Сейчас в теме
12. and_sk 14 16.09.14 12:08 Сейчас в теме
если человек не может найти код формирующий проводки -
то в сам код ему лучше не лезть
13. WendyH 18.09.14 21:35 Сейчас в теме
(12) and_sk, Сразу видно человека, незнающего что такое УПП и Комплексная...
lantegra; FarFar; ankr; aximo; +4 Ответить
15. ankr 19 01.04.21 09:21 Сейчас в теме
Был у меня как-то случай (в УПП), когда не получалось отладчиком отловить запись в регистр бухгалтерии...
Запись идет, а отладчик не останавливается в процедуре ПередЗаписью.
Потом сообразил, что запись идет в фоне.
Добавил отладку в фоне и тогда все получилось.
16. Azzkijhacker 04.09.24 13:39 Сейчас в теме
(15)
Был у меня как-то случай (в УПП), когда не получалось отладчиком отловить запись в регистр бухгалтерии...
Запись идет, а отладчик не останавливается в процедуре ПередЗаписью.
Потом сообразил, что запись идет в фоне.
Добавил отладку в фоне и тогда все получилось.


Есть такая же проблема - не могу выловить место формирования проводок Хозрасчетный для ПТУ. Подскажи подробнее, что сделал и где выловил?
17. ankr 19 20.09.24 11:00 Сейчас в теме
(16) В конфигураторе: Отладка/Подключение/Автоматическое подключение/фоновые задания
18. Azzkijhacker 26.09.24 16:02 Сейчас в теме
У нас точка останова не срабатывала на серверных процедурах из-за выбраного протокола отладки.
Оставьте свое сообщение