Шаг 165 - Свойство KeepLocal

Описание
Задает или возвращает для таблицы, запроса, формы, отчета, макроса или модуля значение, показывающее, что объект не является реплицируемым при репликации базы данных (только в рабочей области Microsoft Jet).
Прежде чем задавать или читать значение свойства KeepLocal для объектов TableDef или QueryDef, необходимо создать данное свойство с помощью метода CreateProperty и добавить его в семейство Properties объекта.

Значение
Задаваемое или возвращаемое значение имеет тип данных Text. Чтобы объект остался локальным при репликации базы данных, следует присвоить ему строковое значение "T". Свойство KeepLocal неприменимо к объектам, которые уже сделаны реплицируемыми.

Замечания
После определения свойства KeepLocal это свойство включается в семейство Properties объекта Document, представляющего главный объект.
Перед заданием свойства KeepLocal следует проверить значение свойства Replicable.
После преобразования базы данных в реплицируемую все новые объекты, создаваемые в основной реплике или в любой другой реплике набора, являются локальными объектами. Локальные объекты остаются в реплике, в которой они были созданы, и не копируются в другие реплики набора. При создании каждой новой реплики в наборе все реплицируемые объекты исходной реплики включаются в новую реплику, а локальные объекты не включаются.
Если в реплике создается новый объект, который требуется преобразовать из локального в реплицируемый, чтобы сделать его доступным для других пользователей, следует либо создать объект в основной реплике, либо импортировать его в основную реплику. При этом следует удалить локальный объект из всех реплик, в противном случае возникнет структурная ошибка. После включения объекта в основную реплику, следует задать для свойства Replicable объекта значение True.
Объект, для которого определяется свойство KeepLocal, мог уже унаследовать это свойство от другого объекта, что, однако, не повлияет на его поведение, поскольку для каждого объекта значение этого свойства должно быть задано явно.

Пример
Следующая программа добавляет свойство KeepLocal в семейство свойств документа в модуле "ВспомогательныеФункции" в базе данных "Борей". Пользователь должен задать значение этого свойства объекта (например, таблицы) до преобразования базы данных в реплицируемую. После назначения этой базы данных основной репликой указанный объект останется локальным и не будет передаваться в другие реплики набора. В программе следует указать путь к базе данных Борей.mdb на вашем компьютере.

Sub KeepLocalNWObjectX()

	Dim dbsNorthwind As Database
	Dim docTemp As Document
	Dim prpTemp As Property

	Set dbsNorthwind = OpenDatabase("Борей.mdb")
	Set docTemp = dbsNorthwind.Containers("Modules"). Documents("ВспомогательныеФункции")
	Set prpTemp = docTemp.CreateProperty("KeepLocal", dbText, "T")
	docTemp.Properties.Append prpTemp
	dbsNorthwind.Close
End Sub

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 09.04.2002