Salesforce オブジェクトをIN句で検索するサンプル
環境
Salesforce
Node.js
/* 名前(Name)がaa社、bb社、cc社のいずれかにマッチする取引先だけ取得する */
List<String> comps = new List<String>{'aa社’, 'bb社’, 'cc社’};
List<Account> accounts = [SELECT Id, Name, CreatedDate FROM Account WHERE Name IN :comps];
System.debug(accounts);
JSforceはJavaScriptからSalesforceのAPIにアクセスするライブラリです。
このJSforceで先述のIN句を使うためには次のようにします。
参考
https://jsforce.github.io/
サンプルコード
const comps = ['aa社', 'bb社', 'cc社'] const accounts = [] conn .sobject("Account") .find({ 'Name': { $in: comps } }, ['Id', 'Name', 'CreatedDate']) .on("record", (record) => { accounts.push(record) }) .on("end", () => { }) .on("error", (err) => { console.error(err) }) .run({ autoFetch : true, maxFetch : 100 })
JSforceのメリット
レコードのCRUD(Create, Retrieve, Update, Upsert, Destroy)が可能
Metadataを扱える
Apex REST APIをコールできる
Bulk処理ができる