Zoho Creator - 检索Form的Lookup Dropdown字段的实际文本值

时间:2017-07-06 13:34:56

标签: field lookup zoho deluge

我正在关注Deluge上的Zoholics视频,并使用此声明从库存中查找披萨价格:

colPizzaDetails = Inventory[Pizza == input.Pizza && Size == input.Pizza_Size];

尝试保存脚本时会显示此错误:

In Criteria left expression is of type STRING and right expression is of type BIGINT and the operator == is not valid

在视频中,叙述者能够保存脚本。看起来BIGINT现在存储在Lookup Dropdown中,而不是视频中显示的文本。

您能告诉我如何更改代码声明,以便我可以更改input.Pizza以表示用户在屏幕上看到的实际比萨饼名称文本吗?

2 个答案:

答案 0 :(得分:0)

它的接缝库存表单将Pizza字段作为字符串字段。

在目前的形式中,它的接缝Pizza字段是来自Pizza Form的查找。

因此,每当您尝试访问查找字段时,您将获得记录ID作为回报,您可以通过使用alert或info命令,示例警报或信息(input.Pizza)在当前记录来检查它形式。

所以首先你需要从Pizza Form中获取披萨名称然后在你的查询中进行比较。

比方说比萨饼中的披萨名称字段是Pizza_Name;

所以这就是你的代码应该是什么样的

pizza_name = Pizza[ID==input.Pizza].Pizza_Name; // fetch pizza_name : make sure you replace Pizza_Name by the deluge name of pizza name field in pizza form.
colPizzaDetails = Inventory[Pizza == pizza_name && Size == input.Pizza_Size]; // compare pizza_name with inventory pizza and fetch inventory data

这应该可以正常工作。

OR

您也可以尝试

colPizzaDetails = Inventory[Pizza == input.Pizza.Pizza_Name && Size == input.Pizza_Size];

但在某些情况下,这会给你带来这个错误。

  

Pizza是一个查找字段,无法访问子字段

所以第一种方法适用于所有情况&从zoho标准的角度来看是首选方法。

答案 1 :(得分:0)

您应该使用toNumber()函数将输入结果转换为整数,如下所示:

colPizzaDetails =库存[Pizza == input.Pizza && Size == input.Pizza_Size.toNumber()];