Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如果数组值(取自NetSuite字段)为空,是否从数组中删除?_Sql_Arrays_Json_Netsuite - Fatal编程技术网

Sql 如果数组值(取自NetSuite字段)为空,是否从数组中删除?

Sql 如果数组值(取自NetSuite字段)为空,是否从数组中删除?,sql,arrays,json,netsuite,Sql,Arrays,Json,Netsuite,尝试使用netsuite/celigo和第三方市场整合API集成。大多数JSON都很好,但在让照片正常工作时遇到了麻烦。它们必须作为数组传递,但我们的每个项目都有不同数量的照片。我可以访问netsuite中的SQL表达式和一种“JSON文档生成器”,其中还内置了Celigo中的几个函数 这就是传递的信息的样子(我用一个假的url替换了实际的url)。因此,我需要一种方法从数组中删除这些空白字段,这些字段当前显示为“” “DocumentBuilder”端看起来是这样的(看起来像Celigo的语法

尝试使用netsuite/celigo和第三方市场整合API集成。大多数JSON都很好,但在让照片正常工作时遇到了麻烦。它们必须作为数组传递,但我们的每个项目都有不同数量的照片。我可以访问netsuite中的SQL表达式和一种“JSON文档生成器”,其中还内置了Celigo中的几个函数

这就是传递的信息的样子(我用一个假的url替换了实际的url)。因此,我需要一种方法从数组中删除这些空白字段,这些字段当前显示为“”

“DocumentBuilder”端看起来是这样的(看起来像Celigo的语法),同样有很多函数可用,但没有使用,也不确定使用哪一个

 "photos":["{{this.0.Photo1}}", "{{this.0.Photo2}}", "{{this.0.Photo3}}", "{{this.0.Photo4}}",],
(其中照片3和的netsuite字段为空)


我尝试将所有URL连接起来,但是它们不会采用正确的数组格式,同样的问题仍然适用于字段为空的额外字符。我必须避免更改数据实际输入NS字段的方式,因为这会破坏我们的其他集成。

考虑到您有以下内容:
“照片”:[“url.jpg”,“url2.jpg”,“”“,”“,]”,

Celigo处理的结果是:
“photos”:[{{this.0.Photo1}}]、{{{this.0.Photo2}]、{{{this.0.Photo3}]、{{{{this.0.Photo4}}]、

使用数组.filter()怎么样

let ob = {
 //..other properties
 photos:  ["url.jpg", "url2.jpg", "", "", ]
}
ob.photos = ob.photos.filter(function(el) { return el });
编辑
根据ErictGrabaugh的评论,Netsuite似乎运行Ecmascript 5,所以lamnda将无法工作。我已将其更改为以前的JS版本

请注意,此特定语法在服务器端NetSuite中不起作用,因为它不支持ES6+<不过,code>Array.filter()在这种情况下肯定能很好地工作。请参见此处的示例:
let ob = {
 //..other properties
 photos:  ["url.jpg", "url2.jpg", "", "", ]
}
ob.photos = ob.photos.filter(function(el) { return el });