프로젝트

일반

사용자정보

개정판 7a56b228

ID7a56b228df8eee3e8984127bb4650cae18e0b310
상위 c0d7e7e3
하위 ee781888

gaqhf 이(가) 약 5년 전에 추가함

dev issue #1227 : add attribute mapping ui and function

Change-Id: Ia0c59476dc563bc7fd62588bbce706bd18b7f72a

차이점 보기:

DTI_PID/APIDConverter/DB/Project_DB.cs
18 18
    {
19 19
        const string APID_SYMBOL_MAPPING_TABLE = "T_APID_SYMBOL_MAPPING";
20 20
        const string APID_OPC_MAPPING_TABLE = "T_APID_OPC_MAPPING";
21
        const string APID_ATTRIBUTE_MAPPING_TABLE = "T_APID_ATTRIBUTE_MAPPING";
21 22

  
22 23
        const string LineProperties_TABLE = "LineProperties";
23 24
        const string LineTypes_TABLE = "LineTypes";
......
84 85
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID TEXT PRIMARY KEY, IN_SYMBOL TEXT, OUT_SYMBOL TEXT)", APID_OPC_MAPPING_TABLE);
85 86
                                        cmd.ExecuteNonQuery();
86 87
                                    }
88
                                    if (dt.Select(string.Format("NAME = '{0}'", APID_ATTRIBUTE_MAPPING_TABLE)).Length == 0)
89
                                    {
90
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID TEXT PRIMARY KEY, APID_ATTRIBUTE TEXT, APID_ATTRIBUTE_TYPE)", APID_ATTRIBUTE_MAPPING_TABLE);
91
                                        cmd.ExecuteNonQuery();
92
                                    }
87 93
                                }
88 94
                            }
89 95
                            result = true;
......
126 132
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID varchar(255) PRIMARY KEY, IN_SYMBOL varchar(MAX), OUT_SYMBOL varchar(MAX))", APID_OPC_MAPPING_TABLE);
127 133
                                        cmd.ExecuteNonQuery();
128 134
                                    }
135
                                    if (dt.Select(string.Format("NAME = '{0}'", APID_ATTRIBUTE_MAPPING_TABLE)).Length == 0)
136
                                    {
137
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID varchar(255) PRIMARY KEY, APID_ATTRIBUTE varchar(MAX), APID_ATTRIBUTE_TYPE varchar(MAX))", APID_ATTRIBUTE_MAPPING_TABLE);
138
                                        cmd.ExecuteNonQuery();
139
                                    }
129 140
                                }
130 141
                            }
131 142
                            result = true;
......
751 762

  
752 763
            return true;
753 764
        }
765
        public static DataTable SelectProjectAttribute()
766
        {
767
            DataTable dt = new DataTable();
768
            Project_Info projectInfo = Project_Info.GetInstance();
769
            if (projectInfo.DBType == ID2DB_Type.SQLite)
770
            {
771
                using (SQLiteConnection connection = new SQLiteConnection(string.Format(CultureInfo.CurrentCulture, "Data Source = {0}", projectInfo.DBFilePath)))
772
                {
773
                    try
774
                    {
775
                        connection.Open();
776
                        using (SQLiteCommand cmd = connection.CreateCommand())
777
                        {
778
                            cmd.CommandText = string.Format(@"
779
                            SELECT sa.UID, sa.DisplayAttribute, st.TYPE, spa.APID_ATTRIBUTE, spa.APID_ATTRIBUTE_TYPE, sp.APID_SYMBOL, sa.Property
780
                            FROM {1} as sa, {0} as st 
781
                                 LEFT OUTER JOIN {2} as sp 
782
                                      ON sa.UID = SP.UID 
783
                                LEFT OUTER JOIN {3} as spa 
784
                                     ON sa.UID = spa.UID
785
                            WHERE sa.SymbolType_UID = st.UID AND (sa.Property != 2 OR sa.Property IS NULL);", SymbolType_TABLE, SymbolAttribute_TABLE, APID_SYMBOL_MAPPING_TABLE, APID_ATTRIBUTE_MAPPING_TABLE);
786
                            using (SQLiteDataReader dr = cmd.ExecuteReader())
787
                                dt.Load(dr);
788
                        }
789
                        connection.Close();
790
                    }
791
                    catch (Exception ex)
792
                    {
793
                        Log.Write(ex.Message + "\r\n" + ex.StackTrace);
794
                    }
795
                    finally
796
                    {
797
                        connection.Dispose();
798
                    }
799
                }
800
            }
801
            else if (projectInfo.DBType == ID2DB_Type.MSSQL)
802
            {
803
                using (SqlConnection connection = GetSqlConnection())
804
                {
805
                    try
806
                    {
807
                        if (connection != null && connection.State == ConnectionState.Open)
808
                        {
809
                            using (SqlCommand cmd = connection.CreateCommand())
810
                            {
811
                                cmd.CommandText = string.Format(@"
812
                            SELECT sa.UID, sa.DisplayAttribute, st.Type, spa.APID_ATTRIBUTE, spa.APID_ATTRIBUTE_TYPE, sp.APID_SYMBOL, sa.Property
813
                            FROM {1} as sa
814
                                 LEFT OUTER JOIN {2} as sp 
815
                                      ON sa.UID = SP.UID 
816
                                LEFT OUTER JOIN {3} as spa 
817
                                     ON sa.UID = spa.UID
818
                                LEFT OUTER JOIN {0} as st 
819
                                     ON sa.SymbolType_UID = st.UID 
820
                            WHERE (sa.Property != 2 OR sa.Property IS NULL);", SymbolType_TABLE, SymbolAttribute_TABLE, APID_SYMBOL_MAPPING_TABLE, APID_ATTRIBUTE_MAPPING_TABLE);
821
                                using (SqlDataReader dr = cmd.ExecuteReader())
822
                                    dt.Load(dr);
823
                            }
824
                            connection.Close();
825
                        }
826
                    }
827
                    catch (Exception ex)
828
                    {
829
                        Log.Write(ex.Message + "\r\n" + ex.StackTrace);
830
                    }
831
                    finally
832
                    {
833
                        if (connection != null)
834
                            connection.Dispose();
835
                    }
836
                }
837
            }
838

  
839

  
840
            return dt;
841
        }
754 842
        #endregion
755 843

  
756 844
        #region AVEVA
......
956 1044

  
957 1045
            return dt;
958 1046
        }
959

  
960 1047
        public static DataTable SelectUDADetails()
961 1048
        {
962 1049
            DataTable dt = new DataTable();
DTI_PID/APIDConverter/Form/MappingForm.Designer.cs
29 29
        private void InitializeComponent()
30 30
        {
31 31
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MappingForm));
32
            DevExpress.XtraBars.Ribbon.GalleryItemGroup galleryItemGroup3 = new DevExpress.XtraBars.Ribbon.GalleryItemGroup();
32
            DevExpress.XtraBars.Ribbon.GalleryItemGroup galleryItemGroup1 = new DevExpress.XtraBars.Ribbon.GalleryItemGroup();
33 33
            this.ribbonControl = new DevExpress.XtraBars.Ribbon.RibbonControl();
34 34
            this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl();
35
            this.pictureEditMappedOPCOut = new DevExpress.XtraEditors.PictureEdit();
36
            this.pictureEditMappedOPCIn = new DevExpress.XtraEditors.PictureEdit();
37
            this.pictureEditID2OPC = new DevExpress.XtraEditors.PictureEdit();
35 38
            this.gridControlOPC = new DevExpress.XtraGrid.GridControl();
36 39
            this.gridViewOPC = new DevExpress.XtraGrid.Views.Grid.GridView();
37 40
            this.gridControlLine = new DevExpress.XtraGrid.GridControl();
......
49 52
            this.Root = new DevExpress.XtraLayout.LayoutControlGroup();
50 53
            this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem();
51 54
            this.tabbedControlGroup = new DevExpress.XtraLayout.TabbedControlGroup();
52
            this.GroupOPC = new DevExpress.XtraLayout.LayoutControlGroup();
53
            this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup();
54
            this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem();
55 55
            this.GroupSymbol = new DevExpress.XtraLayout.LayoutControlGroup();
56 56
            this.splitterItem2 = new DevExpress.XtraLayout.SplitterItem();
57 57
            this.splitterItem3 = new DevExpress.XtraLayout.SplitterItem();
......
61 61
            this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem();
62 62
            this.layoutControlGroup7 = new DevExpress.XtraLayout.LayoutControlGroup();
63 63
            this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem();
64
            this.GroupOPC = new DevExpress.XtraLayout.LayoutControlGroup();
65
            this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup();
66
            this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem();
67
            this.splitterItem5 = new DevExpress.XtraLayout.SplitterItem();
68
            this.layoutControlGroup8 = new DevExpress.XtraLayout.LayoutControlGroup();
69
            this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem();
70
            this.layoutControlGroup9 = new DevExpress.XtraLayout.LayoutControlGroup();
71
            this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem();
72
            this.layoutControlGroup10 = new DevExpress.XtraLayout.LayoutControlGroup();
73
            this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem();
64 74
            this.GroupLine = new DevExpress.XtraLayout.LayoutControlGroup();
65 75
            this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup();
66 76
            this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem();
......
74 84
            this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem();
75 85
            this.splitterItem4 = new DevExpress.XtraLayout.SplitterItem();
76 86
            this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem();
77
            this.splitterItem5 = new DevExpress.XtraLayout.SplitterItem();
78
            this.pictureEditID2OPC = new DevExpress.XtraEditors.PictureEdit();
79
            this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem();
80
            this.pictureEditMappedOPCIn = new DevExpress.XtraEditors.PictureEdit();
81
            this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem();
82
            this.layoutControlGroup8 = new DevExpress.XtraLayout.LayoutControlGroup();
83
            this.layoutControlGroup9 = new DevExpress.XtraLayout.LayoutControlGroup();
84
            this.pictureEditMappedOPCOut = new DevExpress.XtraEditors.PictureEdit();
85
            this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem();
86
            this.layoutControlGroup10 = new DevExpress.XtraLayout.LayoutControlGroup();
87
            this.GroupAttribute = new DevExpress.XtraLayout.LayoutControlGroup();
88
            this.gridControlAttribute = new DevExpress.XtraGrid.GridControl();
89
            this.gridViewAttribute = new DevExpress.XtraGrid.Views.Grid.GridView();
90
            this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem();
91
            this.layoutControlGroup11 = new DevExpress.XtraLayout.LayoutControlGroup();
87 92
            ((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).BeginInit();
88 93
            ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit();
89 94
            this.layoutControl1.SuspendLayout();
95
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCOut.Properties)).BeginInit();
96
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCIn.Properties)).BeginInit();
97
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditID2OPC.Properties)).BeginInit();
90 98
            ((System.ComponentModel.ISupportInitialize)(this.gridControlOPC)).BeginInit();
