In Bearbeitung JTL-POS Artikelpreis für Etikettenvorlage

Specker

Sehr aktives Mitglied
30. März 2015
520
51
Hallo
Ich will von der Variable "Artikel.bruttoverkaufspreis" auf die Variable wechseln, die den Artikelpreis von meiner JTL POS Kasse ausgibt.
Kenne leider den Variablenname nicht.
Der Ladenpreis unterscheidet sich nämlich bei einigen Artikeln vom globalen Preis in der Wawi.

Wäre super, wenn ihr mir da mal kurz weiterhelfen könntet. 😉

Gruß - Ben
 

Specker

Sehr aktives Mitglied
30. März 2015
520
51
Falls ich mich unverständlich ausgedrückt haben sollte:
Ich will auf die Variable wechseln, die den Artikelpreis ausgibt, der in der Wawi unter „Artikel“ -> „Preise“ -> „Meine JTL-Pos Kasse“ angegeben wird.
 

Specker

Sehr aktives Mitglied
30. März 2015
520
51
*push

Soll ich ein Ticket aufmachen dafür?
Wo sind denn hier die dotliquid Profis? 😉
 

John

Sehr aktives Mitglied
3. März 2012
4.215
1.088
Berlin
Ohne Test, aber sollte gehen. Leg Dir einen Dummykunden ohne Rabatte an.

Geht dann +ber die Funktion JTL_GetNetPrice ().
In der Funktion mußt Du die interene Kundennummer deines Dummykunden übergeben sowie die ShopID Deiner Kasse.

Das Ergebnis ist ein Nettopreis, der noch mit der USt zum Brtto berechnet werdne muß
 

Specker

Sehr aktives Mitglied
30. März 2015
520
51
John, danke für deine Antwort!
Wie bekomme ich denn die ShopID heraus?

Die cumstomerID ist die Zahl, die bei „Kunden“ unter „interner Schlüssel“ angegeben wird, oder?
Für die ShopID habe ich sowas leider nicht gefunden.

Aktuell ist in der Vorlage die Variable angegeben:
Fstr$(Artikel.Bruttoverkaufspreis,"?%.##")

Wie sähe denn dann das Resultat aus, wenn angenommen die customerID 4403 ist und die ShopID 9?
Fstr$(JTL_GetNetPrice ("ProductInternalId:?;CustomerInternalId:4401;ShopId:9"),"?%.##")

So in etwa?
Was es mit ProductInternalId auf sich hat, erschließt sich mir jetzt gerade auch noch nicht. Ist scheinbar Vorraussetzung für GetNetPrice.

Gruß - Ben
 
Zuletzt bearbeitet:

JohnFrea

Sehr aktives Mitglied
21. September 2017
975
305
ProductInternalId ist die interne ID deiner Artikels. Die bekommst Du als Variable über Artikel.InterneArtikelnummer. Dann muß noch die Menge für die Du den Preis haben möchtest übergeben werden. In deinem Fall kostant 1
Wei Du die ShopID ausser in der SQL Tabelle nach schauen heraus bekommen kannst, weiß ich leider nicht.
 

Specker

Sehr aktives Mitglied
30. März 2015
520
51
Dann muß noch die Menge für die Du den Preis haben möchtest übergeben werden. In deinem Fall kostant 1
Ist für GetNetPrice nicht nötig.

Also der Artikel 5012 hat in meinem Fall jetzt z.b. eine ProductInternalId von "7982".
Wenn ich für die Vorlage jetzt eingebe:
JTL_GetNetPrice ("ProductInternalId:7982;CustomerInternalId:4401;ShopId:9")
dann gibt er mir zwar den Preis aus, jedoch in Netto, ich brauche allerdings den Bruttopreis.

