Как сделать "подписку на изменение регистра'

Автор Злоп, 22 мая 2024, 01:10

« назад - далее »

Злоп

Изменением будем считать, для начала, изменение регистра. Т.Е.
Регистр.ДвижениеПртходВыптлнить() или
Регистр.движентнРасхтдВыптлнить() пои факту завершения транзакции модуля проведения документа...
.
Варианты?

AlexGM

Цитата: Злоп от 22 мая 2024, 01:10Изменением будем считать, для начала, изменение регистра. Т.Е.
Регистр.ДвижениеПртходВыптлнить() или
Регистр.движентнРасхтдВыптлнить() пои факту завершения транзакции модуля проведения документа...
.
Варианты?

   Если относительно штатными методами - включать УРБД. Настроить фиктивный узел и работать таблицей изменений УРБД самостоятельно - читать, чистить.

Злоп

Про такое я думал.
Но хочется типа оповещения, а не опроса.
Чтобы что-то срабатывало, событие/код/процедура...

AlexGM

Цитата: Злоп от 22 мая 2024, 09:58Про такое я думал.
Но хочется типа оповещения, а не опроса.
Чтобы что-то срабатывало, событие/код/процедура...
На SQL базе - триггер )). Либо черная магия от потрошителей 1С-ки. Но если в одном сеансе запись и оповещение у меня еще сходится, то в разных не очень. Если база файловая, могу попробовать сделать ВК с внешним событием на изменение даты  файла. Как бы еще красиво узнать имя файла, соответствующее конкретному регистру.

Злоп

Вк на изменение файла где-то мне попадалась с генерацией внешнего события, но было бы хорошо в одном флаконе, имя файла наверняка можно через 1с++ посмотреть как получить

trdm

Цитата: AlexGM от 22 мая 2024, 13:49На SQL базе - триггер ))
у меня не получалось нормальный тригер сделать.
начинались вылеты и проч. хрень.
возможно чего-то напутал.
Короче пытался писать в ту же таблицу при апдейт/инсенрт в поле ДатаВремяОбновления соотв. дату и время обновления :)

ЯнСмит

Цитата: Злоп от 22 мая 2024, 18:34имя файла наверняка можно через 1с++ посмотреть как получить
зачем, когда  1cv7.dd же есть )

ЯнСмит

не очень понятно практическое значение всего этого ... а так "подписку" можно реализовать практически штатно - служебный справочник поля "документ" и "количество" первоначально заполняется видами документов, влияющими на отслеживаемый регистр (можно взять автоматом из соответствующей последовательности), ну а дальше подсчет количества этих документов с требуемой частотой через обработку ожидания, если количество документов какого-то вида не равно значению поля справочника значит отправляем оповещение, смысл думаю ясен ...

Злоп

Ты когда посылку ждёшь получить - тоже каждые 5 минут на почту бегаешь? ;-)

Злоп

Задача проста. При изменении регистра остатков/резервов - выгружать остатки на внешний ресурс, например. Или ставить а очередь задание на выполнение чего-то