示例#1
0
        protected override bool WfFormCheck()
        {
            vw_admi100         masterModel = null;
            vw_admi100s        detailModel = null;
            List <vw_admi100s> detailList  = null;
            UltraGrid          uGrid;
            string             msg;
            Control            chkControl;
            string             chkColName;
            int iChkDetailTab;

            try
            {
                masterModel = DrMaster.ToItem <vw_admi100>();
                #region 單頭資料檢查
                #region ada01-使用者ID
                chkControl = ute_ada01;
                if (GlobalFn.varIsNull(masterModel.ada01))
                {
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada01").Select(p => p.aza04).FirstOrDefault();
                    msg += "不可為空白";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }
                if (FormEditMode == YREditType.新增)
                {
                    if (BoAdm.OfChkAdaPKExists(masterModel.ada01))
                    {
                        msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada01").Select(p => p.aza04).FirstOrDefault();
                        msg += "已存在!";
                        errorProvider.SetError(chkControl, msg);
                        WfShowErrorMsg(msg);
                        return(false);
                    }
                }
                #endregion

                #region ada02 -使用者姓名
                if (GlobalFn.varIsNull(masterModel.ada02))
                {
                    chkControl = ute_ada02;
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada02").Select(p => p.aza04).FirstOrDefault();
                    msg += "不可為空白";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }
                #endregion

                #region ada03 -使用者部門
                if (GlobalFn.varIsNull(masterModel.ada03))
                {
                    chkControl = ute_ada03;
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada03").Select(p => p.aza04).FirstOrDefault();
                    msg += "不可為空白";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }
                #endregion

                #region ada04 -使用者角色
                if (GlobalFn.varIsNull(masterModel.ada04))
                {
                    chkControl = ute_ada04;
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada04").Select(p => p.aza04).FirstOrDefault();
                    msg += "不可為空白";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }
                #endregion

                #region ada05 -使用者密碼
                if (GlobalFn.varIsNull(masterModel.ada05))
                {
                    chkControl = ute_ada05;
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada05").Select(p => p.aza04).FirstOrDefault();
                    msg += "不可為空白";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }
                #endregion

                #region ada08 -使用者預設公司別
                if (GlobalFn.varIsNull(masterModel.ada08))
                {
                    chkControl = ute_ada08;
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg  = TabMaster.AzaTbList.Where(p => p.aza03 == "ada08").Select(p => p.aza04).FirstOrDefault();
                    msg += "不可為空白";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }
                detailList = TabDetailList[0].DtSource.ToList <vw_admi100s>();
                if (detailList == null || detailList.Where(p => p.adb02 == masterModel.ada08).Count() == 0)
                {
                    chkControl = ute_ada08;
                    this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                    chkControl.Focus();
                    msg = "未設定該預設公司的可登入權限,請檢核!";
                    errorProvider.SetError(chkControl, msg);
                    WfShowErrorMsg(msg);
                    return(false);
                }


                #endregion
                #endregion

                #region 單身資料檢查
                iChkDetailTab = 0;
                uGrid         = TabDetailList[iChkDetailTab].UGrid;
                foreach (DataRow drTemp in TabDetailList[iChkDetailTab].DtSource.Rows)
                {
                    if (drTemp.RowState == DataRowState.Unchanged)
                    {
                        continue;
                    }

                    detailModel = drTemp.ToItem <vw_admi100s>();
                    #region adb02-登入公司
                    chkColName = "adb02";
                    if (GlobalFn.varIsNull(detailModel.adb02))
                    {
                        this.uTab_Master.SelectedTab = uTab_Master.Tabs[0];
                        msg  = TabDetailList[iChkDetailTab].AzaTbList.Where(p => p.aza03 == chkColName).Select(p => p.aza04).FirstOrDefault();
                        msg += "不可為空白";
                        WfShowErrorMsg(msg);
                        WfFindErrUltraGridCell(uGrid, drTemp, chkColName);
                        return(false);
                    }
                    #endregion
                }
                #endregion

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#2
0
        protected override bool WfPickClickOnEditMode(object sender, string pColName, DataRow pDr)
        {
            vw_admi100s detailModel = null;
            UltraGrid   uGrid;

            try
            {
                MessageInfo messageModel = new MessageInfo();
                #region 單頭-pick vw_admi100
                if (pDr.Table.Prefix.ToLower() == "vw_admi100")
                {
                    switch (pColName.ToLower())
                    {
                    case "ada03":    //使用者部門
                        WfShowPickUtility("p_ade1", messageModel);
                        if (messageModel.Result == System.Windows.Forms.DialogResult.OK)
                        {
                            if (messageModel.DataRowList.Count > 0)
                            {
                                pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["ade01"], "");
                            }
                            else
                            {
                                pDr[pColName] = "";
                            }
                        }
                        //if (messageModel != null && messageModel.DataRowList.Count > 0)
                        //{
                        //    pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["ade01"], "");
                        //}
                        break;

                    case "ada04":    //使用者角色
                        WfShowPickUtility("p_adc1", messageModel);
                        if (messageModel.Result == System.Windows.Forms.DialogResult.OK)
                        {
                            if (messageModel.DataRowList.Count > 0)
                            {
                                pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["adc01"], "");
                            }
                            else
                            {
                                pDr[pColName] = "";
                            }
                        }
                        break;

                    case "ada08":    //預設登入公司
                        WfShowPickUtility("p_ata", messageModel);
                        if (messageModel.Result == System.Windows.Forms.DialogResult.OK)
                        {
                            if (messageModel.DataRowList.Count > 0)
                            {
                                pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["ata01"], "");
                            }
                            else
                            {
                                pDr[pColName] = "";
                            }
                        }
                        break;
                    }
                }
                #endregion

                #region 單身-pick vw_admi100s
                if (pDr.Table.Prefix.ToLower() == "vw_admi100s")
                {
                    detailModel = pDr.ToItem <vw_admi100s>();
                    uGrid       = sender as UltraGrid;
                    switch (pColName.ToLower())
                    {
                    case "adb02":    //資料表名稱
                        WfShowPickUtility("p_ata", messageModel);
                        if (messageModel != null && messageModel.DataRowList.Count > 0)
                        {
                            pDr[pColName] = GlobalFn.isNullRet(messageModel.DataRowList[0]["ata01"], "");
                        }
                        break;
                    }
                }
                #endregion
                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }