using System; using System.Collections.Generic; using System.Text; using PDFGenerator.BusinessLayer; using PDFGenerator.BusinessLayer.DataSection; using PDFGenerator.Presentation.Section.Tables; using ceTe.DynamicPDF; namespace PDFGenerator.Presentation.Section { class S93: ISezione { string Titolo = string.Empty; private string _testoIntroduttivo; public S93() { // // TODO: Add constructor logic here // } public string TestoIntroduttivo { get { return _testoIntroduttivo; } set { _testoIntroduttivo = value; } } public void writeSezione(DataThread dataThread) { DocumentPDF document = dataThread.DocumentPDF; DatiTabella datitab = new DatiTabella(); DataSetS93 set = (DataSetS93)dataThread.Data.DatiSezione; datitab.table = set.Tables["Dati"]; //calcola se entra nella pagina altrimenti aggiunge una nuova pagina. if (document.checkMargin(datitab.GetRowDim() * (datitab.getNumRow() + 3))) document.addPage(); document.setSezTitolo(Titolo); document.setSezHeader(_testoIntroduttivo); document.setHeaderSpace(30); /// linea sopra risorse finanziare. ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage(); page.Elements.Add(new ceTe.DynamicPDF.PageElements.Line(document.getMargineLeft() - 5,document.getLastPos() - 37 ,document.getMargineLeft() + 285,document.getLastPos() -37 ,2F,new RgbColor(232, 236, 237))); Tabella tabellaDati = new Tabella(document.getMargineLeft(), document.getLastPos()); tabellaDati.Header = false; tabellaDati.Datasource = datitab.table; tabellaDati.DimensioneLinea = 2; tabellaDati.Colonne.Add(new Colonna("Descrizione", "", 130, TipoAllineamento.SINISTRA, false, 8, false)); tabellaDati.Colonne.Add(new Colonna("Controvalore", "", 150, TipoAllineamento.DESTRA, false, 8, false)); datitab.setCellSpace(0); tabellaDati.Draw(datitab, document); // Totale datitab = new DatiTabella(); datitab.table = set.Tables["Totali"]; Tabella tabellaTotale = new Tabella(document.getMargineLeft(), document.getLastPos() + tabellaDati.AltezzaTabella); tabellaTotale.SaltoPagina = false; tabellaTotale.Header = false; tabellaTotale.Colonne.Add(new Colonna("Descrizione", "", 130, TipoAllineamento.SINISTRA, true, 9, true)); tabellaTotale.Colonne.Add(new Colonna("Controvalore", "", 150, TipoAllineamento.DESTRA, true, 9, true)); tabellaTotale.Draw(datitab, document); // setto la posizione aggiornata document.setLastPos(tabellaDati.AltezzaTabella); } public void setTitolo(string label) { Titolo = label; } } }