Adressenaufbereitung
Kategorie: TP Funktionsbausteine
Adressen werden bei den Formularen gewöhnlich nicht vom Entwickler aufbereitet und ausgegeben. Die Anforderungen der Länderspezifika bezüglich der Adressaufbereitung sind sehr komplex. Die Formular Entwicklungssysteme SAPscript, Smart Forms und Adobe Forms verwenden jeweils spezifische Adressobjekte. Diese Adressobjekte verwenden intern den SAP-Funktionsbaustein "ADDRESS_INTO_PRINTFORM".
Zentrale Adressverwaltung
- Die Funktionen des Adresse-Knotens basieren auf der ZAV (= Zentrale Adress-Verwaltung) im SAP-System. Ab Basis-Release 6.1 wird dafür der Name BAS (= Business Address Services) verwendet.
- Der Entwickler braucht dabei nicht die einzelnen Zeilen der Adresse ausgeben, sondern dem Adressknoten lediglich eine Adressnummer, bzw. eine Adressnummer und Personennummer übergeben. Da die korrekte Adressaufbereitung aufgrund von länderspezifischen Regeln auch sehr komplex ist, werden durch die Adressaufbereitung von SAP auch Fehler vermieden.
Adressobjekt in Adobe Forms
Adressobjekt in Smart Forms
Adressobjekt in SAPscript
Funktionsbaustein ADDRESS_INTO_PRINTFORM
Muster
CALL FUNCTION 'ADDRESS_INTO_PRINTFORM' " EXPORTING " ADRSWA_IN = " ADDRESS_1 = " ADDRESS_2 = " ADDRESS_3 = " ADDRESS_TYPE = ' ' " ADDRESS_NUMBER = ' ' " ADDRESS_HANDLE = ' ' " PERSON_NUMBER = ' ' " PERSON_HANDLE = ' ' " SENDER_COUNTRY = ' ' " RECEIVER_LANGUAGE = ' ' " NUMBER_OF_LINES = 10 "Mehr als 10 Zeilen werden nicht versorgt. Üblich sind oft 7 Zeilen " STREET_HAS_PRIORITY = ' ' " LINE_PRIORITY = ' ' " COUNTRY_NAME_IN_RECEIVER_LANGU = ' ' " LANGUAGE_FOR_COUNTRY_NAME = ' ' " NO_UPPER_CASE_FOR_CITY = ' ' " IV_NATION = ' ' " IV_NATION_SPACE = ' ' " IV_PERSON_ABOVE_ORGANIZATION = ' ' " IS_BUPA_TIME_DEPENDENCY = ' ' " IV_LANGU_CREA = ' ' " IMPORTING " ADRSWA_OUT = " ADDRESS_PRINTFORM = " ADDRESS_SHORT_FORM = " ADDRESS_SHORT_FORM_S = " ADDRESS_DATA_CARRIER = " ADDRESS_DATA_CARRIER_0 = " NUMBER_OF_USED_LINES = " NAME_IS_EMPTY = " ADDRESS_NOT_FOUND = " ADDRESS_PRINTFORM_TABLE = " ADDRESS_SHORT_FORM_WO_NAME = " EV_NATION = .
Importparameter
Der wichtigste Importparameter ist die Adressnummer "ADDRESS_NUMBER". Die Adressdaten sind mit dem Key ADDRNUMBER in der Tabelle ADRC gespeichert. Der Funktionsbaustein benötigt zudem noch den "ADDRESS_TYPE". Hier wird meist der Wert "1" eingetragen (Organisation, Firma). Diese beiden Parameter reichen dem Funktionsbaustein um die vollständige Adresse unter den Exportparametern auszugeben.
Im Parameter NUMBER_OF_LINES wird die maximale Anzahl von Adresszeilen bestimmt. Maximal sind hier 10 Zeilen möglich. Unter 5 sollte man nicht auswählen, da sonst z. B. das Land aus der Adresse gekürzt werden kann.
Exportparameter
Die Adressdaten werden in verschiedene Exportparameter ausgegeben. Der wichtigste Exportparameter ist die Tabelle "ADDRESS_PRINTFORM_TABLE".
Im Parameter ADDRESS_SHORT_FORM_S wird die Adresse in einer Zeile ausgegeben. Von den Namensfeldern wird lediglich NAME1 verwendet und nicht NAME2 etc.
User-Exit EXIT_SAPLSADR_001
- Funktionsbaustein EXIT_SAPLSADR_001, Funktionsgruppe XSAD
- Dieser Kunden-Funkionsbaustein wird im SAP-Funktionsbaustein ADDRESS_INTO_PRINTFORM aufgerufen, wenn der Adreßaufbereitungsschlüssel des Empfängerlandes im Kundennamensraum 900 bis 999 liegt
- siehe https://www.consolut.com/s/sap-ides-zugriff/d/e/doc/E-EXIT_SAPLSADR_001/
Web-Links
Literatur
- Function Modules in ABAP: A Quick Reference Guide, von Tanmaya Gupta, S. 496 (EN)
- Common SAP R/3 Functions Manual, von William Lawlor, S. 332 (EN)
- www.consult.com: User-Exit EXIT_SAPLSADR_001