/*-----------------------------------------------------*/ public virtual void Submit(bool aForceGenFlag) { bool aReportGenerated = true; String aURL; cDataObjectList aReportDOList; if (aForceGenFlag) { aReportDOList = WfTaskAssignmentObject.GetRelatedPropertyDataObjectList("ReportOutput"); aReportGenerated = aReportDOList.Count > 0 && aReportDOList[0].GetPropertyInt("GenStatus") == -1 && aReportDOList[0].GetPropertyValue("ReportOutputData") != null; } if (aReportGenerated) { Submit(null, PostSubmitModuleName, PostSubmitModuleConfig, ""); } else { aURL = ModulePage_BuildPageKeyURL(PageKey); aURL = cWebLib.AddQuerystringParameter(aURL, "AppNotGenerated", "True"); Response.Redirect(aURL); } }
/*====================================================*/ ///<summary> ///selects a third party by taking a PersonRelationShip and: ///* creating a WfTaskAssighment for this third party role ///* note that the user already exists ///</summary> public virtual cWfTaskAssignment SelectThirdParty(String aPersonRelationshipID) { cDataObjectList aChildProjectTasksObjectList; // This following code needs to be modified if there are mutiple third parties for one project task. aChildProjectTasksObjectList = WfTaskAssignmentObject.GetRelatedPropertyDataObjectList("WfProjectTask.ChildProjectTasks"); if (aChildProjectTasksObjectList.Count > 1) { cDataObject aPersonRelationshipDO = WebSession.DataObjectFactory.GetDataObjectFromPrimaryKey("PersonRelationship", aPersonRelationshipID); cXMLDoc aXmlDoc; XmlNode aDataObjectNode, aFiltersNode, aArgNode; aXmlDoc = WebSession.DataObjectFactory.CreateDataObjectNode("WfProjectTask", out aDataObjectNode, out aFiltersNode); aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "ParentProjectTaskID", WfTaskAssignmentObject.GetRelatedPropertyString("WfProjectTask.WfProjectTaskID"))); aArgNode = aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "ID", aPersonRelationshipDO.GetPropertyString("RelatedPersonRoleID"))); aArgNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentRelatedPropertyNode(aXmlDoc, "AssignToRoleWorkgroupStaffcontact")); cDataObject aChildProjectTaskDO = WebSession.DataObjectFactory.GetDataObject(aDataObjectNode); return(SelectThirdParty(aPersonRelationshipID, aChildProjectTaskDO.GetPropertyString("WfTaskID"))); } else if (aChildProjectTasksObjectList.Count == 1) { return(SelectThirdParty(aPersonRelationshipID, aChildProjectTasksObjectList[0].GetPropertyString("WfTaskID"))); } return(null); }