Применяет DiffGram к локальным таблицам Visual FoxPro.

XMLTable.ApplyDiffgram( [ cAlias [, oCursorAdapter [, lPreserveChanges [, nCodePage ]]]] )

Параметры

cAlias

Указывает псевдоимя (alias) целевого курсора. The value of cAlias defaults to the XMLTableAlias property, including when cAlias is an empty string ("").

oCursorAdapter

Указывает на уже существуюзщий объект CursorAdapter.

Метод ApplyDiffgram прикрепляет временный таблично-буферированный курсор к указанному объекту CursorAdapter. Кроме того, ApplyDiffgram применяет любые одновления, такие, как измененные, вставленные или удаленные записи, в базовый набор таблиц для объекта CursorAdapter или к курсору, соответствующему свойству Alias объекта XMLTable.

Если вы не предоставите значения для oCursorAdapter, ApplyDiffgram автоматически обработает обновления в базовой таблице.

ЗамечаниеЗамечание

Вы можете обновить удаленный источник данных с помощью метода ApplyDiffgram при условии, что CursorAdapter сконфигурирован для такой цели.

lPreserveChanges

Определяет - будет ли поддерживаться изменения, содержащиеся в курсоре, прикрепленном к объекту CursorAdapter, а такде свойства объекта CursorAdapter неизменненными, когда вы представляете настроенный объект CursorAdapter, а метод ApplyDiffgram сработал с ошибкой.

В приведенной ниже таблице описаны значения для lPreserveChanges.

 
lPreserveChanges Описание

True (.T.)

(По умолчанию). Поддерживаеть изменения, содержащиеся в курсоре, прикрепленном к объекту CursorAdapter, а такде свойства объекта CursorAdapter неизменненными.

False (.F.)

Открепляет курсор, содержащий изменения, и возвращает к прежнему состоянию любые измененные свойства объекта CursorAdapter.

nCodePage

Указывает кодовую страницу. Значением по умолчанию является ноль (0).

Expand imageПримечания

Применяется к классу: XMLTable

ApplyDiffgram поддерживается только для объектов XMLTable в коллекции Tables объекта XMLAdapter. ApplyDiffgram сбрасывает объекты XMLField, когда свойство Alias объекьа XMLField пустое.

Visual FoxPro при исполнении метода ApplyDiffgram проверяет свойство Keyfield объекта XMLField.

ЗамечаниеTip

Когда вы используете автоматическое обновление, вы должны установить соответствующие свойства Keyfield объектов XMLField в коллекции Fields в True (.T.) для повышения производительности обновления.

Visual FoxPro изменяет свойства настроенного объекта CursorAdapter так, как описано ниже:

  • Если свойство Tables пустое, Visual FoxPro устанавливает его в таблицу, указанную в параметре cAlias.

  • Visual FoxPro устанавливает свойство sets the SendUpdates в значение True (.T.).

  • Если свойство DataSource пустое, Visual FoxPro устанавливает его в значение "Native".

  • Если свойство KeyFieldList пустое, Visual FoxPro добавляет ключевые поля только в том случае, если они указаны. В противном случае, Visual FoxPro добавляет все поля.

  • Если свойство KeyFieldList изменено, Visual FoxPro устанавливает свойство WhereType в Key Fields (DB_KEY или 1).

  • Если свойство UpdatableFieldList пустое, Visual FoxPro добавляет все поля.

  • Если свойство UpdateNameList пустое, Visual FoxPro добавляет все поля и использует таблицу, указанную в параметре cAlias, как базовую таблицу.

После применения DiffGram, Visual FoxPro восстанавливает все перечисленные свойства в их предшествующие состояния.

Указанная в параметре nCodePage кодовая страница должна существовать в списке поддерживаемых кодовых страниц. Если свойство nCodePage равно нулю (0), а свойство UseCodePage установлено в значение False (.F.), то используется текущая кодовая страница. Для получения более подробной информации смотрите описания Кодовые страницы, поддерживаемые Visual FoxPro и Свойство UseCodePage.

Метод ApplyDiffgram н сработает, если используются выражения XPath для объктов XMLAdapter или XMLTable.

Expand image Смотрите также