浏览代码

拆解处理工序BOM校验规则改在每行处理时获取

Hcsy 8 年之前
父节点
当前提交
8f68591c93

+ 67 - 19
UAS-MES/FunctionCode/Make/Make_Decompose.Designer.cs

@@ -44,13 +44,15 @@
             this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.dataGridViewImageColumn1 = new System.Windows.Forms.DataGridViewImageColumn();
             this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewImageColumn1 = new System.Windows.Forms.DataGridViewImageColumn();
             this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn10 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn12 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ms_wccode = new UAS_MES.CustomControl.ValueLabel.ValueLabel();
             this.ms_craftname = new UAS_MES.CustomControl.ValueLabel.ValueLabel();
             this.ms_craftcode = new UAS_MES.CustomControl.ValueLabel.ValueLabel();
@@ -62,8 +64,8 @@
             this.sn_code = new UAS_MES.CustomControl.TextBoxWithIcon.EnterTextBox();
             this.OperateResult = new UAS_MES.CustomControl.RichText.RichTextAutoBottom();
             this.dataGridViewCheckBoxColumn2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
-            this.dataGridViewTextBoxColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.Choose = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.cm_craftcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.cm_id = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.pr_detail = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.mb_bgcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -74,7 +76,9 @@
             this.New_BarCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.cm_maid = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.cm_materialtype = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cm_maprodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.cm_sncode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.cm_makecode = new System.Windows.Forms.DataGridViewTextBoxColumn();
             ((System.ComponentModel.ISupportInitialize)(this.LabelDataGridView)).BeginInit();
             this.SuspendLayout();
             // 
@@ -145,6 +149,7 @@
             this.LabelDataGridView.BackgroundColor = System.Drawing.SystemColors.ButtonFace;
             this.LabelDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.Choose,
+            this.cm_craftcode,
             this.cm_id,
             this.pr_detail,
             this.mb_bgcode,
@@ -155,7 +160,9 @@
             this.New_BarCode,
             this.cm_maid,
             this.cm_materialtype,
-            this.cm_sncode});
+            this.cm_maprodcode,
+            this.cm_sncode,
+            this.cm_makecode});
             this.LabelDataGridView.Location = new System.Drawing.Point(12, 102);
             this.LabelDataGridView.Name = "LabelDataGridView";
             this.LabelDataGridView.RowHeadersVisible = false;
@@ -217,14 +224,17 @@
             // 
             // dataGridViewTextBoxColumn2
             // 
+            this.dataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
             this.dataGridViewTextBoxColumn2.DataPropertyName = "pr_detail";
             this.dataGridViewTextBoxColumn2.HeaderText = "pr_detail";
+            this.dataGridViewTextBoxColumn2.MinimumWidth = 40;
             this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
             this.dataGridViewTextBoxColumn2.Visible = false;
             this.dataGridViewTextBoxColumn2.Width = 80;
             // 
             // dataGridViewTextBoxColumn3
             // 
+            this.dataGridViewTextBoxColumn3.DataPropertyName = "pr_detail";
             this.dataGridViewTextBoxColumn3.HeaderText = "不良代码组编号";
             this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3";
             this.dataGridViewTextBoxColumn3.ReadOnly = true;
@@ -238,8 +248,18 @@
             this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4";
             this.dataGridViewTextBoxColumn4.ReadOnly = true;
             this.dataGridViewTextBoxColumn4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn4.Visible = false;
             this.dataGridViewTextBoxColumn4.Width = 80;
             // 
+            // dataGridViewTextBoxColumn5
+            // 
+            this.dataGridViewTextBoxColumn5.DataPropertyName = "cm_soncode";
+            this.dataGridViewTextBoxColumn5.HeaderText = "子件编号";
+            this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
+            this.dataGridViewTextBoxColumn5.ReadOnly = true;
+            this.dataGridViewTextBoxColumn5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+            this.dataGridViewTextBoxColumn5.Width = 80;
+            // 
             // dataGridViewImageColumn1
             // 
             this.dataGridViewImageColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
