protected void ctlRejectReasonGridView_RowCommand(object sender, GridViewCommandEventArgs e) { int reasonId; if (e.CommandName.Equals("ReasonEdit")) { int rowIndex = ((GridViewRow)((ImageButton)e.CommandSource).NamingContainer).RowIndex; reasonId = UIHelper.ParseShort(ctlRejectReasonGridView.DataKeys[rowIndex].Value.ToString()); ctlRejectReasonGridView.EditIndex = rowIndex; //ctlReasonFormView.PageIndex = (ctlRejectReasonGridView.PageIndex * ctlRejectReasonGridView.PageSize) + rowIndex; //ctlReasonFormView.ChangeMode(FormViewMode.Edit); //IList<DbRejectReason> list = new List<DbRejectReason>(); //list.Add(ScgDbQueryProvider.RejectReasonQuery.FindByIdentity(reasonId)); //ctlReasonFormView.DataSource = list; //ctlReasonFormView.DataBind(); //GridView ctlReasonLangGrid = ctlReasonFormView.FindControl("ctlReasonLangGrid") as GridView; //ctlReasonLangGrid.DataSource = ScgDbQueryProvider.RejectReasonLangQuery.FindReasonLangByReasonId(reasonId); //ctlReasonLangGrid.DataBind(); ctlRejectReasonGridView.DataCountAndBind(); ctlDbRejectReasonEditor.Initialize(FlagEnum.EditFlag, reasonId); ctlUpdatePanelGridView.Update(); } if (e.CommandName.Equals("ReasonDelete")) { try { int rowIndex = ((GridViewRow)((ImageButton)e.CommandSource).NamingContainer).RowIndex; reasonId = UIHelper.ParseShort(ctlRejectReasonGridView.DataKeys[rowIndex].Value.ToString()); DbRejectReason rejectReason = ScgDbQueryProvider.DbRejectReasonQuery.FindByIdentity(reasonId); RejectReasonService.Delete(rejectReason); } catch (Exception ex) { if (((System.Data.SqlClient.SqlException)(ex.GetBaseException())).Number == 547) { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "AlertInUseData", "alert('This data is now in use.');", true); } ctlRejectReasonGridView.DataCountAndBind(); } ctlRejectReasonGridView.DataCountAndBind(); ctlUpdatePanelGridView.Update(); } }
protected void ctlAdd_Click(object sender, ImageClickEventArgs e) { DbRejectReason rejectReason = new DbRejectReason(); if (Mode.Equals(FlagEnum.EditFlag)) { rejectReason.ReasonID = DbRejectReasonID; } rejectReason.ReasonCode = ctlReasonCode.Text; if (!ctlRequestTypeDropdown.SelectedValue.Equals("0")) { rejectReason.DocumentTypeID = UIHelper.ParseInt(ctlRequestTypeDropdown.SelectedValue); } else { rejectReason.DocumentTypeID = null; } if (!ctlStateEventDropdown.SelectedValue.Equals("0")) { rejectReason.WorkFlowStateEventID = UIHelper.ParseInt(ctlStateEventDropdown.SelectedValue); } else { rejectReason.WorkFlowStateEventID = null; } rejectReason.RequireComment = ctlCommentChk.Checked; rejectReason.RequireConfirmReject = ctlConfirmRejectionChk.Checked; rejectReason.Active = ctlActivechk.Checked; try { // save or update RejectReason if (Mode.Equals(FlagEnum.EditFlag)) { RejectReasonService.UpdateReason(rejectReason); } else { int reasonID = RejectReasonService.AddReason(rejectReason); rejectReason.ReasonID = reasonID; } // save or update RejectReasonLang IList <DbRejectReasonLang> list = new List <DbRejectReasonLang>(); foreach (GridViewRow row in ctlReasonLangGrid.Rows) { short languageId = UIHelper.ParseShort(ctlReasonLangGrid.DataKeys[row.RowIndex]["LanguageID"].ToString()); TextBox Description = row.FindControl("ctlDescription") as TextBox; TextBox Comment = (TextBox)row.FindControl("ctlCommentLang") as TextBox; CheckBox Active = (CheckBox)row.FindControl("ctlActiveLang") as CheckBox; if ((!string.IsNullOrEmpty(Description.Text)) || !string.IsNullOrEmpty(Comment.Text)) { DbRejectReasonLang rejectReasonLang = new DbRejectReasonLang(); rejectReasonLang.Active = Active.Checked; rejectReasonLang.ReasonDetail = Description.Text; rejectReasonLang.Comment = Comment.Text; rejectReasonLang.Language = new DbLanguage(languageId); rejectReasonLang.Reason = rejectReason; list.Add(rejectReasonLang); } } RejectReasonLangService.UpdateRejectReasonLang(list, rejectReason.ReasonID); Notify_Ok(sender, e); } catch (ServiceValidationException ex) { this.ValidationErrors.MergeErrors(ex.ValidationErrors); } }