Eine Lieferanschrift im AFS ist entweder ein Freitext oder ein bestimmt formatierter Text. Wenn die einzelnen Felder der Adresse benötigt werden, ist es für eine Software schwierig, einen freien Text zu interpretieren. Daher wird empfohlen, immer definierte Lieferadressen im AFS Manager zu verwenden.
Diese sind wie folgt aufgebaut:
##DEF:# intelligenSE Jan Honsberg Brombacher Strasse 75 DE 69434 Eberbach
Eine definierte Lieferanschrift besteht aus 7 Feldern. Die einzelnen Felder sind durch Zeilenumbrüche getrennt. Die erste Zeile enthält immer ein ##DEF:#, alle weiteren enthalten die Feldinhalte wie folgt:
- ##DEF:#
- Firma
- ASP Vorname
- ASP Nachname
- Strasse
- Land
- PLZ
- Ort
Bleibt ein Feld leer, z.B. der Vorname und Nachname, so muss hier eine leere Zeile verwendet werden.
Wann in einem Vorgang eine freie oder eine definierte Lieferanschrift verwendet wird, kann der Benutzer pro Vorgang entscheiden. Der Kaufmann speichert sich nicht, ob eine Definierte Lieferanschrift oder ein Freitext verwendet wird, sondern erkennt dies an der ersten Zeile.
Eine so formatierte Lieferanschrift kann auch im Kunden als abweichende Lieferanschrift hinterlegt werden. Dort fehlt allerdings die Umschaltmöglichkeit auf die definierte Lieferanschrift. Diese kann aber dort von Hand eingegeben werden und wird korrekt in den Vorgang übernommen.
Formular
Im Formular muss eine solche Lieferanschrift gesondert behandelt werden. Eine Freie Lieferanschrift ist normalerweise im Feld
TBL_Auftrag.Lieferanschrift
zu finden. Ist diese leer, so ist entweder keine oder eine Definierte Lieferanschrift hinterlegt. Das Feld
TBL_Auftrag.Lieferanschrift_RTF
enthält die Lieferanschrift in formatierter Form. Wird eine definierte Lieferanschrift verwendet, so enthält diese Feld die ##DEF:# Kodierung.
Um auf die Definierte Lieferanschrift zuzugreifen, sind External-Komandos nötig:
external$("AdresseX.Firma1") external$("AdresseX.Vorname") external$("AdresseX.Name") external$("AdresseX.Strasse") external$("AdresseX.PLZ") external$("AdresseX.Ort") external$("AdresseX.Land")
Wird eine freie Lieferanschrift verwendet, so enthält jede dieser Variablen die volle Lieferanschrift – ist also nicht zu verwenden.
um Herauszufinden, ob eine Lieferanschrift verwendet wird und wenn ja welche können folgende Bedingungen verwendet werden:
if(len(rtrim$(ltrim$(tbl_auftrag.lieferanschrift_rtf)))<=0, "keine Lieferanschrift", "mit lieferanschrift")
if(left$(ltrim$(tbl_auftrag.lieferanschrift_rtf), 2)="##", "definierte Lieferanschrift", "freie lieferanschrift")