如果没有找到记录,如何在 Movilizer 数据网格中显示消息

How to show message in Movilizer data grid if no records found

我在问题类型为“9”的 Movilizer 屏幕中使用数据网格。在这里,我将数据绑定到具有本地数组数据的网格。如果没有数据,我想在网格屏幕 'No records found' 中显示消息。如何在此处的屏幕中间显示消息。 下面是我的示例代码

<question key="Item_Question" type="9" title="Item Details" tableOptionsEnabled="false" >
    <answer nextQuestionKey="END" key="Item_1" clientKey="0" colIndex="0" colWidth="5" attributeType="8" dummyAnswer="true">
      <text>Item ID </text>
    </answer>
    <answer nextQuestionKey="END" key="Item_2" clientKey="0" colIndex="1" colWidth="5" colSearchable="false"
            attributeType="8" dummyAnswer="true" valueAlignment="CENTER">
      <text>Item Description</text>
    </answer>

    <onEnterAssignment>
      itemCount = $local:itemDetails;

      for(clientKey : itemCount){
      Seq = concat(itemCount[clientKey]['ID'], '_', itemCount[clientKey]['Name']);

      addAnswer($answer:"Item_1", Seq, itemCount[clientKey]['ItemCode']);
      setAnswerValueByClientKey($answer:"Item_1", Seq, itemCount[clientKey]['ItemCode']);

      addAnswer($answer:"Item_2", Seq, itemCount[clientKey]['ItemDescription']);
      setAnswerValueByClientKey($answer:"Item_2", Seq, itemCount[clientKey]['ItemDescription']);

      }
    </onEnterAssignment>
  </question>

谢谢

这里有很多可能性。 第一个是在该消息的虚拟答案中包含一个新条目,如下所示:

addAnswer($answer:"Item_1", "_Blank", "No records found");
setAnswerValueByClientKey($answer:"Item_1", "_Blank", "No records found");
addAnswer($answer:"Item_2", "_Blank", "");
setAnswerValueByClientKey($answer:"Item_2", "_Blank", "");

另一个选项是在问题文本元素中包含一个占位符,并在本地数组是否有元素时使它出现或消失,就像这样:

<text>%MY_MESSAGE%</text>

<onEnterAssignment>
  itemCount = $local:itemDetails;

  if (count($local:itemDetails) ?eq 0)
  {
    setPlaceholder("%MY_MESSAGE%", "No records found");
  }
  else
  {
    setPlaceholder("%MY_MESSAGE%", "");
  }

</onEnterAssignment>

而且,如果您使用 2.6 版本进行开发,也许另一个选择应该是使用 showDialog 方法。它会在您的 movilizer 客户端中显示一个类似警告消息的框。这是一个例子:

showDialog(1, false, "Message title", "No records found", 14);