События в ИБ

пользователь
Регистрация: 28.07.2005

Добрый день.

Настроили события в И-Б на ввод редактирование и удаление записей в журнале хоз операций, для того, чтобы ограничивать ввод данных в ранние периоды (пользователей > 30).

Столкнулись с ситуацией, что, если создавать проводки в формулах (в частности в функции), то события не отрабатывают.

Есть ли выход из ситуации? или действительно события отрабатываются только при стандартном способе создания операций (т.е. через журнал).

Тогда не совсем понятен смысл в этих событиях.

Возможно в И-Б есть штатные способы ограничить ввод данных в периоде?

Спасибо.

пользователь
Регистрация: 28.07.2005

Это было бы возможно сделать, если бы потом проводка не отображалась для редактирования пользователю. Т.е. выполняются какие-то расчеты - формируется проводка и выводится на экран, чтобы пользователь мог поменять там что-то, в том числе и дату. Но при сохранении не срабатывают события ИБ.
Вот и получается что вроде как события могу работать, но только в случае ручного ввода всех операций и проводок, но это как-то не правильно получается.

пользователь
Регистрация: 28.07.2005

Все еще актуально.
Сотрудники Инфо-бухгалтера могут прокомментировать данную проблему?
Или мы что-то неправильно делаем?
Или события толком не работают и не имеет смысла на них надеяться?

модератор
Регистрация: 06.09.2007

Это было бы возможно сделать, если бы потом проводка не отображалась для редактирования пользователю. Т.е. выполняются какие-то расчеты - формируется проводка и выводится на экран, чтобы пользователь мог поменять там что-то, в том числе и дату. Но при сохранении не срабатывают события ИБ.
Вот и получается что вроде как события могу работать, но только в случае ручного ввода всех операций и проводок, но это как-то не правильно получается.

Ваша проблема понятна.
Предлагаю сделать вызов событий "Диалог добавления операции" и "Добавление операции" для автоматического добавления операции из языка.
Т.е. добавления в результате использования операторов ПРОВОДКА и ЗАП_ОПЕР.

пользователь
Регистрация: 28.07.2005

А как это можно сделать?
Мы сами каким-то образом можем привязать события к вызову этих функций?
Или имеется ввиду, что выполнение данных функций способствует вызову обработчиков?
Но вот данная функция не вызывает обработчики? Есть ли возможность что-то изменить?

ФУНКЦИЯ CopyOp(ТИП_ЧИСЛО: Ном)
СОЗДАТЬ(ОП, ТИП_ОПЕРАЦИЯ)
ОП=ОПЕР_СЧИТАТЬ(Ном)
н1=ОП.НАЗВ1
н2=ОП.НАЗВ2
н3=ОП.НАЗВ3
Док=ОП.документ
д1=ДАТА_ТЕК
ЦИКЛ ДЛЯ (пр=1, ОПЕР_ПРОВ(Ном))
пров=ОП.ПРОВ(пр)
Д=пров.дебет
К=пров.кредит
Кол=пров.количество
Сум=пров.сумма
ПРОВОДКА(Д,К,Сум, Кол, Док,д1, РАБ_МЕСТО, н1)//, н2, н3)
КОНЕЦ_ЦИКЛА
ЗАП_ОПЕР
CopyOp=ДА
КОНЕЦ_ФУНКЦИИ

модератор
Регистрация: 06.09.2007

Но вот данная функция не вызывает обработчики? Есть ли возможность что-то изменить?

...
ЗАП_ОПЕР

В такой функции ЗАП_ОПЕР вызывает диалог редактирования новой хоз. операции, где пользователь может ее поменять.

Сейчас здесь никаких событий не вызывается.
Я предлагаю вызывать событие "Добавление операции" после того, как пользователь нажал в диалоге ОК.
Тогда в функцию-обработчик придет номер вновь добавленной операции, ее можно считать, проверить, даже удалить при необходимости.

Если диалог не нужен зовем ЗАП_ОПЕР! и событие генерироваться не будет, т.к. у пользователя не будет шанса изменить операцию перед добавлением.

P.S. Событие "Диалог добавления операции" в таком сценарии не применимо.

пользователь
Регистрация: 28.07.2005

А как вызвать событие после вызова функции ЗАП_ОПЕР?
Просто вызвать как функцию?
и система сама поймет что это событие для для последней операции?
И передаст туда номер?

модератор
Регистрация: 06.09.2007

А как вызвать событие после вызова функции ЗАП_ОПЕР?

Его вызовет платформа с номером 8.717.