@@ -250,14 +270,6 @@
             this.dataGridViewImageColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
             this.dataGridViewImageColumn1.Width = 20;
             // 
-            // dataGridViewTextBoxColumn5
-            // 
-            this.dataGridViewTextBoxColumn5.DataPropertyName = "cm_soncode";
-            this.dataGridViewTextBoxColumn5.HeaderText = "子件编号";
-            this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5";
-            this.dataGridViewTextBoxColumn5.ReadOnly = true;
-            this.dataGridViewTextBoxColumn5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
-            // 
             // dataGridViewTextBoxColumn6
             // 
             this.dataGridViewTextBoxColumn6.DataPropertyName = "cm_barcode";
@@ -268,9 +280,11 @@
             // 
             // dataGridViewTextBoxColumn7
             // 
+            this.dataGridViewTextBoxColumn7.DataPropertyName = "cm_barcode";
             this.dataGridViewTextBoxColumn7.HeaderText = "新批号";
             this.dataGridViewTextBoxColumn7.MinimumWidth = 100;
             this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7";
+            this.dataGridViewTextBoxColumn7.ReadOnly = true;
             this.dataGridViewTextBoxColumn7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxColumn7.Width = 300;
             // 
@@ -278,9 +292,11 @@
             // 
             this.dataGridViewTextBoxColumn8.DataPropertyName = "cm_maid";
             this.dataGridViewTextBoxColumn8.HeaderText = "";
+            this.dataGridViewTextBoxColumn8.MinimumWidth = 300;
             this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8";
+            this.dataGridViewTextBoxColumn8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
             this.dataGridViewTextBoxColumn8.Visible = false;
-            this.dataGridViewTextBoxColumn8.Width = 5;
+            this.dataGridViewTextBoxColumn8.Width = 300;
             // 
             // dataGridViewTextBoxColumn9
             // 
@@ -296,6 +312,20 @@
             this.dataGridViewTextBoxColumn10.Name = "dataGridViewTextBoxColumn10";
             this.dataGridViewTextBoxColumn10.Visible = false;
             // 
+            // dataGridViewTextBoxColumn11
+            // 
+            this.dataGridViewTextBoxColumn11.DataPropertyName = "cm_sncode";
+            this.dataGridViewTextBoxColumn11.HeaderText = "";
+            this.dataGridViewTextBoxColumn11.Name = "dataGridViewTextBoxColumn11";
+            this.dataGridViewTextBoxColumn11.Visible = false;
+            // 
+            // dataGridViewTextBoxColumn12
+            // 
+            this.dataGridViewTextBoxColumn12.DataPropertyName = "cm_makecode";
+            this.dataGridViewTextBoxColumn12.HeaderText = "";
+            this.dataGridViewTextBoxColumn12.Name = "dataGridViewTextBoxColumn12";
+            this.dataGridViewTextBoxColumn12.Visible = false;
+            // 
             // ms_wccode
             // 
             this.ms_wccode.AutoSize = true;
@@ -427,13 +457,6 @@
             this.dataGridViewCheckBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
             this.dataGridViewCheckBoxColumn2.Width = 40;
             // 
-            // dataGridViewTextBoxColumn11
-            // 
-            this.dataGridViewTextBoxColumn11.DataPropertyName = "cm_sncode";
-            this.dataGridViewTextBoxColumn11.HeaderText = "";
-            this.dataGridViewTextBoxColumn11.Name = "dataGridViewTextBoxColumn11";
-            this.dataGridViewTextBoxColumn11.Visible = false;
-            // 
             // Choose
             // 
             this.Choose.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
@@ -442,6 +465,13 @@
             this.Choose.Name = "Choose";
             this.Choose.Width = 80;
             // 
+            // cm_craftcode
+            // 
+            this.cm_craftcode.DataPropertyName = "cm_craftcode";
+            this.cm_craftcode.HeaderText = "";
+            this.cm_craftcode.Name = "cm_craftcode";
+            this.cm_craftcode.Visible = false;
+            // 
             // cm_id
             // 
             this.cm_id.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
