private void RicreaKit(ricreakit RicreaKitClass) { DeleteKit(RicreaKitClass); //Trova kit - Esplodi kit //Creazione della datatable esplosione distinta base DataTable db_esploso = new DB_FactoryDataSet.NM_V_ANAGRAFICA_DB_DESCRIZIONEESTESADataTable(); db_esploso = this.db_esplosoTableAdapter.GetDataBy(RicreaKitClass.Dev_CodiceKit); foreach (DataRow rigaesploso in db_esploso.Rows) { string codcompon = rigaesploso["CODICE_COMPONENTE"].ToString().TrimEnd(' '); if (codcompon.StartsWith("XCBL")) { RicreaKitClass.isCable = true; } else { RicreaKitClass.isCable = false; } if ((!codcompon.StartsWith("XS")) && (!codcompon.StartsWith("XX")) && (!RicreaKitClass.isCable)) { continue; } if (codcompon.StartsWith("XS172P")) { continue; } // verifica se cradle RicreaKitClass.isPalm = GFunc.isPalm(codcompon); RicreaKitClass.isCntr = GFunc.isCntr(codcompon); if (((!RicreaKitClass.isPalm) && (!RicreaKitClass.isCntr)) && (!RicreaKitClass.isCable)) { continue; } RicreaKitClass.Dev_CodiceComponente = rigaesploso["CODICE_COMPONENTE"].ToString().TrimEnd(' '); //verifica presenza su GC_Kit string filtro = "Kit_Composto = " + "'" + RicreaKitClass.Dev_CodiceKit + "' AND Kit_Componente = " + "'" + RicreaKitClass.Dev_CodiceComponente + "'"; DataRow[] kit_exisistingrows = dB_FactoryDataSet.GC_Kit.Select(filtro); if (kit_exisistingrows.Count() > 0) { continue; } RicreaKitClass.Dev_DescComponente = (string)rigaesploso["DESEST_COMPONENTE"].ToString().TrimEnd(' '); if (RicreaKitClass.Dev_DescComponente == "") { RicreaKitClass.Dev_DescComponente = (string)rigaesploso["Descrizione"].ToString().TrimEnd(' '); } RicreaKitClass.Dev_StartDate = default(DateTime); RicreaKitClass.Dev_EndDate = default(DateTime); if (rigaesploso["DATA_INIZIO_VALIDITA"].ToString() != "") { RicreaKitClass.Dev_StartDate = Convert.ToDateTime(rigaesploso["DATA_INIZIO_VALIDITA"].ToString()); } if (rigaesploso["DATA_FINE_VALIDITA"].ToString() != "") { RicreaKitClass.Dev_EndDate = Convert.ToDateTime(rigaesploso["DATA_FINE_VALIDITA"].ToString()); } RicreaKitClass.Dev_Qta = Convert.ToInt16(rigaesploso["Quantita"]); PopolaKit(RicreaKitClass); } }
private void PopolaDevice(device PassedNewDevice) { if (PassedNewDevice.Dev_CodiceComponente.StartsWith("XCBL")) { PassedNewDevice.isCable = true; } else { PassedNewDevice.isCable = false; } if ((!PassedNewDevice.Dev_CodiceComponente.StartsWith("XS")) && (!PassedNewDevice.Dev_CodiceComponente.StartsWith("XX")) && (!PassedNewDevice.isCable)) { return; } if (PassedNewDevice.Dev_CodiceComponente.StartsWith("XS172P")) { return; } // verifica se cradle if (((!PassedNewDevice.isPalm) && (!PassedNewDevice.isCntr)) && (!PassedNewDevice.isCable)) { return; } if (!PassedNewDevice.isCable) { DateTime InizioFW = default(DateTime); //Correzione dei dati mancanti x aggiornamento devices DataTable db_esploso = new DB_FactoryDataSet.NM_V_ANAGRAFICA_DB_DESCRIZIONEESTESADataTable(); db_esploso = this.db_esplosoTableAdapter.GetDataBy(PassedNewDevice.Dev_CodiceComponente); foreach (DataRow rigaesploso in db_esploso.Rows) { string codcompon = rigaesploso["CODICE_COMPONENTE"].ToString().TrimEnd(' '); if (codcompon != PassedNewDevice.Dev_Firmware) { continue; } if (rigaesploso["DATA_INIZIO_VALIDITA"].ToString() != "") { InizioFW = Convert.ToDateTime(rigaesploso["DATA_INIZIO_VALIDITA"].ToString()); break; } } //Verifica se presente in devices DataRow DBF_row = dB_FactoryDataSet.GC_Devices.Rows.Find(PassedNewDevice.Dev_CodiceComponente); if (DBF_row != null) // verifica contenuti { DBF_row.SetModified(); DBF_row.BeginEdit(); DBF_row["Dev_FamProd"] = PassedNewDevice.Dev_FamProd; DBF_row["Dev_CodiceItem"] = PassedNewDevice.Dev_CodiceComponente; DBF_row["Dev_DescItem"] = PassedNewDevice.Dev_DescComponente; DBF_row["Dev_Firmware"] = PassedNewDevice.Dev_Firmware; //DBF_row["Dev_StartDateFW"] = Convert.ToDateTime(PassedNewDevice.Dev_StartDate); DBF_row["Dev_StartDateFW"] = Convert.ToDateTime(InizioFW); DBF_row["Dev_EndDateFW"] = Convert.ToDateTime(PassedNewDevice.Dev_EndDate); DBF_row["Dev_ID_Model"] = PassedNewDevice.Dev_Modello; DBF_row.EndEdit(); try { this.gC_DevicesTableAdapter.Update(DBF_row); dB_FactoryDataSet.GC_Devices.AcceptChanges(); this.gC_DevicesTableAdapter.Update(DBF_row); } catch (DBConcurrencyException exc) { MessageBox.Show("aa"); } //UpdateCustomerFirmware(PassedNewDevice.Dev_Customer, PassedNewDevice.Dev_Firmware); } else // scrivi nuovo record { DataRow DBF_newrow = dB_FactoryDataSet.GC_Devices.NewRow(); DBF_newrow["Dev_FamProd"] = PassedNewDevice.Dev_FamProd; DBF_newrow["Dev_CodiceItem"] = PassedNewDevice.Dev_CodiceComponente; DBF_newrow["Dev_DescItem"] = PassedNewDevice.Dev_DescComponente; DBF_newrow["Dev_Firmware"] = PassedNewDevice.Dev_Firmware; //DBF_newrow["Dev_StartDateFW"] = Convert.ToDateTime(PassedNewDevice.Dev_StartDate); DBF_newrow["Dev_StartDateFW"] = Convert.ToDateTime(InizioFW); DBF_newrow["Dev_EndDateFW"] = Convert.ToDateTime(PassedNewDevice.Dev_EndDate); DBF_newrow["Dev_ID_Model"] = PassedNewDevice.Dev_Modello; dB_FactoryDataSet.GC_Devices.Rows.Add(DBF_newrow); gC_DevicesTableAdapter.Update(DBF_newrow); //UpdateCustomerFirmware(PassedNewDevice.Dev_Customer, PassedNewDevice.Dev_Firmware); } dB_FactoryDataSet.GC_Devices.AcceptChanges(); } }