SAP收发存报表开发功能设计说明书

 时间:2018-07-01 00:51:24 贡献者:多DODO多

导读:SAP 收发存报表程序 收发存报表程序功能详细设计说明书1.1 相关数据表 EBAN EBKN EKKO EKPO表结构关系 表描述 采购申请抬头表 采购申请项目明细表 采购订单抬头表 采购订单项目明细表 字段名

sap报表
sap报表

SAP 收发存报表程序 收发存报表程序功能详细设计说明书1.1 相关数据表 EBAN EBKN EKKO EKPO表结构关系 表描述 采购申请抬头表 采购申请项目明细表 采购订单抬头表 采购订单项目明细表 字段名称 字段描述KNTTP科目设置类型EKKN采购订单科目分配数据AFKO AUFK MSPRH生产抬头文件 生产订单长文本 项目库存:历史(无价值字段)EBELN EBELP ZEKKN PS_PSP_PNR NPLNR AUFNR PRONR帐户分配的序列号 工作分解结构元素 (WBS 元素) 科目分配的网络号 生产订单号 WBS 元素指针SOBKZ PSPNR LFGJA LFMON PRLAB PRINS PRSPE PREIN特殊库存标识 工作分解结构元素 (WBS 元素) 当前期间的会计年度 当前期间 (记帐期间) 非限制使用的估价的库存 质量在检的库存 冻结库存 所有限制批次的总计库存 (当前期存储位置层次项目库存)MSPR项目库存(无价值字段)MSSQ项目库存(无价值字段)(当前期工厂层次项目库存)MSSQH QBEW QBEWH 项目库存的分开评估(仅包含项目 库存及估价数据) 项目库存的分开评估(历史记录)Page 1 of 8

相关数据表 EBEW EBEWH MBEWMBEWH PRPS表描述 销售订单库存的分开评估 销售订单库存的分开评估(历史 记录) 常规库存的评估(仅包含常规库 存价值数据,不包含项目库存的 相关数据) 常规库存的评估(历史记录) WBS 结构数据字段名称字段描述POSIDWBS 元素 MSEG-PSPNR 搜索此表可得到 WBS 号码; MSEG-PSPNR, 搜索此表可得到项 目定义; WBS 元素(24 码)找其项目定义, 也 必须透过指针来寻找项目定义;PROJ项目定义结构表MKPF MSEG EKET QINF物料凭证抬头数据 物料凭证行项目数据采购订单收货 物料和供应商的 QM 信息记录MARC QMAT物料工厂数据 检验类型 - 物料参数MATNR LIEFERANT WERK FREI_DAT NOINSP QMATV MATNR WERKS ART APA AFR AKTIV物料号 供应商帐户号 工厂 下达的有效到期日 QM 信息记录中的检验控制 物料工厂的质检设置是否存在 物料号 工厂 检验类型 首选的检验类型 处理单位的检验 检验类型 - 物料合并已激活RBKP RSEG发票抬头数据 发票行项目相关的事务代码: MB52 – 库存综览显示 MB51 – 物料凭证清单1.2程序处理逻辑内表一:自定义表清单及结构定义 字段名称 字段描述Page 2 of 8

程序处理逻辑内表二和内表三:字段名称字段描述值1.3源 数 据 序号 1) 2) 3) 4) 5) 6) 7) 8) 9) 域名 类型 (长度) 描述输入/输出数据格式定义 输入 输出数据格式定义SAP 系 统 字段名 类型 (长度) 描述 转换关系Page 3 of 8

22.1输入/输出画面格式设计要求 输入 输出画面格式设计要求 输出画面格式设计报表选择屏幕以下是本程序的第一个画面:初始化画面名 工厂 存储位置 WBS 元素称属 性 (多值) (多值) (多值) (多值) (多值) (多值) (单值) (单值)必输项 (是/否)默认值其他特殊 要求 权限检查参考表字段 MSEG-WERKS MSEGPS_PSP_PNR物料类型 物料组 评估类 期间(YYYYMM) 输出明细资料NMKPF- BUDAT 之年月 (核选框)注: "属性"字段注明: 多选, 单选, 单选钮/, 选框或其他等;2.2客户化增 功能画面设计 客户化增强功能画面设计(以下是格式化画面设计要求)Page 4 of 8

