Libero MFG for iDempiere 3.1

The migration of Adempiere modules to iDempiere

Libero MFG for iDempiere 3.1

Postby red1 » Tue Dec 08, 2015 1:24 pm

[You can collect the plugin jar here - org.libero.manufacturing_<timestamp>.jar to try]
This is in continuation of the work at viewtopic.php?f=45&t=1775&start=50 so there is no release changes since last update in November 18, 2015.
INSTALL plugin and START. Some minor warning about dependency does not stop anything, it still works well.

Plugin source checks out well and remains intact in the jump to iDempiere 3.1 source which has changes:
1.1) Migration of mercurial repository to low volume by Hiep LQ
1.2) Latest fixes to 3.1.

The focus has moved form Swing UI to fully ZK UI which has all custom forms transferred over so no Swing UI plugin testing.

Fresh database seed dated today from iDempiere SourceForge download. RUN_ImportIdempiere to test from clean base.
2.1 The embedded 2Pack packs-in OK in ss console when plugin started.
2.2 Tested also in source, 2Pack packs-in OK in Eclipse console:

Screen Shot 2015-12-08 at 7.23.20 PM.png
Screen Shot 2015-12-08 at 7.23.20 PM.png (83.66 KiB) Viewed 17656 times
Plugin source at http://bitbucket.org/red1/org.libero.manufacturing dated November 18, 2015
iDempiere Source http://bitbucket.org/idempiere/idempiere dated November 14, 2015.
(Note these sources are constantly updated as can be seen on the time-stamps there)

Then i examine in the Libero Menu that has latest BOM Drop work. Seems all there.

Screen Shot 2015-12-08 at 1.19.39 PM.png
Screen Shot 2015-12-08 at 1.19.39 PM.png (32.26 KiB) Viewed 17684 times
Testing FitNesseRoot on it at first gave an error because Lawn Fertilizer has no ProductPrice:

Screen Shot 2015-12-08 at 3.01.31 PM.png
Screen Shot 2015-12-08 at 3.01.31 PM.png (57.69 KiB) Viewed 17681 times
After creating a Standard Price for it, it gives all green to the CalculateMaterialPlan test:

Screen Shot 2015-12-08 at 4.56.14 PM.png
Screen Shot 2015-12-08 at 4.56.14 PM.png (74.55 KiB) Viewed 17681 times
Work continues:
1. Order and Receipt custom form to be converted to easier maintainable and extensible InfoWindow framework
2. The Danish 4 recommendations to complete the Workflow Resource Activity visibility and control
3. More FitNesse incorporation for http://red1.org/iDempiereFitNesse.pdf (just been updated to v1.0 - pages 16, 44, 49)
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Mon Feb 01, 2016 6:54 am

Following bugs are solved:
Product Planning is not opening Manufacturing Workflow. Added ZoomCondition in Workflow table.
Ferry Irawan has pointed out a functional loophole here http://groups.google.com/forum/#!topic/ ... cP90FTWvJM
Brian Karemba has pointed out a bug http://groups.google.com/forum/#!topic/ ... tQ79vqixWA

Following patches are submitted to core:
http://idempiere.atlassian.net/browse/IDEMPIERE-3020 (process stopper. Carlos has applied the patch, so if your download is latest, then no need to apply to your source.)
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Tue Feb 02, 2016 8:11 am

Latest Changes:
1. During SalesOrder prepare or complete or reverse:
a. MRP generated or updated as before but DocStatus set to Draft.
b. Manufacturing Workflow of Product hard set PP_MRP as Table during runtime.
c. Manufacturing Workflow Node can set Action

2. During CalculateMaterialPlan, the following happens:
a. MRP from 1.a is set to InProgress
b. Generates as usual Demand and Supply MRP records and associated PP_Order (MO) records.
c. WF_Activity created
d. S_Resource_Assignment created
Most new code happens in org.libero.model.impl.DefaultRoutingServiceImpl

Prerequisites to test Fertilizer#50:
0. Apply patch in previous post or take the latest iDempiere build.
1. Product must have Planning Data, NotPurchased and no '0' PromisedDeliveryTime for getDuration to trigger 2.c/d
2. Set Manufacturing Workflow 'Packing Process' Node action to 'UserWindow' and Window set to 'MRP', Duration Unit set to 'Hour'.

