点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好大师!
我们有一个自定义报告,其中称为ALV。
呼叫方法
导出
is_variant = wa_variant
i_save ='A'
is_layout = l_layout
更改
it_fieldcatalog = lt_fieldcatalog
it_outtab =
仅对于1个用户,此ALV显示会失败,并显示ASSERTION FAILED dump。
此用户具有特定于用户的布局集。 因此,接下来我们使用i_default参数更改了ALV调用,以便当任何人调用此自定义程序时,仅应调用标准布局。 效果很好,现在用户删除了旧版式并创建了新的用户特定版式。这也很好。
此后,恢复了ALV i_default参数更改。(其他用户显然在抱怨他们的用户特定布局不来!)
代码反转之后,用户再次遇到相同的问题。 奇怪的是只有1个用户有问题。 有任何提示吗?
这似乎是在ALV显示过程中发生的,它试图在布局上应用过滤器。 因此,问题似乎与用户的布局有关,但是我们无法在删除用户的布局时直接删除它,因为它在转储之前就无法看到用户的布局。
(44.1 kB)
从小片段中可以看出,布局中保存了一个非法的过滤条件运算符。 您可以在转储文本中列出变量内容的位置的下方看到实际值吗?
可以使用程序BCALV_DELETE_ALL_USER_LAYOUTS吗? 但是,它将删除用户的所有个人布局。 在您决定继续或取消之前,会先显示一个列表。
您好 Shari Gubby ,
当您拥有Layout并根据参数保存后,就对参数进行了更改,然后将得到一个转储。
这意味着:
程序1.0(带有3个参数)=布局1
程序1.1(带有2个参数),或者您已经更改了参数和 相同的布局。那么您将得到一个转储。
如果发生这种情况,那么您必须执行以下操作:
只需删除布局并根据您的程序创建新的布局并保存即可。- p>
如果不是这种情况,那么我不理解您的问题!
致谢
易卜拉欣
谢谢! 它有效。
一周热门 更多>