SAP SD实施笔记-客户主数据(二)

本篇承接上一篇的内容,继续记录客户主数据接口、相关功能程序以及报表的开发说明说编写逻辑。

发出接口

如果是外围系统发送客户主数据信息给我们,所需字段自然是以接受方,即我们SAP系统的需要决定。同样的,当我们需要发送客户主数据给外围系统的时候,所需字段由外围系统决定,我们与外围系统负责人在谈接口字段的时候,主要以对方的需求为主,我们重点要反馈SAP这边的逻辑,使双方系统理解上达成一致。

就如我们接收外围系统发的客户主数据,主要有3个动作:创建、修改、删除 一样,我们发送给外围系统客户信息的时候,主要也是由这三个动作触发接口发送信息。

如果外围系统不要求时效性非常强,即不需要SAP创建了客户后需要立马发送给外围系统,而是可以定期发送,那么我们可以开发一个程序,抓取一定时间内创建、修改的客户,将其主数据通过接口发送出去。

抓取新建客户
在KNB1表中寻找所有创建日期满足选择屏幕字段日期的数据,将客户号码和公司代码为KEY值在日志表中查询,如果信息类型为S的记录则证明已经成功发送过,那么跳过本条记录。对未发送过的记录,根据取数逻辑获取其他字段后写入日志表。

抓取修改了的客户
在表CDHDR中通过OBJECTCLAS= DEBI,以及满足屏幕日期的条件,获得OBJECTID字段的客户号码,去除重复值,将客户号码放入KNB1表中,筛选出有值的客户号码和公司代码,将客户号码和公司代码为KEY值,根据取数逻辑获取其他字段后写入日志表。

通过上面两种方式,抓取到了需要发送出去的客户号码和公司代码(区分创建和修改)。然后根据一定逻辑在表KNA1\KNVV\KNB1等表抓取接口字段,然后通过接口发送出去。

客户主数据相关功能

出于用户操作友好、提升效率的角度考虑,通常我们会针对客户主数据的创建、修改开发简单易用的程序,这里简单介绍一下通常会需要什么功能,具体逻辑不多赘述,做过SD的人应该都了解。
客户主数据批导程序,是指通过上传excel批量创建客户。excel模板里的字段、格式、顺序建议和项目里其他涉及客户主数据的接口字段保持一致。批量创建客户主数据属于基本每个实施项目都会有的程序,ABAPer手里估计也有现成的代码,改一改就可以用了。
扩充客户销售视图和公司视图。除了批量创建客户,通常还需要考虑批量扩充客户主数据的功能,例如,一个客户同时在公司1000和公司2000存在,而且是用同一个客户代码。现在,该客户已经在SAP里创建了主数据,属于公司1000,那么,我们需要考虑给客户扩充2000公司的销售视图和公司视图。建议批导程序和批量扩充销售视图、公司试图的程序分开来。
另外,还要考虑批量修改客户主数据的功能,该功能可以参考标准的批量修改程序(T CODE:MASS)中针对客户主数据修改的逻辑。

客户主数据报表

报表相对来说是比较简单的,根据业务需要列出需要哪些字段,能直接从表取数据的就直接取数据,不能的写出逻辑让ABAPer开发。另,通常建议客户主数据表以KNA1为基础表,跟其他表,如KNVV\KNB1等进行左连接。

猜你喜欢

转载自blog.51cto.com/9027965/2544652