Below are screenshots explaining the above.
After a Sales Order of an internally manufactured Fertilizer #50 which is insufficient, an MRP (1.a) is created. Opening up the MRP Info (Info) shows only one Draft MRP record. After selecting it and running CalculateMaterialPlan, it refreshes as below:

OrderGenMRP.png
OrderGenMRP.png (133.48 KiB) Viewed 17438 times
Three new MRP records are created, 1 Supply and 2 Demands. A new PP_Order (MO) record is created, linked to the source OrderLine and MRP records. Note the Dashboard panel for Activities will receive a new notification:

WFActivity.png
WFActivity.png (42.37 KiB) Viewed 17438 times
Clicking on it will open the WF Activities Panel:

WFActivityPanel.png
WFActivityPanel.png (67.87 KiB) Viewed 17438 times
This means Libero Manufacturing activity is part of a live WF Activity that can be processed to kick off subsequent activities as defined in its Workflow, and behave accordingly as in a Production Schedule Gantt Chart where Critical Path can be defined. Next at the Dashboard Views, open up the Schedule Info and go to the WorkCentre resourcetype and PackingProductionLine resource:

ResourceScheduleInfo.png
ResourceScheduleInfo.png (59.57 KiB) Viewed 17424 times
The next MRP request on similar resource will place a new blue marker after the last one, so that it reflects actual time display. MRP and MO records will also reflect time starts and ends accordingly.

Pending:
0. PP_Order (MO) explosion of its BOM does not create Requisition for raw materials shortfall (DONE)
0.a ..does not create roll up totals in children. (DONE)
1. To allow WF Activity completion, its linked MRP requires DocAction. (DONE)
2. A Master Production Schedule (MPS) Viewer based on the ScheduleInfo but combined all the plant shopfloor resources with different color coding and hyperlinked to relevant MRP document. (FUTURE)
2.a The MPS can change color code of a delayed task.
3. A dynamic readjustment of MPS tasks when WFActivity is completed at different times then original. (FUTURE)
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Sun Feb 07, 2016 9:06 am

Found a slight but crucial gap bug in Manufacturing Order where it does not iterate further if its BOM components are themselves BOM parents. Now solved as shown below. MO showing the second BOM parent and MRP Info iterate all including requisitions. I have also cross linked all records to the originating Sales Order/Line for easier handling. Note now there is roll up of bom qtys which is a net calculated with scrap extra percentage and Requisition also consider available stocks.

MO-multiBOM.png
MO-multiBOM.png (69.5 KiB) Viewed 17395 times
FinishedCMP.png
FinishedCMP.png (264.36 KiB) Viewed 17393 times
Note that water even got extrapolated. Since it has unlimited supply, its demand MRP need no Supply counterpart. I also made extra criteria and arrange the columns more intuitive so that users can filter for more focus. Been an info window of course all can be changed without coding.
I found out also that the ResourceAssignment InfoSchedule does not really avoid off duty slots. But there is IsDateAvailable routine to handle that in future. However it can use a Week factor to offset the time i.e. a 6 day week has 1.2 factor added to the Duration.
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Fri Feb 12, 2016 5:28 pm

Made some improvement to give a Master Production Schedule feel to the Info-Schedule of Plant Machinery resources. Submitted patch to core at JIRA http://idempiere.atlassian.net/browse/IDEMPIERE-3029

ResourceAssignmentByType.png
ResourceAssignmentByType.png (37.61 KiB) Viewed 17197 times
Now by selecting the '*' for all resources listed within a resource type, their time schedule assignments can be shown on the same calendar. It will toggle its background colour if so.

ResourceOverlap.png
ResourceOverlap.png (35.83 KiB) Viewed 17197 times
It can also overlap each other and the colour toggling helps to differentiate them.
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Sat Feb 13, 2016 3:14 pm

I have followed through the whole process (for the first time ever actually) leading to the Order Receipts Issue and then Cost Collector completion and seeing all the results. There is another pre requisite to do in order to reach Cost Collector - set the Accounting Schema to Standard Costing.
From the last MRP Info window, the generated requisitions are in separate docs but can be easily consolidated by Requisition to invoice > Create PO From Requisition

