Slaat een kopie van een open bestand op als een XML-voorstelling van het schema, de lay-outs en de scripts.

Opties 

  • Met Vensternaam geeft u de vensternaam op van een geopend bestand. Indien niet opgegeven, wordt het huidige venster gebruikt.

  • Doelbestand is het pad voor het XML-bestand dat moet worden gemaakt. Raadpleeg Bestandspaden maken.

  • Met Details opnemen voor analysetools wordt meer informatie toegevoegd aan het XML-bestand.

    Met deze optie wordt het DDR_INFO-element toegevoegd, dat extra informatie biedt die nuttig is voor tools van derden die u kunt gebruiken om uw aangepaste app te analyseren. Afhankelijk van uw app kan deze optie een aanzienlijk groter XML-bestand produceren.

  • Met Sla de binaire gegevens van elk lay-outobject op onder het knooppunt worden de binaire gegevens van elk lay-outobject (bijvoorbeeld een afbeelding) opgeslagen onder het knooppunt van het lay-outobject in het XML-bestand.Dit kan het gebruik van XML voor sommige tools vergemakkelijken, maar hierdoor kan het XML-bestand groter worden.

    Als deze optie is uitgeschakeld, wordt er alleen een verwijzing opgeslagen onder het knooppunt van elk lay-outobject, dat verwijst naar de bibliotheekgegevenscatalogus waar de binaire gegevens worden opgeslagen. Dit kan helpen de bestandsgrootte te verkleinen wanneer dezelfde binaire gegevens worden gebruikt voor veel lay-outobjecten.

  • Opties opgeven als JSON is een tekstexpressie voor een JSON-object waarmee u de volgende opties kunt opgeven voor deze scriptstap:

    • catalogs_included (JSON-array): Een matrix met reeksen catalogusnamen die aangeven welke catalogi in het XML-bestand moeten worden opgenomen. Indien weggelaten, worden standaard alle catalogi opgenomen.

    • include_details (Boolean): Deze optie heeft hetzelfde doel als Details opnemen voor analysetools en overschrijft de waarde, indien opgegeven.

    • split_catalogs (Booleaans): Indien dit waar is, wordt een afzonderlijk XML-bestand gemaakt voor elke catalogus die is opgegeven in de catalogs_included-sleutel. Wanneer de waarde onwaar is of als deze is weggelaten, wordt één XML-bestand gemaakt. Zie Opmerkingen voor meer informatie over het gedrag van gesplitste catalogi.

    • standalone_binarydata (Booleaans): Deze optie heeft hetzelfde doel als Sla de binaire gegevens van elk lay-outobject op onder het knooppunt en overschrijft de waarde, indien opgegeven.

    Wanneer u deze optie voor het eerst selecteert, genereert FileMaker Pro automatisch een sjabloonberekening die alle bovenstaande sleutels met standaardwaarden retourneert, inclusief alle ondersteunde catalogusnamen voor catalogs_included, die u vervolgens kunt aanpassen.

Compatibiliteit 

Product Ondersteund
FileMaker Pro Ja
FileMaker Go Nee
FileMaker WebDirect Nee
FileMaker Server Ja
FileMaker Cloud Ja
FileMaker Data API Nee
Custom Web Publishing Nee

Afkomstig uit versie 

18.0

Beschrijving 

Deze scriptstap doet hetzelfde als wanneer u Gereedschappen > Kopie opslaan als XML kiest. Raadpleeg Databaseschema's documenteren.

U kunt Opties opgeven als JSON gebruiken om complexe scenario's te automatiseren waarbij u dynamisch moet opgeven welke catalogi u wilt opnemen of de uitvoer in meerdere bestanden wilt splitsen.

Opmerkingen 

  • De gebruiker of het script moet over volledige toegangsprivileges beschikken om deze scriptstap te kunnen uitvoeren. Raadpleeg Scripts maken en bewerken.

  • Deze XML-indeling kan variëren tussen opeenvolgende versies van FileMaker Pro. Wanneer u de XML gebruikt om twee versies van een FileMaker Pro-bestand te vergelijken, zorg er dan voor dat u dezelfde versie van FileMaker Pro gebruikt om van elk bestand een XML-kopie op te slaan. Als u de XML gebruikt met andere tools, moeten deze tools ondersteuning bieden voor de XML die wordt opgeslagen door uw versie van FileMaker Pro.

  • Bij Opties opgeven als JSON, wanneer split_catalogs waar is:

    • De optie Doelbestand wordt behandeld als mapnaam en er worden afzonderlijke XML-bestanden gemaakt voor elke catalogus die is opgegeven in catalogs_included. Als de map niet bestaat, wordt deze met deze scriptstap gemaakt.

    • De sleutel standalone_binarydata wordt automatisch ingesteld op waar bij het splitsen van catalogi.

    • De waarde LibraryCatalog wordt genegeerd, zelfs als deze is opgegeven in catalogs_included.

  • Als Opties opgeven als JSON een opmaakfout bevat, retourneert de scriptstap foutcode 878 ("De JSON-gegevens die zijn opgegeven voor Opties bevatten een opmaakfout en kunnen niet worden geanalyseerd").

Voorbeeld 1 

Dit voorbeeldscript slaat in een XML-bestand een kopie op van het geopende bestand met de vensternaam Inventaris.

Kopiëren
Kopie opslaan als XML [ Vensternaam: "Inventaris" ; Doelbestand: "Inventaris.xml" ]

Voorbeeld 2 

Slaat alleen scripts, layouts en aangepaste functies van het bestand dat in het huidige venster is opgegeven op in een XML-bestand met Opties opgeven als JSON.

Kopiëren
Variabele instellen [ $jsonOptions ; Waarde:
JSONSetElement ( "{}" ;
    [ "catalogs_included" ; JSONMakeArray (
      "ScriptCatalog LayoutCatalog CustomFunctionsCatalog" ;
      " " ; JSONString ) ; JSONArray ] ;
    [ "include_details" ; False ; JSONBoolean ] ;
    [ "split_catalogs" ; False ; JSONBoolean ] ;
    [ "standalone_binarydata" ; False ; JSONBoolean ]
  )
]

Kopie opslaan als XML [ Vensternaam: ; Doelbestand: "MyApp_Schema.xml" ; Details opnemen voor analysetools ; Opties opgeven als JSON: $jsonOptions ]

Hoewel in de scriptstap Details opnemen voor analysetools is geselecteerd, wordt deze overschreven door de sleutel include_details in Opties opgeven als JSON, omdat JSON is ingesteld op False.

Voorbeeld 3 

Slaat scripts, layouts en velden op in afzonderlijke XML-bestanden in een map met de naam "MyApp_SaveAsXML".

Kopiëren
Variabele instellen [ $jsonOptions ; Waarde:
  JSONSetElement ( "{}" ;
    [ "catalogs_included" ; JSONMakeArray (
      "ScriptCatalog LayoutCatalog FieldCatalog" ;
      " " ; JSONString ) ; JSONArray ] ;
    [ "include_details" ; True ; JSONBoolean ] ;
    [ "split_catalogs" ; True ; JSONBoolean ]
  )
]

Kopie opslaan als XML [ Vensternaam: ; Doelbestand: "MyApp_SaveAsXML" ; Opties opgeven als JSON: $jsonOptions ]

Hiermee wordt een map met de naam "MyApp_SaveAsXML" gemaakt met drie bestanden:

  • MyApp_SaveAsXML_ScriptCatalog.xml
  • MyApp_SaveAsXML_LayoutCatalog.xml
  • MyApp_SaveAsXML_FieldCatalog.xml