@@ -525,6 +555,13 @@
             this.cm_materialtype.Name = "cm_materialtype";
             this.cm_materialtype.Visible = false;
             // 
+            // cm_maprodcode
+            // 
+            this.cm_maprodcode.DataPropertyName = "cm_maprodcode";
+            this.cm_maprodcode.HeaderText = "";
+            this.cm_maprodcode.Name = "cm_maprodcode";
+            this.cm_maprodcode.Visible = false;
+            // 
             // cm_sncode
             // 
             this.cm_sncode.DataPropertyName = "cm_sncode";
@@ -532,6 +569,13 @@
             this.cm_sncode.Name = "cm_sncode";
             this.cm_sncode.Visible = false;
             // 
+            // cm_makecode
+            // 
+            this.cm_makecode.DataPropertyName = "cm_makecode";
+            this.cm_makecode.HeaderText = "";
+            this.cm_makecode.Name = "cm_makecode";
+            this.cm_makecode.Visible = false;
+            // 
             // Make_Decompose
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
@@ -606,6 +650,7 @@
         private System.Windows.Forms.RadioButton change;
         private System.Windows.Forms.RadioButton nochange;
         private System.Windows.Forms.DataGridViewCheckBoxColumn Choose;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cm_craftcode;
         private System.Windows.Forms.DataGridViewTextBoxColumn cm_id;
         private System.Windows.Forms.DataGridViewTextBoxColumn pr_detail;
         private System.Windows.Forms.DataGridViewTextBoxColumn mb_bgcode;
@@ -616,6 +661,9 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn New_BarCode;
         private System.Windows.Forms.DataGridViewTextBoxColumn cm_maid;
         private System.Windows.Forms.DataGridViewTextBoxColumn cm_materialtype;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cm_maprodcode;
         private System.Windows.Forms.DataGridViewTextBoxColumn cm_sncode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn cm_makecode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn12;
     }
 }

+ 47 - 17
UAS-MES/FunctionCode/Make/Make_Decompose.cs

@@ -80,7 +80,6 @@ namespace UAS_MES.Make
                     {
                         BaseUtil.SetFormValue(this.Controls, dt);
                         LoadData(ms_sncode.Text, sender, e);
-                        GetItem();
                     }
                     else
                     {
@@ -101,25 +100,12 @@ namespace UAS_MES.Make
             }
         }
 
