SAP Knowledge Base Article - Preview

3453296 - Bank Usage "Remainder Exception" Stack Trace due to improper Time Period on Named Formula Group

Symptom

There is a stack trace on an employee's time sheet. The full stack trace can be found in the logs, with an example below.

With some deeper review, there is a Bank Usage that should be in use in that period for the employee, based on pay code usage on the time sheet, which is using more time than is remaining in the associated bank.

2020-06-19 11:21:39,041 com.workforcesoftware.Data.SingleAllCalculationData INFO [https-jsse-nio-10246-exec-2] [] 20.1.0.6 Calculating period:  employee_period_version=1058304711200;employee=1000597636772;asgnmt=1000597636774;PPEnd=2020-06-17;version=0
2020-06-19 11:21:39,108 com.workforcesoftware.Misc.ServerErrorLogger ERROR [https-jsse-nio-10246-exec-2] [] 20.1.0.6 Server error occurred - debug_error_log id: 1058341859196
{ASGNMT_ID=1000597636774, EMPLOYEE_ID=1000597636772, DISPLAY_EMPLOYEE=12345, PP_BEGIN=2020-06-04, CAUSE=java.lang.ClassCastException: com.workforcesoftware.Data.TimeSched.TimeSheet.Time_sheet_detail_split cannot be cast to com.workforcesoftware.Util.DateTime.WDate, SYS_VERSION=20.1.0.6, ASGNMT_DESCRIPTION=Description, EPV=1058304711200, PP_END=2020-06-17, LAST_NAME=LName, FIRST_NAME=FName, CALC_STAGE=WITHIN_PERIOD_BANK_PROCESSING, SIMPLE_MSG=Exception during calculation: java.lang.ClassCastException: com.workforcesoftware.Data.TimeSched.TimeSheet.Time_sheet_detail_split cannot be cast to com.workforcesoftware.Util.DateTime.WDate}
com.workforcesoftware.Calculation.CalculationStageException: Exception during calculation: java.lang.ClassCastException: com.workforcesoftware.Data.TimeSched.TimeSheet.Time_sheet_detail_split cannot be cast to com.workforcesoftware.Util.DateTime.WDate
	at com.workforcesoftware.Data.AllCalcDataManager.runOneCalcStage(AllCalcDataManager.java:1516)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.runCalcStagesAndHandleErrors(SingleAllCalcDataManager.java:2080)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.recalc(SingleAllCalcDataManager.java:2051)
	at com.workforcesoftware.Data.SingleAllCalculationData.recalc(SingleAllCalculationData.java:2551)
	at com.workforcesoftware.Data.AllCalculationData.recalc(AllCalculationData.java:779)
	at com.workforcesoftware.Data.AllCalculationData.recalc(AllCalculationData.java:769)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.recalcPeriodIfStale(SingleAllCalcDataManager.java:2349)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.attemptAllCalculationDataRecalc(SingleAllCalcDataManager.java:379)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.loadAllCalcDataByPeriod(SingleAllCalcDataManager.java:301)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.getLatestAllCalcData(SingleAllCalcDataManager.java:446)
	at com.workforcesoftware.Data.SingleAllCalcDataManager.getAllCalcData(SingleAllCalcDataManager.java:1045)
	at com.workforcesoftware.TimeEntry.AssignmentManager.getAllCalcData(AssignmentManager.java:556)
	at com.workforcesoftware.TimeEntry.AssignmentManager.getDiff(AssignmentManager.java:370)
	at com.workforcesoftware.TimeEntry.AssignmentManager.getTransactionResults(AssignmentManager.java:1304)
	at com.workforcesoftware.TimeEntry.AssignmentManager.recalcAndSaveTimesheets(AssignmentManager.java:803)
	at com.workforcesoftware.TimeEntry.TimeEntryManagerImpl.recalcWithOptionalSave(TimeEntryManagerImpl.java:303)
	at com.workforcesoftware.TimeEntry.TimeEntryManagerImpl.save(TimeEntryManagerImpl.java:248)
	at com.workforcesoftware.TimeEntry.TimeEntryManagerImpl.save(TimeEntryManagerImpl.java:234)
	at com.workforcesoftware.Jsp.TimeEntry.TimeEntryActionHandler.saveTransaction(TimeEntryActionHandler.java:999)
	at com.workforcesoftware.Jsp.TimeEntry.TimeEntryActionHandler.saveTimesheet(TimeEntryActionHandler.java:946)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.workforcesoftware.Jsp.Util.ActionHandler.doAction(ActionHandler.java:228)
	at com.workforcesoftware.ClientRequests.JspUtils.SimpleAction.doAction(SimpleAction.java:51)
	at com.workforcesoftware.ClientRequests.JspUtils.WActionBase.performNoSynchronize(WActionBase.java:731)
	at com.workforcesoftware.ClientRequests.JspUtils.WActionBase.handleNormalRequest(WActionBase.java:589)
	at com.workforcesoftware.ClientRequests.JspUtils.WActionBase.handleRequest(WActionBase.java:324)
	at com.workforcesoftware.ClientRequests.JspUtils.WActionBase.execute(WActionBase.java:192)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.ezest.util.TargetToSystemFeatureFilter.doFilter(TargetToSystemFeatureFilter.java:107)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.workforcesoftware.ClientRequests.WFServletFilter$1.execute(WFServletFilter.java:66)
	at com.workforcesoftware.runtime.ResourceTracker.executeThenRelease(ResourceTracker.java:187)
	at com.workforcesoftware.runtime.ResourceTracker.executeOperationAndReleaseResources(ResourceTracker.java:99)
	at com.workforcesoftware.ClientRequests.WFServletFilter.doFilter(WFServletFilter.java:57)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.workforcesoftware.ClientRequests.UIThemeFilter.doFilter(UIThemeFilter.java:58)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.workforcesoftware.ClientRequests.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:48)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.workforcesoftware.ClientRequests.P3PFilter.doFilter(P3PFilter.java:56)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at de.javakaffee.web.msm.RequestTrackingContextValve.invoke(RequestTrackingContextValve.java:99)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:528)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at de.javakaffee.web.msm.RequestTrackingHostValve.invoke(RequestTrackingHostValve.java:157)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:798)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:810)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassCastException: com.workforcesoftware.Data.TimeSched.TimeSheet.Time_sheet_detail_split cannot be cast to com.workforcesoftware.Util.DateTime.WDate
	at com.workforcesoftware.Calculation.CalcHelper$2.handle_DAY(CalcHelper.java:222)
	at com.workforcesoftware.Gen.Choice.Formula_eval_period.visit(Formula_eval_period.java:160)
	at com.workforcesoftware.Calculation.CalcHelper.getParameterValues(CalcHelper.java:206)
	at com.workforcesoftware.Calculation.CalcHelper.addExceptionData(CalcHelper.java:550)
	at com.workforcesoftware.Calculation.CalcHelper.addExceptionData(CalcHelper.java:595)
	at com.workforcesoftware.Calculation.CalcHelper.addToExceptionData(CalcHelper.java:529)
	at com.workforcesoftware.Calculation.CalcHelper.addSliceException(CalcHelper.java:461)
	at com.workforcesoftware.Calculation.CalcHelper.addSliceException(CalcHelper.java:452)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.processOneBankPool(WithinPeriodAccrualEvents.java:443)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.processBankUsage(WithinPeriodAccrualEvents.java:346)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.processUsageOnSlice(WithinPeriodAccrualEvents.java:168)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.processUsage(WithinPeriodAccrualEvents.java:157)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.processOneDay(WithinPeriodAccrualEvents.java:146)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.iterateThruDaysInPeriod(WithinPeriodAccrualEvents.java:132)
	at com.workforcesoftware.Calculation.WithinPeriodAccrualEvents.calculate(WithinPeriodAccrualEvents.java:110)
	at com.workforcesoftware.Calculation.CalcBase.calculateIfNeeded(CalcBase.java:90)
	at com.workforcesoftware.Data.AllCalcDataManager.runOneCalcStage(AllCalcDataManager.java:1485)
	... 76 more

UserID: WORKFORCE
When: 2020-06-19 11:21:39
Session: -1
Program Source: Server Request
Debug Error Log ID: 1058341859196


Read more...

Environment

SAP Absence & Leave Management by Workforce Software (All Versions)

Product

SAP Absence and Leave Management by WorkForce Software all versions

Keywords

KBA , XX-PART-WFR-ACT , SAP Absence & Leave Management (ACT) by Workforce Software , Problem

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.