2017-04-07 73 views
3

這是第一種場景: - 我在acumatica系統中使用webservices api創建了Bill和Adjustments屏幕(AP301000)的新「賬單」文檔。 - 之後,我需要使用webservices加載當前屏幕(AP301000)的「應用程序」選項卡菜單中的所有文檔記錄以進行關閉處理。問題是有很多文件會被加載。它大約有9500份文件,當然需要更多次(大約10分鐘)。如何在acumatica中使用webservices api導出數據時設置超時

我在導出過程中總是出現錯誤,此應用程序選項卡菜單中的所有記錄。並且錯誤消息是「操作超時」。

是否有任何引用來設置通過webservices api的巨大文檔的導出過程中的超時。

sCon.getLoginSettlementVoucher(context); 
AP301000Content billSchema2 = context.AP301000GetSchema(); 
List<Command> cmds = new List<Command>(); 
billSchema2.DocumentSummary.Type.Commit = false; 
billSchema2.DocumentSummary.Type.LinkedCommand = null; 

var command2 = new Command[] 
{ 
     new Value { Value = "Bill", LinkedCommand = billSchema2.DocumentSummary.Type}, 
     new Value { Value = "17000034", LinkedCommand = billSchema2.DocumentSummary.ReferenceNbr}, 
     billSchema2.Applications.DocTypeDisplayDocType, 
     billSchema2.Applications.ReferenceNbrDisplayRefNbr, 
     billSchema2.Applications.Balance, 
     billSchema2.Applications.AmountPaid 
}; 
try 
{ 
     var applications = context.AP301000Export(command2, null, 0, false, true); 
     .......................... 
    } 
    catch(Exception x){} finally{context.Logout()} 

回答

4

Here is the link to WebClientProtocol.Timeout property on MSDN - 這是更好的方式來檢查MSDN因爲超時屬性是從一個基類派生在.NET Framework

做這將是改變屏幕的超時值的方法目的。 就你而言,我認爲該對象是「上下文」。

默認值是100000,這是以毫秒爲單位,所以1分40秒。如果您要將此值更改爲大約11分鐘半的700000,則應該沒問題。

以下是如何操作:

context.Timeout = 700000;

+0

謝謝,它工作:) – HariEko