/// <summary> /// /// </summary> /// Erstellt von Adrian Glasnek public void CreateFulfillmentForEachProductPdf() { //Benötigte Listen die von den Controllern übergeben werden Product products = this.ProjProduct.GetProductById(this.Product.Product_Id); //Get Product by Id from Database List<ProjectCriterion> baseCriterions = this.ProjCritContr.GetBaseProjectCriterions(this.Project.Project_Id); //Get all base Criterions SfdFulfillment.Filter = "Pdf File |*.pdf"; if (SfdFulfillment.ShowDialog() == DialogResult.OK) { //Dokument erstellen und A4 als Format festlegen Document FulfillmentPrinter = new Document(iTextSharp.text.PageSize.A4.Rotate()); //Seitenränder definieren FulfillmentPrinter.SetMargins(50, 200, 50, 125); //try catch um Fehler abzufangen wenn eine gleichnamige PDF noch geöffnet ist try { PdfWriter writer = PdfWriter.GetInstance(FulfillmentPrinter, new FileStream(SfdFulfillment.FileName, FileMode.Create)); //Timestamp writer.PageEvent = new PdfPageEvents(); } catch (Exception) { throw new Exception("Bitte schließen Sie das geöffnete Pdf!"); } //Dokument öffnen um es bearbeiten zu können FulfillmentPrinter.Open(); //Überschrift und nötige Formatierung setzen (Schriftart, Fett Druck, Schriftgröße) Font arialBold = FontFactory.GetFont("Arial_BOLD", 10, Font.BOLD); //Erstellen der Pdf Tabelle in der die Daten aus der Datenbank ausgegeben werden PdfPTable CritTable = new PdfPTable(4); //Relative Breite der Spalten in Relation zur gesamten Tabellengröße float[] widths = { 300f, 5f, 15f, 100f }; // Die Grenzen der Tabelle teilweise sichtbar machen CritTable.DefaultCell.Border = 1; //Relationale Breiten der Tabellenspalten an die Tabelle übergeben CritTable.SetWidths(widths); //Anzeigen der Überschriften auf jeder Seite des Dokuments CritTable.HeaderRows = 1; //Name des Produkts wird mit angezeigt CritTable.AddCell(new Paragraph("Produkt-Einzeldarstellung - " + products.Name, arialBold)); //Leere Zelle sorgt für Abstand - Formatierungszwecke CritTable.AddCell(new Paragraph(" ", arialBold)); CritTable.AddCell(new Paragraph("E", arialBold)); CritTable.AddCell(new Paragraph("Kommentar", arialBold)); //Ausrichtung Links CritTable.HorizontalAlignment = 0; //Totale Breite der "Tabelle" CritTable.TotalWidth = 650f; CritTable.LockedWidth = true; //Methodenaufruf PrintCriterionStructure(ref CritTable); //Tabelle zum Dokument Adden FulfillmentPrinter.Add(CritTable); //Close Dokument - Bearbeitung Beenden FulfillmentPrinter.Close(); //Aufrufen der Hilfsmethode (aus Klasse CriterionStructurePrinter)- Seitenzahl und den Projektnamen auf Pdf CriterionStructurePrinter PageNumberNameObject = new CriterionStructurePrinter(Project.Project_Id); PageNumberNameObject.GetPageNumber(SfdFulfillment, 800); //Meldung an den User nach erfolgreicher Erstellung MessageBox.Show("Pdf erfolgreich erstellt!"); //PDf wird automatisch geöffnet nach der erfolgreichen Speicherung System.Diagnostics.Process.Start(SfdFulfillment.FileName); } }
/// <summary> /// Methode um allen in der Datenbank gelisteten Projekte in einer PDF auszugeben /// </summary> /// Erstellt von Adrian Glasnek public void CreateCriterionStructurePdfForCostumer() { //Benötigte Verbindung um Daten aus der Datenbank holen List<ProjectCriterion> baseCriterions = this.ProjCritContr.GetBaseProjectCriterions(this.Project.Project_Id); //Get all base Criterions //SaveFileDialog um Dokument am gewünschten Ort speichern zu können SfdCriterion.Filter = "Pdf File |*.pdf"; if (SfdCriterion.ShowDialog() == DialogResult.OK) { //Dokument Erstellen, Definieren des Formats Document CriterionStructureDoc = new Document(iTextSharp.text.PageSize.A4.Rotate()); //Dokument in Querformat CriterionStructureDoc.SetMargins(50, 200, 50, 125); //Seitenränder definieren //try catch um Fehler abzufangen wenn eine gleichnamige PDF noch geöffnet ist try { PdfWriter writer = PdfWriter.GetInstance(CriterionStructureDoc, new FileStream(SfdCriterion.FileName, FileMode.Create)); //Timestamp writer.PageEvent = new PdfPageEvents(); } catch (Exception) { throw new Exception("Bitte schließen Sie das geöffnete Pdf!"); } //Dokument zur Bearbeitung Öffnen CriterionStructureDoc.Open(); //Überschrift und nötige Formatierung setzen (Schriftart, Fett Druck, Schriftgröße) Font arial = FontFactory.GetFont("Arial_BOLD", 10, Font.BOLD); CriterionStructureDoc.Add(new Paragraph("Kunde: ", arial)); //Erstellen einer Pdf Tabelle in der die Daten aus der Datenbank ausgegeben werden - 4 Spalten werden "übergeben" PdfPTable CritTable = new PdfPTable(4); //Abstand zwischen "Kunde" der Struktur CritTable.SpacingBefore = 25f; //Relative Breite der Spalten in Relation zur gesamten Tabellengröße float[] widths = { 300f, 5f, 15f, 100f }; // Die Grenzen der Tabelle teilweilse sichtbar machen CritTable.DefaultCell.Border = 1; //Relationale Breiten der Tabellenspalten fixen CritTable.SetWidths(widths); //Anzeigen der Überschriften auf jeder Seite des Dokuments CritTable.HeaderRows = 1; CritTable.AddCell(new Paragraph("Anforderungen des Anwenders", arial)); //Leere Zelle sorgt für Abstand - Formatierungszwecke CritTable.AddCell(new Paragraph(" ", arial)); CritTable.AddCell(new Paragraph(" *", arial)); CritTable.AddCell(new Paragraph("Kommentar", arial)); CritTable.HorizontalAlignment = 0; //Totale Breite der "Tabelle" CritTable.TotalWidth = 650f; CritTable.LockedWidth = true; //Methodenaufruf PrintCriterionStructure(ref CritTable); //Tabelle zum Dokument Adden CriterionStructureDoc.Add(CritTable); //Close Dokument - Bearbeitung Beenden CriterionStructureDoc.Close(); //Aufrufen der Hilfsmethode GetPageNumber - Seitenzahl und den Projektnamen auf Pdf CriterionStructurePrinter PageNumberObject = new CriterionStructurePrinter(Project.Project_Id); PageNumberObject.GetPageNumber(SfdCriterion, 800); //Ausgabe bei erfolgreicher Ausgabe MessageBox.Show("Pdf erfolgreich erstellt!"); //PDf wird automatisch geöffnet nach der erfolgreichen Speicherung System.Diagnostics.Process.Start(SfdCriterion.FileName); } }
/// <summary> /// Handles the Click event of the btn_CurrProjCritStruPrint control. /// Butten zum Öffnen der Kriterienstruktur-Printer /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> /// Erstellt von Veit Berg, am 27.01.16 private void btn_CurrProjCritStruPrint_Click(object sender, EventArgs e) { try{ CriterionStructurePrinter printobject = new CriterionStructurePrinter(Project.Project_Id); printobject.CreateCriterionStructurePdf(); } catch (Exception x) { MessageBox.Show(x.Message); } }
/// <summary> /// /// </summary> /// Erstellt von Adrian Glasnek public void CreateFulfillmentForEachProductPdf() { //Benötigte Listen die von den Controllern übergeben werden Product products = this.ProjProduct.GetProductById(this.Product.Product_Id); //Get Product by Id from Database List <ProjectCriterion> baseCriterions = this.ProjCritContr.GetBaseProjectCriterions(this.Project.Project_Id); //Get all base Criterions SfdFulfillment.Filter = "Pdf File |*.pdf"; if (SfdFulfillment.ShowDialog() == DialogResult.OK) { //Dokument erstellen und A4 als Format festlegen Document FulfillmentPrinter = new Document(iTextSharp.text.PageSize.A4.Rotate()); //Seitenränder definieren FulfillmentPrinter.SetMargins(50, 200, 50, 125); //try catch um Fehler abzufangen wenn eine gleichnamige PDF noch geöffnet ist try { PdfWriter writer = PdfWriter.GetInstance(FulfillmentPrinter, new FileStream(SfdFulfillment.FileName, FileMode.Create)); //Timestamp writer.PageEvent = new PdfPageEvents(); } catch (Exception) { throw new Exception("Bitte schließen Sie das geöffnete Pdf!"); } //Dokument öffnen um es bearbeiten zu können FulfillmentPrinter.Open(); //Überschrift und nötige Formatierung setzen (Schriftart, Fett Druck, Schriftgröße) Font arialBold = FontFactory.GetFont("Arial_BOLD", 10, Font.BOLD); //Erstellen der Pdf Tabelle in der die Daten aus der Datenbank ausgegeben werden PdfPTable CritTable = new PdfPTable(4); //Relative Breite der Spalten in Relation zur gesamten Tabellengröße float[] widths = { 300f, 5f, 15f, 100f }; // Die Grenzen der Tabelle teilweise sichtbar machen CritTable.DefaultCell.Border = 1; //Relationale Breiten der Tabellenspalten an die Tabelle übergeben CritTable.SetWidths(widths); //Anzeigen der Überschriften auf jeder Seite des Dokuments CritTable.HeaderRows = 1; //Name des Produkts wird mit angezeigt CritTable.AddCell(new Paragraph("Produkt-Einzeldarstellung - " + products.Name, arialBold)); //Leere Zelle sorgt für Abstand - Formatierungszwecke CritTable.AddCell(new Paragraph(" ", arialBold)); CritTable.AddCell(new Paragraph("E", arialBold)); CritTable.AddCell(new Paragraph("Kommentar", arialBold)); //Ausrichtung Links CritTable.HorizontalAlignment = 0; //Totale Breite der "Tabelle" CritTable.TotalWidth = 650f; CritTable.LockedWidth = true; //Methodenaufruf PrintCriterionStructure(ref CritTable); //Tabelle zum Dokument Adden FulfillmentPrinter.Add(CritTable); //Close Dokument - Bearbeitung Beenden FulfillmentPrinter.Close(); //Aufrufen der Hilfsmethode (aus Klasse CriterionStructurePrinter)- Seitenzahl und den Projektnamen auf Pdf CriterionStructurePrinter PageNumberNameObject = new CriterionStructurePrinter(Project.Project_Id); PageNumberNameObject.GetPageNumber(SfdFulfillment, 800); //Meldung an den User nach erfolgreicher Erstellung MessageBox.Show("Pdf erfolgreich erstellt!"); //PDf wird automatisch geöffnet nach der erfolgreichen Speicherung System.Diagnostics.Process.Start(SfdFulfillment.FileName); } }
/// <summary> /// Methode um allen in der Datenbank gelisteten Projekte in einer PDF auszugeben /// </summary> /// Erstellt von Adrian Glasnek public void CreateCriterionStructurePdfForCostumer() { //Benötigte Verbindung um Daten aus der Datenbank holen List <ProjectCriterion> baseCriterions = this.ProjCritContr.GetBaseProjectCriterions(this.Project.Project_Id); //Get all base Criterions //SaveFileDialog um Dokument am gewünschten Ort speichern zu können SfdCriterion.Filter = "Pdf File |*.pdf"; if (SfdCriterion.ShowDialog() == DialogResult.OK) { //Dokument Erstellen, Definieren des Formats Document CriterionStructureDoc = new Document(iTextSharp.text.PageSize.A4.Rotate()); //Dokument in Querformat CriterionStructureDoc.SetMargins(50, 200, 50, 125); //Seitenränder definieren //try catch um Fehler abzufangen wenn eine gleichnamige PDF noch geöffnet ist try { PdfWriter writer = PdfWriter.GetInstance(CriterionStructureDoc, new FileStream(SfdCriterion.FileName, FileMode.Create)); //Timestamp writer.PageEvent = new PdfPageEvents(); } catch (Exception) { throw new Exception("Bitte schließen Sie das geöffnete Pdf!"); } //Dokument zur Bearbeitung Öffnen CriterionStructureDoc.Open(); //Überschrift und nötige Formatierung setzen (Schriftart, Fett Druck, Schriftgröße) Font arial = FontFactory.GetFont("Arial_BOLD", 10, Font.BOLD); CriterionStructureDoc.Add(new Paragraph("Kunde: ", arial)); //Erstellen einer Pdf Tabelle in der die Daten aus der Datenbank ausgegeben werden - 4 Spalten werden "übergeben" PdfPTable CritTable = new PdfPTable(4); //Abstand zwischen "Kunde" der Struktur CritTable.SpacingBefore = 25f; //Relative Breite der Spalten in Relation zur gesamten Tabellengröße float[] widths = { 300f, 5f, 15f, 100f }; // Die Grenzen der Tabelle teilweilse sichtbar machen CritTable.DefaultCell.Border = 1; //Relationale Breiten der Tabellenspalten fixen CritTable.SetWidths(widths); //Anzeigen der Überschriften auf jeder Seite des Dokuments CritTable.HeaderRows = 1; CritTable.AddCell(new Paragraph("Anforderungen des Anwenders", arial)); //Leere Zelle sorgt für Abstand - Formatierungszwecke CritTable.AddCell(new Paragraph(" ", arial)); CritTable.AddCell(new Paragraph(" *", arial)); CritTable.AddCell(new Paragraph("Kommentar", arial)); CritTable.HorizontalAlignment = 0; //Totale Breite der "Tabelle" CritTable.TotalWidth = 650f; CritTable.LockedWidth = true; //Methodenaufruf PrintCriterionStructure(ref CritTable); //Tabelle zum Dokument Adden CriterionStructureDoc.Add(CritTable); //Close Dokument - Bearbeitung Beenden CriterionStructureDoc.Close(); //Aufrufen der Hilfsmethode GetPageNumber - Seitenzahl und den Projektnamen auf Pdf CriterionStructurePrinter PageNumberObject = new CriterionStructurePrinter(Project.Project_Id); PageNumberObject.GetPageNumber(SfdCriterion, 800); //Ausgabe bei erfolgreicher Ausgabe MessageBox.Show("Pdf erfolgreich erstellt!"); //PDf wird automatisch geöffnet nach der erfolgreichen Speicherung System.Diagnostics.Process.Start(SfdCriterion.FileName); } }