Example #1
0
 protected void LoadStyle(DATA_SYNC eSync)
 {
     if (eSync == DATA_SYNC.DATA_CLIENT)
     {
         foreach (DataGridViewColumn col in dataGridClient.Columns)
         {
             String strConfig = CIniManager.G_IniReadValue(STYLE_SECTION, "CLIENT_COL" + Convert.ToString(col.Index), CONFIG_FILE);
             if (strConfig.CompareTo("") == 0)
             {
                 col.Width = 100;
             }
             else
             {
                 col.Width = Convert.ToInt32(strConfig);
             }
         }
     }
     else if (eSync == DATA_SYNC.DATA_SERVER)
     {
         foreach (DataGridViewColumn col in dataGridServer.Columns)
         {
             String strConfig = CIniManager.G_IniReadValue(STYLE_SECTION, "SERVER_COL" + Convert.ToString(col.Index), CONFIG_FILE);
             if (strConfig.CompareTo("") == 0)
             {
                 col.Width = 100;
             }
             else
             {
                 col.Width = Convert.ToInt32(strConfig);
             }
         }
     }
 }
Example #2
0
        public Boolean LoadData(DATA_SYNC eSync, DATA_TYPE eType, String filename)
        {
            // StreamReader로 파일을 로드하는 부분은 예외를 처리하도록 한다.
            try
            {
                if (eSync == DATA_SYNC.DATA_CLIENT)
                {
                    // 텍스트 파일을 Default Encoding(ANSI)로 StreamReader로 불러들인다.
                    using (StreamReader sr = new StreamReader(filename, Encoding.Unicode))
                    {
                        String line;

                        while ((line = sr.ReadLine()) != null)
                        {
                            switch (eType)
                            {
                            case DATA_TYPE.DATA_TYPE_DEF:
                                ParseDef(ref m_tblClient, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_ALARM:
                                ParseAlarmType(ref m_tblClient, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_KOR:
                                ParseKorData(ref m_tblClient, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_JPN:
                                ParseJpnData(ref m_tblClient, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_USER:
                            {
                                String strNote = sr.ReadLine();
                                ParseUserData(ref m_tblClient, line, strNote);
                                break;
                            }
                            }
                        }

                        sr.Close();
                    }
                }
                else if (eSync == DATA_SYNC.DATA_SERVER)
                {
                    // 텍스트 파일을 Default Encoding(ANSI)로 StreamReader로 불러들인다.
                    using (StreamReader sr = new StreamReader(filename, Encoding.Unicode))
                    {
                        String line;

                        while ((line = sr.ReadLine()) != null)
                        {
                            switch (eType)
                            {
                            case DATA_TYPE.DATA_TYPE_DEF:
                                ParseDef(ref m_tblServer, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_ALARM:
                                ParseAlarmType(ref m_tblServer, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_KOR:
                                ParseKorData(ref m_tblServer, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_JPN:
                                ParseJpnData(ref m_tblServer, line);
                                break;

                            case DATA_TYPE.DATA_TYPE_USER:
                            {
                                String strNote = sr.ReadLine();
                                ParseUserData(ref m_tblServer, line, strNote);
                                break;
                            }
                            }
                        }

                        sr.Close();
                    }
                }
                else
                {
                }
            }
            catch (System.Exception e)
            {
                AddLog((int)Babidi.eLogType.eLOGTYPE_FILE, e.Source, e.Message);

                return(false);
            }

            return(true);
        }
Example #3
0
        /// <summary>
        /// TABLE에 데이타를 만든다.
        /// </summary>
        /// <param name="gridControl">DATA의 컨트롤</param>
        /// <param name="table">Data Table</param>
        /// <param name="strDef">정의 파일</param>
        /// <param name="strAlarm">메시지 타입 파일</param>
        /// <param name="strKor">KOR 파일</param>
        /// <param name="strJpn">JPN 파일</param>
        /// <param name="strUser">유저 노트</param>
        /// <param name="eSync">클라이언트냐 서버냐</param>
        public void CreateData(ref DataGridView gridControl,
                               ref DataTable table,
                               String strDef,
                               String strAlarm,
                               String strKor,
                               String strJpn,
                               String strUser,
                               DATA_SYNC eSync)
        {
            if (eSync == DATA_SYNC.DATA_CLIENT)
            {
                table = new DataTable(CLIENT_TABLE);
            }
            else if (eSync == DATA_SYNC.DATA_SERVER)
            {
                table = new DataTable(SERVER_TABLE);
            }

            DataView dataView = new DataView(table);

            dataView.ApplyDefaultSort = false;

            // Data View를 Data Grid Control 에 연결한다.
            gridControl.DataSource = dataView;

            // ID Column 추가
            DataColumn col = new DataColumn(COL_ID, typeof(System.Int32));

            col.AutoIncrement = true;
            col.ReadOnly      = true;
            col.Caption       = "이 ID는 UNIQUE한 숫자로서 STRING의 선언 번호 (순서) 를 나타냅니다.";
            table.Columns.Add(col);

            // DEFINE Column 추가
            col          = new DataColumn(COL_DEFINE, typeof(System.String));
            col.ReadOnly = true;
            col.Unique   = true;
            table.Columns.Add(col);

            col          = new DataColumn(COL_COMMENT, typeof(System.String));
            col.ReadOnly = true;
            table.Columns.Add(col);

            col = new DataColumn(COL_KOR, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_JPN, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_ALARMTYPE, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_NOTE, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_MB, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_HTML, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_LINELENGTH, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_STATE, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_SORT_STRING, typeof(System.String));
            table.Columns.Add(col);

            col = new DataColumn(COL_SORT_INT, typeof(System.Int32));
            table.Columns.Add(col);

            // Table에 Primary Key를 잡아준다.
            table.PrimaryKey = new DataColumn[] { table.Columns[COL_DEFINE] };

            if (eSync == DATA_SYNC.DATA_CLIENT)
            {
                m_strClientDef   = strDef;
                m_strClientAlarm = strAlarm;
                m_strClientKor   = strKor;
                m_strClientJpn   = strJpn;
                m_strClientUser  = strUser;
            }
            else
            {
                m_strServerDef   = strDef;
                m_strServerAlarm = strAlarm;
                m_strServerKor   = strKor;
                m_strServerJpn   = strJpn;
                m_strServerUser  = strUser;
            }

            LoadData(eSync, DATA_TYPE.DATA_TYPE_DEF, strDef);
            LoadData(eSync, DATA_TYPE.DATA_TYPE_ALARM, strAlarm);
            LoadData(eSync, DATA_TYPE.DATA_TYPE_KOR, strKor);
            LoadData(eSync, DATA_TYPE.DATA_TYPE_JPN, strJpn);
            LoadData(eSync, DATA_TYPE.DATA_TYPE_USER, strUser);

            CreateDefaultDataType(ref table);

            // Data를 체크한다.
            CheckDataState(ref table);

            // 자동 정렬이 되지 않도록 한다
            foreach (DataGridViewColumn column in gridControl.Columns)
            {
                column.SortMode = DataGridViewColumnSortMode.NotSortable;
            }

            gridControl.Columns[COL_SORT_STRING].Visible = false;
            gridControl.Columns[COL_SORT_INT].Visible    = false;
        }