Außerdem kann ich "ProductInternalId:7982" ja schlecht so stehenlassen, dann stünde ja auf jedem Etikett der gleiche Wert.
Wie kann ich das mit Artikel.InterneArtikelnummer ersetzen?
("ProductInternalId:"Artikel.InterneArtikelnummer";CustomerInternalId:4401;ShopId:9") funktioniert nicht. 😀

An welcher Stelle lese ich denn die SQL Tabelle aus, um an den Wert zu kommen?
SQL Management Studio ist installiert bei mir.
 

JohnFrea

Sehr aktives Mitglied
21. September 2017
975
305
Die ShopID bekommst Du in der Tabelle dbo.TShop in der Spalte kShop

Artikel.InterneArtikelnummer muß in einen String gewandelt und dann in die Funktion eingebaut werden.

Code:
JTL_GetNetPrice ("ProductInternalId:" + Str$(Artikel.InterneArtikelnummer) +";CustomerInternalId:4401;ShopId:9")
 

Manuel Pietzsch

JTL-Wawi
Mitarbeiter
2. Januar 2012
2.895
1.074
Hückelhoven
Hi Freunde,

ich kläre hier mal kurz auf. Die Funktion JTL_GetNetPrice liefert immer einen Preis für die angegebene Konstellation zurück. Kunde, Kundengruppe, Shop und Anzahl können durchaus mit 0 übergeben werden wenn sie nicht bekannt sind.

Gruß

Manuel
 

John

Sehr aktives Mitglied
3. März 2012
4.215
1.088
Berlin
@Manuel Pietzsch eine Null als Parameter macht ja für hier nur begrenzt Sinn, weil es ja gerade darum geht, den Preis für einen bestimmten Shop (hier JTL-POS Kasse) zu bekommen.

Was soll denn dann mit 0 übergeben werden? CustomerInternalId und Menge?
 

Manuel Pietzsch

JTL-Wawi
Mitarbeiter
2. Januar 2012
2.895
1.074
Hückelhoven
Hi,

den Bruttopreis zu ziehen ist tatsächlich nicht so leicht. Für den Fall hier würde ich per Directquery arbeiten um auf den Brutto zu kommen. Altennativ muss man hier fix mit 16% multiplizieren, das muss man aber dann bei Änderung der MwSt wieder auf dem Schirm haben.

Hier hole ich den Bruttopreis eines Artikel per SQL:
  • Kundengruppe ist 1 (bei mir Endkunden)
  • Shop ist bei mir 4 (müsste dann von der gewünschten Kasse genommen werden)
  • Artikel referenziere ich über das WHERE da ich tArtikel eh für die Steuerklasse benötige
SQL:
DECLARE @kKundengruppe AS INT = 1;
DECLARE @kShop AS INT = 4;

SELECT ROUND(Preis.dNettoPreis * (1.0 - Preis.dRabatt / 100.0) * (1 + (tSteuercache.fSteuersatz / 100.0)), 2),
    Preis.dRabatt
FROM dbo.tArtikel
JOIN dbo.tSteuercache ON tArtikel.kSteuerklasse = tSteuercache.kSteuerklasse 
    AND tSteuercache.kFirma = 0
    AND tSteuercache.kSteuerzone = 1
CROSS APPLY dbo.ifGetNetPrice(tArtikel.kArtikel, 0, @kKundengruppe, @kShop, 0) AS Preis
WHERE tArtikel.cArtNr = 'AR20160460'

Im Formular würde es dann so aussehen:

