我需要类似于以下脚本的东西(理想情况下,这将进入LiveCycle"计算"事件字段):
if(Subform.TextField1.rawValue !== null && Subform.TextField2.rawValue !== null && Subform.TextField3.rawValue !== null &&
Subform.TextField4.rawValue !== null &&
((TableSubform.Table.Row1.TextField5.rawValue == null && (TableSubform.Table.Row1.TextField6.rawValue == null && (TableSubform.Table.Row1.TextField7.rawValue == null) ||
(TableSubform.Table.Row1.TextField5.rawValue !== null && (TableSubform.Table.Row1.TextField6.rawValue == "Yes" && (TableSubform.Table.Row1.TextField7.rawValue == null) ||
(TableSubform.Table.Row1.TextField5.rawValue !== null && (TableSubform.Table.Row1.TextField6.rawValue == "No" && (TableSubform.Table.Row1.TextField7.rawValue !== null)) &&
((TableSubform.Table.Row2.TextField5.rawValue == null && (TableSubform.Table.Row2.TextField6.rawValue == null && (TableSubform.Table.Row2.TextField7.rawValue == null) ||
(TableSubform.Table.Row2.TextField5.rawValue !== null && (TableSubform.Table.Row2.TextField6.rawValue == "Yes" && (TableSubform.Table.Row2.TextField7.rawValue == null) ||
(TableSubform.Table.Row2.TextField5.rawValue !== null && (TableSubform.Table.Row2.TextField6.rawValue == "No" && (TableSubform.Table.Row2.TextField7.rawValue !== null))
)
{
this.rawValue="Complete";
} else {
this.rawValue="Not complete"
基本上,我有一个表格,顶部有四个字段,需要填写。然后,我有一个三列表(第一行是标题),带有两行可填写的文本字段,其中包含以下规则,以便表单被视为完整:
如果TextField5为空,则不需要填写TextField6和Textfield7
如果TextField5不是空白,则需要使用"是"来填充TextField6。或"否"
如果TextField6是"是,"然后TextField7不需要填写
如果Textfield6是"否,"然后TextField7需要填写
请让我知道我的脚本出错了!谢谢!
答案 0 :(得分:0)
首先,从我看到的这不是嵌套的IF语句,它是和/或的整个命令。当然这样的代码不是优选的,所以首先尝试将你的条件分成这样的:
if(Subform.TextField1.rawValue !== null && Subform.TextField2.rawValue !== null)
{
if(another condition)
}
if(another condition).....etc
参见,对每个命令执行嵌套的IF语句意味着还有其他选项可以做。
对于条件,如果此语言是JAVA,则需要使用ActionListener
为了编写命令,这意味着例如TextField6是" no",然后使用ActionListener,您将编写需要填写TextField7的命令代码。
答案 1 :(得分:0)
如果TextField5为空,则不需要TextField6和Textfield7 填写。如果TextField5不是空白,则需要使用"是"填写TextField6。或"否"。如果TextField6是"是,"然后TextField7不需要填写。如果Textfield6是"否,"然后需要填写TextField7。
根据你的描述,我会制作一组看起来像这样的语句。
if (TextField5.isNull) this.rawValue = "Complete";
else {
if (TextField6.rawValue == "Yes") this.rawValue = "Complete";
else {
if (!TextField7.isNull) this.rawValue = "Complete";
else this.rawValue = "Not Complete";
}
}
但实际上,只有一种情况,你可以有一个不完整的形式(似乎):TextField5已填充,TextField6为" No",TextField7为空。因此,您可以将其浓缩为一个语句并标记其他任何完整的语句。
if (!TextField5.isNull && TextField6.rawValue == "No" && TextField7.isNull) this.rawValue = "Not Complete";
else this.rawValue = "Complete";