Tôi đang cố thực hiện tìm nạp XML bằng cách sử dụng API WEB /api/data/v8.x. Tất cả đều ổn, ngoại trừ khi tôi có truy vấn liên quan đến "nơi một thuộc tính chứa giá trị số". Ví dụ, fetchXML sau đây để tìm tài khoản với số điện thoại chứa '03':Cách truy vấn API Web Dynamics CRM bằng cách sử dụng FetchXml tùy chỉnh có liên quan đến bộ lọc Giá trị số?
<fetch mapping="logical">
<entity name="account">
<attribute name="name" />
<attribute name="telephone1" />
<order attribute="name" descending="false" />
<filter type="and">
<condition attribute="telephone1" operator="like" value="%03%" />
</filter>
</entity>
</fetch>
Khi chúng ta chạy nó thông qua GET trên WEB API:
https://CRM_URL/api/data/v8.0/accounts?fetchXml=<fetch%20mapping%3D"logical"><entity%20name%3D"account"><attribute%20name%3D"name"%20%2F><attribute%20name%3D"telephone1"%20%2F><order%20attribute%3D"name"%20descending%3D"false"%20%2F><filter%20type%3D"and"><condition%20attribute%3D"telephone1"%20operator%3D"like"%20value%3D"%2503%25"%20%2F><%2Ffilter><%2Fentity><%2Ffetch>
CRM Web API trả về lỗi XML không hợp lệ như sau:
{"error": { "mã": "", "nội dung": "XML không hợp lệ", "innererror": { "message": "XML không hợp lệ", "type": "System.ServiceModel.FaultException`1 [[Microsoft. Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version = 8.0.0.0, Culture = trung tính, PublicKeyToken = 31bf3856ad364e35]]"}}}
việc chạy truy vấn ổn nếu giá trị lọc không khởi động với số hoặc tôi xóa '%' trên giá trị bộ lọc. Kết luận của tôi là điều này là phải làm với mã hóa và giải mã "% + số" trong giá trị bộ lọc của tôi.
Có điều gì sai với truy vấn của tôi hoặc lỗi Dynamics CRM Web API này không? bất kỳ công việc xung quanh?
Đáng ngạc nhiên, chuyển số chữ số đơn lẻ làm tham số hoạt động. 'value = '% 3'' chẳng hạn. Cả hai giá trị 'value = '% 03%'' và 'value = '% 30%'' đều không hoạt động. – dynamicallyCRM