PowerApps|JSでレコードをアップデートする方法~UpdateRecord~

ここまで、JavaScriptを使用した
「レコードの取得」「レコードの作成」までを紹介してきました。

(そちらを参考にしたい方は、以下からどうぞ)

今回は、レコードの更新を行います。

JavaScriptを使用したレコードの更新は、
UpdateRecordを使用して、行います。

では、早速使い方についてみていきましょう。

目次(クリックで読みたい部分にジャンプできます)

UpdateRecord関数の概要

UpdateRecord関数は、
PowerAppsの組み込みJavaScriptから、レコードの更新を行うときに使用される関数です。

UpdateRecordの基本構文

updateRecordの基本的には、以下のような構文を用いて使用します。

Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(
    successCallback,
    errorCallback
);

entityLogicalName : 更新したいレコードの論理名

id : 更新したいレコードのID

data : 更新するフィールドと値のオブジェクト

successCallback : 更新が成功したときに呼ばれる関数

errorCallback : 更新に失敗したときに呼ばれる関数

updateRecordは非同期関数

updateRecordの関数は、非同期関数です。

そのため、updateRecordが終わってから処理を行いたい場合には、
successCallvackの中に書く必要があります。

例えば、以下のように書くと、updateRecordの処理が処理中でconsole.logが走ります。

Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(
    successCallback,
    errorCallback
);
console.log("順番確認")
あべべ

処理される順番には十分注意しておきましょう!

UpdateRecordの使用例

では、UpdateRecordについて使用例みてみましょう。

以下の例では、あるアカウントレコードの telephone1(電話番号)フィールドを更新しています。

成功した場合は結果をコンソールにログ出力し、
エラーが発生した場合はエラーメッセージをコンソールに出力します。

// アカウントレコードのIDと更新する電話番号
var accountId = "00000000-0000-0000-0000-000000000000"; // ここに実際のレコードIDを設定
var newPhoneNumber = "123-456-7890";

var data = {
    "telephone1": newPhoneNumber
};

Xrm.WebApi.updateRecord("account", accountId, data).then(
    function(result) {
        console.log("レコード更新成功。更新されたレコードID: " + result.id);
    },
    function(error) {
        console.log("レコード更新エラー: " + error.message);
    }
);

updateRecordは、非同期関数になるので
処理の完了を、待ってから次の処理を行うには、.then()の中で行う必要があります。

また、telephone1 の部分は、
「列の論理名」を入れます。

まとめ

今回は、PowerAppsのUpdateRecordの使い方について紹介しました。

その他のcreateRecordやRetrieveRecordと組み合わせて使用してください。

では、良いPowerAppsライフを。

(Visited 45 times, 1 visits today)