【摘 要 】SAP系统是最知名的ERP软件,也是最具代表性的ERP软件.SAP系统的客户主要为各行业的大中型企业.在一个企业内实施和应用SAP系统包括一系列非常复杂的流程.虽然SAP系统本身提供了一些企业管理所需要的基础功能模块,但更重要的是根据企业用户的具体业务流程和自身业务需要,在原始模型基础上对系统进行各种各样的写作开发和功能增强.本文描述以SAP作为程序的开发平台,通过SAP_ABAP语言、SAP_ARTFORM技术在系统财务模块中写作开发了满足企业需要的会计凭证打印程序.
【关 键 词 】写作开发;SAP_ABAP;SAP_ARTFORM;会计凭证打印
1.引言
会计凭证是SAP系统财务模块中不可缺少的一部分,但是SAP财务模块里面标准的会计凭证打印程序不能满足企业财务具体业务流程与需求,因此需要在原始标准财务模块基础上对系统进行写作开发功能增强.
2.功能需求及程序设计
2.1基本功能需求
按照本企业会计凭证打印格式在SAP财务模块中实现会计凭证的查询和显示,并按要求打印会计凭证.以用户权限的公司代码为标准,授权用户可以按公司代码、期间、凭证范围为选择标准,从SAP中运行该报表打印输出.
2.2流程设计图
2.3代码编写与实现
屏幕输入显示核心代码如下:
* <声明选择屏幕> Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-001. SELECT-OPTIONS: S_BUKRS FOR BSEG-BUKRS NO INTERVALS NO-EXTENSION OBLI GATORY,
S_GJAHR FOR BSEG-GJAHR NO INTERVALS NO-EXTENSION OBLIGATORY,
S_ZHSDW FOR ZHSDW NO INTERVALS NO-EXTENSION OBLIGATORY,
S_CPUDT FOR BKPF-CPUDT,
S_BUDAT FOR BKPF-BUDAT,
S_ZGDPZ FOR ZTFI001-ZGDPZ NO INTERVALS NO-EXTENSION,
SELECTION-SCREEN END OF BLOCK A1.
INITIALIZATION.
*--------------------------------------------------------------------
上述代码主要完成屏幕信息的定义与提取:
1、除“会计年度”“金额”是手工输入外,其他信息数据均可以在系统中选择输入;
2、“会计科目”“供应商”“客户”输入需要区分公司代码,从系统中选择输入;
3.可以通过抬头文本模糊查询;
4.可以通过金额范围查询,比如输入1000到2000 会将这个金额下的所有凭证查询到.
查询结果显示核心代码如下:
*调用ALV函数显示数据
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING I_CALLBACK_PF_STATUS_SET 等于 'SET_PF_STATUS'
I_CALLBACK_USER_COMMAND 等于 'USER_COMMAND'
I_CALLBACK_PROGRAM 等于 L_REPID
IS_LAYOUT 等于 LW_LAYOUT IT_FIELDCAT 等于 LT_FIELDCAT[] TABLES
T_OUTTAB 等于 IT_DISPLAY
EXCEPTIONS
PROGRAM_ERROR 等于 1
OTHERS 等于 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MS1 SY-MS2 SY-MS3 SY-MS4.
ENDIF.
ENDFORM.
以上代码通过标准函数直接调用SAP_ALV显示查询到的会计凭证,这节省了写代码的时间.并且具有用户接口功能,用户可以选择自己需要的字段对数据进行统计分类或者排序操作,并能对输出会计凭证结果进行筛选和过滤,用户还可以按照自己的需求调整列表各栏的顺序和显示格式等.
最终将需要的会计凭证打印出来是本写作开发的关键,所有的凭证打印都有严格的格式要求,SAP中打印格式的设计师通过ART-FORMS来实现的,ART-FORMS中使用定义页、窗口、段落格式、字符格式,以及编写相应的代码来实现精确的打印功能.
在ART-FORMS中通过”页”设置定义新的页面,在页面中根据需要定义一个或多个“窗口”并对窗口的大小和位置进行设置.设置完成后,打印出来的凭证整体格式就确定下来了,接着就要对每一个窗口中数据输出格式进行定义,即段落格式定义.
段落格式的定义就确定了输出数据的字体类型、字体大小、输出位置、对齐方式等.
3.结束语
随着SAP系统被逐渐广泛应用于各大企业,针对企业用户具体业务流程与需要而对系统进行写作开发和功能增强获得了越来越多企业领导者以及程序开发人员的重视.本文中使用SAP_ABAP语言,SAP_ARTFORMS技术在企业财务模块中实现了会计凭证打印的需求,具有良好的人机界面,操作简单使用方便,满足业务流程功能需求,且使用效果良好.企业的需求是随着市场环境的需求不断进行变化调整的,所以对于系统的写作开发与增强也必将在未来进行不断的修订与升级.