3程序处理逻辑说明1. 生成选择输入画面,用户输入参数;检查权限; 2. 按用户选择画面参数,选择指定范围的数据,结合如下取数规则,生成报表: 3. 取数规则:安装项目定义掩码:X-XX NN NN 制作项目定义掩码:X-X-XX NN NN 序号 字段 取数规则 1) 物料编号 2) MAKT物料描述 3) 单位 MARA-MEINS; MARA-MTART; 4) 物料类型 如果物料类型为 ZFS1 或 ZFS2,则: 5) 单重其期初库存及相关交易一定是项目库存相关:如果 WBS 元素 的第四位为 "-",则取 WBS 元素第 5 位~第 10 位;否则取 WBS 元素的第 3 位~第 8 位 作为 WBS 元素"基本编码"; 由 生产订单抬头表中找产品物料编码,WBS 元素第 5 位~第 10 位 与上述 WBS 元素"基本编码"一致的订单,取其生产 订单抬头文本的第四行,如果为零,再找下一个生产订单直到 取值非零为止; 如果最终由生产订单中不能取值,则取 采购订单行项目: 由 EKKN/EKKO 表中找:物料编码,WBS 元素第 5 位~第 10 位 与上述 WBS 元素"基本编码"一致的采购订单,取其采 购该项目文本的第四行(第一页标签),如果为零,再找下一 个采购订单直到取值非零为止; 最终找不到,则置零; 如果是其他物料类型,则取物料主数据中基本数据视图之毛 重;备注6) 7)物料组 商务分类MARA-MATKL;如果物料类型为 ZFS1 或 ZFS2, 则由物料号码+WBS 元素找任 一生产订单文本的第六行,压缩空格后取前 15 位; 可在取单重时同时取商务分类:生产订单文本的第六行或采购 订单相应文本标签下的第六行; 如果物料类型为其他,则置空;8) 9) 10) 11) 12) 13)评估类 工厂 WBS 元素 项目定义 项目描述 期初数量 期初金额由 MBEWH/QBEWH 中取 (分别对于常规库存和项目 库存);对于常规库存,按用户选取的物料/工厂/存储位置/评估类型 范围,按如下规则取期初库存数据: 1) 截取报表期间的的年份, 月份, "物料" "工厂 按 + "+ "仓 库"+"年份"+"月份-1" 读取 MARDH 表的数据. 注:"月份-1"是指报表期间的前一个月 1.1)如果读取成功,保存至"上月期末库存临时字段", 1.2)如果读取不成功,再从 MARDH 找"=月份"或">月份且 最接近的纪录", 1.2.1)如果找到了,就保存至"上月期末库存临时字段" 1.2.2)如果找不到,则取 MARD 的当前库存保存至"上月期末 库存临时字段"(非限制库存/质检库存); 参照上述规则,按物料/工厂/期间年份/期间月份,由表 MBEWH/MBEW 中取期初单价数据;Page 5 of 8

