Logik und Skripte

LogikGlühbirne

Über die Funktion

Skripte sind zwar nicht notwendig für die Verwendung von BarcodeShipping, jedoch erleichtern diese einige Vorgänge und unterstützen einen reibungslosen Ablauf.

Drei gängige Skripte als Beispiel für die vielfältigen Anwendungsmöglichkeiten sind:

  1. das automatische Wechseln zwischen Profilen
  2. das automatische Hinzufügen von Attributen zu Produkten, beispielsweise der Zolltarifnummer
  3. das automatische Überspringen der Übertragung des Status ans Shopsystem. Dadurch haben Sie die Möglichkeit einer manuellen Prüfung der Daten.
SitzenderMannMitLaptop

Logik und Skripte & BarcodeShipping

Durch die Anwendung von Skripten können Sie die Möglichkeiten von BarcodeShipping voll ausschöpfen und weitere Möglichkeiten der Automatisierung nutzen – ob Sie sich wiederholende Schritte automatisiert ablaufen lassen oder Informationen automatisch einfügen, die Ihr Shopsystem nicht mitliefern kann. Skripte bieten nahezu unendlich viele Möglichkeiten, um es Ihnen so leicht wie möglich zu machen.

Im Folgenden stellen wir Ihnen einige Skripte und Anwendungsbeispiele vor, die Ihren Alltag im Versandhandel erleichtern. Die Einbindung der Skripte wird im unteren Bereich „Konfiguration“ genauer erläutert.

Beispiel A) Sie bieten Ihren Kunden an, Pakete als Geschenk verpackt zu versenden?
Mit diesem Skript wissen Ihre Mitarbeiter sofort, wenn es sich bei der Bestellung um ein Geschenk handelt.
Beim Durchlaufen dieses Produktes wird eine Mitteilung oder ein Bild in BarcodeShipping angezeigt,
das darauf hinweist. 

Beispiel B) Ihr Shopsystem kann keine Zolltarifnummer mitliefern?
Eines Ihrer Produkte ist im Ausland sehr beliebt, jedoch kann ihr Shopsystem keine Zolltarifnummern übergeben. Ein Skript kann Ihnen in diesem Fall helfen. Wann immer dieses Produkt gescannt wird, wird automatisch die Zolltarifnummer mit übergeben.
Mühsames Ausfüllen mit der Hand wird damit überflüssig!

Beispiel C) Bestimmte Werte für Produkte werden von Ihrem Shopsystem nicht übertragen?
Anhand von Skripten können Sie auch Werte angeben, die von Ihrem Shopsystem nicht übermittelt werden können – wie beispielsweise das Artikelgewicht. 

Beispiel D) Sie verwenden verschiedene Profile, das ständige Wechseln ist jedoch mühsam?

BarcodeShipping automatisiert den Wechsel zwischen verschiedenen Profilen mit Hilfe der wiederkehrenden Parametern. Wenn Sie verschiedene Versanddienstleister abhängig vom Empfängerland verwenden, wählt BarcodeShipping während der Bearbeitung der Bestellung automatisch das passende Profil des entsprechenden Versanddienstleisters aus. In Ihrem Shop haben bestimmte Produkte den selben Anfang in der Produktnummer? Auch hier können Sie ein Profil festlegen, damit alle Produkte gleich behandelt werden. Sind beispielsweise alle Produkte verderblich, deren Nummer mit einer 5 beginnen, kann dieser Warnhinweis zur Einhaltung der Kühlkette automatisch mitgegeben werden. Eine weitere Anwendungsmöglichkeit ist das Anlegen eines Profils für Produkte mit einer Altersbeschränkung ab 18 Jahren. 

Die Skriptsprache im Falle von BarcodeShipping ist JavaScript. Bitte nehmen Sie folgende Einstellungen in BarcodeShipping vor:

Ablage der Skripte

Damit die Skripte funktionieren, müssen sie in dem Ordner Ihrer aktuell benutzten BarcodeShipping Installation im Ordner Scripts abgelegt werden.

Der Inhalt des Script Ordners kann wie folgt aussehen:

