DataRecordsets.AddFromXML-Methode (Visio)

Fügt der DataRecordsets-Auflistung ein DataRecordset-Objekt hinzu und füllt das resultierende Datenrecordset mit Daten, die in Form einer XML-Zeichenfolge bereitgestellt werden.

Hinweis

Dieses Visio-Objekt oder dieses Visio-Mitglied ist nur für lizenzierte Benutzer von Visio Professional 2013 verfügbar.

Syntax

Ausdruck. AddFromXML (XMLString, AddOptions, Name)

Ausdruck Ein Ausdruck, der ein DataRecordsets-Objekt zurückgibt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
XMLString Erforderlich String Eine XML-Zeichenfolge, die dem klassischen XML-Schema von Microsoft ActiveX Data Objects (ADO) entspricht und die zu importierenden Daten beschreibt.
AddOptions Erforderlich Long Optionen, die die Eigenschaften des hinzuzufügenden Datenrecordsets bestimmen. Eine Kombination aus einem oder mehreren aufgezählten Werten aus VisDataRecordsetAddOptions. Weitere Informationen hierzu finden Sie unter „Hinweise“.
Name Optional String Weist dem hinzuzufügenden DataRecordset-Objekt einen Anzeigenamen zu.

Rückgabewert

DataRecordset

HinwBemerkungeneise

Für den XMLString-Parameter wird eine XML-Zeichenfolge übergeben, die mit dem klassischen ADO-XML-Schema kompatibel ist und die die zu importierenden Daten beschreibt. Eine einfache XML-Zeichenfolge ist weiter unten in diesem Thema beschrieben.

Der AddOptions-Parameter kann eine Kombination aus den folgenden Werten aus der VisDataRecordsetAddOptions-Aufzählung sein, die in der Microsoft Visio-Typbibliothek deklariert ist. Die Standardeinstellung ist Null (0), wodurch angegeben wird, dass keine der Optionen festgelegt wird.

Konstante Wert Beschreibung
visDataRecordsetNoExternalDataUI 1 Verhindert, dass Daten im neuen Datenrecordset im Fenster Externe Daten angezeigt werden.
visDataRecordsetNoAdvConfig 4 Verhindert, dass das Datenrecordset im Dialogfeld Aktualisierung konfigurieren angezeigt wird.
visDataRecordsetDontCopyLinks 16 Fügt ein Datenrecordset hinzu, aber Shape-Daten-Verknüpfungen werden nicht ausgeschnitten oder kopiert.

Wenn Sie diese Werte zugewiesen haben, können sie während der Lebensdauer des DataRecordset-Objekts nicht mehr geändert werden.

Das Argument Name ist eine optionale Zeichenfolge, mit der Sie dem Datenrecordset einen Anzeigenamen zuweisen können. Wenn Sie angeben, dass das Fenster Externe Daten in der Benutzeroberfläche von Visio angezeigt werden soll, wird der für dieses Argument übergebene Name im Fenster Externe Daten auf der Registerkarte angezeigt, die dem hinzugefügten Datenrecordset entspricht.

Im Gegensatz zu Datenrecordsets, die mit den Add- oder AddFromConnectionFile-Methoden erstellt wurden, werden Datenrecordsets, die mit der AddFromXML-Methode erstellt wurden, keinem DataConnection-Objekt zugeordnet.

Darüber hinaus aktualisiert Visio niemals automatisch ein Datenrecordset, das Sie mithilfe der AddFromXML-Methode erstellt haben, unabhängig von der Einstellung der DataRecordset.RefreshInterval-Eigenschaft . Um die Daten in einem solchen Datenrecordset zu aktualisieren, müssen Sie die DataRecordset.RefreshUsingXML-Methode aufrufen.

