[英]Acumatica How to programmatically create Project Activity?
創建項目后,我試圖創建一個活動,出現以下錯誤
找不到項目ProjectTaskID(限制:False,外部:True,值:Management)
找不到項目ContractID(限制:False,外部:False,值:2285)
創建項目后,RowUpdating中的代碼位置。
var projTask = (PMTask)PXSelect<PMTask,
Where<PMTask.taskCD, Equal<Required<PMTask.taskCD>>,
And<PMTask.projectID, Equal<Required<PMTask.projectID>>>>>
.SelectSingleBound(Base, new object[] { }, "Management", Base.Project.Current.ContractID);
int projTID = projTask.TaskID.Value;
CRActivityMaint ent1 = PXGraph.CreateInstance<CRActivityMaint>();
CRActivity fold1 = new CRActivity();
fold1 = ent1.Activities.Insert(fold1);
fold1.Subject = "Drawings";
fold1.Type = "FC";
fold1.ContactID = Base.Project.Current.ContractID;
ent1.Activities.Update(fold1);
PMTimeActivity t1 = new PMTimeActivity();
t1.ContractID = Base.Project.Current.ContractID;
t1.Summary = "Drawings";
t1.TrackTime = true;
t1.ProjectID = Base.Project.Current.ContractID;
t1.ProjectTaskID = projTID;
ent1.TimeActivitiesOld.Insert(t1);
ent1.TimeActivity.Current = t1;
ent1.Actions.PressSave();
問題是因為TimeActivity未正確初始化
CRActivityMaint ent1 = PXGraph.CreateInstance<CRActivityMaint>();
CRActivity fold1 = new CRActivity();
fold1 = ent1.Activities.Insert(fold1);
fold1.Subject = "Drawings";
fold1.Type = "FC";
fold1.OwnerID = Base.Project.Current.CreatedByID; //change to proj manager item.UsrProjectMan get guid
ent1.Activities.Update(fold1);
ent1.TimeActivity.Current.Summary = "Drawnings";
ent1.TimeActivity.Current.TrackTime = true;
ent1.TimeActivity.Current.IsBillable = false;
ent1.TimeActivity.Current.ProjectID = Base.Project.Current.ContractID;
ent1.TimeActivity.Current.ProjectTaskID = projTID;
ent1.Actions.PressSave();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.