I really thought that all people who entered into SAP with or after 4.5 release should be used to the Central Address Management
Far from it when looking at all the questions and confusions still posted in SCN nowadays.
Not sure if this is caused by old instructors or just by the fact the rumors can’t be blown away easily.
Here is a screenshot of the old address view from vendor master:
All those fields have been stored in table LFA1 Vendor master general data (in case of customer master in table KNA1)
And this is the new address screen that came with Central Address Management (aka BAS Business Address Services). It has replaced the above old screen in vendor and customer master, and got even added to data which had not even a qualified address screen in earlier releases like plant and storage location.
About 25 fields are equal in old and new address screen, all others are new fields, needed for the international business and countries where the address is more descriptive “road from A to B,at the bus stop right, close to the church”
All this data is stored in the new tables that came along. The main table is ADRC with the addresses.
As you can see – or already know – the communication fields like Telephone, Fax, Email have a multiple selection button, which means you can maintain countless records for these fields while it was a fixed number in the old releases.
This also means that each of this fields has its own table to store this information. ADR2 for telephone, ADR3 for fax, ADR6 for Email
Just if you wonder about ADR4 and ADR5, they are used for Teletext and Telex, I guess people who remember those are already retired or close to or museum attendants.
Even the field length has changed for example for Name fields, street fields and search term.
To keep the SAP customers happy, and their self-developed programs alive, the address fields from LFA1 and KNA1 did not get removed, contrary the entries made in the new screen is copied over to the corresponding fields and kept redundantly.
As some fields are longer now, their content gets truncated when it is copied to the old tables. Others, that have now extra fields like the house numbers is concatenated with the street into the old street field.
Link between master data table and new address table
The link from the old tables to the central address tables is established via the address number ADRNR which is stored in the old master data tables.
In new self-developed reports you should take the address information from the ADR* tables instead of the old master data tables. You never know if they will stay forever.
Of course for quick and dirty one-time analysis the address from LFA1 and KNA1 tables should be sufficient, except you want some of the fields which are new and don’t exist in the old tables, since they did not get enhanced for those fields.
If you use SQVI QuickViewer then the link does not establish by itself, since the field names are not equal. You have to set this link manually: ADRNR <=> ADDRNUMBER
If you use International Address Versions , then you may even find 2 or more records with the same address number in the ADRC table. In this case you have to include the NATION field in your selection to filter the results to a certain Version only.
LSMW and addresses
In case you decide to load vendors or customers by a recording method into SAP then it is very important to select a small undocumented box in the selection screen. Certainly the root cause for most problems with the address data posted to SCN.
The online transactions (e.g. XK01, XK02, FK01, FK02, MK01,MK02) as well as the recording (if the box was activated) care about updating the ADR* tables as well as the master data table.
The Idoc import method for vendors and customers was unfortunately not changed, which means that you have to load vendors and customers with 2 LSMW objects, the CREMAS Idoc to update the vendor master data tables, and the ADRMAS Idoc to update the central address table.
If you do not follow the same approach as SAP (remember the concatenated Street and House number) then you actually create an inconsistency. It may not be recognized by most users, but if you take address fields from LFA1 in some of your reports then users can get confused when this values do not match with the shown data in vendor master transaction.
When you load dependent data then a mapping table is indispensable. A little experienced LSMW users already know that master data which is loaded by batch input method (recording is a batch input method) gets its new number in moment of posting. With Idoc method it is possible to determine and assign an internal number already before posting, hence it is possible to store a mapping old number to new number in a mapping table automatically while doing the conversion step.
While loading address data you have to tell the address to which master record it belongs. This is done by moving the new vendor number from this mapping table into OBJ_ID field or the ADRMAS Idoc.
While posting the ADRMAS Idoc SAP will automatically add the address number to the vendor master mentioned in the OBJ_ID field.
Caution: this only works for the main vendor and customer address. It does not work for addresses of customer contacts.
The ALE distribution of vendors and customers became more complex with business address services. SAP provides a proposal for the distribution model in the SALE customizing transaction. The name for this particular transaction is WYL2.
Make sure you read the docu which can be found next to the activity in IMG.
The ALE distribution needs serialization, which means address Idocs together with its master data Idoc in one package, the address Idocs are posted prior to the master data Idoc.(Unfortunately serialization cannot be achieved with LSMW). This is all automatically setup with this WYL2 transaction.
Since there is now a dependency between the master data object and the addresses you have to take care about this fact as well when you filter the distribution of Idocs. You need to add a small coding in the user exit to the function module VENDOR_FILTEROBJ_GET_VALUE (CUSTOMER_FILTEROBJ_GET_VALUE in case of customer master distribution). A code example can be found in SAP note 306275 – Transferring address data
Further detailed information can be found in the following SAP notes