Документ модуль формы ПриЗаписи

1. Denis Nsk 25.07.24 06:56 Сейчас в теме
Привет всем!

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

Если использовать кнопку Записать/Провести, то алгоритм работает как требуется.

Если использовать кнопку Печать, то алгоритм контроля не работает и документ проводится в любом случае.
Хотя перед формирование печатной формы документ обязательно проводится и программа заходит в добавленный контрольный алгоритм.
Выяснил, что запрос (находящийся в добавленном мной алгоритме) при использовании кнопки Печать формируется без учета новых движений документа.
Пробовал разные варианты, в т.ч. вызов контрольного алгоритма в процедуре ПриЗаписи() из модуля объекта, не помогает.

В чем м.б. причина ошибки? Что еще можно проверить?
Заранее, Спасибо за советы по существу!
По теме из базы знаний
Найденные решения
5. usershmuser 25.07.24 08:51 Сейчас в теме
(3) нет, при записи движений нет, они происходят в обработке проведения. Включай отладку, ставь точку останова и изучай, что происходит при нажатии на печать, там тебе будут видны все процедуры.
В модуле формы код работает только на открытой форме! Если из формы списка печатать и проводить, то отрабатывает код в модуле документа.
Denis Nsk; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
6. WasiliyMay 8 25.07.24 09:17 Сейчас в теме
(1) Подобный контроль делается в обработке проведения после записи движений, где указываем Отказ = Истина; если контроль не проходит. На ИТС можете статью по контролю остатков посмотреть: https://its.1c.ru/db/pubdevguide83#content:299:hdoc
Denis Nsk; +1 Ответить
2. user2033930 25.07.24 07:31 Сейчас в теме
ПриЗаписи() ещё нет движений у нового документа.
Смотри порядок выполнения обработчиков.
Denis Nsk; +1 Ответить
3. Denis Nsk 25.07.24 08:07 Сейчас в теме
(2) Почему?.. По кнопке Записать/Провести же работает. Как я понимаю движения есть, но транзакция ещё не зафиксирована. Как раз тот момент когда удобно вставить контрольный механизм
5. usershmuser 25.07.24 08:51 Сейчас в теме
(3) нет, при записи движений нет, они происходят в обработке проведения. Включай отладку, ставь точку останова и изучай, что происходит при нажатии на печать, там тебе будут видны все процедуры.
В модуле формы код работает только на открытой форме! Если из формы списка печатать и проводить, то отрабатывает код в модуле документа.
Denis Nsk; +1 Ответить
4. user1880116 25.07.24 08:29 Сейчас в теме
(1)
В момент проведения
Для этого в модуле формы документа
За небольшую плату не буду учить твоих пользователей проводить документы при помощи контекстного меню формы списка.
7. Denis Nsk 25.07.24 10:25 Сейчас в теме
(4) ))) они похоже сами научились

Всем большое Спасибо! Особенно за ссылку на итс.

Пока понял свои возможные ошибки.
Буду смотреть.
С толку сбивали некоторые моменты:
1) алгоритм работал при записи/проведении
2) в этой конфигурации есть особенность, там доки заказ-наряд с определенным статусом при записи автоматом проводятся
3) пробовал перемещать точку входа в мой алгоритм в модуль объекта, толку не было, только ошибка появлялась
8. Denis Nsk 29.07.24 10:12 Сейчас в теме
Всем большое Спасибо!

Вопрос решил.

1. Изменения сдала в обработке проведения, точнее в обработчике подписки на событие ОбработкаПроведения.
2. Сделал запись движений в нужный регистр.
3. И потом уже вызвал свой алгоритм.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот