无法动态隐藏表格单元格中的子表单

2020-08-19 07:49发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)亲爱的朋友, 我有一个要求,我...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


亲爱的朋友,

我有一个要求,我需要使表行(单元格)中的子窗体动态可见/不可见。

我的代码:

data。#subform [0]。#subform [2]。#subform [3] .GT_TABLE.DATA [0]。#subform [1]。#subform [2] :: initialize-(JavaScript,客户端)
var length = xfa.resolveNodes(" data。#subform [0]。#subform [2]。#subform [3] .GT_TABLE.DATA")。length;
//var字段= xfa.form .subform.table.row.all;
xfa.host.messageBox(" Hi");
用于(var i = 0; i <= length; i ++)
{
xfa.host .messageBox(" Hi");
if(xfa.resolveNode(" data。#subform [0]。#subform [2]。#subform [3] .GT_TABLE.DATA [" + i +"]。# subform [1]。#subform [2] .TextField1")。rawValue ==" X"){
this.presence =" hidden";
} else {
this.presence =" visible" ;
}
}

问题1.如果子窗体在第一行被隐藏,则它在表的所有行中都被隐藏,有条件的情况下它应该变为可见/不可见。

2. xfa.host.messageBox(" Hi"); 不能正常工作,我也尝试过这些,但以下均不能用于调试目的:

data。#pageSet [0] .Page1.CurrentPage :: initialize-(JavaScript,客户端)
xfa.host.messageBox(" welcome"," Error",3,0);
$ host .messageBox(" Welcome");
xfa.host.messageBox(" Test");

app.alert(" click");

4条回答
SAP德到
2020-08-19 08:02

尊敬的帕斯卡,

1。 我附上了屏幕截图,以便更好地理解hirarachy和代码。

场景是这样的,表中的列具有多个子表单,因此对于每个记录,如果特定子表单有数据,则该子表单应该是可见的。

否则它应该是不可见的。

注意:我已经重命名了子表单的名称,并进行了必要的代码更改,以便更好地理解。

 data。#subform [0]。#subform [2]。#subform [3] .GT_TABLE.DATA [0] .FamilySF.SpouseSF :: initialize-(JavaScript,客户端)
 var len = xfa.resolveNodes(" data。#subform [0]。#subform [2]。#subform [3] .GT_TABLE.DATA")。length;
//var字段= xfa.form.subform.table.row.all;
 xfa.host.messageBox(" Hi");
 对于(var i = 0; i <= len; i ++)
 {
 xfa.host.messageBox(" Hi");
 if(xfa.resolveNode(" data。#subform [0]。#subform [2]。#subform [3] .GT_TABLE.DATA [" + i +"]。FamilySF.SpouseSF.TextField1")。rawValue =="  X"){
 this.presence ="隐藏";
 }其他{
 this.presence ="可见";
 }
 }
 

注意:在我的情况下,一旦数据不存在,子窗体将被隐藏,但是当下一条记录中的数据存在时,子窗体将不可见。

2。 我已经在页面初始化时提供了代码,这里消息弹出也没有触发:

 data。#pageSet [0] .Page1.CurrentPage :: initialize-(JavaScript,客户端)
 xfa.host.messageBox("这是一条消息","这是标题",3,1); 

此致

Siva

一周热门 更多>