Offen Skontotext anpassen

T-Bone

Gut bekanntes Mitglied
1. Februar 2011
238
0
Hallo zusammen,

wir drucken aktuell auf unserer Rechnung folgenden Text:
Code:
"÷" + cond(Vorgang.Kunde.Attribute > '0', "" + " 10 Tage "+ (RegExMatch$ (RegExMatch$ (Vorgang.Kunde.Attribute,'Skonto=[0-9]+'),'[0-9]+')) +"% Skonto, ") + Fstr$(Vorgang.Zahlungsziel, "?") + " Tage netto"


und auf der Rechnung folgenden Text für Skonto:


Code:
"÷" + cond(Vorgang.Auftrag.Kunde.Attribute > '0', "" + "bis zum    " + date$(AddDays (Vorgang.Erstelldatum,10) ,'%x') + " abzgl. "+ (RegExMatch$ (RegExMatch$ (Vorgang.Auftrag.Kunde.Attribute,'Skonto=[0-9]+'),'[0-9]+')) +"% Skonto Zahlungsbetrag: (" + Fstr$(((Vorgang.Auftrag.Positionen.BruttopreisGesamt05 + Vorgang.Auftrag.Gutschein)*((100-(val(RegExMatch$ (RegExMatch$ (Vorgang.Auftrag.Kunde.Attribute,'Skonto=[0-9]+'),'[0-9]+'))))/100)),"?&.##") +" " +Vorgang.Auftrag.Währung+ ")." )

Wir legen also im Kunden ein Attribut Skonto mit einer Zahl an, die er sich dann nimmt.
Als Skontozahlungsziel haben wir jetzt 10 Tage.
Es ist jetzt aber so, dass wir gern unterschiedliche Ziele für Skonto haben wollen also auch 14 Tage z.B.
Kann man die Formel so erweitern, dass wir im Kunden ein zweites Attribut anlegen können, was z.B. "Skontoziel" heißt und dort dann auch eine Zahl 14 eintragen, die dann für die Formel genutzt wird.

ICh habe da leider keine Ahnung, da die Formel schon recht komplex ist und freue mich auf eure Hilfe.

Vielen Dank im Voraus.

Manuel
 

wawi-dl

Sehr aktives Mitglied
29. April 2008
6.162
655
AW: Skontotext anpassen

versuche ein weiteres Attribut anzulegen mit Skontoziel

dann "10 Tage" durch zB den Code ersetzen (ungetestet):
Code:
(RegExMatch$ (RegExMatch$ (Vorgang.Auftrag.Kunde.Attribute,'Skontoziel=[0-9]+'),'[0-9]+'))
 

T-Bone

Gut bekanntes Mitglied
1. Februar 2011
238
0
AW: Skontotext anpassen

Vielen Dank ich kann das morgen mal so testen.

Aber für die Rechnung müsste ja die Zahl bei Skontoziel uraufgerechnet werden. Wie müsste ich da vorgehen?
 

wawi-dl

Sehr aktives Mitglied
29. April 2008
6.162
655
AW: Skontotext anpassen

Sofern jemand auch solch eine Lösung sucht, man kann sich für verschiedene Skonto's auch Zahlungsarten anlegen, mit DotLiquid-Befehlen.

Zahlungsart: Rechnung (2% Skonto)
Code:
{{Vorgang.Zahlungsart.Name}}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: Vorgang.Zahlungsziel | Datum: 'd', 'de-DE'}} abzüglich 2% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.98 | DividedBy: 100 | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb {{Vorgang.Zahlungsziel}} Tage abzüglich 2% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.98 | DividedBy: 100 | Nummer: 'F2'}} EUR{% endif %}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: 30 | Datum: 'd', 'de-DE'}} ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% endif %}

Ausgabe:
Code:
Rechnung (2% Skonto)
Zahlbar innerhalb 10 Tage abzüglich 2% Skonto, Rechnungsbetrag = 9,26 EUR
Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = 9,45 EUR

oder

