private string WfGetFieldMSDesc(AdmBLL pBoAdm, string pTableName, string pColumnName) { string rtnColumnName = ""; StringBuilder sbSql; List <SqlParameter> sqlParmList; try { sbSql = new StringBuilder(); sbSql.AppendLine("SELECT b.value"); sbSql.AppendLine("FROM INFORMATION_SCHEMA.COLUMNS a"); sbSql.AppendLine(" LEFT JOIN sys.extended_properties b ON b.name='MS_Description' AND b.major_id=object_id(a.TABLE_SCHEMA+'.'+a.TABLE_NAME)"); sbSql.AppendLine(" AND b.minor_id = a.ORDINAL_POSITION "); sbSql.AppendLine("WHERE"); sbSql.AppendLine(" OBJECTPROPERTY(OBJECT_ID(a.TABLE_SCHEMA+'.'+a.TABLE_NAME), 'IsMsShipped')=0 "); sbSql.AppendLine(" AND a.table_name=@table_name"); sbSql.AppendLine(" AND a.column_name=@column_name"); sqlParmList = new List <SqlParameter>(); sqlParmList.Add(new SqlParameter("@table_name", pTableName)); sqlParmList.Add(new SqlParameter("@column_name", pColumnName)); rtnColumnName = GlobalFn.isNullRet(pBoAdm.OfGetFieldValue(sbSql.ToString(), sqlParmList.ToArray()), ""); return(rtnColumnName); } catch (Exception ex) { throw ex; } }
protected override bool WfItemCheck(object sender, ItemCheckInfo e) { vw_invb500 masterModel = null; try { masterModel = DrMaster.ToItem <vw_invb500>(); switch (e.Column.ToLower()) { case "ipa01": if (GlobalFn.isNullRet(e.Value, "") == "") { return(true); } if (BoBas.OfChkBabPKValid(GlobalFn.isNullRet(e.Value, ""), "inv", "50") == false) { WfShowErrorMsg("無此單別,請檢核!"); return(false); } //e.Row["iga01_c"] = BoBas.OfGetBab02(GlobalFn.isNullRet(e.Value, "")); break; } return(true); } catch (Exception ex) { throw ex; } }
protected override bool WfAfterFormCheck() { string sca01New, errMsg; try { if (FormEditMode == YREditType.新增 && Sca01New == GlobalFn.isNullRet(DrMaster["sca01"], "")) //避免搶號,重新取號 { if (BoBas.OfGetBga01AutoNo(Bga01, Bgc03, out sca01New, out errMsg) == false) { WfShowErrorMsg(errMsg); return(false); } DrMaster["sca01"] = sca01New; } //填入系統資訊 if (DrMaster.RowState != DataRowState.Unchanged) { if (DrMaster.RowState == DataRowState.Added) { DrMaster["scasecu"] = LoginInfo.UserNo; DrMaster["scasecg"] = LoginInfo.GroupNo; DrMaster["scacreu"] = LoginInfo.UserNo; DrMaster["scacreg"] = LoginInfo.DeptNo; DrMaster["scacred"] = Now; } else if (DrMaster.RowState == DataRowState.Modified) { DrMaster["scamodu"] = LoginInfo.UserNo; DrMaster["scamodg"] = LoginInfo.DeptNo; DrMaster["scamodd"] = Now; } } foreach (DataRow drDetail in TabDetailList[0].DtSource.Rows) { if (drDetail.RowState != DataRowState.Unchanged) { if (drDetail.RowState == DataRowState.Added) { drDetail["scbcreu"] = LoginInfo.UserNo; drDetail["scbcreg"] = LoginInfo.DeptNo; drDetail["scbcred"] = Now; } else if (drDetail.RowState == DataRowState.Modified) { drDetail["scbmodu"] = LoginInfo.UserNo; drDetail["scbmodg"] = LoginInfo.DeptNo; drDetail["scbmodd"] = Now; } } } WfSetDetailPK(); return(true); } catch (Exception ex) { throw ex; } }
//回傳值 true.通過驗證 false.未通過驗證, protected override bool WfItemCheck(object sender, ItemCheckInfo e) { vw_glab321 glab321Model; try { glab321Model = DrMaster.ToItem <vw_glab321>(); switch (e.Column.ToLower()) { case "gfa08": if (GlobalFn.varIsNull(e.Value)) { WfShowErrorMsg("會計年度不可為空白,請檢核!"); return(false); } if (GlobalFn.isNullRet(e.Value, 0) <= 0) { WfShowErrorMsg("會計年度應大於0,請檢核!"); return(false); } break; } return(true); } catch (Exception ex) { throw ex; } }
protected override bool WfPickClickOnEditMode(object sender, string pColName, DataRow pDr) { vw_carb350 masterModel = null; try { MessageInfo messageModel = new MessageInfo(); switch (pColName.ToLower()) { case "gea01": //底稿單號 masterModel = pDr.ToItem <vw_carb350>(); if (masterModel.gea03 == 0) { WfShowErrorMsg("請先輸入類別資料"); ucb_gea03.Focus(); return(false); } messageModel.StrMultiColumn = "cea01"; messageModel.IntMaxRow = 999; //messageModel.StrWhereAppend = " AND gfapost='N'"; WfShowPickUtility("p_cea3", messageModel); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { pDr[pColName] = messageModel.StrMultiRtn; } break; case "gfa01": //拋轉傳票單別 WfShowPickUtility("p_gac1", messageModel); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { if (messageModel.DataRowList.Count > 0) { pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["gac01"], ""); } else { pDr[pColName] = ""; } } break; case "ceasecg": //群組 messageModel.StrMultiColumn = "beb01"; messageModel.IntMaxRow = 999; WfShowPickUtility("p_beb1", messageModel); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { pDr[pColName] = messageModel.StrMultiRtn; } break; } return(true); } catch (Exception ex) { throw ex; } }
private void UltraTree1InitializeDataNode(object sender, InitializeDataNodeEventArgs e) { // This event fires every time a node is added to the tree from // a data source. // Make sure that only the highest-level employees show up at // the root level of the tree. if (e.Node.Parent == null && GlobalFn.isNullRet(e.Node.Cells["keyParents"].Value, "") != "") { e.Node.Visible = false; return; } // Put a space before each parent node and color the parent // nodes so the the tree is a little easier to read. if (e.Node.Nodes.Count > 0) { // No point in putting a space before the root node. if (e.Node.Parent != null) { e.Node.Override.NodeSpacingBefore = 0; } e.Node.Override.NodeAppearance.BackColor = Color.FromArgb(238, 238, 238); e.Node.Override.NodeAppearance.BackColor2 = Color.White; e.Node.Override.NodeAppearance.BackGradientStyle = GradientStyle.Vertical; e.Node.Override.NodeAppearance.BorderColor = Color.FromArgb(204, 204, 204); } // If this is the root node (CEO) then expand it. //if (e.Node.Parent == null) // e.Node.Expanded = true; }
protected override bool WfPickClickOnEditMode(object sender, string pColName, DataRow pDr) { try { MessageInfo messageModel = new MessageInfo(); switch (pColName.ToLower()) { case "cea01": //應收單號 messageModel.ParamSearchList = new List <SqlParameter>(); messageModel.IsAutoQuery = true; messageModel.ParamSearchList.Add(new SqlParameter("@cac03", "car")); messageModel.ParamSearchList.Add(new SqlParameter("@cac04", "11")); WfShowPickUtility("p_cac1", messageModel); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { if (messageModel.DataRowList.Count > 0) { pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["cac01"], ""); } else { pDr[pColName] = ""; } } break; } return(true); } catch (Exception ex) { throw ex; } }
public bool OfChkPccPKValid(string pPcc01, string pPcc02) { StringBuilder sbSql; List <SqlParameter> sqlParmList; int iChks = 0; try { sbSql = new StringBuilder(); sbSql.AppendLine("SELECT COUNT(1) FROM pcc_tb"); sbSql.AppendLine("WHERE pcc01=@pcc01"); sbSql.AppendLine("AND pcc02 in ('0',@pcc02)"); sbSql.AppendLine("AND pccvali='Y'"); sqlParmList = new List <SqlParameter>(); sqlParmList.Add(new SqlParameter("@pcc01", pPcc01)); sqlParmList.Add(new SqlParameter("@pcc02", pPcc02)); iChks = GlobalFn.isNullRet(OfGetFieldValue(sbSql.ToString(), sqlParmList.ToArray()), 0); if (iChks == 0) { return(false); } return(true); } catch (Exception ex) { throw ex; } }
/// <summary> /// 檢查進銷項發票號碼是否重覆 /// </summary> /// <param name="pKind">1.進項 2.銷項</param> /// <param name="pAutoNo">進(出)貨單號碼</param> /// <param name="pInvNo">發票號碼</param> /// <param name="pInvDate">發票日期</param> /// <param name="pInvWay">發票聯數</param> /// <returns></returns> public bool OfChkInvDupl(string pKind, string pAutoNo, string pInvNo, DateTime?pInvDate, string pInvWay) { try { string sqlSelect = ""; int iChkCnts = 0; List <SqlParameter> sqlParmList; if (pKind == "2") //銷項檢查 { sqlSelect = @"SELECT COUNT(1) FROM sga_tb WHERE sga01<>@sga01 AND sga24=@sga24 "; sqlParmList = new List <SqlParameter>(); sqlParmList.Add(new SqlParameter("@sga01", pAutoNo)); sqlParmList.Add(new SqlParameter("@sga24", pInvNo)); iChkCnts = GlobalFn.isNullRet(OfGetFieldValue(sqlSelect, sqlParmList.ToArray()), 0); if (iChkCnts > 0) { return(true); } } return(false); } catch (Exception ex) { throw; } }
//回傳值 false未通過驗證,還原輸入的值 true.未通過驗證,保留原值 protected override bool WfItemCheck(object sender, ItemCheckInfo e) { try { #region 單頭-pick vw_puri020 if (e.Row.Table.Prefix.ToLower() == "vw_puri020") { switch (e.Column.ToLower()) { #region pba01 廠商分類編號check case "pba01": if (BoPur.OfChkPbaPKExists(GlobalFn.isNullRet(e.Value, "")) == true) { WfShowErrorMsg("廠商分類編號已存在,請檢核!"); return(false); } break; #endregion } } #endregion return(true); } catch (Exception ex) { throw ex; } }
/// <summary> /// 以傳入的 Table 和條件,回傳符合條件的 DataRow 集合 /// </summary> /// <param name="ps_tablename">Table 名稱</param> /// <param name="ps_where">where 條件</param> /// <returns>DataRow</returns> public DataRowCollection OfGetDataRowCollectionByWhere(string ps_tablename, string ps_where) { DataTable ldt_temp = null; ps_tablename = GlobalFn.isNullRet(ps_tablename, ""); ps_where = GlobalFn.isNullRet(ps_where, ""); if (ps_tablename == "") { return(null); } StringBuilder ls_sql = new StringBuilder(); ls_sql.AppendFormat(" SELECT * FROM {0} (NOLOCK) WHERE 1=1 ", ps_tablename); if (ps_where != "") { ls_sql.Append(ps_where); } ldt_temp = this.AP_DAO.OfGetDatatableByCmdTxt(TRAN, ls_sql.ToString(), null); if (ldt_temp != null) { return(ldt_temp.Rows); } else { return(null); } }
/******************* 其他方法 ***********************/ #region WfGetStrMultiRtrn protected string WfGetStrMultiRtrn(DataRow[] pDrs, char pSeparateSign) { StringBuilder sbSqlReturn; try { if (pDrs == null) { return(""); } if (MsgInfoReturned.StrMultiColumn == null || MsgInfoReturned.StrMultiColumn == "") { return(""); } if (!(pDrs[0].Table.Columns.Contains(MsgInfoReturned.StrMultiColumn))) { return(""); } sbSqlReturn = new StringBuilder(); for (int i = 0; i < pDrs.Length; i++) { sbSqlReturn.Append(GlobalFn.isNullRet(pDrs[i][MsgInfoReturned.StrMultiColumn], "")); if (i != pDrs.Length - 1) { sbSqlReturn.Append(pSeparateSign); } } return(sbSqlReturn.ToString()); } catch (Exception ex) { throw ex; } }
/// <summary> /// 以傳入的 Table 和 Datarow,更新資料庫 /// </summary> /// <param name="ps_tablename"></param> /// <param name="pdr"></param> /// <returns></returns> public bool OfUpdateByDataRow(string ps_tablename, DataRow pdr) { if (pdr == null) { return(false); } if (GlobalFn.isNullRet(ps_tablename, "") == "") { return(false); } DataTable ldt = pdr.Table; string ls_sql = "SELECT * FROM " + ps_tablename + " "; using (SqlDataAdapter ladapter = new SqlDataAdapter()) { //ladapter.SelectCommand = new SqlCommand(ls_sql,(SqlConnection)this.AP_DAO.of_get_conntion()); //20100222 Allen add:transaction ladapter.SelectCommand = new SqlCommand(ls_sql, (SqlConnection)this.AP_DAO.OfGetConntion(), (SqlTransaction)TRAN); SqlCommandBuilder lcommand_builder = new SqlCommandBuilder((SqlDataAdapter)ladapter); lcommand_builder.ConflictOption = ConflictOption.OverwriteChanges; ladapter.UpdateCommand = lcommand_builder.GetUpdateCommand(); ladapter.InsertCommand = lcommand_builder.GetInsertCommand(); ladapter.DeleteCommand = lcommand_builder.GetDeleteCommand(); if (ladapter.Update(new DataRow[] { pdr }) <= 0) { return(false); } } return(true); }
private bool OfCreateCommand(ERP_MSSQLDAL pApDao, string ps_TargetTable, string ps_TargetColumn, string ps_ViewTable, bool pGenNonSelectCommand = true) { if (pApDao == null) { return(false); } ps_TargetTable = GlobalFn.isNullRet(ps_TargetTable, ""); ps_ViewTable = GlobalFn.isNullRet(ps_ViewTable, ""); ps_TargetColumn = GlobalFn.isNullRet(ps_TargetColumn, ""); // 如未指定 view table ,則以 target table 為 view table if (ps_ViewTable == "") { ps_ViewTable = ps_TargetTable; } if (ps_TargetColumn == "") { ps_TargetColumn = "*"; } // 如有指定 CRUD Table, 則以 update table 建構 m_ap_dao if (ps_TargetTable.Length > 0 || ps_ViewTable.Length > 0) { ((YR.DAL.DALBase) this.m_ap_dao).OfCreateCommand(ps_TargetTable, ps_ViewTable, TRAN, pGenNonSelectCommand); } return(true); }
//回傳值 false未通過驗證,還原輸入的值 true.未通過驗證,保留原值 protected override bool WfItemCheck(object sender, ItemCheckInfo e) { try { #region 單頭-pick vw_stpi040 if (e.Row.Table.Prefix.ToLower() == "vw_stpi040") { switch (e.Column.ToLower()) { #region beg01 運輸地點check case "sbg01": if (BoStp.OfChkSbgPKExists(GlobalFn.isNullRet(e.Value, "")) == true) { WfShowErrorMsg("運輸地點編號已存在,請檢核!"); return(false); } break; #endregion } } #endregion return(true); } catch (Exception ex) { throw ex; } }
//回傳值 false未通過驗證,還原輸入的值 true.未通過驗證,保留原值 protected override bool WfItemCheck(object sender, ItemCheckInfo e) { try { #region 單頭-pick vw_basi020 if (e.Row.Table.Prefix.ToLower() == "vw_basi050") { switch (e.Column.ToLower()) { #region bef02 付款條件編號check case "bef02": if (BoBas.OfChkBefPKValid(GlobalFn.isNullRet(e.Row["bef01"].ToString(), ""), GlobalFn.isNullRet(e.Value, "")) == true) { WfShowErrorMsg("付款條件編號已存在,請檢核!"); return(false); } break; #endregion } } #endregion return(true); } catch (Exception ex) { throw ex; } }
public bool OfChkCbaPKExists(string pCba01) { StringBuilder sbSql; List <SqlParameter> sqlParmList; int iChks = 0; try { sbSql = new StringBuilder(); sbSql.AppendLine("SELECT COUNT(1) FROM cba_tb"); sbSql.AppendLine("WHERE cba01=@cba01"); sqlParmList = new List <SqlParameter>(); sqlParmList.Add(new SqlParameter("@cba01", pCba01)); iChks = GlobalFn.isNullRet(OfGetFieldValue(sbSql.ToString(), sqlParmList.ToArray()), 0); if (iChks == 0) { return(false); } return(true); } catch (Exception ex) { throw ex; } }
private void WfGenAza04() { aza_tb l_aza; try { if (BoMaster.TRAN != null) { BoAdm.TRAN = BoMaster.TRAN; } foreach (DataRow ldr in TabDetailList[0].DtSource.Rows) { l_aza = ldr.ToItem <aza_tb>(); if (l_aza.aza03 != l_aza.aza04) //有異動過的資料不處理 { continue; } if (GlobalFn.isNullRet(ldr["aza03"], "") == "") //取不到中文也不更新 { continue; } ldr["aza04"] = BoAdm.OfGetAtc03(GlobalFn.isNullRet(ldr["aza03"], "")); } } catch (System.Exception ex) { throw ex; } }
public bool OfChkCacPKValid(string pCac01, string pCac03, string pCac04) { StringBuilder sbSql; List <SqlParameter> sqlParmList; int iChks = 0; try { sbSql = new StringBuilder(); sbSql.AppendLine("SELECT COUNT(1) FROM cac_tb"); sbSql.AppendLine("WHERE cacvali='Y'"); sbSql.AppendLine("AND cac01=@cac01"); sbSql.AppendLine("AND cac03=@cac03"); sbSql.AppendLine("AND cac04=@cac04"); sqlParmList = new List <SqlParameter>(); sqlParmList.Add(new SqlParameter("@cac01", pCac01)); sqlParmList.Add(new SqlParameter("@cac03", pCac03)); sqlParmList.Add(new SqlParameter("@cac04", pCac04)); iChks = GlobalFn.isNullRet(OfGetFieldValue(sbSql.ToString(), sqlParmList.ToArray()), 0); if (iChks == 0) { return(false); } return(true); } catch (Exception ex) { throw ex; } }
protected bool WfPickClickOnEditMode(object sender, string pColName) { MessageInfo messageModel = new MessageInfo(); try { switch (pColName.ToLower()) { case "adb02": messageModel = new MessageInfo(); messageModel.ParamSearchList = new List <SqlParameter>(); messageModel.ParamSearchList.Add(new SqlParameter("@adb01", LoginInfo.UserNo)); WfShowPickUtility("p_adb", messageModel, FormStartPosition.CenterScreen); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { if (messageModel.DataRowList.Count > 0) { ute_adb02.Text = GlobalFn.isNullRet(messageModel.DataRowList[0]["adb02"], ""); } else { ute_adb02.Text = ""; } } break; } return(true); } catch (Exception ex) { throw ex; } }
public bool OfChkScaPKValid(string pSca01) { StringBuilder sbSql; List <SqlParameter> sqlParmList; int iChks = 0; try { sbSql = new StringBuilder(); sbSql.AppendLine("SELECT COUNT(1) FROM sca_tb"); sbSql.AppendLine("WHERE scavali='Y' and scaconf='Y'"); sbSql.AppendLine("AND sca01=@sca01"); sqlParmList = new List <SqlParameter>(); sqlParmList.Add(new SqlParameter("@sca01", pSca01)); iChks = GlobalFn.isNullRet(OfGetFieldValue(sbSql.ToString(), sqlParmList.ToArray()), 0); if (iChks == 0) { return(false); } return(true); } catch (Exception ex) { throw ex; } }
//回傳值 false未通過驗證,還原輸入的值 true.未通過驗證,保留原值 protected override bool WfItemCheck(object sender, ItemCheckInfo e) { try { #region 單頭-pick vw_basi090 if (e.Row.Table.Prefix.ToLower() == "vw_basi090") { switch (e.Column.ToLower()) { #region bel01 貨運方式check case "bel01": if (BoBas.OfChkBelPKExists(GlobalFn.isNullRet(e.Value.ToString(), "")) == true) { WfShowErrorMsg("貨運方式編號已存在,請檢核!"); return(false); } break; #endregion } } #endregion return(true); } catch (Exception ex) { throw ex; } }
protected override void WfActionClick(string pActionName) { vw_invb501 masterModel; try { switch (pActionName) { case "ReCalculate": WfRetrieveMaster(); masterModel = DrMaster.ToItem <vw_invb501>(); if (GlobalFn.isNullRet(masterModel.ipa05, "") == "Y") { WfShowBottomStatusMsg("已重計過!"); return; } WfReCalculate(masterModel.ipa01); break; } } catch (Exception ex) { throw ex; } }
//protected internal override void UcDatePicker_Validating(object sender, CancelEventArgs e) //{ // string colName = ""; // string currentValue; // string ctlValue; // UcDatePicker control = sender as UcDatePicker; // try // { // if (IsInSaveCancle == true || IsInCRUDIni == true) // return; // if (IsInFormLoading == true) // return; // colName = control.Tag.ToString(); // IsItemchkValid = true; // currentValue = DRMASTER[colName] == null ? "" : DRMASTER[colName].ToString(); // ctlValue = control.Value == null ? "" : control.Value.ToString(); // if (ctlValue != currentValue) // { // if (WfItemCheck(sender, colName, ctlValue, DRMASTER) == false) // { // e.Cancel = true; // IsItemchkValid = false; // control.Value = OldValue; // } // else // { // IsChanged = true; // DRMASTER.EndEdit(); // } // } // } // catch (Exception ex) // { // e.Cancel = true; // control.Value = OldValue; // IsItemchkValid = false; // WfShowMsg(ex.ToString()); // } //} #endregion #region UltraDateTimeEditor_Validating 時間控制項 protected internal override void UltraDateTimeEditor_Validating(object sender, CancelEventArgs e) { string colName = ""; //DateTime? dbValue = null; UltraDateTimeEditor control = sender as UltraDateTimeEditor; try { if (IsInSaveCancle == true || IsInCRUDIni == true) { return; } if (IsInFormLoading == true) { return; } //if (FormEditMode == YREditType.查詢 || FormEditMode == YREditType.NA) // return; WfCleanBottomMsg(); IsInItemchecking = true; IsItemchkValid = true; colName = control.Tag.ToString(); if (GlobalFn.isNullRet(control.Value, "") != GlobalFn.isNullRet(OldValue, "")) { //WfSetBllTransaction(); var itemCheckInfo = new ItemCheckInfo(); itemCheckInfo.Row = DrMaster; itemCheckInfo.Value = control.Value; itemCheckInfo.Column = colName; if (WfItemCheck(sender, itemCheckInfo) == false) { e.Cancel = true; IsItemchkValid = false; control.Value = OldValue; } else { IsChanged = true; DrMaster.EndEdit(); } } } catch (Exception ex) { e.Cancel = true; IsItemchkValid = false; control.Value = OldValue; WfShowErrorMsg(ex.ToString()); } finally { //IsInButtonClick = false; IsInItemchecking = false; } }
protected override bool WfPickClickOnEditMode(object sender, string pColName, DataRow pDr) { try { //this.MsgInfoReturned = new MessageInfo(); MessageInfo messageModel = new MessageInfo(); #region 單頭-pick vw_invi020 if (pDr.Table.Prefix.ToLower() == "vw_invi020") { switch (pColName.ToLower()) { case "icm01": //來源單位 WfShowPickUtility("p_bej", messageModel); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { if (messageModel.DataRowList.Count > 0) { pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["bej01"], ""); } else { pDr[pColName] = ""; } } //if (messageModel != null && messageModel.DataRowList.Count > 0) //{ // pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["bej01"], ""); //} break; case "icm02": //目的單位 WfShowPickUtility("p_bej", messageModel); if (messageModel.Result == System.Windows.Forms.DialogResult.OK) { if (messageModel.DataRowList.Count > 0) { pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["bej01"], ""); } else { pDr[pColName] = ""; } } //if (messageModel != null && messageModel.DataRowList.Count > 0) //{ // pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["bej01"], ""); //} break; } } #endregion return(true); } catch (Exception ex) { throw ex; } }
protected override bool WfFormCheck() { vw_basi060 masterModel = null; string msg; Control chkControl; string chkColName; try { masterModel = DrMaster.ToItem <vw_basi060>(); #region 單頭資料檢查 chkColName = "beg01"; chkControl = ute_beg01; #region 金融機構編號 if (GlobalFn.varIsNull(masterModel.beg01)) { this.uTab_Master.SelectedTab = uTab_Master.Tabs[0]; chkControl.Focus(); msg = TabMaster.AzaTbList.Where(p => p.aza03 == chkColName).Select(p => p.aza04).FirstOrDefault(); msg += "不可為空白"; errorProvider.SetError(chkControl, msg); WfShowErrorMsg(msg); return(false); } if (FormEditMode == YREditType.新增 && BoBas.OfChkBegPKExists(GlobalFn.isNullRet(masterModel.beg01, "")) == true) { msg = "金融機構編號已存在,請檢核!"; errorProvider.SetError(chkControl, msg); WfShowErrorMsg(msg); return(false); } #endregion chkColName = "beg02"; chkControl = ute_beg02; #region 金融機構名稱 if (GlobalFn.varIsNull(masterModel.beg02)) { this.uTab_Master.SelectedTab = uTab_Master.Tabs[0]; chkControl.Focus(); msg = TabMaster.AzaTbList.Where(p => p.aza03 == chkColName).Select(p => p.aza04).FirstOrDefault(); msg += "不可為空白"; errorProvider.SetError(chkControl, msg); WfShowErrorMsg(msg); return(false); } #endregion #endregion return(true); } catch (Exception ex) { throw ex; } }
//*****************************表單自訂Fuction**************************************** #region WfConfirm 確認 private void WfConfirm() { vw_stpi100 masterModel = null; try { if (DrMaster == null) { return; } if (WfRetrieveMaster() == false) { return; } if (WfLockMasterRow() == false) //這裡會LOCK資料 { return; } WfSetBllTransaction(); masterModel = DrMaster.ToItem <vw_stpi100>(); if (masterModel.scavali == "N") { WfShowErrorMsg("客戶已失效!"); WfRollback(); return; } if (GlobalFn.isNullRet(masterModel.scaconf, "N") != "N") { WfShowErrorMsg("客戶非未確認狀態!"); WfRollback(); return; } DrMaster["scaconf"] = "Y"; DrMaster["scavali"] = "Y"; DrMaster["scamodu"] = LoginInfo.UserNo; DrMaster["scamodg"] = LoginInfo.DeptNo; DrMaster["scamodd"] = Now; BoMaster.OfUpdate(DrMaster.Table); WfCommit(); DrMaster.AcceptChanges(); WfShowBottomStatusMsg("作業成功!"); masterModel = DrMaster.ToItem <vw_stpi100>(); WfSetDocPicture(masterModel.scavali, masterModel.scaconf, "", pbxDoc); } catch (Exception ex) { WfRollback(); DrMaster.RejectChanges(); throw ex; } }
private void WfloadTree(string pAdm02, UltraTree pUltraTree, UltraTreeNode pUltraTreeNode) { StringBuilder sbSql; DataTable dtAdm; UltraTreeNode utn; string ado02, ado07, adm01, adm02; try { sbSql = new StringBuilder(); sbSql.AppendLine("SELECT * FROM adm_tb"); sbSql.AppendLine("LEFT JOIN ado_tb ON adm02=ado01"); sbSql.AppendLine(string.Format("WHERE adm01='{0}'", pAdm02)); //sbSql.AppendLine(" AND ado07='P'"); sbSql.AppendLine("ORDER BY adm03"); dtAdm = BoSecurity.OfGetDataTable(sbSql.ToString(), null); if (dtAdm == null || dtAdm.Rows.Count == 0) { return; } foreach (DataRow drAdm in dtAdm.Rows) { ado02 = GlobalFn.isNullRet(drAdm["ado02"], ""); ado07 = GlobalFn.isNullRet(drAdm["ado07"], ""); adm01 = GlobalFn.isNullRet(drAdm["adm01"], ""); adm02 = GlobalFn.isNullRet(drAdm["adm02"], ""); if (pUltraTreeNode == null) { utn = pUltraTree.Nodes.Add(); } else { utn = pUltraTreeNode.Nodes.Add(); } utn.Key = adm02; if (ado07.ToLower() == "m")//menu { utn.Text = ado02; utn.Override.ActiveNodeAppearance.Image = ImgList.Images[GlobalPictuer.MENU_TREE_FOLDER_ACTIVE]; utn.Override.NodeAppearance.Image = ImgList.Images[GlobalPictuer.MENU_TREE_FOLDER]; WfloadTree(adm02, pUltraTree, utn); } else { utn.Text = ado02 + " -" + adm02; utn.Override.ActiveNodeAppearance.Image = ImgList.Images[GlobalPictuer.MENU_TREE_FORM_ACTIVE]; utn.Override.NodeAppearance.Image = ImgList.Images[GlobalPictuer.MENU_TREE_FORM]; } } } catch (Exception ex) { throw ex; } }
//回傳值 true.通過驗證 flase.未通過驗證,還原原來的值 protected override bool WfItemCheck(object sender, ItemCheckInfo e) { try { #region 單頭-pick vw_admi610 if (e.Row.Table.Prefix.ToLower() == "vw_admi610") { switch (e.Column.ToLower()) { case "adm01": //目錄代碼 if (GlobalFn.varIsNull(e.Value)) { e.Row["adm01_c"] = ""; break; } if (BoAdm.OfChkAdoPKExists(GlobalFn.isNullRet(e.Value, ""), "M") == false) { WfShowErrorMsg("無此目錄代碼"); return(false); } e.Row["adm01_c"] = BoAdm.OfGetAdo02(GlobalFn.isNullRet(e.Value, "")); break; } } #endregion #region 單頭-pick vw_admi610s if (e.Row.Table.Prefix.ToLower() == "vw_admi610s") { switch (e.Column.ToLower()) { case "adm02": //程式代碼 if (GlobalFn.varIsNull(e.Value)) { e.Row["adm02_c"] = ""; break; } if (BoAdm.OfChkAdoPKExists(GlobalFn.isNullRet(e.Value, "")) == false) { WfShowErrorMsg("無此程式設定資料"); return(false); } e.Row["adm02_c"] = BoAdm.OfGetAdo02(GlobalFn.isNullRet(e.Value, "")); break; } } #endregion return(true); } catch (Exception ex) { throw ex; } }
protected override bool WfAppendUpdate() { UltraTreeNode parentsNode = null; vw_glai100 masterModel = null; string gba06_old = "", gba07_old = ""; try { masterModel = DrMaster.ToItem <vw_glai100>(); //這裡處理新增修改後的樹狀結構 //refresh父節點下的資料 if (FormEditMode == YREditType.新增) { parentsNode = WfGetParentsNode(masterModel); var addNode = parentsNode.Nodes.Add(masterModel.gba01, string.Concat(masterModel.gba01, "-", masterModel.gba02)); uTree.Enabled = true; //這裡就要先打開,不然會無法設定activenode uTree.ActiveNode = addNode; } else if (FormEditMode == YREditType.修改) { var activeNode = uTree.GetNodeByKey(masterModel.gba01); uTree.Enabled = true; //這裡就要先打開,不然會無法設定activenode uTree.ActiveNode = activeNode; //檢查是否需要更新節點 gba06_old = GlobalFn.isNullRet(DrMaster["gba06", DataRowVersion.Original], ""); gba07_old = GlobalFn.isNullRet(DrMaster["gba07", DataRowVersion.Original], ""); if (gba06_old != masterModel.gba06 || gba07_old != masterModel.gba07) { if (masterModel.gba06 == "1") //統制科目 { activeNode.Override.ActiveNodeAppearance.Image = ImgList.Images[GlobalPictuer.MENU_TREE_FOLDER_ACTIVE]; activeNode.Override.NodeAppearance.Image = ImgList.Images[GlobalPictuer.MENU_TREE_FOLDER]; } else { activeNode.Override.ActiveNodeAppearance.Image = null; activeNode.Override.NodeAppearance.Image = null; } if (gba07_old != masterModel.gba07) { var newParentsNode = uTree.GetNodeByKey(masterModel.gba07); activeNode.Reposition(newParentsNode.Nodes); uTree.ActiveNode = activeNode; } } } return(true); } catch (Exception ex) { throw ex; } }