我正在使用 Dynamics 365 Web API 和 VBA 来更新特定实体记录。但是,我没有主键 GUID,但我有另一个可以标识唯一记录的其他字段值的组合。有没有办法更改
Request.Resource
行以使用其他字段?
如果我提供特定的主键 GUID,此代码就可以工作,但在需要更新时我将没有 GUID。
Dim crm As New crm
Dim Request As New WebRequest
Dim Response As WebResponse
Dim dict As New Scripting.Dictionary
Request.Resource = "productpricelevels(F01E6888-7643-EE11-BDF4-00224808D9DA)"
Request.Format = WebFormat.Json
Request.ResponseFormat = Json
Request.Method = WebMethod.HttpPatch
'== field to update
dict.Add "amount", 4
Request.Body = WebHelpers.ConvertToJson(dict)
' Response from query
Set Response = crm.Query(Request)
If Response.StatusCode = WebStatusCode.NoContent Then
Debug.Print ("Success")
...
这应该可以通过
alternate keys
实现,您必须自己定义。
它应该看起来像这样:
Request.Resource = "productpricelevels(name='fish and chips',fishtype='hoki')"
参考:使用备用键参考记录