ABAP编程技术与技巧总结_第1页
ABAP编程技术与技巧总结_第2页
ABAP编程技术与技巧总结_第3页
ABAP编程技术与技巧总结_第4页
ABAP编程技术与技巧总结_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.时间及日期合法性检查FUNCTION:TIME_CHECK_PLAUSIBILITY Time plausibility checkDATE_CHECK_PLAUSIBILITY Date plausibility check说明:当数据合法时SY-SUBRC返回值为0,否则返回1.2.弹出用户交互对话框:CALL FUNCTION POPUP_TO_CONFIRM EXPORTING titlebar = CHECK* DIAGNOSE_OBJECT = text_question = text text_button_1 = YES icon_button_1 = NO IMPORTI

2、NG answer = answer* TABLES* PARAMETER = EXCEPTIONS text_not_found = 1 OTHERS = 2.说明:其中text是用于显示在弹出对话框的中的文本字符.需事先设置好其值. Answer为一位字符型数据,1表示YES,2表示NO.3.根据某年某月某日得到本年本月的最后一天:call function RP_LAST_DAY_OF_MONTHS exporting day_in = sdata importing last_day_of_month = sdata exceptions day_in_no_date = 1 othe

3、rs = 2.4.传输请求:STMS(se10)选择要传输的主机名双击细节Other RequesetADD,输入需传输的Request num.刷新是登录被传输的系统查到需要传输的Request num.import Request(后面的小车)选择集团是。同一服务器不同client用scc15.建菜单:SE43N(德语登录)选择根目录(S000)修改点中间那个按钮确定选择一行,将要新建的菜单或T-CODE将会存放在所选行的下一行点小笔左边的这个小按钮6.调用其它报表中的子程序(FORM)及被调用的子程序的写法:6.1.被调用的报表中的子程序写法:REPORT report_name1.存储

4、结果的内表定义:DATA:BEGIN OF itab OCCURS 0,END OF itab.子程序定义:FORM form_name TABLES result_itab STRUCTURE itab p_itab1 STRUCTURE s_itab1 p_itabn STRUCTURE s_itabn USING parameter1 parametern.其中左边的参数中存储从调用程序传递过来的数据,通常为选择屏幕中的条件数据DATA lines TYPE i.CLEAR lines.DESCRIBE TABLES s_itab1 LINES lines.将调用程序传递过来的选择条件数

5、据复制为被调用程序对应的选择条件IF lines = 0. LOOP AT p_itab1. MOVE-CORRESPONDING p_itab1 TO s_itab1. APPEND s_itab1. ENDLOOP.ENDIF.DESCRIBE TABLES s_itabn LINES lines.IF lines = 0. LOOP AT p_itabn. MOVE-CORRESPONDING p_itabn TO s_itabn. APPEND s_itab1. ENDLOOP.ENDIF.ENDFORM.6.2 在报表中调用其它报表中的子程序:REPORT report_name2.

6、定义存储结果的内表,此内表结构与被调用报表的结果内表结构一致DATA:BEGIN OF result_itab OCCURS 0,END OF itab.PERFORM form_name(report_name1) TABLES result_itabs_itab1 s_itabnUSING parameter1 parametern说明:在这种调用方法中,报表report_name2将调用report_name1中子程序form_name.运行过程中程序将报表report_name2中参数s_itabn及parametern中的数据传递给被调用报表report_name1中的子程序form

7、_name对应的参数.子程序form_name将运行的结果存入到内表itab中,同时通过内表参数result_itab传递到调用报表report_name2中的内表result_itab中来,注意,两边的参数在结构数量顺序上必须一致.7.SD相关后台表7.1 VBFA: 销售凭证流此表记录了销售凭证流中的来源单据与后续单据两者之间的关系.销售凭证流中存在以下单据及关系:报价单销售订单采购订单发货单物料凭证(发货单发货过账时系统自动生成)发票会计凭证.主要通过以下四个字段的记录来体现单据的关联关系:VBELV:先前的销售和分销凭证POSNV:SD凭证的先前项目VBELN:后续销售和分销凭证POS