RequisitionsConsolidatePO.png
RequisitionsConsolidatePO.png (69.78 KiB) Viewed 17278 times
Then, the single PO with all the generated requests is processed and Material Receipts done so that they are in stock. You can use the BOM Configurator to easily act as a viewer:

BOMConfigView.png
BOMConfigView.png (47.6 KiB) Viewed 17278 times
Now we call the Order Receipt & Issue to examine the Manufacturing Order details and put in Movement Date, Warehouse Locator, and exact usage that may differ from calculated:

OrderReceiptIssue.png
OrderReceiptIssue.png (145.57 KiB) Viewed 17278 times
Then the sub product is selected and press OK for it to process for the Cost Collector:

CostCollector.png
CostCollector.png (99.35 KiB) Viewed 17278 times
You can check back the MRP Info to see the MRPs are closed. They can then be deleted in the next round.

AfterIssueReceipt.png
AfterIssueReceipt.png (120.04 KiB) Viewed 17278 times
You can also see the Accounting Consequence:

AccountingConsequence.png
AccountingConsequence.png (98.28 KiB) Viewed 17278 times
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Wed Feb 17, 2016 4:36 am

I have added an end result output into the final MRP Info process to denote the qty of documents created as a result of the CalculateMaterialPlan. If there is an error, it will abort, the box will include the error but the success message remains. So just pay attention to the message if it appears. It does mean failure.

EndResult.png
EndResult.png (26.68 KiB) Viewed 17231 times
MO = Manufacturing PP_Order, Req = Requisition, DO = Distribution DD_Order, Msg = MRP Note

During resetting my database to test again i find the following script useful:

Code: Select all
Truncate PP_Order_Workflow CASCADE;
DELETE FROM S_ResourceAssignment;
DELETE FROM AD_WF_Activity;

Note that it will drop many related tables and you have to key in again your Sales OrderLine but its only that (no need to Prepare or Complete the order) and you have your MRP Info back to just one line to push the CalculateMaterialPlan button again.
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Tue Mar 29, 2016 11:36 am

Made migration scripts for GardenWorld Admin which will setup data as highlighted in viewtopic.php?f=45&t=1816&p=8723#p8723 with Accounting Schema set to Standard Costing. Prices of the Fertilizer #50 components are also set and you can easily see them in the BOM Drop window:

FertilizerRawPrices.png
FertilizerRawPrices.png (104.66 KiB) Viewed 16866 times
1. Apply the migration script in your DB admin.
1.a Apply this script to clean from old data:

Code: Select all
Truncate PP_Order_Workflow CASCADE;
DELETE FROM S_ResourceAssignment;
DELETE FROM AD_WF_Activity;

2. Then create a Standard Sales Order with Org set to Fertilizer for 1 unit of Fertilizer#50. Press the Prepare or Complete button and it will generate a Demand MRP record.
3. Go to MRP Info (Info) and set Warehouse to Fertilizer and press refresh button at the bottom.
4. Select the single record appearing and press CalculateMaterialPlan button.
Then follow the previous post above to follow through the rest of the way.
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Thu Apr 21, 2016 4:05 pm

When you migrate to the development branch's ZK8 under the care of Hiep LeQuy, you have to modify the Libero MFG MANIFEST file to be dependent on targetPlatform plugins and no longer local org.zkoss.zk.library:

Code: Select all
diff --git a/META-INF/MANIFEST.MF b/META-INF/MANIFEST.MF
--- a/META-INF/MANIFEST.MF
+++ b/META-INF/MANIFEST.MF
@@ -8,7 +8,9 @@
  org.adempiere.ui;bundle-version="2.1.0",
  org.adempiere.plugin.utils;bundle-version="2.1.0",
  org.adempiere.ui.zk;bundle-version="2.1.0",
- org.zkoss.zk.library
+ zcommon;bundle-version="8.0.1",
+ zk;bundle-version="8.0.1",
+ zul;bundle-version="8.0.1"
Service-Component: OSGI-INF/MFGModelFactory.xml, OSGI-INF/MFGDocFactory.xml, OSGI-INF/MFGValidator.xml
Import-Package: org.osgi.service.event;version="1.3.0"
Export-Package: org.idempiere.component,