91 99
            ((System.ComponentModel.ISupportInitialize)(this.gridViewOPC)).BeginInit();
92 100
            ((System.ComponentModel.ISupportInitialize)(this.gridControlLine)).BeginInit();
......
101 109
            ((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit();
102 110
            ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit();
103 111
            ((System.ComponentModel.ISupportInitialize)(this.tabbedControlGroup)).BeginInit();
104
            ((System.ComponentModel.ISupportInitialize)(this.GroupOPC)).BeginInit();
105
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit();
106
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit();
107 112
            ((System.ComponentModel.ISupportInitialize)(this.GroupSymbol)).BeginInit();
108 113
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem2)).BeginInit();
109 114
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem3)).BeginInit();
......
113 118
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit();
114 119
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup7)).BeginInit();
115 120
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit();
121
            ((System.ComponentModel.ISupportInitialize)(this.GroupOPC)).BeginInit();
122
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit();
123
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit();
124
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem5)).BeginInit();
125
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup8)).BeginInit();
126
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit();
127
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).BeginInit();
128
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit();
129
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup10)).BeginInit();
130
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit();
116 131
            ((System.ComponentModel.ISupportInitialize)(this.GroupLine)).BeginInit();
117 132
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit();
118 133
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit();
......
126 141
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit();
127 142
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem4)).BeginInit();
128 143
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit();
129
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem5)).BeginInit();
130
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditID2OPC.Properties)).BeginInit();
131
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit();
132
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCIn.Properties)).BeginInit();
133
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit();
134
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup8)).BeginInit();
135
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).BeginInit();
136
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCOut.Properties)).BeginInit();
137
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit();
138
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup10)).BeginInit();
144
            ((System.ComponentModel.ISupportInitialize)(this.GroupAttribute)).BeginInit();
145
            ((System.ComponentModel.ISupportInitialize)(this.gridControlAttribute)).BeginInit();
146
            ((System.ComponentModel.ISupportInitialize)(this.gridViewAttribute)).BeginInit();
147
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit();
148
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup11)).BeginInit();
139 149
            this.SuspendLayout();
140 150
            // 
141 151
            // ribbonControl
......
150 160
            this.ribbonControl.ShowDisplayOptionsMenuButton = DevExpress.Utils.DefaultBoolean.False;
151 161
            this.ribbonControl.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.ShowOnMultiplePages;
152 162
            this.ribbonControl.ShowToolbarCustomizeItem = false;
153
            this.ribbonControl.Size = new System.Drawing.Size(1123, 32);
163
            this.ribbonControl.Size = new System.Drawing.Size(1123, 27);
154 164
            this.ribbonControl.Toolbar.ShowCustomizeItem = false;
155 165
            // 
156 166
            // layoutControl1
157 167
            // 
168
            this.layoutControl1.Controls.Add(this.gridControlAttribute);
158 169
            this.layoutControl1.Controls.Add(this.pictureEditMappedOPCOut);
159 170
            this.layoutControl1.Controls.Add(this.pictureEditMappedOPCIn);
160 171
            this.layoutControl1.Controls.Add(this.pictureEditID2OPC);
......
169 180
            this.layoutControl1.Controls.Add(this.btnClose);
170 181
            this.layoutControl1.Controls.Add(this.btnSave);
171 182
            this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill;
172
            this.layoutControl1.Location = new System.Drawing.Point(0, 32);
183
            this.layoutControl1.Location = new System.Drawing.Point(0, 27);
173 184
            this.layoutControl1.Name = "layoutControl1";
174 185
            this.layoutControl1.Root = this.Root;
175
            this.layoutControl1.Size = new System.Drawing.Size(1123, 730);
186
            this.layoutControl1.Size = new System.Drawing.Size(1123, 735);
176 187
            this.layoutControl1.TabIndex = 1;
177 188
            this.layoutControl1.Text = "layoutControl1";
178 189
            // 
190
            // pictureEditMappedOPCOut
191
            // 
192
            this.pictureEditMappedOPCOut.Location = new System.Drawing.Point(542, 395);
193
            this.pictureEditMappedOPCOut.MenuManager = this.ribbonControl;
194
            this.pictureEditMappedOPCOut.Name = "pictureEditMappedOPCOut";
195
            this.pictureEditMappedOPCOut.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
196
            this.pictureEditMappedOPCOut.Size = new System.Drawing.Size(227, 264);
197
            this.pictureEditMappedOPCOut.StyleController = this.layoutControl1;
198
            this.pictureEditMappedOPCOut.TabIndex = 17;
199
            // 
200
            // pictureEditMappedOPCIn
201
            // 
202
            this.pictureEditMappedOPCIn.Location = new System.Drawing.Point(289, 395);
203
            this.pictureEditMappedOPCIn.MenuManager = this.ribbonControl;
204
            this.pictureEditMappedOPCIn.Name = "pictureEditMappedOPCIn";
205
            this.pictureEditMappedOPCIn.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
206
            this.pictureEditMappedOPCIn.Size = new System.Drawing.Size(225, 264);
207
            this.pictureEditMappedOPCIn.StyleController = this.layoutControl1;
208
            this.pictureEditMappedOPCIn.TabIndex = 16;
209
            // 
210
            // pictureEditID2OPC
211
            // 
212
            this.pictureEditID2OPC.Location = new System.Drawing.Point(36, 395);
213
            this.pictureEditID2OPC.MenuManager = this.ribbonControl;
214
            this.pictureEditID2OPC.Name = "pictureEditID2OPC";
215
            this.pictureEditID2OPC.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
216
            this.pictureEditID2OPC.Size = new System.Drawing.Size(225, 264);
217
            this.pictureEditID2OPC.StyleController = this.layoutControl1;
218
            this.pictureEditID2OPC.TabIndex = 15;
219
            // 
179 220
            // gridControlOPC
180 221
            // 
181
            this.gridControlOPC.Location = new System.Drawing.Point(36, 79);
222
            this.gridControlOPC.Location = new System.Drawing.Point(36, 78);
182 223
            this.gridControlOPC.MainView = this.gridViewOPC;
183 224
            this.gridControlOPC.MenuManager = this.ribbonControl;
184 225
            this.gridControlOPC.Name = "gridControlOPC";
185
            this.gridControlOPC.Size = new System.Drawing.Size(733, 261);
226
            this.gridControlOPC.Size = new System.Drawing.Size(733, 265);
186 227
            this.gridControlOPC.TabIndex = 14;
187 228
            this.gridControlOPC.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
188 229
            this.gridViewOPC});
......
195 236
            // 
196 237
            // gridControlLine
197 238
            // 
198
            this.gridControlLine.Location = new System.Drawing.Point(36, 79);
239
            this.gridControlLine.Location = new System.Drawing.Point(36, 78);
199 240
            this.gridControlLine.MainView = this.gridViewLine;
200 241
            this.gridControlLine.MenuManager = this.ribbonControl;
201 242
            this.gridControlLine.Name = "gridControlLine";
202
            this.gridControlLine.Size = new System.Drawing.Size(733, 575);
243
            this.gridControlLine.Size = new System.Drawing.Size(733, 581);
203 244
            this.gridControlLine.TabIndex = 13;
204 245
            this.gridControlLine.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
205 246
            this.gridViewLine});
......
213 254
            // btnRefreshSymbol
214 255
            // 
215 256
            this.btnRefreshSymbol.ImageOptions.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("btnRefreshSymbol.ImageOptions.SvgImage")));
216
            this.btnRefreshSymbol.Location = new System.Drawing.Point(807, 642);
257
            this.btnRefreshSymbol.Location = new System.Drawing.Point(802, 645);
217 258
            this.btnRefreshSymbol.Name = "btnRefreshSymbol";
218
            this.btnRefreshSymbol.Size = new System.Drawing.Size(304, 36);
259
            this.btnRefreshSymbol.Size = new System.Drawing.Size(309, 38);
219 260
            this.btnRefreshSymbol.StyleController = this.layoutControl1;
220 261
            this.btnRefreshSymbol.TabIndex = 12;
221 262
            this.btnRefreshSymbol.Text = "Refresh AVEVA Symbol Image";
......
227 268
            // 
228 269
            // 
229 270
            // 
230
            galleryItemGroup3.Caption = "Items";
271
            galleryItemGroup1.Caption = "Items";
231 272
            this.galleryControlAvevaSymbols.Gallery.Groups.AddRange(new DevExpress.XtraBars.Ribbon.GalleryItemGroup[] {
232
            galleryItemGroup3});
273
            galleryItemGroup1});
233 274
            this.galleryControlAvevaSymbols.Gallery.ItemDoubleClick += new DevExpress.XtraBars.Ribbon.GalleryItemClickEventHandler(this.galleryControlAvevaSymbols_Gallery_ItemDoubleClick);
234
            this.galleryControlAvevaSymbols.Location = new System.Drawing.Point(819, 278);
275
            this.galleryControlAvevaSymbols.Location = new System.Drawing.Point(814, 273);
235 276
            this.galleryControlAvevaSymbols.Name = "galleryControlAvevaSymbols";
236
            this.galleryControlAvevaSymbols.Size = new System.Drawing.Size(280, 348);
277
            this.galleryControlAvevaSymbols.Size = new System.Drawing.Size(285, 356);
237 278
            this.galleryControlAvevaSymbols.StyleController = this.layoutControl1;
238 279
            this.galleryControlAvevaSymbols.TabIndex = 11;
239 280
            this.galleryControlAvevaSymbols.Text = "galleryControl1";
......
242 283
            // 
243 284
            this.galleryControlClient1.GalleryControl = this.galleryControlAvevaSymbols;
244 285
            this.galleryControlClient1.Location = new System.Drawing.Point(2, 2);
245
            this.galleryControlClient1.Size = new System.Drawing.Size(259, 344);
286
            this.galleryControlClient1.Size = new System.Drawing.Size(264, 352);
246 287
            // 
247 288
            // pictureEditMapped
248 289
            // 
249
            this.pictureEditMapped.Location = new System.Drawing.Point(425, 399);
290
            this.pictureEditMapped.Location = new System.Drawing.Point(420, 395);
250 291
            this.pictureEditMapped.MenuManager = this.ribbonControl;
251 292
            this.pictureEditMapped.Name = "pictureEditMapped";
252 293
            this.pictureEditMapped.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
253
            this.pictureEditMapped.Size = new System.Drawing.Size(344, 255);
294
            this.pictureEditMapped.Size = new System.Drawing.Size(349, 264);
254 295
            this.pictureEditMapped.StyleController = this.layoutControl1;
255 296
            this.pictureEditMapped.TabIndex = 10;
256 297
            // 
257 298
            // pictureEditID2Symbol
258 299
            // 
259
            this.pictureEditID2Symbol.Location = new System.Drawing.Point(36, 399);
300
            this.pictureEditID2Symbol.Location = new System.Drawing.Point(36, 395);
260 301
            this.pictureEditID2Symbol.MenuManager = this.ribbonControl;
261 302
            this.pictureEditID2Symbol.Name = "pictureEditID2Symbol";
262 303
            this.pictureEditID2Symbol.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
263
            this.pictureEditID2Symbol.Size = new System.Drawing.Size(351, 255);
304
            this.pictureEditID2Symbol.Size = new System.Drawing.Size(351, 264);
264 305
            this.pictureEditID2Symbol.StyleController = this.layoutControl1;
265 306
            this.pictureEditID2Symbol.TabIndex = 9;
266 307
            // 
267 308
            // treeListAvevaSymbol
268 309
            // 
269 310
            this.treeListAvevaSymbol.Cursor = System.Windows.Forms.Cursors.Default;
270
            this.treeListAvevaSymbol.Location = new System.Drawing.Point(819, 45);
311
            this.treeListAvevaSymbol.Location = new System.Drawing.Point(814, 43);
271 312
            this.treeListAvevaSymbol.Name = "treeListAvevaSymbol";
272
            this.treeListAvevaSymbol.Size = new System.Drawing.Size(280, 174);
313
            this.treeListAvevaSymbol.Size = new System.Drawing.Size(285, 178);
273 314
            this.treeListAvevaSymbol.TabIndex = 8;
274 315
            // 
275 316
            // gridControlSymbol
276 317
            // 
277
            this.gridControlSymbol.Location = new System.Drawing.Point(36, 79);
318
            this.gridControlSymbol.Location = new System.Drawing.Point(36, 78);
278 319
            this.gridControlSymbol.MainView = this.gridViewSymbol;
279 320
            this.gridControlSymbol.MenuManager = this.ribbonControl;
280 321
            this.gridControlSymbol.Name = "gridControlSymbol";
281
            this.gridControlSymbol.Size = new System.Drawing.Size(733, 261);
322
            this.gridControlSymbol.Size = new System.Drawing.Size(733, 265);
282 323
            this.gridControlSymbol.TabIndex = 7;
283 324
            this.gridControlSymbol.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
284 325
            this.gridViewSymbol});
......
294 335
            // btnClose
295 336
            // 
