/// <summary> /// Check whether all Template Table records exits /// </summary> /// <returns>true if updated</returns> public bool CheckTemplateTable() { int [] tableKeys = X_CM_TemplateTable.GetAllIDs("CM_TemplateTable", "CM_Template_ID=" + this.GetCM_Template_ID(), Get_TrxName()); if (tableKeys != null) { for (int i = 0; i < tableKeys.Length; i++) { X_CM_TemplateTable thisTemplateTable = new X_CM_TemplateTable(GetCtx(), tableKeys[i], Get_TrxName()); int [] existingKeys = X_CM_CStageTTable.GetAllIDs("CM_CStageTTable", "CM_TemplateTable_ID=" + thisTemplateTable.Get_ID(), Get_TrxName()); if (existingKeys == null || existingKeys.Length == 0) { X_CM_CStageTTable newCStageTTable = new X_CM_CStageTTable(GetCtx(), 0, Get_TrxName()); newCStageTTable.SetAD_Client_ID(GetAD_Client_ID()); newCStageTTable.SetAD_Org_ID(GetAD_Org_ID()); newCStageTTable.SetCM_CStage_ID(Get_ID()); newCStageTTable.SetCM_TemplateTable_ID(thisTemplateTable.Get_ID()); newCStageTTable.SetDescription(thisTemplateTable.GetDescription()); newCStageTTable.SetName(thisTemplateTable.GetName()); newCStageTTable.SetOtherClause(thisTemplateTable.GetOtherClause()); newCStageTTable.SetWhereClause(thisTemplateTable.GetWhereClause()); newCStageTTable.Save(); } } } return(true); }
/// <summary> /// Update Elements in Container from Stage /// </summary> /// <param name="project">proejct</param> /// <param name="stage">stage</param> /// <param name="trxName">trx</param> protected void UpdateTTables(MWebProject project, MCStage stage, Trx trxName) { int[] tableKeys = X_CM_CStageTTable.GetAllIDs("CM_CStageTTable", "CM_CStage_ID=" + stage.Get_ID(), trxName); if (tableKeys != null && tableKeys.Length > 0) { for (int i = 0; i < tableKeys.Length; i++) { X_CM_CStageTTable thisStageTTable = new X_CM_CStageTTable( project.GetCtx(), tableKeys[i], trxName); int[] thisContainerTTableKeys = X_CM_ContainerTTable.GetAllIDs( "CM_ContainerTTable", "CM_Container_ID=" + stage.Get_ID() + " AND CM_TemplateTable_ID=" + thisStageTTable.GetCM_TemplateTable_ID(), trxName); X_CM_ContainerTTable thisContainerTTable; if (thisContainerTTableKeys != null && thisContainerTTableKeys.Length > 0) { thisContainerTTable = new X_CM_ContainerTTable(project .GetCtx(), thisContainerTTableKeys[0], trxName); } else { thisContainerTTable = new X_CM_ContainerTTable(project .GetCtx(), 0, trxName); } thisContainerTTable.SetCM_Container_ID(stage.Get_ID()); PO.CopyValues(new X_CM_CStageTTable(project.GetCtx(), tableKeys[i], trxName), thisContainerTTable); thisContainerTTable.Save(trxName); } } }