Also setting HTML component setWidth has issue:
Code: Select all
diff --git a/src/org/libero/bom/drop/ProductBOMRendererListener.java b/src/org/libero/bom/drop/ProductBOMRendererListener.java
--- a/src/org/libero/bom/drop/ProductBOMRendererListener.java
+++ b/src/org/libero/bom/drop/ProductBOMRendererListener.java
@@ -81,7 +81,6 @@
         totPrice.setEnabled(false);
         price.getDecimalbox().setScale(2);
         totPrice.getDecimalbox().setStyle("text-align:right");
-         totPrice.getDecimalbox().setWidth("99px");
           inputQty.setReadWrite(editQty);
           totQty.getDecimalbox().setScale(2);
           totPrice.getDecimalbox().setScale(2);

I will issue a new binary-plugin for this in due time when we migrate to ZK8.
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1 (Bug)

Postby johnbendi » Sun Oct 23, 2016 1:18 am

I get the following warning and severe messages when running libero manufacturing:

Code: Select all
Oct 22, 2016 5:33:08 PM org.adempiere.webui.info.InfoWindow prepareTable
SEVERE: Failed to parsed sql. sql=SELECT mrp.PP_MRP_ID, mrp.M_Product_ID AS M_Product_ID, mrp.S_Resource_ID AS S_Resource_ID, pp.M_Warehouse_ID AS M_Warehouse_ID, mrp.DatePromised AS DatePromised, mrp.Qty AS Qty, pp.SafetyStock AS SafetyStock, bomQtyOnHand(p.M_Product_ID,@1113|M_Warehouse_ID@,0) AS QtyOnHand, mrp.typemrp AS TypeMRP, mrp.OrderType AS OrderType, mrp.DocStatus AS DocStatus, mrp.DateStartSchedule AS DateStartSchedule, documentno(mrp.PP_MRP_ID) AS DOCUMENTNO, mrp.DateFinishSchedule AS DateFinishSchedule, mrp.Planner_ID AS Planner_ID, mrp.Priority AS PlannedQty FROM PP_MRP mrp  JOIN M_Product p ON (mrp.M_Product_ID=p.M_Product_ID)   JOIN pp_product_planning pp
ON (pp.m_product_id = mrp.m_product_id  AND mrp.m_warehouse_id = pp.m_warehouse_id) WHERE

Oct 22, 2016 5:33:09 PM org.compiere.util.Msg translate
WARNING: NOT found: 1113|M_Warehouse_ID

Oct 22, 2016 5:33:10 PM org.adempiere.webui.info.InfoWindow testCount
SEVERE: SELECT COUNT(*) FROM ( SELECT mrp.PP_MRP_ID, mrp.M_Product_ID AS M_Product_ID, mrp.S_Resource_ID AS S_Resource_ID, pp.M_Warehouse_ID AS M_Warehouse_ID, mrp.DatePromised AS DatePromised, mrp.Qty AS Qty, pp.SafetyStock AS SafetyStock, bomQtyOnHand(p.M_Product_ID,1113|M_Warehouse_ID,0) AS QtyOnHand, mrp.typemrp AS TypeMRP, mrp.OrderType AS OrderType, mrp.DocStatus AS DocStatus, mrp.DateStartSchedule AS DateStartSchedule, documentno(mrp.PP_MRP_ID) AS DOCUMENTNO, mrp.DateFinishSchedule AS DateFinishSchedule, mrp.Planner_ID AS Planner_ID, mrp.Priority AS PlannedQty FROM PP_MRP mrp  JOIN M_Product p ON (mrp.M_Product_ID=p.M_Product_ID)   JOIN pp_product_planning pp
ON (pp.m_product_id = mrp.m_product_id  AND mrp.m_warehouse_id = pp.m_warehouse_id) WHERE mrp.IsActive='Y' AND mrp.S_Resource_ID = ? AND pp.M_Warehouse_ID = ? AND mrp.AD_Client_ID IN(0,11) AND mrp.AD_Org_ID IN(0,11,12,50000,50002,50001,50004,50006,50005,50007) AND  (mrp.PP_MRP_ID IS NULL OR mrp.PP_MRP_ID NOT IN ( SELECT Record_ID FROM AD_Private_Access WHERE AD_Table_ID = 53043 AND AD_User_ID <> 101 AND IsActive = 'Y' ))  AND  (p.M_Product_ID IS NULL OR p.M_Product_ID NOT IN ( SELECT Record_ID FROM AD_Private_Access WHERE AD_Table_ID = 208 AND AD_User_ID <> 101 AND IsActive = 'Y' ))  AND  (pp.PP_Product_Planning_ID IS NULL OR pp.PP_Product_Planning_ID NOT IN ( SELECT Record_ID FROM AD_Private_Access WHERE AD_Table_ID = 0 AND AD_User_ID <> 101 AND IsActive = 'Y' ))  ) a

