[ 
https://issues.apache.org/jira/browse/FINERACT-1085?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17194594#comment-17194594
 ] 

Petri Tuomola commented on FINERACT-1085:
-----------------------------------------

Hi [~vorburger] - when I looked at this last time, I thought this was due to 
"the validation", rather than indicating that there was a missing validation: 
i.e. this is thrown if you try to book backdated transactions for dates before 
the ledger closure.

Now of course we could change that therefore this should not be logged and 
should just be returned to the user as an error, in line with the logging 
guidelines. Should we change that?

> JournalEntryInvalidException: Journal entry cannot be made prior to last 
> account closing date for the branch          at 
> org.apache.fineract.accounting.journalentry.service.AccountingProcessorHelper.checkForBranchClosures()
> -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: FINERACT-1085
>                 URL: https://issues.apache.org/jira/browse/FINERACT-1085
>             Project: Apache Fineract
>          Issue Type: Bug
>            Reporter: Michael Vorburger
>            Priority: Blocker
>
> See FINERACT-932 for general background; I've found this in logs of 
> [https://www.fineract.dev|https://www.fineract.dev/]:
> {noformat}org.apache.fineract.accounting.journalentry.exception.JournalEntryInvalidException:
>  Journal entry cannot be made prior to last account closing date for the 
> branch
>         at 
> org.apache.fineract.accounting.journalentry.service.AccountingProcessorHelper.checkForBranchClosures
>  (AccountingProcessorHelper.java:536)
>         at 
> org.apache.fineract.accounting.journalentry.service.CashBasedAccountingProcessorForSavings.createJournalEntriesForSavings
>  (CashBasedAccountingProcessorForSavings.java:61)
>         at 
> org.apache.fineract.accounting.journalentry.service.JournalEntryWritePlatformServiceJpaRepositoryImpl.createJournalEntriesForSavings
>  (JournalEntryWritePlatformServiceJpaRepositoryImpl.java:527)
>         at 
> org.apache.fineract.accounting.journalentry.service.JournalEntryWritePlatformServiceJpaRepositoryImpl$$FastClassBySpringCGLIB$$56a41c76.invoke
>  (<generated>)
>         at org.springframework.cglib.proxy.MethodProxy.invoke 
> (MethodProxy.java:218)
>         at 
> org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint
>  (CglibAopProxy.java:771)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed 
> (ReflectiveMethodInvocation.java:163)
>         at 
> org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed 
> (CglibAopProxy.java:749)
>         at 
> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction
>  (TransactionAspectSupport.java:366)
>         at 
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke 
> (TransactionInterceptor.java:118)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed 
> (ReflectiveMethodInvocation.java:186)
>         at 
> org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed 
> (CglibAopProxy.java:749)
>         at 
> org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept
>  (CglibAopProxy.java:691)
>         at 
> org.apache.fineract.accounting.journalentry.service.JournalEntryWritePlatformServiceJpaRepositoryImpl$$EnhancerBySpringCGLIB$$43aec1a8.createJournalEntriesForSavings
>  (<generated>)
>         at 
> org.apache.fineract.portfolio.savings.service.SavingsAccountWritePlatformServiceJpaRepositoryImpl.postJournalEntries
>  (SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:1315)
>         at 
> org.apache.fineract.portfolio.savings.service.SavingsAccountWritePlatformServiceJpaRepositoryImpl.postInterest
>  (SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:573)
>         at 
> org.apache.fineract.portfolio.savings.service.SavingsAccountWritePlatformServiceJpaRepositoryImpl$$FastClassBySpringCGLIB$$fa18015c.invoke
>  (<generated>)
>         at org.springframework.cglib.proxy.MethodProxy.invoke 
> (MethodProxy.java:218)
>         at 
> org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint
>  (CglibAopProxy.java:771)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed 
> (ReflectiveMethodInvocation.java:163)
>         at 
> org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed 
> (CglibAopProxy.java:749)
>         at 
> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction
>  (TransactionAspectSupport.java:366)
>         at 
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke 
> (TransactionInterceptor.java:118)
>         at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed 
> (ReflectiveMethodInvocation.java:186)
>         at 
> org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed 
> (CglibAopProxy.java:749)
>         at 
> org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept
>  (CglibAopProxy.java:691)
>         at 
> org.apache.fineract.portfolio.savings.service.SavingsAccountWritePlatformServiceJpaRepositoryImpl$$EnhancerBySpringCGLIB$$9155b01a.postInterest
>  (<generated>)
>         at 
> org.apache.fineract.portfolio.savings.service.SavingsSchedularServiceImpl.postInterestForAccounts
>  (SavingsSchedularServiceImpl.java:76)
>         at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native 
> Method)
>         at jdk.internal.reflect.NativeMethodAccessorImpl.invoke 
> (NativeMethodAccessorImpl.java:62)
>         at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke 
> (DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke (Method.java:566)
>         at org.springframework.util.MethodInvoker.invoke 
> (MethodInvoker.java:283)
>         at 
> org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal
>  (MethodInvokingJobDetailFactoryBean.java:267)
>         at org.springframework.scheduling.quartz.QuartzJobBean.execute 
> (QuartzJobBean.java:75)
>         at org.quartz.core.JobRunShell.run (JobRunShell.java:202)
>         at org.quartz.simpl.SimpleThreadPool$WorkerThread.run 
> (SimpleThreadPool.java:573){noformat}
> It reminds me of FINERACT-1067 (but seems to be a completely different 
> error), but I have similar thoughts: Perhaps this is more of an "effect", 
> with the "cause" really being some... missing validation somewhere, for 
> before/after dates?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to