Gerüst der Ticket-Template-Vorlage
<?xml version="1.0" encoding="UTF-8"?>
<ORDER_TEMPLATE_LIST xmlns="http://schemas.stoll.com/ticketing/ordertemplate/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.stoll.com/ticketing/ordertemplate/v1.0 StollOrderTemplates.xsd">
1 <ORDER_TEMPLATE name="NAME_OF_TEMPLATE">
<TEMPLATE_DESCRIPTION>Description of Template</TEMPLATE_DESCRIPTION>
<PRODUCTION_INFO>
2 Mandatory tags from PRODUCTION_INFO group
<ORDER_NUM...>
<ORDER_TYPE...>
<TOTAL_NUM_OF_EXECUTIONS...>
<ESTIMATED_ORDER_DURATION...>
<ORDER_DESCRIPTION...>
<ARTICLE_NUM...>
<STYLE_FILE_PATH...>
</PRODUCTION_INFO>
<ORDER_VELOCITY>
<![CDATA[
3 Add here tags from STOLL:TICKET namespace
## Macro V1.1 to add TAG to resulting XML under commented conditions
#macro (AddTAG $TAG $Param $Default)
...
]]>
</ORDER_VELOCITY>
<CUSTOM_VELOCITY>
<![CDATA[<STOLL:CUSTOM xsi:schemaLocation="http://schemas.custom.com/ticketing/ticket/v0.5 CustomTicket.xsd" xmlns="http://schemas.custom.com/ticketing/ticket/v0.5">
<CARD Version="1.1">
4 Add here tags from STOLL:CUSTOM namespace
</CARD>
</STOLL:CUSTOM>
## Macro V1.1 to add TAG to resulting XML under commented conditions
#macro (AddTAG $TAG $Param $Default)
...
]]>
</CUSTOM_VELOCITY>
<TEMPLATE_TAGS>
5 Add here definitions which produce lines for entering data when using this template and references the corresponding tags in above ORDER_VELOCITY or CUSTOM_VELOCITY block
</TEMPLATE_TAGS>
</ORDER_TEMPLATE>
</ORDER_TEMPLATE_LIST>
Erklärung
In (3) und (4) kann das AddTAG-Makro eingesetzt werden.
- Das AddTAG-Makro dient im Benutzereingabebereich beim Anwenden der Auftragsvorlage zur:
- Analyse des Eingabefelds
- Aufteilung der Parameter auf den Tag und dessen Attribute
- Nutzung eines Eingabehinweises als Hilfe im Eingabefeld, der die Anwendung erleichtert (muss in eckigen Klammern stehen)
- Eingabe mehrerer Daten in einer Zeile
(Daten müssen mit Semikolon getrennt sein) - Optionalen Verwendung von Default Parameter, wenn nichts eingegeben wurde
- Keinen XML-Output zu erzeugen, wenn nichts eingegeben wurde
- Das Makro hat das Format:
AddTAG $TAG $Param $Default $TAG
XML-Tag inklusive benötigter Attribute$Param
Übergibt an dieser Stelle den kompletten Eingabestring, der vom Makro verarbeitet wird.$Default
optional
Gibt den Wert an, der verwendet wird, wenn das korrespondierende Eingabefeld unausgefüllt bleibt.
Vorgehensweise:
- 1
- Geben Sie den Namen für die Vorlage ein, wie er in der Auswahlliste der Vorlagen angezeigt werden soll.
- 2
- Fügen Sie in diese Tag-Gruppe
PRODUCTION_INFO
Tags hinzu, die vorbelegte Daten enthalten und für die es im Auftragseditor des PPS standardmäßig Eingabefelder gibt. - 3
- Fügen Sie in diesem Bereich Tags aus der Gruppe STOLL:TICKET mit Ausnahmen von STOLL:CUSTOM Tags hinzu. Sie können hier das AddTAG-Macro einsetzen.
- 4
- Fügen Sie in diesem Bereich Tags aus der Gruppe STOLL:CUSTOM hinzu. Sie können hier das AddTAG-Macro einsetzen.
- 5
- Definieren Sie hier die benötigten Eingabefelder mit Bezug auf STOLL:TICKET und STOLL:CUSTOM Tags.
Beispiel:
- Sie wollen einen Tag eintragen, um die Größenangabe und Gewicht eines Strickteils zu definieren.
- Das Eingabefeld soll editierbar sein.
- 1
- Tragen Sie folgenden String in (5) ein.
<CUSTOM_TAG label="
DIMENSION" editable="true">;;;; [Size;Length;Width;Weight; of knit]</CUSTOM_TAG>
- Beim Anwenden der Vorlage erhalten Sie folgendes Eingabefeld (ohne M;60…)
- 2
- Dieser Tag stammt aus dem STOLL:CUSTOM-Tag Namensraum und ist folglich in (4) zu referenzieren. Sie setzen dazu das AddTAG-Makro ein, um den Kommentar ([Size;Length;Width;Weight; of knit]) abzutrennen und die Parameter aufzuteilen.
#AddTAG(" <DIMENSION Size='$
ParamList[0]' Length='$
ParamList[1]' Width='$
ParamList[2]' Weight='$
ParamList[3]' />" $
DIMENSION)
- Der Tag hat 4 Parameter zum Festlegen von Größe und Gewicht des Gestricks, die auf 4 Attribute zu verteilen sind. Die Parameter können über ParamList[N] aufgeteilt werden, wobei N ab 0 zählt, was dem ersten Parameter in der Eingabe entspricht.
Die Eingabe in obigem Bild wird wie folgt zerlegt:ParamList[0]=M
ParamList[1]=60
ParamList[2]=52
ParamList[3]=0,5
- Der Tag wird in die resultierende XML-Datei wie folgt eingebaut:
<DIMENSION Size='M' Length='60' Width='52' Weight='0,5' />
Weiteres Beispiel:
- 1
- Sie wollen die Druckfunktion nach Auftragsende einstellbar haben.
Die Eingabe PRINT aktiviert den Druck, NONE druckt nicht.
- Das Eingabefeld soll editierbar sein.
- 1
- Tragen Sie in (5) einen Tag ein, um die Druckfunktion zu schalten.
<CUSTOM_TAG label="
ACTION_DEFINITION" editable="true">; [NONE|PRINT; Action to take place after knit is done]</CUSTOM_TAG>
- Beim Anwenden der Vorlage erhalten Sie folgendes Eingabefeld
- 2
- Referenzieren Sie diesen Tag in (3), da er aus der STOLL:TICKET\STOLL:PRODUCTION_INFO-Gruppe stammt.
- 3
- Setzen Sie das AddTAG-Makro ein, um den Kommentar
[NONE|PRINT; Action to take place after knit is done]
abzutrennen, den einzigen Parameter zu extrahieren und den Default bei leerer Eingabe auf NONE zu setzen.#AddTAG(" <STOLL:ACTION_DEFINITION>$ParamList[0]</STOLL:ACTION_DEFINITION>" $ACTION_DEFINITION "NONE")
- Wenn Sie in das Feld ACTION_DEFINITION nichts eingeben, wird beim Erzeugen des Tickets in der XML „NONE“ eingetragen, weil das Makro erkennt, dass nichts eingegeben wurde aber ein Default-Wert „NONE“ vorliegt.
Ohne den Default-Wert wäre der Tag nicht im Ticket enthalten.
In die resultierende XML-Datei wird in diesem Fall eingebaut:<STOLL:ACTION_DEFINITION>
NONE</STOLL:ACTION_DEFINITION>
- Wenn Sie PRINT eintragen, lautet die Ausgabe in der XML:
<STOLL:ACTION_DEFINITION>
PRINT</STOLL:ACTION_DEFINITION>
Weiteres Beispiel zum Einbinden von User Tags:
- Sie wollen einen User Tag hinzufügen, um z.B. vom Maschinenbenutzer bestätigen zu lassen, ob ein Update erfolgreich war.
- 1
- Tragen Sie in
<USER_TAG label="Update ok" editable="true"></USER_TAG>
- Usertags werden implizit vom PPS unterstützt und dieser Tag wird inklusive Gruppentag automatisch in die resultierende XML-Datei geschrieben:
-
<STOLL:OPERATOR_INFO>
-
<STOLL:USER_TAGS>
-
<STOLL:USER_TAG Index="0" Label="Update Ok" /> </STOLL:USER_TAGS>
-
</STOLL:OPERATOR_INFO>