logo
logo
"Что такое синхронизация". [Dervish 26/08/2003 19:19]
Проще subj объяснить на примере.
 
Есть счет "пластиковая карта". Счётом владеют оба супруга. Расходные операции со счёта не ведутся, бывает только "перевод" денег в личные кошельки мужа-жены.
 
Для того чтобы видеть общую картину надо объединить эти две базы. Ок, тут я согласен.
 
А как поступить если дома я планирую "расход" со счета (т.е. проводу операцию без галочки "Операция выполнена"), а на работе узнав что мне денег понадобиться допустим меньше - корректирую эту операцию. Как без синхронизации поступить в этом случае?
 
Dervish: Всё будет работать правильно в вашем примере. Давайте разберёмся по шагам:
 
1. Дома. Планируете. Вводите не выполненную операцию. Далее, синхронизируете данные с вашей базой. По таблице соответствия программа узнаёт, что в домашней базе появилась новая операция, которую надо перенести в рабочую базу. Переносит. Обе базы корректны.
 
2. На работе отмечаете повторяющуюся операцию. Она становится выполненной, но в ней изменился один реквизит (признак "выполнено"/"не выполнено"). Меняете сумму операции, изменено два реквизита. Но, поскольку операция была повторяющаяся, программа автоматически сгенерирует следующую операцию. Со своим уникальным ID.
 
3. Приходите домой. Синхронизация. По таблице соответствий программа видит, что в рабочей базе изменена операция (одна штука) и добавлена операция (тоже одна штука). Соответственно, в домашнюю базу переносится изменение и добавляется новая операция. Вносятся изменения в таблицу соответствия.
 
Всё, процесс завершён, завершён корректно. Обе базы синхронизированы, данные соответствуют.