2016-07-26 51 views
1

我使用Acumatica Web API獲取案例活動的TaskID(屏幕ID - SP203010)。現在升級到版本6.0後,我不明白。我也嘗試了不同的屬性,但似乎沒有讓我看到TaskID。獲取案例活動的任務ID

我將這些活動存儲在從Acumatica合作伙伴門戶網站提取的數據庫中,爲了避免導入重複的活動,我將它與TaskID進行了比較。

下面的代碼片段,我用得到的TaskID

SP203010WS.Screen context = new SP203010WS.Screen(); 
 
context.CookieContainer = new System.Net.CookieContainer(); 
 
context.AllowAutoRedirect = true; 
 
context.EnableDecompression = true; 
 
context.Timeout = 1000000; 
 
context.Url = "https://sso.acumatica.com/Soap/SP203010.asmx"; 
 

 
PartnerPortalCreds loginCreds = GetCreds(); 
 
string username = loginCreds.PARTPRTUSE; 
 
string password = loginCreds.PARTPRTPAS; 
 

 
SP203010WS.LoginResult result = context.Login(username, password); 
 

 
SP203010WS.Content content = context.GetSchema(); 
 
context.Clear(); 
 
string[][] export = context.Export 
 
(
 
\t new SP203010WS.Command[] 
 
{ 
 
\t new SP203010WS.Value 
 
\t { 
 
\t \t Value = currentAcumaticaCaseNo, 
 
\t \t LinkedCommand = content.Case.CaseID 
 
\t }, 
 

 
\t content.Activities.Type, 
 
\t content.Activities.Summary, 
 
\t new SP203010WS.Field { FieldName="Body", ObjectName="Activities"}, 
 
\t content.Activities.StartDate, 
 
\t content.Activities.CreatedBy, 
 
\t new SP203010WS.Field { FieldName="TaskID", ObjectName="Activities"}, 
 
}, 
 
\t null, 
 
\t 0, true, true 
 
);

讓我知道它是否已被移動或更新版本已過時。我應該用什麼來代替TaskID,或者我可以在哪裏找到TaskID。

回答

1

@Krunal,肯提到的,升級到6.0的值對的TaskID和NoteID後只在Obsolete_EPActivity表中。應該使用Obsolete_EPActivity表來替換過時的TaskID整數值和實際的NoteID GUID。

無法通過Web服務訪問Obsolete_EPActivity表。升級到6.0後,Acumatica僅在CRActivity表中插入新的活動。

爲避免重複的活動,必須將實際的NoteID GUID存儲在數據庫中,而不是過時的TaskID整數值,並在導入記錄時比較GUID。

對於以前導入的活動,您還必須將TaskID值替換爲實際的NoteID GUID。根據存儲在數據庫中的CaseID,Subject和CreatedDateTime字段值搜索CRActivity記錄,應找到適當的記錄並使用其NoteID替換舊的TaskID值。

+0

謝謝你Rushlan。我完全一樣。 – Krunal

2

在Acumatica 6.0表中,EPActivity被分解在CRActivity,SMEmail和PMTimeActivity上。原始表格已重命名爲Obsolete_EPActivity。

現在NoteID是所有表上的關鍵字段。 SMEmail和PMTimeActivity包含RefNoteID字段 - 來自CRActivity的外鍵。

您可能會發現值對的TaskID和NoteID表 - Obsolete_EPActivity

+0

瞭解,但是我需要使用Web API也使用相同的屏幕ID SP203010獲得TaskID。有沒有辦法通過Web API獲取並訪問Obsolete_EPActivity對象。 – Krunal