Spara en kopia som XML

Sparar en kopia av en öppen fil som en XML-representation av schema, layouter och script.

Tillval 

  • Fönsternamn anger fönsternamnet för en öppen fil. Om inget anges används det aktuella fönstret.

  • Destinationsfil är sökvägen till XML-filen som ska skapas. Mer information finns i Skapa filsökvägar.

  • Inkludera information för analysverktyg lägger till mer information i XML-filen.

    Det här alternativet lägger till elementet DDR_INFO, som ger ytterligare information som är användbar för tredjepartsverktyg som du kan använda för att analysera den anpassade appen. Beroende på appen kan det här alternativet resultera en betydligt större XML-fil.

  • Spara binära data för varje layoutobjekt under noden lagrar varje layoutobjekts binära data (till exempel en bild) under layoutobjektets nod i XML-filen. Detta kan göra XML-filen enklare för vissa verktyg att använda, men kan också öka XML-filens storlek.

    När det här alternativet är avmarkerat lagras endast en referens under varje layoutobjekts nod, som pekar på bibliotekets datakatalog där binära data lagras. Detta kan bidra till att minska filstorleken när samma binära data används för många layoutobjekt.

  • Ange alternativ som JSON är ett textuttryck för ett JSON-objekt som låter dig ange följande alternativ för scriptsteget:

    • catalogs_included (JSON-matris): En matris med katalognamnssträngar som anger vilka kataloger som ska inkluderas i XML-filen. Om det utelämnas inkluderas alla kataloger som standard.

    • include_details (booleskt): Det här alternativet har samma syfte som Inkludera information för analysverktyg och åsidosätter det värdet, om det här alternativet anges.

    • split_catalogs (boolekst): Om värdet är true skapas en separat XML-fil för varje katalog som anges i nyckeln catalogs_included. Om värdet är false eller utelämnas skapas en enda XML-fil. Se Anteckningar för mer information om hur uppdelade kataloger fungerar.

    • standalone_binarydata (booleskt): Det här alternativet har samma syfte som Spara binära data för varje layoutobjekt under noden och åsidosätter det värdet, om det här alternativet anges.

    När du först väljer det här alternativet genererar FileMaker Pro automatiskt en mallberäkning som returnerar alla ovanstående nycklar med standardvärden, inklusive alla katalognamn som stöds för catalogues_included, som du sedan kan anpassa.

Kompatibilitet 

Produkt Stöds
FileMaker Pro Ja
FileMaker Go Nej
FileMaker WebDirect Nej
FileMaker Server Ja
FileMaker Cloud Ja
FileMaker Data API Nej
Anpassad webbpublicering Nej

Ursprungsversion 

18.0

Beskrivning 

Det här scriptsteget motsvarar ungefär att välja Verktyg > Spara en kopia som XML. Mer information finns i Dokumentera databasscheman.

Du kan använda Ange alternativ som JSON för att automatisera komplexa scenarier där du dynamiskt behöver ange vilka kataloger som ska inkluderas eller om utdata ska delas upp i flera filer.

Kommentarer 

  • Användaren eller scriptet måste ha fullständig behörighet för att kunna utföra det här scriptsteget. Mer information finns i Skapa och redigera script.

  • Det här XML-formatet kan komma att ändras från en version av FileMaker Pro till en annan. När du använder XML för att jämföra två versioner av en FileMaker Pro-fil ska du se till att samma version av FileMaker Pro används för att spara en kopia av varje fil som XML. Om du använder XML-filen med andra verktyg ska du se till att dessa verktyg är avsedda att använda det XML som sparades av din version av FileMaker Pro.

  • För Ange alternativ som JSON, när split_catalogs är true:

    • Alternativet Destinationsfil behandlas som ett mappnamn och separata XML-filer skapas för varje katalog som anges i catalogues_included. Om mappen inte finns skapas den i scriptsteget.

    • Nyckeln standalone_binarydata ställs automatiskt in på true när katalogerna delas upp.

    • Värdet LibraryCatalog ignoreras även om det anges i catalogues_included.

  • Om Ange alternativ som JSON innehåller ett formateringsfel returnerar scriptsteget felkod 878 ("JSON-data för Alternativ innehåller ett formateringsfel och kunde inte tolkas").

Exempel 1 

Sparar en kopia av den öppna filen vars fönsternamn är Inventering till en XML-fil.

Kopiera
Spara en kopia som XML [ Fönsternamn: "Inventering" ; Destinationsfil: "Inventering.xml" ]

Exempel 2 

Sparar endast script, layouter och anpassade funktioner från den fil som anges i det aktuella fönstret till en XML-fil med hjälp av Ange alternativ som JSON.

Kopiera
Ange variabel [ $jsonOptions ; Värde:
  JSONSetElement ( "{}" ;
    [ "catalogs_included" ; JSONMakeArray (
      "Scriptkatalog Layoutkatalog AnpassadeFunktionerKatalog" ;
      " " ; JSONString ) ; JSONArray ] ;
    [ "include_details" ; False ; JSONBoolean ] ;
    [ "split_catalogs" ; False ; JSONBoolean ] ;
    [ "standalone_binarydata" ; False ; JSONBoolean ]
  )
]

Spara en kopia som XML [ Fönsternamn: ; Destinationsfil: "MinApp_Schema.xml" ; Inkludera information för analysverktyg ; Ange alternativ som JSON: $jsonOptions ]

Observera att även om Inkludera information för analysverktyg är markerat i scriptsteget åsidosätts det eftersom nyckeln include_details i Ange alternativ som JSON är inställd på False.

Exempel 3 

Sparar script, layouter och fält i separata XML-filer i en mapp med namnet MinApp_SparaSomXML.

Kopiera
Ange variabel [ $jsonOptions ; Värde:
  JSONSetElement ( "{}" ;
    [ "catalogs_included" ; JSONMakeArray (
      "Scriptkatalog Layoutkatalog Fältkatalog" ;
      " " ; JSONString ) ; JSONArray ] ;
    [ "include_details" ; True ; JSONBoolean ] ;
    [ "split_catalogs" ; True ; JSONBoolean ]
  )
]

Spara en kopia som XML [ Fönsternamn: ; Destinationsfil: "MinApp_SparaSomXML" ; Ange alternativ som JSON: $jsonOptions ]

En mapp skapas med namnet MinApp_SparaSomXML som innehåller tre filer:

  • MinApp_SparaSomXML_Scriptkatalog.xml
  • MinApp_SparaSomXML_Layoutkatalog.xml
  • MinApp_SparaSomXML_Fältkatalog.xml