Wechsel zwischen Profilen (Orderidfilter skript)
Das orderIdFilter Skript wird beim Eingeben oder Abrufen einer Bestellung in BarcodeShipping ausgeführt. Sie können eigene BarcodeShipping Profile zur Bearbeitung unterschiedlicher Bestellungen anlegen, die automatisch aufgerufen werden. Im folgenden Beispiel wurden unterschiedliche Profile für Bestellungen angelegt, die mit „T“ oder „WG“ beginnen.

Für dieses Skript gibt es folgende Parameter:

  • order
  • state
  • services
function filter(orderId, state, services) {
if (orderId.startsWith(‚T‘)) {
services.getProfileManager().setCurrentProfile(‚TShirt‘);
}
if (orderId.startsWith(‚WG‘)) {
services.getProfileManager().setCurrentProfile(‚Wand Gemälde‘);
} else {
services.getProfileManager().setCurrentProfile(‚default‘);
}
}

Hinzufügen von Attributen (Orderfilter Skript)
Das orderFilter Skript wird vor der Paketauswahl in BarcodeShipping ausgeführt. Mit diesem können weitere Attribute hinzugefügt werden.
In diesem Beispiel werden den Artikeln der Ländercode sowie eine Zolltarifnummer hinzugefügt.

Bei diesem Skript gibt es folgende Parameter:

  • state
  • order
  • services
  • shop
  • shopShippingMethod
  • shippingMethod
  • shopPaymentMethod
  • paymentMethod
  • shipper
function filter(order, state, services) {
var countryCode = Java.type(‚com.neovisionaries.i18n.CountryCode‘);
order.getItems().values().forEach(function (item) {
item.setCommodityCode(„95030030“);
item.setCountryOfManufactureCode(countryCode.DE);
});
}
Skripte während Rückmeldung an Shopsystem (shipmentFilter Skript)
Das shipmentFilter Skript wird vor der Rückmeldung an den Shop in BarcodeShipping ausgeführt. Damit ist es zum Beispiel möglich – wie im folgenden Beispiel gezeigt – die Statusübermittlung an den Shop zu überspringen. Dadurch kann vorab nochmals alles manuell überprüft werden. Für dieses Skript gibt es folgende Parameter:
  • shipment
  • state
  • services
function filter(shipment, state) {
shipment.getParcel().getItems().clear();
         return false;
}
Hinweis für Mitarbeiter
Mit diesem Skript wird automatisch ein Hinweis für Ihre Mitarbeiter angezeigt während der Bearbeitung einer Bestellung. Damit können sie, wie in unserem oben genannten Beispiel, beispielsweise auf eine Geschenksverpackung hingewiesen werden:
function filter(order, state) {
    java.awt.Desktop.getDesktop().browse(new java.net.URI(„file://c://TestBild.png“));
}
Länder Profil wechsel Skript
Das folgende Skript wechselt in die Profile mit den Namen: „Warenpost INT KT (EU)“, „Warenpost INT KT (EU)“ oder“Warenpost INT KT (nonEU)“, abhängig davon ob das Zielland der Bestellung Deutschland, innerhalb der EU oder ausserhalb der EU ist.
var CountryUtils = Java.type("eu.ybm.util.country.CountryUtils");
var CountryCode = Java.type("com.neovisionaries.i18n.CountryCode");

var PROFILE_DE = "Warenpost INT KT (EU)";
var PROFILE_KT_EU = "Warenpost INT KT (EU)";
var PROFILE_KT_NONEU = "Warenpost INT KT (nonEU)";

function filter(order, state, services) {
profile = PROFILE_KT_EU;

if( order.getShipTo().getCountryCode() == CountryCode.DE ){ profile = PROFILE_DE; }
}else if( CountryUtils.isEUCountry(order.getShipTo().getCountryCode()) ){ profile = PROFILE_KT_EU; }else { profile = PROFILE_KT_NONEU; }
services.getProfileManager().setCurrentProfile(profile);
}

Vermissen Sie Ihren Anbieter?

Sie nutzen ein Versandunternehmen oder eine andere Möglichkeit, welche noch nicht unterstützt wird? Bitte informieren Sie uns, um welches System es sich handelt. Eventuell können wir Ihnen weiterhelfen. Hier geht es zum Kontakt.