updateRecord (Client API 参照)
テーブル レコードを更新します。
構文
Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);
パラメーター
| 件名 | 型 | 必要 | 内容 |
|---|---|---|---|
| entityLogicalName | String | 有効 | 更新するレコードのテーブル論理名。 たとえば、「account」。 |
| ID | String | 有効 | 更新するテーブル レコードの GUID。 |
| data | オブジェクト | 有効 | `key` がテーブルのプロパティである、 さまざまな更新のシナリオ向けに |
| successCallback | 関数 | 無効 | レコードを更新した場合に呼び出す関数。 次のプロパティを持つオブジェクトが渡され、更新されたレコードが識別されます:
|
| errorCallback | 関数 | 無効 | 処理が失敗したときに呼び出す関数。 次のプロパティを持つオブジェクトが渡されます。
|
戻り値
成功時に、successCallback パラメーターの説明で指定済みの値を含む promise オブジェクトを戻します。
例
これらの例では、Web APIをしたテーブルの更新および削除 で示した要求オブジェクトの一部を使用して、テーブル レコードを更新するためのデータ オブジェクトを定義しています。
基本的な更新
レコード ID = 5531d753-95af-e711-a94e-000d3a11e605 の既存の取引先企業を更新します。
// define the data to update a record
var data =
{
"name": "Updated Sample Account ",
"creditonhold": true,
"address1_latitude": 47.639583,
"description": "This is the updated description of the sample account",
"revenue": 6000000,
"accountcategorycode": 2
}
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Account updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
関連テーブルへの関連付けを更新する
関連テーブル レコード (検索) への関連付けを更新するには、別のレコードへの @odata.bind 注釈を使用して単一値ナビゲーション プロパティの値を設定します。 ただし、オフライン モードのモバイル クライアントの場合、@odata.bind 注釈を使用することはできません。代わりに、目的のレコードを示す 検索 オブジェクト (logicalname および id) を渡す必要があります。 これは両方のシナリオ用のコード例です。
オンライン シナリオ用 (サーバーに接続済み)
次の例では、アカウント レコードを更新して、別の取引先担当者レコードを取引先企業アカウントの取引先責任者として関連付けます。
// define the data to update a record
var data =
{
"primarycontactid@odata.bind": "/contacts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
}
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Account updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
モバイル オフライン シナリオ用
これは、オフライン モードで作業中にモバイル クライアントから取引先企業レコードを更新して、別の取引先担当者レコードを取引先企業の取引先責任者として関連付ける、更新されたサンプル コードです。
// define the data to update a record
var data =
{
"primarycontactid":
{
"logicalname": "contact",
"id": "61a0e5b9-88df-e311-b8e5-6c3be5a8b200"
}
}
// update the record
Xrm.WebApi.offline.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Account updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
Activity 型の関連テーブルへの関連付けを更新する
Activity 型の関連テーブルへの関連付けを更新するには、別のレコードへの @odata.bind 注釈を使用して単一値ナビゲーション プロパティの値を設定します。
タスク上の関連する営業案件列を更新する
// define the data to update a record
var data =
{
"new_relatedopportunities_task@odata.bind": "/opportunities(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
}
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Task updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
タスク上の関連列を更新する
// define the data to update a record
var data =
{
"regardingobjectid_account_task@odata.bind": "/accounts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
}
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Task updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
コレクション値のナビゲーション プロパティの関連付けを更新する
Xrm.WebApi.online.execute API を使用して、コレクション値のナビゲーション プロパティを関連付けたり関連付けを解除したりできます。 これは、モバイル オフライン シナリオではサポートされて いません。
関連トピック
注意
ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)
この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。
フィードバック
フィードバックの送信と表示