对于项目库存, 按用户选取的物料/工厂/存储位置/WBS 元素范 围,由表 MSPR/MSPRH 中期初数量数据,由 QBEW/QBEWH 中取单 价数据(VERPR-移动平均价);按前一字段取值规则得到的数量*单价即为期初金 额; 14) 收入数量 收入金额以下取第一部分: 中按移动类型取物料编号不为 以下取第一部分:由表 MSEG 中按移动类型取物料编号不为 空的记录: 空的记录: 收入数量&收入金额: 由表 MKPF/MSEG 中按选择的数据范 围,取以下移动类型记录其对应字段 MSEG-MENGE/DMBTR 的值,如果 MSEG- SHKZG 为 "S",则记为本字段的正项 正项, 正项 如果为 "H", 则为本字段的负项 移动类型范围为 100 ~ 199 , 负项: 负项 561/562, 501/502, 921/922, 301~499,541~544 ; 对于发票确认对收入金额的影响部分取值规则,请参照 "发 出数量"字段的取值说明. 由 MSEG 中取物料编号非空的记录: 收入数量&收入金额: 由表 MKPF/MSEG 中按选择的数据范 围,取以下移动类型记录其对应字段 MSEG-MENGE/DMBTR 的值,如果 MSEG- SHKZG 为 "S",则记为本字段的负项, 负 如果为 "H", 则为本字段的正项:移动类型范围为 201 ~ 299 , 正 551/552, 645/646, 901~914 , 923/924 , 301~499, 541~544 ; 第二部分: 第二部分 还要取移动类型为 101/102/122/161/162, 物料号非空,但 MSEG- KZVBR 字段为 "V"的记录(对应的 MSEG-KNTTP= "K/P/S/R"之一) :其数量和价值分别累加到相应的 "物料/工 厂(可能还有 WBS 元素)" 记录的 "发出数量/发出金额"中, 如果 MSEG- SHKZG 为 "S",则记为本字段的正项,如果为 "H",则为本字段的负项; 以下取第三部分 (由发票校验的差异调整部分, RSEG- KNTTP 第三部分 =K/P/R/S 的记录): 由 RBKP 取当期的所有发票凭证号码.由 RBKP-BELNR 找表 RSEG:如果 RSEG-KNTTP 为 "K/P/R/S"之一,且 RSEG-MATNR 非空且 RSEG-EFKOR 非空,则说明发票确认 有对直接采购消耗的存货物资的金额调整记账,但此部分的调 整记账,是同时反映在收入金额和(消耗)发出金额上,没有经 过库存帐. 所以以下继续处理取得的值必须要同时累加到 "收 入金额"和 "发出金额"上,但收入数量和发出数量不变更 (发票交易不会带来数量变化): 由 RSEG- BELNR + RSEG- GJAHR 搜索 BKPF-BWKEY, 取 BKPF- BELNR(会计凭证号码);由 BKPF-BELNR 取表 BSEG 中 BSEG-MATR = RSEG-MANR .AND. BSEGEBELN = RSEG-EBELN .AND. BSEG-EBELP=RSEG-EBELP 的记录,如果 BSEG- SHKZG = "S"则取 BSEG- DMBTR 的值 为调整金额暂存值;如果 BSEG- SHKZG = "H": BSEGDMBTR 的负值为调整金额暂存值; 如果 RSEG-KNTTP = "Q" ,或为空,则舍弃此 "调整金额暂 存值";否则,分别将此金额累加到 "收入金额"和"发出 否则, 收入金额" 否则 金额" 物料+工厂 (或者加 WBS 元素) ; ) 金额" (对应关键字段: 中15)发出数量 发出金额16)盘点数量17) 18)盘点金额 调整金额按指定期间和数据范围,由 MKPF/MSEG 中取移动类型为 "701/702/711/712" 的 交 易 记 录 字 段 MSEG-MENGE/ DMBTR(基本单位数量/本位币金额); 如果 MSEG- SHKZG 为 "S",则记为本字段的正项,如果为 "H",则为本字段的负项; 参照前一字段的说明; 库存价值调整: 不对应库存交易,对应发票确认时因采购订单价格与 发票价格差异导致的对库存金额的调整(此时库存数量不变),Page 6 of 8

