找不到方法formatDate((class),string,object)。 (第54行,文件“代码”)

时间:2019-10-28 19:51:38

标签: javascript google-apps-script google-sheets

我复制了一个Google脚本,该脚本使时间表Web应用脱离了包装,但是我无法使其完全正常工作。我在想是因为这个错误。这是相关的位。

所以我有这个辅助功能

function fmtDate_(d, format){
  // Set the default date format, if 'format' not passed.
  var fmt = format || DF;

  return Utilities.formatDate(d, TZ, fmt);
}

和全局变量是

var DF = "MM/dd/yyyy HH:mm:ss";
var TZ = Session.getScriptTimeZone();

及其帮助的功能

function postTime(name, val){
  var time = fmtDate(new Date());
  var data = TimeSheet.getDataRange().getValues();

  // If 'shift start' clicked
  if(val == "sb"){
    // Update start time if clicked again.
    for(var i in data){
      if(data[i][1] == name && data[i][0] == "sb" ){
        data[i][2] = time;
        TimeSheet.getRange(1, 1, data.length, data[0].length)
          .setValues(data);
        return [val,name];
      }
    };

    // Else insert new name and update start time.
    TimeSheet.appendRow([val,name,time]);

    return [val,name];
  }

谢谢!

2 个答案:

答案 0 :(得分:2)

没有全局变量如下:

WC_Tax::get_rate_percent()

}

function fmtDate_(d, format) {
// Set the default date format, if 'format' not passed.
var fmt = format || "MM/dd/yyyy HH:mm:ss";

var timeZone = Session.getScriptTimeZone();
return Utilities.formatDate(d, timeZone, fmt);

}

答案 1 :(得分:0)

也许您正在寻找类似的东西。我不难说。

function postTime(name, val) {
  var time= Utilities.formatDate(new Date(),Session.getScriptTimeZone(), "MM/dd/yyyy HH:mm:ss");
  var ss=SpreadsheetApp.getActive();
  var TimeSheet=ss.getSheetByName('Time Sheet');
  var data = TimeSheet.getDataRange().getValues();
  if(val == "sb"){
    for(var i=0;i<data.length;i++) {
      if(data[i][1] == name && data[i][0] == "sb" ){
        data[i][2]=time;
        TimeSheet.getRange(1, 1, data.length, data[0].length).setValues(data);
        return [val,name];
      }
    }
    TimeSheet.appendRow([val,name,time]);
    return [val,name];
  }
}