BAPI 相关介绍资料
更新时间:2024-05-02 09:27:01 阅读量: 综合文库 文档下载
- 扒皮鱼推荐度:
- 相关推荐
BAPI—百度百科
BAPI(business application programming interface)是面向对象程序设计方法中的一组程序接口。它允许程序员通过SAP将第三方软件整合成R/3专有产品。为了完成一些特殊的商业任务,如上传交易数据等,R/3系统中内置了BAPI。 ABAP中有关BAPI的介绍
1.BAPI – business application programming interface 2.它实际上是一种特殊的Remote Function Modules (RFC)是为了提供使用外部程序来进行交易活动
3.它提供的基于企业目标(Business Object) 技术的接口应用界面 4.SAP采用了Object-oriented技术,逻辑定义了SAP R/3系统的所有功能目标,并且将所有的目标(Objects) 和BAPIs存储于企业对象库(Business Objects Repository).
5.SAP R/3 企业目标的目标类型(Object Type) 相当于目标设计语言中类(Class) 的概念,其定义结构由以下几部分组成:基本数据,接口界面,键(Key Fields),方法(Methods),特征(Attributes),事件(Events) --如何创建BAPI程序
1.定义BAPI Structure (Structure不能在BAPI中重复使用,因为一旦BAPI被释放,其Structure被冻结) 2.创建FUNCTION MODULE
每个BAPI必须有自己的Function Group,Function Group属性必须为RFC
3.创建Business Object
4.使用BAPI WIZARD创建API Method 这样BAPI可以被外部程序调用 5.Function Module符合BOR Method 4.释放BAPI Function Module, 释放Business Object Type, 释放BAPI作为BOR的一种Method
SAP BAPI
BAPI是 Business Application Programming Interface的缩写. BAPI是SAP以外程序访问SAP内部数据和程序的标准方式 ?
BAPI在SAP系统内部以Function Modulede的方式实现.所有的BAPI Function都
- 支持Remote Function Call (RFC) - 处理过程中不激活对话窗口 ?
BAPI是被定义为Business Object Repository(BOR)中的SAP Business Object类型或SAP interface类型的方法,并且以Function Module方式实现的. 这种定义和实现分离的方式是我们可以通过2中方式访问BAPI. - 通过面向对象的方法调用BOR中的BAPI - 通过RFC直接调用Function Module
FI/ BAPI 常用 收藏
——阿土的SAP专栏
总帐会计: (比较简单全部测试通过,关帐时使用)
Line item of document for ledger with summary table GL F: BAPI_GLX_GETDOCITEMS
Closing balance of G/L account for chosen year F: BAPI_GL_GETGLACCBALANCE
Closing balance of G/L account for current year F: BAPI_GL_GETGLACCCURRENTBALANCE
Posting period balances for each G/L account F: BAPI_GL_GETGLACCPERIODBALANCES
应付帐款: (比较简单全部测试通过,按照公司代码,供应商代码和起至时间来查询)
读取已清算科目行项目
F: BAPI_AP_ACC_GETBALANCEDITEMS
读取当前余额
F: BAPI_AP_ACC_GETCURRENTBALANCE
读取关键日期余额
F: BAPI_AP_ACC_GETKEYDATEBALANCE
读取未清科目项
F: BAPI_AP_ACC_GETOPENITEMS
读取科目余额
F: BAPI_AP_ACC_GETPERIODBALANCES
读取科目过帐
F: BAPI_AP_ACC_GETSTATEMENT
应收款: (比较简单,传入值,没有要求输入内表类型的;;按照公司代码,供应商代码和起至时间来查询)
确定主数据
F: BAPI_CR_ACC_GETDETAIL
确定最高催款级别
F: BAPI_CR_ACC_GETHIGHESTDUNNINGL
确定最旧的未清项目
F: BAPI_CR_ACC_GETOLDESTOPENITEM
确定 OI 结构
F: BAPI_CR_ACC_GETOPENITEMSSTRUCT
确定贷方帐户的信用状态
F: BAPI_CREDIT_ACCOUNT_GET_STATUS
BAPI: 取余额项目: 客户
F: BAPI_AR_ACC_GETBALANCEDITEMS
BAPI: 取实际余额: 客户
F: BAPI_AR_ACC_GETCURRENTBALANCE
BAPI: 取关键日期余额: 客户
F: BAPI_AR_ACC_GETKEYDATEBALANCE
BAPI: 取未清项: 客户
F: BAPI_AR_ACC_GETOPENITEMS
BAPI: 取余额: 客户
F: BAPI_AR_ACC_GETPERIODBALANCES
BAPI: 取科目报表: 客户
F: BAPI_AR_ACC_GETSTATEMENT
读取客户销售范围
F: BAPI_CUSTOMER_GETSALESAREAS
银行会计:
取消支付请求
F: BAPI_PAYMENTREQUEST_CANCEL
支付请求的创建
F: BAPI_PAYMENTREQUEST_CREATE
列出支付请求
F: BAPI_PAYMENTREQUEST_GETLIST
支付请求状态的确定
F: BAPI_PAYMENTREQUEST_GETSTATUS
过帐预制凭证请求
F: BAPI_PAYMENTREQUEST_POST
批准支付的支付请求
F: BAPI_PAYMENTREQUEST_RELEASE
开始支付的支付请求
F: BAPI_PAYMENTREQ_STARTPAYMENT
资产全计核算
更改资产
F: BAPI_FIXEDASSET_CHANGE
创建资产
F: BAPI_FIXEDASSET_CREATE
使用值创建资产 (初始历史遗留数据传输) F: BAPI_FIXEDASSET_OVRTAKE_CREATE
资产的明细信息
F: BAPI_FIXEDASSET_GETDETAIL
选定资产的信息
F: BAPI_FIXEDASSET_GETLIST
检查资本记帐
F: BAPI_ASSET_POSTCAP_CHECK
记帐资本总额
F: BAPI_ASSET_POSTCAP_POST
检查资产报废
F: BAPI_ASSET_RETIREMENT_CHECK
记帐资产报废
F: BAPI_ASSET_RETIREMENT_POST
检查资产购置
F: BAPI_ASSET_ACQUISITION_CHECK
记帐资产购置
F: BAPI_ASSET_ACQUISITION_POST
特殊用途分类帐:
特殊目的分类帐: 选择科目的总计记录 F: BAPI_SL_GETTOTALRECORDS
总帐科目
检查总帐科目是否存在
F: BAPI_GL_ACC_EXISTENCECHECK
总帐科目明细
F: BAPI_GL_ACC_GETDETAIL
每个公司代码总帐科目的清单 F: BAPI_GL_ACC_GETLIST
会计核算--会计接口
会计核算:冲销凭证
F: BAPI_ACC_ACT_POSTINGS_REVERSE
会计:核算冲销
F: BAPI_ACC_DOCUMENT_REV_CHECK
会计: 过帐凭证
F: BAPI_ACC_DOCUMENT_POST
会计:过帐冲销
F: BAPI_ACC_DOCUMENT_REV_POST
会计:总帐科目记帐
F: BAPI_ACC_GL_POSTING_CHECK
会计: 检查一般总分类帐科目过帐的冲销 F: BAPI_ACC_GL_POSTING_REV_CHECK
会计:总帐科目记帐
F: BAPI_ACC_GL_POSTING_POST
会计核算: 过帐一般总帐过帐冲销 F: BAPI_ACC_GL_POSTING_REV_POST
会计销售订单
会计:检查销售订单
F: BAPI_ACC_SALES_ORDER_CHECK
会计:记帐销售订单
F: BAPI_ACC_SALES_ORDER_POST
会计核算:冲销凭证
F: BAPI_ACC_ACT_POSTINGS_REVERSE
会计: 过帐票据凭证冲销 (OAG: LOAD RECEIVABLE) F: BAPI_ACC_BILLING_REV_POST
会计: 检查货物移动 (OAG: POST JOURNAL) F: BAPI_ACC_GOODS_MOVEMENT_CHECK
本文来自CSDN博客,转载请标明出处:
http://blog.csdn.net/chfeijj/archive/2008/09/09/2906112.aspx
SAP 事务码 描述(中英文) 收藏 事务码 描述(中英文)
SM01 Lock transactions 锁定事务
BCHK DE example (SAP tournaments) DE举例(SAP竞赛) FAX1 BC sample SAP DE 2.1 BC 示例 SAP DE 2.1
FAX2 BC sample 2 SAP DE 2.1 BC样品 2SAP DE 2.1 SFAX BC Sales BC销售 ST01 System Trace 系统轨迹
ST11 Display Developer Traces 开发轨迹显示
STDA Debugger display/control (server) 调试 显示/控制 (服务器) STDC Debugger output/control 调试 输出/控制
STDU Debugger display/control (user) 调试 显示/控制 (用户) @@D Debugger -> Documentation 调试程序 -> 文档 @@E Debugger -> ABAP Editor 调试程序 -> ABAP 编辑器
@@O Debugger -> Repository Browser 调试程序 -> 仓库浏览器 @@S Debugger -> Screen Painter 调试程序 -> 屏幕制作器 ICON Display Icons 显示图标
SAMT ABAP Program Set Processing ABAP 程序集处理 SICK Installation Check 安装检查
SLIN ABAP: Extended Program Check ABAP: 扩展程序检查 SM28 Installation Check 安装检查
SM58 Asynchronous RFC Error Log 异步 RFC 错误日志
SM59 RFC Destinations (Display/Maintain) RFC终点(显示/维护)
SMT1 Trusted Systems (Display <-> Maint.) 信赖系统 (显示 <-> 维护) SMT2 Trusting systems (Display <->Maint.) 信任系统 (显示 <->维护) SSMT Modification 2.2 --> 3.0 修改 2.2 --> 3.0
ST22 ABAP/4 Runtime Error Analysis ABAP/4 运行时错误分析
SUB% Internal call: Submit via commnd fld 内部调用: 通过命令 fld 提交 SYNT Display Syntax Trace Output 显示语法跟踪输出 SE33 Context Builder 环境生成程序
SE30 ABAP Runtime Analysis ABAP 实时分析
LOPI LOOP AT internal ABAP table 内部 ABAP/4 表格中的循环 LOPJ LOOP AT internal ABAP table 内部 ABAP/4 表格中的循环 RJ10 Test Batch Input (large) 测试批输入(大量) RJ11 Test Batch Input (large) 测试批输入(大量) SHDB Record batch input 记录批输入 SM35 Batch Input Monitoring 批输入监控 CLJP Specify Japanese calender 指定日语日历
SE73 SAPscript font maintenance (revised) SAPscript 字体维护(修订的) SE74 SAPscript format conversion SAPscript 格式转化 SE75 SAPscript Settings SAPscript 设置
SE76 SAPscript: Form Translation SAPscript: 翻译格式 SE77 SAPscript Translation Styles SAPscript 翻译样式 SO10 SAPscript: Standard Texts SAPscript:标准文本 SE71 SAPscript form SAP脚本格式 SE72 SAPscript styles SAPscript 样式
SARP Reporting (Tree Structure): Execute 报表(树结构):执行 SART Display Report Tree 显示报表树
SERP Reporting: Change Tree Structure 报表:修改树结构 SA38 ABAP reporting ABAP 报表
SA39 SA38 for Parameter Transaction SA38为参数传送 SAR0 Display Standard Reporting Tree 显示标准报告树 SC38 Start Report (Remote) 启动报表程序(远程)
SE32 ABAP/4 Text Element Maintenance ABAP/4 文本元素维护 SM38 Queue Maintenance Transaction 队列维护事务 SRCN Delete country-specific reports 删除指定国家报表 SQ00 ABAP/4 Query: Start Queries ABAP/4 询问: 开始询问 SQ01 ABAP/4 Query: Maintain Queries ABAP/4 询问: 维护询问
SQ02 ABAP/4 Query: Maintain Funct. Areas ABAP/4 查询: 维护功能区 SQ03 ABAP/4 Query: Maintain User Groups ABAP/4 查询: 维护用户组 SQ07 ABAP/4 Query: Language Comparison ABAP/4 查询:语言比较 SE11 ABAP/4 Dictionary Maintenance ABAP/4 字典维护 SE12 ABAP/4 Dictionary Display ABAP/4 字典显示 SE80 Repository Browser 资源库浏览器 SE81 Application Hierarchy 应用层次 SE82 Application Hierarchy 应用层次 SEU Repository Browser 资源库浏览器
SE39 Splitscreen Editor: Program Compare 分屏编辑器: 程序比较 SE38 ABAP Editor ABAP 编辑器
SE40 MP: Standards Maint. and Translation MP:标准维护和翻译 SE41 Menu Painter 菜单制作
SE43 Maintain Area Menu 保持区域菜单
本文来自CSDN博客,转载请标http://blog.csdn.net/chfeijj/archive/2007/10/24/1842094.aspx
关于BAPI
(2007-06-11 15:41:33)
出处明:
1 BAPI的优点 bapi是面向对象的设计; bapi是固定的,一般不能修改;
bapi可以被sap内部部件和非sap程序使用; bapi的成功和错误信息始终通过RETURN返回; bapi可以被许多开发平台使用; 2 何时该考虑使用BAPI设计程序
用VB/JAVA?C++等语言编写非SAPGUI程序访问和处理sap数据; SAP不同部件之间通讯;
与非sap程序或者老系统交换数据: 使用异步通信分发数据如:ALE
可以通过SAP Business Connector or Internet Application Components 与因特网程序集成;
3 关于RETURN
RETURN用于BAPI返回错误和成功的消息,它可以是
BAPIRETURN,BAPIRETURN,BAPIRET1,BAPIRET2和BAPIRET2_FIX中的一种类型.这些结构一般都包括以下字段:
TYPE CHAR 1 S= success message E = error message W = warning message I = information message A = termination message (abort) ID CHAR 20 Message ID The structure BAPIRET2 takes into account the name space extension for the message class as of Release 4.0. If you want messages to be compatible with earlier R/3 Releases, use the message classes before Release 4.0. NUMBER MESSAGE NUMC 3 CHAR 220 Message number Full message text from the message table. All variables (in fields Message_V1 to Message_V4) have been replaced with text. MESSAGE_V1 MESSAGE_V2 MESSAGE_V3 MESSAGE_V4 CHAR 50 Fields for the variable texts of the message
4 BAPI的程序框架 Log on
(Source code) Call BAPI (Source code) Call BAPI (Source code)
Call BAPI BapiService.TransactionCommit() (Source code) Call BAPI (Source code) Call BAPI (Source code)
Call BAPI BapiService.TransactionCommit() (Source code) Log off 5 相关函数
'BALW_BAPIRETURN_GET2':取生成返回消息 CALL FUNCTION 'BALW_BAPIRETURN_GET2' EXPORTING TYPE = 'E' CL = 'BC_BOR'
SORT it_payroll-inter-rt BY lgart ASCENDING.
LOOP AT it_payroll-inter-rt INTO st_payroll WHERE lgart = '1001'. \基础工资 it_tab-paym = it_tab-paym + st_payroll-betrg. ENDLOOP.
LOOP AT it_payroll-inter-rt INTO st_payroll WHERE lgart = '1002'. \岗位工资 it_tab-paym = it_tab-paym + st_payroll-betrg. ENDLOOP.
LOOP AT it_payroll-inter-rt INTO st_payroll WHERE lgart = '1003'. \房贴 it_tab-paym = it_tab-paym + st_payroll-betrg. ENDLOOP.
LOOP AT it_payroll-inter-rt INTO st_payroll WHERE lgart = '1004'. \车贴 it_tab-paym = it_tab-paym + st_payroll-betrg. ENDLOOP.
LOOP AT it_payroll-inter-rt INTO st_payroll WHERE lgart = '1004'. \书报费 it_tab-paym = it_tab-paym + st_payroll-betrg. ENDLOOP.
MODIFY it_tab.
IF it_tab-slmax <> it_tab-slmin.
it_tab-avem = ( it_tab-paym - it_tab-slmin ) / ( it_tab-slmax - it_tab-slmin ). ENDIF.
MODIFY it_tab.
* “现薪资”-“所属职级最低薪资”)/(”所属职级最高薪资”-“所属职级最低薪资”)
ENDLOOP.
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chfeijj/archive/2009/09/11/4542618.aspx
BADI 收藏
BADI作为SAP的第三代用户出口,他的应用也越来越广泛,但如何找到合适的badi是许多abap程序员的困惑。我这里就介绍一下我个人的应用的经验,供大家参考。
1、badi对象的信息存储在SXS_INTER, SXC_EXIT, SXC_CLASS 和SXC_ATTR 这四个表中(参见SECE包);
2、sap程序都会调用cl_exithandler=>get_instance来判断对象是否存在,并返回实例;其实get_instance就是对上述几个表和他们的视图(V_EXT_IMP 和 V_EXT_ACT)进行查询和搜索。
3、基于这个机理,我查用ST05来监控一个TCODE来跟踪,然后选择查找有关上述几个表和视图的操作,就可获得相关BADI。
4、se18 查找接口,se19 实现接口就可以实现用户增强。 示例:用LE_SHP_DELIVERY_PROC控制跨月Cancel
METHOD IF_EX_LE_SHP_DELIVERY_PROC~CHANGE_DELIVERY_HEADER . data : thismonth(2) type c.
data : wa_likp type line of SHP_LIKP_T.
data : wa_log type line of SHP_BADI_ERROR_LOG_T. clear ct_log[],thismonth.
thismonth = sy-datum+4(2). \這一個月的月份 loop at it_xlikp into wa_likp.
check IS_V50AGL-WARENAUSG_STORNO ='X'.\代表作GI cancel if wa_likp-WADAT_IST+4(2) < thismonth. wa_log-VBELN = cs_likp-vbeln. wa_log-MSGTY = 'E'. \錯誤訊息
wa_log-MSGID = 'ZDN_ERROR'. \這一個class要自己建 wa_log-MSGNO = '001'.
append wa_log to ct_log. \寫入 endif. endloop.
ENDMETHOD.
BADI的实现步骤。
A.BADI定义
1.SE18。
2.输入要创建的BADI的名字,点击\。
3.输入BADI的描述性文本,在\选项卡上输入接口的名字,也可以采用SAP建议的接口的名字。同时,BADI类也会被创建。
例如:对于BADI \,SAP会建议\作为接口的名字,\作为类的名字。
4.保存BADI。
5.双击接口的名字,会跳转到Class Builder界面,在这里你可以定义接口的方法。
6.保存并激活接口。
B.在应用程序中调用BADI
1.声明一个BADI接口的参考引用变量。
例如:DATA exit_ref TYPE REF TO zif_ex_test.
2.调用类CL_EXITHANDLER的静态方法GET_INSTANCE,将返回一个请求对象的实例。
例如:
CALL METHOD CL_EXITHANDLER=>GET_INSTANCE CHANGING instance = exit_ref。
3.现在你可以调用BADI的所有方法了
C.BADI实现
1.SE19。
2.输入BADI实现的名字,点击\。
3.输入BADI定义的名字。
4.输入实现的描述性文本,在\选项卡上输入实现类的名字。可以采用SAP建议的名字。
例如:\,SAP会建议\。
5.保存实现。
6.双击某一方法名会跳转到Class Builder界面,在这里你可以添加代码来重定义接口方法。
7.激活实现。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chfeijj/archive/2008/04/01/2235159.aspx
正在阅读:
BAPI 相关介绍资料05-02
温州晚报报导娄绍昆---温州娄氏父女de“经方奇缘”05-30
第三届创业板发审委委员基本信息10-10
教学设计之《猫》教案2猫郑振铎教案一等奖01-08
设计质量保证措施11-27
脑卒中评定量表 - 图文09-10
线性代数1-5章习题04-12
嵌入式系统0(课程概述)05-18
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 相关
- 介绍
- 资料
- BAPI
- (考前冲刺必备)高考化学 不可不知的60大考点 考点13 分子间作
- 政府与事业单位分录题
- ORACLE AWR报告详细分析
- 2015-2016学江苏省无锡市年高一下学期期末考试 语文
- 2015陕西省高考语文试卷试题及答案
- 工业重防腐涂料项目可行性研究报告立项格式范文
- 小说叙事视角公开课
- 《数控机床与编程》实验指导书 - 图文
- 蔡昔琼四柱函授资料第3期+48页
- 美羚羊奶营销策划方案
- 部编人教版语文 三年级下册 全册目录+编写说明+单元介绍 22
- 游戏策划笔试题
- GJB9001C-2017标准及内审员培训考试题答案合计五套
- 软件工程(第五版)--习题及答案
- 微机原理与接口技术 - 56789课后题答案 - 图文
- 最新部编版小学六年级语文小升初毕业考试试题(共6套,含参考答案)
- 法理笔记
- 牛仔服饰的美学探析
- 供给侧改革调整政策改革参考答案
- 交运时间歌诀对改运很重要