2014-01-17 55 views
0

因爲V3不支持在SyncError狀態中恢復IDS對象,所以我不得不使用V2恢復調用(在https://developer.intuit.com/docs/95_deprecated/qbd_v2/qbd_v2_reference/0100_calling_data_services/reverting_an_object處找到)。不幸的是,我遇到了一些修理客戶的麻煩。QBD V2客戶端恢復

POST:https://services.intuit.com/sb/customer/v2/<RealmID>

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> 
<Revert xmlns="http://www.intuit.com/sb/cdm/v2" RequestId="7aa1d747cf5c58969a3bc638e0c820b1"> 
    <Object xsi:type="Customer" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <Id idDomain="QB">6</Id> 
    <SyncToken>2</SyncToken> 
    </Object> 
</Revert> 

響應:

<?xml version=\"1.0\" ?> 
<RestResponse xmlns=\"http://www.intuit.com/sb/cdm/v2\"> 
<Error RequestId=\"8c28d64de5c644079d10f0165b717258\"> 
    <RequestName>ErrorRequest</RequestName> 
    <ProcessedTime>2014-01-17T00:03:35.627Z</ProcessedTime> 
    <ErrorCode>-2001</ErrorCode> 
    <ErrorDesc>cvc-complex-type.2.4.b: The content of element 'Object' is not complete. One of '{\"http://www.intuit.com/sb/cdm/v2\":MetaData, \"http://www.intuit.com/sb/cdm/v2\":ExternalKey, \"http://www.intuit.com/sb/cdm/v2\":Synchronized, \"http://www.intuit.com/sb/cdm/v2\":AlternateId, \"http://www.intuit.com/sb/cdm/v2\":CustomField, \"http://www.intuit.com/sb/cdm/v2\":Draft, \"http://www.intuit.com/sb/cdm/v2\":ObjectState, \"http://www.intuit.com/sb/cdm/v2\":PartyReferenceId, \"http://www.intuit.com/sb/cdm/v2\":TypeOf}' is expected. 
    </ErrorDesc> 
</Error> 
</RestResponse> 

我不知道爲什麼它會需要一些元素的Revert通話。我在服務器上的數據無效,這就是爲什麼它首先處於錯誤狀態。這個問題是否可能是由於V3中創建了錯誤而導致的,而不是使用V2解決的?

感謝, 阿甘

回答

0

QBD V2還原/刪除的API是在測試版發佈較早,可能有問題。你可以使用它們,但我們不支持它們。處理錯誤對象(v2或v3)的最佳操作過程是現在使用V2更新端點「更新」它們。不是最好的解決方案,但我們正在努力。展望未來,您可以在此發佈您的問題 - https://intuitpartnerplatform.lc.intuit.com

V3更新不適用於錯誤的對象。

+0

將我們的V3集成移回過時的V2集成不是一個實際的選擇。你真的告訴我,正在開發的新應用程序無法解決同步錯誤嗎?難道這不會使這些客戶無限期地被所有未來的應用卡住嗎? – Forrest

+0

我知道現在不實用,但V3的同步狀態API或衝突解決工具仍在進行中。所以,直到那個時候上面的解決方案應該工作。這個問題在我們的優先列表上,正在進行中。 –

相關問題