Neu Zählschleife bei Export von Lieferscheinen

operatorian

Mitglied
13. Februar 2018
15
4
Hallo zusammen, ich möchte in den Exportvorlagen einen Lieferschein exportieren.
An einer Stelle sollen die Zeilen/Positionen hochgezählt werden.



Bei einer Position soll es so aussehen:
Bestellnummer,Menge,Position,hinweis,versandart,artikelnummer
141624,1,1,eilt,dhl

Bei z.b. 4 Positonen so:
Bestellnummer,Menge,Position,hinweis,versandart
141624,1,1,eilt14,dhl
141624,1,2,eilt1,dhl
141624,2,3,eilt142,dhl
141624,1,4,eiltxx4,dhl

Der gesammte Export funktioniert auch recht sauber, jedoch scheitere ich grade an dem Hochzählen.
{% set Charset = 'utf8-without-bom' -%}
{% assign Trennzeichen = ',' -%}
{% assign versandposition = 0 -%}
{% for position in Vorgang.Positionen -%}
{% if position.IstVersandkostenPosition == false -%}
{{ Vorgang.Auftrag.ExterneAuftragsnummer }}{{Trennzeichen}}\
1{{Trennzeichen}}\
1{{Trennzeichen}}\
{{ position.Hinweis}}{{Trennzeichen}}\
{{ Vorgang.Pakete.ErstesObjekt.Versandart.Auftragstext }}{{Trennzeichen}}\
{% endif -%}
{% endfor -%}

An der Fett geschriebenen Stelle soll jetzt allerdings hochgezählt werden.
{% set Charset = 'utf8-without-bom' -%}
{% assign Trennzeichen = ',' -%}
{% assign versandposition = 0 -%}
{% for position in Vorgang.Positionen -%}
{% if position.IstVersandkostenPosition == false -%}
{{ Vorgang.Auftrag.ExterneAuftragsnummer }}{{Trennzeichen}}\
1{{Trennzeichen}}\
1{{Trennzeichen}}\
{{ position.Hinweis}}{{Trennzeichen}}\
{{ Vorgang.Pakete.ErstesObjekt.Versandart.Auftragstext }}{{Trennzeichen}}\
{% endif -%}
{% endfor -%}

In dem normalen Lieferschein wird dieses ja über "Fstr$(Count(Lieferscheinpositionen.InterneAuftragspositionnummer, false), "##&")" gelöst.
So etwas hätte ich nun gerne in meinem Export.

Hat jemand schonmal so etwas geschrieben? Ich steh grade echt auf dem Schlauch.

Ich würde dies so in etwas lösen wollen,

int positionmenge;
for positionmenge=0; i++) {printf("%d\n", i+1);}

bzw.:
{% if Vorgang.Positionen.Anzahl -%}
for Vorgang.Positionen.Anzahl =0; i++) {printf("%d\n", i+1)}
{% endif -%}


Liebe Grüße
 
Zuletzt bearbeitet:

operatorian

Mitglied
13. Februar 2018
15
4
Mahlzeit, habe das Problem behoben. Anbei der Lösungsvorschlag, falls jemand mal ein ähnliches Problem hat.
Der Wert Artikelbeschreibungen.Sortierung hilft in diesem Fall erstmal weiter. Nicht ganz das Ergebnis des Hochzählens, aber ich habe eine fortlaufende Nummerierung nach oben und dem Problem ist damit erstmal geholfen.

Statt:
{% set Charset = 'utf8-without-bom' -%}
{% assign Trennzeichen = ',' -%}
{% assign versandposition = 0 -%}
{% for position in Vorgang.Positionen -%}
{% if position.IstVersandkostenPosition == false -%}
{{ Vorgang.Auftrag.ExterneAuftragsnummer }}{{Trennzeichen}}\
1{{Trennzeichen}}\
1{{Trennzeichen}}\
{{ position.Hinweis}}{{Trennzeichen}}\
{{ Vorgang.Pakete.ErstesObjekt.Versandart.Auftragstext }}{{Trennzeichen}}\
{% endif -%}
{% endfor -%}

Nun dieses:
{% set Charset = 'utf8-without-bom' -%}
{% assign Trennzeichen = ',' -%}
{% assign versandposition = 0 -%}
{% for Artikelbeschreibungen in Vorgang.Positionen -%}
{% if Artikelbeschreibungen.IstVersandkostenPosition == false -%}
{{ Vorgang.Auftrag.ExterneAuftragsnummer }}{{Trennzeichen}}\
1{{Trennzeichen}}\
{{ Artikelbeschreibungen.Sortierung }}{{Trennzeichen}}\
{{ Artikelbeschreibungen.Hinweis}}{{Trennzeichen}}\
{{ Vorgang.Pakete.ErstesObjekt.Versandart.Auftragstext }}{{Trennzeichen}}\
{% endif -%}
{% endfor -%}
 

Ähnliche Themen