EBS中FSG的列集生成器突破最大列20的数量限制方法

声明:望能抛砖引玉,如对于同样问题有新的解决方法,一起讨论学习!

基础思路:显示列是否勾选

问题叙述

企业中往往会有需要以公司或者部门为核算和展示维度的报表,就是行显示账户明细,而每一列是由不同的公司或者部门而组成;而FSG的标准功能,定义FSG,【生成列集多于20列】的时候,会有一个“最大量的限制”,什么意思呢?

http://note.youdao.com/yws/api/group/3970297/noteresource/A5304D58ED90463B8794BE45347C49B4/version/191?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421

http://note.youdao.com/yws/api/group/3970297/noteresource/06E60A7790C74D6C85EE9888A456B8D9/version/192?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421 

通常在定义一个列集的时候有两种办法:

  • 定义列:取列帐户(报表账户取列集和行集的交集)、定义列计算,改写段内容

  • 生成列集:定义列显示,控制距离,标记例外,改写段内容,控制余额


而这两种定义方法就“最大列数”的可定义范围是不同的:

  • 定义:列不限定义范围 
    无最大限制,只需要像行集一样定义即可,“但是”!!在这个界面内我们无法定义,在输出的“报表”中,每一列的列名称,比如我想在输出的报表里编辑某一列的名字,这个界面就不行,无法显示;必须要生成列集以后,报表定义界面才会认这一组“列”,而列名在生成列集的时候可以实现编辑和定义

  • 生成列集—定义范围为20
    最大“可显示”列为20,意思就是打开界面,我们可定义、调整余额类型、定义列名标题名的数量只有20列

效果

于是:当我正常定义收到这20列限制的时候
比如我输出的报表有30列,那效果会变成:前20列有名称,后10列名空白 


http://note.youdao.com/yws/api/group/3970297/noteresource/CAE8F5E7E5ED47409A7923FFC71FAE75/version/193?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421


那么现在问题来了:


如何让这30列全部都不受限制,定义出它们的名!字!? 

解决方式

第一个被否定的想法就是【展开列】

系统定义列集的时候会有“账户分配”,这个功能我一直觉得跟“行集”一样,在定义行账户的时候会有T/E/B/形态,也就是可以对一个范围的段值进行展开,如果真的展开了,那么还定义30列干什么,直接定义一列,将它从1-30展开就好!

但是打开账户我们发现,列集的显示选项(如下图),只有T !
列集并不允许展开!

http://note.youdao.com/yws/api/group/3970297/noteresource/08E6B84B2F8B4234B8F7DF14F03BC702/version/194?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421

列集里的说明是第二个被排除的

在列集定义界面,有定义【列名】和【说明】的地方

http://note.youdao.com/yws/api/group/3970297/noteresource/E88B2B18DCDD410E975AB3148532D048/version/198?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421

【列名】对应的是下图空色框内 “ 账户生成器 ” ,并不影响下方显示

http://note.youdao.com/yws/api/group/3970297/noteresource/2BB0EB11C0BE4D8A88D945754E54C1DB/version/197?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421

【说明】对应下图,这里暂不清楚说明的具体含义和用法,暂时理解为补充说明列的。。。

http://note.youdao.com/yws/api/group/3970297/noteresource/D090D2D333CE4CAA99FC4CAE12643042/version/199?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421

于是,编辑报表可现实的列名,就必须要在“列集生成器”中完成,而且限制最大数量是20列,后面的列用上述办法是行不通的。



这便有了第三种方法;

另辟蹊径:显示列功能测试!

【显示列】这个功能是用来控制报表里,是否出现该列数据,具体是怎么用一直没有很确定的结论:

但是这里这个功能有别的用法:
我们发现所有的列,在定义的时候,“显示列”选项是默认值,这里定义“单列”的时候点击完,在后面的“定义列集”界面上就会看到该列,相对应的“位置” 

http://note.youdao.com/yws/api/group/3970297/noteresource/9CAB3068A39C4E87B754D0CC90C69C4B/version/200?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421
下图就是勾选了【显示列】以后,出现的效果
http://note.youdao.com/yws/api/group/3970297/noteresource/2B57782308B2487F863675ED0141EE77/version/201?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421

下图是不勾选【显示列】出现在“列集定义”中的效果:
10行前移,编辑框线都消失,不可编辑,报表内可看到,但下方无数字产生
20、30行移至最前端,可编辑,表内可看到

http://note.youdao.com/yws/api/group/3970297/noteresource/5460D0387FBB4ED4939889C5351687FD/version/202?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421 

第一列不可编辑了,可编辑少了一列
而这时,按理说行内还是有20个可编辑的“列”,所以列尾之前出不来的21列,也会前移 
列尾是这样的: 

http://note.youdao.com/yws/api/group/3970297/noteresource/94F35627B0424617AF320ACBB8536197/version/203?method=get-resource&shareToken=16A7047537CD4DBB809DC8A236F72A37&entryId=2803421


上面的列出现了数字21 !!!也就是说,我们可以用这种方法定义出后面的10列!
列集生成器只能同时容纳20个列,进行编辑,按这种方法以此类推,之前的30列报表,

列集定义的方法具体如下:

1、30列中先定义前20列

2、勾去前10列的【显示列】选项,为后10列腾出空间

3、定义后10列,列名和余额类型

4、全部在“定义列”界面,勾原状态“显示列”

5、输出报表


这样一来,20+的报表列定义限制问题,头行名称问题,就可以解决了!



文档备份:有道云笔记

本文标题:EBS中FSG的列集生成器突破最大列20的数量限制方法

本文链接:https://catonisland.cn/post/102.html

本文版权归作者所有,欢迎转载,转载请以文字链接的形式注明文章出处。

相关文章