private void CaricaColore(CDCDS ds, decimal idDettaglio, string colore, DateTime dataInserimento, DateTime dataCalibrazione, string richiesto, string tolleranza, string rilevato, string conforme, string nota)
 {
     CDCDS.CDC_COLORERow coloreRow = _DS.CDC_COLORE.Where(x => x.IDDETTAGLIO == idDettaglio && x.COLORE == colore).FirstOrDefault();
     if (coloreRow == null)
     {
         coloreRow                  = _DS.CDC_COLORE.NewCDC_COLORERow();
         coloreRow.IDDETTAGLIO      = idDettaglio;
         coloreRow.UTENTE           = Contesto.Utente.FULLNAMEUSER;
         coloreRow.DATAINSERIMENTO  = dataInserimento;
         coloreRow.DATACALIBRAZIONE = dataCalibrazione;
         coloreRow.STRUMENTO        = Contesto.StrumentoColore;
         coloreRow.COLORE           = colore;
         coloreRow.RICHIESTO        = richiesto;
         coloreRow.TOLLERANZA       = tolleranza;
         coloreRow.RILEVATO         = rilevato;
         coloreRow.CONFORME         = conforme;
         coloreRow.NOTA             = nota;
         _DS.CDC_COLORE.AddCDC_COLORERow(coloreRow);
     }
     else
     {
         coloreRow.UTENTE           = Contesto.Utente.FULLNAMEUSER;
         coloreRow.DATAINSERIMENTO  = dataInserimento;
         coloreRow.DATACALIBRAZIONE = dataCalibrazione;
         coloreRow.STRUMENTO        = Contesto.StrumentoColore;
         coloreRow.RICHIESTO        = richiesto;
         coloreRow.TOLLERANZA       = tolleranza;
         coloreRow.RILEVATO         = rilevato;
         coloreRow.CONFORME         = conforme;
         coloreRow.NOTA             = nota;
     }
 }
        private void CreaDsPerColorimetrico()
        {
            _dsServizio = new DataSet();
            DataTable dtCartelle = _dsServizio.Tables.Add();

            dtCartelle.TableName = tableName;
            dtCartelle.Columns.Add("IDDETTAGLIO", Type.GetType("System.Decimal"));
            dtCartelle.Columns.Add("IDPRENOTAZIONE", Type.GetType("System.Decimal")).ReadOnly = true;
            dtCartelle.Columns.Add("ACCESSORISTA", Type.GetType("System.String")).ReadOnly    = true;

            dtCartelle.Columns.Add("DATACOLLAUDO", Type.GetType("System.DateTime")).ReadOnly = true;
            dtCartelle.Columns.Add("PREFISSO", Type.GetType("System.String")).ReadOnly       = true;
            dtCartelle.Columns.Add("PARTE", Type.GetType("System.String")).ReadOnly          = true;
            dtCartelle.Columns.Add("COLORE", Type.GetType("System.String")).ReadOnly         = true;
            dtCartelle.Columns.Add("COMMESSA", Type.GetType("System.String")).ReadOnly       = true;
            dtCartelle.Columns.Add("QUANTITA", Type.GetType("System.String")).ReadOnly       = true;
            dtCartelle.Columns.Add("DATAPRODUZIONE", Type.GetType("System.DateTime"));

            //10
            dtCartelle.Columns.Add("DATACALIBRAZIONE", Type.GetType("System.DateTime"));

            dtCartelle.Columns.Add("RICHIESTOL", Type.GetType("System.String"));
            dtCartelle.Columns.Add("TOLLERANZAL", Type.GetType("System.String"));
            dtCartelle.Columns.Add("RILEVATOL", Type.GetType("System.String"));
            dtCartelle.Columns.Add("CONFORMEL", Type.GetType("System.Boolean"));

            dtCartelle.Columns.Add("RICHIESTOA", Type.GetType("System.String"));
            dtCartelle.Columns.Add("TOLLERANZAA", Type.GetType("System.String"));
            dtCartelle.Columns.Add("RILEVATOA", Type.GetType("System.String"));
            dtCartelle.Columns.Add("CONFORMEA", Type.GetType("System.Boolean"));

            dtCartelle.Columns.Add("RICHIESTOB", Type.GetType("System.String"));
            dtCartelle.Columns.Add("TOLLERANZAB", Type.GetType("System.String"));
            dtCartelle.Columns.Add("RILEVATOB", Type.GetType("System.String"));
            dtCartelle.Columns.Add("CONFORMEB", Type.GetType("System.Boolean"));
            dtCartelle.Columns.Add("NOTA", Type.GetType("System.String"));

            foreach (CDCDS.CDC_DETTAGLIORow dettaglio in _DS.CDC_DETTAGLIO)
            {
                DataRow riga = dtCartelle.NewRow();

                riga[0] = dettaglio.IDDETTAGLIO;
                riga[1] = dettaglio.IDPRENOTAZIONE;
                riga[2] = dettaglio.ACCESSORISTA;
                riga[3] = dettaglio.DATACOLLAUDO;
                riga[4] = dettaglio.PREFISSO;
                riga[5] = dettaglio.PARTE;
                riga[6] = dettaglio.COLORE;
                riga[7] = dettaglio.COMMESSAORDINE;
                riga[8] = dettaglio.QUANTITA;

                CDCDS.CDC_COLORERow coloreL = _DS.CDC_COLORE.Where(x => x.IDDETTAGLIO == dettaglio.IDDETTAGLIO && x.COLORE == CDCTipoColore.L).FirstOrDefault();
                if (coloreL != null)
                {
                    riga[9]  = coloreL.DATAINSERIMENTO;
                    riga[10] = coloreL.DATACALIBRAZIONE;
                    riga[11] = coloreL.RICHIESTO;
                    riga[12] = coloreL.IsTOLLERANZANull()?string.Empty:coloreL.TOLLERANZA;
                    riga[13] = coloreL.IsRILEVATONull() ? string.Empty : coloreL.RILEVATO;
                    riga[14] = coloreL.CONFORME == "S" ? true : false;
                    riga[23] = coloreL.IsNOTANull()?string.Empty:coloreL.NOTA;
                }
                else
                {
                    riga[9]  = DateTime.Today;
                    riga[10] = DateTime.Today;
                    riga[11] = CalcolaValoreRichiesto(dettaglio.COLORE, CDCTipoColore.L);
                    riga[12] = CalcolaValoreTolleranza(dettaglio.COLORE, CDCTipoColore.L);
                    riga[13] = CalcolaValoreRilevato(dettaglio.COLORE, CDCTipoColore.L);
                    riga[14] = true;
                    riga[23] = string.Empty;
                }

                CDCDS.CDC_COLORERow colorea = _DS.CDC_COLORE.Where(x => x.IDDETTAGLIO == dettaglio.IDDETTAGLIO && x.COLORE == CDCTipoColore.a).FirstOrDefault();
                if (colorea != null)
                {
                    riga[15] = colorea.RICHIESTO;
                    riga[16] = colorea.IsTOLLERANZANull() ? string.Empty : colorea.TOLLERANZA;
                    riga[17] = colorea.IsRILEVATONull() ? string.Empty : colorea.RILEVATO;
                    riga[18] = colorea.CONFORME == "S" ? true : false;
                }
                else
                {
                    riga[15] = CalcolaValoreRichiesto(dettaglio.COLORE, CDCTipoColore.a);
                    riga[16] = CalcolaValoreTolleranza(dettaglio.COLORE, CDCTipoColore.a);
                    riga[17] = CalcolaValoreRilevato(dettaglio.COLORE, CDCTipoColore.a);
                    riga[18] = true;
                }

                CDCDS.CDC_COLORERow coloreb = _DS.CDC_COLORE.Where(x => x.IDDETTAGLIO == dettaglio.IDDETTAGLIO && x.COLORE == CDCTipoColore.b).FirstOrDefault();
                if (coloreb != null)
                {
                    riga[19] = coloreb.RICHIESTO;
                    riga[20] = coloreb.IsTOLLERANZANull() ? string.Empty : coloreb.TOLLERANZA;
                    riga[21] = coloreb.IsRILEVATONull() ? string.Empty : coloreb.RILEVATO;
                    riga[22] = coloreb.CONFORME == "S" ? true : false;
                }
                else
                {
                    riga[19] = CalcolaValoreRichiesto(dettaglio.COLORE, CDCTipoColore.b);
                    riga[20] = CalcolaValoreTolleranza(dettaglio.COLORE, CDCTipoColore.b);
                    riga[21] = CalcolaValoreRilevato(dettaglio.COLORE, CDCTipoColore.b);
                    riga[22] = true;
                }
                dtCartelle.Rows.Add(riga);
            }
        }