Esempio n. 1
0
        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;
            }
        }
Esempio n. 2
0
        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;
            }
        }
Esempio n. 3
0
        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;
            }
        }
Esempio n. 4
0
        //回傳值 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;
            }
        }
Esempio n. 5
0
        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;
            }
        }
Esempio n. 6
0
        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;
        }
Esempio n. 7
0
        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;
            }
        }
Esempio n. 8
0
        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;
            }
        }
Esempio n. 9
0
        /// <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;
            }
        }
Esempio n. 10
0
        //回傳值 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;
            }
        }
Esempio n. 11
0
        /// <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);
            }
        }
Esempio n. 12
0
        /******************* 其他方法 ***********************/
        #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;
            }
        }
Esempio n. 13
0
        /// <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);
        }
Esempio n. 14
0
        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);
        }
Esempio n. 15
0
        //回傳值  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;
            }
        }
Esempio n. 16
0
        //回傳值  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;
            }
        }
Esempio n. 17
0
        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;
            }
        }
Esempio n. 18
0
        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;
            }
        }
Esempio n. 19
0
        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;
            }
        }
Esempio n. 20
0
        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;
            }
        }
Esempio n. 21
0
        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;
            }
        }
Esempio n. 22
0
        //回傳值  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;
            }
        }
Esempio n. 23
0
        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;
            }
        }
Esempio n. 24
0
        //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;
            }
        }
Esempio n. 25
0
        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;
            }
        }
Esempio n. 26
0
        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;
            }
        }
Esempio n. 27
0
        //*****************************表單自訂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;
            }
        }
Esempio n. 28
0
        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;
            }
        }
Esempio n. 29
0
        //回傳值 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;
            }
        }
Esempio n. 30
0
        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;
            }
        }