8、NN:SD凭证的后续项目另通过两个字段分别说明两张单据的种类:VBTYP_V: 先期SD凭证的凭证类别(即告诉你来源单是什么单,如销售订单C等)VBTYP_N: 后继凭证的凭证类别(即告诉你后续单是什么单,如发票,退货单h,物料凭证r等)报价单的后续单据有:销售订单,发货单,物料凭证,发票.销售订单后续单据有:采购订单,发货单,物料凭证,发票.销售订单来源单据有:报价单.采购订单后续单据有:无.采购订单来源单据有:销售订单发货单的后续单据有:物料凭证,发票.发货单的来源单据有:报价单,销售订单.物料凭证后续单据有:无.物料凭证来源单据有:报价单,销售订单,发货单.发票的后续单据有:无.发票的来

9、源单据有:报价单,销售订单,发货单.另几个重要字段说明如下:RFMNG: 参考数量以基本计量单位计算(就是指后续数量)RFWRT: 参考值(指后续单据的净价值,即不含税总价),此处为了取发货过帐成本(即销售成本),物料凭证中的发货成本与发货过帐时生成的会计凭证中的销售成本一致,此处取得即是这个值.7.2 VBRP: 出具发票:项数据(销售商品时给客户开据的发票VF03查看)POSNR:30,出具发票项目VGBEL:80024969,交(发)货单号FKLMG:3,库存单位开票量(不是己开发票数量)?NETWR:12051.28,净价值,指不含税总价KZWI1:14100.00,含税总价(界面上没

10、找到字段)?KZWI5:0,综合费用合计KZWI6:0,发票返点合计SHKZG:退货项目(X)MATNR:6102298,物料编号PRODH:产品层次,也是物料的一种分类WERKS:1000,工厂ARKTX:ZT1330/在线式测试套装,物料描述7.3 VBRK: 出具发票:抬头数据VBELN:90035087,发票编号WAERK:CNY,货币FKDAT:20080805,发票日期VKORG:1000,销售组织(机构)SPART:01,工业电子事业部,产品线KUNNR:实际来自KUNAG,1000627,售达方KNUMV:83797,单据条件数(以便从条件表KONV中取情况说明成本营业税)VT

11、WEG:11直销,分销渠道7.4 LIPS: SD凭证 : 交货: 项目数据SERAIL: 序列号参数文件(Z001:综合系列号,Z002: 综合系列号(无系列号),Z003:综合系列号(仅出库)等,不同的系列号参数对应的系列号记录在不同的后台表中)VBELN:发货单号POSNR:发货单项目号MATNR: 物料号WERKS: 工厂CHARG:批次LGMNG:发货数量LGORT: 库存地点VGBEL:参考单据的单据编号VGPOS:参考项目的项目号LIKP: SD凭证:交货抬头数据VBELN: 交货(单号)VKORG: 销售机构MKPF: 抬头:物料凭证MBLNR: 物料凭证编号MJAHR: 物料

12、凭证年度Budat: 凭证中的记帐日期MSEG: 凭证段:物料MBLNR: 物料凭证编号MJAHR: 物料凭证年度ZEILE: 物料凭证中的项目BWART: 移动类型 (库存管理)MATNR: 物料号WERKS: 工厂LGORT: 库存地点LIFNR: 供应商帐号KUNNR: 客户的帐户编号KDAUF: 销售订编号KDPOS: 销售订单中的条款数SHKZG: 借方/贷方标识T156T: 移动类型文本BWART: 移动类型 (库存管理)SPRAS: 语言代码BTEXT: 移动类型文本(库存管理)7.5 SER01: 交货单系列号的凭证抬头(发货单关联的序列号)OBKNR: 对象列表编号LIEF_