296 337
            this.btnClose.ImageOptions.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("btnClose.ImageOptions.SvgImage")));
297
            this.btnClose.Location = new System.Drawing.Point(1025, 682);
338
            this.btnClose.Location = new System.Drawing.Point(1025, 687);
298 339
            this.btnClose.Name = "btnClose";
299 340
            this.btnClose.Size = new System.Drawing.Size(86, 36);
300 341
            this.btnClose.StyleController = this.layoutControl1;
......
305 346
            // btnSave
306 347
            // 
307 348
            this.btnSave.ImageOptions.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("btnSave.ImageOptions.SvgImage")));
308
            this.btnSave.Location = new System.Drawing.Point(927, 682);
349
            this.btnSave.Location = new System.Drawing.Point(927, 687);
309 350
            this.btnSave.Name = "btnSave";
310 351
            this.btnSave.Size = new System.Drawing.Size(84, 36);
311 352
            this.btnSave.StyleController = this.layoutControl1;
......
329 370
            this.splitterItem4,
330 371
            this.layoutControlItem8});
331 372
            this.Root.Name = "Root";
332
            this.Root.Size = new System.Drawing.Size(1123, 730);
373
            this.Root.Size = new System.Drawing.Size(1123, 735);
333 374
            this.Root.TextVisible = false;
334 375
            // 
335 376
            // emptySpaceItem1
336 377
            // 
337 378
            this.emptySpaceItem1.AllowHotTrack = false;
338
            this.emptySpaceItem1.Location = new System.Drawing.Point(0, 670);
379
            this.emptySpaceItem1.Location = new System.Drawing.Point(0, 675);
339 380
            this.emptySpaceItem1.MinSize = new System.Drawing.Size(104, 24);
340 381
            this.emptySpaceItem1.Name = "emptySpaceItem1";
341 382
            this.emptySpaceItem1.Size = new System.Drawing.Size(915, 40);
......
346 387
            // 
347 388
            this.tabbedControlGroup.Location = new System.Drawing.Point(0, 0);
348 389
            this.tabbedControlGroup.Name = "tabbedControlGroup";
349
            this.tabbedControlGroup.SelectedTabPage = this.GroupSymbol;
350
            this.tabbedControlGroup.Size = new System.Drawing.Size(785, 670);
390
            this.tabbedControlGroup.SelectedTabPage = this.GroupAttribute;
391
            this.tabbedControlGroup.Size = new System.Drawing.Size(785, 675);
351 392
            this.tabbedControlGroup.TabPages.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
352 393
            this.GroupSymbol,
353 394
            this.GroupOPC,
354
            this.GroupLine});
355
            // 
356
            // GroupOPC
357
            // 
358
            this.GroupOPC.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
359
            this.layoutControlGroup2,
360
            this.splitterItem5,
361
            this.layoutControlGroup8,
362
            this.layoutControlGroup9,
363
            this.layoutControlGroup10});
364
            this.GroupOPC.Location = new System.Drawing.Point(0, 0);
365
            this.GroupOPC.Name = "GroupOPC";
366
            this.GroupOPC.Size = new System.Drawing.Size(761, 624);
367
            this.GroupOPC.Text = "OPC Symbol";
368
            // 
369
            // layoutControlGroup2
370
            // 
371
            this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
372
            this.layoutControlItem10});
373
            this.layoutControlGroup2.Location = new System.Drawing.Point(0, 0);
374
            this.layoutControlGroup2.Name = "layoutControlGroup2";
375
            this.layoutControlGroup2.Size = new System.Drawing.Size(761, 310);
376
            this.layoutControlGroup2.Text = "OPC Symbol";
377
            // 
378
            // layoutControlItem10
379
            // 
380
            this.layoutControlItem10.Control = this.gridControlOPC;
381
            this.layoutControlItem10.Location = new System.Drawing.Point(0, 0);
382
            this.layoutControlItem10.Name = "layoutControlItem10";
383
            this.layoutControlItem10.Size = new System.Drawing.Size(737, 265);
384
            this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0);
385
            this.layoutControlItem10.TextVisible = false;
395
            this.GroupLine,
396
            this.GroupAttribute});
386 397
            // 
387 398
            // GroupSymbol
388 399
            // 
......
394 405
            this.layoutControlGroup7});
395 406
            this.GroupSymbol.Location = new System.Drawing.Point(0, 0);
396 407
            this.GroupSymbol.Name = "GroupSymbol";
397
            this.GroupSymbol.Size = new System.Drawing.Size(761, 624);
408
            this.GroupSymbol.Size = new System.Drawing.Size(761, 628);
398 409
            this.GroupSymbol.Text = "Symbol";
399 410
            // 
400 411
            // splitterItem2
401 412
            // 
402 413
            this.splitterItem2.AllowHotTrack = true;
403
            this.splitterItem2.Location = new System.Drawing.Point(0, 310);
414
            this.splitterItem2.Location = new System.Drawing.Point(0, 312);
404 415
            this.splitterItem2.Name = "splitterItem2";
405
            this.splitterItem2.Size = new System.Drawing.Size(761, 10);
416
            this.splitterItem2.Size = new System.Drawing.Size(761, 5);
406 417
            // 
407 418
            // splitterItem3
408 419
            // 
409 420
            this.splitterItem3.AllowHotTrack = true;
410
            this.splitterItem3.Location = new System.Drawing.Point(379, 320);
421
            this.splitterItem3.Location = new System.Drawing.Point(379, 317);
411 422
            this.splitterItem3.Name = "splitterItem3";
412
            this.splitterItem3.Size = new System.Drawing.Size(10, 304);
423
            this.splitterItem3.Size = new System.Drawing.Size(5, 311);
413 424
            // 
414 425
            // layoutControlGroup4
415 426
            // 
416 427
            this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
417 428
            this.layoutControlItem5});
418
            this.layoutControlGroup4.Location = new System.Drawing.Point(0, 320);
429
            this.layoutControlGroup4.Location = new System.Drawing.Point(0, 317);
419 430
            this.layoutControlGroup4.Name = "layoutControlGroup4";
420
            this.layoutControlGroup4.Size = new System.Drawing.Size(379, 304);
431
            this.layoutControlGroup4.Size = new System.Drawing.Size(379, 311);
421 432
            this.layoutControlGroup4.Text = "ID2 Image";
422 433
            // 
423 434
            // layoutControlItem5
......
425 436
            this.layoutControlItem5.Control = this.pictureEditID2Symbol;
426 437
            this.layoutControlItem5.Location = new System.Drawing.Point(0, 0);
427 438
            this.layoutControlItem5.Name = "layoutControlItem5";
428
            this.layoutControlItem5.Size = new System.Drawing.Size(355, 259);
439
            this.layoutControlItem5.Size = new System.Drawing.Size(355, 268);
429 440
            this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0);
430 441
            this.layoutControlItem5.TextVisible = false;
431 442
            // 
......
433 444
            // 
434 445
            this.layoutControlGroup5.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
435 446
            this.layoutControlItem6});
436
            this.layoutControlGroup5.Location = new System.Drawing.Point(389, 320);
447
            this.layoutControlGroup5.Location = new System.Drawing.Point(384, 317);
437 448
            this.layoutControlGroup5.Name = "layoutControlGroup5";
438
            this.layoutControlGroup5.Size = new System.Drawing.Size(372, 304);
449
            this.layoutControlGroup5.Size = new System.Drawing.Size(377, 311);
439 450
            this.layoutControlGroup5.Text = "Mapped Image";
440 451
            // 
441 452
            // layoutControlItem6
......
443 454
            this.layoutControlItem6.Control = this.pictureEditMapped;
444 455
            this.layoutControlItem6.Location = new System.Drawing.Point(0, 0);
445 456
            this.layoutControlItem6.Name = "layoutControlItem6";
446
            this.layoutControlItem6.Size = new System.Drawing.Size(348, 259);
457
            this.layoutControlItem6.Size = new System.Drawing.Size(353, 268);
447 458
            this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0);
448 459
            this.layoutControlItem6.TextVisible = false;
449 460
            // 
......
453 464
            this.layoutControlItem4});
454 465
            this.layoutControlGroup7.Location = new System.Drawing.Point(0, 0);
455 466
            this.layoutControlGroup7.Name = "layoutControlGroup7";
456
            this.layoutControlGroup7.Size = new System.Drawing.Size(761, 310);
467
            this.layoutControlGroup7.Size = new System.Drawing.Size(761, 312);
457 468
            this.layoutControlGroup7.Text = "ID2 Symbol List";
458 469
            // 
459 470
            // layoutControlItem4
......
461 472
            this.layoutControlItem4.Control = this.gridControlSymbol;
462 473
            this.layoutControlItem4.Location = new System.Drawing.Point(0, 0);
463 474
            this.layoutControlItem4.Name = "layoutControlItem4";
464
            this.layoutControlItem4.Size = new System.Drawing.Size(737, 265);
475
            this.layoutControlItem4.Size = new System.Drawing.Size(737, 269);
465 476
            this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0);
466 477
            this.layoutControlItem4.TextVisible = false;
467 478
            // 
479
            // GroupOPC
480
            // 
481
            this.GroupOPC.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
482
            this.layoutControlGroup2,
483
            this.splitterItem5,
484
            this.layoutControlGroup8,
485
            this.layoutControlGroup9,
486
            this.layoutControlGroup10});
487
            this.GroupOPC.Location = new System.Drawing.Point(0, 0);
488
            this.GroupOPC.Name = "GroupOPC";
489
            this.GroupOPC.Size = new System.Drawing.Size(761, 628);
490
            this.GroupOPC.Text = "OPC Symbol";
491
            // 
492
            // layoutControlGroup2
493
            // 
494
            this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
495
            this.layoutControlItem10});
496
            this.layoutControlGroup2.Location = new System.Drawing.Point(0, 0);
497
            this.layoutControlGroup2.Name = "layoutControlGroup2";
498
            this.layoutControlGroup2.Size = new System.Drawing.Size(761, 312);
499
            this.layoutControlGroup2.Text = "OPC Symbol";
500
            // 
501
            // layoutControlItem10
502
            // 
503
            this.layoutControlItem10.Control = this.gridControlOPC;
504
            this.layoutControlItem10.Location = new System.Drawing.Point(0, 0);
505
            this.layoutControlItem10.Name = "layoutControlItem10";
506
            this.layoutControlItem10.Size = new System.Drawing.Size(737, 269);
507
            this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0);
508
            this.layoutControlItem10.TextVisible = false;
509
            // 
510
            // splitterItem5
511
            // 
512
            this.splitterItem5.AllowHotTrack = true;
513
            this.splitterItem5.Location = new System.Drawing.Point(0, 312);
514
            this.splitterItem5.Name = "splitterItem5";
515
            this.splitterItem5.Size = new System.Drawing.Size(761, 5);
516
            // 
517
            // layoutControlGroup8
518
            // 
519
            this.layoutControlGroup8.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
520
            this.layoutControlItem11});
521
            this.layoutControlGroup8.Location = new System.Drawing.Point(0, 317);
522
            this.layoutControlGroup8.Name = "layoutControlGroup8";
523
            this.layoutControlGroup8.Size = new System.Drawing.Size(253, 311);
524
            this.layoutControlGroup8.Text = "ID2 Image";
525
            // 
526
            // layoutControlItem11
527
            // 
528
            this.layoutControlItem11.Control = this.pictureEditID2OPC;
529
            this.layoutControlItem11.Location = new System.Drawing.Point(0, 0);
530
            this.layoutControlItem11.Name = "layoutControlItem11";
531
            this.layoutControlItem11.Size = new System.Drawing.Size(229, 268);
532
            this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0);
533
            this.layoutControlItem11.TextVisible = false;
534
            // 
535
            // layoutControlGroup9
536
            // 
537
            this.layoutControlGroup9.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
538
            this.layoutControlItem12});
539
            this.layoutControlGroup9.Location = new System.Drawing.Point(253, 317);
540
            this.layoutControlGroup9.Name = "layoutControlGroup9";
541
            this.layoutControlGroup9.Size = new System.Drawing.Size(253, 311);
542
            this.layoutControlGroup9.Text = "Mapped In-OPC Image";
543
            // 
544
            // layoutControlItem12
545
            // 
546
            this.layoutControlItem12.Control = this.pictureEditMappedOPCIn;
547
            this.layoutControlItem12.Location = new System.Drawing.Point(0, 0);
548
            this.layoutControlItem12.Name = "layoutControlItem12";
549
            this.layoutControlItem12.Size = new System.Drawing.Size(229, 268);
550
            this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0);
551
            this.layoutControlItem12.TextVisible = false;
552
            // 
553
            // layoutControlGroup10
554
            // 
555
            this.layoutControlGroup10.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
556
            this.layoutControlItem13});
557
            this.layoutControlGroup10.Location = new System.Drawing.Point(506, 317);
558
            this.layoutControlGroup10.Name = "layoutControlGroup10";
559
            this.layoutControlGroup10.Size = new System.Drawing.Size(255, 311);
560
            this.layoutControlGroup10.Text = "Mapped Out-OPC Image";
561
            // 
562
            // layoutControlItem13
563
            // 
564
            this.layoutControlItem13.Control = this.pictureEditMappedOPCOut;
565
            this.layoutControlItem13.Location = new System.Drawing.Point(0, 0);
566
            this.layoutControlItem13.Name = "layoutControlItem13";
567
            this.layoutControlItem13.Size = new System.Drawing.Size(231, 268);
568
            this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0);
569
            this.layoutControlItem13.TextVisible = false;
570
            // 
468 571
            // GroupLine
469 572
            // 
470 573
            this.GroupLine.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
471 574
            this.layoutControlGroup1});
472 575
            this.GroupLine.Location = new System.Drawing.Point(0, 0);
473 576
            this.GroupLine.Name = "GroupLine";
474
            this.GroupLine.Size = new System.Drawing.Size(761, 624);
577
            this.GroupLine.Size = new System.Drawing.Size(761, 628);
475 578
            this.GroupLine.Text = "Line";
476 579
            // 
477 580
            // layoutControlGroup1
......
480 583
            this.layoutControlItem9});
481 584
            this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0);
482 585
            this.layoutControlGroup1.Name = "layoutControlGroup1";
483
            this.layoutControlGroup1.Size = new System.Drawing.Size(761, 624);
586
            this.layoutControlGroup1.Size = new System.Drawing.Size(761, 628);
484 587
            this.layoutControlGroup1.Text = "ID2 Line List";
485 588
            // 
486 589
            // layoutControlItem9
......
488 591
            this.layoutControlItem9.Control = this.gridControlLine;
489 592
            this.layoutControlItem9.Location = new System.Drawing.Point(0, 0);
490 593
            this.layoutControlItem9.Name = "layoutControlItem9";
491
            this.layoutControlItem9.Size = new System.Drawing.Size(737, 579);
594
            this.layoutControlItem9.Size = new System.Drawing.Size(737, 585);
492 595
            this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0);
493 596
            this.layoutControlItem9.TextVisible = false;
494 597
            // 
495 598
            // layoutControlItem2
496 599
            // 
497 600
            this.layoutControlItem2.Control = this.btnSave;
498
            this.layoutControlItem2.Location = new System.Drawing.Point(915, 670);
601
            this.layoutControlItem2.Location = new System.Drawing.Point(915, 675);
499 602
            this.layoutControlItem2.MaxSize = new System.Drawing.Size(88, 40);
500 603
            this.layoutControlItem2.MinSize = new System.Drawing.Size(88, 40);
501 604
            this.layoutControlItem2.Name = "layoutControlItem2";
......
507 610
            // layoutControlItem3
508 611
            // 
509 612
            this.layoutControlItem3.Control = this.btnClose;
510
            this.layoutControlItem3.Location = new System.Drawing.Point(1013, 670);
613
            this.layoutControlItem3.Location = new System.Drawing.Point(1013, 675);
