|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от rmv
![]() Как же быть со вставками и удалением записей? Боюсь в такой постановке задача нерешаемая.
Возможно лучший вариант пересмотреть концепцию и валидэйтить записи в фирме-приемнике на триггере OnModify: ReceiverRecord.changecompany(ReceiverCompany); ReceiverRecord.transferfields(SenderRecord, true); ReceiverRecord.CheckRecord; if not ReceiverRecord.insert then ReceiverRecord.modify; Как инициировать процесс синхронизации в фирме-приёмнике если изменяется запись в фирме-источнике? Триггер OnModify сработает в фирме-источнике на той записи, которая была изменена. С удалением как раз всё просто. Перед удалением вызывать процедуру синхронизации и в фирме-приёмнике удалять запись по значению ключевого поля. А вставка аналогична изменению. Будет сделано изменение, аналогично можно будет и на вставку сделать. Не получится. В каждой из фирм могут быть как общие записи так и свои собственные независимые от другой фирмы записи. Пока что всё свелось к более простому варианту с использованием NAS. При изменении устанавливать флажок(в таблице, которая хранит значения первичного ключа таблицы и тип синхронизации=Вставка,Изменение,Удаление), что запись была изменена. И по таймеру запускать процедуру синхронизации. Досконально этот способ проверю чуть позже. |
|