grichardson
05/19/2017, 10:25 PM/**
* @param {Search}
* searchObj
* @returns {Result[]}
*/
function createSearchResults(searchObj) {
var resultSet = searchObj.run();
var results = [];
var start = 0;
var end = 1000;
log.debug('search fetch start->end', start + '->' + end);
var fetched = resultSet.getRange({
start : start,
end : end
});
while (fetched.length > 0) {
results.push(fetched);
start = end;
end = end + 1000;
log.debug('search fetch start->end', start + '->' + end);
fetched = resultSet.getRange({
start : start,
end : end
});
}
return results;
}
/**
* @param {Result}
* searchResults
* @returns {Array[])
*/
function arrayFromSearchResults(searchResults) {
var output = [];
if (!searchResults || !searchResults[0]) {
throw "No search results"
}
var columns = searchResults[0].columns;
if (!columns) {
throw "No columns found"
}
/*
* add in the header first
*/
var header = []
for (var i = 0; i < columns.length; i++) {
if (columns[i].label) {
header.push(columns[i].label);
} else {
header.push(columns[i].name);
}
}
output.push(header);
for (var row = 0; row < searchResults.length; row++) {
var result = [];
for (var col = 0; col < searchResults.length; col++) {
result.push(searchResults[row].getValue(columns[col]));
}
output.push(result);
}
return output;