发货单增强与OA接口功能说明书Word格式文档下载.docx

上传人:b****1 文档编号:1509788 上传时间:2023-04-30 格式:DOCX 页数:19 大小:24.42KB
下载 相关 举报
发货单增强与OA接口功能说明书Word格式文档下载.docx_第1页
第1页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第2页
第2页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第3页
第3页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第4页
第4页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第5页
第5页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第6页
第6页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第7页
第7页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第8页
第8页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第9页
第9页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第10页
第10页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第11页
第11页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第12页
第12页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第13页
第13页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第14页
第14页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第15页
第15页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第16页
第16页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第17页
第17页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第18页
第18页 / 共19页
发货单增强与OA接口功能说明书Word格式文档下载.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

发货单增强与OA接口功能说明书Word格式文档下载.docx

《发货单增强与OA接口功能说明书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《发货单增强与OA接口功能说明书Word格式文档下载.docx(19页珍藏版)》请在冰点文库上搜索。

发货单增强与OA接口功能说明书Word格式文档下载.docx

2011.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-业务蓝图_内销订单发货流程20101228_V1.0.doc

DBP-SD-HX-业务蓝图_外销订单发货流程20101227V1.0.doc

事务代码:

VL10

VL01N

5输入屏幕

1:

订单创建

标准的发货单的创建输入界面,

屏幕字段中文描述

选择类型

屏幕字段名称

参考字段名称

缺省值

必要输入

检核条件

单一

区间

复选框

选择

圆点

装运点/接收点

VEPVG-VSTEL

交货创建日期

VEPVG-LEDAT

6输出结果要求、输出屏幕

输入结果为订单创建,修改,显示界面。

7程序逻辑

创建发货单时,检查创建者是否为业务员。

需要引用销售订单来创建发货单,所以当用户在引用销售订单创建发货单后,需要检查该客户对应的业务员是否为该登录用户。

若为登录用户,可以继续创建,若不是登录用户,则系统Error报错提示,该用户无权创建该客户的发货单。

客户主数据中合作伙伴功能视图中有客户对应的业务员信息。

通过客户代码找到对应客户主数据中合伙人KNVP-PARVW的值Z5或者Z6。

Z5与Z6为业务员功能,两者不会同时存在一个客户主数据中。

Z5工号字母开头,Z6工号数字开头。

用户登录账号也是工号,所以可以通过登录账号和Z5,或者Z6的代码值来比较判断是否业务员为登录用户。

2:

检查发货日期是否超过合同有效期,发货数量是否超过订单量。

需要比较创建发货单当天的创建日期是否超过合同有效期VBAK-GUEEN

通过凭证流中订单找到对应的合同,取得合同的有效期与发货单创建日期比较。

通过表VBFA。

销售订单号VBFA-VBELN,找到VBFA-VBELV先前凭证,即为合同号码VBFA-VBELV。

再通过表VBAK找到该合同号对应的合同有效期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中查找)

若为

则系统需要检查客户的账户余额是否有足够的货款用户该批产品发货。

发货单产品总额=发货数量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=2203010000

的记录,并取得

贷方余额总额:

取字段借方/贷方BSID-SHKZG:

为H

的所有记录中的本位币金额BSID-DMBTR汇总后得到客户预付款贷方总额VALUE(预付H)

再取借方余额:

取字段借方/贷方BSID-SHKZG:

为S

的所有记录中的本位币金额BSID-DMBTR汇总后得到客户预付款借方总额VALUE(预付S)

客户预付款余额=客户预付款贷方总额VALUE(预付H)—客户预付款借方总额VALUE(预付S)

客户应收款余额:

BSID-HKONT=1122010000

客户应收款余额=客户应收借方总额VALUE(应收S)—客户应收贷方总额VALUE(应收H)

客户账户余额VALUE(D)=客户预付款余额—客户应收款余额

客户账户余额VALUE(D)>

=发货单产品总额

则该张发货单可以保存.

客户账户余额VALUE(D)<

发货单产品总额

则系统程序需要将发货单冻结,通过给字段LIKP-LIFSK赋值Z2来实现.

若付款条款为

则客户需要全款发货。

系统需要判断该客户的账户余额是否够本次发货单的全款,以及以往未清销售订单的30%定金。

发货单产品总额+未完全发货的销售订单的总额x30%与客户预付款余额比较,

若小于,则系统需要冻结发货单,将相关数据传入OA系统。

与客户预付款余额=客户预付款贷方总额VALUE(预付H)—客户预付款借方总额VALUE(预付S)

未完全发货的销售订单的定金:

通过当前用户新建的发货单号码LIKP-VBELN在表LIKP找到对应字段,作为查询条件:

销售组织LIKP-VKORG,

客户LIKP-KUNNR,

在表VBAK中找到对应的该客户的其他的销售订单,类型VBAK-AUART为ZOR,

每找到一条记录,并取得VBAK-VBELN销售订单号,需要到表VBUP通过VBUP-VBELN=VBAK-VBELN找到对应的销售订单行项目VBUP-POSNR,交货状态VBUP-LFGSA若为A或者B,若为A则需要将该条记录销售凭证VBUP-VBELN,项目VBUP-POSNR到表VBAP中找到价格VBAP-NETWR,

则未交货订单行项目定金VALUE(A)=订单行项目数量VBAP-KWMENGx价值VBAP-NETWRX30%

