メインコンテンツまでスキップ

基本

インスタンス生成

もしあなたが、特定のスプレッドシート上に GAS を作成し、そのスプレッドシートを扱うのであれば以下の方法でインスタンス生成が可能です。

const gassma = new Gassma.GassmaClient();

あるいは、スプレッドシートではない場所に GAS を作成した、あるいは別の場所にあるスプレッドシートを扱うのであれば、引数に対象のスプレッドシートの ID を挿入することでインスタンス生成が可能です。

const gassma = new Gassma.GassmaClient("XXXXXXXXXXXXXXXXXXX");

オプションオブジェクトでの初期化

リレーション定義やグローバル omit など、高度な設定を行う場合はオプションオブジェクトを渡します。

const gassma = new Gassma.GassmaClient({
id: "XXXXXXXXXXXXXXXXXXX", // 省略可
relations: {
// リレーション定義(詳細はリレーション定義のリファレンスを参照)
},
omit: {
// グローバル omit 設定(詳細はグローバル omit のリファレンスを参照)
Users: { password: true },
},
});
オプション説明参照
idスプレッドシート ID(省略時はアクティブスプレッドシート)-
relationsリレーション定義リレーション定義
omitグローバル omit 設定グローバル omit
defaultsフィールドのデフォルト値defaults
updatedAt自動更新タイムスタンプupdatedAt
ignoreフィールドレベルの除外ignore
ignoreSheetsシートレベルの除外ignore
mapフィールド名のマッピングmap
mapSheetsシート名のマッピングmap
autoincrement自動採番autoincrement
strictUndefinedChecksクエリ入力の明示的な undefined を実行時エラーにするstrictUndefinedChecks / Gassma.skip

Date 値の判定

GASsma は GAS ライブラリとして、呼び出し元スクリプトとは別のスクリプトコンテキストで動作します。そのため、GASsma が返した Date 値を instanceof Date で判定すると false になります。判定には Object.prototype.toString を使用してください。

const user = gassma.Users.findFirst({ where: { id: 1 } });

user.createdAt instanceof Date;
// => false(ライブラリ境界を越えた Date は instanceof で判定できない)

Object.prototype.toString.call(user.createdAt) === "[object Date]";
// => true
注記

この制約は Date などのビルトイン型に対する instanceof の話です。GASsma が公開するエラークラス(Gassma.GassmaMissingArgumentError など)は Gassma 名前空間(ライブラリの global)経由で参照するため、instanceof で判定できます。詳しくはエラー一覧を参照してください。