![财务凭证的替代_第1页](http://file4.renrendoc.com/view8/M03/2D/09/wKhkGWcMcYOAdujGAAI73wKmQRQ919.jpg)
![财务凭证的替代_第2页](http://file4.renrendoc.com/view8/M03/2D/09/wKhkGWcMcYOAdujGAAI73wKmQRQ9192.jpg)
![财务凭证的替代_第3页](http://file4.renrendoc.com/view8/M03/2D/09/wKhkGWcMcYOAdujGAAI73wKmQRQ9193.jpg)
![财务凭证的替代_第4页](http://file4.renrendoc.com/view8/M03/2D/09/wKhkGWcMcYOAdujGAAI73wKmQRQ9194.jpg)
![财务凭证的替代_第5页](http://file4.renrendoc.com/view8/M03/2D/09/wKhkGWcMcYOAdujGAAI73wKmQRQ9195.jpg)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
小技巧财务凭证的替代(Substitution)和Validation不同白是,Validation 只做检测,一般不做相应数据的修改 ,Substitution弥补了这反面的缺陷,它和userexit 结合将方便用户编写更复杂的逻辑。注意的是,如果Substitution 使用Userexit在程序中只做检查而不替代内容,此时,Substitution可以完全取代Validation。简单地讲,替代就是在会计凭证生产时 (包括手工和自动过帐) 允许用户根据需求对凭证抬头和凭证行项目进行一定的内容修改, 这种灵活的功能可以满足一些非常变态的需求, 要不怎么说SAP什么东西都能轻易配置出来呢?比如国内很多企业都要求会计凭证有个文本摘要可对某些自动凭证根据规则写入一些文本摘要,或修改凭证的利润中心,功能范围等,同样,理论上讲, SAP系统几乎允许你修改会计凭证的任何内容,甚至包括会计科目, SAP一直强调科目没有级别,对自动科目设置非常严谨,所以修改会计科目通常发生在自动过帐时人工无法干预科目的情况,典型的是MIRO时科目只能对应供应商主数据科目, 如果一个供应商发票校验需要对应应付或其他应付,系统就无法自动实行,就可采用科目替代。替代Tcode:OBBHAP/AR/GLDoc.OACJAMCreateAssetsOA02MasschangeAssetsGCVGlobalSubstitution(InSPL,CompanyLevel)GCVLocalSubstitution(InSPL,CompanycodeLevel).GGB1各模块全部替代%CDCopyEntiyQDeleteentry口SLtistituticnDRuleSubstitutions口Financialacoounting◎®Documentheader▼©Lineitemp口ApoouaiBd%CDCopyEntiyQDeleteentry口SLtistituticnDRuleSubstitutions口Financialacoounting◎®Documentheader▼©Lineitemp口ApoouaiBdStepOQl守DStep002邓Prerequsl1/6Step003邓Prerequrlte:%substitutionsC口Step004口OStep005。口Step006t>□StepL□StepDOBSubstitutionAP00001002PrerequElteEKPF-BLART='AF'ANDEKFF-EUKRS=T鸵炉ANDEEEC-HKORT”T502020000’ANDESEC-HKOWTESEC-HKONT<=J15020600Q0J)OR=,4100160000f)|Substitutions(Ifprerequisiteismet)片sLtostitutedby;Constant¥丸日计提本月折旧按照国内很多企业的内部制度, 所有的会计凭证都需要文本摘要并且多数凭证要打印出来存档,对于很多自动凭证却并不能产生文本摘要, 此时可以使用替代塞一个文本进去, 有的企业连ERP系统产生的特有的中间凭证也打印,真是不掀嫌浪费纸张。图1是一个文本摘要的例子,和Validation不同的是,Substitution只有两步骤,图1表示的是如果凭证类型是折旧 AF,并且科目是累计折旧类科目或折旧费用科目,则文本摘要为“计提本月折旧“。图1中建立Substitution和建立Validation 步骤一样。到目前为止,我们发现Validation和Substitution建立都非常简单,只要有简单逻辑思维的用户不需要任何编程经验拖拖拽拽就可以实现功能,国内的 ERP设计者应该好好借鉴借
Coding。(BSEG-SGTXT写,如果有这样的鉴,Coding。(BSEG-SGTXT写,如果有这样的业务背景:假设在公司代码5100中,如果发生业务招待费,则在其行项目文本摘要字段入信息“业务招待费”以做统计。同时,在公司代码5100的期初,会将一些调整凭证或月结凭证过帐到上期间业务,无论用户输入上期间的任何一天, 替代将自动将上期间的凭证的过帐日期换成上期间最后一天。参考步骤如下:(1).自定义的替代程序(Tcode:GCX2)ChangeView"Client-SpecificUserExitsinFISLOverview步NewentriesT3Ei哈国围凡ApptareaEx^proq,ApplicatiionareaGBLRRGGBR000Val/sub:Exitsrules: 图2i(GELS"jZRGGBSOOVal/sub;ExitsforsubstitutionGERURCLVU000Rollup:UserexitsRGIVUOOOVariablefieldmovementKROURKROUOOOCstctrsummariztn:Userexits1LCEALC:GesBerSUbstitutioriJLCTT.C:TransTypeSubstitution最好Copy系统默认的程序出来修改,起码不要申请 AccessKey!App.Area 选才GGBLS输入Copy出来的自定义程序ZRGGBS00B定义的程序名称最好不超过 8位,系统只能显示程序名的前8位。(2)。建立替代步骤(Tcode:OBBH)建立一个替代的Step包括先决条件和替代内容,如图3,你可选择一个替代字段,表示替代这个字段的内容,在此选择"Onlyexit”,表示使用用户出口编写程序来替代。
(3).剖析替代用户出口程序 ZRGGBS00(Tcode:SE38).用户出口程序ZRGGBS0价析.究竟自定义的Form例程是fieldexit,headerexit,lineexit 或completeexit有系统参数c_exit_param_none,c_exit_param_field和c_exit_param_class决定。通常用户可以看至U替代出口程序如下(粗体部分):exits-name='U100'.exits-paramexits-name='U100'.exits-param=c_exit_param_none.exits-title=text-100.APPENDexits.exits-name='U101'.exits-param=c_exit_param_field.exits-title=text-101.APPENDexits.exits-name='U900'.exits-param=c_exit_param_class.exits-title=text-900.APPENDexits.“能用在Fieldexit,onlyexit 等任何地方”此Form只用于字段出口Fieldexit“U801只能在completedoc才可使用.* 可以对着Copyt曾加自定义的例程REFRESHETAB.LOOPATEXITS.ETAB=EXITS.APPENDETAB.ENDLOOP.增加一个例程就5个简单步骤:Exits-name= '****'表示出口例程名称。exits-param= '***'只有c_exit_param_none/field/class3种,表示例程的用法exits-title='***'例程的抬头显示APPENDexits.表示增加该出口例程。接下来定义一个例程 Form****/endform. 在例程中编写替代逻辑。接下来根据业务背景编写逻辑 ,假设使用Form100,其类型c_exit_param_none,可用于“OnlyExit”,参考代码如下表:FORMU100.DATA:Z_PSTDATETYPESY-DATUM,Z_CURPERLIKET009B-POPER,Z_CURYEARLIKET009B-BDATJ,Z_PSTPERLIKET009B-POPER,Z_PSTYEARLIKET009B-BDATJ,Z_PERLSTDAYLIKESY-DATUM.Ifbseg-hkont= '这填写您的业务招待费科目‘ ^BSEG-SGTXT='业务招待费,."For业务招待费用文本摘要.Endif.如果期初发生上期的财务凭证过帐 ,则自动将过帐日期一律调整为上期期末最后一天 .*checkpostingdate'speriodandfiscalyearCALLFUNCTION'DETERMINE_PERIOD'EXPORTINGDATE =BKPF-BUDATVERSION ='Z1'" 你的会计年度变式,国内多是K4IMPORTINGPERIOD =Z_PSTPERYEAR =Z_PSTYEAR.*checksysdate'speriodandfiscalyearCALLFUNCTION'DETERMINE_PERIOD'EXPORTINGDATE =SY-DATUMVERSION ='Z1'"FiscalYearVar.IMPORTINGPERIOD =Z_CURPERYEAR =Z_CURYEAR.能否在输入的postingdate记帐让系统去判断.CHECKZ_CURYEAR<>Z_PSTYEARORZ_PSTPER<>Z_CURPER.如postingdate不在本期间得到其期间最后一天Z_PSTPER=Z_PSTPER+1.CALLFUNCTION'FIRST_DAY_IN_PERIOD_GET'EXPORTINGI_GJAHR =Z_PSTYEARI_PERIV='Z1'I_POPER =Z_PSTPERIMPORTINGE_DATE=Z_PERLSTDAY.无论用户选择过帐到上期哪一天 ,都将过帐日期设置为最后一天BKPF-BUDAT=Z_PERLSTDAY-1.BKPF-MONAT=ZPSTPER.通过上面的业务我们可以看到,替代+用户出口能实现更复杂的业务 ,而这些业务通常是简单的拖拽实现不了的,再举一个典型的有用的替代实例。业务背景:在SAP中,供应商主数据的科目只有一个比如通常设置的是应付帐款, 在SAP中,科目和中国传统会计不一样,其科目是不强调层级的, 比如应付帐款,国内ERP可能会带供应商项目等几个核算项目,SAP采用另一种方式,它将供应商直接看成明细科目,从其主数据自动带出应付帐款,如果还需要区分是什么项目的应付,则可采用统计内部订单或特殊总帐标志,但是,在后勤发票校验(Tcode:MIRO时却不能使用特殊总帐标志。这样,比如企业从同一供应商购买生产用材料 (对应普通应付帐款)和项目材料(对应应付项目款)且需要从会计科目上就直接区分时两种应付时就有点小麻烦。一般的思路有这么些:I.因为同一供应商主数据中只能有一个科目又不能特殊总帐标志, 建议拆分成多个虚拟供应商来对应不同科目,此法严重违反编码唯一性原则,贼笨。II.会计科目还是使用同一个应付帐款科目 ,附加一个字段比如文本/参考字段来区分同一供应商的不同应付,假设供应商还承包了你的在建项目有涉及应付劳务 ,如果仅用一个文本区分不严谨,也没有从科目上直接区分那样直观。III.使用科目替代方式解决,直接从科目上区分不同应付款。参考步骤如下:a.SE16:V_T053定义行文本标志,其中 ZNOR:MIRO普通应付和ZPSC:MIRO项目应付。b.建立特殊总>帐标志9表示应付项目款,并设置好应付项目款会计科目。c.使用Onlyexit出口替代,这样使用替代就直接从科目上就区分出了应付帐款类型,参考代码如下表(参考使用,责任自负):FORMU100.DATA:IWA_T074LIKET074,I_ANS(1)TypeC.Check(SY-Tcode='MIRO'ORSY-Tcode='MR8M')andBSEG-KOART='K'. “检查是否为发票校验事务condensebseg-sgtxt.判断用户必须输入文本摘要而且MIRO/MR81M•只能是ZNOR口ZPSCifbseg-sgtxt<>'MIRO 普通应付’andbseg-sgtxt<>'MIRO 项目应付’.messageE001(00)with'ChooseZNORorZPSC'.endif.如果文本输入应付项目款则从特殊总帐配置中读取应付项目款项目替代应付帐款ifbseg-sgtxt='MIRO项目应付'.I_ANS='9'." 特殊总帐标志9表示应付项目款SELECTSINGLE*INTOIWA_T074FROMT074WHEREKTOPL='INT'ANDKOART='K'ANDUMSKZ=I_ANSANDHKONT=BSEG-HKONT.IFIWA_T074-HKONTNESPACE.BSEG-HKONT=IWA_T074-HKONT."特殊总帐科目BSEG-UMSKZ=I_ANS." 特别总帐标示BSEG-UMSKS='A'." 特别总帐事务类型, A,WOSAP高度集成替代必须考虑其它模块影响,替代同时也替代特殊总帐的计划层次。BSEG-FDLEV=IWA_T074-EBENE." 特殊总帐计划层次,如果启动CBMBSEG-BSCHL+1(1)='9'." 记账码的第一码
ENDIF.endif.endform.为什么你的替代不起作用?替代不起作用通常有两个原因:一.系统默认不允许你替代该字段内容。SAP将所有的允许字段替代关系维护在 GB01表中,如果该表中没有出现你的替代字段,你是不能替代的,比如会计科目BSEG-HKONT常是不允许替代的,你就需要在此表增加。二.替代程序需要重新自动编译。在一些特殊情况下,你发现你的Validaton和Substitution 都不起作用了,SE38运行程序RGUGBR00|RGUGBR00W能选的项目全选上手工重新编译就行。替代如何工作?相关表格:GB011T001Q|T80D|GB031GB03T|GB311GB31T||GB9071GB901GB921GB9221GB901|OXT_GENOBJDTL|相关函数和程序:FI_SUBSTITUTION_ACTIVE|FI_SUBSTITUTION_DOC||FI_SUBSTITUTION_HEADER|FI_SUBSTITUTION_ITEM|GBTDMFI0|GBTDMFIJ|RGUGBR00|RGUGBR00|GBTDMFIJ|GBTDMFIG|MF05AIENJ,■』唱 1F06AIEKJ *J& WNRLineIteL I客stwedtnXB5EC 1* headrr dataLestoredinXBKPF for othtrheader5.EveryGLLineIt”inIBSEGIHDEIGM2Isdiecktd+ andMODIFled瓦Documentlaready3bepoitedorfliulttedI* 7. O05AfieldsforgIHmpostingr<>utlne>ofIF2j£<^reianpleIf orOFF,户IIf♦。=dxwent_>erg&IXPUT.fcKVIFerr.at_ccMchajn«e■*X*,-JCLEAKerr_st_cc_chanae+LEAVETO9CR£E1sy-dyxmr..EKDIF.PfRFORIcopany^codereadUSINGbkpf^bukrs.FrRFORIbclreart_pruefen(sapff001)(JSIBGbkpf"blartbkpf-gjahr.在会计凭证的主程序SAPMF05A勺子仞^程MF05AIENJ中,Moduledocument_mergeINPUT是检查和替代的处理入口简单理解,系统将用户自屏幕上输入的信息首先保存在一些临时内表中 ,当通过所有的业务检查时最后保存到数据库,替代则是根据用户设置的条件去退换掉内表的一些临时内容从而保存到一些字段内容最终保存到数据库时是用户替换的内容。 在叙述SAP增强时会详细描述这个机制。对于原因代码的替代SAP所有模块的替代字段都由表 GB01控制。所谓releasefieldsforsubstitution,就是在对应的BOOLCLASS中添加该字段,或者将该字段的GB01-BEXCLUDE='X'改为GB01-BEXCLUDE=''。BOOLCLASS(Booleanclass)对于FI/CO,BOOLCLASS对应的是调用点:BOOLCLASS=008atcalluppoint1BOOLCLASS=009atcalluppoint2
BOOLCLASS=015atcalluppoint3release所以的字段,因为有如下 entries:BCLFIELDBEXCLUDE对于调用点release所以的字段,因为有如下 entries:BCLFIELDBEXCLUDEBOOLCLASSCLASSTYPEBCLTAB1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国中间相沥青基碳纤维行业市场动态分析、发展方向及投资前景分析报告
- 2025年中国人工器官行业供需态势、竞争格局及投资前景分析报告(智研咨询)
- 2024年12月黑龙江省广播电视局直属事业单位公开招聘11人笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 2025电气设备给油脂标准
- 秋季养生课件
- 第2节 运动的描述(备课讲义)-2021-2022学年八年级物理上册同步备课讲义和课后训练(人教版)
- Unit 1 Meeting new people Part A Let's talk Do a survey【知识精研】人教PEP版(2024)英语三年级下册 -
- 《老年痴呆的护理》课件
- 《经济知识竞赛》课件
- 1.1+人口分布 【知识精研】高一地理下学期 课件(人教版2019必修第二册)
- 法医解剖室管理制度
- 全国初中数学竞赛分类汇编及解析
- 06岁儿童眼保健知识培训课件
- 企业商业秘密保护操作指引(2023版)
- 布草类送洗记录表
- 三年级数学口算题300道 (可直接打印)
- 益生芽孢杆菌体外抑菌活性及耐药性研究
- 2023数联网(DSSN)白皮书
- 消防设施操作和维护保养规程
- 寰枢椎脱位的护理课件
- 反面典型案例剖析材料范文(通用6篇)
评论
0/150
提交评论