Zum Inhalt

Element <ama-generate>

Zweck: Rendert konfigurierte AMA-/EDIFACT-Nachrichten sowie die zugehörigen Artefakte und Pakete.

Warum: Verwende dieses Element, um die unterstützte AMA-/EDIFACT-Ausgabefamilie in einem Task zu rendern und zu paketieren.

Beispiel

1
<ama-generate defaultEdifactProfileRef="uoc3_comma" variablePrefix="__" variableSuffix="__"/>

Entscheidungshilfe

Fachlicher Nutzen: Modelliert partnerspezifisches AMA-/EDIFACT-Rendering, Side-Artefakte und Packaging als einen prüfbaren Task.

  • Verwenden, wenn

    • Beim Erzeugen eines unterstützten AMA-/EDIFACT-Test- oder Trainingspakets.
  • Anderen Ansatz wählen, wenn

    • Beim Erzeugen gewöhnlicher CSV-, JSON-, XML-, Datenbank- oder Broker-Ausgabe.
  • Voraussetzungen

    • Liefere lizenzierte Laufzeitunterstützung, Profile, Templates, Outputs und benötigte Variablen.
  • Alternativen

    • Verwende generate für allgemeine Datensatz- und Artefakterzeugung. (Siehe: <generate>)

Vollständige Beispiele

Profilierte EDIFACT-Ausgabe rendern und ihre Artefakte paketieren

Verwende die AMA-Familie, wenn partnerspezifische EDIFACT-Trennzeichen, Templates, Ausgabenamen, Nebenartefakte und Archivpakete gemeinsam modelliert werden müssen.

ama-edifact-package/templates/order.template.edi
1
UNH+__message_id__+ORDERS:D:96A:UN'
ama-edifact-package/datamimic.xml
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<setup rngSeed="42">
    <ama-generate defaultEdifactProfileRef="unoc3" variablePrefix="__" variableSuffix="__">
        <edifactProfiles>
            <profile id="unoc3" decimal="." data="+" comp=":" release="?" term="'"/>
        </edifactProfiles>
        <templates>
            <template id="order_template"
                      path="templates/order.template.edi"
                      edifactProfileRef="unoc3"
                      sourceScripted="True"/>
        </templates>
        <variable name="message_id" generator="IncrementGenerator"/>
        <output type="ORDERS" templateRef="order_template" filename="ORDERS___message_id__"/>
        <artifact type="edi_outputs" folder="edi"/>
        <artifact type="edifact_trace_csv" filename="ORDERS___message_id___trace.csv"/>
        <package type="zip" filename="ORDERS___message_id__.zip"/>
    </ama-generate>
</setup>

Regeln und ungültige Kombinationen

I621 — Parser AMA Reference Invalid

AMA {reference_kind} '{reference}' is invalid: {reason}

Warum: The AMA block contains a duplicate identifier or an unresolved local reference.

Lösung: Declare each profile and template once, then reference an existing identifier.

Vollständige Regel

Erlaubte Elternelemente / Erlaubte Kindelemente

Erlaubte Elternelemente: else, else-if, if, setup, while

Erlaubte Kindelemente:

artifact, edifactProfiles, output, package, template, templates, variable

Attribute

Alle 7 Attribute anzeigen

defaultEdifactProfileRef

Default EDIFACT profile reference id.

optional; string; Standardwert: null.

encoding

Encoding override for AMA outputs.

optional; string; Standardwert: null.

name

Name of the AMA generate block.

optional; string; Standardwert: "AmaGenerateModel".

outputDir

Output directory for generated EDI files (transitional).

optional; string; Standardwert: null.

separator

CSV separator for AMA trace outputs.

optional; string; Standardwert: null.

variablePrefix

Variable name prefix for AMA templates.

optional; string; Standardwert: null.

variableSuffix

Variable name suffix for AMA templates.

optional; string; Standardwert: null.