private void btnEsporta_Click(object sender, EventArgs e) { try { List <MPIntranet.Business.Task> tasks = MPIntranet.Business.Task.EstraiListaTask(); List <ExpDistintaBusinessCentral> distinteExport = new List <ExpDistintaBusinessCentral>(); List <ExpCicloBusinessCentral> cicliExport = new List <ExpCicloBusinessCentral>(); string errori; if (_distinta == null) { MessageBox.Show("Nessuna distinta selezionata", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (_distinta.Esporta(distinteExport, cicliExport, out errori)) { foreach (ExpCicloBusinessCentral ciclo in cicliExport) { ciclo.RinumeraCodiceOperazione(); foreach (ExpFaseCicloBusinessCentral fc in ciclo.Fasi) { MPIntranet.Business.Task task = tasks.Where(x => x.Codice == fc.Task).FirstOrDefault(); if (task != null && string.IsNullOrEmpty(fc.Descrizione)) { fc.Descrizione = task.Descrizione; } } } List <ExpDistintaBusinessCentral> dacancellare = (from ds in distinteExport where ds.Componenti.Count == 0 select ds).ToList(); dacancellare.ForEach(x => distinteExport.Remove(x)); string etichettaFinestra = string.Format("Esportazione articolo {0} distinta {1}", _articolo.ToString(), _distinta.ToString()); EsportaDiBaFrm form = new EsportaDiBaFrm(distinteExport, cicliExport, etichettaFinestra); form.MdiParent = this.MdiParent; form.Show(); } else { string messagio = "VERIFICARE I SEGUENTI ERRORI" + Environment.NewLine + errori; MessageBox.Show(messagio, "ERRORI", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MostraEccezione(ex, "Errore in esporta distinta"); } }
private void correggiDescrizioniFasiCiclo() { List <MPIntranet.Business.Task> tasks = MPIntranet.Business.Task.EstraiListaTask(); foreach (Componente c in _distinta.Componenti) { foreach (FaseCiclo f in c.FasiCiclo) { MPIntranet.Business.Task task = tasks.Where(x => x.Codice == f.Task).FirstOrDefault(); if (task != null && string.IsNullOrEmpty(f.Descrizione)) { f.Descrizione = task.Descrizione; } } } }