繁体   English   中英

在我的G Suite域中的Google表格中记录工作表用户名时禁用脚本授权

[英]Disable Script authorization when logging sheet username in Google Sheets within my G suite domain

我正在Google表格中创建每日任务列表,以供员工使用。 我是域管理员。

当行更改时(项目被选中),每个清单项目将时间和用户名记录在Z列中。 这会跟踪日常任务的执行时间以及由谁执行。

例如,“检查语音邮件”,“检查传真”

-当用户在其中一项中打勾时,我希望他们的电子邮件地址或域用户名以及时间戳显示在Z列中。

问题:每天都会有此表的新副本。 必须每天(每个新工作表)为每个用户授权脚本,脚本才能正常工作。

复杂因素:我需要保持我的域HIPAA的合规性,因此我乐于为我的域启用App Marketplace。

所需的解决方案:作为域管理员,如何使脚本授权在我的域上使用? 获得授权后,如何将其链接到主表和工作表的日常副本允许我的域上的此脚本无需单独授权即可捕获域用户名。

谢谢!

 function onEdit(event) { var now2 = Utilities.formatDate(new Date(), "EST", "E MMM dd, yyyy @ hh:mm a"); SpreadsheetApp.getActiveSheet().getRange("Z1").setValue("Sheet Last Modified: " +now2); var s = SpreadsheetApp.getActiveSheet(); var r = s.getActiveCell(); if( r.getColumn() != 6 ) { //checks the column var row = r.getRow(); var time2 = new Date(); var user = Session.getEffectiveUser(); time = Utilities.formatDate(new Date(), "EST", "E MMM dd, yyyy @ hh:mm a"); time2 = Utilities.formatDate(new Date(), "EST", "E MMM dd, yyyy"); SpreadsheetApp.getActiveSheet().getRange('Z' + row.toString()).setValue(time+" by: "+user); SpreadsheetApp.getActiveSheet().getRange("Z2").setValue("Row Last Modified"); }; }; 

我想出了如何在我的域内不请求授权。 我必须作为可安装的触发器运行。

在Google脚本中。转到“编辑”菜单,然后点击“当前项目的触发器”

然后,在编辑触发器上安装...

这不再要求授权!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM