这是我在Google Scripts上的第一个正确的脚本,我一直顺利,直到我遇到了这个错误并遇到了这个错误......!
Invalid argument: name (line 314, file "main", project "WallFeed")
基本上我不知道错误是什么,显然它的下一行突出显示为错误:
var LogSS = SpreadsheetApp.create(conf("LogNAME", null, null))
在某些方面似乎有某种脚本格式错误,但有些则没有。
当我停止调用错误的函数
时通过Javascript语法检查整个代码 - 没有
之前有人见过这个吗?
调用功能
function log(m) {
LogFID = conf("LogFID", null, null)
Logger.log("Opening log file: " + LogFID)
// Try to open the log file
try {
log_file = DriveApp.getFileById(LogFID)
if ( log_file.isTrashed() ) {
throw new Error("File [" + LogFID + "] has been trashed! Creating a new log file")
}
} catch(e) {
Logger.log(e.message)
Logger.log(m)
// Create a new log file
create_log_file()
// Log the error and original message
log(e.message)
log(m)
return true
}
var lock = LockService.getPublicLock()
if (lock.tryLock(10000)) {
var ss = SpreadsheetApp.openById(LogFID)
var sheet = ss.getSheets()[0]
var newRow = sheet.getLastRow() + 1
sheet.getRange(newRow, 1).setValue(Date())
try {
sheet.getRange(newRow, 2).setValue(m.toString())
} catch(e) {
Logger.log("Could not convert log to string: " + e.message)
Logger.log(m)
return false
}
sheet.autoResizeColumn(1)
sheet.autoResizeColumn(2)
lock.releaseLock()
} else {
Logger.log("Lock timeout for LogFID: " + LogFID)
return false
}
return true
}
发生错误的已调用函数
function create_log_file() {
// Create spreadsheet log file
var LogSS = SpreadsheetApp.create(conf("LogNAME", null, null))
LogFID = LogSS.getId()
conf("LogFID", LogFID, false)
....etc
不太热衷于在这里发布我的完整代码,但如果他们可以看看我可以与他人分享吗?
TIA !!
答案 0 :(得分:0)
看起来这是一个深刻的Google Scripting错误...我已经在创建此脚本时加入了两个Google帐户。基本上我是在一个帐户中编写脚本并将其运行另一个帐户。奇怪的是,像创建文件这样的东西是可以的,它们是在正确的帐户驱动器中创建的,但是当你有两个帐户时其他事情显然不起作用!
更新:事实并非如此,相同类型的错误再次引发了它的意思,这意味着我无法进行编码......!这次我回到了一个已知的好版本,但同样的错误就在那里。