511 614
            this.layoutControlItem3.MaxSize = new System.Drawing.Size(90, 40);
512 615
            this.layoutControlItem3.MinSize = new System.Drawing.Size(90, 40);
513 616
            this.layoutControlItem3.Name = "layoutControlItem3";
......
521 624
            this.splitterItem1.AllowHotTrack = true;
522 625
            this.splitterItem1.Location = new System.Drawing.Point(785, 0);
523 626
            this.splitterItem1.Name = "splitterItem1";
524
            this.splitterItem1.Size = new System.Drawing.Size(10, 670);
627
            this.splitterItem1.Size = new System.Drawing.Size(5, 675);
525 628
            // 
526 629
            // layoutControlGroup3
527 630
            // 
528 631
            this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
529 632
            this.layoutControlItem1});
530
            this.layoutControlGroup3.Location = new System.Drawing.Point(795, 0);
633
            this.layoutControlGroup3.Location = new System.Drawing.Point(790, 0);
531 634
            this.layoutControlGroup3.Name = "layoutControlGroup3";
532
            this.layoutControlGroup3.Size = new System.Drawing.Size(308, 223);
635
            this.layoutControlGroup3.Size = new System.Drawing.Size(313, 225);
533 636
            this.layoutControlGroup3.Text = "Aveva Symbol Structure";
534 637
            // 
535 638
            // layoutControlItem1
......
537 640
            this.layoutControlItem1.Control = this.treeListAvevaSymbol;
538 641
            this.layoutControlItem1.Location = new System.Drawing.Point(0, 0);
539 642
            this.layoutControlItem1.Name = "layoutControlItem1";
540
            this.layoutControlItem1.Size = new System.Drawing.Size(284, 178);
643
            this.layoutControlItem1.Size = new System.Drawing.Size(289, 182);
541 644
            this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0);
542 645
            this.layoutControlItem1.TextVisible = false;
543 646
            // 
544 647
            // emptySpaceItem2
545 648
            // 
546 649
            this.emptySpaceItem2.AllowHotTrack = false;
547
            this.emptySpaceItem2.Location = new System.Drawing.Point(1003, 670);
650
            this.emptySpaceItem2.Location = new System.Drawing.Point(1003, 675);
548 651
            this.emptySpaceItem2.MaxSize = new System.Drawing.Size(10, 40);
549 652
            this.emptySpaceItem2.MinSize = new System.Drawing.Size(10, 40);
550 653
            this.emptySpaceItem2.Name = "emptySpaceItem2";
......
556 659
            // 
557 660
            this.layoutControlGroup6.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
558 661
            this.layoutControlItem7});
559
            this.layoutControlGroup6.Location = new System.Drawing.Point(795, 233);
662
            this.layoutControlGroup6.Location = new System.Drawing.Point(790, 230);
560 663
            this.layoutControlGroup6.Name = "layoutControlGroup6";
561
            this.layoutControlGroup6.Size = new System.Drawing.Size(308, 397);
664
            this.layoutControlGroup6.Size = new System.Drawing.Size(313, 403);
562 665
            this.layoutControlGroup6.Text = "Aveva Symbols";
563 666
            // 
564 667
            // layoutControlItem7
......
566 669
            this.layoutControlItem7.Control = this.galleryControlAvevaSymbols;
567 670
            this.layoutControlItem7.Location = new System.Drawing.Point(0, 0);
568 671
            this.layoutControlItem7.Name = "layoutControlItem7";
569
            this.layoutControlItem7.Size = new System.Drawing.Size(284, 352);
672
            this.layoutControlItem7.Size = new System.Drawing.Size(289, 360);
570 673
            this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0);
571 674
            this.layoutControlItem7.TextVisible = false;
572 675
            // 
573 676
            // splitterItem4
574 677
            // 
575 678
            this.splitterItem4.AllowHotTrack = true;
576
            this.splitterItem4.Location = new System.Drawing.Point(795, 223);
679
            this.splitterItem4.Location = new System.Drawing.Point(790, 225);
577 680
            this.splitterItem4.Name = "splitterItem4";
578
            this.splitterItem4.Size = new System.Drawing.Size(308, 10);
681
            this.splitterItem4.Size = new System.Drawing.Size(313, 5);
579 682
            // 
580 683
            // layoutControlItem8
581 684
            // 
582 685
            this.layoutControlItem8.Control = this.btnRefreshSymbol;
583
            this.layoutControlItem8.Location = new System.Drawing.Point(795, 630);
686
            this.layoutControlItem8.Location = new System.Drawing.Point(790, 633);
584 687
            this.layoutControlItem8.Name = "layoutControlItem8";
585
            this.layoutControlItem8.Size = new System.Drawing.Size(308, 40);
688
            this.layoutControlItem8.Size = new System.Drawing.Size(313, 42);
586 689
            this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0);
587 690
            this.layoutControlItem8.TextVisible = false;
588 691
            // 
589
            // splitterItem5
590
            // 
591
            this.splitterItem5.AllowHotTrack = true;
592
            this.splitterItem5.Location = new System.Drawing.Point(0, 310);
593
            this.splitterItem5.Name = "splitterItem5";
594
            this.splitterItem5.Size = new System.Drawing.Size(761, 10);
595
            // 
596
            // pictureEditID2OPC
597
            // 
598
            this.pictureEditID2OPC.Location = new System.Drawing.Point(36, 399);
599
            this.pictureEditID2OPC.MenuManager = this.ribbonControl;
600
            this.pictureEditID2OPC.Name = "pictureEditID2OPC";
601
            this.pictureEditID2OPC.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
602
            this.pictureEditID2OPC.Size = new System.Drawing.Size(225, 255);
603
            this.pictureEditID2OPC.StyleController = this.layoutControl1;
604
            this.pictureEditID2OPC.TabIndex = 15;
605
            // 
606
            // layoutControlItem11
607
            // 
608
            this.layoutControlItem11.Control = this.pictureEditID2OPC;
609
            this.layoutControlItem11.Location = new System.Drawing.Point(0, 0);
610
            this.layoutControlItem11.Name = "layoutControlItem11";
611
            this.layoutControlItem11.Size = new System.Drawing.Size(229, 259);
612
            this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0);
613
            this.layoutControlItem11.TextVisible = false;
614
            // 
615
            // pictureEditMappedOPCIn
616
            // 
617
            this.pictureEditMappedOPCIn.Location = new System.Drawing.Point(289, 399);
618
            this.pictureEditMappedOPCIn.MenuManager = this.ribbonControl;
619
            this.pictureEditMappedOPCIn.Name = "pictureEditMappedOPCIn";
620
            this.pictureEditMappedOPCIn.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
621
            this.pictureEditMappedOPCIn.Size = new System.Drawing.Size(225, 255);
622
            this.pictureEditMappedOPCIn.StyleController = this.layoutControl1;
623
            this.pictureEditMappedOPCIn.TabIndex = 16;
624
            // 
625
            // layoutControlItem12
692
            // GroupAttribute
626 693
            // 
627
            this.layoutControlItem12.Control = this.pictureEditMappedOPCIn;
628
            this.layoutControlItem12.Location = new System.Drawing.Point(0, 0);
629
            this.layoutControlItem12.Name = "layoutControlItem12";
630
            this.layoutControlItem12.Size = new System.Drawing.Size(229, 259);
631
            this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0);
632
            this.layoutControlItem12.TextVisible = false;
633
            // 
634
            // layoutControlGroup8
635
            // 
636
            this.layoutControlGroup8.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
637
            this.layoutControlItem11});
638
            this.layoutControlGroup8.Location = new System.Drawing.Point(0, 320);
639
            this.layoutControlGroup8.Name = "layoutControlGroup8";
640
            this.layoutControlGroup8.Size = new System.Drawing.Size(253, 304);
641
            this.layoutControlGroup8.Text = "ID2 Image";
694
            this.GroupAttribute.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
695
            this.layoutControlGroup11});
696
            this.GroupAttribute.Location = new System.Drawing.Point(0, 0);
