Метод DataRecordsets.GetLastDataError (Visio)
Возвращает код ошибки объектов данных Active X (ADO), описание ADO и идентификатор набора записей данных, связанные с ошибкой, возникающей в результате добавления нового набора записей данных или обновления данных в существующем.
Примечание.
Этот объект или элемент Visio доступен только лицензированным пользователям Visio профессиональный 2013.
Синтаксис
expression. GetLastDataError (DataErrorCode, DataErrorDescription, RecordsetID)
Выражение Выражение, возвращающее объект DataRecordsets .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
DataErrorCode | Обязательный | Long | Параметр Out. Код ошибки ADO последней ошибки. |
DataErrorDescription | Обязательный | String | Параметр Out. Описание последней ошибки в ADO. |
RecordsetID | Обязательный | Long | Параметр Out. Идентификатор набора записей данных, который создал или вызвал ошибку. |
Возвращаемое значение
Отсутствует
Примечания
Операции, связанные с данными, которые могут создавать ошибки ADO в Microsoft Visio, включают добавление нового объекта DataRecordset в коллекцию DataRecordsets активного документа и обновление данных в существующем наборе записей данных.
Если операция, связанная с данными, успешно выполнена, метод GetLastDataError возвращает RecordsetID = 0, DataErrorCode = 0 и DataErrorDescription = "" (пустая строка).
Если при попытке добавить набор записей данных возникает ошибка, метод возвращает RecordsetID = 0, а также код и описание ошибки.
Если попытка обновить данные в существующем наборе записей данных приводит к ошибке и если Visio знает, какой набор данных вызвал ошибку, GetLastDataError возвращает идентификатор набора записей данных.
Однако возможно, что Visio может не знать конкретно, какой набор записей данных вызвал ошибку. Это может произойти только при попытке обновить набор записей данных, который входит в группу наборов записей данных, которые используют одно и то же подключение к источнику данных. Это связано с тем, что при обновлении данных в одном наборе записей данных в такой группе (так называемых транзакционированных наборов данных) обновляются все наборы записей данных в группе. В этой ситуации, если операция обновления завершается сбоем до обновления всех наборов данных в группе, Visio откатит обновление всех наборов данных, успешно завершенных до этого момента.
При вызове Метода GetLastDataError метод возвращает следующее:
Идентификатор набора записей данных, для которого был вызван метод Refresh для запуска операции обновления, которая впоследствии завершилась ошибкой.
Сообщение об ошибке, созданное неудачной операцией обновления, хотя невозможно узнать, связан ли сбой конкретно с набором записей данных, идентификатор которого передан методу GetLastDataError .
Пример
В следующем макросе Microsoft Visual Basic для приложений (VBA) показано, как использовать метод GetLastDataError для получения кода и описания ошибки ADO, а также идентификатора набора записей, связанных с последней ошибкой данных.
Public Sub GetLastDataError_Example()
Dim vsoDataRecordsets As Visio.DataRecordsets
Dim lngCode As Long
Dim strDescription As String
Dim lngID As Long
Set vsoDataRecordsets = Visio.ActiveDocument.DataRecordsets
vsoDataRecordsets.GetLastDataError lngCode, strDescription, lngID
Debug.Print "Error code: ", lngCode
Debug.Print "Error description: ", strDescription
Debug.Print "Data recordset ID: ", lngID
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.