Hi Pedro,
I have been able to synch the orders between POS & ERP. it worked fine for most of the orders. However, some orders didn't create invoice and payment although there were similar orders with the same products created invoices before. The error is MPeriod.isOpen: No Period for 2012-06-18 00:00:00.0 (SOO) [24] 19:26:27,559 ERROR [STDERR]
The log file is the following;
19:26:27,559 ERROR [STDERR] -----------> MPeriod.isOpen: No Period for 2012-06-18 00:00:00.0 (SOO) [24]
19:26:27,559 ERROR [STDERR] -----------> MPeriod.isOpen: No Period for 2012-06-18 00:00:00.0 (SOO) [24]
19:26:27,563 INFO [STDOUT] -1
19:26:27,568 ERROR [STDERR] ===========> SincronizaPOS.createOrder: Error creating order [24]
java.lang.ArrayIndexOutOfBoundsException: 0
at com.smj.util.SincronizaPOS.createOrder(SincronizaPOS.java:1028)
at com.smj.util.SincronizaPOS.processTicket(SincronizaPOS.java:441)
at com.smj.util.SincronizaPOS.onMessage(SincronizaPOS.java:162)
at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:946)
at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:118)
at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:42)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
19:26:27,597 ERROR [STDERR] ===========> SincronizaPOS.createOrder: Error creating order [24]
java.lang.ArrayIndexOutOfBoundsException: 0
at com.smj.util.SincronizaPOS.createOrder(SincronizaPOS.java:1028)
at com.smj.util.SincronizaPOS.processTicket(SincronizaPOS.java:441)
at com.smj.util.SincronizaPOS.onMessage(SincronizaPOS.java:162)
at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:946)
at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:118)
at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:42)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
19:26:27,597 ERROR [STDERR] java.lang.ArrayIndexOutOfBoundsException: 0
19:26:27,597 ERROR [STDERR] at com.smj.util.SincronizaPOS.createOrder(SincronizaPOS.java:1028)
19:26:27,597 ERROR [STDERR] at com.smj.util.SincronizaPOS.processTicket(SincronizaPOS.java:441)
19:26:27,597 ERROR [STDERR] at com.smj.util.SincronizaPOS.onMessage(SincronizaPOS.java:162)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:946)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:118)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:42)
19:26:27,597 ERROR [STDERR] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
19:26:27,597 ERROR [STDERR] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
19:26:27,597 ERROR [STDERR] at java.lang.Thread.run(Thread.java:619)
I appreciate your advice
Moataz Moussa
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
sorry I missed point.
I checked the period in the error and found out that it is already opened on SmartERP.
Let me confirm that some orders synchronized correctly.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Simple issue: look at the LOG description: No Period for 2012-06-18 00:00:00.0 (SOO) 24 19:26:27,559 ERROR STDERR which means, you have not open an accounting period within your ERP .... please review those concepts in your adempiere book ... without account periods open you can no create documents ...
Regards
Pedro Rozo.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
thanks for ur reply
I know that the accounting period must be opened, and it's already opened thus some orders went correctly and created invoice.
the issue here is that sometimes the order doesn't consider that the period is opened.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
We have tested that functionality in deep for our customers and it is pretty stable, you might have data or configuration issues ..or you need a more extensive log and data analysis to find the what looks like a data issue.
Try to isolated the issue replicationg that behaviour with the demo ..
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
no.. .. that error in your log it is an specific accounting issue .. the only way to generated something like that with activemq would be if the incoming order where from a previous month (activeMQ down for more that 1 month) and you accounting period were closed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Pedro,
I have been able to synch the orders between POS & ERP. it worked fine for most of the orders. However, some orders didn't create invoice and payment although there were similar orders with the same products created invoices before. The error is MPeriod.isOpen: No Period for 2012-06-18 00:00:00.0 (SOO) [24] 19:26:27,559 ERROR [STDERR]
The log file is the following;
19:26:27,559 ERROR [STDERR] -----------> MPeriod.isOpen: No Period for 2012-06-18 00:00:00.0 (SOO) [24]
19:26:27,559 ERROR [STDERR] -----------> MPeriod.isOpen: No Period for 2012-06-18 00:00:00.0 (SOO) [24]
19:26:27,563 INFO [STDOUT] -1
19:26:27,568 ERROR [STDERR] ===========> SincronizaPOS.createOrder: Error creating order [24]
java.lang.ArrayIndexOutOfBoundsException: 0
at com.smj.util.SincronizaPOS.createOrder(SincronizaPOS.java:1028)
at com.smj.util.SincronizaPOS.processTicket(SincronizaPOS.java:441)
at com.smj.util.SincronizaPOS.onMessage(SincronizaPOS.java:162)
at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:946)
at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:118)
at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:42)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
19:26:27,597 ERROR [STDERR] ===========> SincronizaPOS.createOrder: Error creating order [24]
java.lang.ArrayIndexOutOfBoundsException: 0
at com.smj.util.SincronizaPOS.createOrder(SincronizaPOS.java:1028)
at com.smj.util.SincronizaPOS.processTicket(SincronizaPOS.java:441)
at com.smj.util.SincronizaPOS.onMessage(SincronizaPOS.java:162)
at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:946)
at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:118)
at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:42)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
19:26:27,597 ERROR [STDERR] java.lang.ArrayIndexOutOfBoundsException: 0
19:26:27,597 ERROR [STDERR] at com.smj.util.SincronizaPOS.createOrder(SincronizaPOS.java:1028)
19:26:27,597 ERROR [STDERR] at com.smj.util.SincronizaPOS.processTicket(SincronizaPOS.java:441)
19:26:27,597 ERROR [STDERR] at com.smj.util.SincronizaPOS.onMessage(SincronizaPOS.java:162)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:946)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:118)
19:26:27,597 ERROR [STDERR] at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:42)
19:26:27,597 ERROR [STDERR] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
19:26:27,597 ERROR [STDERR] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
19:26:27,597 ERROR [STDERR] at java.lang.Thread.run(Thread.java:619)
I appreciate your advice
Moataz Moussa
sorry I missed point.
I checked the period in the error and found out that it is already opened on SmartERP.
Let me confirm that some orders synchronized correctly.
Hi Moataz ..
Simple issue: look at the LOG description: No Period for 2012-06-18 00:00:00.0 (SOO) 24 19:26:27,559 ERROR STDERR which means, you have not open an accounting period within your ERP .... please review those concepts in your adempiere book ... without account periods open you can no create documents ...
Regards
Pedro Rozo.
thanks for ur reply
I know that the accounting period must be opened, and it's already opened thus some orders went correctly and created invoice.
the issue here is that sometimes the order doesn't consider that the period is opened.
We have tested that functionality in deep for our customers and it is pretty stable, you might have data or configuration issues ..or you need a more extensive log and data analysis to find the what looks like a data issue.
Try to isolated the issue replicationg that behaviour with the demo ..
just a question,
is this could happen if the activeMQ hanged for sometime?
no.. .. that error in your log it is an specific accounting issue .. the only way to generated something like that with activemq would be if the incoming order where from a previous month (activeMQ down for more that 1 month) and you accounting period were closed.
Many thanks Pedro for your help.