-        private void GetItem()
-        {
-            dt1 = new DataTable();
-            sql.Clear();
-            sql.Append("select ma_bomversion from makeserial left join make on ma_code=ms_makecode ");
-            sql.Append("left join product on ms_prodcode=pr_code where ms_sncode='" + ms_sncode.Text + "' order by ms_id desc");
-            dt1 = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-            if (dt1.Rows.Count > 0)
-            {
-                ma_bomversion = dt1.Rows[0][0].ToString();
-            }
-        }
-
         //加载此序列号上料记录
         private void LoadData(string sncode, object sender, KeyEventArgs e)
         {
             sncode_1 = sncode;
             sql.Clear();
-            sql.Append("select cm_sncode,cm_maprodcode,cm_maid,cm_id,cm_soncode,cm_barcode,pr_detail,cm_materialtype from craftmaterial left join product on pr_code=cm_soncode where");
+            sql.Append("select cm_craftcode,cm_makecode,cm_sncode,cm_maprodcode,cm_maid,cm_id,cm_soncode,cm_barcode,pr_detail,cm_materialtype from craftmaterial left join product on pr_code=cm_soncode where");
             sql.Append("(cm_sncode  in (select sn from makesnrelation where firstsn='"+ sncode_1 + "')  or cm_sncode in ( select firstsn from makesnrelation where sn = '"+ sncode_1 + "') or cm_sncode = '"+ sncode_1 + "') and  nvl(cm_status,0)='0'");
             dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
             if (dt.Rows.Count > 0)
@@ -208,12 +194,22 @@ namespace UAS_MES.Make
                     {
                         if (change.Checked)
                         {
+                            dt1 = new DataTable();
+                            sql.Clear();
+                            sql.Append("select ma_bomversion from makeserial left join make on ma_code=ms_makecode ");
+                            sql.Append("left join product on ms_prodcode=pr_code where ms_makecode='" + LabelDataGridView.Rows[i].Cells["cm_makecode"].Value + "' order by ms_id desc");
+                            dt1 = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            if (dt1.Rows.Count > 0)
+                            {
+                                ma_bomversion = dt1.Rows[0][0].ToString();
+                            }
+
                             dtbar = new DataTable();
                             sql.Clear();
                             sql.Append("select sp_id,sp_tracekind,sp_barcoderule,sp_prefix,sp_ifuseregex,sp_ifforsn,sp_length,sp_description,sp_soncode,pr_detail,pr_spec,");
                             sql.Append("sp_repcode,pr_id,sp_type,case when (sp_type='物料' and sp_soncode=pr_code) then '已采集' else '未采集' end sp_ifpick ,sp_prefix,");
                             sql.Append("sp_length,sp_regex,sp_ifforsn from stepproduct left join product on pr_code=sp_soncode where sp_bomversion='" + ma_bomversion + "' and ");
-                            sql.Append("sp_craftcode='" + ms_craftcode.Text + "'and sp_mothercode ='" + ms_prodcode.Text + "' and sp_soncode = '" + LabelDataGridView.Rows[i].Cells["cm_soncode"].Value + "' ");
+                            sql.Append("sp_craftcode='" + LabelDataGridView.Rows[i].Cells["cm_craftcode"].Value + "'and sp_mothercode ='" + LabelDataGridView.Rows[i].Cells["cm_maprodcode"].Value + "' and sp_soncode = '" + LabelDataGridView.Rows[i].Cells["cm_soncode"].Value + "' ");
                             sql.Append("and((sp_type = '物料')or sp_type <> '物料') order by SP_DETNO asc");
                             dtbar = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                             if (dtbar.Rows.Count > 0)
@@ -311,7 +307,7 @@ namespace UAS_MES.Make
                             sql.Clear();
                             sql.Append("insert into craftmaterial (cm_id, cm_makecode,cm_maid,cm_maprodcode,cm_soncode,cm_mscode,cm_sncode,cm_stepcode,cm_stepname,");
                             sql.Append("cm_craftcode,cm_craftname,cm_barcode,cm_inqty,cm_indate,cm_inman,cm_linecode,cm_wccode,cm_sourcecode,cm_spid, cm_materialtype,cm_status)");
-                            sql.Append("values(Craftmaterial_seq.nextval,'" + ms_makecode.Text + "','" + LabelDataGridView.Rows[i].Cells["cm_maid"].Value + "','" + ms_prodcode.Text + "','" + LabelDataGridView.Rows[i].Cells["cm_soncode"].Value + "'");
+                            sql.Append("values(Craftmaterial_seq.nextval,'" + LabelDataGridView.Rows[i].Cells["cm_makecode"].Value + "','" + LabelDataGridView.Rows[i].Cells["cm_maid"].Value + "','" + ms_prodcode.Text + "','" + LabelDataGridView.Rows[i].Cells["cm_soncode"].Value + "'");
                             sql.Append(",'" + LabelDataGridView.Rows[i].Cells["cm_sncode"].Value + "','" + LabelDataGridView.Rows[i].Cells["cm_sncode"].Value + "','" + User.CurrentStepCode + "','" + User.CurrentStepName + "',");
                             sql.Append("'" + ms_craftcode.Text + "','" + ms_craftname.Text + "','" + LabelDataGridView.Rows[i].Cells["New_BarCode"].Value + "',1,sysdate,'" + User.UserName + "','" + User.UserLineCode + "','" + ms_wccode.Text + "',");
                             sql.Append("'" + User.UserSourceCode + "','" + sp_id + "','" + LabelDataGridView.Rows[i].Cells["cm_materialtype"].Value + "','0')");
@@ -322,6 +318,40 @@ namespace UAS_MES.Make
                         }
                         else if (nochange.Checked)
                         {
+                            //获取物料生产类型属性
+                            //sql.Clear();
+                            //sql.Append("select cm_soncode,cm_barcode, pr_manutype from craftmaterial left join product on cm_soncode=pr_code where cm_id ='" + LabelDataGridView.Rows[i].Cells["cm_id"].Value + "'");
+                            //dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            //string pr_manutype = dt.Rows[0]["pr_manutype"].ToString();       
+                            //判断生产信息
+                            sql.Clear();
+                            sql.Append("select ms_id,ms_sncode,cm_barcode from craftmaterial left join makeserial on cm_barcode = ms_sncode and cm_soncode = ms_prodcode where cm_id = '" + LabelDataGridView.Rows[i].Cells["cm_id"].Value + "' and cm_materialtype ='1' and ms_id>'0' and ms_nextmacode = '" + ms_makecode.Text + "'");
+                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            //制造件
+                            if (dt.Rows.Count > 0)
+                            {
+                                string makecode = (String)dh.getFieldDataByCondition("makeserial", "ms_makecode", "ms_sncode = '" + LabelDataGridView.Rows[i].Cells["cm_barcode"].Value + "' and ms_prodcode = '" + LabelDataGridView.Rows[i].Cells["cm_soncode"].Value + "'");
+                                string mss_id = dt.Rows[0]["ms_id"].ToString();
+                                ////MakeBad表插入物料批号不良信息
+                                sql.Clear();
+                                sql.Append(" insert into makebad (mb_id, mb_inman,mb_indate,mb_stepcode,mb_sourcecode, mb_bgcode,mb_mscode,mb_sncode, mb_badcode, mb_makecode)");
+                                sql.Append("values (MakeBad_seq.nextval,'" + User.UserName + "',sysdate,'" + User.CurrentStepCode + "','" + User.UserSourceCode + "',:bg_code ,'" + LabelDataGridView.Rows[i].Cells["cm_barcode"].Value + "','" + LabelDataGridView.Rows[i].Cells["cm_barcode"].Value + "',");
+                                sql.Append(":bc_code,'" + makecode + "')");
+                                dh.BatchInsert(sql.GetString(), new string[] { "bg_code", "bc_code" }, bgcode, bccode);
+                                //更新子件序列号为待维修                               
+                                sql.Clear();
+                                sql.Append("update makeserial set ms_status=3 ,ms_badtimes = ms_badtimes+1,ms_nextmacode = '' where ms_id='" + mss_id + "' ");
+                                dh.ExecuteSql(sql.GetString(), "update");
+                            }
+                            //没有生产信息,判定为采购件,则将不良信息插入不良零件表中MAKEBADRSPART
+                            else
+                            {
+                                sql.Clear();
+                                sql.Append("insert into  MAKEBADRSPART(mbp_id,mbp_indate,mbp_inman,mbp_sncode, mbp_badcode, mbp_part, mbp_makecode, mbp_sccode,mbp_barcode)values");
+                                sql.Append("(MAKEBADRSPART_seq.nextval, sysdate, '" + User.UserCode + "','" + ms_sncode.Text + "',:bc_code,'" + LabelDataGridView.Rows[i].Cells["cm_soncode"].Value + "','" + ms_makecode.Text + "','" + User.UserSourceCode + "','" + LabelDataGridView.Rows[i].Cells["cm_barcode"].Value + "')");
+                                dh.BatchInsert(sql.GetString(), new string[] { "bc_code" }, bccode);
+                            }
+
                             //craftmaterial解除相应物料绑定
                             sql.Clear();
                             sql.Append("update craftmaterial set cm_status=-1,cm_dropman='" + User.UserName + "',");

+ 9 - 0
UAS-MES/FunctionCode/Make/Make_Decompose.resx

@@ -117,6 +117,9 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
+  <metadata name="cm_craftcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="cm_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -147,9 +150,15 @@
   <metadata name="cm_materialtype.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="cm_maprodcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="cm_sncode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="cm_makecode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
   <data name="Decompose.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>