或者交货状态VBUP-LFGSA若为B的,及订单部分交货。

需要通过VBUP-VBELN号码找到VBFA中的记录

逻辑为VBUP-VBELN=VBFA-VBELV

且行项目VBUP-POSNR=VBFA-POSNV,

且子层凭证类别VBFA-VBTYP_N为J,

并且移动类型VBFA-BWART=601

通过以上条件找到对应的记录后,取得发货单发货量VBFA-RFMNG

然后未交货数量=订单对应行项目数量-发货行项目数量

VBUP-VBELN对应的VBAP-VBELN,

VBUP-POSNR=VBAP-POSNV

找到订单数量VBAP-KWMENG

然后部分交货对应的定金VALUE(C)=(订单对应行项目数量VBAP-KWMENG-发货行项目数量VBFA-RFMNG)x价值VBAP-NETWRX30%,得到未交货的部分产品对应的定金VALUE(C)。

若订单对应行项目数量VBAP-KWMENG-发货行项目数量VBFA-RFMNG等于负数,则这部分行项目的定金为0

需要将该客户对应的所有以上情况的销售订单行项目中的未交货订单行项目定金VALUE(A)与部分交货对应的定金VALUE(C)汇总。

需要循环处理后得到最后该客户的订单定金。

需要传入的数据如下:

通过LIKP-KUNAG找到客户代码后,以及LIPS-VBELV销售订单号,LIPS-POSNV行项目,取表VBAK的以下字段

才能找到以下字段

客户余额:

应收货款:

可用货款:

客户余额—(发货单产品总额+未完全发货的销售订单的总额x30%)

本次发货单总额—可用货款

客户回款检查:

针对付款条款为以下类别的客户,需要检查客户是否有超期欠款。

Z006

第三月10号

Z007

第三月15号

Z008

第三月20号

Z009

第三月25号

Z010

第三月28号

Z011

第四月10号

Z012

第四月15号

Z013

第四月20号

Z014

第四月25号

Z015

第四月28号

Z016

开票后10天

Z017

开票后15天

Z018

开票后20天

Z019

开票后30天

Z020

开票后45天

Z021

开票后60天

Z022

开票后75天

Z023

开票后90天

如果客户有超期欠款,发货单保存后需要冻结订单,并给订单拒绝原因LIKP-LIFSK赋值“Z2客户货款问题”来实现对订单的冻结。

系统通过以下逻辑进行判断,

BSID-KUNNR–客户编码;

BSID-BUKRS–公司代码;

BSID-DMBTR本位币金额;

BSID-ZFBDT基准日期;

BSID-ZTERM付款条款;

BSID-ZBT1T天数;

计算:

如果基准日期+天数BSID-ZFBDT<

当前日历天数,且金额(BSID-DMBTR)>

0,则通过系统提示消息:

系统存在过期未收款项,冻结发货单。

并向OA发送审批请求。

需要将该客户超期欠款的总额数值发送到OA系统的工作表的某个字段中(待OA系统工作表字段确定后完善该信息)

需要将以下信息发送到OA系统,

超期金额(元):

金额(BSID-DMBTR)需要汇总所有超期情况下的金额。

超期天数:

当前日历天数—(基准日期+天数),等于超期天数。

如果有多笔欠款超期,即BSID有多天满足条件的记录,则取超期最长的天数。

而超期金额还是需要去BSID表中的所有超期金额汇总值。

同时需要将订单中其他基本信息传入OA工作表:

下图为OA工作流表单的基本格式。

需要将超期金额,超期天数数据传入OA

表单。

给订单拒绝原因LIKP-LIFSK赋值“Z2客户货款问题”来实现对订单的冻结。

客户信贷状况检查:

客户信贷检查:

若该客户为信贷客户,系统会对该客户的发货单做信贷检查,若超过信贷额度,则系统有如下提示;

消息提示为:

超出动态的信贷额度 

 

717.00CNY

消息号V1152

保存发货单时,系统窗口提示用户,有超过信贷额度的金额,询问是否需要进入审批流程。

若用户选择否,则系统删除该订单。

若用户选择是,则订单需要进入审批流程,将信息传递到OA系统。

将以下提示信息传递到OA系统,

超出的信贷额度

可通过

事务代码FDK43对应的函数,计算超出金额。

调用该函数,输入值为客户代码VBRK-KUNNR,以及信贷范围:

HX00

找到超过预算值:

传入OA系统对应的字段,(OA字段待OA系统确定)。

给发货单拒绝原因LIKP-LIFSK赋值“Z2客户货款问题”来实现对订单的冻结。

发货单由于输入附加费和折扣冻结后,需要通过与OA做接口,触发OA折扣/附加费审批流程。

将发货单中的客户信息,和含有附加费或者折扣的产品相关信息出入OA的工作表中,作为审批的基础数据。

下图为OA工作流的表单格式。

红色字段信息需要SAP系统传递到OA系统。

产品编码为订单中含有附加费或者折扣的行项目中的产品编号,及其数量,价格ZPR1(条件类型),及其相应的附加费与折扣值。

OA审批通过。

8所需数据表及字段描述

8.1数据筛选逻辑

字段描述

取数逻辑

备注

9单元测试场景

屏选选择字段内容

测试其它前提

测试结果

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2