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

createManyAndReturn()

該当シートに複数行を同時に追加し、作成された全レコードを配列で取得したい場合に利用します。

createMany と同じ書き込み処理を行いますが、戻り値が異なります。

使用できるキー

キー名内容省略備考
data登録するデータの指定不可
select戻り値の取得列の表示設定omit / include と同時に使用できません
omit戻り値の取得列の除外設定select と同時に使用できません
includeリレーション先の取得詳細はこちら

説明例用のシート

説明用シート

説明

上記例に以下の行を追加したいとします。

  • 1 行目

    • name => Shibata
    • age => 23
    • pref => Shimane
    • postNumber => 690-8540
  • 2 行目

    • name => Suzuhara
    • age => 25
    • pref => Tottori
    • postNumber => 680-8571

この場合以下のコードとなります。

const gassma = new Gassma.GassmaClient();

// gassma.{{TARGET_SHEET_NAME}}.createManyAndReturn
const result = gassma.sheet1.createManyAndReturn({
data: [
{
name: "Shibata",
age: 23,
pref: "Shimane",
postNumber: "690-8540",
},
{
name: "Suzuhara",
age: 25,
pref: "Tottori",
postNumber: "680-8571",
},
],
});

戻り値は以下の形式です。

[
{ name: "Shibata", age: 23, pref: "Shimane", postNumber: "690-8540" },
{ name: "Suzuhara", age: 25, pref: "Tottori", postNumber: "680-8571" },
];

作成された全レコードが配列で返されます。

createMany との違い

メソッド戻り値
createMany{ count: number }
createManyAndReturn作成されたレコードの配列

また、空配列を渡した場合の挙動も異なります。

// createMany の場合
gassma.sheet1.createMany({ data: [] });
// => undefined

// createManyAndReturn の場合
gassma.sheet1.createManyAndReturn({ data: [] });
// => []

data に指定しなかったフィールドは null として返されます。

const result = gassma.sheet1.createManyAndReturn({
data: [{ name: "Shibata" }],
});
// => [{ name: "Shibata", age: null, pref: null, postNumber: null }]
注記

createManyAndReturn では Nested Write は利用できません。リレーション先を同時に操作したい場合は create を使用してください。