Neu Automatisch neukalkulation des VK bei Wareneingang

Dlamz

Gut bekanntes Mitglied
11. August 2011
117
0
Gibt es eine Möglichkeit, bei wareneingang (geänderter ek) den vk automatisch mit einem festen Multiplikator anzupassen?
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
Mit einem Workflow kann man das hinbekommen.

1. Workflow Artikel > Plusbuchung anlegen.
2. Als Bedingung Artikel > Allgemein > Stammdaten > Art.Nr und Ist nicht leer wählen. Damit reagiert der Workflow dann auf jede Plusbuchung, sprich auf jeden Wareneingang.
3. Als Aktion Werte setzen > Artikel.Allgemein.PreiseEinheiten.VK-Netto wählen.
4. Bei Wert klickst Du auf "..." und suchst in der Variablenliste rechts Vorgang.Artikel.Allgemein.PreiseEinheiten.Ø_Einkaufspreis-Netto und doppelklickst das.
5. Dann erweiterst Du den Term mit einem " | Times: " und Deinem Faktor (mit Dezimalpunkt), z.B. so ... {{ Vorgang.Artikel.Allgemein.PreiseEinheiten.Ø_Einkaufspreis-Netto | Times: 1.25 }}
6. Alternativ kannst Du natürlich " | DividedBy: " und als Wert 1-DeineMarge verwenden, bei 25% Marge also {{ Vorgang.Artikel.Allgemein.PreiseEinheiten.Ø_Einkaufspreis-Netto | DividedBy: 0.75 }}

Wenn jetzt noch der Worker gestartet ist, dann wird bei jedem Warenlagereingang der VK-Netto des/der eingegangenen Artikel auf Basis des neuen EK-Netto neu berechnet und zwar entweder mit Aufschlag (5) oder mit Marge (6).
 

Dlamz

Gut bekanntes Mitglied
11. August 2011
117
0
wow, ok danke für die Antwort, das wird ja ein bisschen kompliziert, da noch eingie andere Artikel als Stückliste darauf zugreifen und da ein anderer Multiplikator greift.
Ggfs. müssen halt die Artikelnummern als Bedingung hinterlegt werden Also wahrscheinlich ein eigener Workflow pro Artikel, damit es richtig kalkuliert wird.

Ich freue mich sehr über dieses wertvolle Fachwissen, danke
 

Dlamz

Gut bekanntes Mitglied
11. August 2011
117
0
ich muss nochmal fragen .... gibt es irgendwo eine Liste von den Befehlen und wie man was eintragen kann, damit amn zu gewünschten Ergebnis kommt? Welche Programmiersprache ist das?
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.292
402
Dass man meistens keine einheitlichen Margen hat, ist klar, wäre auch zu schön... - Je ein Workflow pro Artikelnummer klingt aber gar nicht gut. Ich würde Dir stattdessen vorschlagen, dass Du wie folgt vorgehst...

1. In Artikel > Eigene Felder erst eine Gruppe Preise und darin ein Eigenes Feld Marge anlegen, Datentyp Fließkommazahl und Ort vielleicht Allgemein, damit Du es gleich auf der ersten Seite (=Erster Tab) in den Artikeldetails hast.
2. Dort pflegst Du Deine Margen und das gute ist, Du kannst die Margenwerte auch über die Ameise im- und exportieren. Das ist schon mal viel wert.
3. Meine Workflow-Zeile von oben wie folgt ändern...
Code:
{% assign marge = 1.0 | Minus: Vorgang.Artikel.EigeneFelder.Preise.Marge %}
{% if marge <> 0 %}
   {{ Vorgang.Artikel.Allgemein.PreiseEinheiten.Ø_Einkaufspreis-Netto | DividedBy: marge }}
{% else %}
    {{ Vorgang.Artikel.Allgemein.PreiseEinheiten.VK-Netto }}
{% endif %}
4. Damit greift die Funktion auf Deine als Eigenes Feld angelegte Marge zu, subtrahiert sie von 1, um dann damit den neuen VK-Netto zu berechnen. Und das If() Konstrukt ist dafür gedacht, falls Du einmal aus Versehen eine Marge von 1.0 eingibst, was nicht definiert ist und eine Division durch 0 ergibt, denn dann wird stattdessen der ehemalige VK-Netto zurückgeliefert und weiterverwendet.

