Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Репликация
 
 автор: Коровка   (10.09.2009 в 10:44)   личное сообщение
 
 

Здравствуйте!
Объясните ожалуйста, при портфельной репликации можно поменять приоритет, то есть что бы приоритет был у обновления, а не у удаления? (когда синхронизирую базы, из основной удаляется все то, что было удалено из реплики для того, что бы реплика весила меньше и чтобы те, кто пользуется репликой, не видели информации, которая уже содержится в основной базе).
И еще вопрос: объясните пожалуйста, в чем заключается репликация баз данных Access и чем она отличается от портфельной репликации. Пыталась найти в книжках, но там пишут как-то совсем непонятно, а в интернете в основном статьи из учебника по Access 2002, там тоже как-то непонятно написано.

  Ответить  
 
 автор: osmor   (10.09.2009 в 11:25)   личное сообщение
 
 

Портфельная репликация тупо заменяет один файл другим, не разбираясь в записях.
Репликация ACCESS тоже штука не простая
Почитайте вот это
http://www.vedu.ru/programming/ABR_soft/contreplfaq.htm
и это
http://office.microsoft.com/ru-ru/access/CH062526841049.aspx

  Ответить  
 
 автор: Коровка   (10.09.2009 в 11:49)   личное сообщение
 
 

Спасибо большое. Стало немного понятнее.
Только появился еще вопрос: если я сделаю репликацию базы данных с помощью меню Сервис>Репликация, создастся ли автоматически код репликации на VBA и может быть можно будет уже готовый код просто исправить, или нужно написать кусок кода, осуществляющий репликацию, вручную?

  Ответить  
 
 автор: osmor   (10.09.2009 в 12:47)   личное сообщение
 
 

VBA кода репликации не появится.
Появятся дополнительные поля в таблицах.

  Ответить  
 
 автор: Коровка   (14.09.2009 в 12:03)   личное сообщение
 
 

Спасибо, попробую

  Ответить  
 
 автор: Коровка   (17.09.2009 в 09:17)   личное сообщение
 
 

И снова здравствуйте!!!
Посмотрите пожалуйста, что я могла сделать неправильно:
Код написала такой:

Call SynchronizeDBs("D:\Юля\работа\db2.mdb", "F:\Реплика для db2.mdb", 3)
Sub SynchronizeDBs(strDBName As String, strSyncTargetDB As String, intSync As Integer)

Dim dbs As Database

Set dbs = DBEngine(0).OpenDatabase(strDBName)

Select Case intSync
Case 1 ' Синхронизация реплик (двухсторонний обмен)
dbs.Synchronize strSyncTargetDB, dbRepImpExpChanges
Case 2 ' Синхронизация реплик (экспорт изменений)
dbs.Synchronize strSyncTargetDB, dbRepExportChanges
Case 3 ' Синхронизация реплик (импорт изменений)
dbs.Synchronize strSyncTargetDB, dbRepImportChanges
End Select
dbs.Close
End Sub

Вместо адрес 1 написан адрес основной реплики на диске, вместо адрес 2 - адрес реплики. находящейся на флешке. При компиляции (по нажатию в меню Debug >Compile выдает ошибку Compile error: Invalid outside procedur, и выделяет темным первый адрес, указанный в скобках Call SynchronizeDBs("адрес 1", "адрес 2", 3).

Подскажите пожалуйста, где я могла ошибиться. Этот кусок программы скопировала с сайта, от себя дописала, пожалуй, только адреса.
Единственная мысль на счет того, откуда может появиться ошибка: я написала этот кусок кода как отдельный модуль. Может нужно куда-то вызов это процедуры написать в другое место. например привязать к какому-то событию или какой-то кнопке?

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList