Skip to main content

Hallo 

 

Ich habe versucht, für die Versandetikette ein variables Layout zu erstellen. Leider scheint das nicht korrekt zu funktionieren. {STRASSE} {PLZ} und {ORT} werden mehrmals gedruckt und überlagern sich. Wir wollen den Ansprechpartner und sonstige wichtige Informationen auf der Etikette drauf haben, wenn es sich bei der Adresse um eine Firma handelt.

 

Nachstehend mein bisheriger XML-Code:

<label>
<line x="3" y="3" size="5">Absender:</line>
<line x="3" y="8" size="5">{ABSENDERNAME}</line>
<line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
<line x="3" y="18" size="5">{ABSENDERPLZ}</line>
<line x="13" y="18" size="5">{ABSENDERORT}</line>
<line x="40" y="37" size="5">Empfänger:</line>
<multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
{IF}{NAME2}{THEN}
<line x="40" y="53" size="7">{NAME2}</line>
{ENDIF}
{IF}{NAME3}{THEN}
<line x="40" y="60" size="7">{NAME3}</line>
<line x="40" y="68" size="7">{STRASSE}</line>
<line x="40" y="76" size="7">{PLZ} {ORT}</line>
{ELSEIF}{NAME2}{THEN}
<line x="40" y="60" size="7">{STRASSE}</line>
<line x="40" y="68" size="7">{PLZ} {ORT}</line>
{ELSE}
<line x="40" y="53" size="7">{STRASSE}</line>
<line x="40" y="60" size="7">{PLZ} {ORT}</line>
{ENDIF}
</label>


Hat jemand diese Problematik schon mal gelöst? 

 

Gruss
Nicolas

Moin @Nicolas Andrea Almy ,

kann es sein, dass sich die Adressen überlagern, wenn Name 2 und Name 3 Voehsnden sind?

Ich würde hier diw felder Straße, PLZ und Ort aus den IT-Bedingungen raus nehmen und dort nur die Felder Name 2 und Name 3 drin lassen.

Die sollten aber auch nicht den selben Platz bekommen. 


@Max_P 

Es spielt keine Rolle, ob Name 2 oder Name 3 befüllt ist. Es passiert, sobald eines von beiden oder beide einen Wert haben.

 

Und ich brauche drei verschiedene Layouts: 

Name
Strasse 
PLZ Ort


Firmenname
Ansprechpartner (Name 2)
Strasse
PLZ ORT

Firmenname
Ansprechpartner (Name 2)
Abteilung (Name 3)
Strasse
PLZ ORT

Ich will aber keine leere Zeile dazwischen haben.

 

Gruss 

Nicolas


Hi @Nicolas Andrea Almy ,

dafür musst du prüfen, ob beide Felder gefüllt sind. Ich weiß nicht, ob das an der Stelle geht. 


Moin @Nicolas Andrea Almy ,

Hast du es mal mit einer verschachtelten If then else versucht?

If name3 then if name2 then Label mit name 2 und name3 else label nur mit name3 else if name2 then label mit name2 else label ohne name 2 und ohne name 3.

Ich hoffe ich habe jetzt kein then ider else vergessen. 

Das könnte man maö probieren, da es mit den einfachen Befehlen arbeitet, die dort an sich funktionieren. 

Die Frage ist nur, ob es auch verschachtelt klappt. 

 


Leider funktioniert es nicht ganz richtig

Variante 1:

<label>
    <line x="3" y="3" size="5">Absender:</line>
    <line x="3" y="8" size="5">{ABSENDERNAME}</line>
    <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
    <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
    <line x="13" y="18" size="5">{ABSENDERORT}</line>
    <line x="40" y="37" size="5">Empfänger:</line>
    <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
    
    {IF}{NAME3}{THEN}
        {IF}{NAME2}{THEN}
            <line x="40" y="53" size="7">{NAME2}</line>
            <line x="40" y="60" size="7">{NAME3}</line>
            <line x="40" y="67" size="7">{STRASSE}</line>
            <line x="40" y="74" size="7">{PLZ} {ORT}</line>
        {ENDIF}
        {ELSEIF}{NAME2}{THEN}
            <line x="40" y="53" size="7">{NAME2}</line>
            <line x="40" y="60" size="7">{STRASSE}</line>
            <line x="40" y="67" size="7">{PLZ} {ORT}</line>
        {ELSE}
            <line x="40" y="53" size="7">{NAME3}</line>
            <line x="40" y="60" size="7">{STRASSE}</line>
            <line x="40" y="67" size="7">{PLZ} {ORT}</line>
        {ENDIF}
    {ELSEIF}{NAME2}{THEN}
        <line x="40" y="53" size="7">{NAME2}</line>
        <line x="40" y="60" size="7">{STRASSE}</line>
        <line x="40" y="67" size="7">{PLZ} {ORT}</line>
    {ELSE}
        <line x="40" y="53" size="7">{STRASSE}</line>
        <line x="40" y="60" size="7">{PLZ} {ORT}</line>
    {ENDIF}
