1. 说明
在做公司间发票通过IDOC生成收入发票自动记账,开票方需进行推送,称为入站,包括数据的结构及处理的程序;而收票方也需对有相应的程序进行处理,称为出站。推送和接收需要有消息类型、数据结构以及编写的处理程序,幸好SAP对此业务有标准的实施方案,对于无特殊需求可直接使用。设定推送和接收参数的T-CODE是WE20,对于开票方需维护客户对应的合作伙伴及其参数,对于收票方则需维护供应商对应的合作伙伴及其参数。
示例是公司代码C100向公司代码C200开具公司间发票。开票方向公司代码C200开具公司间发票,结算对应的客户号是FC200,需维护FC200的客户合作伙伴及其出站参数;收票方收到公司代码C100出具的公司发票,对应的结算供应商编号FC100,需维护FC100的供应商合作伙伴及其入站参数。
在维护的进出站参数中,无论客户或供应商类型的合作伙伴,入站和出站的消息类型都是INVOIC,这是一个特定值仅指定为发票数据,相似的还有采购订单数据ORDERS。
IDOC的出站与入站处理以消息代码(Message code)加以区分,可根据需要自行定义,决定采用某个消息代码,则是由输出条件类型确定。
本文设定两个消息代码FI和MM,其中FI适用于跨公司销售,收票方只生成会计凭证(因为无参照采购订单),而MM则适用于STO跨公司转储,收票方既生成收入发票又生成会计凭证(因为有参照采购订单)
确认使用消息代码FI或MM的输出条件类型,是在公司间发票的输出过程中使用的RD00和RD04。当在公司间发票的输出中采用RD00或RD04条件类型,则会进行相应的IDOC出站动作。相应入站的供应商处理代码也是不同。相关维护数据参见表 1。
消息代码 | FI | MM | |
消息类型 | INVOIC | INVOIC | |
客户 | 伙伴角色 | BP | BP |
IDOC基本类型 | INVOIC01 | INVOIC01 | |
应用程序 | V3 | V3 | |
信息类型 | RD00 | RD04 | |
处理代码 | SD08 | SD08 | |
修改消息 | 不选 | 不选 | |
供应商 | 处理代码 | INVF | INVL |
表 1 WE20维护自动收入发票的客户与供应商参数
在做客户类型合作伙伴的出站参数时,需使用WE21维护的tRFC端口,相关文档参见《为IDOC创建tRFC连接》。此处的客户、供应商都是专用于内部结算,相关参见《客户主数据_示例_内部公司结算》、《供应商主数据_示例_内部公司结算》。
输出条件类型RD00与RD04的数据维护参见《为IDOC维护发票输出记录》。
2. 客户类型合作伙伴
维护客户类型的合作伙伴,前提是客户编号已存在,此客户编号是用于集团内部公司代码绑定的用于结算的客户编号。创建的合作伙伴编号与客户编号相同。合作伙伴创建后,需维护两个出站参数,其中消息类型是“INVOIC”,IDOC类型是“INVOIC01”。消息类型用T-CODE:WE81维护,IDOC类型用T-CODE:WE30维护。
在前台运行WE20进入,可见到合作伙伴有多种类型,选中“合作伙伴类型KU 客户”,点击新建按钮(),如图 1所示。
图 1 初始界面_创建客户合作伙伴
客户合作伙伴的抬头如图 2所示,“分类”标签页的如图 3所示。维护完成点击保存按钮()保存。
图 2 客户合作伙伴抬头
图 3 客户合作伙伴抬头_分类标签页
客户合作伙伴创建后,出站参数、入站参数允许添加条目,对于客户类型的合作伙伴需添加出站参数。在出站参数部分点击添加按钮()。
图 4 客户合作伙伴保存完成