SAP Knowledge Base Article - Public

2252672 - ERROR Undeclared Throwable Exception when launching comp or variable pay forms

Symptom

You launch compensation or variable pay forms.  Some forms will launch for some others won't and you will get an error message "This scheduled job failed to complete. For details, please contact SuccessFactors customer support.

java.lang.reflect.UndeclaredThrowableException".

In backend provisioning under manage jobs if you look at this job log you'll see errors like this:

: Trying to launch forms and only 4487 were created out of expected 8233 and getting the error: Full exception:com.successfactors.jobscheduler.ScheduledJobExecutionException: java.lang.reflect.UndeclaredThrowableException at com.successfactors.jobscheduler.jobimpl.SimpleJob.execute(SimpleJob.java:386) at sun.reflect.GeneratedMethodAccessor603.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.successfactors.perflog.PerfLogProxy.invoke(PerfLogProxy.java:121) at com.sun.proxy.$Proxy293.execute(Unknown Source) at com.successfactors.schedulerservice.JobExecutionProxy.execute(JobExecutionProxy.java:232) at com.successfactors.schedulerservice.workermgmt.WorkerThread$ExecuteJob.execute(WorkerThread.java:182) at com.successfactors.schedulerservice.workermgmt.WorkerThread$ExecuteJob.access$2(WorkerThread.java:178) at com.successfactors.schedulerservice.workermgmt.WorkerThread.run(WorkerThread.java:79) Caused by: java.lang.reflect.UndeclaredThrowableException at com.sun.proxy.$Proxy73.execute(Unknown Source) at com.successfactors.sca.service.handler.ejb.AppSCAHandler.execute(AppSCAHandler.java:62) at com.successfactors.compensation.service.scheduledjob.CompFormProcessJob.createCompPlans(CompFormProcessJob.java:504) at com.successfactors.compensation.service.scheduledjob.CompMassCreateJob.createForms(CompMassCreateJob.java:268) at com.successfactors.compensation.service.scheduledjob.CompMassCreateJob.executeJob(CompMassCreateJob.java:157) at com.successfactors.varpay.service.scheduledjob.VarPayMassCreateJob.executeJob(VarPayMassCreateJob.java:106) at com.successfactors.jobscheduler.jobimpl.SimpleJob.execute(SimpleJob.java:335) ... 9 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor4360.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.seam.util.Reflections.invoke(Reflections.java:20) at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57) at org.jboss.seam.interceptors.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:34) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69) at org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:47) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69) at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69) at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103) at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:151) at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:87) at com.successfactors.compensation.service.impl.CreateCompensationPlansImpl_$$javassist_1325.execute(CreateCompensationPlansImpl$$_javassist_1325.java) at com.successfactors.sca.ServiceCommandEngine.execute(ServiceCommandEngine.java:126) at com.successfactors.sca.service.ejb.ServiceCommandProcessorEJB.execute(ServiceCommandProcessorEJB.java:230) at sun.reflect.GeneratedMethodAccessor381.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.invocation.Invocation.performCall(Invocation.java:359) at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:237) at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158) at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)

Environment

  • Compensation
  • Variable Pay

Cause

The main cause is that if here're too many forms launched in one job and there is no pay guide record, the issue will happen.

I also saw a situation when there was a circular reporting relationship in our data (person A reported to person B who reported back to person A).

Resolution

This issue should be fixed in b1511.
The workaround is to create a dummy comp_payguide" in Salary Range page, and add one record in it.

1. Go to Compensation Home -> Action for all plans -> Salary Plans -> Salary Range page, create “comp_payguide” like following screenshot.

2. Access to comp_payguide:

3. Import a mock data like one in attachment.

Keywords

KBA , LOD-SF-CMP , Compensation Management , Problem

Product

SAP SuccessFactors HCM suite all versions

Attachments

pay_matrix(comp_payguide).csv