最近公司出现一个需求:
Sap系统在确定一级科目及二级科目的余额方向时,需要根据所有的下一级科目号的轧差净额的方向确定余额方向,不允许出现负数,不允许同一个科目号借贷都有余额,需要轧差列示
我这里只是写一个小的demo自己测试一下:
实现步骤:
首先去ZGLBALANCE里面抽取相应的科目号信息,如果是一级科目就显示前面四位
![](https://img.haomeiwen.com/i12395424/ef2b7969f110f1dd.png)
这里是抽取一级科目的科目号:
1221后面对应的余额类型为多个条件的时候就去重复数据为M轧差列示
![](https://img.haomeiwen.com/i12395424/4e5927d24d7f9380.png)
如果是二级科目的话,那么就显示科目号的前面六位
然后科目号去重复以后对应的余额类型就设置为M轧差
![](https://img.haomeiwen.com/i12395424/67eb4929003c65ad.png)
接下来测试一级科目和二级科目操作显示:
先点击一级科目
![](https://img.haomeiwen.com/i12395424/a242e67f206f2a34.png)
通过debug
![](https://img.haomeiwen.com/i12395424/3defc2bfe7f83c0c.png)
对比表里的数据信息:
![](https://img.haomeiwen.com/i12395424/d84baaa397847e97.png)
最后筛选完成的一级科目号就赋值为M轧差:
![](https://img.haomeiwen.com/i12395424/8e0f9d1a4c012254.png)
这里对应表里的1221和1301和1302的一级科目号信息
然后进行筛选所有科目以及余额信息筛选去重复
一级科目操作完成以后
点击二级科目:
![](https://img.haomeiwen.com/i12395424/b2a1b348a147ab9b.png)
首先先看表里的数据
![](https://img.haomeiwen.com/i12395424/0786793c9e67eead.png)
这些选中的框里的科目号要进行去重复以及后面的余额类型进行设置M轧差
最后筛选完成的进行M轧差列式
![](https://img.haomeiwen.com/i12395424/900ab1444d659a31.png)
最后将查到的二级科目号统一设置为M轧差
下面是代码解析:
首先先声明结构变量和屏幕等等
![](https://img.haomeiwen.com/i12395424/76bc337fffac1d9c.png)
抽取表数据存入主表A中:
![](https://img.haomeiwen.com/i12395424/493227b9cd44e554.png)
赋值截取科目号数:
![](https://img.haomeiwen.com/i12395424/6fe52c1dbad8e103.png)
![](https://img.haomeiwen.com/i12395424/b1a750acdfe921a8.png)
声明ranges
![](https://img.haomeiwen.com/i12395424/faab3912bc5e2e08.png)
![](https://img.haomeiwen.com/i12395424/0421da7175a5e548.png)
最后筛查出来的一级和二级科目设置M轧差列示
网友评论