在SAP ERP系统中,在sap的应用中,很多地方需要用到地址和联系方式,sap对于地址采用了集中维护。如下图中的供应商:在SAP ERP系统的事务码输入栏中,输入事务码XK03,勾选地址后显示:
那么,在ABAP编程中如何相关地址信息呢?
在SAP ERP系统中,地址信息数据存储到ADR*数据表中,其中ADRC为主表,其他为从表,如:ADR2 (Phone) and ADR3 (Fax) 。程序可以先从供应商主记录LFA1或客户记录KNA1等表中获取地址号(ADRNR),之后根据地址号再从这些地址相关数据表中读取数据,亦可使用ADDR_GET函数来提取数据。
如上述供应商,其供应商代码为1065001,在程序中可从供应商主数据表LFA1中得到其地址号,之后从地址表ADRC中根据地址号从而获取相关地址信息,或用函数ADDR_GET函数来提取相关数据,参见下面示例代码:
select single adrnr into p_anrnr from lfa1
where lifnr = '1065001' . "获取1065001供应商地址
if sy-subrc = 0 .
call function 'ADDR_GET'
exporting
address_selection = gv_fb_addr_get_selection
importing
sadr = sadr
exceptions
others = 01.
endif .