private void btnCreaPDF_Click(object sender, EventArgs e) { if (_dsServizio.Tables[tableName].Rows.Count == 0) { return; } lblMessaggio.Text = string.Empty; decimal IDDETTAGLIO = -1; foreach (DataRow riga in _dsServizio.Tables[tableName].Rows) { IDDETTAGLIO = (decimal)riga[1]; string RIFERIMENTO = ConvertiInStringa(riga[2]); RIFERIMENTO = RIFERIMENTO.ToUpper().Trim(); string PARTE = (string)riga[11]; string COLORE = (string)riga[12]; if (!string.IsNullOrEmpty(RIFERIMENTO)) { CDCDS.CDC_DIMEMSIONIRow dimensione = _DS.CDC_DIMEMSIONI.Where(x => x.IDDETTAGLIO == IDDETTAGLIO && x.RIFERIMENTO.Trim() == RIFERIMENTO).FirstOrDefault(); if (dimensione == null) { dimensione = _DS.CDC_DIMEMSIONI.NewCDC_DIMEMSIONIRow(); dimensione.CONFORME = ConvertiBoolInStringa(riga[10]); dimensione.CONTAMPONE = ConvertiBoolInStringa(riga[9]); dimensione.DATAINSERIMENTO = DateTime.Now; dimensione.GRANDEZZA = ((string)riga[3]).ToUpper().Trim(); dimensione.IDDETTAGLIO = IDDETTAGLIO; dimensione.MASSIMO = ConvertiInStringa(riga[7]).ToUpper().Trim(); dimensione.MINIMO = ConvertiInStringa(riga[6]).ToUpper().Trim(); dimensione.RICHIESTO = ((string)riga[4]).ToUpper().Trim(); dimensione.RIFERIMENTO = ((string)riga[2]).ToUpper().Trim(); dimensione.TAMPONE = ConvertiInStringa(riga[8]).ToUpper().Trim(); dimensione.TOLLERANZA = ConvertiInStringa(riga[5]).ToUpper().Trim(); dimensione.UTENTE = Contesto.Utente.FULLNAMEUSER; _DS.CDC_DIMEMSIONI.AddCDC_DIMEMSIONIRow(dimensione); } else { dimensione.CONFORME = ConvertiBoolInStringa(riga[10]); dimensione.CONTAMPONE = ConvertiBoolInStringa(riga[9]); dimensione.DATAINSERIMENTO = DateTime.Now; dimensione.GRANDEZZA = ((string)riga[3]).ToUpper().Trim(); dimensione.IDDETTAGLIO = IDDETTAGLIO; dimensione.MASSIMO = ConvertiInStringa(riga[7]).ToUpper().Trim(); dimensione.MINIMO = ConvertiInStringa(riga[6]).ToUpper().Trim(); dimensione.RICHIESTO = ((string)riga[4]).ToUpper().Trim(); dimensione.RIFERIMENTO = ((string)riga[2]).ToUpper().Trim(); dimensione.TAMPONE = ConvertiInStringa(riga[8]).ToUpper().Trim(); dimensione.TOLLERANZA = ConvertiInStringa(riga[5]).ToUpper().Trim(); dimensione.UTENTE = Contesto.Utente.FULLNAMEUSER; } CDCDS.CDC_DIMEMSIONI_MISURERow misura = _DS.CDC_DIMEMSIONI_MISURE.Where(x => x.PARTE == PARTE && x.RIFERIMENTO.Trim() == RIFERIMENTO).FirstOrDefault(); if (misura == null) { misura = _DS.CDC_DIMEMSIONI_MISURE.NewCDC_DIMEMSIONI_MISURERow(); misura.PARTE = PARTE; misura.CONTAMPONE = ConvertiBoolInStringa(riga[9]); misura.GRANDEZZA = ((string)riga[3]).ToUpper().Trim(); misura.MASSIMO = ConvertiInStringa(riga[7]).ToUpper().Trim(); misura.MINIMO = ConvertiInStringa(riga[6]).ToUpper().Trim(); misura.RICHIESTO = ((string)riga[4]).ToUpper().Trim(); misura.RIFERIMENTO = ((string)riga[2]).ToUpper().Trim(); misura.TAMPONE = ConvertiInStringa(riga[8]).ToUpper().Trim(); misura.TOLLERANZA = ConvertiInStringa(riga[5]).ToUpper().Trim(); _DS.CDC_DIMEMSIONI_MISURE.AddCDC_DIMEMSIONI_MISURERow(misura); } else { misura.CONTAMPONE = ConvertiBoolInStringa(riga[9]); misura.GRANDEZZA = ((string)riga[3]).ToUpper().Trim(); misura.MASSIMO = ConvertiInStringa(riga[7]).ToUpper().Trim(); misura.MINIMO = ConvertiInStringa(riga[6]).ToUpper().Trim(); misura.RICHIESTO = ((string)riga[4]).ToUpper().Trim(); misura.RIFERIMENTO = ((string)riga[2]).ToUpper().Trim(); misura.TAMPONE = ConvertiInStringa(riga[8]).ToUpper().Trim(); misura.TOLLERANZA = ConvertiInStringa(riga[5]).ToUpper().Trim(); } } } CDCBLL bll = new CDCBLL(); bll.SalvaDatiDimensioni(_DS); _DS.CDC_DIMEMSIONI.AcceptChanges(); _DS.CDC_DIMEMSIONI_MISURE.AcceptChanges(); Bitmap firma = Properties.Resources.firma_vittoria; if (Contesto.Utente.IDUSER == "0000000122") { firma = Properties.Resources.firma_celeste; } ImageConverter converter = new ImageConverter(); byte[] iFirma = (byte[])converter.ConvertTo(firma, typeof(byte[])); Bitmap loghi = Properties.Resources.loghi; byte[] iLoghi = (byte[])converter.ConvertTo(loghi, typeof(byte[])); bll.CreaPDFDimensionale(IDDETTAGLIO, _DS, Contesto.Utente.FULLNAMEUSER, Contesto.PathCollaudo, iFirma, iLoghi); if (chkCopiaSchedaTecnica.Checked) { DataRow riga = _dsServizio.Tables[tableName].Rows[0]; string PARTE = (string)riga[11]; string COLORE = (string)riga[12]; string filename = string.Format(@"{0}\{1}-{2}.pdf", Contesto.PathSchedeTecniche, PARTE, COLORE); if (!File.Exists(filename)) { string messaggio = string.Format("Impossibile trovare il file per PARTE:{0} e COLORE:{1}. File: {2}", PARTE, COLORE, filename); MessageBox.Show(messaggio); return; } CDCDS.CDC_DETTAGLIORow dettaglio = _DS.CDC_DETTAGLIO.Where(x => x.IDDETTAGLIO == IDDETTAGLIO).FirstOrDefault(); DateTime dt = DateTime.ParseExact(dettaglio.DATACOLLAUDO, "dd/MM/yyyy", CultureInfo.InvariantCulture); string cartellaDestinazione = CDCBLL.CreaPathCartella(dt, Contesto.PathCollaudo, dettaglio.ACCESSORISTA, dettaglio.PREFISSO, dettaglio.PARTE, dettaglio.COLORE, dettaglio.COMMESSAORDINE); string destinazione = string.Format(@"{0}\{1}-{2}.pdf", cartellaDestinazione, PARTE, COLORE); if (File.Exists(destinazione)) { File.Delete(destinazione); } File.Copy(filename, destinazione, true); } }
private void dgvDettaglio_CellClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex == -1) { return; } DataRow r = _DS.CDC_DETTAGLIO.Rows[e.RowIndex]; decimal IDDETTAGLIO = (decimal)r[0]; decimal IDPRENOTAZIONE = (decimal)r[1]; string PARTE = (string)r[7]; string COLORE = (string)r[8]; _dsServizio = new DataSet(); DataTable dtDimensioni = _dsServizio.Tables.Add(); dtDimensioni.TableName = tableName; dtDimensioni.Columns.Add("IDPRENOTAZIONE", Type.GetType("System.Decimal")); dtDimensioni.Columns.Add("IDDETTAGLIO", Type.GetType("System.Decimal")); dtDimensioni.Columns.Add("RIFERIMENTO", Type.GetType("System.String")); dtDimensioni.Columns.Add("GRANDEZZA", Type.GetType("System.String")); dtDimensioni.Columns.Add("RICHIESTO", Type.GetType("System.String")); dtDimensioni.Columns.Add("TOLLERANZA", Type.GetType("System.String")); dtDimensioni.Columns.Add("MINIMO", Type.GetType("System.String")); dtDimensioni.Columns.Add("MASSIMO", Type.GetType("System.String")); //7 dtDimensioni.Columns.Add("TAMPONE", Type.GetType("System.String")); dtDimensioni.Columns.Add("CONTAMPONE", Type.GetType("System.Boolean")); dtDimensioni.Columns.Add("CONFORME", Type.GetType("System.Boolean")); dtDimensioni.Columns.Add("PARTE", Type.GetType("System.String")); dtDimensioni.Columns.Add("COLORE", Type.GetType("System.String")); List <CDCDS.CDC_DIMEMSIONIRow> dimensioni = _DS.CDC_DIMEMSIONI.Where(x => x.IDDETTAGLIO == IDDETTAGLIO).ToList(); List <CDCDS.CDC_DIMEMSIONI_MISURERow> misure = _DS.CDC_DIMEMSIONI_MISURE.Where(x => x.PARTE == PARTE).ToList(); for (int i = 0; i < 20; i++) { DataRow riga = dtDimensioni.NewRow(); riga[0] = IDPRENOTAZIONE; riga[1] = IDDETTAGLIO; riga[11] = PARTE; riga[12] = COLORE; if (dimensioni.Count > i) { CDCDS.CDC_DIMEMSIONIRow dimensione = dimensioni[i]; riga[2] = dimensione.RIFERIMENTO; riga[3] = dimensione.GRANDEZZA; riga[4] = dimensione.RICHIESTO; if (dimensione.IsTOLLERANZANull()) { riga[5] = string.Empty; } else { riga[5] = dimensione.TOLLERANZA; } if (dimensione.IsMINIMONull()) { riga[6] = string.Empty; } else { riga[6] = dimensione.MINIMO; } if (dimensione.IsMASSIMONull()) { riga[7] = string.Empty; } else { riga[7] = dimensione.MASSIMO; } if (dimensione.IsTAMPONENull()) { riga[8] = string.Empty; } else { riga[8] = dimensione.TAMPONE; } riga[9] = dimensione.CONTAMPONE == "S" ? true : false; riga[10] = dimensione.CONFORME == "S" ? true : false; } else { if (misure.Count > i) { CDCDS.CDC_DIMEMSIONI_MISURERow misura = misure[i]; riga[2] = misura.RIFERIMENTO; riga[3] = misura.GRANDEZZA; riga[4] = misura.RICHIESTO; if (misura.IsTOLLERANZANull()) { riga[5] = string.Empty; } else { riga[5] = misura.TOLLERANZA; } if (misura.IsMINIMONull()) { riga[6] = string.Empty; } else { riga[6] = misura.MINIMO; } if (misura.IsMASSIMONull()) { riga[7] = string.Empty; } else { riga[7] = misura.MASSIMO; } if (misura.IsTAMPONENull()) { riga[8] = string.Empty; } else { riga[8] = misura.TAMPONE; } riga[9] = misura.CONTAMPONE == "S" ? true : false; } } dtDimensioni.Rows.Add(riga); } dgvMisure.AutoGenerateColumns = true; dgvMisure.DataSource = _dsServizio; dgvMisure.DataMember = tableName; dgvMisure.Columns[0].Visible = false; dgvMisure.Columns[1].Visible = false; dgvMisure.Columns[11].Visible = false; dgvMisure.Columns[12].Visible = false; dgvMisure.Columns[3].Width = 220; dgvMisure.Columns[8].Width = 320; ((DataGridViewTextBoxColumn)dgvMisure.Columns[2]).MaxInputLength = 2; ((DataGridViewTextBoxColumn)dgvMisure.Columns[3]).MaxInputLength = 30; ((DataGridViewTextBoxColumn)dgvMisure.Columns[4]).MaxInputLength = 5; ((DataGridViewTextBoxColumn)dgvMisure.Columns[5]).MaxInputLength = 5; ((DataGridViewTextBoxColumn)dgvMisure.Columns[6]).MaxInputLength = 5; ((DataGridViewTextBoxColumn)dgvMisure.Columns[7]).MaxInputLength = 5; ((DataGridViewTextBoxColumn)dgvMisure.Columns[8]).MaxInputLength = 50; }