Summe Packmittel (Bestellung)
Ereignisaktion - Kurzfassung
Zweck: Summiert in einer Bestellung die Anzahl Packstücke für einen oder alle Verpackungstypen aus den Positionen aller Ebenen und schreibt die Summe(n) in Verpackungssummenattribute im Bestellungskopf.
Siehe auch: Summe Packmittel (Manifest), Summe Packmittel (Sendung), Verpackungstyp
Die Ereignisaktion Summe Packmittel (Bestellung) summiert die Mengenangaben für einen bestimmten Verpackungstyp (oder alle) in den Postionen einer als Bezugsobjekt vorliegenden Bestellung.
Ausschlaggebend für die Anrechnung ist auf der Ebene der jeweiligen Position der Wert im Feld "Anzahl Packstücke" (numberOfPackages) und nicht etwa das Feld "Aggregierte Anzahl Packstücke" (aggregateNumberOfPackages).
ACHTUNG
Sofern für einen Positionstyp z. B. mit der Ereignisaktion Berechne aggregierte Anzahl Packstücke (Bestellung) die "Aggregierte Anzahl Packstücke" berechnet werden soll, um in einer mehrstufigen Positionshierarchie die Anzahl der Packstücke in Unterpositionen kaskadierend zu skalieren, führt dies zu Unstimmigkeiten bei der Berechnung von Packmittel-Summen für jeden Verpackungstyp, der in diesen Unterpositionen vorkommt.
Die Gesamtanzahl je Verpackungstyp über alle Bestellpositionen wird in das entsprechende Verpackungssummenattribut im Kopf der Bestellung (s. Bestellung-Masken) geschrieben.
►HINWEIS◄ Es gibt entsprechende Ereignisaktionen für Manifeste (Summe Packmittel (Manifest)) und Sendungen (Summe Packmittel (Sendung)). In Konfigurationen muss immer die "passende" Ereignisaktion für das betreffende Bezugsobjekt verwendet werden. Im Fall einer Verwechslung tritt zur Laufzeit keine Fehlermeldung auf. Die Berechnung liefert nur kein Ergebnis.
Konfiguration
Die Ereignisaktion Summe Packmittel (Bestellung) erwartet als Bezugsobjekt eine Bestellung (s. Bestellungen). Im Kontext eines anderen Objekttyps ist die Ereignisaktion wirkungslos, ohne dass zur Laufzeit ein Fehler auftritt.
Der optionale Parameter Typ kann verwendet werden, um die Auswertung auf einen bestimmten Verpackungstyp zu begrenzen.
Ohne Angabe für den Typ wird jeder Verpackungstyp aufsummiert, der in den Positionen der Bestellung vorkommt.
►WICHTIG◄ Wenn kein Typ angegeben wird, aktualisiert die Aktion nur die Summenattribute der Verpackungstypen, die aktuell in Gebrauch sind. Sofern in früheren Berechnungen Summenwerte für Typen berechnet wurden, die aktuell in keiner der Bestellpositionen mehr vorkommen, dann werden diese Werte unverändert beibehalten. Sie müssen bei Bedarf explizit zurückgesetzt bzw. gelöscht werden.
Beispiel
In einer Erfassungsmaske für Bestellungen sollen die Verpackungssummenattribute je Verpackungstyp per Klick auf einen Button (über ein Eigenes Aktionsevent) aktualisiert werden können. Spätestens beim Speichern der Bestellung soll dieselbe Berechnung automatisch ausgelöst werden.
Konfiguration:
Die Aktionen bei bestandener Regel werden wie rechts abgebildet konfiguriert:
|
|
Laufzeitbeispiel:
Das folgende Beispiel zeigt eine Erfassungsmaske für Bestellungen, in der in der Kopfebene der Bestellung die Verpackungssummenattribute je Verpackungstyp (hier konfiguriert: "Hobbock" und "Sack") erscheinen.
Im Abschnitt Positionen sind mehrere Positionen ggf. mit Unterpositionen zu sehen, für die jeweils eine Anzahl Packstücke in Verbindung mit einem Verpackungstyp angegeben werden kann.
►ANMERKUNG◄ Für die Unterpositionen gilt im Beispiel die Konvention, dass das Feld Anzahl Packstücke die absolute Anzahl von Packstücken des betreffenden Verpackungstyps angibt und nicht etwa die Anzahl von Packstücken innerhalb je Packstück in der übergeordneten Ebene. Konkret bedeutet das für die Position Nr. 1.1, dass zusammen mit den 5 Hobbocks aus der übergeordneten Position exakt 1 (Sack) "Tabak-Sample" geliefert werden soll und nicht etwa 1 Sack mit jedem Hobbock.
Im Bild wurden die Verpackungssummen bereits per Klick auf den Button "Aufsummieren" berechnet. Nach einer Änderung für den Verpackungstyp von Position Nr. 1.1 und 2 von "Sack" auf "Beutel" wird die Bestellung gespeichert. Das ergibt folgendes Bild:
►ANMERKUNGEN◄
Da für den Verpackungstyp "Beutel" in der Kopfzeile kein Verpackungssummenattribut konfiguriert ist, erscheint der Summenwert nicht in der Erfassungsmaske. Im Datenobjekt der Bestellung wird er trotzdem gespeichert.
Für den Verpackungstyp "Sack" erscheint kein Wert mehr, weil dieser Verpackungstyp in keiner der Positionen mehr vorkommt und weil die Ereignisbehandlung (s. oben) vor der Berechnung alle Verpackungssummenattribute löscht.
Ohne das explizite Zurücksetzen (Löschen) aller Verpackungssummenattribute in der Ereignisbehandlung würde im Feld Sack immer noch der Wert 26 erscheinen.