3

Fusion テーブルからデータを取得し、(作成したテンプレートを使用して) Google ドキュメントに配置し、pdf にしてから (pdf への) リンクを表示するプログラムがあります。私の問題は、私のアカウントでは正常に機能することですが、他の誰かがクリックしようとすると、「404 Not Found」エラーが発生し続けます。ファイルを表示できるのは私だけであるため、エラーが表示されると思います。私の質問は次のとおりです。組織内の全員とプログラムでファイルを共有する方法はありますか、それとも別の方法がありますか?

4

1 に答える 1

4

を使用してそれを行うことができます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);
          }
}

最初は変数名として「editor」を使用していましたが、混乱を避けるために「viewers」に変更しました。

アクセスを得るためにドメイン内のすべての人を含める必要がある場合は、すべてのユーザーでグループを作成してプロセスを簡素化するのが最善の解決策だと思います。

編集:ファイルを共有フォルダーに移動するというより簡単な解決策があるかもしれません:フォルダー内のすべてのアイテムは、フォルダー自体と同じ共有パラメーターを持っています。

例 :

function sharebyFolder(){
    var file = DocsList.getFileById('docId');
    var folder = DocsList.getFolderById('shared folder Id');
    file.addToFolder(folder)
      }    
于 2012-07-06T17:55:11.370 に答える