Code:
Fstr$(JTL_DirectQuery ("DECLARE @kKundengruppe AS INT = 1;
DECLARE @kShop AS INT = 4;

SELECT ROUND(Preis.dNettoPreis * (1.0 - Preis.dRabatt / 100.0) * (1 + (tSteuercache.fSteuersatz / 100.0)), 2),
    Preis.dRabatt
FROM dbo.tArtikel
JOIN dbo.tSteuercache ON tArtikel.kSteuerklasse = tSteuercache.kSteuerklasse    
    AND tSteuercache.kFirma = 0
    AND tSteuercache.kSteuerzone = 1
CROSS APPLY dbo.ifGetNetPrice(tArtikel.kArtikel, 0, @kKundengruppe, @kShop, 0) AS Preis
WHERE tArtikel.cArtNr = '"+ Artikel.Artikelnummer + "'"),"?,?,?.## $")

1602771179201.png

Ich hoffe das hilft weiter.

Gruß

Manuel
 
  • Gefällt mir
Reaktionen: Specker

Specker

Sehr aktives Mitglied
30. März 2015
520
51
@ Manuel

Vielen lieben Dank, mit deinem Code klappt es perfekt. 🙂
Ich hätte ja nicht gedacht, dass es am Ende doch so aufwenig wird. Bin einfach davon ausgegangen, dass es was Vorgefertigtes für diesen Anwendungsfall gibt.
Mich wundert es auch um ehrlich zu sein etwas, dass noch keiner im Forum danach gefragt hat.
Immerhin ist ja nicht unüblich, dass sich die Preise in den verschiedenen Shops unterscheiden. Gerade im Bezug online/offline Geschäfte.

Naja, dein Code dürfte in Zukunft noch so weiteren Usern hier eine Hilfe sein, daher nochmal ein fettes Dankeschön! 😉

Gruß - Ben
 
  • Gefällt mir
Reaktionen: Manuel Pietzsch

Manuel Pietzsch

JTL-Wawi
Mitarbeiter
2. Januar 2012
2.895
1.074
Hückelhoven
@ Manuel

Vielen lieben Dank, mit deinem Code klappt es perfekt. 🙂
Ich hätte ja nicht gedacht, dass es am Ende doch so aufwenig wird. Bin einfach davon ausgegangen, dass es was Vorgefertigtes für diesen Anwendungsfall gibt.
Mich wundert es auch um ehrlich zu sein etwas, dass noch keiner im Forum danach gefragt hat.
Immerhin ist ja nicht unüblich, dass sich die Preise in den verschiedenen Shops unterscheiden. Gerade im Bezug online/offline Geschäfte.

Naja, dein Code dürfte in Zukunft noch so weiteren Usern hier eine Hilfe sein, daher nochmal ein fettes Dankeschön! 😉

Gruß - Ben


Hab mir schon notiert, dass wir hier besser werden müssen. Hauptsache du kommst erstmal klar
 

express24

Aktives Mitglied
29. März 2018
27
7
@Manuel Pietzsch hat sich diese Sache in der 1.7.x verbessert?

Ich benötige für JTL Pos ein Artikeletikett, dass auch den Preis des Reiters JTL POS anzeigt (Code oberhalb funktioniert) aber ich benötige noch den dazu passenden Grundpreis, da ja auch grundpreispflichtige Artikel oft vorhanden sind. Könntest Du hier bitte einen Code posten? Danke und Grüße, Thorsten
 
  • Gefällt mir
Reaktionen: TREND_Jan

TREND_Jan

Aktives Mitglied
11. Mai 2023
7
3
@Manuel Pietzsch hat sich diese Sache in der 1.7.x verbessert?

Ich benötige für JTL Pos ein Artikeletikett, dass auch den Preis des Reiters JTL POS anzeigt (Code oberhalb funktioniert) aber ich benötige noch den dazu passenden Grundpreis, da ja auch grundpreispflichtige Artikel oft vorhanden sind. Könntest Du hier bitte einen Code posten? Danke und Grüße, Thorsten
Moin Thorsten,
hast du mittlerweile eine Lösung für dieses Problem gefunden?
Ich verzweifel gerade daran.
 

lweber

Lars Weber
Mitarbeiter
13. November 2013
1.271
287
Hallo @mischael134 ,

einaml das Script was oben beschrieben ist versucht? Specker hat geschrieben das es damit bei Ihm geklappt hat.

Grüße
 

Ähnliche Themen