我有一个程序,可以从融合表中获取数据,将其放入谷歌文档中(使用我制作的模板),将其设为pdf,然后显示指向它的链接(指向pdf)。我的问题是,它对我的帐户工作正常,但如果其他人尝试单击它,他们会不断收到“404 Not Found”错误。我的猜测是,出现错误是因为我是唯一允许查看该文件的人。我的问题是:是否有一种方法可以以编程方式与组织中的每个人共享文件,或者还有其他方法吗?
你可以使用DocsList.addViewers(viewersEmails[])
下面是一个示例,它将查看者列表作为参数,将它们添加为查看者并发送包含链接的电子邮件:
function addviewers(viewers) { // pass emails as a string in CSV
var viewerssArray = viewers.replace(/, /g,",").split(",");// the 'replace' is there to remove any spaces that could be in the string
Logger.log(viewersArray.length+' : '+viewersArray);
var file = DocsList.getFileById('your doc ID').addViewers(viewersArray);
var docurl=file.getUrl();
for (nn=0;nn<viewersArray.length;++nn){
MailApp.sendEmail(viewersArray[nn], 'your document', docurl);
}
}
我首先使用“编辑器”作为变量名,现在更改为“查看器”以避免混淆。
如果您确实需要让域中的每个人都获得访问权限,我想最好的解决方案是创建一个包含所有用户的组来简化流程。
EDIT:可能有一个更简单的解决方案,即将文件移动到共享文件夹中:文件夹中的所有项目都具有与文件夹本身相同的共享参数。
例子 :
function sharebyFolder(){
var file = DocsList.getFileById('docId');
var folder = DocsList.getFolderById('shared folder Id');
file.addToFolder(folder)
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)