理论教育 使用报表变量进行数据传输的优化方法

使用报表变量进行数据传输的优化方法

时间:2023-05-30 理论教育 版权反馈
【摘要】:如果用户希望在运行DTP时弹出对话框,进行自由选择,则需要使用报表变量作为选择条件。下面以最常见的0FISCPER会计年度期间为例,对使用报表变量作为DTP中的选择条件进行详细说明。图5-32 变量选择界面3确定完成后,返回DTP的维护界面可以看到,此时在“过滤器”按钮后面出现了绿色的“对钩”标识,表明变量设定已经成功,如图5-33所示。图5-34 DTP执行时的变量输入界面

使用报表变量进行数据传输的优化方法

上面两个小节,对在DTP中对数据的选择进行了详细的描述,但是这样的选择条件都是建立在已知既有规则等前提条件下的。如果用户希望在运行DTP时弹出对话框,进行自由选择,则需要使用报表变量作为选择条件。

下面以最常见的0FISCPER会计年度期间为例,对使用报表变量作为DTP中的选择条件进行详细说明。由于报表变量大多数时间都是在报表中使用,因此不妨对DTP使用的报表变量给出特殊命名,如以“YDTP_”开头,这样在变量的增强程序中,对于非“YDTP_”开头的变量,便使用常规的方式进行编写(详见第7章),对于以“YDTP_”开头的变量,则使用特殊逻辑进行处理,具体步骤如下。

第1步:在Query Designer中新建0FISCPER的DTP变量,将该变量命名为YDTP_FIS-CPER_NUI。由于后续需要使用代码对变量的值进行操作,因此变量的类型必须设置为“客户出口”,如图5-22所示。

978-7-111-50218-0-Chapter05-81.jpg

图5-22 设置变量类型

在变量的“详细信息”标签页,设置“变量表示”为“间隔”,然后选择变量为“可选的”,并取消勾选“变量已输入就绪”复选框,如图5-23所示。

978-7-111-50218-0-Chapter05-82.jpg

图5-23 变量的详细信息设置

针对0FISCPER的报表变量YDTP_FISCPER_NUI新建完毕后,将在后续的DTP设置中使用该变量。

第2步:由于标准的DTP报表变量并没有指定屏幕供用户手工输入,因此必须先定义一个屏幕。定义的屏幕不仅给当前的变量使用,而且还可以给其他变量使用,因此我们定义的屏幕必须是动态的。然后设定屏幕编号为0100,包含对象名称以及标准的Range Table,即有“对象”“对象‘低’值”“对象‘高’值”和两个功能按钮(即“确定”和“取消”按钮),如图5-24~图5-26所示。

978-7-111-50218-0-Chapter05-83.jpg

图5-24 调用屏幕元素清单定义

978-7-111-50218-0-Chapter05-84.jpg

图5-25 调用屏幕功能按钮定义

978-7-111-50218-0-Chapter05-85.jpg

图5-26 调用屏幕逻辑流定义

最终通过预览可以查看到,屏幕会随着变量的不同而切换不同的文本名称,如图5-27所示。

978-7-111-50218-0-Chapter05-86.jpg

图5-27 调用屏幕界面定义概览

第3步:在用户出口EXIT_SAPLRRS0_001中对包含程序ZXRSRU01进行代码的编写,为了区分标准报表变量和DTP报表变量,通过内置不同的函数对两者进行隔离处理,详细代码如下。

978-7-111-50218-0-Chapter05-87.jpg

978-7-111-50218-0-Chapter05-88.jpg

数组全局数据定义如下:

978-7-111-50218-0-Chapter05-89.jpg

978-7-111-50218-0-Chapter05-90.jpg

978-7-111-50218-0-Chapter05-91.jpg

978-7-111-50218-0-Chapter05-92.jpg

978-7-111-50218-0-Chapter05-93.jpg(www.daowen.com)

978-7-111-50218-0-Chapter05-94.jpg

978-7-111-50218-0-Chapter05-95.jpg

参考函数y_olap_var_get_convert定义如下:

978-7-111-50218-0-Chapter05-96.jpg

978-7-111-50218-0-Chapter05-97.jpg

第4步:在DTP中使用变量YDTP_FISCPER_NUI,首先在DTP的维护界面单击“过滤器”按钮,如图5-28所示。

978-7-111-50218-0-Chapter05-98.jpg

图5-28 DTP维护界面

此时系统会弹出“过滤器”对话框,如图5-29所示。

978-7-111-50218-0-Chapter05-99.jpg

图5-29 “过滤器”对话框

在“会计年度/期间”最后面的按钮中单击978-7-111-50218-0-Chapter05-100.jpg,系统弹出变量选择界面,如图5-30所示。

978-7-111-50218-0-Chapter05-101.jpg

图5-30 变量选择界面1

在“OLAP变量”文本框中输入框单击帮助按钮978-7-111-50218-0-Chapter05-102.jpg,进入如图5-31所示的界面。

978-7-111-50218-0-Chapter05-103.jpg

图5-31 变量选择界面2

在图5-31中可以看到被用作DTP变量输入的变量列表,此时选择需要的“YDTP_FIS-CPER_NUI”,双击回到之前的选择界面,可以看到,系统将需要的变量已经写入到变量窗格中,如图5-32所示。

978-7-111-50218-0-Chapter05-104.jpg

图5-32 变量选择界面3

确定完成后,返回DTP的维护界面可以看到,此时在“过滤器”按钮后面出现了绿色的“对钩”标识,表明变量设定已经成功,如图5-33所示。

978-7-111-50218-0-Chapter05-105.jpg

图5-33 变量设定成功

第5步:执行该DTP,让系统弹出我们设计好的对话框,如图5-34所示。

978-7-111-50218-0-Chapter05-106.jpg

图5-34 DTP执行时的变量输入界面

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