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

Posted

技术标签:

【中文标题】如果未找到记录,如何在 Movilizer 数据网格中显示消息【英文标题】:How to show message in Movilizer data grid if no records found 【发布时间】:2020-08-10 17:59:38 【问题描述】:

我在 movilizer 屏幕中使用问题类型 =“9”的数据网格。在这里,我使用本地数组数据将数据绑定到网格。如果没有数据,我想在网格屏幕“未找到记录”中显示消息。如何在此处在屏幕中间显示消息。 下面是我的示例代码

<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>

谢谢

【问题讨论】:

【参考方案1】:

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

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);

【讨论】:

以上是关于如果未找到记录,如何在 Movilizer 数据网格中显示消息的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Movilizer Movelet 进行 REST 调用

Movilizer:如何禁用表格屏幕中的列标题?

没有记录时如何在gridview“未找到记录”中显示文本

Movilizer - 删除密钥时删除了 Masterdata 引用?

如何在 Movilizer 中获取地理位置?

使用 Spring Embedded Database 的 JPA 未找到记录