Netsuite保存搜索以从单个字段

时间:2016-07-19 13:02:34

标签: netsuite

我想创建已保存的搜索(Netsuite),它返回了我得到相同答案的时间。

场景:假设我们对该问题有问题和4个答案(用户可以选择多个答案)并且所有答案都存储在用逗号分隔的相同字段中。

现在我想创建保存的搜索,它返回用户选择相同答案的时间。

示例:假设问题1有四个选择,如A,B,C,D

  

响应1 - >问题1 - > A,B,C,D

     

响应2 - >问题1 - > A,B,

     

响应3 - >问题1 - > A,B,C

     

响应4 - >问题1 - >甲

现在我保存的搜索应该返回

  

问题 - >答案 - >计数

     

问题1 - > A - > 4

     

问题1 - > B - > 3

     

问题1 - > C - > 2

     

问题1 - > D - > 1

3 个答案:

答案 0 :(得分:1)

我认为你应该考虑构建一个RESTlet来回答你的问题。您可以将其设置为采用问题编号的参数,或者只是将所有答案吐出来。

在您的scriptlet中,您将保存搜索以返回所有问题数据。然后,您将遍历列表,消化答案并构建您的响应。

最终,您的RESTlet会将您的响应拆分为JSON对象。

OR

如果您需要GUI,请改为构建Suitelet。 RESTlet的逻辑是相同的,但是您将结果数据传输到一个简单的表视图中。

答案 1 :(得分:0)

使用公式(数字)列并使用以下公式:

$time_start = $_SESSION['varname'];
$time_end = microtime(true);
$time = $time_end - $time_start;
  echo 'Execution time : '.$time.' seconds';

其中QUESTION1是fieldid,'A'将返回A在指定字符串中的次数。您可以修改该公式并将其放在4个不同的列中,每个字母对应一个,或者您可以使用CASE等对其进行展开。

答案 2 :(得分:0)

这样的搜索应该有效。这是搜索的结果部分。

不确定是否需要使用SUBSTRING表达式,但我可能会遇到问题。 NetSuite确实提供了substringregex个表达式。请参阅帮助“SQL表达式”

Question GROUP BY   //first column 
Response GROUP BY   //second column
Formula(Numeric) SUM   // third...n columns is number of responses 
CASE {custbody_response1} WHEN 'A' 
   THEN '1' ELSE NULL END   

为具有相同case语句{custbody_response2..n}

的响应创建n列

我只是猜测列的名称是custbody_response。另外我假设你有一个问题的自定义字段?