Exemplo n.º 1
0
        private void ImportMOBOM(object[] objs, string type, Log log)
        {
            MOFacade  mofacade = new MOFacade(this.MESProvider);
            Hashtable ht       = new Hashtable();

            object[] impobjs = new object[objs.Length];
            for (int j = 0; j < objs.Length; j++)
            {
                object impObj = importSchema.FillImportObject(objs[j], type);
                object moobj  = mofacade.GetMO((impObj as MOBOM).MOCode);
                impobjs.SetValue(impObj, j);
                if (!ht.ContainsKey((impObj as MOBOM).MOCode))
                {
                    (impObj as MOBOM).ItemCode = (moobj as MO).ItemCode;
                    ht.Add((impObj as MOBOM).MOCode, (moobj as MO).ItemCode);
                }
                else
                {
                    (impObj as MOBOM).ItemCode = ht[(impObj as MOBOM).MOCode].ToString();
                }
            }

            foreach (DictionaryEntry dic in ht)
            {
                object[] delobjs = mofacade.GetMOBOM(dic.Key.ToString());
                if (delobjs != null)
                {
                    for (int k = 0; k < delobjs.Length; k++)
                    {
                        this.MESProvider.Delete(delobjs[k]);
                    }
                }
            }

            for (int j = 0; j < objs.Length; j++)
            {
                this.MESProvider.Insert(impobjs[j]);

                this.ERPProvider.Delete(objs[j]);
            }
        }