Und wenn Du den neuen VK-Netto zum Beispiel für Deutschland mit zwei Nachkommastellen und mit Dezimalkomma geliefert bekommen willst, dann erweiterst Du das Ganze einfach so...
Code:
{% assign marge = 1.0 | Minus: Vorgang.Artikel.EigeneFelder.Preise.Marge %}
{% if marge <> 0 %}
    {% assign vknetto = Vorgang.Artikel.Allgemein.PreiseEinheiten.Ø_Einkaufspreis-Netto | DividedBy: marge %}
    {{ vknetto | FormatNumber: 'N2', 'de-DE' }}
{% else %}
    {{ Vorgang.Artikel.Allgemein.PreiseEinheiten.VK-Netto }}
{% endif %}

Stücklisten: Ich habe dann noch probiert, ob ich bei einem Wareneingang für einen Stücklistenartikel andere Margen einsetzen kann (falls das überhaupt Sinn macht...), aber das funktioniert nicht, denn Stücklistenartikel werden beim Wareneingang in ihre Komponenten zerlegt und jede Komponente wird einzeln, also als eigener Artikel vereinnahmt. Damit liefert aber jede Postition des Stücklistenartikels in der Variable Vorgang.Artikel.Sonstiges.IstStückliste den Wert False zurück und damit wird klar, dass Stücklisten beim Wareneingang zwar angegeben werden können, man sie per DotLiquid aber nicht als Stücklisten erkennt.

DotLiquid Infos und Vorgehen beim Lernen

Ich bin selbst auch noch lange nicht sattelfest mit DotLiquid und stolpere auch noch eher in der Gegend rum. Ob es z.B. im letzten Beispiel oben eine Möglichkeit gibt, den Wert zu dividieren und gleichzeitig zu runden, man also die Filter (DivideBy, FormatNumber) irgendwie schachteln kann, ist mir noch nicht klar. Im Web habe ich nichts dazu gefunden und für reines Trial & Error ist das Leben zu kurz. Es kann also sein, dass das oben viel einfacher geht, es geht aber eben auch so...

Es gibt aber schon einiges an Dokumentation zu Liquid und DotLiquid im Netz, auch von JTL, aber insgesamt bleibt noch genügend Raum für Fehler und frustriertes Rumprobieren. Mir selbst hilft dabei immer, die Terme, die ich haben will, ganz auf "Anfang" zurückzuschrauben. Will ich also wie oben beim "assign" eine JTL Variable von 1 abziehen, dann funktioniert das garantiert erst einmal NICHT, also schaue ich mit normalen Zahlen, wo die Fallstricke liegen. Die zugrundeliegende Sprache Liquid z.B. subtrahiert mit "minus", DotLiquid mit "Minus" und ignoriert "minus" einfach. Das kann dich schon mal 'ne Stunde kosten und die Dinge einfach halten hilft hier immens, weil dann weniger mögliche Fehlerursachen existieren.

JTL Guide Seiten
https://guide.jtl-software.de/Kategorie:JTL-Wawi:Vorlagen und dort Reiter "DotLiquid"
https://guide.jtl-software.de/DotLiquid_für_JTL-Anwender
Was zum Lernen direkt in der Wawi exzellent ist, sind die Exportvorlagen im Bereich "Admin > Druck/Email/Exportvorlagen". Dort gibt es für viele der Vorlagentypen auch vorbereitete Exportvorlagen und die sind randvoll mit praktischen Beispielen für alles, was DotLiquid ausmacht. Der Editor in der JTL Wawi hat außerdem auch eine Intellisense Hilfe, die Dir Infos zu den Eigenschaften und Methoden der Objekte, die Du gerade in den Fingern hast, anzeigt.
>>> Nur niemals im JTL Editor ESC drücken, dann biste Deine Arbeit los (zumindest bis 1.2.1.0) ... :eek:

Shopify Liquid
Die Sprache Liquid stammt von Shopify und hier findest Du auch komplette Referenzen auf die Sprache, ihre Struktur und ihren Umfang in sehr schön gestalteter und leicht verständlicher Form: https://shopify.github.io/liquid/. Diese Seite ist für mich die Referenz zum Kennenlernen der Funktionen und der Logik.

