テーブルシートでは、パフォーマンス向上のため、ビューを作成した際に取得したデータを内部にキャッシュして使用します。ビューを作成した後で、接続先のデータベースが変更された場合や、接続するデータソースを変更する場合に、テーブルシートではデータソースから新たなデータを取得して、内部にキャッシュしたデータを更新することができます。この機能は、例えばライブサーバーで接続エラーやその他の問題が発生し、バックアップサーバーのデータソースに切り替える場合や、SpreadJS の SSJSON に保存したテーブルシートの定義情報をテンプレートとして使用して、データの接続先を実行時に変更する場合などに役立ちます。
SSJSON をテンプレートとして使用し、データソースを実行時に動的に変更する実行例を以下に示します。
Javascript |
コードのコピー
|
---|---|
spread.fromJSON(spreadJson); |
Javascript |
コードのコピー
|
---|---|
let myTable = spread.dataManager().tables["myTable"]; myTable.options = { remote: { read: function () { return Promise.resolve(dataSource); } } }; |
Javascript |
コードのコピー
|
---|---|
myTable.fetch(true).then(function() { let myView = myTable.views["myView"]; let sheet = spread.getActiveSheetTab(); sheet.setDataView(myView); }); |