Wenn die AddFromXML-Methode erfolgreich ist, führt sie die folgenden Aktionen aus:

  • Es wird ein DataRecordset-Objekt erstellt, dem der Name zugewiesen wird, der im Name-Parameter angegeben ist. Wenn Sie keinen Namen angeben, weist Visio dem Datenrecordset den Namen der Datenbanktabelle zu, die die Quelle der Daten ist.

  • Die Datentypen der Spalten in der Datenquelle werden den entsprechenden Datentypen in Visio zugewiesen. Gleichzeitig werden durch das Filtern der Ergebnisse Datenquellenspalten entfernt, die nicht mit Visio-Shapes verknüpft werden können, da sie keinen entsprechenden Visio-Datentyp aufweisen.

  • Jeder Zeile im Datenrecordset wird eine Visio-Datenzeilen-ID zugewiesen, sofern die importierten Daten noch keine gültigen Visio-Datenzeilen-IDs enthalten. Weitere Informationen zu Visio-Datenzeilen-IDs finden Sie im Thema DataRecordset.GetDataRowIDs .

Beispiel

Das folgende VBA-Makro (Microsoft Visual Basic für Applikationen) veranschaulicht, wie Sie mit der AddFromXML-Methode eine Visio-Zeichnung mit Daten verbinden, die in einer ADO-XML-Zeichenfolge enthalten sind.

Hier wird eine XML-Zeichenfolge als Beispiel angezeigt. Wenn sie an die AddFromXML-Methode übergeben wird, erstellt diese Zeichenfolge ein Datenrecordset, das eine Spalte mit dem Namen "Cities" und zwei Datenzeilen mit Einträgen in dieser Spalte enthält, die aus Stadtnamen bestehen.

<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' 
xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' 
xmlns:rs='urn:schemas-microsoft-com:rowset' 
xmlns:z='#RowsetSchema'> 
<s:Schema id='RowsetSchema'> 
<s:ElementType name='row' content='eltOnly' rs:updatable='true'> 
<s:AttributeType name='c1' rs:name='Cities' 
rs:number='2' rs:nullable='true' rs:maydefer='true' rs:write='true'> 
<s:datatype dt:type='string' dt:maxLength='255' rs:precision='0'/> 
</s:AttributeType> 
<s:extends type='rs:rowbase'/> 
</s:ElementType> 
</s:Schema> 
<rs:data> 
<z:row c1='Seattle' /> 
<z:row c1='Redmond' /> 
</rs:data> 
</xml>

Im folgenden Beispielcode wird der Name einer XML-Zeichenfolge, die Daten enthält, und der Name einer Zeichenfolge, die den Anzeigenamen enthält, der dem neuen, bei diesem Vorgang erstellten, Datenrecordset zugewiesen werden soll, an die AddFromXML-Methode übergeben.

Public Sub AddFromXML_Example() 
 
    Dim strXML As String 
    Dim strName As String 
    Dim vsoDataRecordset As Visio.DataRecordset 
 
    strXML = "<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'" + Chr(10) _ 
    & "xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'" + Chr(10) _ 
    & "xmlns:rs='urn:schemas-microsoft-com:rowset'" + Chr(10) _ 
    & "xmlns:z='#RowsetSchema'>" + Chr(10) _ 
    & "<s:Schema id='RowsetSchema'>" + Chr(10) _ 
    & "<s:ElementType name='row' content='eltOnly' rs:updatable='true'>" + Chr(10) _ 
    & "<s:AttributeType name='c1' rs:name='Cities'" + Chr(10) _ 
    & "rs:number='2' rs:nullable='true' rs:maydefer='true' rs:write='true'>" + Chr(10) _ 
    & "<s:datatype dt:type='string' dt:maxLength='255' rs:precision='0'/>" + Chr(10) _ 
    & "</s:AttributeType>" + Chr(10) _ 
    & "<s:extends type='rs:rowbase'/>" + Chr(10) _ 
    & "</s:ElementType>" + Chr(10) _ 
    & "</s:Schema>" + Chr(10) _ 
    & "<rs:data>" + Chr(10) _ 
    & "<z:row c1='Seattle'/>" + Chr(10) _ 
    & "<z:row c1='Redmond'/>" + Chr(10) _ 
    & "</rs:data>" + Chr(10) _ 
    & "</xml>" 
 
    strName = "City Names" 
 
    Set vsoDataRecordset = ThisDocument.DataRecordsets.AddFromXML(strXML, 0, strName) 
 
End Sub

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.