发货单增强与OA接口功能说明书.docx
《发货单增强与OA接口功能说明书.docx》由会员分享,可在线阅读,更多相关《发货单增强与OA接口功能说明书.docx(16页珍藏版)》请在冰豆网上搜索。
发货单增强与OA接口功能说明书
发货单增强与OA接口功能说明书
⏹
更多企业学院:
<中小企业管理全能版>
183套讲座+89700份资料
<总经理、高层管理>
49套讲座+16388份资料
<中层管理学院>
46套讲座+6020份资料
<国学智慧、易经>
46套讲座
<人力资源学院>
56套讲座+27123份资料
<各阶段员工培训学院>
77套讲座+324份资料
<员工管理企业学院>
67套讲座+8720份资料
<工厂生产管理学院>
52套讲座+13920份资料
<财务管理学院>
53套讲座+17945份资料
<销售经理学院>
56套讲座+14350份资料
<销售人员培训学院>
72套讲座+4879份资料
功能说明书
发货单增强与OA接口
版本信息
版本
日期
作者
修改注释
1.0
.01.22
李振华
创立
文档确认
姓名
职务\角色
签字
日期
华兴公司项目经理
(手签)
埃森哲项目经理
应用功能顾问
开发人员
关键用户
业务负责人
1功能说明书描述
模块
销售
文档编号
BLD_RICEF_SD_0009
程序名
ZSD0009
模块顾问
李振华
关键用户
运行频率:
()每月()每周()每日
(X)其它_______
运行数据量:
()条
运行模式:
()后台(X)前台
程序类型:
()报表()表单()批导入()接口
()函数(X)对话程序()用户出口
程序目的:
创立发货单时,需要检查创立者的权限,当用户引用订单创立发货单时,系统经过该客户主数据对应的业务员信息,比对登陆账号是否该业务员。
同时,需要判断该客户是什么付款条件,若为月结付款条件的客户,需要检查客户是否有超期未付货款:
若为定金付款客户,则需判断客户预付款科目是否有足够定金来满足订单的需要。
2程序说明
2.1<业务流程说明>
1、集团外销售业务的发货单由业务员自行创立,且每个业务员计划一人一个独立sap账号。
账号为业务员员工号。
在客户主数据中维护了唯一的一个业务员(科目代码为Z005或者Z006)对应该客户,且业务员代码为工号。
2、当业务员创立发货订单时,需要引用销售订单类。
系统需要检查该客户对应的业务员是否为该登录用户。
如果不是,则不能为该客户创立销售订单,系统Error提示用户。
3、当创立发货单时,需要检查创立日期是否超过合同有效期,超过有效期需要审批;需要检查累计发货数量是否超过合同量,超过合同量一定幅度需要审批。
4、同时,系统需要根据客户主数据带出来的付款条件,检查客户的信用状况,以及付款情况。
针对标准的信贷,系统具有标准检查方案;可是对于定金模式付款的先款后货客户,则需要系统检查客户账户是否有足够的定金来满足该发货单,需要考虑以前的未交货完毕的订单。
5、系统需要检查发货单的三种情况,若不满足,需要分别将相关数据传入OA系统的工作表的相应字段,待OA审批结束后,经过OA按钮释放发货单.OA审批经过后,经过OA系统释放该发货单.需要将字段LIKP-SDABW值赋予Z1:
OA审批经过.并将字段LIKP-SDABW设置为不能经过人工手工更改。
2.2<功能前提>
无。
2.3<语言环境>
中文/英文
3权限设置
针对集团外销售业务的发货单的创立,需要检查创立者是否为该业务员。
订单的修改权限只分配给业务文员。
订单的查看权限分配给业务文员,及业务员,可是业务员只能查看自己创立的发货单。
4涉及业务流程和事务代码
流程:
DBP-SD-HX-业务蓝图_内销订单发货流程1228_V1.0.doc
DBP-SD-HX-业务蓝图_外销订单发货流程1227V1.0.doc
事务代码:
VL10
VL01N
5输入屏幕
1:
订单创立
标准的发货单的创立输入界面,
屏幕字段中文描述
选择类型
屏幕字段名称
参考字段名称
缺省值
必要输入
检核条件
单一
区间
复选框
选择
圆点
是
否
装运点/接收点
☑
装运点/接收点
VEPVG-VSTEL
装运点/接收点
☑
交货创立日期
☑
交货创立日期
VEPVG-LEDAT
☑
☑
☑
6输出结果要求、输出屏幕
输入结果为订单创立,修改,显示界面。
7程序逻辑
1:
创立发货单时,检查创立者是否为业务员。
需要引用销售订单来创立发货单,因此当用户在引用销售订单创立发货单后,需要检查该客户对应的业务员是否为该登录用户。
若为登录用户,能够继续创立,若不是登录用户,则系统Error报错提示,该用户无权创立该客户的发货单。
客户主数据中合作伙伴功能视图中有客户对应的业务员信息。
经过客户代码找到对应客户主数据中合伙人KNVP-PARVW的值Z5或者Z6。
Z5与Z6为业务员功能,两者不会同时存在一个客户主数据中。
Z5工号字母开头,Z6工号数字开头。
用户登录账号也是工号,因此能够经过登录账号和Z5,或者Z6的代码值来比较判断是否业务员为登录用户。
2:
检查发货日期是否超过合同有效期,发货数量是否超过订单量。
需要比较创立发货单当天的创立日期是否超过合同有效期VBAK-GUEEN
经过凭证流中订单找到对应的合同,取得合同的有效期与发货单创立日期比较。
经过表VBFA。
销售订单号VBFA-VBELN,找到VBFA-VBELV先前凭证,即为合同号码VBFA-VBELV。
再经过表VBAK找到该合同号对应的合同有效期VBAK-GUEEN
需要比较创立发货单当天的创立日期是否超过合同有效期VBAK-GUEEN
超过合同有效期,交货单需要冻结。
经过改变字段LIKP-LIFSK值来实现。
发货累计量超过订单量超过一定范围(1万个),发货单同样需要冻结。
经过程序改变字段LIKP-LIFSK值来实现。
如下图。
累计发货量的计算逻辑如下:
先经过新创立发货单的单号LIPS-VBELN及行项目LIPS-POSNR,找到所引用的销售订单号LIPS-VGBEL及其行项目LIPS-VGPOS
找到销售订单号,及其行项目后,
需要找到表VBAP中的VBAP-KWMENG即为订单行项目数量,
再经过VBFA表找到对应的该销售订单行项目所对应的所有交货单,
VBFA-VBELN发货单号,VBFA-POSNN发货单行项目,
找到VBFA-VBELV销售订单号,VBFA-POSNV销售订单行项目
要取满足VBFA-VBTYP_N=J
且移动类型VBFA-BWART=601的记录。
并取得数量VBFA-RFMNG后,即为交货数量,汇总所有该销售订单行项目对应的交货数量。
与订单行项目数量比较,若超过1万个,则系统将行项目的产品编码传入OA系统对应的字段中,同时传入该行项目的汇总发货量,订单量以及以下抬头数据:
申请人:
LIKP-ERNAM为用户工号,经过该工号到表KNA1中找到KNA1-NAME1为申请人名字
经过LIKP-KUNAG找到客户代码后,才能找到以下字段
申请部门:
VBAK-VKGRP
客户代码:
VBAK-KUNNR
客户名称:
KNA1_NAME1
客户类别:
KNA1-KUKLA
付款方式:
VBKD-ZTERM(经过销售订单号在表VBKD中查找)
OA审批经过后,经过OA系统释放该发货单.需要将字段LIKP-SDABW值赋予Z1:
OA审批经过.
并将字段LIKP-SDABW设置为不能经过人工手工更改。
3:
检查客户的付款情况,信贷状况,是否有超期货款。
付款情况:
对于先款后货的客户,及付款方式为以下三种情况的客户
Z024
无订金立即付款
Z025
30%订金立即付款
Z026
长期押金立即付款
付款方式:
VBKD-ZTERM(经过销售订单号LIPS-VGBEL在表VBKD中查找)
若为
Z024
无订金立即付款
Z026
长期押金立即付款
则系统需要检查客户的账户余额是否有足够的货款用户该批产品发货。
发货单产品总额=发货数量x产品价格
发货数量LIPS-LFIMG(经过发货单LIPS-VBELN及行项目LIPS-POSNR找到发货数量)
产品价格,需要找到销售订单号LIPS-VGBEL及其行项目LIPS-VGPOS
满足VBAP-VBELN=LIPS-VGBEL
VBAP-POSNR=LIPS-VGPOS
后,在表VBAP中找到VBAP-NETPR价格。
客户的账户余额
客户账户余额VALUE(D)=客户预付款余额—客户应收款余额。
客户预付款余额
经过BSID表
经过创立的销售订单的客户代码VBAK-KUNNR,到表BSID中找到满足
VBAK-KUNNR=BSID-KUNNR
BSID-BUKRS=销售订单的销售组织VBAK-VKORG
BSID-HKONT=
的记录,并取得
贷方余额总额:
取字段借方/贷方BSID-SHKZG:
为H
的所有记录中的本位币金额BSID-DMBTR汇总后得到客户预付款贷方总额VALUE(预付H)
再取借方余额:
取字段借方/贷方BSID-SHKZG:
为S
的所有记录中的本位币金额BSID-DMBTR汇总后得到客户预付款借方总额VALUE(预付S)
客户预付款余额=客户预付款贷方总额VALUE(预付H)—客户预付款借方总额VALUE(预付S)
客户应收款余额:
经过BSID表
经过创立的销售订单的客户代码VBAK-KUNNR,到表BSID中找到满足
VBAK-KUNNR=BSID-KUNNR
BSID-BUKRS=销售订单的销售组织VBAK-VKORG
BSID-HKONT=112000
的记录,并取得
贷方余额总额:
取字段借方/贷方BSID-SHKZG:
为H
的所有记录中的本位币金额BSID-DMBTR汇总后得到客户预付款贷方总额VALUE(预付H)
再取借方余额:
取字段借方/贷方BSID-SHKZG:
为S
的所有记录中的本位币金额BSID-DMBTR汇总后得到客户预付款借方总额VALUE(预付S)
客户应收款余额=客户应收借方总额VALUE(应收S)—客户应收贷方总额VALUE(应收H)
客户账户余额VALUE(D)=客户预付款余额—客户应收款余额
客户账户余额VALUE(D)>=发货单产品总额
则该张发货单能够保存.
客户账户余额VALUE(D)<发货单产品总额
则系统程序需要将发货单冻结,经过给字段LIKP-LIFSK赋值Z2来实现.
若付款条款为
Z025
30%订金立即付款
则客户需要全款发货。
系统需要判断该客户的账户余额是否够本次发货单的全款,以及以往未清销售订单的30%定金。
发货单产品总额+未完全发货的销售订单的总额x30%与客户预付款余额比较,
若小于,则系统需要冻结发货单,将相关数据传入OA系统。
与客户预付款余额=客户预付款贷方总额VALUE(预付H)—客户预