hereのガイドに従って、Google Apps Scriptでダッシュボード機能を開発しました。私は、あなたがスクリプト関数(この例ではdrawChart()関数)を呼び出すことを実装すると、それはhereのように "アクティブなコンテンツ"とみなされることが分かりました。 私はHTMLを使用しない他の例を見てきましたが、それらはすべて償却されたUiAppクラスの使用を必要とするようです。だから、Google Apps Scriptのダッシュボード/グラフ機能でHTTPSセキュリティ証明書を取得する唯一の方法はありますか?これが事実であれば、それはむしろ限定的なようです。私はポストまたは2つの白い画面だけを得る同様の欲求不満を言及し、それがHTTPSの制限のためだと思う。Google AppsではHTMLで「アクティブコンテンツ」が許可されず、UiAppクラスは償却されました
ここに問題があると感じたので、私はコードを投稿しませんでした。ここに私のコードがあります。私はまた、関数/スクリプトを持たないシンプルなHTML "Hello World"ファイルを試してみました。それは私のGoogleスプレッドシートに関連するここではスクリプトです:ここでは
function OpenChart(){
var html = HtmlService.createHtmlOutputFromFile('DummyChart');
SpreadsheetApp.getUi().showModalDialog(html, "Statistics");
}
され、それが呼び出すHTMLファイル:すべてのヘルプは感謝
<!DOCTYPE html>
<html>
<head>
<base target="_top">
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
//Load charts package and visualization API
google.charts.load('current', {'packages': ['corechart']});
google.charts.setOnLoadCallback(MakeChart);
//Here is the script I think could be causing a problem
function MakeChart()
{
var ss = SpreadsheetApp.getActive();
var s = ss.getSheets();
var s = sheets[1];
var UI = SpreadsheetApp.getUi();
var response = UI.prompt("Please enter the first cell in the category").getResponseText();
var ir = s.getRange(response);
var n= 0;
var stored = [];
stored.push(["Income Category", "Frequency"]);
while (ir.getValue()!= "") {
n = n +1;
ir = ir.offset(1, 0);
}
//Above we just set n, below we use n to fill our array
ir = ir.offset(-n,0)
for(i =0; i<n;i++) {
stored.push([ir.getValue(),ir.offset(n+2,0).getValue()]);
ir = ir.offset(1, 0);
}
var data = google.visualization.arrayToDataTable([
stored[]]);
/*I tried to also load data here directly as is seen on the pie chart example I used. This didn't have any affect*/
var options = { 'chartArea:backgroundColor': "Azure",
'is3D': true,
'title': 'Test Chart'};
//Now instantiate it
var chart = new google.visualization.PieChart(document.getElementById('chartDiv'));
chart.draw(data, options);
}
</script>
</head>
<body>
<div id="chartDiv" style="width: 450px; height: 300px;"> </div>
</body>
</html>
が。
あなたは円グラフデモにリンクされているガイドは、アプリケーションのスクリプトでうまく動作します。あなたがコードを掲示すれば、人々はあなたの問題がどこにあるかもしれないかを示すことができます。 https://script.google.com/macros/s/AKfycbzlyXzJOGq-bpsuS9teSsgdZ3DBM_XjOUClryBEAzPQ3_EySqo/exec –
ありがとうございます、コードを投稿しました。私は文法上の誤りはありません、私はちょうど白い画面を取得しています、そして私の疑惑はGoogleが実装するセキュリティプロトコルでした。私はあなたのスクリプトの仕事を見て、あなたがしたこととやったことの間に何が違うのか不思議です。おそらく私はコードをGoogleスプレッドシートのダイアログボックスとしてポップアップ表示させようとしていますか? – DeCodened
ああ、クライアント側でサーバー側のコードを実行しようとしています。それは物事を壊すでしょう。 –