Zahlungsart: Rechnung (3% Skonto)
Code:
{{Vorgang.Zahlungsart.Name}}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: Vorgang.Zahlungsziel | Datum: 'd', 'de-DE'}} abzüglich 3% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.97 | DividedBy: 100 | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb {{Vorgang.Zahlungsziel}} Tage abzüglich 3% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.97 | DividedBy: 100 | Nummer: 'F2'}} EUR{% endif %}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: 30 | Datum: 'd', 'de-DE'}} ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% endif %}

Ausgabe:
Code:
Rechnung (3% Skonto)
Zahlbar innerhalb 10 Tage abzüglich 3% Skonto, Rechnungsbetrag = 9,26 EUR
Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = 9,45 EUR


Man muss somit keine Attribute im Kundenkonto anlegen, man kann jederzeit im Auftrag die Zahlungsarten setzen, egal ob Skonto 2% oder 3%.
In der Druckvorlage wird dann alles über Zahlungshinweise ausgelesen.
 

Weedmaster-Flash

Gut bekanntes Mitglied
5. September 2007
203
6
Schleswig-Holstein
AW: Skontotext anpassen

Hi wawi-dl ,

vielen Dank für die klasse Beschreibung und den Code. Leider spuckt er bei mir falsche Daten aus. Woran könnte das Liegen??

Meine Ausgabe sieht z.B. so aus:

Rechnung (2% Skonto)
Zahlbar bis 02.12.2015 abzüglich 2% Skonto, Rechnungsbetrag = 0,49 EUR
Zahlbar bis 18.12.2015 ohne Abzug / Skonto, Rechnungsbetrag = 50,35 EUR <<- das stimmt wiederum mit dem Gesamtbetrag überein un macht daher auch sinn.

Viele Grüße
 

Shopworker.de

Offizieller Servicepartner
SPBanner
4. Januar 2011
4.117
545
Arnsberg, Sauerland
AW: Skontotext anpassen

Hallo zusammen,

super Ansatz.

Habe es gerade in einer 1.0.5.0 getestet, da muss das "| DividedBy: 100" entfernt werden, dann werden die Beträge korrekt dargestellt.
Vermutlich kommt das durch die neue List&Label-Version ...
 

wawi-dl

Sehr aktives Mitglied
29. April 2008
6.162
655
AW: Skontotext anpassen

#############################
bis JTL-WAWI Version 0.99.923
#############################


Zahlungsart: Rechnung (2% Skonto)
Code:
{{Vorgang.Zahlungsart.Name}}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: Vorgang.Zahlungsziel | Datum: 'd', 'de-DE'}} abzüglich 2% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.98 | DividedBy: 100 | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb {{Vorgang.Zahlungsziel}} Tage abzüglich 2% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.98 | DividedBy: 100 | Nummer: 'F2'}} EUR{% endif %}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: 30 | Datum: 'd', 'de-DE'}} ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% endif %}

Ausgabe:
Code:
Rechnung (2% Skonto)
Zahlbar innerhalb 10 Tage abzüglich 2% Skonto, Rechnungsbetrag = 9,26 EUR
Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = 9,45 EUR

oder

Zahlungsart: Rechnung (3% Skonto)
Code:
{{Vorgang.Zahlungsart.Name}}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: Vorgang.Zahlungsziel | Datum: 'd', 'de-DE'}} abzüglich 3% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.97 | DividedBy: 100 | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb {{Vorgang.Zahlungsziel}} Tage abzüglich 3% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.97 | DividedBy: 100 | Nummer: 'F2'}} EUR{% endif %}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: 30 | Datum: 'd', 'de-DE'}} ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% endif %}

Ausgabe:
Code:
Rechnung (3% Skonto)
Zahlbar innerhalb 10 Tage abzüglich 3% Skonto, Rechnungsbetrag = 9,26 EUR
Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = 9,45 EUR




#############################
ab JTL-WAWI Version 1.0.0
#############################


Zahlungsart: Rechnung (2% Skonto)
Code:
{{Vorgang.Zahlungsart.Name}}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: Vorgang.Zahlungsziel | Datum: 'd', 'de-DE'}} abzüglich 2% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.98 | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb {{Vorgang.Zahlungsziel}} Tage abzüglich 2% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.98 | Nummer: 'F2'}} EUR{% endif %}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: 30 | Datum: 'd', 'de-DE'}} ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% endif %}

