/// <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);
     }
 }
Exemplo n.º 4
0
        /// <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);
            }
        }