13、NR:交货单编号(发货单编号)POSNR:交货单项目当序列号参数文件为Z003时,需从此表中取得对象列表编号,再根据对象列表编号到表OBJK(设备维护对象清单)中取得序列号SERNR.SER03: 货物移动序列号的凭证抬头(物料凭证关联的序列号)OBKNR: 对象列表编号MBLNR: 物料凭证编号MJAHR: 物料凭证年度ZEILE: 物料凭证中的项目当序列号参数文件为Z001时,需从此表中取得对象列表编号,再根据对象列表编号到表OBJK(设备维护对象清单)中取得序列号SERNR.说明:对于进行序列号管理的物料,在给客户拣配发货时须给每一个物料(商品)分配一个不同的序列号.SER02: 维护合

14、同序列号的凭证抬头(SD 订单)OBKNR: 对象列表编号SDAUFNR: 销售凭证POSNR: 销售凭证项目7.6 KONV: 条件(事务数据)KNUMV: 单据条件数KPOSN: 条件项目号(采购订单或销售订单定位时须用到,这时的条件记录号取表头的值)KSCHL: 条件类型,几种常用的条件类型如下:ZHD8: 情况说明Hosic相当于回扣,由一个新的订单来承担,此订单无利润只有成本,与原订单无法关联ZHD9: 情况说明中科Hosic, 相当于回扣,由一个新的订单来承担,此订单无利润只有成本,与原订单无法关联ZPR1: 销售价格, MWSI: 销项税(后台在字段KBETR: 价格中存值170

15、)NETW: 货物价值, ZCP0: 供应商返利合计, ZHD0: 综合费用合计, VPRS: 成本, ZHA1: 零配件不含税ZHA0: 公开报价不含税ZYY1: 营业税(5%)(后台在字段KBETR: 价格存值50)ZYY2: 营业税(5%)负(23763?)以下类型是东方采购中用到的:税码为J0时CIF价格为以下类型值总和:NAVS: 不可抵扣的税金NAVM: 不可抵扣的税金FRA1: 运费 %-OIMEC(与下面的运费值一起只选两者之一)FRB1: 运费(值)OIMECFRC1: 运费/数量税码为J1,J3,J4,J6时的折扣与返利后的含税价为以下几类型值总和+BRTWR:PO货币的全

16、部订单值(含税总价):ZSD%: 特殊折扣RA01: 总价折扣 %-OIMECHB01: 抬头折扣(值)ZR02: 供应商返利OIMECRL01: 供应商折扣 %其它:ZOA1: 关税 %-OIMEC(5%,后台存值50,制单时此项与下项选其一)ZOB1: 关税值OIMEC(也可能直接填写关税金额,这时就没有ZOA1这一项了)ZZF0: 抬头杂费(值)ZHK: 代理进口货款(租赁费)($)ZZF:代垫杂费KBETR: 价格( 条件金额或百分数 )KWERT: 定价值说明:此表记录了报价单,销售订单,采购订单,发票等存在使用条件定价的单据的价格及价值数据.7.7 BSIS: 会计核算:用于总帐科

17、目的第二个索引7.8 BSEG: 会计核算凭证段7.9 VBAK: 销售凭证 : 抬头数据VBELN: 销售凭证AUART: 销售凭证类型KNUMV: 单据条件数VTWEG: 分销渠道VKBUR: 销售办事处(销售办公室)TVAKT: 销售凭证类型 : 文本AUART: 销售凭证类型BEZEI: 描述VBAP: 销售凭证:项目数据VBELN: 销售凭证POSNR: 销售凭证项目TVAPT: 销售凭证项目类别 : 文本PSTYV: 销售凭证项目类别VTEXT: 描述VBKD: 销售凭证 : 业务数据VBELN: 销售和分销凭证号POSNR: 销售和分销凭证的项目号ZTERM: 付款条件代码ZLS

