现场服务:通过 SDK/API 取消 BookableResourceBooking 的正确方法?
Field Service: correct way to cancel a BookableResourceBooking via SDK/API?
BookableResourceBooking 实体记录在此处:
我希望能够取消预订,但我似乎找不到任何解释如何取消预订的 SDK 或 API 文档。将 bookingstatus 值更改为“已取消”是否足以取消预订?我应该在哪里输入原因代码?
您可以使用 SDK 以及 API。
当您在 CRM 中看到可预订资源预订时,您可以看到停用按钮。单击它将停用可预订资源预订。
现在有一种更简洁的数据管理方式,您可以将预订状态设置为已取消,然后停用记录,这样您可以捕获完整的数据,因为可预订资源预订记录是 cancelled/deactivated。
var entity = {};
entity["bookingstatus@odata.bind"] = "/bookingstatuses(bbda588b-013a-eb11-a813-000d3a25bbe9)"; /* cancelled booking status ID*/
entity.statecode = 1; /*Inactive*/
entity.statuscode = 2; /*Inactive*/
Xrm.WebApi.online.updateRecord("bookableresourcebooking", "bbda588b-013a-eb11-a813-000d3a25bbe9", entity).then(
function success(result) {
var updatedEntityId = result.id;
},
function(error) {
Xrm.Utility.alertDialog(error.message);
}
);
BookableResourceBooking 实体记录在此处:
我希望能够取消预订,但我似乎找不到任何解释如何取消预订的 SDK 或 API 文档。将 bookingstatus 值更改为“已取消”是否足以取消预订?我应该在哪里输入原因代码?
您可以使用 SDK 以及 API。
当您在 CRM 中看到可预订资源预订时,您可以看到停用按钮。单击它将停用可预订资源预订。
现在有一种更简洁的数据管理方式,您可以将预订状态设置为已取消,然后停用记录,这样您可以捕获完整的数据,因为可预订资源预订记录是 cancelled/deactivated。
var entity = {};
entity["bookingstatus@odata.bind"] = "/bookingstatuses(bbda588b-013a-eb11-a813-000d3a25bbe9)"; /* cancelled booking status ID*/
entity.statecode = 1; /*Inactive*/
entity.statuscode = 2; /*Inactive*/
Xrm.WebApi.online.updateRecord("bookableresourcebooking", "bbda588b-013a-eb11-a813-000d3a25bbe9", entity).then(
function success(result) {
var updatedEntityId = result.id;
},
function(error) {
Xrm.Utility.alertDialog(error.message);
}
);