Google脚本会创建两个电子表格而不是一个

时间:2015-02-20 08:48:22

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

美好的一天!
我的脚本处理表格在电子表格方面提交。

function onSubmit(e) {
      var obj, scriptProperties, counter;
      var prop = 'submissions';
      obj = raw_answer_to_raw_obj(e.values);//this function pack answer into object
      scriptProperties = PropertiesService.getScriptProperties(); 
      counter = scriptProperties.getProperty(prop);
      if (counter==null) counter = 0;
      counter++;
      scriptProperties.setProperty(prop, counter);
      new_answer_processing(obj);
    }

在末尾主处理函数调用我可以测试模拟obj。 new_answer_processing()函数只调用一次函数create_ss_in_folder:

function create_ss_in_folder(folder_name, name, root) {
      var ss, id, file, folder;
      Logger.log('creating spreadsheet...');
      ss = SpreadsheetApp.create(name);
      id = ss.getId();
      Logger.log('ss id: ' + id);
      file = DriveApp.getFileById(id);
      var folder = get_folder_by_name(folder_name, root);
      folder.addFile(file);
      DriveApp.getRootFolder().removeFile(file);
      return ss;
    }

通过日志文件和呼叫计数器提交证明的单一呼叫(您可以观看视频http://youtu.be/DTawqYPa44A) 但实际上它是制作两个电子表格。

每次表单提交时都不会发生此错误,如果我通过脚本模拟提交,则不会发生此错误。 这是问题的原因还是我错过了什么?

1 个答案:

答案 0 :(得分:0)