我正在关注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以表示用户在屏幕上看到的实际比萨饼名称文本吗?
答案 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()];