欢迎来到天天文库
浏览记录
ID:21591974
大小:25.00 KB
页数:5页
时间:2018-10-23
《应用abap语言进行生产调度日报的开发》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、应用ABAP语言进行生产调度日报的开发 摘要针对矿业公司目前应用的SAPR/3系统,简单阐述了ABAP的概念,并对调度日报程序的设计、开发过程要点以及应用效果进行了介绍。 【关键词】SAPABAP开发过程 SAPR/3是一个基于客户/服务机结构和开放系统的、集成的企业资源计划系统(ERP)软件,其功能涵盖企业的生产、销售、物料、财务等各个方面。矿业公司从2010年6月引入ERP系统以来,实施了生产计划、销售与分销、物料管理、财务管理等四个主要模块,形成了一套完整的供产销管理系统。矿业公司各矿山在地
2、域分布上比较分散,生产数据统计工作量大、及时性差、信息不全面,造成调度指挥难度大,任务重。为公司总调能及时、准确、全面地掌握各矿山的生产数据信息,合理组织生产,实现精细化管理,决定应用SAP的二次开发工具-ABAP语言开发公司生产调度日报。 1ABAP简介 ABAP是一种高级企业应用编程语言(AdvancedBusinessApplicationProgramming),是集成在SAP基础平台系统中的一种开发语言,用来进行二次开发。为客户提供定制化开发,以满足个性化需求。ABAP/4是第四代支持结构
3、化程序设计的语言。它合并了所有通常的控制结构和模块化概念。它适合生成报表,支持对数据库的操作。 2调度日报程序的设计 生产调度日报主要涉及生产消耗、生产完成、生产质检、设备运行、销售质检等数据信息。日报所需数据由三级MES系统按日或按班上传提供,在四级SAPABAP开发平台进行程序编写,从后台数据库提取数据,传给已经上载到SAP系统的EXCEL模版,执行生成总调日报功能自动生成EXCEL格式的报表。主要实现数据维护,数据汇总,数据上传,日报生成,数据上传核对查询,日报日志查询等功能。 2.1数据维
4、护功能 在三、四级均有数据维护功能的开发,实际业务中须由公司总部人员维护的在四级实现,须由矿上业务人员维护的在三级实现。实现数据的新增,修改,删除。 2.2数据汇总功能 在三?把按班计量的基础数据汇总成日数据,如碎矿处理量,粗碎设备开车时间等。 2.3数据上传功能 三级MES与SAP之间的通讯接口采用交换数据的集成中间件平台(XI),MES直接将SOAP消息发送至接口的简单对象传输协议入口,XI进行相应数据格式和内容转换,然后使用ABAPProxy将数据发送至SAP,SAP处理数据后将结果通过
5、另一个ABAPProxy接口传给XI,XI通过SOAP返回结果接口将数据传送到MES的对象传输协议入口,从而实现三四级之间的数据通讯。 数据汇总完成后,按项目编号通过三四级之间的XI接口上传至四级SAP系统数据库表,并能返回上传信息,重新上传能实现数据覆盖。 2.4日报生成功能 在SAP系统输入给定的事务代码,填入日期后,生成当日的报表。 2.5数据上传核对查询功能 根据记帐日期,项目编号,上传日期等选择条件,进行已上传数据的核对。 3调度日报程序的开发 3.1SAP数据库表的使用及建立
6、 根据实际开发需求,除了使用到一些系统原有的数据库表,还自己创建了几个数据库表表。 (1)ZTPP_SCRB:存储三级按项目编号上传的数据。 (2)AUFK:订单主数据表。 (3)MSEG:物料表。 (4)MKPF:物料凭证。 (5)AFKO:订单表头数据。 (6)ZTZD_SCRBLOG:总调日报日志表。 3.2程序开发过程 在代码编写中首先声明用到的数据表,定义数据和内表。 TABLES:ZTPP_SCRB,AUFK,MSEG. DATA:BEGINOFZPP02_ITB_PPS
7、BYXOCCURS0, G_PRJ_NO(4)TYPEC,"项目编号 BUDATLIKEZTPP_SCRB-BUDAT,"记账日期 WERKSLIKEZTPP_SCRB-PLANT,"工厂 ENTRY_QNTLIKEZTPP_SCRB-ENTRY_QNT,"数量 ENDOFZPP02_ITB_PPSBYX. 接着定义选择屏幕,以便查询者输入查询条件。 selection-screenbeginofblockblock1withframetitletext-001. parameters:
8、s_scrqlikeZTPP_SCRB-BUDATOBLIGATORY."生产日期 selection-screenendofblockblock1. 然后编写数据查询代码,最后定义输出屏幕,这里用EXCEL输出查询到的数据。 3.3开发过程中的几个要点 (1)主程序包含六个include程序,include1中声明公共变量,实现多人协作开发,互不干扰,并且子程序能使代码更易于维护。 (2)给不同的业务项目分配各自唯一的项目号,四
此文档下载收益归作者所有