【发布时间】:2017-05-22 09:53:55
【问题描述】:
目前使用 Visualization API 和 Google App Script 调用
'index.html' 通过 doGet() 函数。
我正在使用可视化来生成一个自定义表,使用可视化.Query() 函数并使用 URIComponent 插入实际查询。
当查询被硬编码时,一切都很好。
日期函数,返回我要查询的日期。
function subtractDaysFromDate(date,d){
// d = number of day ro substract and date = start date
var result = new Date(date.getTime()-d*(24*3600*1000));
var x = String(Utilities.formatDate(result, "GMT", "yyyy-MM-dd"));
return x
}
function subtractedDateForUrl() {
var test = String(subtractDaysFromDate(new Date(),5));
Logger.log(test)
}
subtractedDateForUrl() 在 Logger.log(test) 中返回我想要的确切字符串;
[17-05-22 02:26:43:562 PDT] 2017-05-17
然后我调用了subtractDateForUrl() 来获取日期,这样我就可以在查询中添加它。
var dateString1 = subtractDateForUrl();
//Works
var query = encodeURIComponent("SELECT * WHERE A = date '2017-05-17'");
//Does not work
var query = encodeURIComponent("SELECT * WHERE A = date '" + dateString1 + "'");
这完全一样,但由于某种原因它不起作用。
我已经尝试了以下方法(这两种方法都不起作用);
var removeQuotes = dateString1.replace(/\"+/g,"")
var query = encodeURIComponent("SELECT * WHERE A = date '" + removeQuotes +
"'");
var convertToHtmlOutput =
HtmlService.createHtmlOutput(dateString1).getContent()
var query = encodeURIComponent("SELECT * WHERE A = date '" + convertToHtmlOutput + "'");
【问题讨论】:
标签: google-apps-script google-visualization google-apps