我注意到當你刪除一個工人時,Person記錄仍然存在於DirPerson,DirPersonName,DirPartyTable(和一堆其他相關表)中。如何刪除Ax2012中的DirParty記錄?
我認爲這是由於整個DirParty工程在Ax2012中的複雜性;可能要確保可能包含數據的相關表格在沒有父記錄的情況下不會留下。 但是爲什麼然後DirParty類中有一個函數檢查是否可以刪除一個參與方(DirParty :: canDeleteParty)。我也嘗試過使用DirParty :: autoDeleteParty方法,但沒有成功。沒有從DirPartyTable中刪除。
例子:
static void myLittleDirPartyDeleteJob(Args _args)
{
DirPartyTable dirPartyTable;
DirPerson dirPerson;
Common partyRecord;
DirParty dirPartyClass;
DirPersonRecId personRecId;
;
select firstOnly * from dirPerson where dirPerson.name == "BONANI VIRGINIA NENGWEKHULU";
personRecId = DirPerson.RecId;
//This is after the worker has been deleted on the HcmWorkerListPage form on HRM
dirPartyTable = DirPartyTable::findRec(DirPerson::find(personRecId).RecId);
if (dirPartyTable)
{
partyRecord = dirPartyTable;
dirPartyClass = new DirParty(partyRecord);
if (DirParty::canDeleteParty(dirPartyClass.getPartyRecId(),true))
{
DirParty::autoDeleteParty(dirPartyTable.RecId);
}
}
}
上面的代碼不會刪除任何東西,也沒有擊中調試任何錯誤。我試過把它放在事務塊(ttsbegin,ttscommit)中;選擇記錄forupdate;我甚至試過強迫與DirPartyTable.doDelete()一刪除
當試圖上述任何我收到以下錯誤:」您試圖添加或減去值創建一個無效utcdatetime」
所以我的主要問題是:是否可以刪除DirParty(和關聯的DirPerson; DirPersonName等)表,或者即使從HRModule中刪除僱員之後,聚會記錄是否仍然會保存在Dir *表中?
你確定在通訊錄參數下的組織管理中打開參數'沒有角色的刪除黨'?不知道,但檢查此[鏈接](http://technet.microsoft.com/en-us/library/gg731966.aspx) – 2013-05-05 22:29:27
已檢查參數,但DirParty記錄仍然不會被刪除。 – Celeste 2013-06-10 13:07:50