public AnteprimaStampa(IList<MillesimoDTO> riepilogoMillesimi, RiepilogoMillesimiReportParameters reportParameters) { InitializeComponent(); inizializza(); _riepilogoMillesimi = riepilogoMillesimi; _reportParameters = reportParameters; }
private void btnStampaClick(object sender, EventArgs e) { // ==================================================================== // Recupero i parametri di selezione // ==================================================================== var contiSelezionati = new List<int>(lista.DisplayLayout.Bands[0].Columns.Count - 4); contiSelezionati.AddRange(from UltraGridColumn column in lista.DisplayLayout.Bands[0].Columns where column.Key.StartsWith("Conto_") && !column.Hidden select int.Parse(column.Key.Split('_')[1])); IList<DataRowView> righeSelezionate = DataGridHelper.GetRigheSelezionate<DataRowView>(lista, false); var unitaSelezionate = new List<int>(righeSelezionate.Count); unitaSelezionate.AddRange(righeSelezionate.Select(row => (int) row["IdUnitaImmobiliare"])); var righeCondominio = _condominio.IndirizzoCompleto.Split('&'); var righeDaPubblicare = new string[4]; for (var i = 0; i < 4; i++) { if (righeCondominio.Length > i) { if (!string.IsNullOrEmpty(righeDaPubblicare[0])) righeDaPubblicare[0] += " - "; righeDaPubblicare[0] += righeCondominio[i]; } righeDaPubblicare[i] = string.Empty; } // ==================================================================== // Recupero l'intestazione dello studio // ==================================================================== var azienda = _aziendaService.GetAzienda(); var intestazioneStudio = azienda.Descrizione; var viaStudio = string.Empty; var capStudio = string.Empty; var localitaStudio = string.Empty; if (azienda.IndirizzoSede != null) { viaStudio = azienda.IndirizzoSede.Indirizzo + " n. " + azienda.IndirizzoSede.Civico; capStudio = azienda.IndirizzoSede.Cap; localitaStudio = azienda.IndirizzoSede.DescrizioneComune + " " + azienda.IndirizzoSede.CodiceProvincia; // Collasso diverse informazioni nel campo viaStudio viaStudio += " - " + capStudio + " " + localitaStudio; } var reportParameters = new RiepilogoMillesimiReportParameters ( righeDaPubblicare, _condominio.Descrizione, _condominio.Codice, _esercizio.DisplayName, string.Empty, true, string.Empty, intestazioneStudio, viaStudio, capStudio, localitaStudio, saltoPagina.Checked ); StabileDTO stabile = null; if (stabili.SelectedItem != null) stabile = (StabileDTO)stabili.SelectedItem.ListObject; GruppoStabileDTO gruppo = null; if (gruppi.SelectedItem != null) gruppo = (GruppoStabileDTO)gruppi.SelectedItem.ListObject; var form = new ExecuteLoadDataListAsync<MillesimoDTO>("E' in corso la lettura dei millesimi ....." + Environment.NewLine + "Si prega di attendere."); Func<List<MillesimoDTO>> loadDati = () => _pianoContiService.GetRiepilogoMillesimiByEsercizio(contiSelezionati, unitaSelezionate, stabile, gruppo, _esercizio); form.LoadData(loadDati); form.ShowDialog(); var anteprima = new AnteprimaStampa(form.DataSourceObject, reportParameters); form.Dispose(); anteprima.ShowDialog(); anteprima.Dispose(); }