public DataTable GetRoleProgramByRole(string roleID) { List <RoleProgram> lstRoleProg = null; try { ProcParam param = new ProcParam(2); param.ProcedureName = "ADMINISTRATOR_PACK.GET_ROLE_PROGRAM_LIST"; param.AddParamRefCursor(0, "io_cursor"); param.AddParamInput(1, "strROLE_ID", roleID); OraDataReader.Instance.OraReader = GlobalDB.Instance.DataAc.ExecuteDataReader(param); ////this.executionTime = GlobalDB.Instance.DataAc.ExecuteTime; if (OraDataReader.Instance.HasRows) { lstRoleProg = new List <RoleProgram>(); RoleProgram roleProg; OraDataReader.Instance.OraReader.FetchSize = OraDataReader.Instance.OraReader.RowSize * 1000; while (OraDataReader.Instance.OraReader.Read()) { roleProg = new RoleProgram(); roleProg.ROLE_ID = OraDataReader.Instance.GetString("ROLE_ID"); roleProg.PROG_ID = OraDataReader.Instance.GetString("PROG_ID"); roleProg.PROG_NAME = OraDataReader.Instance.GetString("PROG_NAME"); roleProg.REC_STAT = (OraDataReader.Instance.GetString("REC_STAT").ToUpper() == "Y"); roleProg.FLAG = OraDataReader.Instance.GetInteger("FLAG"); lstRoleProg.Add(roleProg); } // always call Close when done reading. OraDataReader.Instance.Close(); } } catch (Exception ex) { lstRoleProg = null; } return(UtilityBLL.ListToDataTable(lstRoleProg, "M_ROLE_PROGRAM")); }
private void UpdateRole() { List <RoleProgram> lstRowProgUpd = null; Role role = null; string result = string.Empty; string userid = ((frmMainMenu)this.ParentForm).UserID; try { DataRow rowRole = this.dtbRole.Rows[0]; if (rowRole != null) { role = new Role(); role.ROLE_ID = rowRole["ROLE_ID"].ToString().ToUpper(); role.ROLE_NAME = rowRole["ROLE_NAME"].ToString(); role.REC_STAT = (bool)rowRole["REC_STAT"]; } if (this.dtbRoleProg.Rows.Count != 0) { lstRowProgUpd = new List <RoleProgram>(); int flag = 0; RoleProgram rowProgUpd; foreach (DataRow rowProg in this.dtbRoleProg.Rows) { flag = Convert.ToInt32(rowProg["FLAG"], NumberFormatInfo.CurrentInfo); if (flag == 2) { rowProgUpd = new RoleProgram(); rowProgUpd.ROLE_ID = rowProg["ROLE_ID"].ToString(); rowProgUpd.PROG_ID = rowProg["PROG_ID"].ToString(); rowProgUpd.REC_STAT = (bool)rowProg["REC_STAT"]; lstRowProgUpd.Add(rowProgUpd); } } } using (AdministratorBLL adminBll = new AdministratorBLL()) { result = adminBll.UpdateRole(role, userid); if (lstRowProgUpd != null) { adminBll.UpdateRoleProgram(lstRowProgUpd, userid); } } if (result.Equals("OK")) { NotifierResult.Show("Update Complete", "Result", 50, 1000, 50, NotifyType.Safe); } else { NotifierResult.Show(result, "Error", 100, 1000, 0, NotifyType.Warning); } } catch (Exception ex) { XtraMessageBox.Show(this, ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); } finally { this.GetRoleList(); this.FormState = eFormState.ReadOnly; this.dntRole.Position = this.positionIndex; this.btnAddNew.Visible = true; this.btnExit.Visible = true; //Reload Menu if (lstRowProgUpd != null) { ((frmMainMenu)this.ParentForm).ReloadMenu(); } } }