From 6a7b32ab320e87f8d5bfd65b149cb9191a9fa8cf Mon Sep 17 00:00:00 2001 From: HirschleM Date: Tue, 3 Feb 2026 15:34:35 +0100 Subject: [PATCH] MH: Vkm Hamm QB Bugfix --- .../VkmHamm/Mitarbeiterauslastung.designer.cs | 12 ++--- .../VkmHamm/Reports/VkmHammReportCreator.cs | 50 +++++++++++++++++++ ReportImp/VkmHamm/VkmHamm.csproj | 1 + 3 files changed, 57 insertions(+), 6 deletions(-) diff --git a/ReportImp/VkmHamm/Mitarbeiterauslastung.designer.cs b/ReportImp/VkmHamm/Mitarbeiterauslastung.designer.cs index 5e0c35401..ee66ceb13 100644 --- a/ReportImp/VkmHamm/Mitarbeiterauslastung.designer.cs +++ b/ReportImp/VkmHamm/Mitarbeiterauslastung.designer.cs @@ -59,6 +59,7 @@ namespace VkmHamm this.xrTableCell38 = new DevExpress.XtraReports.UI.XRTableCell(); this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell(); this.cellSollGesamt = new DevExpress.XtraReports.UI.XRTableCell(); + this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand(); this.lblMonat = new DevExpress.XtraReports.UI.XRLabel(); this.pageFooterBand1 = new DevExpress.XtraReports.UI.PageFooterBand(); @@ -73,7 +74,6 @@ namespace VkmHamm this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand(); this.fieldTotalSC = new DevExpress.XtraReports.UI.CalculatedField(); this.fieldTotalEmp = new DevExpress.XtraReports.UI.CalculatedField(); - this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); ((System.ComponentModel.ISupportInitialize)(this.xrTableDetail)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTableHeader)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit(); @@ -111,7 +111,7 @@ namespace VkmHamm this.xrLabel2.StyleName = "Title"; this.xrLabel2.StylePriority.UseFont = false; this.xrLabel2.Text = "Wochenstunden: [WeeklyTotalHoursByContract!0.00], FLS/Woche: [FLSTotalHoursByCont" + - "ract!0.00]. FLS/Monat: [FLSTotalMonthlyHoursByContract!0.00]"; + "ract!0.00] FLS/Monat: [FLSTotalMonthlyHoursByContract!0.00]"; // // xrLabel1 // @@ -349,6 +349,10 @@ namespace VkmHamm this.cellSollGesamt.Summary = xrSummary1; this.cellSollGesamt.Weight = 0.19992044692740521D; // + // bindingSource1 + // + this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.MitarbeiterauslastungRO); + // // ReportHeader // this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { @@ -469,10 +473,6 @@ namespace VkmHamm this.fieldTotalEmp.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal; this.fieldTotalEmp.Name = "fieldTotalEmp"; // - // bindingSource1 - // - this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.MitarbeiterauslastungRO); - // // Mitarbeiterauslastung // this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] { diff --git a/ReportImp/VkmHamm/Reports/VkmHammReportCreator.cs b/ReportImp/VkmHamm/Reports/VkmHammReportCreator.cs index b27d26be9..d73409364 100644 --- a/ReportImp/VkmHamm/Reports/VkmHammReportCreator.cs +++ b/ReportImp/VkmHamm/Reports/VkmHammReportCreator.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using System.Web; using System.Runtime.Remoting.Messaging; using System.Text; using BeWo.Data.Access; @@ -22,6 +23,55 @@ namespace VkmHamm { public class VkmHammReportCreator : DefaultReportCreator { + public override XtraReport CreateServiceOverviewReportForCustomers(IList customerOids, int month, int year, long? orgaOid, long? empOid, long? serviceCategoryOid, int startDay, int endDay, bool nurFehlende) + { + #region standard + var roList = new List(); + + foreach (var coid in customerOids) + { + var ro = ServicesOverviewRO.Create(coid, month, year, true, orgaOid ?? 0, empOid ?? 0, startDay, endDay, serviceCategoryOid); + + if (ro != null) + { + roList.Add(ro); + } + } + + QBSortOrderEnum sortOrder = QBSortOrderEnum.NachKlient; + + if (HttpContext.Current != null) + { + var so = HttpContext.Current.Request.Params["sortorder"]; + if (!String.IsNullOrWhiteSpace(so)) + { + sortOrder = (QBSortOrderEnum)(Int32.Parse(so)); + } + } + if (sortOrder == QBSortOrderEnum.NachHauptbetreuung) + { + roList = roList.OrderBy(r => r.MainAttendant).ToList(); + } + else + { + roList = roList.OrderBy(r => r.CustomerLastName + ", " + r.CustomerFirstName).ToList(); + } + + + if (roList.Count > 0) + { + long organisation = 0; + if (orgaOid.HasValue && orgaOid > 0) + { + organisation = orgaOid.Value; + } +#endregion + var rootReport = CreateServiceOverviewReportForROs(roList, organisation); + + return rootReport; + } + return new XtraReport(); + } public override XtraReport CreateServiceOverviewReportForROs(List roList, long orgaOid) { if (roList.Count > 0) diff --git a/ReportImp/VkmHamm/VkmHamm.csproj b/ReportImp/VkmHamm/VkmHamm.csproj index 1fa5b9815..265983630 100644 --- a/ReportImp/VkmHamm/VkmHamm.csproj +++ b/ReportImp/VkmHamm/VkmHamm.csproj @@ -60,6 +60,7 @@ +