Bundles
Mithilfe von Bundles lassen sich mehrere Artikel zu einem Verkaufspaket kombinieren. Sie können sowohl in den Artikelstammdaten definiert als auch in den meisten Verkaufsbelegen on-the-fly angelegt werden. Ein Bundle verhält sich wie ein Produkt/ Artikel, der aus verschiedenen Komponenten besteht. Das volle Potenzial zu einer übersichtlichen Strukturierung von Verkaufsbelegen entfalten Bundles in Kombination mit Formatierungen und Zwischensummen, die ebenfalls Bestandteil von DYCE Easy Bundle Seller sind.
Multi-Level und verschachtelte Bundle sind nicht möglich.
Produkt-Bundle
Ein Bundle ist eine Zusammenfassung einzelner Komponenten zu einem eigenständigen Produkt. Es kann in Verkaufsangeboten und Verkaufsaufträgen (von hier an Verkaufsbelege genannt) verwendet werden. Der Preis des Bundles basiert auf den Preisen der Komponenten. Bundles können auf Basis von Stammdaten verwendet oder individuell (on-the-fly) erstellt werden.
Stammdaten für Bundles
Zur Verwendung fester Bundles können diese in den Stammdaten der Artikel erstellt werden. Dies ermöglicht eine einfache Verwendung z.B. in einem Verkaufsangebot. Hierfür wird ein neuer Artikel zur Verwendung für ein Produktbundle angelegt. In der Artikelbeschreibung wird die Beschreibung des Bundles eingetragen. Das Feld Bundle (auf der Artikelkarte im Inforegister Allgemein) wird auf JA gesetzt.
Der Artikel, der das Bundle darstellt, muss als bestandsgeführt eingestellt sein (Art=Bestand). Dies ist die Voraussetzung von Business Central, dass eine Montagestückliste angelegt werden kann. Für die Verwendung des Artikels ist dies aber nicht weiter relevant, da der Artikel bei der Verwendung in einem Verkaufsbeleg in eine Textzeile umgewandelt wird.
Anschließend werden über die Montagestückliste (Aufruf über Zugehörig / Stückliste / Montage) die Komponenten für das Bundle hinterlegt. In dem Moment, in dem ein Bundle-Artikel in einer Verkaufszeile verwendet und eine Menge eingetragen wird, wird die zugehörige Stückliste automatisch entfaltet. Dabei wird die Zeile mit dem Bundle-Artikel zu einer Textzeile (Feld Gruppierung=Bundle) umgewandelt, die Einträge in der Stückliste werden zu Komponenten. Das System berücksichtigt auch Einstellungen aus der Einrichtung Debitoren und Verkauf.
Wenn das Ausrollen eines Bundles durch einen Dialog, Requestpage oder andere Popups unterbrochen wird, ist es möglich, dass das Bundle nicht komplett ausgerollt wird. Das Bundle wird dann potentiell nur bis zum Zeitpunkt der Unterbrechung ausgerollt. Bei der Unterbrechung müssen Informationen in der Datenbank gespeichert werden (commit). Beim Speichern geht allerdings die Anweisung verloren, weitere Verkaufszeilen anzulegen und als Komponente zu markieren.
Weitere Details zu der Funktionsweise von Montagestücklisten entnehmen Sie bitte diesem Teil der Microsoft Dokumentation.
Als Komponenten eines Bundles können nur Dienstleistungsartikel verwendet werden, deren Abrechnungsart Budget ist. Hintergrund ist, dass Bundles immer nur als Ganzes geliefert und fakturiert werden können. Beides ist mit den Abrechnungsarten Nach Aufwand und Festpreis nicht möglich.
Bundle über andere Apps oder API erstellen
Bundle-Artikel, die über andere Apps oder eine API in Verkaufszeilen eingetragen werden, werden nicht automatisch ausgerollt, wenn setHideValidateDialog(true) oder GUIALLOWED(false) gilt. Dadurch wird verhindert, dass die Verkaufszeile durch DYCE Easy Bundle Seller verändert wird, bevor die andere App mit der Erstellung fertig ist. Würde beispielsweise der Shopify Connector einen Bundle-Artikel in einer Verkaufszeile eintragen und die Menge setzten, würde das Bundle sofort ausgerollt werden. Die Verkaufszeile mit dem Bundle ist anschließend eine Bemerkungs- bzw. Textzeile. Der Shopify Connector kann den Preis nicht mehr eintragen und läuft auf einen Fehler.
Wird die Menge in einem Bundle eingetragen wenn setHideValidateDialog(true) oder GUIALLOWED(false) nicht gilt, wird das Bundle sofort ausgerollt. Für den Anwender wird das Bundle also immer automatisch ausgerollt, für andere Apps oder eine API ist des nicht der Fall.
Das Buchen von Bundle-Artikel wird verhindert, um falschen Daten vorzubeugen. Der Anwender kann das Bundle über die Zeilenaktion Bundle ausrollen entfalten. Die Aktion steht im Angebot, Auftrag, Rahmenauftrag, Verkaufsrechnung und Verkaufsgutschrift zur Verfügung.
Damit Bundle auch von außen automatisch ausgerollt werden können, wurde ein Publisher in DYCE Easy Bundle Seller öffentlicht zugänglich gemacht. Diese kann verwendet werden, um eine Connector App zu erstellen.
In der Codeunit 70921400 DYCEEBSBundleManagement kann die Procedure "ExplodeBundleLinesInSalesDocument(SalesHeader: Record "Sales Header")" durch eine Connector App aufgerufen werden. Die Aktion rollt alle Bundle in dem gewähltem Dokument aus.
Um beispielsweise den Shopify Connector anzubinden, könnte das Event "Order.Events.OnAfterProcessSalesDocuments(SalesHeader,OrderHeader)" in Codeunit 30166 "Shpfy Process Order" (ShpfyPreocessOrder.Codeunit.al) verwendet werden, um alle Bundle in dem Dokument auszurollen.
Individuelles Bundle erstellen
Neben der Verwendung eines fertigen Bundles (s. oben) kann auch innerhalb eines Verkaufsprozesses ein individuelles bzw. einmaliges Bundle manuell erstellt werden. Hierfür muss im ersten Schritt eine Zeile der Art Bemerkung (Textzeile) erstellt werden. In der Textzeile wird die Beschreibung eingetragen und das Kennzeichen im Feld Gruppierung auf Bundle geändert. Das Bundle wird zunächst mit der Menge 1 erstellt.
In den folgenden Zeilen werden die Komponenten (Artikel) eingetragen. Diese Zeilen werden im Feld Gruppierung als Komponente markiert. In den Komponentenzeilen werden die Mengen eingetragen, die genau ein Bundle ergeben.
Anschließend kann das Bundle in der Seite Bundle bearbeitet werden. Die Seite wird über die Funktion Bundle bearbeiten im Zeilenmenü (Verwalten im Verkaufsbeleg) aufgerufen. Hier können sowohl Einheit als auch Menge, Rabatt und der Preis des Bundles editiert werden. In den Verkaufsbelegen wird durch eine Erhöhung der Menge im Bundle alle Mengen in den Komponenten korrespondierend erhöht.
Vorgaben für individuelle Bundles
Um die Erstellung eines Bundles on-the-fly zu erleichtern, können über die Felder Einheit individuelles Bundle, Formatierung Bundlezeile und Komponenten drucken in der Seite Einrichtung Debitoren und Verkauf im Inforegister Bundle Vorgabewerte hinterlegt werden. Diese Angaben sind optional. Sind diese Felder nicht gefüllt, müssen sie bei der Erstellung eines individuellen Bundles vergeben werden.
Wenn Sie schnell in die Seite für Bundle wechseln wollen, können Sie sich das Feld Bundle Beschreibung über die Personalisierung einblenden. Durch einen Klick auf das Feld wird die Seite Bundle geöffnet.
Beinhaltet ein Verkaufsbeleg mehrere Bundles, wird beim Eintragen von Komponenten ein Auswahlfenster für die Zuordnung der Komponente zum gewünschten Bundle angezeigt. Es wird immer das Bundle vorgeschlagen (markiert), das als Nächstes oberhalb der Komponente steht. Durch Bestätigung der Auswahl wird die Komponente dem Bundle zugeordnet.
Preise und Rabatte im Bundle
Preis, Betrag und Rabattbetrag eines Bundles errechnen sich anhand der Komponenten. Der Stückpreis des Bundles (VK-Preis Ohne MwSt. bzw. Bundle-Preis) wird errechnet, indem die Summe der Beträge und die Summe der Rabattbeträge der Komponenten durch die Bundle-Menge geteilt wird:
Der Zeilenbetrag des Bundles (Zeilenbetrag Ohne MwSt. bzw. Bundle-Betrag) entspricht der Summe der Beträge der Komponenten:
Der Rabatt des Bundles (Zeilenrabattbetrag bzw. Bundle-Rabatt) entspricht der Summe der Rabattbeträge der Komponenten:
Wird eine Komponente zu einem Bundle hinzugefügt, entfernt oder der Preis geändert, werden Preis, Betrag und Rabatt des Bundles neu berechnet. Bei Änderung der Menge einer Komponente werden Betrag und Rabatt des Bundles neu berechnet. Wird ein Rabatt in einer Komponente eingetragen, geändert oder gelöscht, werden Betrag und Rabatt im Bundle neu berechnet.
Leistungsartikel werden bei der Berechnung des Bundle-Preises, des Bundle-Betrags und des Bundle-Rabatts nicht berücksichtigt. Änderungen an den Komponenten führen unmittelbar zu einer Änderung des Bundles. Dies schließt mengenbasierte Preisänderungen von Komponenten mit ein, die durch Mengenänderungen im Bundle verursacht wurden.
Menge, Preis, Rabatt und Betrag des Bundles können mithilfe der Zeilenaktion Bundle bearbeiten geändert werden. Eine Mengenänderung im Bundle ändert entsprechend die Mengen der Komponenten. Bundle-Betrag und -Rabatt werden neu berechnet. Bei einer Mengenänderung einer Komponente wird der Preis ebenfalls neu berechnet, sofern es Einträge in einer Verkaufspreisliste gibt.
Bei einer Preisänderung im Bundle werden die Preise aller Komponenten neu berechnet. Dabei werden die Preise der Komponenten im gleichen Verhältnis geändert, in dem der Bundle-Preis geändert wurde. Falls nach der Preisänderung der Komponenten der neu errechnete Bundle-Preis nicht mit dem manuell eingetragenem Bundle-Preis übereinstimmt, wird die Differenz auf genau ein Bundle (Menge = 1) heruntergerechnet und zum Preis einer Komponente addiert. Für diesen zweiten Schritt wird die optimale Komponente ermittelt. Haben eine Komponente und das Bundle die gleiche Menge, ist die Komponente optimal geeignet und wird für den Ausgleich der Differenz verwendet. Gibt es mehr als eine Komponente mit der gleichen Menge, wird die letzte verwendet. Gibt es keine Komponente mit der gleichen Menge, wird die letzte Komponente verwendet: