Beispiel #1
0
        /// <summary>
        /// Update record by using primary key value on the given data variable
        /// </summary>
        /// <param name="database"></param>
        /// <param name="data">Data with primary key value.</param>
        /// <returns></returns>
        public int UpdateWithoutPK(Database database, ScreenDetailLangDTO data)
        {
            Database db = UseDatabase(database);

            StringBuilder sb = new StringBuilder();

            #region SQL Statement
            sb.AppendLine(" UPDATE " + data.TableName);
            sb.AppendLine(" SET ");
            sb.AppendLine("  " + ScreenDetailLangDTO.eColumns.CONTROL_CAPTION + "=:CONTROL_CAPTION");
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.UPD_BY + "=:UPD_BY");
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.UPD_DATE + "=GETDATE()");
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.UPD_MACHINE + "=:UPD_MACHINE");
            sb.AppendLine(" WHERE ");
            sb.AppendLine("  " + ScreenDetailLangDTO.eColumns.CONTROL_CD + "=:CONTROL_CD");
            sb.AppendLine("  AND " + ScreenDetailLangDTO.eColumns.LANG_CD + "=:LANG_CD");
            sb.AppendLine("  AND " + ScreenDetailLangDTO.eColumns.SCREEN_CD + "=:SCREEN_CD");
            #endregion

            DataRequest req = new DataRequest(sb.ToString());
            #region Parameters
            req.Parameters.Add("CONTROL_CD", DataType.VarChar, data.CONTROL_CD.Value);
            req.Parameters.Add("LANG_CD", DataType.VarChar, data.LANG_CD.Value);
            req.Parameters.Add("SCREEN_CD", DataType.VarChar, data.SCREEN_CD.Value);
            req.Parameters.Add("CONTROL_CAPTION", DataType.NVarChar, data.CONTROL_CAPTION.Value);
            req.Parameters.Add("UPD_BY", DataType.NVarChar, data.UPD_BY.Value);
            req.Parameters.Add("UPD_MACHINE", DataType.NVarChar, data.UPD_MACHINE.Value);
            #endregion

            return(db.ExecuteNonQuery(req));
        }
Beispiel #2
0
        /// <summary>
        /// Check exist before manipulate data. If found record will update data. Otherwise insert new data.
        /// </summary>
        /// <param name="database"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public int AddNewOrUpdate(Database database, ScreenDetailLangDTO data)
        {
            Database db = UseDatabase(database);

            if (Exist(database, data.CONTROL_CD, data.LANG_CD, data.SCREEN_CD))
            {
                return(UpdateWithoutPK(db, data));
            }

            return(AddNew(db, data));
        }
Beispiel #3
0
        internal int SaveScreenDetailDisplayText(string ScreenCD, string ControlCD, string LangCD, string DisplayTitle)
        {
            ScreenDetailLangBIZ biz = new ScreenDetailLangBIZ();
            ScreenDetailLangDTO dto = new ScreenDetailLangDTO();

            dto.CONTROL_CD.Value      = ControlCD;
            dto.LANG_CD.Value         = LangCD;
            dto.SCREEN_CD.Value       = ScreenCD;
            dto.CONTROL_CAPTION.Value = DisplayTitle;
            dto.UPD_BY.Value          = CommonLib.Common.CurrentUserInfomation.UserCD.StrongValue;
            dto.UPD_DATE.Value        = DateTime.Now;
            dto.UPD_MACHINE.Value     = Environment.MachineName;
            return(biz.UpdateScreenDisplayText(dto));
        }
Beispiel #4
0
        /// <summary>
        /// Insert new record into database.
        /// </summary>
        /// <param name="database"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public int AddNew(Database database, ScreenDetailLangDTO data)
        {
            Database db = UseDatabase(database);

            StringBuilder sb = new StringBuilder();

            #region SQL Statement
            sb.AppendLine(" INSERT INTO " + data.TableName + "(");
            sb.AppendLine("  " + ScreenDetailLangDTO.eColumns.CONTROL_CD);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.LANG_CD);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.SCREEN_CD);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.CONTROL_CAPTION);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.CRT_BY);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.CRT_DATE);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.CRT_MACHINE);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.UPD_BY);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.UPD_DATE);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.UPD_MACHINE);
            sb.AppendLine("  ," + ScreenDetailLangDTO.eColumns.IS_USED);
            sb.AppendLine(") VALUES(");
            sb.AppendLine("   :CONTROL_CD");
            sb.AppendLine("   ,:LANG_CD");
            sb.AppendLine("   ,:SCREEN_CD");
            sb.AppendLine("   ,:CONTROL_CAPTION");
            sb.AppendLine("   ,:CRT_BY");
            sb.AppendLine("   ,GETDATE()");
            sb.AppendLine("   ,:CRT_MACHINE");
            sb.AppendLine("   ,:UPD_BY");
            sb.AppendLine("   ,GETDATE()");
            sb.AppendLine("   ,:UPD_MACHINE");
            sb.AppendLine("   ,1");
            sb.AppendLine(" )");
            #endregion

            DataRequest req = new DataRequest(sb.ToString());
            #region Parameters
            req.Parameters.Add("CONTROL_CD", DataType.VarChar, data.CONTROL_CD.Value);
            req.Parameters.Add("LANG_CD", DataType.VarChar, data.LANG_CD.Value);
            req.Parameters.Add("SCREEN_CD", DataType.VarChar, data.SCREEN_CD.Value);
            req.Parameters.Add("CONTROL_CAPTION", DataType.NVarChar, data.CONTROL_CAPTION.Value);
            req.Parameters.Add("CRT_BY", DataType.NVarChar, data.CRT_BY.Value);
            req.Parameters.Add("CRT_MACHINE", DataType.NVarChar, data.CRT_MACHINE.Value);
            req.Parameters.Add("UPD_BY", DataType.NVarChar, data.UPD_BY.Value);
            req.Parameters.Add("UPD_MACHINE", DataType.NVarChar, data.UPD_MACHINE.Value);
            #endregion

            return(db.ExecuteNonQuery(req));
        }
Beispiel #5
0
        public void UpdateIsUsed(Database database, ScreenDetailLangDTO argScreenDetailLangDTO)
        {
            Database db = UseDatabase(database);

            StringBuilder sb = new StringBuilder();

            sb.AppendLine(" UPDATE TZ_SCREEN_DETAIL_LANG_MS ");
            sb.AppendLine("     SET IS_USED = 1  ");
            sb.AppendLine("     WHERE CONTROL_CD = :pCONTROL_CD");
            sb.AppendLine("     AND LANG_CD = :pLANG_CD");
            sb.AppendLine("     AND SCREEN_CD = :pSCREEN_CD");

            DataRequest req = new DataRequest(sb.ToString());

            req.Parameters.Add("@pCONTROL_CD", argScreenDetailLangDTO.CONTROL_CD.Value);
            req.Parameters.Add("@pLANG_CD", argScreenDetailLangDTO.LANG_CD.Value);
            req.Parameters.Add("@pSCREEN_CD", argScreenDetailLangDTO.SCREEN_CD.Value);

            db.ExecuteNonQuery(req);
        }
Beispiel #6
0
        private void AddControlDetailtoDatabase(List <LangDTO> langDTOList, string ScreenCD, Control control, string controlName, List <ScreenDetailDTO> screenDetailDTOList, List <ScreenDetailLangDTO> screenDetailLangDTOList)
        {
            ScreenDetailDTO dtoScreenDetail = new ScreenDetailDTO();

            // add all control id to screen detail
            //
            dtoScreenDetail.SCREEN_CD.Value    = ScreenCD;
            dtoScreenDetail.CONTROL_CD.Value   = controlName;
            dtoScreenDetail.CONTROL_TYPE.Value = control.GetType().Name;
            dtoScreenDetail.CRT_BY             = CommonLib.Common.CurrentUserInfomation.UserCD;
            dtoScreenDetail.CRT_DATE.Value     = DateTime.Now;
            dtoScreenDetail.CRT_MACHINE.Value  = Environment.MachineName;
            dtoScreenDetail.UPD_BY             = CommonLib.Common.CurrentUserInfomation.UserCD;
            dtoScreenDetail.UPD_DATE.Value     = DateTime.Now;
            dtoScreenDetail.UPD_MACHINE.Value  = Environment.MachineName;

            screenDetailDTOList.Add(dtoScreenDetail);


            if (langDTOList.Count > 0)
            {
                foreach (LangDTO langdto in langDTOList)
                {
                    ScreenDetailLangDTO dtoScreenDetailLang = new ScreenDetailLangDTO();
                    dtoScreenDetailLang.SCREEN_CD.Value       = ScreenCD;
                    dtoScreenDetailLang.CRT_BY                = CommonLib.Common.CurrentUserInfomation.UserCD;
                    dtoScreenDetailLang.CRT_DATE.Value        = DateTime.Now;
                    dtoScreenDetailLang.CRT_MACHINE.Value     = Environment.MachineName;
                    dtoScreenDetailLang.UPD_BY                = CommonLib.Common.CurrentUserInfomation.UserCD;
                    dtoScreenDetailLang.UPD_DATE.Value        = DateTime.Now;
                    dtoScreenDetailLang.UPD_MACHINE.Value     = Environment.MachineName;
                    dtoScreenDetailLang.CONTROL_CD.Value      = controlName;
                    dtoScreenDetailLang.CONTROL_CAPTION.Value = control.Text;
                    dtoScreenDetailLang.LANG_CD               = langdto.LANG_CD;

                    screenDetailLangDTOList.Add(dtoScreenDetailLang);
                }
            }
        }
