Inaktiv Druckvorlage Preisliste mit Sonderpreis

  • Hotfix veröffentlicht! Mit Update auf 1.5.41.0 war ein Connector-Abgleich nicht immer möglich. Hierfür wurde soeben die Hotfixversion 1.5.41.3 veröffentlicht. Für weitere Informationen: https://forum.jtl-software.de/threads/abgleich-mit-dem-jtl-connector-nach-update-auf-1-5-41-0-nicht-mehr-moeglich.153070/

RainerR

Aktives Mitglied
10. September 2016
44
2
Hallo,
ich versuche eine Druckvorlage "Preisliste" mit der Spalte Sonderpreis zu erstellen.
Leider ohne Erfolg. Ich finde innerhalb der "Daten und Funktionen" keine Variablen für Sonderpreise.
Bei den Artikeletiketten geht das. Bei einer Preisliste nicht.
Was mache ich falsch - wer kenn helfen?
Vielen Dank im Voraus.
MfG
Rainer
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.275
363
Du machst gar nichts falsch, die Variable gibt es schlicht nicht. - Man kann sich die Daten aber mit einer JTL_DirectQuery() direkt aus der Datenbank holen und - letztlich - schwer ist das nicht.
Ich bin die nächsten drei Tage geschäftlich unterwegs und kann für nichts garantieren, aber spätestens Mittwoch kann ich Dir hier helfen, sorry früher geht leider nicht....
 

gutberle

Sehr aktives Mitglied
29. März 2011
1.275
363
Hallo Rainer,

ok, "Hilfe bis Mittwoch" war dann doch zu ehrgeizig, aber jetzt bin ich endlich dazu gekommen und hier ist meine Anleitung zum Einfügen von Sonderpreisen in die Preisliste ...

Wie oben schon gesagt, werden Sonderpreise leider nicht mit an die Preislisten-Vorlage übergeben, man muß sie sich also selbst aus der Datenbank holen. Das macht man mit einem JTL_DirectQuery() Befehl, dem man ein SQL Statement mit auf den Weg gibt und man bekommt dann den gewünschten Wert zurück. Diesen Rückgabewert kann man dann wie einen normalen Text, Zahlen- oder Währungswert weiterverarbeiten, z.B. auch so formatieren, wie es sich für Deutschland gehört. Das habe ich hier gleich noch mit erledigt und der gesamte Befehle sieht dann so aus...
Code:
LocCurrL$(Val(JTL_DirectQuery("SELECT fNettoPreis FROM tSonderpreise JOIN tArtikelSonderpreis ON tArtikelSonderpreis.kArtikelSonderpreis=tSonderpreise.kArtikelSonderpreis JOIN tKundenGruppe ON tKundenGruppe.kKundenGruppe=tSonderpreise.kKundenGruppe WHERE tArtikelSonderpreis.nAktiv=1 AND tKundenGruppe.cName='"+Vorgang.Kundengruppendetails.Name+"' AND tArtikelSonderpreis.kArtikel="+ToString$(Preislistenartikel.InterneArtikelnummer))),"de-DE")
... und wenn Du Dir den Befehl einmal genau anschaust, dann siehst Du, dass an zwei Stellen "Unterbrechungen" im SQL Code sind, nämlich dort, wo die aktuelle Kundengruppe über Vorgang.Kundengruppendetails.Name und später dann die aktuelle (interne) Artikelnummer mit Preislistenartikel.InterneArtikelnummer übergeben werden. Das sind also sozusagen die Variablen, die für jeden Artikel neu bestimmt und mit übergeben werden.

Damit jetzt aber nicht so ein Trum von Befehl in Deiner Tabelle steht, habe ich noch einen Trick angewandt und habe im Bereich Projekt (oben im Fenster) eine Benutzervariable namens @SonderPreis angelegt und habe den obenstehenden Code dort als Inhalt von @SonderPreis abgelegt. Das sieht dann so aus...

JTLWawi_PreislisteSonderpreise_BenutzerVariable.png

Das führt dazu, dass jedesmal, wenn Du in Deiner Tabelle in einer Spalte den Wert @SonderPreis eingibst, die Benutzervariable neu aus der Datenbank geladen und Dir der Sonderpreis des aktuellen Artikels zurückgegeben wird, oder eben 0,00€, falls kein Sonderpreis existiert oder einer existierte, aber schon wieder inaktiv ist. Das sieht dann in der Tabelle mit Deinen Artikelpositionen so aus...

JTLWawi_PreislisteSonderpreise_PreislistenZeile.png

