Kopie als XML speichern
Speichert eine Kopie einer offenen Datei als XML-Darstellung von Schema, Layouts und Scripts.
Optionen
-
Fenstername gibt den Fensternamen einer geöffneten Datei an. Sofern nicht anders angegeben, wird das aktuelle Fenster verwendet.
-
Zieldatei ist der Pfad der zu erstellenden XML-Datei. Weitere Informationen finden Sie unter Erstellen von Dateipfaden.
-
Details für Analysewerkzeuge einschließen fügt der XML-Datei weitere Informationen hinzu.
Diese Option fügt das Element DDR_INFO hinzu, das zusätzliche Informationen bereitstellt, die für Drittanbieter-Werkzeuge nützlich sind, mit denen Sie Ihre eigene App analysieren können. Je nach App kann diese Option zu einer deutlich größeren XML-Datei führen.
-
Binäre Daten jedes Layoutobjekts unter seinem Knoten speichern speichert die Binärdaten jedes Layoutobjekts (z. B. ein Bild) unter dem Knoten des Layoutobjekts in der XML-Datei. Dies kann die Verwendung der XML-Datei für einige Tools vereinfachen, jedoch auch zu einer Vergrößerung der XML-Datei führen.
Wenn diese Option deaktiviert ist, wird unter dem Knoten jedes Layoutobjekts nur ein Verweis gespeichert, der auf den Bibliotheksdatenkatalog verweist, in dem die Binärdaten gespeichert sind. Dies kann dazu beitragen, die Dateigröße zu reduzieren, wenn dieselben Binärdaten für viele Layoutobjekte verwendet werden.
-
Optionen als JSON angeben ist ein Textausdruck für ein JSON-Objekt, mit dem Sie die folgenden Optionen für diesen Scriptschritt angeben können:
-
catalogs_included(JSON-Array): Ein Array aus Strings mit Katalognamen, das angibt, welche Kataloge einzubeziehen sind. Wenn diese Angabe weggelassen wird, werden standardmäßig alle Kataloge einbezogen. -
include_details(Boolescher Wert): Diese Option hat denselben Zweck wie Details für Analysewerkzeuge einschließen und überschreibt deren Wert, sofern angegeben. -
split_catalogs(Boolescher Wert): Wenntrue, wird für jeden im Schlüsselcatalogs_includedangegebenen Katalog eine separate XML-Datei erstellt. Wennfalseoder weggelassen, wird eine einzelne XML-Datei erstellt. Einzelheiten zum Verhalten bei geteilten Katalogen finden Sie in den Hinweisen. -
standalone_binarydata(Boolescher Wert): Diese Option hat denselben Zweck wie Binäre Daten jedes Layoutobjekts unter seinem Knoten speichern und überschreibt deren Wert, sofern angegeben.
Wenn Sie diese Option zum ersten Mal auswählen, generiert FileMaker Pro automatisch eine Vorlagenformel, die alle oben genannten Schlüssel mit Standardwerten zurückgibt, einschließlich aller unterstützten Katalognamen für
catalogs_included, die Sie anschließend anpassen können. -
Kompatibilität
| Produkt | Unterstützt |
| FileMaker Pro | Ja |
| FileMaker Go | Nein |
| FileMaker WebDirect | Nein |
| FileMaker Server | Ja |
| FileMaker Cloud | Ja |
| FileMaker Data API | Nein |
| Custom Web Publishing | Nein |
Ursprung in Version
18.0
Beschreibung
Dieser Scriptschritt ähnelt der Auswahl von Werkzeuge > Kopie als XML speichern. Weitere Informationen finden Sie unter Dokumentieren von Datenbankschemata.
Mit Optionen als JSON angeben können Sie komplexe Szenarien automatisieren, in denen Sie dynamisch festlegen müssen, welche einzubeziehenden Kataloge es gibt oder ob die Ausgabe auf mehrere Dateien aufgeteilt werden soll.
Hinweise
-
Zur Ausführung dieses Scriptschritts muss der Benutzer bzw. das Script über volle Zugriffsrechte verfügen. Weitere Informationen finden Sie unter Erstellen und Bearbeiten von Scripts.
-
Dieses XML-Format kann sich von einer Version von FileMaker Pro zur nächsten ändern. Wenn Sie das XML verwenden, um zwei Versionen einer FileMaker Pro-Datei zu vergleichen, stellen Sie sicher, dass dieselbe Version von FileMaker Pro verwendet wird, um eine Kopie jeder Datei als XML zu speichern. Wenn Sie das XML mit anderen Tools verwenden, stellen Sie sicher, dass diese Tools so konzipiert sind, dass sie das XML verwenden, das von Ihrer Version von FileMaker Pro gespeichert wurde.
-
Für Optionen als JSON angeben, wenn
split_catalogsauftruegesetzt ist:-
Die Option Zieldatei wird als Ordnername interpretiert, und für jeden in
catalogs_includedangegebenen Katalog werden separate XML-Dateien erstellt. Falls der Ordner nicht vorhanden ist, wird er durch diesen Scriptschritt erstellt. -
Der Schlüssel
standalone_binarydatawird beim Aufteilen von Katalogen automatisch auftruegesetzt. -
Der Wert „LibraryCatalog“ wird ignoriert, selbst wenn er in
catalogs_includedangegeben ist.
-
-
Wenn Optionen als JSON angeben einen Formatierungsfehler enthält, gibt der Scriptschritt den Fehlercode 878 („Die für Optionen angegebenen JSON-Daten enthalten einen Formatierungsfehler und konnten nicht analysiert werden“) zurück.
Beispiel 1
Speichert eine Kopie der geöffneten Datei, deren Fenstername „Lagerbestand“ lautet, in einer XML-Datei.
Kopie als XML speichern [ Fenstername: "Lagerbestand"; Zieldatei: "Lagerbestand.xml" ]
Beispiel 2
Speichert nur Scripts, Layouts und eigene Funktionen aus der im aktuellen Fenster angegebenen Datei in einer XML-Datei unter Verwendung von Optionen als JSON angeben.
Variable setzen [ $jsonOptionen ; Wert:
JSONSetElement ( "{}" ;
[ "catalogs_included" ; JSONMakeArray (
"ScriptCatalog LayoutCatalog CustomFunctionsCatalog" ;
" " ; JSONString ) ; JSONArray ] ;
[ "include_details" ; False ; JSONBoolean ] ;
[ "split_catalogs" ; False ; JSONBoolean ] ;
[ "standalone_binarydata" ; False ; JSONBoolean ]
)
]
Kopie als XML speichern [ Fenstername: ; Zieldatei: "MyApp_Schema.xml" ; Details für Analysewerkzeuge einschließen ; Optionen als JSON angeben: $jsonOptionen ]
Beachten Sie, dass die im Scriptschritt ausgewählte Option Details für Analysewerkzeuge einschließen durch den Schlüssel include_details in Optionen als JSON angeben überschrieben wird, der auf False gesetzt ist.
Beispiel 3
Speichert Scripts, Layouts und Felder in separaten XML-Dateien in einem Ordner mit dem Namen „MyApp_SaveAsXML“.
Variable setzen [ $jsonOptionen ; Wert:
JSONSetElement ( "{}" ;
[ "catalogs_included" ; JSONMakeArray (
"ScriptCatalog LayoutCatalog FieldCatalog" ;
" " ; JSONString ) ; JSONArray ] ;
[ "include_details" ; True ; JSONBoolean ] ;
[ "split_catalogs" ; True ; JSONBoolean ]
)
]
Kopie als XML speichern [ Fenstername: ; Zieldatei: "MyApp_SaveAsXML" ; Optionen als JSON angeben: $jsonOptionen ]
Dadurch wird ein Ordner namens „MyApp_SaveAsXML“ erstellt, der drei Dateien enthält:
MyApp_SaveAsXML_ScriptCatalog.xmlMyApp_SaveAsXML_LayoutCatalog.xmlMyApp_SaveAsXML_FieldCatalog.xml