Перейти к содержимому


Вычисление при изменение поля вручную


Сообщений в теме: 3

#1 plotnikov

    Активный участник

  • Пользователи
  • PipPipPip
  • 152 сообщений

Отправлено 21 Март 2022 - 13:07

Создал вычисление на изменение поля. Но необходимо отсеивать автоматическое изменения поля (другими вычислениями) и ручное изменение.

Как в вычислении понять, что изменение поля произведено вручную?

#2 plotnikov

    Активный участник

  • Пользователи
  • PipPipPip
  • 152 сообщений

Отправлено 24 Март 2022 - 14:17

Неужели нет ответа? Очень надо какое-то решение...

#3 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 748 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 29 Март 2022 - 11:10

Можно проверить глобальную переменную $event, если там есть ключ "calc_id" - значит событие вызвано другим вычислением, и собственно даже узнать каким именно. Аналогично, если событие вызвано заданием крон - то будет "cron_id", если синхронизацией - то "sync_id". Если изменение вызвано доп.действием, то будет также "calc_id", где содержится id кода доп.действия.

#4 plotnikov

    Активный участник

  • Пользователи
  • PipPipPip
  • 152 сообщений

Отправлено 30 Март 2022 - 11:41

Просмотр сообщенияCbCoder (29 Март 2022 - 11:10) писал:

Можно проверить глобальную переменную $event, если там есть ключ "calc_id" - значит событие вызвано другим вычислением, и собственно даже узнать каким именно. Аналогично, если событие вызвано заданием крон - то будет "cron_id", если синхронизацией - то "sync_id". Если изменение вызвано доп.действием, то будет также "calc_id", где содержится id кода доп.действия.
Я всё пытался при ручном изменении смотреть, что внутри $event находится и за что зацепиться можно и даже не подумал, что при изменении вычислением какие-то ключи могут добавиться.

Спасибо! Помогли из тупика выйти!





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных