スプレッドシートデータからテーブルビューを作成しているuiAppがありますが、日付列のセルが空であることが問題です。
基本的に、一部のスプレッドシートセルはオプションであり、テーブルに値を入れない(またはnullにする)方法がわかりません。現在、列の値を次のように設定すると機能します。
projectDataRaw[i][projectDataKeys[j]]= new Date(); // inserting dummy data
ただし、テーブルビューでもこれらのセルを空白のままにしておきたいのですが、次を使用する場合は次のようになります。
projectDataRaw[i][projectDataKeys[j]]= null; //
または、そのバリエーションとして、列タイプがDATEに設定されているためエラーが発生します。文字列に変換することはできましたが、日付の値が利用可能になったときにそれらを相互に比較できるようにしたかったのです。
-テーブルビューとnullデータの問題の例-
// load data from sheet
var _PMsheet = "sheet key";
var sSheet = SpreadsheetApp.openById(_PMsheet);
var projectData = sSheet.getRangeByName("ProjectDateCol").getValues();
var projectDataTable = Charts.newDataTable();
projectDataTable.addColumn(Charts.ColumnType.DATE, "Date Column");
for (var i=0; i < projectData.length; i++) {
if (projectData[i] == undefined || projectData[i] == "undefined") {
projectDataTable.addRow([null]);// Object type does not match column type.
// null fails, "undefined" fails, "" fails, [] fails
}
else {
projectDataTable.addRow([projectData[i]]); // this cell has a valid date obj
}
}