</label>

Variante 2:

{IF}{NAME3}{THEN}
    {IF}{NAME2}{THEN}
        <label>
            <line x="3" y="3" size="5">Absender:</line>
            <line x="3" y="8" size="5">{ABSENDERNAME}</line>
            <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
            <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
            <line x="13" y="18" size="5">{ABSENDERORT}</line>
            <line x="40" y="37" size="5">Empfänger:</line>
            <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
            <line x="40" y="53" size="7">{NAME2}</line>
            <line x="40" y="60" size="7">{NAME3}</line>
            <line x="40" y="67" size="7">{STRASSE}</line>
            <line x="40" y="74" size="7">{PLZ} {ORT}</line>
        </label>
    {ENDIF}
    {ELSEIF}{NAME2}{THEN}
        <label>
            <line x="3" y="3" size="5">Absender:</line>
            <line x="3" y="8" size="5">{ABSENDERNAME}</line>
            <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
            <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
            <line x="13" y="18" size="5">{ABSENDERORT}</line>
            <line x="40" y="37" size="5">Empfänger:</line>
            <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
            <line x="40" y="53" size="7">{NAME2}</line>
            <line x="40" y="60" size="7">{STRASSE}</line>
            <line x="40" y="67" size="7">{PLZ} {ORT}</line>
        </label>
    {ELSE}
        <label>
            <line x="3" y="3" size="5">Absender:</line>
            <line x="3" y="8" size="5">{ABSENDERNAME}</line>
            <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
            <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
            <line x="13" y="18" size="5">{ABSENDERORT}</line>
            <line x="40" y="37" size="5">Empfänger:</line>
            <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
            <line x="40" y="53" size="7">{NAME3}</line>
            <line x="40" y="60" size="7">{STRASSE}</line>
            <line x="40" y="67" size="7">{PLZ} {ORT}</line>
        </label>
    {ENDIF}
{ELSEIF}{NAME2}{THEN}
    <label>
        <line x="3" y="3" size="5">Absender:</line>
        <line x="3" y="8" size="5">{ABSENDERNAME}</line>
        <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
        <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
        <line x="13" y="18" size="5">{ABSENDERORT}</line>
        <line x="40" y="37" size="5">Empfänger:</line>
        <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
        <line x="40" y="53" size="7">{NAME2}</line>
        <line x="40" y="60" size="7">{STRASSE}</line>
        <line x="40" y="67" size="7">{PLZ} {ORT}</line>
    </label>
{ELSE}
    <label>
        <line x="3" y="3" size="5">Absender:</line>
        <line x="3" y="8" size="5">{ABSENDERNAME}</line>
        <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
        <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
        <line x="13" y="18" size="5">{ABSENDERORT}</line>
        <line x="40" y="37" size="5">Empfänger:</line>
        <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
        <line x="40" y="53" size="7">{STRASSE}</line>
        <line x="40" y="60" size="7">{PLZ} {ORT}</line>
    </label>
{ENDIF}


Variante3:

Nur diese Variante funktioniert, hat aber den Makel, falls Name2 und Name3 leer sind eine Leerzeile ausgeben wird.


<label>
            <line x="3" y="3" size="5">Absender:</line>
            <line x="3" y="8" size="5">{ABSENDERNAME}</line>
            <line x="3" y="13" size="5">{ABSENDERSTRASSE}</line>
            <line x="3" y="18" size="5">{ABSENDERPLZ}</line>
            <line x="13" y="18" size="5">{ABSENDERORT}</line>
            <line x="40" y="37" size="5">Empfänger:</line>
            <multiline x="40" y="45" size="7" wrap="40" wrapheight="7">{NAME}</multiline>
            <line x="40" y="53" size="7">{NAME2}</line>
            <line x="40" y="60" size="7">{NAME3}</line>
            <line x="40" y="67" size="7">{STRASSE}</line>
            <line x="40" y="74" size="7">{PLZ} {ORT}</line>
        </label>
 

Gruss
Nicolas


Antworten