Форум OlegON > Компьютеры и Программное обеспечение > Операционные системы и программное обеспечение > MySQL & MariaDB

Записать момент возникновения и изменения записи : MySQL & MariaDB

21.11.2024 11:54


17.01.2019 08:06
Наезжают тут на УКМ
Говорят: чек пробился, а в 1С-е он появляется только через 20-30 минут.
Стандартный экспорт 4.
В таблице receipt уже есть поля:
SQL код:
 ext_processed int(11) NOT NULL DEFAULT 0, #0 чек не обработан/ 1 - чек обработан первым бэк-офисом. Первый бэе обрабатывает все чеки
  ext_in int(11) NOT NULL DEFAULT 0,  # признак обработки чека вторым бэк-офисом. Он обрабатывает только те чеки, у которых receipt_item.store равно только 3. 
создаю дополнительные поля
SQL код:
ext_date_ins datetime DEFAULT NULL,   # сюда запихиваю время создания записи
  ext_date_upd datetime DEFAULT NULL,   # сюда - время изменения 
и создаю триггеры:
SQL код:
CREATE 
    DEFINER = 'MyName'@'%'
TRIGGER MyBD.trg_Insert
    BEFORE INSERT
    ON MyBD.receipt
    FOR EACH ROW
BEGIN
    SET NEW.ext_date_ins = NOW();
END 
и
SQL код:
CREATE 
    DEFINER = 'MyName'@'%'
TRIGGER MyBD.trg_Upd
    BEFORE UPDATE
    ON MyBD.receipt
    FOR EACH ROW
BEGIN
    SET NEW.ext_date_upd = NOW();
END 
И если момент создания записи отлично "отлавливается", то момент изменения - только для поля ext_in

В чем "собака порылась"?
З.Ы. В роли бэк-офисов две конфигурации 1С....
Часовой пояс GMT +3, время: 11:54.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.