private void buSalvaDimensioniSpessori_Click(object sender, EventArgs e) { string tableName1 = "ARTICOLI_DIMENSIONI"; string tableName2 = "ARTICOLI_SPESSORI"; //if (_dsServizio.Tables[tableName1].Rows.Count == 0 && _dsServizio.Tables[tableName2].Rows.Count == 0) // return; try { //DIMENSIONI foreach (DataRow riga in _dsServizio.Tables[tableName1].Rows) { if (riga["IDDIMENSIONE"] != DBNull.Value) { decimal IDDIMENSIONE = (decimal)riga["IDDIMENSIONE"]; // && x.RIFERIMENTO.Trim() == RIFERIMENTO CDCDS.CDC_ARTICOLI_DIMENSIONIRow articolo_dimensioni = _DS.CDC_ARTICOLI_DIMENSIONI.Where(x => x.IDDIMENSIONE == IDDIMENSIONE).FirstOrDefault(); if (articolo_dimensioni == null) { articolo_dimensioni = _DS.CDC_ARTICOLI_DIMENSIONI.NewCDC_ARTICOLI_DIMENSIONIRow(); articolo_dimensioni.IDARTICOLO = ((decimal)riga["IDARTICOLO"]); articolo_dimensioni.RIFERIMENTO = ((string)riga["RIFERIMENTO"]).ToUpper().Trim(); articolo_dimensioni.GRANDEZZA = ((string)riga["GRANDEZZA"]).ToUpper().Trim(); articolo_dimensioni.RICHIESTO = (double)riga["RICHIESTO"]; articolo_dimensioni.TOLLERANZA = (double)riga["TOLLERANZA"]; articolo_dimensioni.MINIMO = (double)riga["MINIMO"]; articolo_dimensioni.MASSIMO = (double)riga["MASSIMO"]; articolo_dimensioni.TAMPONE = ConvertiInStringa(riga["TAMPONE"]).ToUpper().Trim(); articolo_dimensioni.CONTAMPONE = ConvertiBoolInStringa(riga["CONTAMPONE"]); // ((string)riga["CONTAMPONE"]).ToUpper().Trim(); articolo_dimensioni.DATAINSERIMENTO = DateTime.Now; articolo_dimensioni.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_ARTICOLI_DIMENSIONI.AddCDC_ARTICOLI_DIMENSIONIRow(articolo_dimensioni); } else { articolo_dimensioni.IDARTICOLO = ((decimal)riga["IDARTICOLO"]); articolo_dimensioni.RIFERIMENTO = ((string)riga["RIFERIMENTO"]).ToUpper().Trim(); articolo_dimensioni.GRANDEZZA = ((string)riga["GRANDEZZA"]).ToUpper().Trim(); articolo_dimensioni.RICHIESTO = (double)riga["RICHIESTO"]; articolo_dimensioni.TOLLERANZA = (double)riga["TOLLERANZA"]; articolo_dimensioni.MINIMO = (double)riga["MINIMO"]; articolo_dimensioni.MASSIMO = (double)riga["MASSIMO"]; articolo_dimensioni.TAMPONE = ConvertiInStringa(riga["TAMPONE"]).ToUpper().Trim(); articolo_dimensioni.CONTAMPONE = ConvertiBoolInStringa(riga["CONTAMPONE"]); //((string)riga["CONTAMPONE"]).ToUpper().Trim(); articolo_dimensioni.DATAINSERIMENTO = DateTime.Now; articolo_dimensioni.UTENTE = Contesto.Utente.FULLNAMEUSER; } } else { CDCDS.CDC_ARTICOLI_DIMENSIONIRow articolo_dimensioni = _DS.CDC_ARTICOLI_DIMENSIONI.NewCDC_ARTICOLI_DIMENSIONIRow(); articolo_dimensioni.IDARTICOLO = selIDARTICOLO; articolo_dimensioni.RIFERIMENTO = ((string)riga["RIFERIMENTO"]).ToUpper().Trim(); articolo_dimensioni.GRANDEZZA = ((string)riga["GRANDEZZA"]).ToUpper().Trim(); articolo_dimensioni.RICHIESTO = (double)riga["RICHIESTO"]; articolo_dimensioni.TOLLERANZA = (double)riga["TOLLERANZA"]; articolo_dimensioni.MINIMO = (double)riga["MINIMO"]; articolo_dimensioni.MASSIMO = (double)riga["MASSIMO"]; articolo_dimensioni.TAMPONE = ConvertiInStringa(riga["TAMPONE"]).ToUpper().Trim(); articolo_dimensioni.CONTAMPONE = ConvertiBoolInStringa(riga["CONTAMPONE"]); //((string)riga["CONTAMPONE"]).ToUpper().Trim(); articolo_dimensioni.DATAINSERIMENTO = DateTime.Now; articolo_dimensioni.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_ARTICOLI_DIMENSIONI.AddCDC_ARTICOLI_DIMENSIONIRow(articolo_dimensioni); } } //SPESSORI foreach (DataRow riga in _dsServizio.Tables[tableName2].Rows) { if (riga["IDSPESSORE"] != DBNull.Value) { decimal IDSPESSORE = (decimal)riga["IDSPESSORE"]; // && x.RIFERIMENTO.Trim() == RIFERIMENTO CDCDS.CDC_ARTICOLI_SPESSORIRow articolo_spessori = _DS.CDC_ARTICOLI_SPESSORI.Where(x => x.IDSPESSORE == IDSPESSORE).FirstOrDefault(); if (articolo_spessori == null) { articolo_spessori = _DS.CDC_ARTICOLI_SPESSORI.NewCDC_ARTICOLI_SPESSORIRow(); articolo_spessori.IDARTICOLO = ((decimal)riga["IDARTICOLO"]); articolo_spessori.ETICHETTA = ((string)riga["ETICHETTA"]).ToUpper().Trim(); articolo_spessori.MINIMO = (double)riga["MINIMO"]; articolo_spessori.MASSIMO = (double)riga["MASSIMO"]; articolo_spessori.NOMINALE = (double)riga["NOMINALE"]; articolo_spessori.DATAINSERIMENTO = DateTime.Now; articolo_spessori.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_ARTICOLI_SPESSORI.AddCDC_ARTICOLI_SPESSORIRow(articolo_spessori); } else { articolo_spessori.IDARTICOLO = ((decimal)riga["IDARTICOLO"]); articolo_spessori.ETICHETTA = ((string)riga["ETICHETTA"]).ToUpper().Trim(); articolo_spessori.MINIMO = (double)riga["MINIMO"]; articolo_spessori.MASSIMO = (double)riga["MASSIMO"]; articolo_spessori.NOMINALE = (double)riga["NOMINALE"]; articolo_spessori.DATAINSERIMENTO = DateTime.Now; articolo_spessori.UTENTE = Contesto.Utente.FULLNAMEUSER; } } else { CDCDS.CDC_ARTICOLI_SPESSORIRow articolo_spessori = _DS.CDC_ARTICOLI_SPESSORI.NewCDC_ARTICOLI_SPESSORIRow(); articolo_spessori.IDARTICOLO = selIDARTICOLO; articolo_spessori.ETICHETTA = ((string)riga["ETICHETTA"]).ToUpper().Trim(); articolo_spessori.MINIMO = (double)riga["MINIMO"]; articolo_spessori.MASSIMO = (double)riga["MASSIMO"]; articolo_spessori.NOMINALE = (double)riga["NOMINALE"]; articolo_spessori.DATAINSERIMENTO = DateTime.Now; articolo_spessori.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_ARTICOLI_SPESSORI.AddCDC_ARTICOLI_SPESSORIRow(articolo_spessori); } } //cerco i cancellati e li marco List <CDCDS.CDC_ARTICOLI_DIMENSIONIRow> art_dims = _DS.CDC_ARTICOLI_DIMENSIONI.Where(x => x.RowState != DataRowState.Added && x.IDARTICOLO == selIDARTICOLO).ToList(); foreach (CDCDS.CDC_ARTICOLI_DIMENSIONIRow art_dim in art_dims) { DataRow[] art = _dsServizio.Tables["ARTICOLI_DIMENSIONI"].Select("IDDIMENSIONE = " + art_dim.IDDIMENSIONE.ToString()); if (art.GetLength(0) == 0) { art_dim.DATAINSERIMENTO = DateTime.Now; art_dim.UTENTE = Contesto.Utente.FULLNAMEUSER; art_dim.DELETED = "S"; } } List <CDCDS.CDC_ARTICOLI_SPESSORIRow> art_spess = _DS.CDC_ARTICOLI_SPESSORI.Where(x => x.RowState != DataRowState.Added && x.IDARTICOLO == selIDARTICOLO).ToList(); foreach (CDCDS.CDC_ARTICOLI_SPESSORIRow art_spes in art_spess) { DataRow[] art = _dsServizio.Tables["ARTICOLI_SPESSORI"].Select("IDSPESSORE = " + art_spes.IDSPESSORE.ToString()); if (art.GetLength(0) == 0) { art_spes.DATAINSERIMENTO = DateTime.Now; art_spes.UTENTE = Contesto.Utente.FULLNAMEUSER; art_spes.DELETED = "S"; } } CDCBLL bll = new CDCBLL(); bll.SalvaDatiArticoli_Dimensioni(_DS); bll.SalvaDatiArticoli_Spessori(_DS); _DS.CDC_ARTICOLI_DIMENSIONI.AcceptChanges(); _DS.CDC_ARTICOLI_SPESSORI.AcceptChanges(); _DS.CDC_ARTICOLI_DIMENSIONI.Clear(); _DS.CDC_ARTICOLI_SPESSORI.Clear(); bll.CaricaArticoliDimensioni(_DS); bll.CaricaArticoliSpessori(_DS); CaricaDimensioniSpessori(selIDARTICOLO); } catch (Exception ex) { MostraEccezione(ex, "Errore in Salva Dimensioni Spessori"); } finally { Cursor.Current = Cursors.Default; } foreach (DataGridViewRow riga in dgvDettaglio.Rows) { string parte = (string)riga.Cells["PARTE"].Value; string colore = (string)riga.Cells["COLORE"].Value; CDCDS.CDC_ARTICOLIRow arow = _DS.CDC_ARTICOLI.Where(x => x.PARTE == parte && x.COLORE == colore).FirstOrDefault(); if (arow == null) { riga.Cells[1].Style.BackColor = Color.Yellow; riga.Cells[2].Style.BackColor = Color.Yellow; } else { List <CDCDS.CDC_ARTICOLI_DIMENSIONIRow> artdimensioni = _DS.CDC_ARTICOLI_DIMENSIONI.Where(x => x.IDARTICOLO == arow.IDARTICOLO).OrderBy(x => x.IDDIMENSIONE).ToList(); List <CDCDS.CDC_ARTICOLI_SPESSORIRow> artspessori = _DS.CDC_ARTICOLI_SPESSORI.Where(x => x.IDARTICOLO == arow.IDARTICOLO).OrderBy(x => x.IDSPESSORE).ToList(); if (artspessori.Count == 0 || artdimensioni.Count == 0) { riga.Cells[1].Style.BackColor = Color.Orange; riga.Cells[2].Style.BackColor = Color.Orange; } else { riga.Cells[1].Style.BackColor = Color.White; riga.Cells[2].Style.BackColor = Color.White; } } } }
private void buSalva_Click(object sender, EventArgs e) { string tableName = "ARTICOLI"; if (_dsServizio.Tables[tableName].Rows.Count == 0) { return; } try { foreach (DataRow riga in _dsServizio.Tables[tableName].Rows) { //decimal IDARTICOLO = (decimal)riga["IDARTICOLO"]; // string RIFERIMENTO = (string)riga["PARTE"]; //PARTE = (string)riga["PARTE"]; //COLORE = (string)riga["COLORE"]; // if (!string.IsNullOrEmpty(riga["PARTE"]) if (riga["IDARTICOLO"] != DBNull.Value) { decimal IDARTICOLO = (decimal)riga["IDARTICOLO"]; // && x.RIFERIMENTO.Trim() == RIFERIMENTO CDCDS.CDC_ARTICOLIRow articolo = _DS.CDC_ARTICOLI.Where(x => x.IDARTICOLO == IDARTICOLO).FirstOrDefault(); if (articolo == null) { articolo = _DS.CDC_ARTICOLI.NewCDC_ARTICOLIRow(); articolo.PARTE = selPARTE; articolo.COLORE = selCOLORE; //articolo.PARTE = ((string)riga["PARTE"]).ToUpper().Trim(); //articolo.COLORE = ((string)riga["COLORE"]).ToUpper().Trim(); articolo.SEQUENZA = (Int32)riga["SEQUENZA"]; articolo.DESCRIZIONE = ((string)riga["DESCRIZIONE"]).ToUpper().Trim(); articolo.COLORECOMPONENTE = ((string)riga["COLORECOMPONENTE"]).ToUpper().Trim(); articolo.MISUREPERCAMPIONE = (Int32)riga["MISUREPERCAMPIONE"]; articolo.PESO = (double)riga["PESO"]; articolo.SFRIDO = (double)riga["SFRIDO"]; articolo.SUPERFICIE = (double)riga["SUPERFICIE"]; //articolo.IDDETTAGLIO = IDDETTAGLIO; //articolo.MINIMO = ConvertiInStringa(riga[""]).ToUpper().Trim(); //articolo.RIFERIMENTO = ((string)riga[2]).ToUpper().Trim(); //articolo.TAMPONE = ConvertiInStringa(riga[8]).ToUpper().Trim(); //articolo.TOLLERANZA = ConvertiInStringa(riga[5]).ToUpper().Trim(); articolo.DATARIFERIMENTO = DateTime.Now; articolo.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_ARTICOLI.AddCDC_ARTICOLIRow(articolo); } else { articolo.PARTE = ((string)riga["PARTE"]).ToUpper().Trim(); articolo.COLORE = ((string)riga["COLORE"]).ToUpper().Trim(); articolo.SEQUENZA = (Int32)riga["SEQUENZA"]; articolo.DESCRIZIONE = ((string)riga["DESCRIZIONE"]).ToUpper().Trim(); articolo.COLORECOMPONENTE = ((string)riga["COLORECOMPONENTE"]).ToUpper().Trim(); articolo.MISUREPERCAMPIONE = (Int32)riga["MISUREPERCAMPIONE"]; articolo.PESO = (double)riga["PESO"]; articolo.SFRIDO = (double)riga["SFRIDO"]; articolo.SUPERFICIE = (double)riga["SUPERFICIE"]; articolo.DATARIFERIMENTO = DateTime.Now; articolo.UTENTE = Contesto.Utente.FULLNAMEUSER; } } else { CDCDS.CDC_ARTICOLIRow articolo = _DS.CDC_ARTICOLI.NewCDC_ARTICOLIRow(); articolo.PARTE = selPARTE; articolo.COLORE = selCOLORE; articolo.SEQUENZA = (Int32)riga["SEQUENZA"]; articolo.DESCRIZIONE = ((string)riga["DESCRIZIONE"]).ToUpper().Trim(); articolo.COLORECOMPONENTE = ((string)riga["COLORECOMPONENTE"]).ToUpper().Trim(); articolo.MISUREPERCAMPIONE = (Int32)riga["MISUREPERCAMPIONE"]; articolo.PESO = (double)riga["PESO"]; articolo.SFRIDO = (double)riga["SFRIDO"]; articolo.SUPERFICIE = (double)riga["SUPERFICIE"]; articolo.DATARIFERIMENTO = DateTime.Now; articolo.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_ARTICOLI.AddCDC_ARTICOLIRow(articolo); } } //cerco i cancellati e li marco List <CDCDS.CDC_ARTICOLIRow> articoli = _DS.CDC_ARTICOLI.Where(x => x.RowState != DataRowState.Added && x.PARTE == selPARTE && x.COLORE == selCOLORE).ToList(); foreach (CDCDS.CDC_ARTICOLIRow articolo in articoli) { DataRow[] art = _dsServizio.Tables["ARTICOLI"].Select("IDARTICOLO = " + articolo.IDARTICOLO.ToString()); if (art.GetLength(0) == 0) { articolo.DATARIFERIMENTO = DateTime.Now; articolo.UTENTE = Contesto.Utente.FULLNAMEUSER; articolo.DELETED = "S"; } } CDCBLL bll = new CDCBLL(); bll.SalvaDatiArticoli(_DS); _DS.CDC_ARTICOLI.AcceptChanges(); _DS.CDC_ARTICOLI.Clear(); bll.CaricaArticoli(_DS); CaricaArticolo(selPARTE, selCOLORE); dgvDimensioni.DataSource = null; dgvDimensioni.DataMember = ""; dgvSpessori.DataSource = null; dgvSpessori.DataMember = ""; } catch (Exception ex) { MostraEccezione(ex, "Errore in crea Salva Articoli"); } finally { Cursor.Current = Cursors.Default; } foreach (DataGridViewRow riga in dgvDettaglio.Rows) { string parte = (string)riga.Cells["PARTE"].Value; string colore = (string)riga.Cells["COLORE"].Value; CDCDS.CDC_ARTICOLIRow arow = _DS.CDC_ARTICOLI.Where(x => x.PARTE == parte && x.COLORE == colore).FirstOrDefault(); if (arow == null) { riga.Cells[1].Style.BackColor = Color.Yellow; riga.Cells[2].Style.BackColor = Color.Yellow; } else { List <CDCDS.CDC_ARTICOLI_DIMENSIONIRow> artdimensioni = _DS.CDC_ARTICOLI_DIMENSIONI.Where(x => x.IDARTICOLO == arow.IDARTICOLO).OrderBy(x => x.IDDIMENSIONE).ToList(); List <CDCDS.CDC_ARTICOLI_SPESSORIRow> artspessori = _DS.CDC_ARTICOLI_SPESSORI.Where(x => x.IDARTICOLO == arow.IDARTICOLO).OrderBy(x => x.IDSPESSORE).ToList(); if (artspessori.Count == 0 || artdimensioni.Count == 0) { riga.Cells[1].Style.BackColor = Color.Orange; riga.Cells[2].Style.BackColor = Color.Orange; } else { riga.Cells[1].Style.BackColor = Color.White; riga.Cells[2].Style.BackColor = Color.White; } } } }
private void btnLeggiDati_Click(object sender, EventArgs e) { lblMessaggio.Text = string.Empty; if (ddlDataCollaudo.SelectedIndex == -1) { lblMessaggio.Text = "Selezionare una data"; return; } if (ddlBrand.SelectedIndex == -1 || ddlBrand.SelectedItem.ToString() == "") { lblMessaggio.Text = "Selezionare un brand"; return; } DataCollaudoSTR dataSelezionata = new DataCollaudoSTR(ddlBrand.SelectedItem.ToString(), ddlDataCollaudo.SelectedItem.ToString()); CDCBLL bll = new CDCBLL(); _DS = new Entities.CDCDS(); bll.LeggiCollaudoDaDataSTR(_DS, dataSelezionata); bll.CaricaBrands(_DS); bll.CaricaArticoli(_DS); bll.CaricaArticoliDimensioni(_DS); bll.CaricaArticoliSpessori(_DS); if (_DS.CDC_DETTAGLIO.Count > 0) { //List<decimal> IDDETTAGLIO = _DS.CDC_DETTAGLIO.Select(x => x.IDDETTAGLIO).Distinct().ToList(); //bll.FillCDC_CONFORMITA(_DS, IDDETTAGLIO); //bll.CDC_PDF(_DS, IDDETTAGLIO); } else { lblMessaggio.Text = "Nessuna riga trovata per questa data"; } CreaDsPerDettaglio(); dgvDettaglio.ReadOnly = true; dgvDettaglio.AllowUserToDeleteRows = false; dgvDettaglio.AllowUserToAddRows = false; dgvDettaglio.AutoGenerateColumns = true; dgvDettaglio.DataSource = _dsServizio; dgvDettaglio.DataMember = tableName; dgvDettaglio.Columns["ACCESSORISTA"].Visible = false; foreach (DataGridViewRow riga in dgvDettaglio.Rows) { string parte = (string)riga.Cells["PARTE"].Value; string colore = (string)riga.Cells["COLORE"].Value; CDCDS.CDC_ARTICOLIRow arow = _DS.CDC_ARTICOLI.Where(x => x.PARTE == parte && x.COLORE == colore).FirstOrDefault(); if (arow == null) { riga.Cells[1].Style.BackColor = Color.Yellow; riga.Cells[2].Style.BackColor = Color.Yellow; } else { List <CDCDS.CDC_ARTICOLI_DIMENSIONIRow> artdimensioni = _DS.CDC_ARTICOLI_DIMENSIONI.Where(x => x.IDARTICOLO == arow.IDARTICOLO).OrderBy(x => x.IDDIMENSIONE).ToList(); List <CDCDS.CDC_ARTICOLI_SPESSORIRow> artspessori = _DS.CDC_ARTICOLI_SPESSORI.Where(x => x.IDARTICOLO == arow.IDARTICOLO).OrderBy(x => x.IDSPESSORE).ToList(); if (artspessori.Count == 0 || artdimensioni.Count == 0) { riga.Cells[1].Style.BackColor = Color.Orange; riga.Cells[2].Style.BackColor = Color.Orange; } else { riga.Cells[1].Style.BackColor = Color.White; riga.Cells[2].Style.BackColor = Color.White; } } } dgvArticoli.DataSource = null; dgvArticoli.DataMember = ""; dgvDimensioni.DataSource = null; dgvDimensioni.DataMember = ""; dgvSpessori.DataSource = null; dgvSpessori.DataMember = ""; }
private void btnLeggiDati_Click(object sender, EventArgs e) { btnCreaPDF.Enabled = false; lblMessaggio.Text = string.Empty; if (ddlDataCollaudo.SelectedIndex == -1) { lblMessaggio.Text = "Selezionare una data"; return; } if (ddlBrand.SelectedIndex == -1 || ddlBrand.SelectedItem.ToString() == "") { lblMessaggio.Text = "Selezionare un brand"; return; } // DataCollaudo dataSelezionata = (DataCollaudo)ddlDataCollaudo.SelectedItem; DataCollaudoSTR dataSelezionata = new DataCollaudoSTR(ddlBrand.SelectedItem.ToString(), ddlDataCollaudo.SelectedItem.ToString()); CDCBLL bll = new CDCBLL(); _DS = new Entities.CDCDS(); bll.LeggiCollaudoDaDataSTR(_DS, dataSelezionata); if (_DS.CDC_DETTAGLIO.Count > 0) { btnCreaPDF.Enabled = true; List <decimal> IDDETTAGLIO = _DS.CDC_DETTAGLIO.Select(x => x.IDDETTAGLIO).Distinct().ToList(); bll.FillCDC_DIMEMSIONI(_DS, IDDETTAGLIO); bll.CDC_PDF(_DS, IDDETTAGLIO); } else { lblMessaggio.Text = "Nessuna riga trovata per questa data"; } dgvDettaglio.AutoGenerateColumns = true; dgvDettaglio.DataSource = _DS; dgvDettaglio.DataMember = _DS.CDC_DETTAGLIO.TableName; dgvDettaglio.Columns[0].Visible = false; dgvDettaglio.Columns[2].Visible = false; dgvDettaglio.Columns[3].Visible = false; //dgvDettaglio.Columns[8].Visible = false; dgvDettaglio.Columns[9].Visible = false; dgvDettaglio.Columns[10].Visible = false; //dgvDettaglio.Columns[12].Visible = false; dgvDettaglio.Columns[13].Visible = false; dgvDettaglio.Columns[14].Visible = false; dgvDettaglio.Columns[15].Visible = false; dgvDettaglio.Columns[16].Visible = false; dgvDettaglio.Columns[17].Visible = false; dgvDettaglio.Columns[18].Visible = false; dgvDettaglio.Columns[19].Visible = false; dgvDettaglio.Columns[20].Visible = false; dgvDettaglio.Columns[22].Visible = false; dgvDettaglio.Columns[22].Visible = false; dgvDettaglio.Columns[23].Visible = false; dgvDettaglio.Columns[24].Visible = false; dgvDettaglio.Columns[25].Visible = false; dgvDettaglio.Columns[26].Visible = false; dgvDettaglio.Columns[27].Visible = false; dgvDettaglio.Columns[28].Visible = false; dgvDettaglio.Columns[29].Visible = false; foreach (DataGridViewColumn column in dgvDettaglio.Columns) { column.SortMode = DataGridViewColumnSortMode.NotSortable; } bll.CaricaArticoli(_DS); bll.CaricaArticoliDimensioni(_DS); foreach (DataGridViewRow riga in dgvDettaglio.Rows) { string ColoreRiga = "BIANCO"; string parte = (string)riga.Cells["PARTE"].Value; string colore = (string)riga.Cells["COLORE"].Value; CDCDS.CDC_ARTICOLIRow arow = _DS.CDC_ARTICOLI.Where(x => x.PARTE == parte && x.COLORE == colore).FirstOrDefault(); if (arow == null) { ColoreRiga = "GIALLO"; } else { //cerco decimal IDARTICOLO = (decimal)arow["IDARTICOLO"]; CDCDS.CDC_ARTICOLI_DIMENSIONIRow drow = _DS.CDC_ARTICOLI_DIMENSIONI.Where(x => x.IDARTICOLO == IDARTICOLO).FirstOrDefault(); if (drow == null) { ColoreRiga = "GIALLO"; } } if (ColoreRiga == "GIALLO") { riga.Cells[1].Style.BackColor = Color.Yellow; riga.Cells[2].Style.BackColor = Color.Yellow; } else { riga.Cells[1].Style.BackColor = Color.White; riga.Cells[2].Style.BackColor = Color.White; } } }