public void appendTable(String target, DataTable dt, bool newPage) { //Appende la tabella individuata dal target al file PDF. //La tabella sarà formattata usando la specifica contenuta nel file XML e //popolata con i dati contenuti nel DataTable. //La tabella viene stampata in una nuova pagina se newPage è true try { if (dt == null) { return; } if (docPDF == null) { throw new ReportException(ErrorCode.NullPDFFile, "Impossibile aggiungere informazioni sul file PDF. Il file non esiste"); } if (!docPDF.IsOpen()) { docPDF.Open(); } docPDF = StampaPDF.appendData(dt, docPDF, docTemplate, target, newPage); } catch (ReportException re) { throw re; } catch (Exception e) { throw new ReportException(ErrorCode.BadPDFFile, "Impossibile aggiungere informazioni sul file PDF. " + e.Message); } }
public Report(System.IO.FileStream fileXML, string path, string titolo, string overrideFooter) { try { //Esegue il parsing del file XML e riempie un apposito ValueObject docTemplate = StampaXML.CreateDocTemplate(fileXML, path); if (!string.IsNullOrEmpty(titolo)) { docTemplate.page.headerPage.text = titolo; } } catch (ReportException re) { //Si è verificato un errore nel parsing del file XML //Il dettaglio è contenuto nel messaggio che viene propagato. throw re; } catch (Exception e) { //Si è verificato un errore nel parsing del file XML //Il dettaglio è contenuto nel messaggio che viene propagato. throw new ReportException(ErrorCode.XmlFileNotFound, "Errore durante l'esame del file XML: " + e.Message); } try { docPDF = StampaPDF.createDocPDF(docTemplate, overrideFooter); } catch (ReportException re) { //Si è verificato un errore nella creazione del file PDF //Il dettaglio è contenuto nel messaggio che viene propagato. throw re; } catch (Exception e) { //Si è verificato un errore nella creazione del file PDF //Il dettaglio è contenuto nel messaggio che viene propagato. throw new ReportException(ErrorCode.BadPDFFile, "Errore durante la creazione del file PDF: " + e.Message); } }
public void appendParagraph(String target, Hashtable parameters, bool newPage) { //Appende il paragrafo individuato dal target al file PDF. //Il paragrafo viene stampato in una nuova pagina se newPage è true. //Il paragrafo sarà formattato usando la specifica contenuta nel file XML; //i parametri indicati saranno sostituiti con il contenuto dell'array parameters. try { if (docPDF == null) { throw new ReportException(ErrorCode.NullPDFFile, "Impossibile aggiungere informazioni sul file PDF. Il file non esiste"); } if (!docPDF.IsOpen()) { docPDF.Open(); } docPDF = StampaPDF.appendData(parameters, docPDF, docTemplate, target, newPage); } catch (ReportException re) { throw re; } catch (Exception e) { throw new ReportException(ErrorCode.BadPDFFile, "Impossibile aggiungere informazioni sul file PDF. " + e.Message); } }
public void printData(DataTable dt) { //Stampa il template standard (target={null, "default"}) //Esso è costituito da una sola tabella e nessun paragrafo parametrizzato. try { if (docPDF == null) { throw new ReportException(ErrorCode.NullPDFFile, "Impossibile aggiungere informazioni sul file PDF. Il file non esiste"); } if (!docPDF.IsOpen()) { docPDF.Open(); } docPDF = StampaPDF.printDataPage(docPDF, docTemplate, dt); } catch (ReportException re) { throw re; } catch (Exception e) { throw new ReportException(ErrorCode.BadPDFFile, "Impossibile completare la stampa del template standard: " + e.Message); } }