diff --git a/ReportImp/LyvieKupfer/CollectiveBillingReport.Designer.cs b/ReportImp/LyvieKupfer/CollectiveBillingReport.Designer.cs
new file mode 100644
index 000000000..147ccf6d0
--- /dev/null
+++ b/ReportImp/LyvieKupfer/CollectiveBillingReport.Designer.cs
@@ -0,0 +1,682 @@
+using BeWo.Report.ReportObjects;
+namespace LyvieKupfer
+{
+ partial class Sammelrechnung
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Sammelrechnung));
+ 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.xrLabel24 = new DevExpress.XtraReports.UI.XRLabel();
+ this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
+ this.Page1 = new DevExpress.XtraReports.UI.GroupHeaderBand();
+ this.lblAdresse = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrLabel8 = new DevExpress.XtraReports.UI.XRLabel();
+ this.lblAbrechnungszeitraum = new DevExpress.XtraReports.UI.XRLabel();
+ this.DetailReport = new DevExpress.XtraReports.UI.DetailReportBand();
+ this.Detail1 = new DevExpress.XtraReports.UI.DetailBand();
+ this.DetailReport2 = new DevExpress.XtraReports.UI.DetailReportBand();
+ this.Detail3 = new DevExpress.XtraReports.UI.DetailBand();
+ this.xrTable6 = new DevExpress.XtraReports.UI.XRTable();
+ this.xrTableRow25 = new DevExpress.XtraReports.UI.XRTableRow();
+ this.xrTableCell42 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell43 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell44 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell47 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.lblRechnungstext = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrTable5 = new DevExpress.XtraReports.UI.XRTable();
+ this.xrTableRow23 = new DevExpress.XtraReports.UI.XRTableRow();
+ this.xrTableCell37 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell35 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell33 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell34 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand();
+ this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrTable2 = new DevExpress.XtraReports.UI.XRTable();
+ this.xrTableRow2 = new DevExpress.XtraReports.UI.XRTableRow();
+ this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableRow3 = new DevExpress.XtraReports.UI.XRTableRow();
+ this.xrTableCell3 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTable3 = new DevExpress.XtraReports.UI.XRTable();
+ this.xrTableRow4 = new DevExpress.XtraReports.UI.XRTableRow();
+ this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell();
+ this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrRichText2 = new DevExpress.XtraReports.UI.XRRichText();
+ this.xrLabel9 = new DevExpress.XtraReports.UI.XRLabel();
+ this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel();
+ this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable6)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable5)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
+ //
+ // Detail
+ //
+ this.Detail.HeightF = 0F;
+ this.Detail.Name = "Detail";
+ this.Detail.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F);
+ this.Detail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft;
+ //
+ // ReportHeader
+ //
+ this.ReportHeader.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.ReportHeader.HeightF = 0F;
+ this.ReportHeader.Name = "ReportHeader";
+ this.ReportHeader.StylePriority.UseFont = false;
+ //
+ // ruleRateFactorNull
+ //
+ this.ruleRateFactorNull.Condition = "[RateFactorText2] == ?";
+ this.ruleRateFactorNull.Formatting.Visible = DevExpress.Utils.DefaultBoolean.False;
+ this.ruleRateFactorNull.Name = "ruleRateFactorNull";
+ //
+ // topMarginBand1
+ //
+ this.topMarginBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
+ this.xrLabel24});
+ this.topMarginBand1.HeightF = 157.5F;
+ this.topMarginBand1.Name = "topMarginBand1";
+ //
+ // xrLabel24
+ //
+ this.xrLabel24.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrLabel24.Font = new DevExpress.Drawing.DXFont("tahoma", 12F);
+ this.xrLabel24.LocationFloat = new DevExpress.Utils.PointFloat(0F, 28.3611F);
+ this.xrLabel24.Multiline = true;
+ this.xrLabel24.Name = "xrLabel24";
+ this.xrLabel24.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 2, 0, 0, 100F);
+ this.xrLabel24.SizeF = new System.Drawing.SizeF(431.5833F, 104.5556F);
+ this.xrLabel24.StylePriority.UseBackColor = false;
+ this.xrLabel24.StylePriority.UseBorders = false;
+ this.xrLabel24.StylePriority.UseFont = false;
+ this.xrLabel24.StylePriority.UsePadding = false;
+ this.xrLabel24.StylePriority.UseTextAlignment = false;
+ this.xrLabel24.Text = "yayatoo | Otto-Lilienthalstr. 4 | 88046 Friedrichshafen\r\nTel: 07541 599 6295\r\nEma" +
+ "il: info@yayatoo.de";
+ this.xrLabel24.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
+ //
+ // bottomMarginBand1
+ //
+ this.bottomMarginBand1.HeightF = 50F;
+ this.bottomMarginBand1.Name = "bottomMarginBand1";
+ //
+ // Page1
+ //
+ this.Page1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
+ this.xrTable5,
+ this.lblRechnungstext,
+ this.lblAdresse,
+ this.xrLabel2,
+ this.xrLabel8,
+ this.lblAbrechnungszeitraum});
+ this.Page1.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.Page1.HeightF = 407.4167F;
+ this.Page1.Name = "Page1";
+ this.Page1.StylePriority.UseFont = false;
+ //
+ // lblAdresse
+ //
+ this.lblAdresse.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.lblAdresse.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
+ this.lblAdresse.Multiline = true;
+ this.lblAdresse.Name = "lblAdresse";
+ this.lblAdresse.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.lblAdresse.SizeF = new System.Drawing.SizeF(317F, 111.5F);
+ this.lblAdresse.StylePriority.UseFont = false;
+ this.lblAdresse.Text = "[RecipientOrganisation]\r\n[RecipientContactPerson]\r\n[RecipientDivision]\r\n[Recipien" +
+ "tStreet]\r\n[RecipientPostCodeAndTown]";
+ //
+ // xrLabel2
+ //
+ this.xrLabel2.BackColor = System.Drawing.Color.Transparent;
+ this.xrLabel2.CanShrink = true;
+ this.xrLabel2.Font = new DevExpress.Drawing.DXFont("Calibri", 12F, DevExpress.Drawing.DXFontStyle.Bold);
+ this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 229.375F);
+ this.xrLabel2.Name = "xrLabel2";
+ this.xrLabel2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrLabel2.SizeF = new System.Drawing.SizeF(650F, 20F);
+ this.xrLabel2.StylePriority.UseBackColor = false;
+ this.xrLabel2.StylePriority.UseFont = false;
+ this.xrLabel2.Text = "Sammelrechnung Erstgespräche Nr. [InvoiceNumber]";
+ this.xrLabel2.WordWrap = false;
+ //
+ // xrLabel8
+ //
+ this.xrLabel8.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
+ new DevExpress.XtraReports.UI.XRBinding("Text", null, "InvoiceDate")});
+ this.xrLabel8.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrLabel8.LocationFloat = new DevExpress.Utils.PointFloat(362.5F, 172F);
+ this.xrLabel8.Name = "xrLabel8";
+ this.xrLabel8.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrLabel8.SizeF = new System.Drawing.SizeF(283F, 23F);
+ this.xrLabel8.StylePriority.UseFont = false;
+ this.xrLabel8.StylePriority.UseTextAlignment = false;
+ this.xrLabel8.Text = "xrLabel8";
+ this.xrLabel8.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight;
+ this.xrLabel8.TextFormatString = "Friedrichshafen, den {0:d. MMMM yyyy}";
+ //
+ // lblAbrechnungszeitraum
+ //
+ this.lblAbrechnungszeitraum.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.lblAbrechnungszeitraum.LocationFloat = new DevExpress.Utils.PointFloat(0F, 310F);
+ this.lblAbrechnungszeitraum.Multiline = true;
+ this.lblAbrechnungszeitraum.Name = "lblAbrechnungszeitraum";
+ this.lblAbrechnungszeitraum.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.lblAbrechnungszeitraum.SizeF = new System.Drawing.SizeF(642F, 44.08334F);
+ this.lblAbrechnungszeitraum.StylePriority.UseFont = false;
+ this.lblAbrechnungszeitraum.Text = "Für den Zeitraum vom [AccountingPeriodStart!dd.MM.yyyy] bis zum [AccountingPeriod" +
+ "End!dd.MM.yyyy] berechne ich Ihnen folgende heilpädagogische Leistungen für die " +
+ "Erstgespräche.";
+ //
+ // DetailReport
+ //
+ this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
+ this.Detail1,
+ this.DetailReport2});
+ this.DetailReport.DataMember = "ServiceInvoicePeriods";
+ this.DetailReport.DataSource = this.bindingSource1;
+ this.DetailReport.Level = 0;
+ this.DetailReport.Name = "DetailReport";
+ //
+ // Detail1
+ //
+ this.Detail1.HeightF = 0F;
+ this.Detail1.Name = "Detail1";
+ //
+ // DetailReport2
+ //
+ this.DetailReport2.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
+ this.Detail3});
+ this.DetailReport2.DataMember = "ServiceInvoicePeriods.ServiceInvoiceItems";
+ this.DetailReport2.DataSource = this.bindingSource1;
+ this.DetailReport2.Level = 0;
+ this.DetailReport2.Name = "DetailReport2";
+ this.DetailReport2.AfterPrint += new System.EventHandler(this.ChangeName);
+ //
+ // Detail3
+ //
+ this.Detail3.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
+ this.xrTable6});
+ this.Detail3.HeightF = 25F;
+ this.Detail3.Name = "Detail3";
+ //
+ // xrTable6
+ //
+ this.xrTable6.Font = new DevExpress.Drawing.DXFont("Verdana", 8.25F, DevExpress.Drawing.DXFontStyle.Regular, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] {
+ new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))});
+ this.xrTable6.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
+ this.xrTable6.Name = "xrTable6";
+ this.xrTable6.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
+ this.xrTableRow25});
+ this.xrTable6.SizeF = new System.Drawing.SizeF(677.0001F, 25F);
+ this.xrTable6.StylePriority.UseFont = false;
+ //
+ // xrTableRow25
+ //
+ this.xrTableRow25.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
+ this.xrTableCell42,
+ this.xrTableCell43,
+ this.xrTableCell44,
+ this.xrTableCell47});
+ this.xrTableRow25.Name = "xrTableRow25";
+ this.xrTableRow25.Weight = 1D;
+ //
+ // xrTableCell42
+ //
+ this.xrTableCell42.BorderColor = System.Drawing.Color.DarkGray;
+ this.xrTableCell42.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrTableCell42.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.xrTableCell42.Name = "xrTableCell42";
+ this.xrTableCell42.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell42.StylePriority.UseBorderColor = false;
+ this.xrTableCell42.StylePriority.UseBorders = false;
+ this.xrTableCell42.StylePriority.UseFont = false;
+ this.xrTableCell42.StylePriority.UsePadding = false;
+ this.xrTableCell42.StylePriority.UseTextAlignment = false;
+ this.xrTableCell42.Text = "[ServiceInvoicePeriods.Customer.LastNameFirstName], geb. [ServiceInvoicePeriods.C" +
+ "ustomer.DateOfBirth!dd.MM.yyyy]";
+ this.xrTableCell42.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
+ this.xrTableCell42.Weight = 1.0092620846403377D;
+ //
+ // xrTableCell43
+ //
+ this.xrTableCell43.BorderColor = System.Drawing.Color.DarkGray;
+ this.xrTableCell43.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrTableCell43.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
+ new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.Hours")});
+ this.xrTableCell43.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.xrTableCell43.Name = "xrTableCell43";
+ this.xrTableCell43.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell43.StylePriority.UseBorderColor = false;
+ this.xrTableCell43.StylePriority.UseBorders = false;
+ this.xrTableCell43.StylePriority.UseFont = false;
+ this.xrTableCell43.StylePriority.UsePadding = false;
+ this.xrTableCell43.StylePriority.UseTextAlignment = false;
+ this.xrTableCell43.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell43.TextFormatString = "{0:0.##}";
+ this.xrTableCell43.Weight = 0.21897435287973505D;
+ //
+ // xrTableCell44
+ //
+ this.xrTableCell44.BorderColor = System.Drawing.Color.DarkGray;
+ this.xrTableCell44.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrTableCell44.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
+ new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.HourlyRate")});
+ this.xrTableCell44.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.xrTableCell44.Name = "xrTableCell44";
+ this.xrTableCell44.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell44.StylePriority.UseBorderColor = false;
+ this.xrTableCell44.StylePriority.UseBorders = false;
+ this.xrTableCell44.StylePriority.UseFont = false;
+ this.xrTableCell44.StylePriority.UsePadding = false;
+ this.xrTableCell44.StylePriority.UseTextAlignment = false;
+ this.xrTableCell44.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell44.TextFormatString = "{0:0.00}";
+ this.xrTableCell44.Weight = 0.32304042308628289D;
+ //
+ // xrTableCell47
+ //
+ this.xrTableCell47.BorderColor = System.Drawing.Color.DarkGray;
+ this.xrTableCell47.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrTableCell47.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
+ new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.GrossAmount")});
+ this.xrTableCell47.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.xrTableCell47.Name = "xrTableCell47";
+ this.xrTableCell47.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell47.StylePriority.UseBorderColor = false;
+ this.xrTableCell47.StylePriority.UseBorders = false;
+ this.xrTableCell47.StylePriority.UseFont = false;
+ this.xrTableCell47.StylePriority.UsePadding = false;
+ this.xrTableCell47.StylePriority.UseTextAlignment = false;
+ this.xrTableCell47.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell47.Weight = 0.63978025562616325D;
+ //
+ // lblRechnungstext
+ //
+ this.lblRechnungstext.BackColor = System.Drawing.Color.Transparent;
+ this.lblRechnungstext.CanShrink = true;
+ this.lblRechnungstext.Font = new DevExpress.Drawing.DXFont("Calibri", 8F);
+ this.lblRechnungstext.LocationFloat = new DevExpress.Utils.PointFloat(425F, 249.375F);
+ this.lblRechnungstext.Multiline = true;
+ this.lblRechnungstext.Name = "lblRechnungstext";
+ this.lblRechnungstext.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.lblRechnungstext.SizeF = new System.Drawing.SizeF(225F, 20F);
+ this.lblRechnungstext.StylePriority.UseBackColor = false;
+ this.lblRechnungstext.StylePriority.UseFont = false;
+ this.lblRechnungstext.Text = "[InvoiceDate]_[InvoiceNumber]_Erstgespräche";
+ this.lblRechnungstext.Visible = false;
+ this.lblRechnungstext.WordWrap = false;
+ //
+ // xrTable5
+ //
+ this.xrTable5.LocationFloat = new DevExpress.Utils.PointFloat(0F, 382.4167F);
+ this.xrTable5.Name = "xrTable5";
+ this.xrTable5.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
+ this.xrTableRow23});
+ this.xrTable5.SizeF = new System.Drawing.SizeF(676.8331F, 25F);
+ //
+ // xrTableRow23
+ //
+ this.xrTableRow23.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
+ this.xrTableCell37,
+ this.xrTableCell35,
+ this.xrTableCell33,
+ this.xrTableCell34});
+ this.xrTableRow23.Name = "xrTableRow23";
+ this.xrTableRow23.Weight = 1D;
+ //
+ // xrTableCell37
+ //
+ this.xrTableCell37.BackColor = System.Drawing.Color.Transparent;
+ this.xrTableCell37.BorderColor = System.Drawing.Color.Black;
+ this.xrTableCell37.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
+ this.xrTableCell37.Name = "xrTableCell37";
+ this.xrTableCell37.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell37.StylePriority.UseBackColor = false;
+ this.xrTableCell37.StylePriority.UseBorderColor = false;
+ this.xrTableCell37.StylePriority.UseBorders = false;
+ this.xrTableCell37.StylePriority.UsePadding = false;
+ this.xrTableCell37.StylePriority.UseTextAlignment = false;
+ this.xrTableCell37.Text = "Name des Kindes";
+ this.xrTableCell37.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
+ this.xrTableCell37.Weight = 1.0092621277023515D;
+ //
+ // xrTableCell35
+ //
+ this.xrTableCell35.BackColor = System.Drawing.Color.Transparent;
+ this.xrTableCell35.BorderColor = System.Drawing.Color.Black;
+ this.xrTableCell35.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
+ this.xrTableCell35.Name = "xrTableCell35";
+ this.xrTableCell35.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell35.StylePriority.UseBackColor = false;
+ this.xrTableCell35.StylePriority.UseBorderColor = false;
+ this.xrTableCell35.StylePriority.UseBorders = false;
+ this.xrTableCell35.StylePriority.UsePadding = false;
+ this.xrTableCell35.StylePriority.UseTextAlignment = false;
+ this.xrTableCell35.Text = "Menge";
+ this.xrTableCell35.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell35.Weight = 0.21897437545853085D;
+ //
+ // xrTableCell33
+ //
+ this.xrTableCell33.BackColor = System.Drawing.Color.Transparent;
+ this.xrTableCell33.BorderColor = System.Drawing.Color.Black;
+ this.xrTableCell33.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
+ this.xrTableCell33.Name = "xrTableCell33";
+ this.xrTableCell33.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell33.StylePriority.UseBackColor = false;
+ this.xrTableCell33.StylePriority.UseBorderColor = false;
+ this.xrTableCell33.StylePriority.UseBorders = false;
+ this.xrTableCell33.StylePriority.UsePadding = false;
+ this.xrTableCell33.StylePriority.UseTextAlignment = false;
+ this.xrTableCell33.Text = "Preis";
+ this.xrTableCell33.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell33.Weight = 0.32304050244890559D;
+ //
+ // xrTableCell34
+ //
+ this.xrTableCell34.BackColor = System.Drawing.Color.Transparent;
+ this.xrTableCell34.BorderColor = System.Drawing.Color.Black;
+ this.xrTableCell34.Borders = DevExpress.XtraPrinting.BorderSide.Bottom;
+ this.xrTableCell34.Name = "xrTableCell34";
+ this.xrTableCell34.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell34.StylePriority.UseBackColor = false;
+ this.xrTableCell34.StylePriority.UseBorderColor = false;
+ this.xrTableCell34.StylePriority.UseBorders = false;
+ this.xrTableCell34.StylePriority.UsePadding = false;
+ this.xrTableCell34.StylePriority.UseTextAlignment = false;
+ this.xrTableCell34.Text = "Gesamt";
+ this.xrTableCell34.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell34.Weight = 0.63923999693139366D;
+ //
+ // ReportFooter
+ //
+ this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
+ this.xrLabel4,
+ this.xrLabel6,
+ this.xrTable2,
+ this.xrTable3,
+ this.xrLabel7,
+ this.xrRichText2,
+ this.xrLabel9,
+ this.xrLabel10});
+ this.ReportFooter.HeightF = 381.7499F;
+ this.ReportFooter.Name = "ReportFooter";
+ //
+ // xrLabel4
+ //
+ this.xrLabel4.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrLabel4.LocationFloat = new DevExpress.Utils.PointFloat(0F, 90.625F);
+ 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(642F, 73.9583F);
+ this.xrLabel4.StylePriority.UseFont = false;
+ this.xrLabel4.Text = "Zahlbar nach Erhalt der Rechnung.\r\n\r\nIch bedanke mich für das Vertrauen und freue" +
+ " mich auf die weitere Zusammenarbeit.";
+ //
+ // xrLabel6
+ //
+ this.xrLabel6.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrLabel6.LocationFloat = new DevExpress.Utils.PointFloat(0F, 178.125F);
+ this.xrLabel6.Name = "xrLabel6";
+ this.xrLabel6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrLabel6.SizeF = new System.Drawing.SizeF(225F, 17F);
+ this.xrLabel6.StylePriority.UseFont = false;
+ this.xrLabel6.Text = "Lyvie Kupfer";
+ //
+ // xrTable2
+ //
+ this.xrTable2.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.xrTable2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 43.75F);
+ this.xrTable2.Name = "xrTable2";
+ this.xrTable2.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
+ this.xrTableRow2,
+ this.xrTableRow3});
+ this.xrTable2.SizeF = new System.Drawing.SizeF(650F, 26F);
+ this.xrTable2.StylePriority.UseFont = false;
+ //
+ // xrTableRow2
+ //
+ this.xrTableRow2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
+ this.xrTableCell2});
+ this.xrTableRow2.Name = "xrTableRow2";
+ this.xrTableRow2.Weight = 0.38095238095238093D;
+ //
+ // xrTableCell2
+ //
+ this.xrTableCell2.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
+ new DevExpress.XtraReports.UI.XRBinding("Text", null, "Notice")});
+ this.xrTableCell2.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrTableCell2.Name = "xrTableCell2";
+ this.xrTableCell2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrTableCell2.StylePriority.UseFont = false;
+ this.xrTableCell2.StylePriority.UsePadding = false;
+ this.xrTableCell2.Text = "xrTableCell1";
+ this.xrTableCell2.Weight = 3D;
+ //
+ // xrTableRow3
+ //
+ this.xrTableRow3.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
+ this.xrTableCell3});
+ this.xrTableRow3.Name = "xrTableRow3";
+ this.xrTableRow3.Weight = 0.23809523809523808D;
+ //
+ // xrTableCell3
+ //
+ this.xrTableCell3.Name = "xrTableCell3";
+ this.xrTableCell3.Weight = 3D;
+ //
+ // xrTable3
+ //
+ this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
+ this.xrTable3.Name = "xrTable3";
+ this.xrTable3.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
+ this.xrTableRow4});
+ this.xrTable3.SizeF = new System.Drawing.SizeF(676.833F, 25F);
+ //
+ // xrTableRow4
+ //
+ this.xrTableRow4.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
+ this.xrTableCell5,
+ this.xrTableCell6});
+ this.xrTableRow4.Name = "xrTableRow4";
+ this.xrTableRow4.Weight = 1D;
+ //
+ // xrTableCell5
+ //
+ this.xrTableCell5.BackColor = System.Drawing.Color.Gainsboro;
+ this.xrTableCell5.BorderColor = System.Drawing.Color.DarkGray;
+ this.xrTableCell5.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrTableCell5.Name = "xrTableCell5";
+ this.xrTableCell5.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell5.StylePriority.UseBackColor = false;
+ this.xrTableCell5.StylePriority.UseBorderColor = false;
+ this.xrTableCell5.StylePriority.UseBorders = false;
+ this.xrTableCell5.StylePriority.UsePadding = false;
+ this.xrTableCell5.StylePriority.UseTextAlignment = false;
+ this.xrTableCell5.Text = "Insgesamt";
+ this.xrTableCell5.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
+ this.xrTableCell5.Weight = 1.5512768424810401D;
+ //
+ // xrTableCell6
+ //
+ this.xrTableCell6.BackColor = System.Drawing.Color.Gainsboro;
+ this.xrTableCell6.BorderColor = System.Drawing.Color.DarkGray;
+ this.xrTableCell6.Borders = DevExpress.XtraPrinting.BorderSide.None;
+ this.xrTableCell6.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
+ new DevExpress.XtraReports.UI.XRBinding("Text", null, "GrossClaim")});
+ this.xrTableCell6.Name = "xrTableCell6";
+ this.xrTableCell6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
+ this.xrTableCell6.StylePriority.UseBackColor = false;
+ this.xrTableCell6.StylePriority.UseBorderColor = false;
+ this.xrTableCell6.StylePriority.UseBorders = false;
+ this.xrTableCell6.StylePriority.UsePadding = false;
+ this.xrTableCell6.StylePriority.UseTextAlignment = false;
+ this.xrTableCell6.Text = "Gesamt";
+ this.xrTableCell6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
+ this.xrTableCell6.Weight = 0.63923996534830252D;
+ //
+ // xrLabel7
+ //
+ this.xrLabel7.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrLabel7.LocationFloat = new DevExpress.Utils.PointFloat(0F, 245.4166F);
+ this.xrLabel7.Name = "xrLabel7";
+ this.xrLabel7.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrLabel7.SizeF = new System.Drawing.SizeF(225F, 17F);
+ this.xrLabel7.StylePriority.UseFont = false;
+ this.xrLabel7.Text = "Beiliegend:";
+ //
+ // xrRichText2
+ //
+ this.xrRichText2.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrRichText2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 280.0416F);
+ this.xrRichText2.Name = "xrRichText2";
+ this.xrRichText2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrRichText2.SerializableRtfString = resources.GetString("xrRichText2.SerializableRtfString");
+ this.xrRichText2.SizeF = new System.Drawing.SizeF(225F, 23F);
+ this.xrRichText2.StylePriority.UseFont = false;
+ //
+ // xrLabel9
+ //
+ this.xrLabel9.Font = new DevExpress.Drawing.DXFont("Calibri", 12F);
+ this.xrLabel9.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(31)))), ((int)(((byte)(73)))), ((int)(((byte)(125)))));
+ this.xrLabel9.LocationFloat = new DevExpress.Utils.PointFloat(0F, 328.3333F);
+ this.xrLabel9.Name = "xrLabel9";
+ this.xrLabel9.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrLabel9.SizeF = new System.Drawing.SizeF(468.75F, 17F);
+ this.xrLabel9.StylePriority.UseFont = false;
+ this.xrLabel9.StylePriority.UseForeColor = false;
+ this.xrLabel9.Text = "Diese Rechnung ist gem. § 4 Abs. 14 a UStG umsatzsteuerbefreit.";
+ //
+ // xrLabel10
+ //
+ this.xrLabel10.Font = new DevExpress.Drawing.DXFont("calibri", 12F, ((DevExpress.Drawing.DXFontStyle)((DevExpress.Drawing.DXFontStyle.Bold | DevExpress.Drawing.DXFontStyle.Italic))));
+ this.xrLabel10.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(129)))), ((int)(((byte)(129)))), ((int)(((byte)(129)))));
+ this.xrLabel10.LocationFloat = new DevExpress.Utils.PointFloat(0F, 364.7499F);
+ this.xrLabel10.Name = "xrLabel10";
+ this.xrLabel10.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
+ this.xrLabel10.SizeF = new System.Drawing.SizeF(676.8331F, 17F);
+ this.xrLabel10.StylePriority.UseFont = false;
+ this.xrLabel10.StylePriority.UseForeColor = false;
+ this.xrLabel10.Text = "Yayatoo, Praxis für Heilpädagogik und systemische Beratung Iban: DE89 6905 0001 0" +
+ "026 6450 10";
+ //
+ // bindingSource1
+ //
+ this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServiceInvoiceRO);
+ //
+ // Sammelrechnung
+ //
+ this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {
+ this.Detail,
+ this.ReportHeader,
+ this.topMarginBand1,
+ this.bottomMarginBand1,
+ this.Page1,
+ this.DetailReport,
+ this.ReportFooter});
+ this.DataSource = this.bindingSource1;
+ this.ExportOptions.PrintPreview.DefaultFileName = "Spitzabrechnung";
+ this.Font = new DevExpress.Drawing.DXFont("Verdana", 10F);
+ this.FormattingRuleSheet.AddRange(new DevExpress.XtraReports.UI.FormattingRule[] {
+ this.ruleRateFactorNull});
+ this.Margins = new DevExpress.Drawing.DXMargins(75F, 75F, 157.5F, 50F);
+ this.PageHeight = 1169;
+ 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.xrTable6)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable5)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrTable3)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this)).EndInit();
+
+ }
+
+
+ private DevExpress.XtraReports.UI.DetailBand Detail;
+ private System.Windows.Forms.BindingSource bindingSource1;
+ private DevExpress.XtraReports.UI.ReportHeaderBand ReportHeader;
+ private DevExpress.XtraReports.UI.FormattingRule ruleRateFactorNull;
+ private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1;
+ private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1;
+ private DevExpress.XtraReports.UI.GroupHeaderBand Page1;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel2;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel8;
+ private DevExpress.XtraReports.UI.XRLabel lblAbrechnungszeitraum;
+ private DevExpress.XtraReports.UI.DetailReportBand DetailReport;
+ private DevExpress.XtraReports.UI.DetailBand Detail1;
+ private DevExpress.XtraReports.UI.DetailReportBand DetailReport2;
+ private DevExpress.XtraReports.UI.DetailBand Detail3;
+ private DevExpress.XtraReports.UI.XRTable xrTable6;
+ private DevExpress.XtraReports.UI.XRTableRow xrTableRow25;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell42;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell43;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell44;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell47;
+ private DevExpress.XtraReports.UI.XRLabel lblAdresse;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel24;
+ private DevExpress.XtraReports.UI.XRLabel lblRechnungstext;
+ private DevExpress.XtraReports.UI.XRTable xrTable5;
+ private DevExpress.XtraReports.UI.XRTableRow xrTableRow23;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell37;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell35;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell33;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell34;
+ private DevExpress.XtraReports.UI.ReportFooterBand ReportFooter;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel4;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel6;
+ private DevExpress.XtraReports.UI.XRTable xrTable2;
+ private DevExpress.XtraReports.UI.XRTableRow xrTableRow2;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell2;
+ private DevExpress.XtraReports.UI.XRTableRow xrTableRow3;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell3;
+ private DevExpress.XtraReports.UI.XRTable xrTable3;
+ private DevExpress.XtraReports.UI.XRTableRow xrTableRow4;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell5;
+ private DevExpress.XtraReports.UI.XRTableCell xrTableCell6;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel7;
+ private DevExpress.XtraReports.UI.XRRichText xrRichText2;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel9;
+ private DevExpress.XtraReports.UI.XRLabel xrLabel10;
+ }
+}
diff --git a/ReportImp/LyvieKupfer/CollectiveBillingReport.cs b/ReportImp/LyvieKupfer/CollectiveBillingReport.cs
new file mode 100644
index 000000000..dcbce79f2
--- /dev/null
+++ b/ReportImp/LyvieKupfer/CollectiveBillingReport.cs
@@ -0,0 +1,91 @@
+using System;
+using System.Text;
+using BeWo.Report;
+using BeWo.Report.ReportObjects;
+using BS.Shared.Core;
+using DevExpress.XtraReports.UI;
+
+namespace LyvieKupfer
+{
+ [IDSpecificClass(Identifier = "Sammelrechnung")]
+ public partial class Sammelrechnung : XtraReport, IBeWoReport
+ {
+ public Sammelrechnung()
+ {
+ this.InitializeComponent();
+ }
+
+ // Für die Erstgespräche legt sie einen komplett leeren Hilfeplan an und kann die Beratung ganz separat irgendwelcher Bewilligungen abrechnen
+ // Also alle Hilfen mit Bewilligungsdaten etc entfernt
+ public void SetReportDataSource(ServiceInvoiceRO pRO)
+ {
+ DateTime start = pRO.AccountingPeriodStart;
+ DateTime end = pRO.AccountingPeriodEnd;
+ decimal hours = 0;
+
+ if (pRO.ServiceInvoicePeriods != null)
+ {
+ foreach (var sip in pRO.ServiceInvoicePeriods)
+ {
+ if (sip.ServiceInvoiceItems != null)
+ {
+ foreach (var ii in sip.ServiceInvoiceItems)
+ {
+ hours += ii.Hours.Value;
+ }
+ }
+ }
+ }
+
+ lblAbrechnungszeitraum.Text = String.Format("Für den Zeitraum vom {0:d. MMMM yyyy} bis zum {1:dd. MMMM yyyy} berechne ich Ihnen {2:0.##} Stunden " +
+ "heilpädagogische Leistungen für die Erstgespräche.", start, end, hours);
+
+ SetzeAdresse(pRO);
+
+ this.bindingSource1.DataSource = pRO;
+ }
+
+ private void SetzeAdresse(ServiceInvoiceRO pRO)
+ {
+ StringBuilder sb = new StringBuilder();
+ if (!String.IsNullOrEmpty(pRO.RecipientOrganisation) && pRO.RecipientOrganisation.ToLower() != "selbstzahler")
+ {
+ if (pRO.RecipientOrganisation.Contains("Erstkontakt Landratsamt"))
+ {
+ pRO.RecipientOrganisation = "Landratsamt Bodenseekreis";
+ }
+ sb.AppendLine(pRO.RecipientOrganisation);
+ }
+ //if (!String.IsNullOrEmpty(pRO.RecipientAddressLine1))
+ //{
+ // sb.AppendLine(pRO.RecipientAddressLine1);
+ //}
+ if (!String.IsNullOrEmpty(pRO.RecipientContactPerson))
+ {
+ sb.AppendLine(pRO.RecipientContactPerson);
+ }
+ if (!String.IsNullOrEmpty(pRO.RecipientDivision) && !String.IsNullOrEmpty(pRO.RecipientOrganisation) && pRO.RecipientOrganisation.ToLower() != "selbstzahler")
+ {
+ sb.AppendLine(pRO.RecipientDivision);
+ }
+ if (!String.IsNullOrEmpty(pRO.RecipientPoBox))
+ {
+ sb.AppendLine(pRO.RecipientPoBox);
+ }
+ else if (!String.IsNullOrEmpty(pRO.RecipientStreet))
+ {
+ sb.AppendLine(pRO.RecipientStreet);
+ }
+ if (!String.IsNullOrEmpty(pRO.RecipientPostCodeAndTown))
+ {
+ sb.AppendLine(pRO.RecipientPostCodeAndTown);
+ }
+ lblAdresse.Text = sb.ToString();
+ }
+
+ private void ChangeName(object sender, EventArgs e)
+ {
+ PrintingSystem.Document.Name = String.Format("{0}", lblRechnungstext.Text);
+ }
+ }
+}
\ No newline at end of file
diff --git a/ReportImp/LyvieKupfer/CollectiveBillingReport.resx b/ReportImp/LyvieKupfer/CollectiveBillingReport.resx
new file mode 100644
index 000000000..2d6364fb2
--- /dev/null
+++ b/ReportImp/LyvieKupfer/CollectiveBillingReport.resx
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ewBcAHIAdABmADEAXABkAGUAZgBmADAAewBcAGYAbwBuAHQAdABiAGwAewBcAGYAMAAgAEMAYQBsAGkAYgByAGkAOwB9AHsAXABmADEAIABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgA7AH0AfQB7AFwAYwBvAGwAbwByAHQAYgBsACAAOwBcAHIAZQBkADAAXABnAHIAZQBlAG4AMABcAGIAbAB1AGUAMAAgADsAXAByAGUAZAAwAFwAZwByAGUAZQBuADAAXABiAGwAdQBlADIANQA1ACAAOwB9AHsAXAAqAFwAZABlAGYAYwBoAHAAIABcAGYAMQBcAGYAcwAyADQAfQB7AFwAKgBcAGQAZQBmAHAAYQBwACAAXAB3AGkAZABjAHQAbABwAGEAcgB9AHsAXABzAHQAeQBsAGUAcwBoAGUAZQB0ACAAewBcAHEAbABcAGYAMQBcAGYAcwAyADQAIABOAG8AcgBtAGEAbAA7AH0AewBcACoAXABjAHMAMQBcAGYAMQBcAGYAcwAyADQAXABjAGYAMQAgAEQAZQBmAGEAdQBsAHQAIABQAGEAcgBhAGcAcgBhAHAAaAAgAEYAbwBuAHQAOwB9AHsAXAAqAFwAYwBzADIAXABzAGIAYQBzAGUAZABvAG4AMQBcAGYAMQBcAGYAcwAyADQAXABjAGYAMQAgAEwAaQBuAGUAIABOAHUAbQBiAGUAcgA7AH0AewBcACoAXABjAHMAMwBcAGYAMQBcAGYAcwAyADQAXAB1AGwAXABjAGYAMgAgAEgAeQBwAGUAcgBsAGkAbgBrADsAfQB7AFwAKgBcAHQAcwA0AFwAdABzAHIAbwB3AGQAXABmADEAXABmAHMAMgA0AFwAcQBsAFwAdABzAGMAZQBsAGwAcABhAGQAZABmAGwAMwBcAHQAcwBjAGUAbABsAHAAYQBkAGQAbAAxADAAOABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBiADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAcgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZAByADEAMAA4AFwAdABzAGMAZQBsAGwAcABhAGQAZABmAHQAMwBcAHQAcwB2AGUAcgB0AGEAbAB0AFwAYwBsAHQAeABsAHIAdABiACAATgBvAHIAbQBhAGwAIABUAGEAYgBsAGUAOwB9AHsAXAAqAFwAdABzADUAXAB0AHMAcgBvAHcAZABcAHMAYgBhAHMAZQBkAG8AbgA0AFwAZgAxAFwAZgBzADIANABcAHEAbABcAHQAcgBiAHIAZAByAHQAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAbABcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgBiAFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcgBiAHIAZAByAHIAXABiAHIAZAByAHMAXABiAHIAZAByAHcAMQAwAFwAdAByAGIAcgBkAHIAaABcAGIAcgBkAHIAcwBcAGIAcgBkAHIAdwAxADAAXAB0AHIAYgByAGQAcgB2AFwAYgByAGQAcgBzAFwAYgByAGQAcgB3ADEAMABcAHQAcwBjAGUAbABsAHAAYQBkAGQAZgBsADMAXAB0AHMAYwBlAGwAbABwAGEAZABkAGwAMQAwADgAXAB0AHMAYwBlAGwAbABwAGEAZABkAGYAcgAzAFwAdABzAGMAZQBsAGwAcABhAGQAZAByADEAMAA4AFwAdABzAHYAZQByAHQAYQBsAHQAXABjAGwAdAB4AGwAcgB0AGIAIABUAGEAYgBsAGUAIABTAGkAbQBwAGwAZQAgADEAOwB9AH0AewBcACoAXABsAGkAcwB0AG8AdgBlAHIAcgBpAGQAZQB0AGEAYgBsAGUAfQBcAG4AbwB1AGkAYwBvAG0AcABhAHQAXABoAHQAbQBhAHUAdABzAHAAXABzAHAAbAB5AHQAdwBuAGkAbgBlAFwAYQBsAG4AdABiAGwAaQBuAGQAXABlAHgAcABzAGgAcgB0AG4AXABzAHAAbAB0AHAAZwBwAGEAcgBcAG4AbwBnAHIAbwB3AGEAdQB0AG8AZgBpAHQAXAB1AHQAaQBuAGwAXABuAG8AYgByAGsAdwByAHAAdABiAGwAXABmAHQAbgBsAHkAdAB3AG4AaQBuAGUAXABuAG8AdABjAHYAYQBzAHAAXABkAG4AdABiAGwAbgBzAGIAZABiAFwAbgBlAHcAdABiAGwAcwB0AHkAcgB1AGwAcwBcAGYAbwByAG0AcwBoAGEAZABlAFwAcABhAHIAZABcAHAAbABhAGkAbgBcAHEAbABcAHcAaQBkAGMAdABsAHAAYQByAHsAXABmAHMAMgA0AFwAYwBmADEAIABcAHUAOAAyADIANgBcACcAOQA1ACAAXAB0AGEAYgAgAH0AewBcAGYAcwAyADQAXABsAGEAbgBnADEAMAAzADEAXABsAGEAbgBnAGYAZQAxADAAMwAxAFwAYwBmADEAIABFAHIAawBsAFwAdQAyADIAOABcACcAZQA0AHIAdQBuAGcAZQBuAH0AXABmAHMAMgA0AFwAYwBmADEAXABwAGEAcgB9AA==
+
+
\ No newline at end of file
diff --git a/ReportImp/LyvieKupfer/Invoicing/CollectiveInvoiceCreation.cs b/ReportImp/LyvieKupfer/Invoicing/CollectiveInvoiceCreation.cs
new file mode 100644
index 000000000..56b54fb3e
--- /dev/null
+++ b/ReportImp/LyvieKupfer/Invoicing/CollectiveInvoiceCreation.cs
@@ -0,0 +1,113 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using BeWo.Data.Access;
+using BeWo.Data.Entities;
+using BeWo.Report.ReportObjects;
+using BeWo.Service.DCEntityMapper;
+using BeWo.Service.Invoicing;
+using BeWo.Service.Plugins;
+using BS.Shared;
+using BS.Shared.Core;
+using BS.Shared.DataContracts;
+using BS.Shared.DataContracts.Compact;
+using BS.Shared.Extensions;
+using BS.Shared.Services;
+
+namespace LyvieKupfer.Invoicing
+{
+ public class CollectiveInvoiceCreation : InvoiceCreation
+ {
+ // Für die Erstgespräche legt sie einen komplett leeren Hilfeplan an und kann die Beratung ganz separat irgendwelcher Bewilligungen abrechnen
+ // Also alle Hilfen mit Bewilligungsdaten etc entfernt
+ public override void SetInvoiceId(ServiceInvoice invoice)
+ {
+ invoice.InvoiceBase.InvoiceId = "Sammelrechnung";
+ invoice.InvoiceBase.InvoiceTypeText = "Sammelrechnung";
+ }
+
+ public override ServiceInvoice CreateCollectiveBilling(CostBearer costBearer, DateTimeSpan invoicePeriod, Dictionary> supportConcepts2ServiceRecords)
+ {
+ var invoice = new ServiceInvoice();
+ var newDict = new Dictionary>();
+
+ foreach (var sc2sr in supportConcepts2ServiceRecords)
+ {
+ if (!sc2sr.Key.IsDeleted || !sc2sr.Key.IsArchived) // alle unbewilligten HPs
+ {
+ newDict.Add(sc2sr.Key, sc2sr.Value);
+ }
+ }
+
+ SetRecipientInformation(invoice, costBearer);
+ SetSenderInformation(invoice);
+ SetInvoiceBaseData(0, invoice, costBearer, invoicePeriod, newDict.Keys.ToList());
+ SetCollectiveBillingBaseData(0, invoice, costBearer, invoicePeriod, newDict);
+ SetCollectiveBillingServiceInvoicePeriods(invoice, invoicePeriod, newDict);
+ SetServiceInvoicePeriodAmounts(invoice);
+
+ // Spitzabrechnung
+ if (invoicePeriod == null)
+ {
+ SetAmountAdvancePayments(invoice);
+ }
+ return invoice;
+ }
+
+ public override void SetServiceInvoicePeriods(ServiceInvoice invoice, CostBearer2SupportConcept costBearer2SupportConcept, DateTimeSpan invoicePeriod, List serviceRecords)
+ {
+ var invoiceAccountingPeriodSpan = new DateTimeSpan
+ {
+ StartDateTime = invoice.InvoiceBase.AccountingPeriodStart.Value,
+ EndDateTime = invoice.InvoiceBase.AccountingPeriodEnd.Value
+ };
+
+ foreach (SupportConceptApprovalPeriod iPeriod in costBearer2SupportConcept.ApprovalPeriodList)
+ {
+ SupportConceptApprovalPeriodDC approvalPeriodDC = MapperFactory.SupportConceptApprovalPeriodDC_SupportConceptApprovalPeriod.MapToNewDC(iPeriod);
+ //if (approvalPeriodDC.Span.EndDateTime < invoiceAccountingPeriodSpan.StartDateTime || approvalPeriodDC.Span.StartDateTime > invoiceAccountingPeriodSpan.EndDate)
+ //{
+ // continue;
+ //}
+
+ ServiceInvoicePeriod serviceInvoicePeriod = CreateServiceInvoicePeriod(approvalPeriodDC, invoiceAccountingPeriodSpan);
+ serviceInvoicePeriod.SupportConceptApprovalPeriod = iPeriod;
+ serviceInvoicePeriod.Customer = costBearer2SupportConcept.SupportConcept.Customer;
+
+ CostBearer costBearer = costBearer2SupportConcept.CostBearer;
+ List costRates = MapperFactory.CostRatePeriodDC_CostRatePeriod.MapToNewDCs(costBearer.CostRatePeriods);
+
+ CostRatePeriodDC serviceUnit = costRates.GetCostRatePeriodForDate(CostRatePeriodType.MinutesPerServiceUnit, DateTime.Now);
+ serviceInvoicePeriod.ServiceUnitName = serviceUnit.UnitName;
+
+ Calculations calc = PluginLoader.FindClass(_SpecificID) ?? Calculations.GetInstance(_SpecificID);
+
+ decimal amountPerUnit;
+ decimal unitCount;
+
+ serviceInvoicePeriod.ApprovedFixedAmount = calc.GetApprovedFixedAmountForPeriod(approvalPeriodDC, serviceInvoicePeriod.Start.Value, serviceInvoicePeriod.End.Value, out amountPerUnit, out unitCount);
+
+ //if (!serviceInvoicePeriod.ApprovedFixedAmount.HasValue)
+ //{
+ // serviceInvoicePeriod.ApprovedHours = calc.GetApprovedHoursForPeriod(approvalPeriodDC,
+ // costRates,
+ // serviceInvoicePeriod.Start.Value,
+ // serviceInvoicePeriod.End.Value);
+ // if (serviceInvoicePeriod.ApprovedHours.HasValue)
+ // serviceInvoicePeriod.ApprovedBE = serviceUnit.GetHoursInBE(serviceInvoicePeriod.ApprovedHours.Value);
+
+ // serviceInvoicePeriod.ApprovedAmountDefaultHourlyRate = calc.GetApprovedAmountDefaultHourlyRateForPeriod(approvalPeriodDC,
+ // costRates,
+ // serviceInvoicePeriod.Start,
+ // serviceInvoicePeriod.End);
+ //}
+ SetInvoiceItems(invoice, serviceInvoicePeriod, approvalPeriodDC, costBearer2SupportConcept, invoicePeriod, serviceRecords);
+
+ //CheckMaxApprovedAmount(invoice, serviceInvoicePeriod, approvalPeriodDC, costBearer2SupportConcept, invoicePeriod, serviceRecords);
+
+ if (serviceInvoicePeriod.InvoiceItemList.Count > 0)
+ invoice.ServiceInvoicePeriodList.Add(serviceInvoicePeriod);
+ }
+ }
+ }
+}
diff --git a/ReportImp/LyvieKupfer/Invoicing/CustomInvoiceFactory.cs b/ReportImp/LyvieKupfer/Invoicing/CustomInvoiceFactory.cs
new file mode 100644
index 000000000..594ad83ae
--- /dev/null
+++ b/ReportImp/LyvieKupfer/Invoicing/CustomInvoiceFactory.cs
@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using BeWo.Service.Invoicing;
+using BS.Shared.DataContracts;
+using BS.Shared.DataContracts.Compact;
+
+namespace LyvieKupfer.Invoicing
+{
+ public class CustomInvoiceFactory : InvoiceFactory
+ {
+ public override InvoiceCreation CreateInvoiceCreator(string specificId, string tenant, Dictionary> supportConcepts2ServiceRecords)
+ {
+ foreach (var key in supportConcepts2ServiceRecords.Keys)
+ {
+ if (!String.IsNullOrEmpty(key.CostBearer) && key.CostBearer.Contains("Erstkontakt"))
+ {
+ return new CollectiveInvoiceCreation();
+ }
+ }
+ return new InvoiceCreation();
+ }
+ }
+}
diff --git a/ReportImp/LyvieKupfer/LyvieKupfer.csproj b/ReportImp/LyvieKupfer/LyvieKupfer.csproj
index d9c09cb60..a5ab8481c 100644
--- a/ReportImp/LyvieKupfer/LyvieKupfer.csproj
+++ b/ReportImp/LyvieKupfer/LyvieKupfer.csproj
@@ -56,6 +56,8 @@
+
+
Component
@@ -63,6 +65,12 @@
Quittierungsbeleg.cs
+
+ Component
+
+
+ CollectiveBillingReport.cs
+
Component
@@ -94,6 +102,10 @@
Quittierungsbeleg.cs
Designer
+
+ CollectiveBillingReport.cs
+ Designer
+
ServiceInvoiceReport.cs
Designer