18、CH: 付款方式BSTKD: 客户采购订单编号BSTDK: 客户采购订单日期BSARK: 客户采购订单类型TVZBT: 客户:条款支付文本ZTERM: 付款条件代码VTEXT: 支付条件的描述7.10 VBPA: 销售凭证(销售订单) : 合作伙伴VBELN: 销售和分销凭证号POSNR: 销售和分销凭证的项目号(有时数据为空,不知道为什么)PARVW: 合作伙伴功能(VE:销售雇员, AG:售达方, RE:收票方, RG:付款方, WE:送达方)KUNNR: 客户编号1PERNR: 人员编号PA0002: HR 主记录: 信息类型 0002(人员数据)PERNR: 人员号NACHN: 姓7.

19、11 KNA1: 客户主文件的一般数据KUNNR: 客户编号1NAME1: 名称 1NAME2: 名称 2ADRNR: 地址(对应地址表ADRC中的地址号码)GFORM: 合法状态(是否红旗客户)7.12 KNKK: 客户主数据信贷管理: 控制范围数据KUNNR: 客户编号1KKBER: 信贷控制范围KLIMK: 客户信贷限额SBGRP: 对于信贷管理的信用代表组(客户等级)7.13 ADRC: 地址 (业务地址服务)ADDRNUMBER: 地址号码NAME1: 名称 1NAME2: 名称 2CITY1: 城市POST_CODE1: 城市邮政编码STREET: 街道REGION: 地区 (州、

20、省、县)ADR2: 电话号码 (业务地址服务)ADDRNUMBER: 地址号码PERSNUMBER: 人员编号TEL_NUMBER: 电话号码: 拨区号 + 号码TEL_EXTENS: 电话号码: 分机号ADR3: 传真号 (业务地址服务)ADDRNUMBER: 地址号码PERSNUMBER: 人员编号FAX_NUMBER: 传真号: 拨号+编号FAX_EXTENS: 传真号: 分机号ADR6: SMTP 编号 (业务地址服务)ADDRNUMBER: 地址号码PERSNUMBER: 人员编号SMTP_ADDR: 电子邮件地址说明:对于存在地址的对象(如:客户KNA1,联系人等)都会有一个地址号

21、码与这些表关联.7.14 KNVK: 客户主要联系伙伴(售达方,送达方等合作伙伴的联系人)PARNR: 联系人号码(系统后台生成的一个编号)KUNNR: 客户编号1NAMEV: 名NAME1: 名称 1(联系人名称)ABTNR: 联系人部门PAFKT: 联系人功能(职务)PRSNR: 人员编号(系统后台生成的一个编号)ADRND: 业务地址(编辑了公司地址后产生的编号)ADRNP_2: 地址号码(编辑了家庭地址时产生)7.15 MARA: 常规物料数据MATNR: 物料号MTART: 物料类型(东方:供应商)MATKL: 物料组MAKT: 物料描述MATNR: 物料号SPRAS: 语言代码MA

22、KTX: 物料描述T023T: 物料组描述MATKL: 物料组SPRAS: 语言代码WGBEZ: 物料组的描述wgbez60: 长文本描述物料组说明: 在东方公司物料组编号分四段:前2位为大类,3,4位为分类,5,6位为备用位,整个编号为系列号.其中分类名,备用位名及系列号名保存在wgbez60: 长文本描述物料组中,分别用|隔开.T023: 商品类目MATKL商品类目SPART产品组WWGDA商品组参考商品 WWGPA商品组商品 ABTNR部门编号T023S: 基本商品类目/层次商品分配MATKL商品类目WWGPA层次结构商品CLINT内部分类号T134T: 物料类型描述MTART: 物料类

23、型MTBEZ: 物料类型描述7.16 TVTWT: 机构单位:分销渠道:文本SPRAS: 语言代码VTWEG: 分销渠道VTEXT: 名称TWEWT: 外部物料组的分销EXTWG: 外部物料组(业务类型)EWBEZ: 外部物料组的描述T016T: 行业名BRSCH: 行业代码BRTXT: 行业关键字的说明TBRCT: 工业代码正文(客户主文件)(子行业)BRACO: 行业代码VTEXT: 描述T171T: 客户: 销售地区: 文本BZIRK: 销售地区BZTXT: 区名T005U: 税款 :地区关键字:文本BLAND: 地区 (州、省、县)BEZEI: 描述TSABT: 联系人部门: 文本AB