697
            this.GroupAttribute.Name = "GroupAttribute";
698
            this.GroupAttribute.Size = new System.Drawing.Size(761, 628);
699
            this.GroupAttribute.Text = "Attribute";
642 700
            // 
643
            // layoutControlGroup9
701
            // gridControlAttribute
644 702
            // 
645
            this.layoutControlGroup9.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
646
            this.layoutControlItem12});
647
            this.layoutControlGroup9.Location = new System.Drawing.Point(253, 320);
648
            this.layoutControlGroup9.Name = "layoutControlGroup9";
649
            this.layoutControlGroup9.Size = new System.Drawing.Size(253, 304);
650
            this.layoutControlGroup9.Text = "Mapped In-OPC Image";
703
            this.gridControlAttribute.Location = new System.Drawing.Point(36, 78);
704
            this.gridControlAttribute.MainView = this.gridViewAttribute;
705
            this.gridControlAttribute.MenuManager = this.ribbonControl;
706
            this.gridControlAttribute.Name = "gridControlAttribute";
707
            this.gridControlAttribute.Size = new System.Drawing.Size(733, 581);
708
            this.gridControlAttribute.TabIndex = 18;
709
            this.gridControlAttribute.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
710
            this.gridViewAttribute});
651 711
            // 
652
            // pictureEditMappedOPCOut
712
            // gridViewAttribute
653 713
            // 
654
            this.pictureEditMappedOPCOut.Location = new System.Drawing.Point(542, 399);
655
            this.pictureEditMappedOPCOut.MenuManager = this.ribbonControl;
656
            this.pictureEditMappedOPCOut.Name = "pictureEditMappedOPCOut";
657
            this.pictureEditMappedOPCOut.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.Auto;
658
            this.pictureEditMappedOPCOut.Size = new System.Drawing.Size(227, 255);
659
            this.pictureEditMappedOPCOut.StyleController = this.layoutControl1;
660
            this.pictureEditMappedOPCOut.TabIndex = 17;
714
            this.gridViewAttribute.GridControl = this.gridControlAttribute;
715
            this.gridViewAttribute.Name = "gridViewAttribute";
716
            this.gridViewAttribute.OptionsView.ShowGroupPanel = false;
661 717
            // 
662
            // layoutControlItem13
718
            // layoutControlItem14
663 719
            // 
664
            this.layoutControlItem13.Control = this.pictureEditMappedOPCOut;
665
            this.layoutControlItem13.Location = new System.Drawing.Point(0, 0);
666
            this.layoutControlItem13.Name = "layoutControlItem13";
667
            this.layoutControlItem13.Size = new System.Drawing.Size(231, 259);
668
            this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0);
669
            this.layoutControlItem13.TextVisible = false;
720
            this.layoutControlItem14.Control = this.gridControlAttribute;
721
            this.layoutControlItem14.Location = new System.Drawing.Point(0, 0);
722
            this.layoutControlItem14.Name = "layoutControlItem14";
723
            this.layoutControlItem14.Size = new System.Drawing.Size(737, 585);
724
            this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0);
725
            this.layoutControlItem14.TextVisible = false;
670 726
            // 
671
            // layoutControlGroup10
727
            // layoutControlGroup11
672 728
            // 
673
            this.layoutControlGroup10.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
674
            this.layoutControlItem13});
675
            this.layoutControlGroup10.Location = new System.Drawing.Point(506, 320);
676
            this.layoutControlGroup10.Name = "layoutControlGroup10";
677
            this.layoutControlGroup10.Size = new System.Drawing.Size(255, 304);
678
            this.layoutControlGroup10.Text = "Mapped Out-OPC Image";
729
            this.layoutControlGroup11.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
730
            this.layoutControlItem14});
731
            this.layoutControlGroup11.Location = new System.Drawing.Point(0, 0);
732
            this.layoutControlGroup11.Name = "layoutControlGroup11";
733
            this.layoutControlGroup11.Size = new System.Drawing.Size(761, 628);
734
            this.layoutControlGroup11.Text = "ID2 Attribute List";
679 735
            // 
680 736
            // MappingForm
681 737
            // 
......
693 749
            ((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).EndInit();
694 750
            ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit();
695 751
            this.layoutControl1.ResumeLayout(false);
752
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCOut.Properties)).EndInit();
753
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCIn.Properties)).EndInit();
754
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditID2OPC.Properties)).EndInit();
696 755
            ((System.ComponentModel.ISupportInitialize)(this.gridControlOPC)).EndInit();
697 756
            ((System.ComponentModel.ISupportInitialize)(this.gridViewOPC)).EndInit();
698 757
            ((System.ComponentModel.ISupportInitialize)(this.gridControlLine)).EndInit();
......
707 766
            ((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit();
708 767
            ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit();
709 768
            ((System.ComponentModel.ISupportInitialize)(this.tabbedControlGroup)).EndInit();
710
            ((System.ComponentModel.ISupportInitialize)(this.GroupOPC)).EndInit();
711
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit();
712
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit();
713 769
            ((System.ComponentModel.ISupportInitialize)(this.GroupSymbol)).EndInit();
714 770
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem2)).EndInit();
715 771
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem3)).EndInit();
......
719 775
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit();
720 776
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup7)).EndInit();
721 777
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit();
778
            ((System.ComponentModel.ISupportInitialize)(this.GroupOPC)).EndInit();
779
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit();
780
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit();
781
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem5)).EndInit();
782
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup8)).EndInit();
783
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit();
784
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).EndInit();
785
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit();
786
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup10)).EndInit();
787
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit();
722 788
            ((System.ComponentModel.ISupportInitialize)(this.GroupLine)).EndInit();
723 789
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit();
724 790
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit();
......
732 798
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit();
733 799
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem4)).EndInit();
734 800
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit();
735
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem5)).EndInit();
736
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditID2OPC.Properties)).EndInit();
737
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit();
738
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCIn.Properties)).EndInit();
739
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit();
740
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup8)).EndInit();
741
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).EndInit();
742
            ((System.ComponentModel.ISupportInitialize)(this.pictureEditMappedOPCOut.Properties)).EndInit();
743
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit();
744
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup10)).EndInit();
801
            ((System.ComponentModel.ISupportInitialize)(this.GroupAttribute)).EndInit();
802
            ((System.ComponentModel.ISupportInitialize)(this.gridControlAttribute)).EndInit();
803
            ((System.ComponentModel.ISupportInitialize)(this.gridViewAttribute)).EndInit();
804
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit();
805
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup11)).EndInit();
745 806
            this.ResumeLayout(false);
746 807
            this.PerformLayout();
747 808

  
......
803 864
        private DevExpress.XtraEditors.PictureEdit pictureEditMappedOPCOut;
804 865
        private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup10;
805 866
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13;
867
        private DevExpress.XtraLayout.LayoutControlGroup GroupAttribute;
868
        private DevExpress.XtraGrid.GridControl gridControlAttribute;
869
        private DevExpress.XtraGrid.Views.Grid.GridView gridViewAttribute;
870
        private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup11;
871
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14;
806 872
    }
807 873
}
DTI_PID/APIDConverter/Form/MappingForm.cs
32 32
            SetOPCMappingTable();
33 33
            SetAvevaSymbolStructure();
34 34
            SetLineMappingTable();
35
            SetAttributeMappingTable();
35 36

  
36 37
            #region Events/UI
37 38
            gridViewSymbol.FocusedRowChanged += new DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventHandler(gridViewSymbol_FocusedRowChanged);
......
66 67
                gridViewSymbol.Columns["Type"].GroupIndex = 0;
67 68
                gridViewSymbol.Columns["APID_SYMBOL"].OptionsColumn.AllowEdit = false;
68 69
                gridViewSymbol.Columns["Name"].OptionsColumn.AllowEdit = false;
70
                gridViewSymbol.Columns["DATA1"].Visible = false;
69 71
                gridControlSymbol.RepositoryItems.Add(clearButton);
70 72
                gridViewSymbol.ExpandAllGroups();
71 73

  
......
169 171
        }
