作者:紫竹林素食坊 | 来源:互联网 | 2024-10-15 10:21
因为需要做出58张报表的勾稽关系,我做了一个vba程序拷贝,但是一次打开多个报表的时候有个问题就是会让用户多次输入选择屏幕,今天项目组来了一个资深顾问,我发现资深顾问看起来果然和我这种刚毕业
因为需要做出58张报表的勾稽关系,我做了一个vba程序拷贝,但是一次打开多个报表的时候有个问题就是会让用户多次输入选择屏幕,今天项目组来了一个资深顾问,我发现资深顾问看起来果然和我这种刚毕业的不一样,头发是黑白相间,看起来饱经沧桑,说话不紧不慢,不卑不亢,我对他提的问题也会认真回答,不过很遗憾的是我还不知道他的名字。
对于一次打开多个报表只用输入一次选择屏幕的问题,我之前的解决方案不能成功的原因也有了答案,我之前是自建一张表通过abap写一个选择屏幕将变量保存在表中,然后再用bw的退出变量从表中读出这个变量,来实现一次输入多次按运行键,可惜每次都没有读到写进的变量,而且设断点也跟不进去,非常郁闷。其实应该想到,跟不进去不是别的问题就是程序没有运行到那里。原因在于istep,将istep设置为1的时候会弹出一个选择系统的对话框,非常无语,但是在istep=3的时候是报表选择屏幕已经输入完,且点击运行的时候,所以并没有达到我们想要的效果。如果真要这样做的话,要把这三个退出变量的属性那里准备输入的小沟去掉,就可以.不过我还没有测试,因为这样要把58张报表另存为太麻烦.
或者保存变式,之前一直没注意bw跟abap一样可以保存变式,如下图.
而且如果保存了变式之后如果用web方式打开的话,可以直接让选择屏幕出现变式内容.貌似是在TCODE rsrt 2里输入下面的代码variable_screen=X&template_id=0QUERY_TEMPLATE&variant '变式名字'.这样就可以打开报表的时候选择屏幕直接有参数。
ps:今天加班到现在