24、TNR: 部门编号VTEXT: 描述TPFKT: 与合伙人联系功能: 文本(联系人职务名称)PAFKT: 联系人功能VTEXT: 描述TSPAT: 组织单位: 销售分部: 文本(产品线名称)SPART: 产品线VTEXT: 名称TVKO: 机构单位:销售机构(销售组织的公司代码数据)VKORG销售组织BUKRS销售机构的公司代码ADRNR地址EKORG采购组织EKGRP采购组 LIFNR供应商或债权人的帐号WERKS地点TVKOT: 机构单位:销售机构:文本(销售机构/组织名称)VKORG: 销售机构VTEXT: 名称TVKBT: 机构单位:销售办公室:文本VKBUR: 销售办事处BEZEI:

25、 描述8.MM相关后台表EKKO:采购凭证抬头EBELN:采购凭证号BUKRS:公司代码BSTYP:采购凭证类别BSART:采购凭证类型EKORG:采购组织EKGRP:采购组LIFNR:供应商帐号ZTERM:付款条件代码KUNNR:客户编号1AEDAT:记录建立日期BEDAT:采购凭证日期(订单签订日期)KNUMV:单据条件数(在KONV中定位时需加上EKPO中的EBELP采购凭证的项目编号)WAERS:货币代码A016: 合同项目EVRTN采购凭证号 EVRTP采购凭证的项目编号 DATBI条件记录有效截止日期DATAB条件记录有效起始日 KNUMH条件记录号(协议EKPO的项目的条件KON

26、P的连接条件)A019:合同抬头TVZBT:客户:条款支付文本ZTERM:付款条件代码VTEXT:支付条件的描述T052U: 收付条件的自身解释(一般从此表中取名称,而不是上表)ZTERM: 付款条件代码TEXT1: 收付条款的自解释(付款条件描述)EKPO:采购凭证项目EBELN:采购凭证号EBELP:采购凭证的项目编号LOEKZ:采购凭证删除标识RETPO:退货项目MATNR:物料号BUKRS:公司代码WERKS:工厂LGORT:库存地点MATKL:物料组MTART:物料类型AFNAM:需求者/要求者名称(申请人)MENGE:采购订单数量MEINS:订单单位NETPR:采购凭证中的净价格(

27、以凭证货币计)(不含税价格)NETWR:PO货币的净订单价值(不含税总价)BRTWR:PO货币的全部订单值(含税总价)EFFWR:项目的有效值KZWI1:从条件定价过程小计1(实际含税总价值)BONBA:回扣基数 1(净值含折扣)BEDNR:需求跟踪号BANFN:采购申请号BNFPO:采购申请的项目编号MWSKZ:销售/购买税代码(J0 0% 进项税,中国J1进项税17% , 中国J213% 进项税,中国J36% 进项税,中国J44% 进项税,中国J5进项税7% , 中国J6进项税3% , 中国L15% 奢侈品税,中国X00% 销项税,中国X117% 销项税,中国X213% 销项税,中国X35

28、%服务税)EKBE: 采购凭证历史(入库,发票等信息)EBELN: 采购凭证号EBELP: 采购凭证的项目编号GJAHR: 物料凭证年度BELNR: 物料凭证编号BUZEI: 物料凭证中的项目BEWTP: 采购订单历史分类(E:GR,)BWART: 移动类型 (库存管理)(101:GR)MENGE: 数量DMBTR: 按本位币计的金额WRBTR: 凭证货币金额WAERS: 货币代码KNUMV: 单据条件数BUDAT: 凭证中的记帐日期RBKP: 凭证表头:发票收据(采购发票,发票校验,供应商提供的发票)BELNR: 发票凭证的凭证号码GJAHR: 会计年度BLART: 凭证类型BLDAT: 凭

