Importing a print format in the same packin as the table throws errors
Description
When importing a print format in the same packin as the table that is reporting, it throws errors like this:
17:37:36.928===========> MColumn.load: NO Data found for AD_Column_ID=1000002 [276]
java.lang.Exception
at org.compiere.model.PO.load(PO.java:1484)
at org.compiere.model.PO.load(PO.java:1401)
at org.compiere.model.PO.load(PO.java:1359)
at org.compiere.model.PO.<init>(PO.java:227)
at org.compiere.model.PO.<init>(PO.java:163)
at org.compiere.model.X_AD_Column.<init>(X_AD_Column.java:41)
at org.compiere.model.MColumn.<init>(MColumn.java:181)
at org.compiere.model.MColumn.get(MColumn.java:96)
at org.compiere.model.MColumn.get(MColumn.java:79)
at org.compiere.model.MRole.isColumnAccess(MRole.java:1473)
at org.compiere.print.MPrintFormat.getItems(MPrintFormat.java:258)
at org.compiere.print.MPrintFormat.<init>(MPrintFormat.java:85)
17:37:46.336===========> AbstractModelFactory.getPO: (id) - Table=AD_PrintFormat,Class=class org.compiere.print.MPrintFormat [276]
java.lang.NullPointerException
at org.compiere.model.MRole.isColumnAccess(MRole.java:1474)
at org.compiere.print.MPrintFormat.getItems(MPrintFormat.java:258)
at org.compiere.print.MPrintFormat.<init>(MPrintFormat.java:85)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at org.adempiere.base.AbstractModelFactory.getPO(AbstractModelFactory.java:90)
at org.adempiere.base.AnnotationBasedModelFactory.getPO(AnnotationBasedModelFactory.java:204)
at org.compiere.model.MTable.getPO(MTable.java:526)
at org.adempiere.pipo2.PoFiller.setTableReference(PoFiller.java:223)
at org.adempiere.pipo2.PoFiller.autoFill(PoFiller.java:307)
at org.adempiere.pipo2.handler.PrintFormatItemElementHandler.startElement(PrintFormatItemElementHandler.java:56)
at org.adempiere.pipo2.PackInHandler.processElement(PackInHandler.java:237)
at org.adempiere.pipo2.PackInHandler.processElement(PackInHandler.java:253)
at org.adempiere.pipo2.PackInHandler.endElement(PackInHandler.java:325)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:610)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1718)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2883)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:534)
Workaround can be to split the 2pack in two different files, but is not convenient.
When importing a print format in the same packin as the table that is reporting, it throws errors like this:
17:37:36.928===========> MColumn.load: NO Data found for AD_Column_ID=1000002 [276] java.lang.Exception at org.compiere.model.PO.load(PO.java:1484) at org.compiere.model.PO.load(PO.java:1401) at org.compiere.model.PO.load(PO.java:1359) at org.compiere.model.PO.<init>(PO.java:227) at org.compiere.model.PO.<init>(PO.java:163) at org.compiere.model.X_AD_Column.<init>(X_AD_Column.java:41) at org.compiere.model.MColumn.<init>(MColumn.java:181) at org.compiere.model.MColumn.get(MColumn.java:96) at org.compiere.model.MColumn.get(MColumn.java:79) at org.compiere.model.MRole.isColumnAccess(MRole.java:1473) at org.compiere.print.MPrintFormat.getItems(MPrintFormat.java:258) at org.compiere.print.MPrintFormat.<init>(MPrintFormat.java:85) 17:37:46.336===========> AbstractModelFactory.getPO: (id) - Table=AD_PrintFormat,Class=class org.compiere.print.MPrintFormat [276] java.lang.NullPointerException at org.compiere.model.MRole.isColumnAccess(MRole.java:1474) at org.compiere.print.MPrintFormat.getItems(MPrintFormat.java:258) at org.compiere.print.MPrintFormat.<init>(MPrintFormat.java:85) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at org.adempiere.base.AbstractModelFactory.getPO(AbstractModelFactory.java:90) at org.adempiere.base.AnnotationBasedModelFactory.getPO(AnnotationBasedModelFactory.java:204) at org.compiere.model.MTable.getPO(MTable.java:526) at org.adempiere.pipo2.PoFiller.setTableReference(PoFiller.java:223) at org.adempiere.pipo2.PoFiller.autoFill(PoFiller.java:307) at org.adempiere.pipo2.handler.PrintFormatItemElementHandler.startElement(PrintFormatItemElementHandler.java:56) at org.adempiere.pipo2.PackInHandler.processElement(PackInHandler.java:237) at org.adempiere.pipo2.PackInHandler.processElement(PackInHandler.java:253) at org.adempiere.pipo2.PackInHandler.endElement(PackInHandler.java:325) at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:610) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1718) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2883) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:534)
Workaround can be to split the 2pack in two different files, but is not convenient.
Regards,
Carlos Ruiz