org.postgresql.util.PSQLException: ERROR: column reference "m_warehouse_id" is ambiguous
  Position: 268
   at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2182)
   at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1911)
   at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:173)
   at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:645)
   at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:495)
   at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:380)
   at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:1418)
   at sun.reflect.GeneratedMethodAccessor104.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:498)
   at org.compiere.db.StatementProxy.invoke(StatementProxy.java:128)
   at com.sun.proxy.$Proxy4.executeQuery(Unknown Source)
   at org.adempiere.webui.info.InfoWindow.testCount(InfoWindow.java:1718)
   at org.adempiere.webui.info.InfoWindow.testCount(InfoWindow.java:1682)
   at org.adempiere.webui.panel.InfoPanel.executeQuery(InfoPanel.java:539)
   at org.adempiere.webui.info.InfoWindow.executeQuery(InfoWindow.java:1502)
   at org.adempiere.webui.panel.InfoPanel.onQueryCallback(InfoPanel.java:1999)
   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 org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:2757)
   at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:2685)
   at org.zkoss.zk.ui.impl.EventProcessor.process(EventProcessor.java:136)
   at org.zkoss.zk.ui.impl.UiEngineImpl.processEvent(UiEngineImpl.java:1765)
   at org.zkoss.zk.ui.impl.UiEngineImpl.process(UiEngineImpl.java:1550)
   at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1260)
   at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:611)
   at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:485)
   at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:494)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
   at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
   at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
   at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
   at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
   at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
   at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
   at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
   at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
   at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
   at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
   at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
   at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
   at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
   at org.eclipse.jetty.server.Server.handle(Server.java:499)
   at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
   at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
   at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
   at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
   at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
   at java.lang.Thread.run(Thread.java:745)


And this happens when I click on the requery button within the MRP Info Window:
MRP_Info_Window.png
MRP_Info_Window.png (44.79 KiB) Viewed 15572 times


The value I suspect causing the problem is defined here:
InfoWindow_MRPInfo.png
InfoWindow_MRPInfo.png (74.18 KiB) Viewed 15572 times
johnbendi
 
Posts: 2
Joined: Fri Mar 04, 2016 9:48 pm

Re: Libero MFG for iDempiere 3.1

Postby red1 » Sun Oct 23, 2016 12:03 pm

Hi John Bendi, thank you so much for your report. Please can you put it in the Googlegroup and follow the Ethics linked in the google group welcome message. Please make sure you have follow all the tests and setup steps as avoiding them may cause such erorrs. If so, then i will debug it and reply there.

My forum here is preferred for users / developers who share fixes and code as part of the Free as in Freedom policy of FOSS.
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Libero MFG for iDempiere 3.1

Postby red1 » Wed Jun 07, 2017 12:37 am

Rifatul has discovered bugs during his testing and suggested remedies. Confirmed and committed together with reverting an earlier solution which i realised was wrong as Low Level is to be processed in separate PP_Order (Mfg Order). http://groups.google.com/forum/#!topic/ ... 5hUJNhsCII

Source: http://bitbucket.org/red1/org.lib.mfg4
Binary: http://sourceforge.net/projects/red1/fi ... facturing/
red1
Site Admin
 
Posts: 2760
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia


Return to iDempiere

Who is online

Users browsing this forum: No registered users and 1 guest

cron