Ich habe hierfür einfach eine Preislistenvorlage im "Standard" Format genommen und den Barcode rausgeschmissen, damit es von der Tabellenbreite her passt. Das musst Du natürlich an Deine Anforderungen anpassen, aber als Referenz habe ich Dir meine Beispielvorlage unten auch einmal angehängt.

Zwei Hinweise noch:

1. Es gibt in den Preislistenvorlagen zwar auch eine Variable Vorgang.Kundengruppe, die wird aber beim Aufruf der Vorlage nicht mit der aktuellen Kundengruppe versorgt, man muß also tatsächlich Vorgang.Kundengruppendetails.Name nehmen.
2. Keine der Kundengruppen-Variablen werden beim Aufruf der Vorlage zum Editieren mit Werten versorgt! - Die Abfrage auf Sonderpreise läuft im Editier-Modus also immer auf die Rückgabe von 0,00€ hinaus. Zum tatsächlichen Testen der Vorlage muß man also über Verkauf > Preisliste in der Wawi gehen, Kundengruppe und ggfls. Sprache auswählen, usw.

Gruß,
Ingmar
 

Anhänge

Zuletzt bearbeitet:

gutberle

Sehr aktives Mitglied
29. März 2011
1.275
363
... und hier noch ein Nachtrag und eine kleine (Sicherheits-)Korrektur zu oben:

