[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 379: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4505: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4507: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4508: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4509: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
From Flames To Fork, Comes Freedom • View topic - Migrating Libero Manufacturing to iDempiere

Migrating Libero Manufacturing to iDempiere

The migration of Adempiere modules to iDempiere

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Thu Dec 18, 2014 4:53 pm

Hi YanZhi, yes, your approach is perfect. Thanks for the corrections, they seem to be OK, but i will only check during another time. For now you can maintain your own code repository and post your link for others to later examine the patch/changes. You can continue to update here your recommendations and changes.
red1
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby stevenyanzhi » Tue Dec 23, 2014 8:51 am

Hi Red1:
I see in LiberoMFG, it have an error related with the package structure, and I am not sure how to resolve it.

In the LiberoMFG process, the "MovementGenerate" is trying to generate Movement Lines for Distribution Orders.
It uses class "org.eevolution.model.MDDOrder" and "org.eevolution.model.MDDOrderLine", and in the line 259, it calls order.getLines (where, "M_Product_ID");

This raised an error due to casting.
I check the code and think it relates with the 2 package conflict of "org.eevolution.model" in the Core project and "org.idempiere.model" in the LiberoMFG project.
The 2 packages are all used in the system when plugin with LiberoMFG, and so org.eevolution.model.MDDOrderLine and org.idempiere.model.MDDOrderLine are both registered.
When the system calls for Query("MDDOrderLine", whereclause), it returns the first MTable it gets, when 2 class for the same table (MDDOrderLine) is registered, the system gets the first MTable it gets.
In this case, it returns the org.idempiere.model.MDDOrderLine and tried to cast it to org.eevolution.model.MDDOrderLine, and cause this error.

I see you have make the package "org.idempiere.model" local in transaction "48f30af", updated "2013-10-11". (https://bitbucket.org/red1/org.idempier ... 6f313b6cb9)

So I tried to change the reference in MovementGenerate to org.idempiere.model.MDDOrderLine, but it failed due to org.eevolution.model.MDDOrderLine is used in MMovementLine, which in turn lays in the Core project.

I have no choice but to drop the 5 file related with MDDOrder and MDDOrderLine from org.eevolution.model package in Core project and change it to org.idempiere.model and update all the references.
However, it caused a lot of reference error and can not be changed simply.

Due to this error, I suppose the LiberoMFG Distribution Order function is not working with simple download and plugin.
I think maybe the Core project can do some change on this eevolution package? (drop the original one and change it to org.idempiere) or else we need to reuse the eevolution package in the LiberoMFG project instead.

I think this can not be done without co-working with the Core project.

please guide me in this.
stevenyanzhi
 
Posts: 2
Joined: Sun Dec 14, 2014 3:39 pm

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Mon Feb 23, 2015 7:41 am

I upgraded and incorporated fixes from bug reports, and refactor the plugins to be more intuitive for .

Source: org.libero.manufacturing and org.libero.manufacturing.swing at http://bitbucket.org/red1/

Plugins: http://sourceforge.net/projects/red1/fi ... LiberoMFG/

Remember that this is for the latest because of the non trivial platform upgrade that breaks certain plugins. The Java version is 1.7 (I have open it to be both compatible with iDempiere 2.1 also).

(Developers Note: When modifying plugin and exporting again dependency on iDempiere 3.0 source core, you need to fix its Jasper.Library with patch here http://idempiere.atlassian.net/browse/IDEMPIERE-2461- FIXED)

Please also refer to the other googlegroup forum http://groups.google.com/forum/#!topic/ ... f3N7jyd1AA.

All bug and feature changes are ongoing until next month, so i will upload the changes periodically.

Here is my further TODO list:
1. Review VMRPDetail form in Swing to redo in ZK UI as InfoWindow. This will be important to allow good remote client access as well as easier maintenance of it and more possible extensions by custom users.
2. A more thorough going through of Libero to produce a better document guide.

(to be cont'd)
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Tue Feb 24, 2015 7:24 am

How To Install:
Here i give again to newbies. Download binaries from the links given and install via OSGi console:
1. . Just install the latest main plugin.
2. . Both main and its org.libero.manufacturing.swing are used.

For server-side you telnet localhost 12612 to get to the OSGi console. For client, you append its adempiere-client.sh with -console and type 'ss' in the terminal after launching.

>install file:/<location of plugin>
>start <bundle-id>

Do inform me quickly of any mistakes.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Wed Feb 25, 2015 5:59 pm

On Tamoy's report at http://groups.google.com/forum/#!topic/ ... f3N7jyd1AA i already corrected according to what he advised and uploaded a fresh 2Pack + latest main plugin http://sourceforge.net/projects/red1/files/p2/LiberoMFG
Source also updated to https://bitbucket.org/red1/

I have made a major refactoring to remove completely references to core (eevolution) to avoid model conflict and cyclic redundancy. I break up eevolution.model into libero.tables, libero.model and libero.callouts for easier to view naming schema. REMEMBER to do Role Access Update to get everything appearing.

Screen Shot 2015-02-27 at 8.03.12 AM.png
Screen Shot 2015-02-27 at 8.03.12 AM.png (41.62 KiB) Viewed 24373 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Mon Mar 09, 2015 9:44 pm

I have created a new ZK UI equivalent of the old MRP Info (Swing version) using the iDempiere new InfoWindow schema. Preliminary version compared below. Note in this new type, there is the process button 'Calculate Material Plan' at the bottom which means user can selectively process the MRP records. Unlike the old version that processes them en bloc on a separate menu item.

This whole InfoWindow should surpass VMRPDetailed.java of the Swing type, making maintenance very easy and opens the way for us to create more of such InfoWindows and this is very important step in reducing complexity of coding powerful verticals such as Libero.

Note that i do not deprecate the Swing InfoWindow. The new menu is shown before the last screen which shows the selected record for processing by CalculateMaterialPlan (a copy of the old process but as embedded T_selection).

MRPInfoSwing.png
MRPInfoSwing.png (88.97 KiB) Viewed 24324 times


MRPInfoZK.png
MRPInfoZK.png (172.34 KiB) Viewed 24324 times


MRPMenu.png
MRPMenu.png (92.22 KiB) Viewed 24289 times
Note that the old MRP Info is renamed with (Swing) and only usable in Swing client (user can set under RoleAccess/Window to control that) and the new MRP Info (ZK) is only usable under WebUI mode.

Screen Shot 2015-03-17 at 9.00.27 AM.png
Screen Shot 2015-03-17 at 9.00.27 AM.png (101.13 KiB) Viewed 24289 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Tue Mar 24, 2015 11:43 am

In this very last moment before i prepare to leave for the airport, I made a breakthrough on the mysterious Libero code. Some days ago i found out that Libero made a fork of VBomDrop called . You can see below that it allows a Multiple BOM Configurator (based on ParentBOM<PP_BOM> to interface BOMs as templates) to spawn a Tree checkbox to select what variants and alternatives the user wants to drop into an Order or Invoice or Project. This is exactly what most users of Manufacturing would want as the old Compiere's BOM structure is single BOM.

LiberoBOMDrop.png
LiberoBOMDrop.png (64.74 KiB) Viewed 24228 times

However the code was done midway and it does not work. I checked the present Adempiere 380 version in GitHub that claimed to have integrated Libero and as you can see in above link, it remains the same and unchanged the last 2 years. Among them I can notice is that the radio selection is not behaving as radio group. Then the final OK to save the selection does nothing. I meddled with it since yesterday till just right now, managed to obtain a proof of concept on the selection as seen below.

CheckBoxTreeBOM.jpg
CheckBoxTreeBOM.jpg (129.02 KiB) Viewed 24228 times

I will try to finish off while at the airport, on board the plane, in transit in Abu Dhabi, or finally in Paris the remaining work:
1. Refactor to handle selection for insertion into detail records of DocTypes (Order/Invoice/Project)
2. Iterate to rebuild the checked options and permanent BOM children.
3. Better names for BOM of Materials & Formula as 'Multi BOM Configurator' and Product Configuration BOM as 'Multi-BOM Drop' to be consistent with 'Compiere' speak.

Will check back online in Paris with settled code and plugin, unless of course Hiep Le Quy beat me to it ! :)
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Thu Mar 26, 2015 12:46 pm

red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Fri Apr 03, 2015 6:22 pm

Here in Böheimkirchen, a very small countryside town in Austria, I am posting progress on the Multi-BOM Configurator's Tree display. I have made it more succinct and showing its BOMQty values at each child node. Next will be to make the Variant nodes able to allow quantity edit, and finally to transpose its selection and quantities to the document that its been dropped into.

TreeBOMQty.png
TreeBOMQty.png (48.3 KiB) Viewed 24096 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Wed Apr 08, 2015 5:08 am

After two days of scratching around, I finally asked Hiep's help and he solved the mistake i made in making the editor work. It was his deeper Java knowledge. All source committed and a plugin jar uploaded for testing. Next will be to transfer the quantities into the dropped target such as OrderLines.
This also means the semi-finished Multi BOM Configurator after nearly 8 years is now approaching completion. Below I demonstrate a changed Assembly Back Leg value from 1 to 2 and the Ultra Glue original qty of 500 is now 345. Note that only Variant type will allow such changes. Such type has its checkbox tick enabled but non-checkable.

variantBOMeditor.png
variantBOMeditor.png (49.42 KiB) Viewed 24053 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Fri Apr 10, 2015 3:48 pm

The BOM Drop has proven successful for a Sales Order as shown here.



I took some good ideas by Hans AntonReiss in the GoogleGroup http://groups.google.com/forum/#!topic/ ... f3N7jyd1AA, such as about QtyOnHand, and so that is done also as shown below.

Screen Shot 2015-04-10 at 9.41.00 AM.png
Screen Shot 2015-04-10 at 9.41.00 AM.png (46.28 KiB) Viewed 23979 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Mon Apr 13, 2015 5:27 pm

ButtonGroup was not easy to be merged into the CheckBoxTree and so i made a manual simulation of it and after three days got it to work with color code as guide. Source is committed and plugin is uploaded.
Note that the alternative groups are unlimited as long as they are not Component, Option and Variation. Thus for the moment Tools, Phantom, Planning and Packing are tested as groups. This can be done away easily for specific production cases in the Java.

Screen Shot 2015-04-13 at 11.25.12 AM.png
Screen Shot 2015-04-13 at 11.25.12 AM.png (27.44 KiB) Viewed 23942 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Tue Apr 14, 2015 1:55 pm

Now the BOM Drop also works on Project/Phase/Task where after creating your Phases or Tasks, you can select them individually to drop a particular BOM into each. The selection works independently so you may need to name your Phase or Task meaningfully. The drop will find out which task or phase you have selected and when you reopen your Project window you will find the product final children placed accordingly.

Screen Shot 2015-04-14 at 7.48.37 AM.png
Screen Shot 2015-04-14 at 7.48.37 AM.png (52.09 KiB) Viewed 23924 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Wed Apr 15, 2015 8:04 pm

To enhance the user experience, during BOM Drop, a pop up dialog will display the GrandTotal of the document before committing. If user choose 'No' at that box, the whole process is rolled back and the user can continue changing his/her mind. The dialog box is translatable, so you need to have such in Messages for 'Sales Order', 'Invoice', 'Project Order', 'Grand Total', 'Planned Amt' and 'Planned Margin'.
When user press 'Yes', the Sales Order is not in Completed mode but Prepared or InProgress mode for further work if needed.

ConfirmDrop.png
ConfirmDrop.png (97.27 KiB) Viewed 23900 times

The Project Order at Phase and Task Level has a more sophisticated mode of operation. Ensure your Business Partner and PriceList are defined at its header and you will see the drop automatically GetPrice for all its elements. Then the dialog box will give really useful information before you confirm the drop.

Drop2Task.png
Drop2Task.png (52.48 KiB) Viewed 23871 times
TaskDropped.png
TaskDropped.png (35.56 KiB) Viewed 23871 times
Drop2Phase.png
Drop2Phase.png (64.87 KiB) Viewed 23871 times
I am reusing the same Project header for the Phase as well as Task so the pop up totals are combined.
PhaseDropped.png
PhaseDropped.png (15.78 KiB) Viewed 23871 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Tue May 05, 2015 5:47 pm

Gode nyheder fra Danmark! or Good News from Denmark!
At a large wind turbine manufacturer here, i learned of what gaps to fulfill (refering to scrap notes):
1. Manufacturing Order > WF > BOM > Node/Activity
a. JoinElement AND to check parent nodes are closed
b. Node > Product >> WF .. Node/Activity
c. InProgress > WF Activity
d. Resource bookings = available date/times
d2. .. node level resource bookings
e. Resource sub tab > resources assignment

Now done d and d2..
Which is simply that the Resource Info Calendar should record the production plant as well as the sub workflow activity resource assignments and here they are (refer to the labels explaining):

MakeToOrder.png
MakeToOrder.png (44.05 KiB) Viewed 23663 times
PlantResourceAssignment.png
PlantResourceAssignment.png (30.71 KiB) Viewed 23663 times
AssemblyResource.png
AssemblyResource.png (40.54 KiB) Viewed 23663 times
Drying.png
Drying.png (31.48 KiB) Viewed 23663 times
Painting.png
Painting.png (53.99 KiB) Viewed 23663 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Sat Sep 19, 2015 9:43 am

Summarizing here on pending roadmap:
1. Conversion work.
1.a Convert other Swing forms to InfoWindow that are data processing type to InfoWindow format that has smaller footprint, compliant, and easier maintained. Those forms are:
1.a.i VMRPDetail (DONE as InfoWindow - MRP Info (ZK))
1.a.ii VOrderReceiptIssue (pending TODO)
1.a.iii VOrderDistributionReceipt (pending review if need TODO)
1.a.iv VOrderPlanning (reviewing if can be incorporated into 1.a.i.)

1.b Libero source http://github.com/adempiere/extension_l ... ution/form UI branch has ZK versions of the forms, but only this is worthy of taking for review and adaptation outright:
1.b.i. WCRP (Resource Load View)
1.b.ii WTreeBOM (review if covered by 1.c)

1.c. Related to Product BOM Configurator was greatly enhanced as reported some time back above, thus we have to entirely create its ZK UI equivalent accordingly since no such completion exist anywhere in the code.

2. Enhancement and completion of functionality. Implement the 4 points described in Denmark post some months ago (see last post).

3. Test, test, test, using iDempiere FitNesse Fit approach which is underway http://red1.org/iDempiereFitNesse.pdf to create more user modifiable tests to fit Manufacturing record creation and processing without any code reading or cutting.

4. Document, document, document.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Sun Sep 20, 2015 11:24 am

Brought over the ZK forms from eEvolution, Mexico, in its branch repository at http://github.com/adempiere/extension_l ... ution/form to show items 1.b.i, 1.b.ii referred above.

ResourceLoadView.png
ResourceLoadView.png (152.26 KiB) Viewed 22676 times

BOMFormulaTree.png
BOMFormulaTree.png (86.74 KiB) Viewed 22676 times
As explained the other forms are under conversion to InfoWindow for better improvement and maintenance. A test story is also been made from .
Fetch binary plugin (2Pack included) from http://sourceforge.net/projects/red1/files/p2/LiberoMFG:
1. Plugin (2Pack included) - org.libero.manufacturing_2.1.0.201509192216.jar
2. 2Pack only - LiberoMfg.zip (2Pack data set is now made to appear in Pack Out after Pack In).
3. Complete database backup without need to Pack In ExpDat20150919_221713.jar (latest yesterday 2.1)
Source is at http://bitbucket.org/red1/org.libero.manufacturing

You can also test it now in http://test.idempiere.com/webui (go to Menu > Manufacturing Management > Planning Management > CRP > Resource Load View > Select Resource - Assembly Area, Date - 1, Sep, 2002.

If the Libero is not loaded there or removed, then thru the Felix console just install the plugin above again.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Thu Oct 22, 2015 10:02 am

With Hiep's help, http://bitbucket.org/hieplq/hsv-website defining the interface for rendering TreeNode in ZK, I can extend it towards what I done earlier in Swing mode. (I am borrowing BOM Drop class and will transfer from the petri dish once the culture is fully developed.):

Screen Shot 2015-10-22 at 8.00.38 AM.png
Screen Shot 2015-10-22 at 8.00.38 AM.png (74.38 KiB) Viewed 22110 times
This is the display of "QtyAvailable" and is translatable. Next will be to test group radio buttons, variance input, optional checks, and dropping with pop up price totals.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Wed Nov 04, 2015 1:56 am

Made some rearranging that has the Qty Available in Stock, Unit BOM Qty and Total Qty (as final computation for each row). You can see in the screen shot how the different component type is reflected. Standard COMPONENT are non-editable, OPTION can be check/uncheck but qty not editable. VARIANT is not checkable but Qty is editable, and Radio Group of any other type allows only one member of the group to be checkable.

BOMDropV1.png
BOMDropV1.png (68.55 KiB) Viewed 21981 times
Next will add Total Price for each active row, with a nett Grand Total below gives faster feedback to the user before confirming OK.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Thu Nov 05, 2015 10:37 pm

Total price column done, next will be Grand Total at the bottom or top and then testing of filtering only selected results to give the prices.

Screen Shot 2015-11-05 at 7.10.20 AM.png
Screen Shot 2015-11-05 at 7.10.20 AM.png (59.05 KiB) Viewed 21961 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Final Totals Visibility

Postby red1 » Mon Nov 09, 2015 1:36 am

We have implemented PropertyChangeListener to update the higher panel with a large GrandTotal display that seems more attractive. It gives maximum visibility to users of the total effective order amount before committing the BOM Drop. Items that are not selected will not have the last two columns - Total Qtys and Total Prices shown. The unit BOMQty and Unit Price remains always displayed. This should greatly help the user to do scenario building or BOM type simulation.

BOMDropGrandTotal.png
BOMDropGrandTotal.png (117.03 KiB) Viewed 21927 times
Next is to implement cascading changes for parent nodes, then go through the Save() to documents to ensure they picked up all items and right qtys.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Tue Nov 10, 2015 12:57 pm

Implemented cascading results, with an added advanced effect, where a node is set to variant!

cascading.png
cascading.png (135.02 KiB) Viewed 21913 times
The resulting calculations holds well, through radio toggling, even under a zero node. Variant below variant works. Probably the most extreme to test is both radio and variant under another radio group.

Now i can explain in full what this BOM Drop Configurator is supposed to do. It is mostly used in the manufacturing or sales process or more precisely for configuring a product makeup where it is comprised of smaller parts and those parts may comprise of further parts and so on. Take for example a car with engine, wheels, seats, body. Or in the example above, a furniture set, comprising a table, 4 chairs, with an optional sun-screen. There is a radio group with round buttons where you can toggle between any of the members of the group. There is a variant type where you can change its BOMQty even down to zero. The children parts of any node will cascade its parent decision downwards all the way. If its parent variant is zero, then all its children will have their total price and total qty set to zero. So is the case if the parent as an option or radio is unchecked.

The cascading extrapolation also goes sideways, where the Quantity is the child number of units as part of its immediate parent or referred to in the database as BOM Qty, and when checked, its Total Quantity is calculated by multiplying its parent Total Quantity to its BOM Qty. The Total Price is likewise but merely just take its now Total Quantity multiply by its unit Price, giving the cost as sold to the customer. Adding all these costs makes up the Grand Total Price, as displayed here in larger font and positioned very well I must say next to the OK button. It cannot get more visible and helpful to the user than that. The user can now fiddle around and attain direct visual affirmation of what is going to happen right away with this BOM Drop before pushing the button and not resort to more steps later to find out the final result.

Hiep helped in the design and coding of the core ZK user interface and given me a starting good implementation to continue extending till this present wondrous form. Hiep has sent the core patch to https://idempiere.atlassian.net/browse/IDEMPIERE-2922 so that i can house my code using it in a separate plugin without overriding core.

And it is ironic that i am finishing this in Mexico where this module first originated from, of Libero Manufacturing which its copyright holder, Victor Perez of e-Evolution still holds on to the old ADempiere project that does not use the new iDempiere OSGi plugin framework that allows these packages and module to work loosely coupled without conflicting too much due to the inherent complexity of ERP software.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Thu Nov 12, 2015 1:43 pm

I now testing with radio group at parent level. Detected two bugs, solved one while on the plane from Mexico City to Munich and now in Munich airport transit to Vienna solved the second one. The BOM component type can now be fully used in whatever tree makeup possible.

RadioParent.png
RadioParent.png (79.79 KiB) Viewed 21879 times
It will also automatically pre-select the first item in the radio group as shown above. The unselected radio item will have all its downline unselected with zero totals.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Fri Nov 13, 2015 6:31 am

Source with latest above changes is pushed to http://bitbucket.org/red1/org.libero.manufacturing
Binary is issued at http://sourceforge.net/projects/red1/fi ... facturing/
Do play around with the Configurator as shown above and report back anomalies or bugs. The save to order should work if you have all items with prices. Otherwise tell me and i shall fix it rather quickly.
To get to the 'Product Configuration BOM' login via the WebUI and find it in the Libero Mfg menu as shown highlighted from the menu tree in screenshot below. Note that if you are in Swing UI mode, it will switch to the Swing version done some time back. They are basically the same in functionality but the ZK UI is latest and of better visibility of the totals columns.

BOMDropMenu.png
BOMDropMenu.png (124.81 KiB) Viewed 21863 times
Later, at the end of this project, i shall issue a video to explain how to use it.
Now in Bratislava with fast connection lines - http://wiki.idempiere.org/en/User:Nbe222
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Migrating Libero Manufacturing to iDempiere

Postby red1 » Sun Nov 15, 2015 12:20 pm

I made a further improvement to the display. Now all intermediate parent nodes will show the successive totals of its immediate children and so on. They allow better summarizing view where nodes are collapsed. To activate this new display just a toggle of any radio or optional box will trigger its appearance. The totals will be displayed slightly larger, in bold font but gray colour to give it a nice visible touch, resonating with the larger GrandTotal amount.

RollUpTotals.png
RollUpTotals.png (122.19 KiB) Viewed 21789 times
If you expand the Assembly Back Leg parent node you will see its children adds up to its displayed figure. At the higher Patio Chair node, its total of 2008 is the sum of its children, 84 and 1924. Thus, collapsing the Patio Chair node, will allow easy viewing of its siblings where 2008 plus 67.50 equals 2075.50
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

PreviousNext

Return to iDempiere

Who is online

Users browsing this forum: No registered users and 1 guest