29、证中的凭证日期BUDAT: 凭证中的记帐日期XBLNR: 参考凭证号RBKPB: 发票凭证抬头 (批发票检验)RSEG: 凭证项目:收款发票BELNR: 发票凭证的凭证号码GJAHR: 会计年度LFA1:供应商主数据 (一般地区)LIFNR:供应商或债权人的帐号NAME1:名称 1ADRNR:地址(地址号码)STCD1:税号 1T024E:采购组织EKORG:采购组织EKOTX:采购组织描述BUKRS:公司代码T024:采购组EKGRP:采购组EKNAM:采购组的描述T026Z: 把采购组分配给采购区EKORGEKORGCHAR40采购组织EKGRPEKGRPCHAR30采购组 EKSGBEK

30、SGBCHAR40采购区域T026: 采购区域EKSGBEKSGBCHAR40采购区域T026T: 语言相关的采购区域SPRASSPRASLANG10语言代码EKSGBEKSGBCHAR40采购区域EKSTXBEZEI20CHAR200描述MARD: 物料的仓储位置数据MATNR: 物料号WERKS: 工厂LGORT: 库存地点LABST: 非限制使用的估价的库存UMLME: 在运库存 (从一库存地到另一库存地)INSME: 质量在检的库存SPEME: 冻结库存EQUI: 设备主数据EQUNR: 设备号MATNR: 物料号SERNR: 序列号WERK: 工厂LAGER: 库存地点EQBS: 序

31、列号库存段EQUNR: 设备号B_WERK: 工厂B_LAGER: 库存地点KUNNR: 客户帐户号LIFNR: 供应商帐号KDAUF: 销售订编号ANLA: 资产主记录段BUKRS: 公司代码ANLN1: 主资产号ANLN2: 资产次级编号ANLKL: 资产分类AKTIV: 资产资本化日期BSTDT: 资产采购订单日期SERNR: 序列号ANLB: 折旧条件BUKRS: 公司代码ANLN1: 主资产号ANLN2: 资产次级编号AFABG: 折旧计算开始日期ZINBG: 利息计算开始日期AFASL: 折旧码ANLC: 资产值字段BUKRS: 公司代码ANLN1: 主资产号ANLN2: 资产次级

32、编号GJAHR: 会计年度AFABE: 实际折旧范围ANSWL: 该年度影响资产值的业务(购买价值)BNKA: 银行主记录BANKS: 银行国家代码BANKL: 银行代码BANKA: 银行名称MAST: BOM 链接商品MATNR商品编码WERKS地点STLANBOM 用途 STLNR商品单STKO: BOM 表头STLTYBOM 类别STLNR商品单 STLAL可选的 BOMSTKOZ内部计数器STOP: BOM 项目STLTYBOM 类别STLNR商品单 STLKNBOM 项目节点号 STPOZ内部计数器IDNRKBOM 组件MENGE组件数量9.组织结构数据(组织结构相关后台表)T001

33、:公司代码BUKRS:公司代码BUTXT:公司码或公司的名称T001W:工厂/分支机构WERKS:工厂NAME1:名称BWKEY:估价范围(一般就是工厂)NAME2:名称 2EKORG:采购组织VLFKZ:工厂种类BZIRK:销售地区ZONE1:供应地区(被供应的地区)VSTEL:装运点/接收点T001K: 评估范围(公司代码的工厂数据)BWKEY评估范围(一般就是工厂)BUKRS公司代码CEPC_BUKRS:分配利润中心至公司代码KOKRS控制范围PRCTR利润中心BUKRS公司代码T005T: 国家名LAND1: 国家代码LANDX: 国家名称NATIO: 国籍USR01: 用户主记录 (

34、运行时数据)USER_ADDR: 依据地址数据的用户BNAMECHAR12用户主记录中的用户名称 NAME_FIRSTCHAR40名 NAME_LASTCHAR40姓 NAME_TEXTCCHAR80完整的人员名称10.读取文本方法:DATA: auxtdname LIKE thead-tdname, PO号 auxtline1 LIKE tline OCCURS 0 WITH HEADER LINE,po表抬头文本CALL FUNCTION READ_TEXT EXPORTING* CLIENT = SY-MANDT id = F00 language = 1 name = auxtdnam