DotLiquid
DotLiquid (http://dotliquidmarkup.org/) ist eine Portierung von Liquid nach C# und das Ziel ist, eine komplette und voll kompatible .NET Implementierung von Shopify Liquid zu sein. Deshalb verweist DotLiquid für Sprachinformationen auch auf die Shopify Seiten, es gibt aber Abweichungen vom Liquid-Sprachstandard, siehe hier...https://github.com/dotliquid/dotliquid/wiki/DotLiquid-for-Designers. Falls etwas partout nicht funktionieren will, einmal hier schauen, ob es Gründe gibt.

Eine weitere gute Referenz zum Lernen mit vielen praktischen Beispielen findest Du hier: http://dyn365apps.com/2017/01/29/qu...ne-reference-manual-for-dynamics-365-portals/
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Manuel Pietzsch

Dlamz

Gut bekanntes Mitglied
11. August 2011
117
0
Das ist eine Hausnummer, die Zeit braucht um es zu kapieren.

Stücklisten: Bei mir ist es im Moment so gelößt.
Ich bekomme ja die einzelnen Komponenten geliefert und der EK ist hinterlegt. Der Vaterartikel greift auf die EK der einzelnen Komponenten zu und rechnet diese zusammen im EK Feld des Vaters. Daraunter findet sich auch ein ama_drop Artikel ohne Bestandführung mit 1,60 Euro (als die Pick&Pack Gebühr von amazon. In diesem Set ist ein geringerer Faktor definiert als bei den einzelnen Komponenten.

Vielleicht übernimmt das System die Daten aus den EK`s der einzelnen Produkte und multiplziert diese mit, dem beim Vater hinterlegten neuen Feld "Marge"
 
Ähnliche Themen
Titel Forum Antworten Datum
Variationsartikel – Artikelbeschreibung vom Vater automatisch in Kinder übernehmen? JTL-Wawi 1.10 1
Neu Workflow: Musterbestellungen (0 € Gesamtbruttowert) automatisch ausliefern lassen User helfen Usern - Fragen zu JTL-Wawi 0
Zahlungseingang XML File automatisch abgleichen JTL-Wawi 1.10 0
Artikel im Auftrag nicht verschiebbar. Freiposition automatisch gesetzt in jedem Auftrag als 1. Position. JTL-Wawi 1.10 1
Klarna - Zahlung wird in JTL nicht automatisch gesetzt / "zu erfassen" im Klarna-Dashboard JTL-Wawi 1.10 3
Neu Workflow automatisch alle 2 Stunden ausführen – Prüfung auf voraussichtliches Lieferdatum User helfen Usern - Fragen zu JTL-Wawi 11
In Diskussion Workflow „Rechnung drucken“ wird nicht automatisch ausgeführt JTL-Workflows - Fehler und Bugs 7
Neu Händlerbund Plugin: "Zahlung und Versand" wird nicht automatisch übernommen Plugins für JTL-Shop 2
Neu Tatsächliche Lieferzeit automatisch berechnen User helfen Usern - Fragen zu JTL-Wawi 0
JTL WaWi 2 Mandanten - B2B und B2C Artikel und Bestände automatisch abgleichen JTL-Wawi 1.6 3
Neu Artikel automatisch einstellen - wie aktiviere ich dieses Feld? JTL-Wawi - Fehler und Bugs 4
Neu Auftragspriorität automatisch zuordnen nach voraussichtlichem Lieferdatum User helfen Usern - Fragen zu JTL-Wawi 1
Neu Video auf Mobilgeräten startet automatisch im Vollbildmodus anstatt nur wie eingebettet auf der Website Allgemeine Fragen zu JTL-Shop 0
Neu JTL Pos Bonnummer nicht fortlaufend nach Anpassung des Bon-Nummernkreises JTL-POS - Fehler und Bugs 0
Feld "Beschreibung des Zustands" finden kaufland.de - Anbindung (SCX) 0
Vater soll nicht den Preis des günstigsten Kindes übernehmen JTL-Wawi 1.10 0
Bestellvorschlag ohne Berücksichtigung des aktuellen Bestands nicht möglich? JTL-Wawi 1.9 6
Neu Änderung des Layouts der Kategorieboxen im Nova Template Templates für JTL-Shop 1
Neu Aufträge exportieren mit Angabe des Lieferanten JTL-Ameise - Ideen, Lob und Kritik 1
Kunde haut mir die E-Rechnung um die Ohren. Länge des BT-131 sollte 2 Nachkommastellen haben JTL-Wawi 1.9 6
Neu Ständig wiederkehrender Fehler beim Ableich des Lister 2.0 Amazon-Lister - Fehler und Bugs 5
Neu Ausschalten des Menü Servicedesk und des Buttons in der WaWi User helfen Usern - Fragen zu JTL-Wawi 1
Neu Ändern des Dokumententitels oder andere Wege der Datenübergabe in das Dokument hinein für Artikeletiketten. Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu SEO-Weiterleitung im Backend auf Startseite des Shops Umstieg auf JTL-Shop 2
Neu Offizielle Vorstellung des CSS Formular- und Retouren-Manager Plugins für JTL-Shop 0
Artikelübersicht - in Aufträgen - "Firma" fehlt weiterhin - nur der Name des Ansprechpartners wird angezeigt JTL-Wawi 1.10 4
Neu neue Sendungsnummer (DHL) wird nach Storno des 1. Label nicht an Amazon übergeben JTL-ShippingLabels - Fehler und Bugs 11

Ähnliche Themen