Beispiel #7
0
        public void ImportData(List <ScreenImportUIDM> ScreenImportList, List <ScreenDetailUIDM> UIDMScreenDetailList)
        {
            LangBIZ bizLang = new LangBIZ();
            LangDTO dtoLang = new LangDTO();

            ScreenDetailBIZ bizScreenDetail = new ScreenDetailBIZ();

            List <ScreenDTO>           screenDTOList           = new List <ScreenDTO>();
            List <ScreenLangDTO>       screenLangDTOList       = new List <ScreenLangDTO>();
            List <ScreenDetailDTO>     screenDetailDTOList     = new List <ScreenDetailDTO>();
            List <ScreenDetailLangDTO> screenDetailLangDTOList = new List <ScreenDetailLangDTO>();
            // count lang detail
            List <LangDTO> langDTOList = bizLang.LoadAll();

            #region Collect Data
            foreach (ScreenImportUIDM ScreenImport in ScreenImportList)
            {
                // check if screen is never been import then import to screen ms
                if (ScreenImport.ImportStatus.StrongValue.ToUpper() == "NOTIMPORT")
                {
                    ScreenDTO dtoScreen = new ScreenDTO();
                    dtoScreen.SCREEN_CD           = ScreenImport.ScreenCD;
                    dtoScreen.SCREEN_NAME         = ScreenImport.ScreenName;
                    dtoScreen.ORIGINAL_TITLE      = ScreenImport.ScreenName;
                    dtoScreen.IMAGE_CD.Value      = "DEFAULT";
                    dtoScreen.SCREEN_TYPE         = ScreenImport.ScreenType;
                    dtoScreen.SCREEN_ACTION.Value = 0;
                    dtoScreen.EXT_PROGRAM.Value   = string.Empty;
                    dtoScreen.CRT_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                    dtoScreen.CRT_DATE.Value    = DateTime.Now;
                    dtoScreen.CRT_MACHINE.Value = Environment.MachineName;
                    dtoScreen.UPD_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                    dtoScreen.UPD_DATE.Value    = DateTime.Now;
                    dtoScreen.UPD_MACHINE.Value = Environment.MachineName;

                    screenDTOList.Add(dtoScreen);

                    if (langDTOList.Count > 0)
                    {
                        foreach (LangDTO langdto in langDTOList)
                        {
                            ScreenLangDTO dtoScreenLang = new ScreenLangDTO();
                            // add multilang for screen name
                            dtoScreenLang.SCREEN_CD         = ScreenImport.ScreenCD;
                            dtoScreenLang.SCREEN_DESC       = ScreenImport.ScreenName;
                            dtoScreenLang.CRT_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                            dtoScreenLang.CRT_DATE.Value    = DateTime.Now;
                            dtoScreenLang.CRT_MACHINE.Value = Environment.MachineName;
                            dtoScreenLang.UPD_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                            dtoScreenLang.UPD_DATE.Value    = DateTime.Now;
                            dtoScreenLang.UPD_MACHINE.Value = Environment.MachineName;
                            dtoScreenLang.LANG_CD           = langdto.LANG_CD;
                            //bizScreenLang.AddNew(dtoScreenLang);
                            screenLangDTOList.Add(dtoScreenLang);
                        }
                    }
                }
            }

            foreach (ScreenDetailUIDM ScreenDetail in UIDMScreenDetailList)
            {
                ScreenDetailDTO dtoScreenDetail = new ScreenDetailDTO();
                dtoScreenDetail.SCREEN_CD         = ScreenDetail.ScreenCD;
                dtoScreenDetail.CONTROL_TYPE      = ScreenDetail.ControlType;
                dtoScreenDetail.ORIGINAL_TITLE    = ScreenDetail.ControlCaption;
                dtoScreenDetail.CRT_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                dtoScreenDetail.CRT_DATE.Value    = DateTime.Now;
                dtoScreenDetail.CRT_MACHINE.Value = Environment.MachineName;
                dtoScreenDetail.UPD_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                dtoScreenDetail.UPD_DATE.Value    = DateTime.Now;
                dtoScreenDetail.UPD_MACHINE.Value = Environment.MachineName;
                dtoScreenDetail.CONTROL_CD        = ScreenDetail.ControlCD;
                screenDetailDTOList.Add(dtoScreenDetail);

                if (langDTOList.Count > 0)
                {
                    foreach (LangDTO langdto in langDTOList)
                    {
                        ScreenDetailLangDTO dtoScreenDetailLang = new ScreenDetailLangDTO();
                        // add spread column to screen detail ms
                        dtoScreenDetailLang.SCREEN_CD         = ScreenDetail.ScreenCD;
                        dtoScreenDetailLang.CRT_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                        dtoScreenDetailLang.CRT_DATE.Value    = DateTime.Now;
                        dtoScreenDetailLang.CRT_MACHINE.Value = Environment.MachineName;
                        dtoScreenDetailLang.UPD_BY            = CommonLib.Common.CurrentUserInfomation.UserCD;
                        dtoScreenDetailLang.UPD_DATE.Value    = DateTime.Now;
                        dtoScreenDetailLang.UPD_MACHINE.Value = Environment.MachineName;
                        // add multilang for spread column
                        dtoScreenDetailLang.CONTROL_CD      = ScreenDetail.ControlCD;      //.Value = fpsspread.Name + ".Column[" + i.ToString() + "]";
                        dtoScreenDetailLang.CONTROL_CAPTION = ScreenDetail.ControlCaption; //.Value = fpsspread.Sheets[0].Columns[i].Label;
                        dtoScreenDetailLang.LANG_CD         = langdto.LANG_CD;
                        screenDetailLangDTOList.Add(dtoScreenDetailLang);
                    }
                }
            }
            #endregion

            ImportScreenBIZ bizImportScreen = new ImportScreenBIZ();
            bizImportScreen.ImportData(screenDTOList, screenLangDTOList, screenDetailDTOList, screenDetailLangDTOList);
        }
