Looking for some quick input on something ProdCal related. We are having an issue since upgrading to 2024.2 where on occasion a job will generate in MRP without any dates and when you go to try and finite schedule it it throws the exception below
System.InvalidOperationException: Nullable object must have a value.
at System.Nullable`1.get_Value()
at Erp.Internal.ES.SchedEngine.mvOpSchedJobBwd(Nullable`1 PassedDueDate, Decimal`1 PassedDueHour) in C:\_releases\ERP\ERP11.3.200.5\Source\Server\Internal\ES\SchedEngine\SchedEngine.cs:line 17504
at Erp.Internal.ES.SchedEngine.processJob(Boolean isFirstProcess) in C:\_releases\ERP\ERP11.3.200.5\Source\Server\Internal\ES\SchedEngine\SchedEngine.cs:line 22350
at Erp.Internal.ES.SchedEngine.MoveJobItem(String ttScheduleEngineCompany, String ttScheduleEngineJobNum, Int32 ttScheduleEngineAssemblySeq, Int32 ttScheduleEngineOprSeq, Int32 ttScheduleEngineOpDtlSeq, Nullable`1 ttScheduleEngineStartDate, Int32 ttScheduleEngineStartTime, Nullable`1 ttScheduleEngineEndDate, Int32 ttScheduleEngineEndTime, Boolean ttScheduleEngineWhatIf, Boolean ttScheduleEngineFinite, String ttScheduleEngineSchedTypeCode, Boolean ttScheduleEngineOverrideMtlCon, Int32 OverRideHistDateSetting, Boolean ttScheduleEngineScheduleDir, Boolean il_surpressexceptions, Int32 ttScheduleEngineAllocNum, String& WarnLogTxt, Boolean ttScheduleEngineMinimizeWIP, Nullable`1 ipOverrideBounceDate, Boolean useLotExpiration) in C:\_releases\ERP\ERP11.3.200.5\Source\Server\Internal\ES\SchedEngine\SchedEngine.cs:line 14043
at Erp.Internal.ES.SchedEngine.MoveMRPJob(String ttScheduleEngineCompany, String ttScheduleEngineJobNum, Int32 ttScheduleEngineAssemblySeq, Int32 ttScheduleEngineOprSeq, Int32 ttScheduleEngineOpDtlSeq, Nullable`1 ttScheduleEngineStartDate, Int32 ttScheduleEngineStartTime, Nullable`1 ttScheduleEngineEndDate, Int32 ttScheduleEngineEndTime, Boolean ttScheduleEngineWhatIf, Boolean ttScheduleEngineFinite, String ttScheduleEngineSchedTypeCode, Boolean ttScheduleEngineOverrideMtlCon, Int32 OverRideHistDateSetting, Boolean ttScheduleEngineScheduleDir, Boolean il_surpressexceptions, Int64 instancetasknum, Int32 ttScheduleEngineAllocNum, Nullable`1 GlobalBounceDate, Boolean ttLogfile, String& WarnLogTxt, Boolean useLotExpiration) in C:\_releases\ERP\ERP11.3.200.5\Source\Server\Internal\ES\SchedEngine\SchedEngine.cs:line 14513 --- MoveMRPJob
Here are two MRP generated records that are both unfirm and what difference we are seeing that causes the issue.
Anyways support is telling me that our issue is split prod calendars, but
- First of all, if you have a resource available from say 6pm to 6am you have to split but itās not really split? orā¦?
- Second, we have been running this way since 9.05.602A without issue, soā¦ āweāve been lucky for 12 yearsā I donāt know about that
- Third, when I add 4pm and 5pm to the calendar below the dates generate in MRP correctly, but itās still a split calendar. (If I add 8, 9, 10, 11 dates donāt generate either. Itās all sorts of whack)
Iām just looking for validation that there shouldnāt be any issue with running a calendar split like this. The reality from a scheduling perspective is Epicor doesnāt support scheduling employees (cross shift issues) so really all we can do is constrain our machineās calendars to when we have employees roughly available to run them. Essentially due to employee constraint yes a 5 hour job could be scheduled for 12 and that would be unfortunately accurate. I wouldnāt want it to schedule it for 5 hours from a Gantt chart perspective.
Also has anyone else seen an uptick in this issue with 2024.2? I have seen this error many other times throughout the system over the years, but never in Job Entry and never consistently (avg 1-2 per week). Workaround is schedule it infinitely.