170 172
        private void SetLineMappingTable()
171 173
        {
174

  
172 175
            DataTable dt = Project_DB.GetLineMappingTable();
173 176
            dt.Columns.Add("Type");
174 177
            foreach (DataRow row in dt.Rows)
......
200 203
            lookUpEdit.DisplayMember = "Style";
201 204
            lookUpEdit.ValueMember = "Style";
202 205
            lookUpEdit.NullText = "";
203
            lookUpEdit.BestFitMode = BestFitMode.BestFitResizePopup;
206
            lookUpEdit.BestFitMode = BestFitMode.BestFit;
204 207
            lookUpEdit.KeyUp += lookUpEdit_KeyUp;
205 208
            lookUpEdit.Popup += lookUpEdit_Popup;
206 209
            lookUpEdit.EndInit();
......
216 219
            gridControlLine.RepositoryItems.Add(lookUpEdit);
217 220
            gridViewLine.Columns["APID_SYMBOL"].ColumnEdit = lookUpEdit;
218 221
        }
222
        private void SetAttributeMappingTable()
223
        {
224
            RepositoryItemButtonEdit clearButton = new RepositoryItemButtonEdit();
225
            clearButton.Buttons[0].Kind = ButtonPredefines.Glyph;
226
            clearButton.Buttons[0].Image = Resource.cancel_16x16;
227
            clearButton.ButtonClick += repositoryItemButtonEdit_ButtonClick;
228
            clearButton.TextEditStyle = TextEditStyles.HideTextEditor;
229

  
230
            DataTable dt = Project_DB.SelectProjectAttribute();
231
            dt.Columns.Add("Clear");
232
            dt.Columns["Clear"].Caption = "";
233

  
234
            gridControlAttribute.DataSource = dt;
235
            gridViewAttribute.Columns["UID"].Visible = false;
236
            gridViewAttribute.Columns["APID_ATTRIBUTE_TYPE"].Visible = false;
237
            gridViewAttribute.Columns["Property"].Visible = false;
238
            gridViewAttribute.Columns["Type"].GroupIndex = 0;
239
            gridViewAttribute.Columns["DisplayAttribute"].OptionsColumn.AllowEdit = false;
240
            gridViewAttribute.Columns["APID_SYMBOL"].Caption = "APID Symbol Name";
241
            gridViewAttribute.Columns["APID_SYMBOL"].OptionsColumn.AllowEdit = false;
242
            gridViewAttribute.Columns["APID_ATTRIBUTE"].Caption = "APID Attribute Name";
243
            gridViewAttribute.ExpandAllGroups();
244

  
245
            gridControlAttribute.RepositoryItems.Add(clearButton);
246
            gridViewAttribute.Columns["Clear"].ColumnEdit = clearButton;
247
            gridViewAttribute.Columns["Clear"].MaxWidth = 16;
248

  
249
            #region set lookUpEdit
250
            RepositoryItemGridLookUpEdit lookUpEdit = new RepositoryItemGridLookUpEdit();
251
            lookUpEdit.BeginInit();
252
            lookUpEdit.DataSource = APIDUtils.GetSymbolAttributes();
253
            lookUpEdit.DisplayMember = "DisplayMember";
254
            lookUpEdit.ValueMember = "Value";
255
            lookUpEdit.NullText = "";
256
            lookUpEdit.BestFitMode = BestFitMode.BestFit;
257
            lookUpEdit.KeyUp += lookUpEdit_KeyUp;
258
            lookUpEdit.Popup += lookUpEdit_Popup;
259
            lookUpEdit.EndInit();
260

  
261
            lookUpEdit.View.OptionsBehavior.AutoPopulateColumns = false;
262
            DevExpress.XtraGrid.Columns.GridColumn colType = lookUpEdit.View.Columns.AddField("DisplayType");
263
            colType.GroupIndex = 0;
264
            colType.VisibleIndex = 0;
265
            colType.Caption = "Type";
266
            DevExpress.XtraGrid.Columns.GridColumn colStyle = lookUpEdit.View.Columns.AddField("Name");
267
            colStyle.VisibleIndex = 1;
268
            #endregion
269

  
270
            gridControlAttribute.RepositoryItems.Add(lookUpEdit);
271
            gridViewAttribute.Columns["APID_ATTRIBUTE"].ColumnEdit = lookUpEdit;
272

  
273
        }
219 274
        #endregion
220 275

  
221 276
        #region Events
......
470 525
                    SetPictureEdit(pictureEditMappedOPCOut, _ID2ImagePath);
471 526
                }
472 527
            }
528
            else if (tabbedControlGroup.SelectedTabPage.Name == "GroupAttribute" && gridViewAttribute.FocusedRowHandle >= 0)
529
            {
530
                string result = "";
531
                GetNodeLoopText(treeListAvevaSymbol.FocusedNode, ref result);
532
                gridViewAttribute.SetRowCellValue(gridViewAttribute.FocusedRowHandle, "APID_SYMBOL", result + @"\" + e.Item.Caption);
533
            }
473 534
        }
474 535
        public void repositoryItemButtonEdit_ButtonClick(object sender, ButtonPressedEventArgs e)
475 536
        {
476 537
            string value = string.Empty;
477 538
            if (tabbedControlGroup.SelectedTabPage.Name == "GroupSymbol" && gridViewSymbol.FocusedRowHandle >= 0)
478 539
                value = gridViewSymbol.GetRowCellDisplayText(gridViewSymbol.FocusedRowHandle, "APID_SYMBOL");
479
            
540
            else if (tabbedControlGroup.SelectedTabPage.Name == "GroupAttribute" && gridViewAttribute.FocusedRowHandle >= 0)
541
                value = gridViewAttribute.GetRowCellDisplayText(gridViewAttribute.FocusedRowHandle, "APID_SYMBOL");
542

  
480 543
            if (!string.IsNullOrEmpty(value) && 
481 544
                MessageBox.Show("Are you sure you want to clear mapping information?", "APID Converter", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
482 545
            {
483 546
                if (tabbedControlGroup.SelectedTabPage.Name == "GroupSymbol" && gridViewSymbol.FocusedRowHandle >= 0)
484 547
                    gridViewSymbol.SetRowCellValue(gridViewSymbol.FocusedRowHandle, "APID_SYMBOL", null);
548
                else if (tabbedControlGroup.SelectedTabPage.Name == "GroupAttribute" && gridViewAttribute.FocusedRowHandle >= 0)
549
                    gridViewAttribute.SetRowCellValue(gridViewAttribute.FocusedRowHandle, "APID_SYMBOL", null);
485 550
            }
486 551
        }
487 552
        private void lookUpEdit_KeyUp(object sender, KeyEventArgs e)
DTI_PID/APIDConverter/Utils/APIDUtils.cs
147 147
            dt.Columns.Add("Name");
148 148
            dt.Columns.Add("DisplayType");
149 149
            dt.Columns.Add("Type");
150
            
150
            dt.Columns.Add("Value");
151
            dt.Columns.Add("DisplayMember");
152

  
151 153
            #region UDA
152 154
            DataTable udaDT = Project_DB.SelectUDADetails();
153
            DataRow[] rows = udaDT.Select("LovDescription != 'Project Symbol' AND LovDescription != 'Standard Symbol'");
155
            DataRow[] rows = udaDT.Select("LovDescription <> 'Project Symbol' AND LovDescription <> 'Standard Symbol'");
154 156
            foreach (DataRow item in rows)
155 157
                udaDT.Rows.Remove(item);
156 158
            udaDT = udaDT.DefaultView.ToTable(true, "UDAName");
157

  
159
            string udaDisplay = "User Defined Attribute";
158 160
            foreach (DataRow item in udaDT.Rows)
159
                dt.Rows.Add(item["UDAName"], "User Defined Attribute", "UDA");
161
                dt.Rows.Add(item["UDAName"], udaDisplay, "UDA", item["UDAName"] + "|UDA", item["UDAName"] + " | " + udaDisplay);
160 162
            #endregion
161 163

  
162 164
            return dt;

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)