AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.08.2010, 12:40   #5  
Кирен is offline
Кирен
Участник
 
22 / 10 (1) +
Регистрация: 03.02.2004
Адрес: Украина, г. Донецк
Цитата:
Сообщение от rmv Посмотреть сообщение
Как же быть со вставками и удалением записей? Боюсь в такой постановке задача нерешаемая.
Возможно лучший вариант пересмотреть концепцию и валидэйтить записи в фирме-приемнике на триггере OnModify:
ReceiverRecord.changecompany(ReceiverCompany);
ReceiverRecord.transferfields(SenderRecord, true);
ReceiverRecord.CheckRecord;
if not ReceiverRecord.insert then
ReceiverRecord.modify;
Этот вариант мне непонятен.
Как инициировать процесс синхронизации в фирме-приёмнике если изменяется запись в фирме-источнике?
Триггер OnModify сработает в фирме-источнике на той записи, которая была изменена.

С удалением как раз всё просто.
Перед удалением вызывать процедуру синхронизации и в фирме-приёмнике удалять запись по значению ключевого поля.
А вставка аналогична изменению. Будет сделано изменение, аналогично можно будет и на вставку сделать.

Цитата:
Сообщение от romeo Посмотреть сообщение
Кстати, может таблицу общефирменной сделать? )))
Не получится. В каждой из фирм могут быть как общие записи так и свои собственные независимые от другой фирмы записи.


Пока что всё свелось к более простому варианту с использованием NAS.
При изменении устанавливать флажок(в таблице, которая хранит значения первичного ключа таблицы и тип синхронизации=Вставка,Изменение,Удаление), что запись была изменена.
И по таймеру запускать процедуру синхронизации.
Досконально этот способ проверю чуть позже.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:00.