From bba6f647a08ca04ec952290e5fd01e541e221cca Mon Sep 17 00:00:00 2001 From: Marcel Hirschle Date: Wed, 10 Apr 2024 16:39:49 +0200 Subject: [PATCH] MH: PROgymnasiumBensberg Rechnungsvorlage --- .../ServiceInvoiceReport.Designer.cs | 129 ++++++++++-------- .../ServiceInvoiceReport.cs | 21 ++- 2 files changed, 93 insertions(+), 57 deletions(-) diff --git a/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.Designer.cs b/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.Designer.cs index 3dd575cb7..d59aa3361 100644 --- a/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.Designer.cs +++ b/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.Designer.cs @@ -29,23 +29,25 @@ namespace BeWo.Report.DefaultReports private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - DevExpress.XtraReports.UI.XRSummary xrSummary1 = new DevExpress.XtraReports.UI.XRSummary(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ServiceInvoiceReport)); + DevExpress.XtraReports.UI.XRSummary xrSummary1 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRWatermark xrWatermark1 = new DevExpress.XtraReports.UI.XRWatermark(); this.Detail = new DevExpress.XtraReports.UI.DetailBand(); this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand(); this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule(); this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand(); + this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox(); this.xrRichText1 = new DevExpress.XtraReports.UI.XRRichText(); this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand(); this.xrLabel9 = new DevExpress.XtraReports.UI.XRLabel(); this.Page1 = new DevExpress.XtraReports.UI.GroupHeaderBand(); this.xrLabel11 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel8 = new DevExpress.XtraReports.UI.XRLabel(); - this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel(); + this.lblNummernBeiSZ = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel(); - this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel(); - this.xrLabel3 = new DevExpress.XtraReports.UI.XRLabel(); + this.lblHeader2 = new DevExpress.XtraReports.UI.XRLabel(); + this.lblHeader1 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel14 = new DevExpress.XtraReports.UI.XRLabel(); @@ -70,8 +72,8 @@ namespace BeWo.Report.DefaultReports this.GroupFooter1 = new DevExpress.XtraReports.UI.GroupFooterBand(); this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel(); + this.lblMailBeiSZ = new DevExpress.XtraReports.UI.XRLabel(); this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); - this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox(); ((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable5)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable6)).BeginInit(); @@ -106,6 +108,14 @@ namespace BeWo.Report.DefaultReports this.topMarginBand1.HeightF = 158F; this.topMarginBand1.Name = "topMarginBand1"; // + // xrPictureBox2 + // + this.xrPictureBox2.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox2.ImageSource")); + this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(453.1667F, 68.41666F); + this.xrPictureBox2.Name = "xrPictureBox2"; + this.xrPictureBox2.SizeF = new System.Drawing.SizeF(91.66672F, 89.58334F); + this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage; + // // xrRichText1 // this.xrRichText1.Font = new DevExpress.Drawing.DXFont("Verdana", 10F); @@ -139,13 +149,14 @@ namespace BeWo.Report.DefaultReports // Page1 // this.Page1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.lblMailBeiSZ, this.xrLabel11, this.xrLabel8, - this.xrLabel10, + this.lblNummernBeiSZ, this.xrLabel6, this.xrLabel7, - this.xrLabel4, - this.xrLabel3, + this.lblHeader2, + this.lblHeader1, this.xrLabel2}); this.Page1.Font = new DevExpress.Drawing.DXFont("Verdana", 10F); this.Page1.HeightF = 342.6251F; @@ -174,21 +185,21 @@ namespace BeWo.Report.DefaultReports this.xrLabel8.Multiline = true; this.xrLabel8.Name = "xrLabel8"; this.xrLabel8.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel8.SizeF = new System.Drawing.SizeF(258.2917F, 50F); + this.xrLabel8.SizeF = new System.Drawing.SizeF(258.2917F, 20.83333F); this.xrLabel8.StylePriority.UseFont = false; this.xrLabel8.StylePriority.UseForeColor = false; - this.xrLabel8.Text = "www.progymnasium.de\r\ndaphne.moore@progymnasium.de"; + this.xrLabel8.Text = "www.progymnasium.de\r\n"; // - // xrLabel10 + // lblNummernBeiSZ // - this.xrLabel10.Font = new DevExpress.Drawing.DXFont("Verdana", 10F); - this.xrLabel10.LocationFloat = new DevExpress.Utils.PointFloat(450.7083F, 136.5833F); - this.xrLabel10.Multiline = true; - this.xrLabel10.Name = "xrLabel10"; - this.xrLabel10.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel10.SizeF = new System.Drawing.SizeF(258.2917F, 50F); - this.xrLabel10.StylePriority.UseFont = false; - this.xrLabel10.Text = "Tel.: 02204 954833\r\nFax: 02204 954845"; + this.lblNummernBeiSZ.Font = new DevExpress.Drawing.DXFont("Verdana", 10F); + this.lblNummernBeiSZ.LocationFloat = new DevExpress.Utils.PointFloat(450.7083F, 136.5833F); + this.lblNummernBeiSZ.Multiline = true; + this.lblNummernBeiSZ.Name = "lblNummernBeiSZ"; + this.lblNummernBeiSZ.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.lblNummernBeiSZ.SizeF = new System.Drawing.SizeF(258.2917F, 50F); + this.lblNummernBeiSZ.StylePriority.UseFont = false; + this.lblNummernBeiSZ.Text = "Tel.: 02204 954833\r\nFax: 02204 954845"; // // xrLabel6 // @@ -213,36 +224,34 @@ namespace BeWo.Report.DefaultReports this.xrLabel7.Text = "[RecipientOrganisation]\r\n[RecipientContactPerson]\r\n[RecipientDivision]\r\n[Recipien" + "tStreet]\r\n[RecipientPostCodeAndTown]"; // - // xrLabel4 + // lblHeader2 // - this.xrLabel4.BackColor = System.Drawing.Color.Transparent; - this.xrLabel4.CanShrink = true; - this.xrLabel4.Font = new DevExpress.Drawing.DXFont("Verdana", 9.75F, DevExpress.Drawing.DXFontStyle.Bold, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] { + this.lblHeader2.BackColor = System.Drawing.Color.Transparent; + this.lblHeader2.CanShrink = true; + this.lblHeader2.Font = new DevExpress.Drawing.DXFont("Verdana", 9.75F, DevExpress.Drawing.DXFontStyle.Bold, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] { new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))}); - this.xrLabel4.LocationFloat = new DevExpress.Utils.PointFloat(0F, 310F); - this.xrLabel4.Multiline = true; - this.xrLabel4.Name = "xrLabel4"; - this.xrLabel4.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel4.SizeF = new System.Drawing.SizeF(650F, 20F); - this.xrLabel4.StylePriority.UseBackColor = false; - this.xrLabel4.StylePriority.UseFont = false; - this.xrLabel4.Text = "gemäß Quittierungsbeleg und Kilometerabrechnung"; - this.xrLabel4.WordWrap = false; + this.lblHeader2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 310F); + this.lblHeader2.Multiline = true; + this.lblHeader2.Name = "lblHeader2"; + this.lblHeader2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.lblHeader2.SizeF = new System.Drawing.SizeF(676.8331F, 20F); + this.lblHeader2.StylePriority.UseBackColor = false; + this.lblHeader2.StylePriority.UseFont = false; + this.lblHeader2.WordWrap = false; // - // xrLabel3 + // lblHeader1 // - this.xrLabel3.BackColor = System.Drawing.Color.Transparent; - this.xrLabel3.CanShrink = true; - this.xrLabel3.Font = new DevExpress.Drawing.DXFont("Verdana", 9.75F, DevExpress.Drawing.DXFontStyle.Bold, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] { + this.lblHeader1.BackColor = System.Drawing.Color.Transparent; + this.lblHeader1.CanShrink = true; + this.lblHeader1.Font = new DevExpress.Drawing.DXFont("Verdana", 9.75F, DevExpress.Drawing.DXFontStyle.Bold, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] { new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))}); - this.xrLabel3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 290F); - this.xrLabel3.Name = "xrLabel3"; - this.xrLabel3.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel3.SizeF = new System.Drawing.SizeF(650F, 20F); - this.xrLabel3.StylePriority.UseBackColor = false; - this.xrLabel3.StylePriority.UseFont = false; - this.xrLabel3.Text = "Leistungen des Betreuten Wohnens für [AccountingPeriod]"; - this.xrLabel3.WordWrap = false; + this.lblHeader1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 290F); + this.lblHeader1.Name = "lblHeader1"; + this.lblHeader1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.lblHeader1.SizeF = new System.Drawing.SizeF(676.8331F, 20F); + this.lblHeader1.StylePriority.UseBackColor = false; + this.lblHeader1.StylePriority.UseFont = false; + this.lblHeader1.WordWrap = false; // // xrLabel2 // @@ -256,7 +265,7 @@ namespace BeWo.Report.DefaultReports this.xrLabel2.SizeF = new System.Drawing.SizeF(677.0001F, 20F); this.xrLabel2.StylePriority.UseBackColor = false; this.xrLabel2.StylePriority.UseFont = false; - this.xrLabel2.Text = "Rechnungsnr.: [InvoiceNumber], [CustomerName]"; + this.xrLabel2.Text = "Rechnungsnr.: [InvoiceNumber]"; this.xrLabel2.WordWrap = false; // // xrLabel15 @@ -567,18 +576,23 @@ namespace BeWo.Report.DefaultReports this.xrLabel1.Text = "xrLabel1"; this.xrLabel1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; // + // lblMailBeiSZ + // + this.lblMailBeiSZ.Font = new DevExpress.Drawing.DXFont("Verdana", 10F); + this.lblMailBeiSZ.ForeColor = System.Drawing.Color.Black; + this.lblMailBeiSZ.LocationFloat = new DevExpress.Utils.PointFloat(450.7081F, 207.4166F); + this.lblMailBeiSZ.Multiline = true; + this.lblMailBeiSZ.Name = "lblMailBeiSZ"; + this.lblMailBeiSZ.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.lblMailBeiSZ.SizeF = new System.Drawing.SizeF(258.2917F, 20.83333F); + this.lblMailBeiSZ.StylePriority.UseFont = false; + this.lblMailBeiSZ.StylePriority.UseForeColor = false; + this.lblMailBeiSZ.Text = "daphne.moore@progymnasium.de"; + // // bindingSource1 // this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServiceInvoiceRO); // - // xrPictureBox2 - // - this.xrPictureBox2.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox2.ImageSource")); - this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(453.1667F, 68.41666F); - this.xrPictureBox2.Name = "xrPictureBox2"; - this.xrPictureBox2.SizeF = new System.Drawing.SizeF(91.66672F, 89.58334F); - this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage; - // // ServiceInvoiceReport // this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] { @@ -598,6 +612,8 @@ namespace BeWo.Report.DefaultReports this.PageWidth = 827; this.PaperKind = DevExpress.Drawing.Printing.DXPaperKind.A4; this.Version = "23.2"; + xrWatermark1.Id = "Watermark1"; + this.Watermarks.Add(xrWatermark1); ((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable5)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable6)).EndInit(); @@ -614,8 +630,8 @@ namespace BeWo.Report.DefaultReports private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1; private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1; private DevExpress.XtraReports.UI.GroupHeaderBand Page1; - private DevExpress.XtraReports.UI.XRLabel xrLabel4; - private DevExpress.XtraReports.UI.XRLabel xrLabel3; + private DevExpress.XtraReports.UI.XRLabel lblHeader2; + private DevExpress.XtraReports.UI.XRLabel lblHeader1; private DevExpress.XtraReports.UI.XRLabel xrLabel2; private DevExpress.XtraReports.UI.XRLabel xrLabel15; private DevExpress.XtraReports.UI.XRLabel xrLabel14; @@ -642,11 +658,12 @@ namespace BeWo.Report.DefaultReports private DevExpress.XtraReports.UI.XRLabel xrLabel1; private DevExpress.XtraReports.UI.XRRichText xrRichText1; private DevExpress.XtraReports.UI.XRLabel xrLabel6; - private DevExpress.XtraReports.UI.XRLabel xrLabel10; + private DevExpress.XtraReports.UI.XRLabel lblNummernBeiSZ; private DevExpress.XtraReports.UI.XRLabel xrLabel8; private DevExpress.XtraReports.UI.XRLabel xrLabel11; private DevExpress.XtraReports.UI.XRLabel xrLabel5; private DevExpress.XtraReports.UI.XRLabel xrLabel9; private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox2; + private DevExpress.XtraReports.UI.XRLabel lblMailBeiSZ; } } diff --git a/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.cs b/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.cs index e34db43d7..e669d2896 100644 --- a/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.cs +++ b/ReportImp/PROgymnasiumBensberg/ServiceInvoiceReport.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using BeWo.Report.ReportObjects; using DevExpress.XtraReports.UI; @@ -16,7 +17,25 @@ namespace BeWo.Report.DefaultReports { DateTime start = pRO.AccountingPeriodStart; DateTime end = pRO.AccountingPeriodEnd; - + + lblHeader1.Text = string.Format("Betreutes Wohnen und Assistenzleistungen für den Monat {0:MMMM yyyy}", pRO.AccountingPeriodStart); + lblHeader2.Text = string.Format("Verwendungszweck: Betreutes Wohnen und Assistenzleistungen für {0} {1}", pRO.CustomerFirstName, pRO.CustomerLastName); + + bool nurAssistenz = true; + foreach (var ip in pRO.ServiceInvoicePeriods) + { + if (ip.ServiceInvoiceItems.Any(i => !i.ServiceDescription.ToLower().Contains("assistenz"))) + nurAssistenz = false; + } + + if (nurAssistenz) + { + lblMailBeiSZ.Visible = false; + lblNummernBeiSZ.Visible = false; + lblHeader1.Text = string.Format("Assistenzleistungen für den Monat {0:MMMM yyyy}", pRO.AccountingPeriodStart); + lblHeader2.Text = string.Format("Verwendungszweck: Assistenzleistungen für {0} {1}", pRO.CustomerFirstName, pRO.CustomerLastName); + } + this.bindingSource1.DataSource = pRO; } }