【案例总结】不看亏了——关于BDC录屏的一些注意事项

【案例总结】不看亏了——关于BDC录屏的一些注意事项

目录

一、事务代码直接进入与SHDB录屏进入的界面不同

二、获利能力段

三、获利能力段在SHDB录屏时的注意点

四、录屏时的注意点

五、清帐程序的DBC

附加一些OK_CODE的含义:

蛐蛐:这个作者就爱写这种夸张的标题,但是内容还是很不错的,这篇内容完全是真实开发记录!

一、事务代码直接进入与SHDB录屏进入的界面不同

这是在录屏事务代码FB01\F-02\F-65,创建会计凭证时的发现的一个问题。一般情况下,从事务代码SHDB(BDC录屏)进入事务代码与直接从首页输入事务代码,进入的界面应该是一样的,但是可能是由于我们公司做了不同的配置,导致SHDB录屏与事务代码进入的界面不一样。这时候就比较麻烦了,还没有找到什么解决方法,不过呢,因为反正BDC代码块是按照SHDB录屏生成的,代码运行是没问题的。写出来是因为好像网上没有人在提出这个问题,我来打个记号。

如下:

FB01\F-02\F-65事务代码的界面:

通过SHDB进入事务代码的界面:

二、获利能力段

经常做财务模块的开发人员应该对这个概念比较熟悉(但我不是很熟悉QwQ)。大概就是在制作凭证时,需要额外填写物料编码、客户编码、物料科目分配、客户科目分配这些字段,然后就可以将金额纳入对应科目的成本。它是由很多个字段构成,作用与成本中心、利润中心类似(maybe)。不同的是,成本中心与利润中心可以直接在调用bapi时进行赋值,但是如果想要给获利能力字段赋值的话,就需要调用BDC了,因为创建会计凭证的BAPI没有对应获利能力的赋值字段。

先引出这个概念之后,接下来,我们要讲的,就是与获利能力段比较相关的内容了。

三、获利能力段在SHDB录屏时的注意点

(下列讲解以FB01为例)

我们在前面的时候已经讲过了,事务代码与SHDB录屏进入同一个事务代码的时候,界面是不同的,获利能力段,尤为不同!今天在录屏的时候找到了两个录获利能力段的方法:

下面的截图是SHDB时,屏幕中可以点击进入获利能力段的位置

1、双击“更多的”

双击“更多的”BDC代码是:

perform bdc_field using 'BDC_OKCODE'

'=PI'.

perform bdc_field using 'BDC_CURSOR'

'DKACB-FMORE'.

perform bdc_field using 'DKACB-FMORE'

'X'.

BDC代码解读:

BDC_OKCODE = PI.表示双击

BDC_CURCOR = DKACB-FMORE.表明鼠标光标位于DKACB-FMORE字段

DKACB-FMORE = X.表明该字段被赋值为X

双击完“更多的“之后,会弹出一个编码块,然后点击获利能力段旁边的那个箭头就可以进入进行填写。

2、点击“其他数据”

点击“其他数据”的BDC代码是:

perform bdc_field using 'BDC_OKCODE'

'=ZK'.

代码解读:

BDC_OKCODE=’=ZK’.表明点击了“其他数据”的功能按钮

这时候也会进入和上面双击“更多的”一样的编码块

两种方式都是可以展开进入获利能力段的,但是又有一点不同,我比较推荐第二种方式,因为第一种方式我在使用的时候报错了,没错,报错了(哈。哈。哈不出来)。填写的都是同样的数据,第一种双击进入获利能力段的方式会有额外的报错,而且是不正常的,像是配置时的半成品;而第二种使用功能按钮的方式,进入之后则是正常的,放心使用。

四、录屏时的注意点

1、尽量避开系统报错,录屏一次成型

我们在录屏时,先多用数据测试几次后,确定测试数据正确通过了再进行SHDB录屏。有时候一些提示性的报错是可以通过的,但是系统性的校验报错就会终止录屏。所以为了一次通过,多拿数据练练手再进行录屏。而且录屏的时候,是可以敲击空格带出历史数据的,敲击空格这个操作不会记录进入DBC。另外,录屏过程中,尽量一次成型,不要有多余的操作,也不要一会儿翻页填写下一项,然后又返回上一页修改上一项,因为翻页意味着BDC录屏已经跳转到下一个屏幕了,重复操作的话,我们生成BDC录屏后,代码也会有很多重复的代码,整理起来应用到我们的程序里面会很冗杂,以后维护起来也比较麻烦。

2、避免使用鼠标滑轮,使用标准功能

我们知道有时候要填的字段很多,一个屏幕可能展示不完,就需要滑动鼠标滑轮进行数据下拉操作!!这里一定要注意再注意!!在SHDB录屏时,不要使用鼠标滑轮。那需要怎么办呢?这时候可以使用下拉进度条或者屏幕旁边有标准的“下一页”的按钮。我们首选标准的“下一页”的按钮,次选下拉进度条,再次选那个黑色三角形,但是不要滑动鼠标滑轮!因为滑动鼠标滑轮的操作是不会记录到录屏DBC里面的,到时候会提示某个屏幕没有某个字段,或者是某个屏幕无批输入数据。

下面展示一下各种按钮的记录:

点击“下一页”:

直接拉动进度条:

点击自带的进度条的下行按钮(那个往上往下的黑色三角形):

备注:在这个界面,滑动鼠标的效果和直接拉进度条的效果是一样的

以上四种方式:1、点击标准下一页;2、拉进度条;3、点三角形;4、滑动鼠标滑轮

在这个界面只有第一种方式生成的BDC文件能够成功。(有时候在其他界面,拉进度条也是可以成功的,不过有标准的尽量使用标准功能)

五、清帐程序的DBC

F-32是清帐使用的事务代码,它很特殊,因为它没有BAPI。

所有的清帐程序都是使用BDC来做的,如果说大家接到清帐程序的开发,一定要多评估一下开发人天,因为它还包含了完全清帐、部分清账、剩余清帐这几种不同的清帐类型。其实网上搜索,可以搜索到清帐程序也有BAPI ,而且是三个BAPI连续调用,但是呢,其实并不很适用。下面给大家展示一下。

清账的BAPI :

POSTING_INTERFACE_START

POSTING_INTERFACE_CLEARING

POSTING_INTERFACE_END

这三个BAPI其实只能够运行清帐的前半部分,后半部分还是得需要使用BDC来完成。是因为完全清帐、部分清账、剩余清帐是不同的功能,而且这部分的逻辑比较复杂,所以使用BAPI与不使用BAPI是差不多的。前半部分可以使用BAPI替代的步骤,使用BDC录屏也是很简单的。

(我说得绕来绕去的,脑子好像进water了,虽然但是,总而言之,清账程序是没有BAPI的,记住!!那三个bapi组合只能模拟清帐程序前半部分,后面还得使用BDC进行清帐overover)

好了,以上就是BDC的一些注意事项,后续有再补充。

附加一些OK_CODE的含义:

=P+ 下一页

=NL 上下滑动进度条

=RW 返回

=PI 单击/双击

/00 回车

=/00 回车

=BU 提交

=WEIT 继续

=REST (F-32清帐)剩余清帐

=PA (F-32清帐)处理未清项目

=OMX 全选

=Z-取消激活

=AB 返回或取消

/NCEC退出

/EEND退出

=YES是

=ZK 附加/其他数据

=ENTE 回车

不同的屏幕下,有可能同一个OK_CODE会有不同的含义,大家注意区别

相关推荐