diff --git a/ReportImp/VSDHammReports/ServiceInvoiceReport.Designer.cs b/ReportImp/VSDHammReports/ServiceInvoiceReport.Designer.cs index 0caeba013..98adeee87 100644 --- a/ReportImp/VSDHammReports/ServiceInvoiceReport.Designer.cs +++ b/ReportImp/VSDHammReports/ServiceInvoiceReport.Designer.cs @@ -37,6 +37,7 @@ namespace VSDHammReports this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand(); this.GroupFooter = new DevExpress.XtraReports.UI.GroupFooterBand(); this.Page1 = new DevExpress.XtraReports.UI.GroupHeaderBand(); + this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel(); this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel(); this.xrTable4 = new DevExpress.XtraReports.UI.XRTable(); this.xrTableRow10 = new DevExpress.XtraReports.UI.XRTableRow(); @@ -72,7 +73,10 @@ namespace VSDHammReports this.xrTableCell25 = new DevExpress.XtraReports.UI.XRTableCell(); this.xrTableRow15 = new DevExpress.XtraReports.UI.XRTableRow(); this.xrTableCell26 = new DevExpress.XtraReports.UI.XRTableCell(); - this.xrTableCell15 = new DevExpress.XtraReports.UI.XRTableCell(); + this.tcSummeFachleistungen = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableRow26 = new DevExpress.XtraReports.UI.XRTableRow(); + this.tcLabelSummeFehlkontakte = new DevExpress.XtraReports.UI.XRTableCell(); + this.tcSummeFehlkontakte = new DevExpress.XtraReports.UI.XRTableCell(); this.xrTableRow16 = new DevExpress.XtraReports.UI.XRTableRow(); this.xrTableCell27 = new DevExpress.XtraReports.UI.XRTableCell(); this.xrTableRow17 = new DevExpress.XtraReports.UI.XRTableRow(); @@ -129,7 +133,6 @@ namespace VSDHammReports this.xrTableCell46 = new DevExpress.XtraReports.UI.XRTableCell(); this.xrTableCell47 = new DevExpress.XtraReports.UI.XRTableCell(); this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand(); - this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel(); this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); ((System.ComponentModel.ISupportInitialize)(this.xrTable4)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit(); @@ -157,10 +160,6 @@ namespace VSDHammReports // ruleRateFactorNull // this.ruleRateFactorNull.Condition = "[RateFactorText2] == ?"; - this.ruleRateFactorNull.DataSource = this.bindingSource1; - // - // - // this.ruleRateFactorNull.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False; this.ruleRateFactorNull.Name = "ruleRateFactorNull"; // @@ -171,6 +170,7 @@ namespace VSDHammReports // // bottomMarginBand1 // + this.bottomMarginBand1.HeightF = 100F; this.bottomMarginBand1.Name = "bottomMarginBand1"; // // GroupFooter @@ -199,6 +199,17 @@ namespace VSDHammReports this.Page1.Name = "Page1"; this.Page1.PageBreak = DevExpress.XtraReports.UI.PageBreak.AfterBand; this.Page1.StylePriority.UseFont = false; + // + // xrLabel7 + // + this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.xrLabel7.Multiline = true; + this.xrLabel7.Name = "xrLabel7"; + this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.xrLabel7.SizeF = new System.Drawing.SizeF(317F, 111.5F); + this.xrLabel7.StylePriority.UseFont = false; + this.xrLabel7.Text = "[RecipientOrganisation]\r\n[RecipientContactPerson]\r\n[RecipientDivision]\r\n[Recipien" + + "tStreet]\r\n[RecipientPostCodeAndTown]"; // // xrLabel15 // @@ -375,9 +386,10 @@ namespace VSDHammReports this.xrTableRow7, this.xrTableRow18, this.xrTableRow15, + this.xrTableRow26, this.xrTableRow16, this.xrTableRow17}); - this.xrTable1.SizeF = new System.Drawing.SizeF(650F, 166F); + this.xrTable1.SizeF = new System.Drawing.SizeF(650F, 183F); // // xrTableRow9 // @@ -551,7 +563,7 @@ namespace VSDHammReports // this.xrTableRow15.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] { this.xrTableCell26, - this.xrTableCell15}); + this.tcSummeFachleistungen}); this.xrTableRow15.Name = "xrTableRow15"; this.xrTableRow15.Weight = 0.085D; // @@ -569,21 +581,59 @@ namespace VSDHammReports this.xrTableCell26.Text = "Summe der Vergütung für abrechenbare Leistungen:"; this.xrTableCell26.Weight = 0.66615384615384621D; // - // xrTableCell15 + // tcSummeFachleistungen // - this.xrTableCell15.BorderColor = System.Drawing.SystemColors.ControlLight; - this.xrTableCell15.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top) + this.tcSummeFachleistungen.BorderColor = System.Drawing.SystemColors.ControlLight; + this.tcSummeFachleistungen.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top) | DevExpress.XtraPrinting.BorderSide.Right) | DevExpress.XtraPrinting.BorderSide.Bottom))); - this.xrTableCell15.Name = "xrTableCell15"; - this.xrTableCell15.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrTableCell15.StylePriority.UseBorderColor = false; - this.xrTableCell15.StylePriority.UseBorders = false; - this.xrTableCell15.StylePriority.UseFont = false; - this.xrTableCell15.StylePriority.UseTextAlignment = false; - this.xrTableCell15.Text = "[GrossClaim]"; - this.xrTableCell15.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight; - this.xrTableCell15.Weight = 0.33384615384615385D; + this.tcSummeFachleistungen.Name = "tcSummeFachleistungen"; + this.tcSummeFachleistungen.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.tcSummeFachleistungen.StylePriority.UseBorderColor = false; + this.tcSummeFachleistungen.StylePriority.UseBorders = false; + this.tcSummeFachleistungen.StylePriority.UseFont = false; + this.tcSummeFachleistungen.StylePriority.UseTextAlignment = false; + this.tcSummeFachleistungen.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight; + this.tcSummeFachleistungen.Weight = 0.33384615384615385D; + // + // xrTableRow26 + // + this.xrTableRow26.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] { + this.tcLabelSummeFehlkontakte, + this.tcSummeFehlkontakte}); + this.xrTableRow26.Name = "xrTableRow26"; + this.xrTableRow26.Weight = 0.085D; + // + // tcLabelSummeFehlkontakte + // + this.tcLabelSummeFehlkontakte.BorderColor = System.Drawing.SystemColors.ControlLight; + this.tcLabelSummeFehlkontakte.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top) + | DevExpress.XtraPrinting.BorderSide.Right) + | DevExpress.XtraPrinting.BorderSide.Bottom))); + this.tcLabelSummeFehlkontakte.CanShrink = true; + this.tcLabelSummeFehlkontakte.Name = "tcLabelSummeFehlkontakte"; + this.tcLabelSummeFehlkontakte.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.tcLabelSummeFehlkontakte.StylePriority.UseBorderColor = false; + this.tcLabelSummeFehlkontakte.StylePriority.UseBorders = false; + this.tcLabelSummeFehlkontakte.StylePriority.UsePadding = false; + this.tcLabelSummeFehlkontakte.Text = "Summe der Vergütung für Fehlkontakte"; + this.tcLabelSummeFehlkontakte.Weight = 0.66615384615384621D; + // + // tcSummeFehlkontakte + // + this.tcSummeFehlkontakte.BorderColor = System.Drawing.SystemColors.ControlLight; + this.tcSummeFehlkontakte.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top) + | DevExpress.XtraPrinting.BorderSide.Right) + | DevExpress.XtraPrinting.BorderSide.Bottom))); + this.tcSummeFehlkontakte.CanShrink = true; + this.tcSummeFehlkontakte.Name = "tcSummeFehlkontakte"; + this.tcSummeFehlkontakte.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.tcSummeFehlkontakte.StylePriority.UseBorderColor = false; + this.tcSummeFehlkontakte.StylePriority.UseBorders = false; + this.tcSummeFehlkontakte.StylePriority.UsePadding = false; + this.tcSummeFehlkontakte.StylePriority.UseTextAlignment = false; + this.tcSummeFehlkontakte.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight; + this.tcSummeFehlkontakte.Weight = 0.33384615384615385D; // // xrTableRow16 // @@ -1205,19 +1255,9 @@ namespace VSDHammReports // ReportFooter // this.ReportFooter.Font = new System.Drawing.Font("Times New Roman", 10F); + this.ReportFooter.HeightF = 100F; this.ReportFooter.Name = "ReportFooter"; this.ReportFooter.StylePriority.UseFont = false; - // - // xrLabel7 - // - this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); - this.xrLabel7.Multiline = true; - this.xrLabel7.Name = "xrLabel7"; - this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel7.SizeF = new System.Drawing.SizeF(317F, 111.5F); - this.xrLabel7.StylePriority.UseFont = false; - this.xrLabel7.Text = "[RecipientOrganisation]\r\n[RecipientContactPerson]\r\n[RecipientDivision]\r\n[Recipien" + - "tStreet]\r\n[RecipientPostCodeAndTown]"; // // bindingSource1 // @@ -1243,7 +1283,7 @@ namespace VSDHammReports this.PageHeight = 1169; this.PageWidth = 827; this.PaperKind = System.Drawing.Printing.PaperKind.A4; - this.Version = "10.2"; + this.Version = "17.1"; ((System.ComponentModel.ISupportInitialize)(this.xrTable4)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).EndInit(); @@ -1287,7 +1327,7 @@ namespace VSDHammReports private DevExpress.XtraReports.UI.XRTableCell xrTableCell25; private DevExpress.XtraReports.UI.XRTableRow xrTableRow15; private DevExpress.XtraReports.UI.XRTableCell xrTableCell26; - private DevExpress.XtraReports.UI.XRTableCell xrTableCell15; + private DevExpress.XtraReports.UI.XRTableCell tcSummeFachleistungen; private DevExpress.XtraReports.UI.XRTableRow xrTableRow16; private DevExpress.XtraReports.UI.XRTableCell xrTableCell27; private DevExpress.XtraReports.UI.XRTableRow xrTableRow17; @@ -1357,5 +1397,8 @@ namespace VSDHammReports private DevExpress.XtraReports.UI.XRTableCell xrTableCell46; private DevExpress.XtraReports.UI.XRTableCell xrTableCell47; private DevExpress.XtraReports.UI.XRLabel xrLabel7; + private DevExpress.XtraReports.UI.XRTableRow xrTableRow26; + private DevExpress.XtraReports.UI.XRTableCell tcLabelSummeFehlkontakte; + private DevExpress.XtraReports.UI.XRTableCell tcSummeFehlkontakte; } } diff --git a/ReportImp/VSDHammReports/ServiceInvoiceReport.cs b/ReportImp/VSDHammReports/ServiceInvoiceReport.cs index fd5d162ff..1eb203683 100644 --- a/ReportImp/VSDHammReports/ServiceInvoiceReport.cs +++ b/ReportImp/VSDHammReports/ServiceInvoiceReport.cs @@ -2,6 +2,7 @@ using BeWo.Report; using BeWo.Report.ReportObjects; using DevExpress.XtraReports.UI; +using System; namespace VSDHammReports { @@ -14,6 +15,36 @@ namespace VSDHammReports public void SetReportDataSource(ServiceInvoiceRO pRO) { + decimal summeFachleistungen = 0; + decimal summeFehlkontakte = 0; + + foreach (var ip in pRO.ServiceInvoicePeriods) + { + foreach (var item in ip.ServiceInvoiceItems) + { + decimal faktor = 1; + if (item.RateFactor.Contains("%")) + { + var splitFactor = item.RateFactor.Split('%'); + faktor = 1 + (Convert.ToDecimal(splitFactor[0]) / 100); + } + + if (item.ServiceDescription.ToLower().Contains("fehlkontakt")) + summeFehlkontakte += item.UnitCount.Value * item.AmountPerUnit.Value * faktor; + else + summeFachleistungen += item.UnitCount.Value * item.AmountPerUnit.Value * faktor; + } + } + + tcSummeFachleistungen.Text = string.Format("{0:c}", summeFachleistungen); + tcSummeFehlkontakte.Text = string.Format("{0:c}", summeFehlkontakte); + + if (summeFehlkontakte == 0) + { + tcLabelSummeFehlkontakte.Visible = false; + tcSummeFehlkontakte.Visible = false; + } + this.bindingSource1.DataSource = pRO; } } diff --git a/ReportImp/VSDHammReports/ServiceInvoiceReport.resx b/ReportImp/VSDHammReports/ServiceInvoiceReport.resx index 54c5f8f04..2bbe75c96 100644 --- a/ReportImp/VSDHammReports/ServiceInvoiceReport.resx +++ b/ReportImp/VSDHammReports/ServiceInvoiceReport.resx @@ -117,12 +117,12 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17, 17 - anbei sende ich Ihnen die unterschriebenen Nachweise über die im Rahmen des Betreuten Wohnens für [CustomerSalutation] [CustomerName] erbrachten Leistungen zu. Nach unserer Berechnung ergeben sich für den Betreuungszeitraum [AccountingPeriod] hieraus: + + 17, 17 + \ No newline at end of file