Beispiel #8
0
        /// <summary>
        /// Initialize all control text following by stored data on database, depend on current user's language.
        /// </summary>
        protected virtual void InitializeControlText()
        {
            if (this.ScreenCode == string.Empty)
            {
                return;
            }

            Map <string, ScreenDetail> mapControlList      = this.GetControlList();
            ScreenDetailLangBIZ        bizScreenDetailLang = new ScreenDetailLangBIZ();

            string langCD = CommonLib.Common.SystemLanguage.StrongValue;

            if (CommonLib.Common.CurrentUserInfomation != null)
            {
                langCD = CommonLib.Common.CurrentUserInfomation.LanguageCD.StrongValue;
            }

            // Load screen detail depend on language.
            List <ScreenDetailLangDTO> listScreenDetailLang = bizScreenDetailLang.LoadScreenDetailByLangCD(this.ScreenCode, langCD);

            for (int i = 0; i < listScreenDetailLang.Count; i++)
            {
                ScreenDetailLangDTO dto = listScreenDetailLang[i];
                MapKeyValue <string, ScreenDetail> mapKeyValue = mapControlList[dto.CONTROL_CD.StrongValue];
                if (mapKeyValue == null)
                {
                    continue;
                }

                ScreenDetail screenDetail = mapKeyValue.Value;
                Control      ctrl         = null;
                switch (screenDetail.Type)
                {
                case ScreenDetail.TYPE_FORM:
                    ctrl = screenDetail.ObjOwner as Control;
                    if (ctrl != null)
                    {
                        ctrl.Text = ScreenAttribute.GetScreenAttribute(screenDetail.ObjOwner.GetType()).ScreenCD + ": " + dto.CONTROL_CAPTION.NVL(string.Empty);
                    }
                    break;

                case ScreenDetail.TYPE_BUTTON:
                case ScreenDetail.TYPE_CHECKBOX:
                case ScreenDetail.TYPE_GROUPBOX:
                case ScreenDetail.TYPE_LABEL:
                case ScreenDetail.TYPE_RADIOBUTTON:
                case ScreenDetail.TYPE_TABPAGE:
                    ctrl = screenDetail.ObjOwner as Control;
                    if (ctrl != null)
                    {
                        ctrl.Text = dto.CONTROL_CAPTION.NVL(string.Empty);
                    }

                    break;

                case ScreenDetail.TYPE_SPREAD_COLUMN:
                    Column column = screenDetail.ObjOwner as Column;
                    if (column != null)
                    {
                        column.Label = dto.CONTROL_CAPTION.NVL(string.Empty);
                    }
                    break;
                }
            }
        }
Beispiel #9
0
        public int UpdateScreenDisplayText(ScreenDetailLangDTO dto)
        {
            IScreenDetailLangDAO dao = DAOFactory.CreateScreenDetailLangDAO(CommonLib.Common.CurrentDatabase);

            return(dao.UpdateWithoutPK(null, dto));
        }
Beispiel #10
0
        public int AddNew(ScreenDetailLangDTO dtoScreenDetailLang)
        {
            IScreenDetailLangDAO dao = DAOFactory.CreateScreenDetailLangDAO(CommonLib.Common.CurrentDatabase);

            return(dao.AddNew(null, dtoScreenDetailLang));
        }