/// <summary> /// 明細項資料綁定事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void gvItems_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e) { GridViewRow gr = e.Row; gr.Attributes.Add("onmouseover", "this.bkc=this.style.backgroundColor;this.style.backgroundColor='#ccffff'"); // 設定每筆資料在滑鼠移動進去時的背景顏色 gr.Attributes.Add("onmouseout", "this.style.backgroundColor=this.bkc"); // 設定每筆資料在滑鼠移出時的背景色 if (gr.RowType == DataControlRowType.DataRow) { DataTable tblItems = gvItems.DataTable; DataRow row = tblItems.Rows[gr.DataItemIndex]; LinkButton lbtnReSend = (LinkButton)gr.FindControl("lbtnReSend"); // 重送按鈕 KYTCheckBox kcbSelect = (KYTCheckBox)gr.FindControl("kcbSelect"); // RFC傳送狀態 KYTDropDownList kddlRFC_STATUS = (KYTDropDownList)gr.FindControl("kddlRFC_STATUS"); // 選取 LinkButton lbtnDOC_NBR = gr.FindControl("lbtnDOC_NBR") as LinkButton; // 表單編號 lbtnReSend.Visible = false; kcbSelect.Visible = false; kddlRFC_STATUS.Visible = false; kcbSelect.Checked = false; if (row["TRIGGER_STATUS"].ToString() == "0") { lbtnReSend.Visible = true; } else { kddlRFC_STATUS.Visible = true; kcbSelect.Visible = true; } //KYTUtilLibs.Utils.WebUtils.DynamicListItemBind(kddlRFC_STATUS, new object[] { // new { Text = "成功", Value = "1" }, // new { Text = "失敗", Value = "0" }, // new { Text = "取消", Value = "NULL" } //}); kddlRFC_STATUS.SelectedValue = row["SEND_RESULT"].ToString() == "True" ? "1" : row["SEND_RESULT"].ToString() == "False" ? "0" : "NULL"; string url = ""; //if () // 現在是APP // url = "~/WKF/FormUse/Mobile/ViewForm.aspx"; //else url = "~/WKF/FormUse/ViewForm.aspx"; Ede.Uof.Utility.Page.Common.Dialog.Open2(lbtnDOC_NBR, url, row["DOC_NBR"].ToString(), 960, 720, Ede.Uof.Utility.Page.Common.Dialog.PostBackType.None, new { TASK_ID = row["TASK_ID"].ToString() }.ToExpando()); } }
protected void gvColumns_RowDataBound(object sender, GridViewRowEventArgs e) { GridViewRow gr = e.Row; if (gr.RowType == DataControlRowType.DataRow) { DataTable tblColumns = gvColumns.DataTable; DataRow row = tblColumns.Rows[gr.DataItemIndex]; KYTCheckBox kcbPK = (KYTCheckBox)gr.FindControl("kcbPK"); // 鍵值 KYTCheckBox kcbALLOW_NULL = (KYTCheckBox)gr.FindControl("kcbALLOW_NULL"); // 允許NULL KYTTextBox ktxtCOLUMN_NAME = (KYTTextBox)gr.FindControl("ktxtCOLUMN_NAME"); // 欄位名稱 KYTTextBox ktxtDATA_TYPE = (KYTTextBox)gr.FindControl("ktxtDATA_TYPE"); // 欄位類型 KYTTextBox ktxtDEFAULT_VALUE = (KYTTextBox)gr.FindControl("ktxtDEFAULT_VALUE"); // 預設值 KYTTextBox ktxtCOLUMN_DESC = (KYTTextBox)gr.FindControl("ktxtCOLUMN_DESC"); // 說明 kcbPK.ViewType = KYTViewType.Input; kcbALLOW_NULL.ViewType = KYTViewType.Input; ktxtCOLUMN_NAME.ViewType = KYTViewType.Input; ktxtDATA_TYPE.ViewType = KYTViewType.Input; ktxtDEFAULT_VALUE.ViewType = KYTViewType.Input; ktxtCOLUMN_DESC.ViewType = KYTViewType.Input; kcbPK.Checked = row["PK"].ToString().ToUpper() == "Y"; kcbALLOW_NULL.Checked = row["ALLOW_NULL"].ToString().ToUpper() == "Y"; } }
/// <summary> /// 按下變更RFC狀態按鈕後觸發事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnRUN_Click(object sender, EventArgs e) { foreach (GridViewRow gr in gvItems.Rows) { DataTable tblItems = gvItems.DataTable; DataRow row = tblItems.Rows[gr.DataItemIndex]; KYTCheckBox kcbSelect = (KYTCheckBox)gr.FindControl("kcbSelect"); // RFC傳送狀態 KYTDropDownList kddlRFC_STATUS = (KYTDropDownList)gr.FindControl("kddlRFC_STATUS"); // 選取 if (kcbSelect.Visible && Request[kcbSelect.UniqueID + "$CheckBox1"] != null && kddlRFC_STATUS.Visible) { string RFC_STATUS = Request[kddlRFC_STATUS.UniqueID + "$DropDownList1"]; using (SqlDataAdapter sda = new SqlDataAdapter(@" IF EXISTS (SELECT * FROM ZUOF_RFC WHERE TASK_ID = @TASK_ID AND [TYPE] = @TYPE) BEGIN UPDATE ZUOF_RFC SET SEND_RESULT = @SEND_RESULT, MODIFIER = @MODIFIER, MODIFY_TIME = GETDATE(), MSG_EXCEPTION = '手動變更狀態' WHERE TASK_ID = @TASK_ID AND [TYPE] = @TYPE END ELSE BEGIN INSERT INTO ZUOF_RFC ([TASK_ID], [TYPE], [FORM_NBR], [SEND_RESULT], [SEND_TIME], [MSG_EXCEPTION], [CREATOR], [CREATE_TIME], [MODIFIER], [MODIFY_TIME], [FORM_VERSION_ID], [FORM_NAME]) SELECT @TASK_ID, RFC_NAME, @FORM_NBR, @SEND_RESULT, GETDATE(), '手動變更狀態', @MODIFIER, GETDATE(), @MODIFIER, GETDATE(), @FORM_VERSION_ID, @FORM_NAME FROM ZUOF_RFC_MA WHERE FORM_ID = (SELECT FORM_ID FROM TB_WKF_FORM_VERSION WHERE FORM_VERSION_ID = @FORM_VERSION_ID) END ", new DatabaseHelper().Command.Connection.ConnectionString)) using (DataSet ds = new DataSet()) { sda.SelectCommand.Parameters.AddWithValue("@SEND_RESULT", RFC_STATUS == "NULL" ? Convert.DBNull : RFC_STATUS == "1"); sda.SelectCommand.Parameters.AddWithValue("@MODIFIER", Ede.Uof.EIP.SystemInfo.Current.UserGUID); sda.SelectCommand.Parameters.AddWithValue("@TASK_ID", row["TASK_ID"].ToString()); sda.SelectCommand.Parameters.AddWithValue("@TYPE", row["TYPE"].ToString()); sda.SelectCommand.Parameters.AddWithValue("@FORM_NBR", row["DOC_NBR"].ToString()); sda.SelectCommand.Parameters.AddWithValue("@FORM_VERSION_ID", row["FORM_VERSION_ID"].ToString()); sda.SelectCommand.Parameters.AddWithValue("@FORM_NAME", row["FORM_NAME"].ToString()); try { sda.Fill(ds); } catch (Exception ex) { KYTUtilLibs.KYTDebugLog.Log(KYTLog.DebugLog.LogLevel.Error, string.Format(@"RFC_STATUS_REPORT.btnRUN_Click.foreach.TASK_ID: {0}.DOC_NBR: {1}.TYPE: {2}. RFC變更狀態由 : {3}→{4}. DOC_NBR: {6}. FORM_VERSION_ID: {7}. FORM_NAME: {8} .ERROR: {5}", row["TASK_ID"].ToString(), row["DOC_NBR"].ToString(), row["TYPE"].ToString(), row["SEND_RESULT"].ToString() == "True" ? "成功" : row["SEND_RESULT"].ToString() == "False" ? "失敗" : "取消", kddlRFC_STATUS.SelectedItem.Text, ex.Message, row["DOC_NBR"].ToString(), row["FORM_VERSION_ID"].ToString(), row["FORM_NAME"].ToString() )); } } } } btnSearch_Click(btnSearch, null); // 重新整理明細項 }