Ausgabe:
Code:
Rechnung (2% Skonto)
Zahlbar innerhalb 10 Tage abzüglich 2% Skonto, Rechnungsbetrag = 9,26 EUR
Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = 9,45 EUR

oder

Zahlungsart: Rechnung (3% Skonto)
Code:
{{Vorgang.Zahlungsart.Name}}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: Vorgang.Zahlungsziel | Datum: 'd', 'de-DE'}} abzüglich 3% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.97 | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb {{Vorgang.Zahlungsziel}} Tage abzüglich 3% Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Times: 0.97 | Nummer: 'F2'}} EUR{% endif %}
{% if Vorgang.Rechnung.Rechnungsnummer != empty %}Zahlbar bis {{Vorgang.Rechnung.Erstelldatum | AddDays: 30 | Datum: 'd', 'de-DE'}} ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% else %}Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = {{Vorgang.Gesamtbruttopreis | Nummer: 'F2'}} EUR{% endif %}

Ausgabe:
Code:
Rechnung (3% Skonto)
Zahlbar innerhalb 10 Tage abzüglich 3% Skonto, Rechnungsbetrag = 9,26 EUR
Zahlbar innerhalb 30 Tage ohne Abzug / Skonto, Rechnungsbetrag = 9,45 EUR



Man muss somit keine Attribute im Kundenkonto anlegen, man kann jederzeit im Auftrag die Zahlungsarten setzen, egal ob Skonto 2% oder 3%.
In der Druckvorlage wird dann alles über Zahlungshinweise ausgelesen.

EDIT:
@Shopworker
Korrekt, das Problem hatte ich in der 923er Version, hatte es in der 1er garnicht mehr getestet.
Anbei beide Versionen, sollte nun klappen.
 

kaefer

Sehr aktives Mitglied
23. Januar 2014
507
30
Nuernberg
Hallo Wawi-DL,

habe den Code unter Zahlungsarten
"Rechnung (2% Skonto) eingetragen (und unter Vorschau funktionierts)

aber auf der Rechnung wird dies nicht ausgedruckt.
Woran liegt das Problem?

Bitte um Hilfe

Danke
 

wawi-dl

Sehr aktives Mitglied
29. April 2008
6.162
655
Ich gehe davon aus, es ist die Vorschau in der ZA gemeint, nicht Druckvorlage.

Die Druckvorlagen muss natürlich auch dafür vorbereitet sein, die Variable abfragen.
 

Aperitif-Sticks

Aktives Mitglied
11. November 2014
9
0
Hallo. Brauche eure Hilfe
Ich löse das Skonto Problem derzeit über Attribute.
Die Formel sieht so aus
FStr$(Vorgang.Zahlungsziel, '?&') + " Tage netto."
+ " Bei Zahlung bis zum " + date$(AddDays (Vorgang.Erstelldatum,val((RegExMatch$ (RegExMatch$ (Vorgang.Kunde.Attribute,'Skontotage=[0-9]+'),'[0-9]+')))))+ " abzgl. " + (RegExMatch$ (RegExMatch$ (Vorgang.Kunde.Attribute,'Skonto=[0-9]+'),'[0-9]+')) + "% Skonto " + str$(Vorgang.Auftrag.Gesamtbruttopreis - ( Vorgang.Auftrag.Gesamtbruttopreis * val((RegExMatch$ (RegExMatch$ (Vorgang.Kunde.Attribute,'Skonto=[0-9]+'),'[0-9]+')))/100),0,2) + " " + Vorgang.Währung
Sind bei einem Kunden jedoch keine Attribute hinterlegt wird nichts ausgegeben auch nicht das Zahlungsziel.

Wie kann ich die Formel erweitern, wenn keine Attribute beim Kunden hinterlegt sind und nur das Zahlungsziel (Vorgang.Zahlungsziel) ausgegeben werden soll?


Danke