35、e PO号 object = EKKO* ARCHIVE_HANDLE = 0* LOCAL_CAT = * IMPORTING* HEADER = TABLES lines = auxtline1 EXCEPTIONS id = 1 language = 2 name = 3 not_found = 4 object = 5 reference_check = 6 wrong_access_to_archive = 7 OTHERS = 8. READ TABLE auxtline1 INDEX 1 .”将文本内容读到表头行中本例中读取了采购订单抬头文本到内表auxtline1中。东方ID配

36、置:F00: 外商订单号, F02: 货期推迟原因, F03: 下单信息.【注】表TTXID:有效文本IDs,记录文本对象相关信息,如:VBBP: 销售 项目文件VBBK: 销售 标题文件EKKO: 购买文件标题文本EKPO: 购买文件项目文本MATERIAL: 物料主数据相关11. EKET: 计划协议计划行(此表对应采购订单中的”交货计划”页)EBELN: 采购凭证号EBELP: 采购凭证的项目编号EINDT: 项目交货日期(计划交货日期)MENGE: 计划数量12. EKKN: 采购凭证中的帐户设置EBELN: 采购凭证号EBELP: 采购凭证的项目编号VBELN: 销售和分销凭证号VB

37、ELP: 销售单据项目13. T001L: 仓储地点(库存地点)WERKS: 工厂LGORT: 库存地点LGOBE: 仓储地点的描述SPART: 产品线VKORG: 销售机构VTWEG: 分销渠道VSTEL: 装运点/接收点LIFNR: 供应商帐号KUNNR: 客户的帐户编号AGR_TCODES:将角色分配到事务代码(角色与事务关系表)AGR_USERS:分配角色到用户(角色与用户关系表)CDHDR: 更改凭证抬头CDPOS: 更改凭证项目14.小币种处理(小币种转换)CALL FUNCTION CURRENCY_CONVERTING_FACTOR EXPORTING currency = I

38、MPORTING FACTOR = EXCEPTIONS TOO_MANY_DECIMALS = 1 OTHERS = 2 .IF sy-subrc 0. MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.ENDIF.说明:SAP的数据存储是这样的: 存入:X = M * 10(N-2) 读取:Y = X * 10(2-N) M为传票交易币的金额,N为货币设置的小数点位数。日币一般为0位小数,故在表中看到是小了100倍,如果系统正常读出来,是经过处理 的,为正常,

39、如display accouting document。但是如果写ABAP去取数据,没有经过处理,是会比交易金额小100倍的;象RMB、USD 这些默认为2位小数的(没有在维护小数点位数视图里面出 现的货币都默认为2位小数)就不会有这种情况。15.将文件上传到应用服务器DATA: fname TYPE rlgrap-filename, ftype TYPE rlgrap-filetype, fsize TYPE i.DATA: DATA_TAB LIKE TABLE OF RCGREPFILE WITH HEADER LINE.CALL FUNCTION UPLOAD EXPORTING* c

40、odepage = IBM filename = c:需上传文件所在的目录初始值 filetype = BIN二进制文件* filemask_mask = *.XLS* FILESMASK_TEXT = XLS* FILETYPE_NO_CHANGE = X* SILENT = X* item = IMPORTING filesize = fsize文件大小 act_filename = fname文件所在的目录及名称 act_filetype = ftype文件类型 TABLES data_tab = data_tab.转换为二进制编码后存放的内表* EXCEPTIONS* conversi