1. Wenn Du Sonderpreise für einen Artikel sowohl für die Wawi wie auch für den Shop definiert hast, dann funktioniert die obige Abfrage und auch die Vorlage weiter genauso gut, obwohl dann zwei Tabellenzeilen zurückgegeben werden. Das ist aber nur deshalb so, weil die JTL_DirectQuery() die zweite Tabellenzeile einfach ignoriert. Das ist aber natürlich schlechter Stil (von mir) und die korrigierte SQL Query holt jetzt explizit nur den Sonderpreis für die Wawi aus der Datenbank...
Code:
LocCurrL$(Val(JTL_DirectQuery("SELECT fNettoPreis FROM tSonderpreise JOIN tArtikelSonderpreis ON tArtikelSonderpreis.kArtikelSonderpreis=tSonderpreise.kArtikelSonderpreis JOIN tKundenGruppe ON tKundenGruppe.kKundenGruppe=tSonderpreise.kKundenGruppe WHERE tArtikelSonderpreis.nAktiv=1 AND tSonderpreise.kShop=0  AND tKundenGruppe.cName='"+Vorgang.Kundengruppendetails.Name+"' AND tArtikelSonderpreis.kArtikel="+ToString$(Preislistenartikel.InterneArtikelnummer))),"de-DE")
2. Falls Du über den aktuellen Sonderpreis hinaus auch noch ausgeben möchtest bis wann oder bis zu welchem Lagerstand der Sonderpreis gilt, dann kriegst Du auch diese Infos auch nur aus der Datenbank. Da dieser Wunsch für eine Preisliste aber eigentlich eher normal sein sollte, habe ich eine etwas komplexere SQL Query geschrieben, die alle relevanten Daten zum Sonderpreis und auch den Sonderpreis selbst in einer handlichen Form zurückgibt.
Code:
JTL_DirectTableQuery("SELECT 'istDatum=', CASE WHEN nIstDatum=0 THEN 'FALSE' ELSE 'TRUE' END, '|StartDatum=', CONVERT(VarChar(10), dStart, 104) AS StartDate, '|EndDatum=', CONVERT(VarChar(10), ISNULL(dEnde,dStart), 104), '|istAnzahl=', CASE WHEN nIstAnzahl=0 THEN 'FALSE' ELSE 'TRUE' END, '|EndAnzahl=', nAnzahl, '|SonderPreis=', tSonderpreise.fNettoPreis FROM tArtikelSonderpreis JOIN tSonderpreise ON tSonderpreise.kArtikelSonderpreis=tArtikelSonderpreis.kArtikelSonderpreis JOIN tKundenGruppe ON tKundenGruppe.kKundenGruppe=tSonderpreise.kKundenGruppe WHERE tArtikelSonderpreis.nAktiv=1 AND tSonderpreise.kShop=0 AND tKundenGruppe.cName='"+Vorgang.Kundengruppendetails.Name+"' AND tArtikelSonderpreis.kArtikel="+ToString$(Preislistenartikel.InterneArtikelnummer),"","|")
Die Informationen werden hier in dem Format zurückgeliefert, das der Alias$() Befehl erwartet, mit dem man die einzelnen Bestandteile bequem abfragen kann. Will man z.B. das Startdatum abfragen, dann würde der Alias-Befehl dazu lauten...
Alias$("StartDatum",@SonderPreis) und um zu erkennen, ob der Sonderpreis überhaupt datumsgesteuert ist, könnte man folgendes Konstrukt nehmen: Cond(Alias$("istDatum",@SonderPreis)="TRUE",Alias$("StartDatum",@SonderPreis,"")

Und da der Sonderpreis jetzt nicht mehr in der DB-Abfrage selbst formatiert werden kann, macht man das in der Tabelle mit LocCurrL$(Val(Alias$("SonderPreis",@SonderPreis)),"de-DE") und erst dort, wo man ihn ausgeben will.

Angehängt findest Du eine neue Vorlage, die dies umsetzt und gleich noch ein paar Zeilen Debug-Code enthält, der Dir zeigt, wie die Alias$() Befehle für die unterschiedlichen Sonderpreis-Parameter lauten.
 

Anhänge

tschwenke

Aktives Mitglied
27. April 2012
49
3
Hallöchen,

auch wenns schon her ist, hab das grad bei uns, etwas abgewandelt, eingebaut.
Was soll ich sagen, einfach Top.

Besten Dank für deine Codesnippets.

Thorsten
 

hii

Gut bekanntes Mitglied
6. Januar 2009
105
7
NRW
Hallo zusammen,

auch mir haben die Codesnippets sehr geholfen, vielen Dank für's teilen!

Jedoch versuche ich verzweifelt den Brutto Sonderpreis auszugeben. Gerne auch in Form einer Berechnung.
Weiß hier jemand wie ich das hinbekommen kann?
 
Zuletzt bearbeitet:

hii

Gut bekanntes Mitglied
6. Januar 2009
105
7
NRW
Habe mir nun nach einigen Experimenten wie folgt geholfen...

Die @SonderPreis habe ich wie folgt angepasst:
Code:
LocCurr$(Val(JTL_DirectQuery("SELECT fNettoPreis FROM tSonderpreise JOIN tArtikelSonderpreis ON tArtikelSonderpreis.kArtikelSonderpreis=tSonderpreise.kArtikelSonderpreis JOIN tKundenGruppe ON tKundenGruppe.kKundenGruppe=tSonderpreise.kKundenGruppe WHERE tArtikelSonderpreis.nAktiv=1 AND tSonderpreise.kShop=0  AND tKundenGruppe.cName='"+Vorgang.Kundengruppendetails.Name+"' AND tArtikelSonderpreis.kArtikel="+ToString$(Preislistenartikel.InterneArtikelnummer))),"de-DE")
Somit bekomme ich eine Zeichenkette die nur aus Zahlen besteht.

Dann platziere ich die Variable in meine Tabelle und Wandel ich per "Val" die Zeichenkette zu einer Zahl und kann somit "weiterrechnen":
Code:
Fstr$((Val (@SonderPreis)*1,19),"-?&.##")
Bei Bedarf kann die Währung angehangen werden:
Code:
Fstr$((Val (@SonderPreis)*1,19),"-?&.##") + " " + Vorgabe.Standardwährung.Name
Sicherlich gibt es elegantere Weg, aber für mich funktioniert dieser.

Viele Grüße
 

Irina

Aktives Mitglied
12. Januar 2016
13
0
Braunschweig
Hallo ich bin ein Anfänger.

ich suche zwei Variablen :

Kundengruppe online shop -> Preis Normal - den ich auf dem Etikett durchstreichen möchte
Kundengruppe online shop -> Sonderpreis - groß als Angebot

Sind diese code für mein Weg richtig? Woran erkenne ich das es die Variable der Kundengruppe?

Danke!
 
Ähnliche Themen Forum Antworten Erstelldatum des Themas
Neu Variable "Anmerkung" fehlt in Druckvorlage Angebot 2.0 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Eigene Artikel Felder in Druckvorlage einbinden funktioniert nicht Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 6
Gelöst Druckvorlage Html-code wird angezeigt User helfen Usern - Fragen zu JTL-Wawi 3
Neu Druckvorlage aus Angebotstext Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Wie kann ich die verwendete Druckvorlage wechseln Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 4
Neu Druckvorlage bearbeiten, laden deuert ewig Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Auswahl der Druckvorlage anhand von Farben oder Attributen möglich? Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Probleme bei der Erstellung der Druckvorlage User helfen Usern - Fragen zu JTL-Wawi 0
Beantwortet Preisliste über Workflow erstellen JTL-Workflows - Ideen, Lob und Kritik 1
Neu Preisliste kann nicht gedruckt werden Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 3
Neu Hauptkategorie mit Funktionsattribut "main_category_id" steuern PrestaShop-Connector 1
Neu Konfigurator mit mehrere Möglichkeiten Allgemeine Fragen zu JTL-Shop 0
Neu Frankaturen möglich mit DPD? JTL-ShippingLabels - Fehler und Bugs 0
Neu Was stimmt mit der Exportdatei nicht? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Rundungsfehler bei Teillieferungen von Stücklisten erzeugt Leichen mit Status Teilgeliefert JTL-Wawi - Fehler und Bugs 0
Neu JTL Shop5 mit Standart Template Nova Bildergröße für Banner und Slider ändern Allgemeine Fragen zu JTL-Shop 0
Neu Vaterartikeln mit Stücklisten verschwunden!! User helfen Usern - Fragen zu JTL-Wawi 2
Gelöst Tagesabschluss mit steuern je zahlungsart Gelöste Themen in diesem Bereich 1
Neu *Probleme mit Shopware-Connector nach Update auf 1.5.42.0 und großem Abgleich* Shopware-Connector 1
Neu SQL Server Performance verbessern: Hohe Performance mit dem DB KonfigTool (Video) Umfragen rund um JTL 8
Neu Jtl repricer preiskalkulation mit mindest und max preis JTL-Repricer für JTL-Wawi und Web 0
Gelöst POS mit SumUp 3G terminal über bluetooth verbinden Gelöste Themen in diesem Bereich 6
Neu Problem: Wie die Versandarten aus dem JTL Shop mit den WaWi Versandarten verknüpfen? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Seriennummern nachträglich für Artikel mit Bestand User helfen Usern - Fragen zu JTL-Wawi 8
seit dem Update Preise mit 16% Umsatzsteuer im Shop Upgrade JTL-Shop4 auf JTL-Shop5 0
Neu LS-POS 2.0 - wie mit efsta weiter / Lizenz ? Fragen rund um LS-POS 18
Neu Zahlungsabgleich mit CSV Datei nicht möglich - Feld beim einlesen leer Arbeitsabläufe in JTL-Wawi 0
Neu JTL Shop 5 PayPal Express mit aktiviertem Cache JTL-Shop - Fehler und Bugs 0
Neu Fehlermeldung bei Neuinstallation Shop 5 mit Testshop auf eigenem Server Installation / Updates von JTL-Shop 0
Neu Variationskombinationen mit Konfigurationsgruppen Allgemeine Fragen zu JTL-Shop 5
Neu Wie macht Ihr das, Barzahlung mit POS, Kunde möchte aber noch eine Rechnung? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Abgleich mit Dropshipping-Lieferanten Schnittstellen Import / Export 3
Neu JTL Connector 3.5.0 mit Modified 2.0.5 und JTL version 1.5.40.0 Onlineshop-Anbindung 0
Neu Retoure mit falsch geliefertem Artikel Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Gelöst SUNMI T2 Terminal mit Jtl Pos Kassenapp ... Drucker nicht auffindbar JTL-POS - Fehler und Bugs 2
Neu Amazon Lister Kitchentools Variantenartikel mit Menge Amazon-Lister - Ideen, Lob und Kritik 0
Neu Fehler beim hochladen mit der Ameise JTL-Ameise - Fehler und Bugs 10
Neu GLS Nachnahme mehrere Pakete werden dem Kunden mit dem vollen Betrag berechnet JTL-ShippingLabels - Fehler und Bugs 3
Neu Bestellpositionen und Anzahl zusammen mit den Versanddaten exportierten Schnittstellen Import / Export 0
In Bearbeitung Epson TM m30 per USB mit Tablet verbinden Einrichtung / Updates von JTL-POS 1
Neu Auftragsexport XML --> HAN zu SKU mit ausgeben --> keine passende Variable Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Seite mit frei erstelltem Inhalt - Bilder & Verlinkungen Allgemeine Fragen zu JTL-Shop 3
Neu Lieferschein speichern mit Lagernamen Arbeitsabläufe in JTL-Wawi 0
Issue angelegt Eigenes Feld Datentyp Datum mit Ameise wieder leer setzen? JTL-Ameise - Fehler und Bugs 2
Neu JTL Shop 4 - Versandart Abholung nur Barzahlung -> Kunde kann trotzdem mit PayPal zahlen JTL-Shop - Fehler und Bugs 2
Gelöst Seit Update der Android App auf V 1.0.4.3 keine Kartenzahlung mit Zettle by Paypal möglich JTL-POS - Fehler und Bugs 3
Gelöst Abgleich mit dem JTL-Connector nach Update auf 1.5.42.0 nicht mehr möglich JTL-Wawi - Fehler und Bugs 6
Neu Zwei separate Onlineshops mit Multishoplizenz und einer Wawi nutzen Onlineshop-Anbindung 1
Neu Synchronisation mit Webshop nicht möglich JTL Wawi 0.9.8 WooCommerce-Connector 0
Neu Erfahrungen mit Nahrungsergänzungsmitteln? Smalltalk 2
Ähnliche Themen