2017-09-23 12 views
0

新しい顧客の詳細を入力するためにスタッフが使用するページに接続するためのサーバーコードがあります。ページは、ページとシートと同じフィールドを持つGoogleドライブテーブルから継承されます。残念ながら、サーバーコードをページに接続する方法がわからないため、新しいデータが入力され、送信ボタンが押されたときにNewCustomer()関数が呼び出され、そのデータがスプレッドシートの最後の新しい行に挿入されます。 私は先週appmakerを使い始めました。私の質問が幼稚なものであれば申し訳ありません。 本当にありがとうございます。サーバースクリプトをページに接続してスプレッドシートに新しいデータを追加する

サーバコード:

function NewCustomer() { 
    var spreadSheet = SpreadsheetApp.openById("***").getActiveSheet()[0], 
     dataToBackUp = [], 
     globalKeys = { 
      model: ["Channel", "Owner", "INQDate","CustomerName", "CNT", "Contact", "Email", 
        "Amount", "Status", "TargetDate", "Type", "Transaction", "NoteUpdate"], 
      label: ["Channel", "Owner", "INQ Date","Customer Name", "CNT", "Contact", "Email", 
        "Amount", "Status", "Target Date", "Type", "Transaction", "Note Update"], 
     }; 
    var records = app.models.requests.newQuery().run(); 
    if(records.length >= 1) { 
     for (var i = 0; i < records.length; i++) { 
     var newLine = []; 
     for (var x = 0; x < globalKeys.model.length; x++) { 
      newLine.push(records[i][globalKeys.model[x]]); 
     } 
     dataToBackUp.push(newLine); 
     if(i === records.length - 1) { 
      if(dataToBackUp.length >= 1) { 
       spreadSheet.appendRow(dataToBackUp); 

      } 
     } 
     } 
    } 
    } 

答えて

0

だからあなたの唯一の問題は、クライアントとサーバー間の通信であれば、あなたはこのスニペットを使用してそれを行うことができます。

// onClick button event handler 
google.script.run 
    .withFailureHandler(function(error) { 
     // TODO: An error occurred, so display an error message. 
    }) 
    .withSuccessHandler(function(result) { 
    // TODO: Handle success 
    }) 
.myPublicServerSideFunction(param1, param2); 

あなたはクライアント - についての詳細を読むことができます

https://developers.google.com/apps-script/guides/html/reference/run

データのバックアップを作成する場合は、Settings -> Deploymentsに移動し、展開を選択してExport Dataに移動します。プロセスを自動化したい場合は、Cloud SQLに切り替えるだけで、あなたのバックアップを気にします。

関連する問題