41、on_error = 1* invalid_table_width = 2* invalid_type = 3.DESCRIBE TABLE DATA_TAB LINES LINES.CALL FUNCTION C13Z_RAWDATA_WRITE EXPORTING I_FILE = sfname 文件存放的逻辑路径,如/excel_template/ys.xls I_FILE_SIZE = fsize 文件大小 I_LINES = LINES 转换为二进制编码后存放的内表的行数 TABLES I_RCGREPFILE_TAB = DATA_TAB 转换为二进制编码后存放的内表 EXCEPT

42、IONS NO_PERMISSION = 1 OPEN_FAILED = 2 OTHERS = 3.IF sy-subrc NE 0.* MESSAGE s000 WITH UPLOAD SUCC.ENDIF.16.从应用服务器上下载文件DATA: appl_filename LIKE rcgfiletr-ftappl VALUE /excel_template/ys.xls PARAMETERS filename LIKE rcgfiletr-ftfront DEFAULT D:YSys.xls.CALL FUNCTION C13Z_FILE_DOWNLOAD_BINARY EXPORTIN

43、G i_file_front_end = filename指定下载到本地的位置及文件名称 i_file_appl = appl_filename 指定应用服务器上文件所在地址及名称 i_file_overwrite = X.17.打开EXCEL文件DATA: excel TYPE ole2_object. EXCEL objectDATA: books TYPE ole2_object. collection of booksDATA: book TYPE ole2_object. bookDATA: sheets TYPE ole2_object.CREATE OBJECT excel EX

44、CEL.APPLICATION.CALL METHOD OF excel WORKBOOKS = books.CALL METHOD OF books OPEN = book EXPORTING #1 = filename. 指定需打开的文件所在的位置及文件名称CALL METHOD OF excel WORKSHEETS = sheets EXPORTING #1 = sheet1. 指定需打开的工作表18.去掉字符串中前置的0CALL FUNCTION CONVERSION_EXIT_ALPHA_OUTPUT EXPORTING input = vpernr “如申请人编号为00023 I

45、MPORTING output = vpernr.”输出的数据将变为2319.填充EXCEL单元格(将数据输出到EXCEL指定的单元格中)DATA: cell TYPE ole2_object.CALL METHOD OF excel CELLS = cell EXPORTING 无此参数时表示选定EXCEL的所有列 #1 = i EXCEL中的第i行 #2 = j. EXCEL中的第j列SET PROPERTY OF cell VALUE = f. 将变量f的值填充到指定的单元格中20.合并单元格,设置对齐方式,设置字体是否为粗体字DATA: range TYPE ole2_object.D

46、ATA: xlfont TYPE ole2_object.CALL METHOD OF sheets RANGE = range EXPORTING #1 = A1 #2 = B1. SET PROPERTY OF range MERGECELLS = 1. 合并A1到B1的范围SET PROPERTY OF range HorizontalAlignment = -4131. 左对齐SET PROPERTY OF range HorizontalAlignment = -4152. 右对齐SET PROPERTY OF range HorizontalAlignment = -4108. 中

47、间对齐*设置是否粗体字(在上述方法中选定的单元格范围range内)CALL METHOD OF range font = xlfont.SET PROPERTY OF xlfont bold = 0. 非粗体SET PROPERTY OF xlfont bold = 1. 粗体21.增加EXCEL行项目,删除EXCEL行项目DATA: current_row TYPE ole2_object.DATA: row_select TYPE ole2_object.DATA: row_selection TYPE ole2_object.DATA: row_number TYPE ole2_obje

48、ct.CALL METHOD OF excel ROWS = current_row EXPORTING #1 = row. 指定将要处理的行CALL METHOD OF current_row SELECT = row_select.CALL METHOD OF excel SELECTION = row_selection.CALL METHOD OF row_selection INSERT = row_number. 在指定的行增加一行CALL METHOD OF row_selection DELETE = row_number. 删除指定的行22.设置EXCEL行高,内容的可见性(显示/隐藏所有/部分内容)CALL METHOD OF excel CELLS = cell. 指定EXCEL单元格CALL METHOD OF cell Entir

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论