diff --git a/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs b/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs index 5fc9d010a..c56c011c7 100644 --- a/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs +++ b/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs @@ -793,11 +793,11 @@ namespace BeWo.Report.ReportObjects protected virtual bool SchneideZuvieleAbwesenheitsstundenAb() { + // sorgt dafür dass bei Überschreitung des Tagessolls nicht die Abwesenheitszeit verwendet wird + // wenn auch Überschreitung Wochensoll möglich sein soll muss zusätzlich GetSollStundenForAbsenceTime angepasst werden return true; } - - protected virtual decimal? GetSollNachArbeitszeiten(Employee emp, DateTime start, DateTime ende) { if (BerechneSollNurBisZumAktuellenTag()) diff --git a/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs b/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs index d222fe558..64d646bbf 100644 --- a/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs +++ b/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs @@ -11,12 +11,26 @@ namespace AachenerLaienhelfer.Reporting { public class CustomMitarbeiterstundenkontoBerechnung : MitarbeiterstundenkontoBerechnung { + protected override bool SchneideZuvieleAbwesenheitsstundenAb() { return false; } - public override bool IstAnrechenbareAbsenceTime(AbsenceTime item) + public override decimal? GetSollStundenForAbsenceTime(MitarbeiterstundenkontoRO.EmployeeDetail ed, AbsenceTime at, DateTime datum) + { + if (at.AbsenceSpan.StartDateTime.Hour > 0 && at.AbsenceSpan.EndDateTime.Hour > 0) + { + var ts = at.AbsenceSpan.EndDateTime.Subtract(at.AbsenceSpan.StartDateTime); + return (decimal)ts.TotalHours; + } + else + { + return null; + } + } + + public override bool IstAnrechenbareAbsenceTime(AbsenceTime item) { if (item.AbsenceReason.Description.Contains("Überstunden") && item.AbsenceReason.Description.Contains("Abbau")) { diff --git a/ReportImp/DiakonischesWerkWesel/Properties/licenses.licx b/ReportImp/DiakonischesWerkWesel/Properties/licenses.licx index e69de29bb..d59547a61 100644 --- a/ReportImp/DiakonischesWerkWesel/Properties/licenses.licx +++ b/ReportImp/DiakonischesWerkWesel/Properties/licenses.licx @@ -0,0 +1 @@ +DevExpress.XtraReports.UI.XtraReport, DevExpress.XtraReports.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/ReportImp/DiakonischesWerkWesel/QuittierungsbelegMitDatum.cs b/ReportImp/DiakonischesWerkWesel/QuittierungsbelegMitDatum.cs index 1d44f8345..301893126 100644 --- a/ReportImp/DiakonischesWerkWesel/QuittierungsbelegMitDatum.cs +++ b/ReportImp/DiakonischesWerkWesel/QuittierungsbelegMitDatum.cs @@ -30,7 +30,7 @@ namespace DiakonischesWerkWesel if (sd.IsBillable || sd.ServiceCategory == "Fehlzeiten") { ServicesOverviewRO.CreateSignatureString(sd); - if (sd.ServiceCategory == "Fehlzeiten") + if (sd.ServiceCategory == "Fehlzeiten" || sd.ServiceDescription.Contains("Fehlkontakt")) sd.Notice5 = "F"; else if (sd.IsGroup) sd.Notice5 = "GR";