Das Custom Operations Setup-Element ermöglicht es, Ausdrücke zu erstellen, ohne eine Shipping Rules-Datei erstellen zu müssen. Sie können die Ausdrücke verwenden, die im Shipping Rules <expressions>-Knoten unterstützt werden. Siehe die Beschreibung der Shipping Rules-Knoten hier.
Hinzufügen des Setup-Elements
- Gehen Sie zu Setup und navigieren Sie zu der Location/Actor in Ihrer Installation, in der die Ausdrücke angewendet werden sollen.
- Klicken Sie mit der rechten Maustaste in das rechte Fenster und wählen Sie New > Custom Operations.
- Wählen Sie den Operationstyp und klicken Sie auf New. Es gibt 5 verschiedene Operationstypen:
- Expressions when reading request - der Ausdruck wird ausgeführt, nachdem das Shipment-JSON verarbeitet wurde.
- Expressions at submit - der Ausdruck wird beim Submit ausgeführt, d. h. wenn eine Sendung erstellt wird.
- Expressions at transmit - der Ausdruck wird beim Transmit ausgeführt, d. h. wenn EDI an den Frachtführer gesendet wird.
- Expression at validation - der Ausdruck wird zusammen mit anderen Validierungen ausgeführt.
- Patch Options for API - legen Sie Standardwerte für den Option-Parameter im Shipment Server fest. (Nicht relevant für On-premises-Kunden).
-
Patch Data for API - ersetzen Sie Werte, definieren Sie ein Trennzeichen usw. (Nicht relevant für On-premises-Kunden).
- Fügen Sie den Ausdruck/Code in das Feld ein. Wenn Sie eine neue XML-Datei erstellen, müssen Sie Ihren Ausdruck im vordefinierten <Expressions>-Knoten hinzufügen.
- Klicken Sie auf OK, um zu speichern.
Beispiele
Expressions
Dieser Ausdruck setzt einen Standardwert von 15:00 im Feld Pickup start, wenn die aktuelle Zeit (abhängig vom Operationstyp, wann der Ausdruck ausgeführt wird) vor 14:00 liegt. Wenn der Ausdruck nur für einen bestimmten Frachtführer gelten soll, ist es wichtig, dies anzugeben. (Hinweis: Diese Funktion funktioniert nicht mit benutzerdefinierten Frachtführern.)
Sie können Ausdrücke verwenden, die im Shipping Rules <expressions>-Knoten unterstützt werden. Siehe die Beschreibung der Shipping Rules-Knoten hier.
<Expression targetfield="fld_RefPickupStart">
<!-- if(currenttime less than 14:00) today 15:00 -->
<Condition name="intlimits" field="fld_SubcarrierConceptID" min="448" max="448" />
<Condition name="timelimits" field="fld_Now" min="00:00" max="14:00"/>
<Item special="datenow" format="YYYY-MM-DD"/>
<Item expression=" "/>
<Item expression="15:00:00"/>
</Expression>
<Expression targetfield="fld_RefPickupStart">
<!-- if(currenttime more than 14:00) today(+1) 15:00 -->
<Item special="datenow" adddays="1" format="YYYY-MM-DD"/>
<Item expression=" "/>
<Item expression="15:00:00"/>
</Expression>
SSOptions.ini
In diesem Beispiel ist die Postleitzahlenvalidierung für PreAdviseOrder deaktiviert und Labels sind auf ZPLGK gesetzt.
[PreAdviseOrder]
ValidatePostCode=0
[SubmitOrder]
Labels=ZPLGKDie Patch-Options-Datei folgt diesem Format:
[<MethodName>]
<Param Name]=[Param Value]
Wenn der Parameter bereits im Aufruf vorhanden ist, wird er nicht geändert. Er wird nur hinzugefügt, wenn er nicht enthalten ist.
SSData.ini
In diesem Beispiel ist das Trennzeichen auf den Standardwert | gesetzt und vier Zeichenfolgen werden für PreAdviseOrder ersetzt.
[PreAdviseOrder]
Delimeter=|
1="Name2"|"Street2"|
2="Kind": 176,|"Kind": 177,
3="Kind": 176,|"Kind": 177,
4="Kind": 176,|"Kind": 177,Die Patch-Data-Datei folgt diesem Format:
[<MethodName>]
<n>=<OldValue><NewValue>
n ist eine Zahl, die bei 1 beginnt. Wenn es Lücken in der Nummerierung gibt, werden Werte nach der Lücke ignoriert.
OldValue ist die zu ersetzende Zeichenfolge und NewValue ist die Zeichenfolge, die den alten Wert ersetzt.