Ax’ta yeni bir iş akışı ataması oluştuğunda aynı kullanıcının bu iş akışı için daha önce onayı var mı tespit etmek
Merhaba
İş akışında yeni bir atama oluştuğunda atanan kişinin aynı iş akışında daha önce onayı var mı diye kontrol etmek için aşağıdaki metodu kullanabilirsiniz. Bu metodu WorkflowTrackingTable’ a yazdım ama farklı bir yere de yazılabilir. İş akışı altyapısı biraz karışık standart yapıyı değiştirirken dikkatli olmakta fayda var.
Boolean dmrExistApprove() { boolean ret = false; WorkflowTrackingStatusTable workflowTrackingStatus; WorkflowTrackingStatusTable workflowTrackingStatusExist; WorkflowTrackingTable workflowTrackingTable; ; workflowTrackingStatusExist = WorkflowTrackingStatusTable::findRecId(this.WorkflowTrackingStatusTable); select firstOnly RecId, User from workflowTrackingTable exists join workflowTrackingStatus where workflowTrackingTable.WorkflowTrackingStatusTable == workflowTrackingStatus.RecId && workflowTrackingTable.TrackingType == WorkflowTrackingType::Approval && workflowTrackingTable.User == this.User && workflowTrackingTable.RecId != this.RecId && workflowTrackingStatus.ContextRecId == workflowTrackingStatusExist.ContextRecId && workflowTrackingStatus.InstanceNumber == workflowTrackingStatusExist.InstanceNumber && workflowTrackingStatus.ContextTableId == workflowTrackingStatusExist.ContextTableId && workflowTrackingStatus.TrackingStatus != WorkflowTrackingStatus::Cancelled ; if(workflowTrackingTable.recid) { ret = true; } return ret; }
Selamlar.