或者调整库存物料的单价时也导致库存金额变化; 库存价值调整金额,仅当按公司出具报表时,该字段 值才有效.因为系统没有记录各存储位置的价格更改和价值更 新(价值更改是在评估范围层次或 WBS 元素层次有效); 以下是第一部分: 单价修改的凭证上 "价值修改"可能对应: 存货价值的 改变及差异的改变: 无论是按 S 或 V 计价, 只要是价格改变, 存货价值一定是变化的. 取 MLCR-BDATJ/POPER 为报告期间的所有记录,得到 凭证号+会计年度+项目号(MLCR-BELNR/KJAHR/POSNR)+ 存货价值修改(MLCR-SALK3); 再按上述 三个字段(MLCR-BELNR/KJAHR/POSNR) 取 表 MLIT-MATNR/BWKEY(评估范围)/WBS 号; 如果上述过程由 MLCR 中取得的金额为零(SALK3), 则以相同的(MLCR-BELNR /KJAHR /POSNR) 及前一期间再 取 MLCR-SALK3, 以该值置换符号(乘以 -1),则得到报告期间 的库存调整金额; 单价调整:可能针对常规库存或项目库存.取值时要 将物料号码及 WBS 元素和工厂代码一同取值; 以下是第二部分: 由表 RSEG/RBKP 中取价值修改记录. 由表 RBKP 中取当前报表期间的发票凭证抬头数据记 录,由此表的凭证号找表 RSEG-STOCK POSTING 非零的记 录,得到 RSEG-WERKS/RSEG-MATNR 的库存价值变更.如 果 RSEG-KNTTP 为空,则累加到此报表的工厂+物料的 "调 整金额"中(该字段的值有正项,也可能有负项,直接累加到 "调整金额"中);如果 RSEG-KNTTP= "Q",则该调整金额 属于项目库存金额的调整,必须由 RSEG-EBELN 和 RSEG-EBELP(采购订单号码及行项目号码)找 PO 的行项目 的 WBS 元素号码,而将该 RSEG-STOCK POSTING 的金额 写入 "工厂+物料+WBS 元素" 的值中;19) 20) 21) 22) 23)期末数量 期末金额 差异数量 差异金额 构件吨位=期初数量+收入数量-发出数量 =期初金额+收入金额-发出金额+调整金额; =期末数量-(画面输入期间的下一期间)期初数量(按期初 数量取数规则得到) =期末金额-(画面输入期间的下一期间)期初金额(按期初 金额取值规则得到)单重*期末数量 / 10004. 如果用户未输入存储位置,则表示是在工厂层次出具报表,取报表记录关键字为: 工厂代码/物料 编码/WBS 元素/商务分类(物料组,物料类型依附于该三个键值),所有数量和金额按此键值汇总; 收入数量""收入金额""发出数量""发出金额"字段, ""收入金额""发出数量""发出金额 同时对于 "收入数量""收入金额""发出数量""发出金额"字段,不统计移动类型 311~316; ; 5. 如果用户输入了存储位置,则取值表字段 "工厂代码/存储位置/物料编码/WBS 元素/商务分类",相 应的取数结果均按物料+工厂+存储位置+WBS 元素+商务分类层次累计;对于 "收入数量""收入 ""收入 对于 收入数量"" 金额""发出数量""发出金额 字段, 统计的移动类型无限制 ""发出数量""发出金额" 无限制; 金额""发出数量""发出金额"字段,所统计的移动类型无限制; 6. 最终输出方式: 如果用户在画面上选择了 "输出明细资料"(Y",则首先按取数规则表的字段格式输出清单; 否则不执行明细清单资料的输出; 接下来,在同一清单上,再附加如下分类统计表: 除了列出上表格式的按料号的明细外,还需要列出如下分类小计报表: 附加清单一:按 WBS 元素分类汇总的收发存明细表(仅对 WBS 元素非空的记录进行小计并分类 汇总输出); 附加清单二:按商务分类汇总的收发存明细表(仅列出物料类型为 "ZFS1/ZF2"的每一商务分类 的小计); 附加清单三:按商务分类+项目定义分类汇总的收发存明细表; 附加清单四:按评估类分类汇总的收发存明细资料;Page 7 of 8

请依次输出.相应清单字段如下: 附加清单一 1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11) 物料编号 物料描述 单位 物料类型 单重 物料组 商务分类 评估类 工厂 WBS 元素 项目定义 X X X X X O 附加清单二 附加清单三 附加清单四12) 项目描述 取数规则表中的其余字段,均要输出;Page 8 of 8

 
 

微信扫一扫 送福利