ERP系统实施一期项目系统实现阶段文档
xxxxERP系统实施一期项目
技术设计说明书
开发编号: -DEV-SD050 功能名称: 金穗系统
xxxxERP系统实施一期项目项目自定义开发程序技术说明书
第一部分:基本信息
(生成新的版本后,以下内容要相应改动) 开发类型 增强 接口 单据 报表 BAdI Enhancement Dialog ABAP OO 技术工具 RFC BDC Server file SAPScript 模块 开发机及集团 事务代码 程序ID 程序名称 功能设计者 技术设计者 ABAP程序员 第二部分: 设计书维护记录 SD DEV/110 ZSD050 ZSD_RE0050 金穗系统 User Exit Function group Interactive list BAPI function Local file Smartforms Output-only List Executive Program Table Contents Modification 更新日期 2012.10.13 更新人员 简要说明 创建 第三部分: 技术方案描述 3.1业务需求描述
根据我国法律规定,从金税系统开具增值税专用发票。导出SAP发票信息按标准格式到文本,金穗系统开票成功后返回金穗发票号码到自定入表格。
文件名:SEPC/ERP项目试点组/自定义 开发程序技术说明书
创建人:FM 第 2 页,共 6 页
xxxxERP系统实施一期项目项目自定义开发程序技术说明书
3.2技术解决方案
3.3 系统简单架构图
3.4数据结构
TABLE: T001, 公司信息 KNA1, 客户信息
VBRK, VBRP, 发票抬头,明细信息
ZSD050_MAP, SAP发票号码对应金穗发票号码 ZSD050_HEAD, 自定义表——发票抬头 ZSD050_ITEM. 自定义表——发票明细
屏幕选择 输入选择条件 发票查询并保持导出保存发票 金穗回单导入SAPTxt文件从发票抬头表VBRK发票明细表VBRP取得相关信息从自定义表ZSD050_HEADZSD050_ITEM取得相关信息根据金穗回传文件整理格式到内表根据保存的发票日选择发票合并 期选择或准备开票根据ZSD050_MAP对应关系维护实际金穗发票按规则合并成一张发票按SAP发票输出输出金穗式 Txt文件保存到 ZSD050_HEADZSD050_ITEMZSD050_MAP 第四部分:程序逻辑描述—将主要代码功能描述清楚, 1、从Sap系统取得需要传输到金穗系统的数据(可根据客户合并)保存到自定义表 2、根据发票日期选择需要导出的发票信息,整合成文本文件导出
文件名:SEPC/ERP项目试点组/自定义 开发程序技术说明书
创建人:FM 第 3 页,共 6 页
xxxxERP系统实施一期项目项目自定义开发程序技术说明书
3、根据金穗系统回传的文件,更新自定义表中的实际金穗号码
第五部分:源程序----复杂性功能实现可贴主要功能代码部分 1.代码如下:
1.1发票查询并保存
SUBMIT ZSD_RE0050_1 VIA SELECTION-SCREEN AND RETURN.
* 数据库祛暑
PERFORM FRM_GET_DATA.
*发票抬头
PERFORM FRM_GET_VBRK.
*发票明细
PERFORM FRM_GET_VBRP.
*其他相关信息
PERFORM FRM_GET_OTHER.
* 整理数据
PERFORM FRM_FILL_DATA.
* 输出ALV
PERFORM FRM_DISPLAY. * 准备开票& 合并
WHEN 'REDY' OR 'MERG'. \发票合并,准备输出 PERFORM FRM_DISPLAY_OUT2 USING CUS_UCOMM.
* 合并操作,多张发票成新的发票号码数量金额累加
* 命名规则 ‘M’ + 一张发票号码 + ‘-’ + ‘张数’,具体对应关系在ZSD050_MAP查询 * 准备开票 一张方物料号相同进行合计累加
CASE P_UCOMM. WHEN 'MERG'.
PERFORM FRM_MERGER. WHEN 'REDY'.
PERFORM FRM_READY_SAVE. ENDCASE.
*数据合并操作
*准备开票——默认同一客户需判断最大开票金额
PERFORM FRM_MERGER_DATA USING P_UCOMM.
*保存发票信息
WHEN 'SAVE'.
PERFORM FRM_SAVE_DATA.
1.2发票查询状态并导出
SUBMIT ZSD_RE0050_2 VIA SELECTION-SCREEN AND RETURN.
文件名:SEPC/ERP项目试点组/自定义 开发程序技术说明书
创建人:FM 第 4 页,共 6 页
xxxxERP系统实施一期项目项目自定义开发程序技术说明书
* 筛选发票状态数据
CASE 'X'. WHEN RB1. SELECT *
FROM ZSD050_HEAD
INTO CORRESPONDING FIELDS OF TABLE GT_HEAD WHERE FKDAT IN S_FKDAT AND FLAG EQ '已保存'. WHEN RB2. SELECT *
FROM ZSD050_HEAD
INTO CORRESPONDING FIELDS OF TABLE GT_HEAD WHERE FKDAT IN S_FKDAT AND FLAG EQ '已导出'. WHEN RB3. SELECT *
FROM ZSD050_HEAD
INTO CORRESPONDING FIELDS OF TABLE GT_HEAD WHERE FKDAT IN S_FKDAT AND FLAG EQ '已开票'. ENDCASE.
* 取得发票行项目数据
IF GT_HEAD[] IS NOT INITIAL. SELECT *
FROM ZSD050_ITEM
INTO CORRESPONDING FIELDS OF TABLE GT_ITEM FOR ALL ENTRIES IN GT_HEAD WHERE VBELN = GT_HEAD-VBELN.
* 取得发票及合并发票对应关系
SELECT *
FROM ZSD050_MAP
INTO CORRESPONDING FIELDS OF TABLE GT_MAP FOR ALL ENTRIES IN GT_HEAD WHERE VBELN = GT_HEAD-VBELN.
* 导出金穗Txt文件
WHEN 'EXPO'.
PERFORM FRM_EXPORT_FILE.
* 整理文件格式
PERFORM FRM_FILL_FILE.
文件名:SEPC/ERP项目试点组/自定义 开发程序技术说明书
创建人:FM 第 5 页,共 6 页