Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Picking prototype (v5) #503

Closed
metas-ts opened this issue Jul 14, 2017 · 3 comments
Closed

Picking prototype (v5) #503

metas-ts opened this issue Jul 14, 2017 · 3 comments

Comments

@metas-ts
Copy link
Member

metas-ts commented Jul 14, 2017

Is this a bug or feature request?

feature

What is the current behavior?

What is the expected or desired behavior?

Note to IT:

  • swing picking regression:
    ** picking existing HU (with or without attributes) shall work as before!
teosarca added a commit that referenced this issue Jul 17, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 17, 2017
teosarca added a commit that referenced this issue Jul 17, 2017
teosarca added a commit that referenced this issue Jul 18, 2017
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 19, 2017
* add complete SQL for WEBUI_Picking_M_Picking_Candidate_Processed
* ProcessPreconditionsResolution: deprecate constant-string reject. See
metasfresh/metasfresh-webui-api-legacy#510
* the rest: minor changes

503: Picking prototype (v5) 

Task-Url: metasfresh/metasfresh-webui-api-legacy#503
metas-ts added a commit that referenced this issue Jul 19, 2017
* PickingHUsRepository, PickingSlotViewRepository etc: 
  * add a query class so we can keep it at one retrieval method; 
  * refactor for testing and add some tests
  * also retrieve the picking candidates' processed status
  
* WEBUI_Picking_M_Picking_Candidate_Processed: renamed&extended

* minor changes:
CreateViewRequest, DocumentIdsSelection, HUEditorViewBuffer_HighVolume,
HUEditorViewRepository, PickingSlotViewsIndexStorage,
PickingSlotViewFactory, PPOrderLinesLoader, PickingSlotRow,
ViewsRepository, WEBUI_Picking_NewEmptyHU

503: Picking prototype (v5) 

Task-Url: #503
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 19, 2017
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 19, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 19, 2017
This was referenced Jul 19, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 19, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 19, 2017
teosarca added a commit that referenced this issue Jul 19, 2017
teosarca added a commit that referenced this issue Jul 19, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 20, 2017
teosarca added a commit that referenced this issue Jul 20, 2017
metas-ts added a commit that referenced this issue Jul 20, 2017
also refactoring (separating some read from write stuff)

503: Picking prototype (v5) 

Task-Url: #503
metas-ts added a commit that referenced this issue Jul 20, 2017
503: Picking prototype (v5) 

Task-Url: #503
teosarca added a commit that referenced this issue Jul 20, 2017
teosarca added a commit that referenced this issue Jul 20, 2017
teosarca added a commit that referenced this issue Jul 20, 2017
This was referenced Jul 20, 2017
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 20, 2017
metas-ts added a commit that referenced this issue Jul 20, 2017
503: Picking prototype (v5) 

Task-Url: #503
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 21, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 21, 2017
teosarca added a commit that referenced this issue Jul 21, 2017
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 21, 2017
metas-ts added a commit that referenced this issue Jul 21, 2017
metas-ts added a commit that referenced this issue Jul 21, 2017
because it fails

503: Picking prototype (v5) 

Task-Url: #503
metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 21, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 22, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 22, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 22, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 22, 2017
teosarca added a commit to metasfresh/metasfresh that referenced this issue Jul 22, 2017
@metas-ts
Copy link
Member Author

going to create a follow-up..

metas-ts added a commit to metasfresh/metasfresh that referenced this issue Jul 28, 2017
[#2083](#2083) Window Design WebUI: Customer Returns
[#2069](#2069) Window Design WebUI: Bill of Materials
[#2046](#2046) Window Design WebUI: Attribute Set
[#2092](#2092) Scheduler - improve error handling if AD_Role_ID can't be found
[#1046](metasfresh/metasfresh-webui-frontend-legacy#1046) opening included view from action not working in picking
[#518](metasfresh/metasfresh-webui-api-legacy#518) Picking prototype (v6)
[#1031](metasfresh/metasfresh-webui-frontend-legacy#1031) Autoselect when doubleclick on included Tab Row Field
[#2066](#2066) CRM: Businesspartner B2C Reminder Functionality
[#2067](#2067) switch between C_Order_MFGWarehouse with and without barcode
[#496](metasfresh/metasfresh-webui-api-legacy#496) String document IDs cannot be converted to int Handling Unit Editor
[#1061](metasfresh/metasfresh-webui-frontend-legacy#1061) Larger Avatar Menu Photo
[#1073](metasfresh/metasfresh-webui-frontend-legacy#1073) Bug in Advanced edit of Purchase order
[#1062](metasfresh/metasfresh-webui-frontend-legacy#1062) Avatar Foto stretches when not Square
[#1068](metasfresh/metasfresh-webui-frontend-legacy#1068) board: when there are no new cards show the empty result text/hint
[#1067](metasfresh/metasfresh-webui-frontend-legacy#1067) board: add new: don't show the loading icon after data is loaded
[#1026](metasfresh/metasfresh-webui-frontend-legacy#1026) grid: Get rid of double scrollbar
[#1027](metasfresh/metasfresh-webui-frontend-legacy#1027) line looks selected, but it's not
[#1045](metasfresh/metasfresh-webui-frontend-legacy#1045) frontend shall switch to offline mode on http 503 error
[#503](metasfresh/metasfresh-webui-api-legacy#503) Picking prototype (v5)
[#2042](#2042) Process to Update Widget Size in all child UI Elements of a System Element
[#2019](#2019) Add Widget Size to System Elements
[#516](metasfresh/metasfresh-webui-api-legacy#516) moving 1 TU from one LU to another
[#511](metasfresh/metasfresh-webui-api-legacy#511) Problems with Sales Opportunities Board
[#514](metasfresh/metasfresh-webui-api-legacy#514) Support HU transform from HU window

me-45
@metas-lc
Copy link

metas-lc commented Aug 24, 2017

IT
swing picking regression (the only NOK: cannot use Hinzuf and Verteil.. )

Picking terminal regression

  1. create and complete purchase order, product A: add 3 lines: one with attribute X, one with attribute Y and one without attributes

  2. create inouts for each line, kipping those attributes

  3. create and complete a sales order, product A: with attribute Y

  4. go to the old picking terminal and select the line with product A, date today

  5. select a picking slot and your product. Press on HU Editor
    => you can see only the HU(s) for attribute Y

  6. press on the checkbox to ignore the attributes
    => you can see all HUs for that product

  7. pick some HUs for the whole qty, ok
    => line disappeared from picking terminal, shipment schedules are updated

  8. create and complete another sales order, same product and without attributes

  9. go to the old picking terminal and select the line with product A, date today

  10. select a picking slot and your product. Press on HU Editor
    => you can see all the HU(s) for all attributes

  11. press on hu editor and partially pick the remaining HUs
    => lieferdispo and picking are updated

  12. create an inout (i didn't complete it because atm it's not working)
    => qtys are updated, inout has correct assignments, qtys and attributes

  13. for the rest of the qty use Hinzuf and Verteil..

2017-08-24 15:16:29.504  WARN 2853 --- [WT-EventQueue-0] d.m.a.f.t.swing.SwingTerminalFactory     : Ihr Test hat einen bisher unentdeckten Fehler offengelegt.
Bitte leiten Sie diese Meldung an metas weiter:

Error: Missing product and quantity for vhu=X_M_HU[M_HU_ID=1000044, Value=1000044, trxName=<<ThreadInherited>>]

org.adempiere.exceptions.AdempiereException: Ihr Test hat einen bisher unentdeckten Fehler offengelegt.
Bitte leiten Sie diese Meldung an metas weiter:

Error: Missing product and quantity for vhu=X_M_HU[M_HU_ID=1000044, Value=1000044, trxName=<<ThreadInherited>>]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.adempiere.util.Check.mkEx(Check.java:109)
	at org.adempiere.util.Check.throwOrLogEx(Check.java:120)
	at org.adempiere.util.Check.errorUnless(Check.java:429)
	at org.adempiere.util.Check.errorUnless(Check.java:413)
	at de.metas.handlingunits.trace.HUTraceEventsService.builderSetVhuProductAndQty(HUTraceEventsService.java:504)
	at de.metas.handlingunits.trace.HUTraceEventsService.createAndAddFor(HUTraceEventsService.java:219)
	at de.metas.handlingunits.trace.interceptor.M_ShipmentSchedule_QtyPicked.addTraceEvent(M_ShipmentSchedule_QtyPicked.java:46)
	at sun.reflect.GeneratedMethodAccessor240.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.adempiere.ad.modelvalidator.AnnotatedModelInterceptor.executeNow(AnnotatedModelInterceptor.java:560)
	at org.adempiere.ad.modelvalidator.AnnotatedModelInterceptor.execute(AnnotatedModelInterceptor.java:504)
	at org.adempiere.ad.modelvalidator.AnnotatedModelInterceptor.execute(AnnotatedModelInterceptor.java:458)
	at org.adempiere.ad.modelvalidator.AnnotatedModelInterceptor.onModelChange(AnnotatedModelInterceptor.java:436)
	at org.adempiere.ad.modelvalidator.ModelInterceptor2ModelValidatorWrapper.modelChange(ModelInterceptor2ModelValidatorWrapper.java:124)
	at org.compiere.model.ModelValidationEngine.fireModelChange(ModelValidationEngine.java:931)
	at org.compiere.model.ModelValidationEngine.fireModelChange0(ModelValidationEngine.java:795)
	at org.compiere.model.ModelValidationEngine.access$000(ModelValidationEngine.java:93)
	at org.compiere.model.ModelValidationEngine$1.run(ModelValidationEngine.java:750)
	at org.compiere.model.ModelValidationEngine$2.run(ModelValidationEngine.java:774)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:145)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:135)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call0(AbstractTrxManager.java:771)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:683)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.run(AbstractTrxManager.java:591)
	at org.compiere.model.ModelValidationEngine.executeInTrx(ModelValidationEngine.java:769)
	at org.compiere.model.ModelValidationEngine.fireModelChange(ModelValidationEngine.java:745)
	at org.compiere.model.PO.fireModelChange(PO.java:4878)
	at org.compiere.model.PO.saveFinish(PO.java:2933)
	at org.compiere.model.PO.saveUpdate(PO.java:3312)
	at org.compiere.model.PO.save0(PO.java:2868)
	at org.compiere.model.PO.access$100(PO.java:137)
	at org.compiere.model.PO$1.run(PO.java:2762)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:145)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:135)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call0(AbstractTrxManager.java:771)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:683)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:584)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:515)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.run(AbstractTrxManager.java:500)
	at org.compiere.model.PO.saveEx(PO.java:2755)
	at org.adempiere.model.POWrapper.save(POWrapper.java:787)
	at org.adempiere.model.InterfaceWrapperHelper.save(InterfaceWrapperHelper.java:542)
	at de.metas.handlingunits.shipmentschedule.api.impl.HUShipmentScheduleBL.addQtyPicked(HUShipmentScheduleBL.java:145)
	at de.metas.handlingunits.shipmentschedule.api.impl.ShipmentScheduleHUTrxListener.trxLineProcessed(ShipmentScheduleHUTrxListener.java:108)
	at de.metas.handlingunits.impl.CompositeHUTrxListener.trxLineProcessed(CompositeHUTrxListener.java:134)
	at de.metas.handlingunits.hutransaction.impl.HUTransactionProcessor.processTrxLine(HUTransactionProcessor.java:227)
	at de.metas.handlingunits.hutransaction.impl.HUTransactionProcessor.processTrx(HUTransactionProcessor.java:196)
	at de.metas.handlingunits.hutransaction.impl.HUTransactionProcessor.createAndProcessTrx(HUTransactionProcessor.java:271)
	at de.metas.handlingunits.hutransaction.impl.HUTransactionProcessor.createTrx(HUTransactionProcessor.java:255)
	at de.metas.handlingunits.hutransaction.impl.HUTrxBL.createTrx(HUTrxBL.java:149)
	at de.metas.handlingunits.allocation.impl.HULoader.loadToDestination(HULoader.java:427)
	at de.metas.handlingunits.allocation.impl.HULoader.unloadSourceThenLoadDestination(HULoader.java:291)
	at de.metas.handlingunits.allocation.impl.HULoader.access$000(HULoader.java:65)
	at de.metas.handlingunits.allocation.impl.HULoader$1.process(HULoader.java:186)
	at de.metas.handlingunits.allocation.impl.HUContextProcessorExecutor$1.run(HUContextProcessorExecutor.java:102)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:145)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:135)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call0(AbstractTrxManager.java:771)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:683)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:584)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:515)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.run(AbstractTrxManager.java:500)
	at de.metas.handlingunits.allocation.impl.HUContextProcessorExecutor.run(HUContextProcessorExecutor.java:79)
	at de.metas.handlingunits.allocation.impl.HULoader.processInHUContext(HULoader.java:210)
	at de.metas.handlingunits.allocation.impl.HULoader.load(HULoader.java:175)
	at de.metas.fresh.picking.service.impl.HU2PackingItemsAllocator.transferQtyToTargetHU(HU2PackingItemsAllocator.java:269)
	at de.metas.fresh.picking.service.impl.HU2PackingItemsAllocator.transferQtyToTargetHU(HU2PackingItemsAllocator.java:246)
	at de.metas.fresh.picking.service.impl.HU2PackingItemsAllocator.access$200(HU2PackingItemsAllocator.java:76)
	at de.metas.fresh.picking.service.impl.HU2PackingItemsAllocator$2.itemPacked(HU2PackingItemsAllocator.java:232)
	at de.metas.fresh.picking.service.impl.PackingService.packItem(PackingService.java:171)
	at de.metas.fresh.picking.service.impl.HU2PackingItemsAllocator.transferRemainingQtyToTargetHU(HU2PackingItemsAllocator.java:235)
	at de.metas.handlingunits.shipmentschedule.api.impl.AbstractShipmentScheduleQtyPickedBuilder.allocate0(AbstractShipmentScheduleQtyPickedBuilder.java:322)
	at de.metas.handlingunits.shipmentschedule.api.impl.AbstractShipmentScheduleQtyPickedBuilder.access$000(AbstractShipmentScheduleQtyPickedBuilder.java:64)
	at de.metas.handlingunits.shipmentschedule.api.impl.AbstractShipmentScheduleQtyPickedBuilder$1.process(AbstractShipmentScheduleQtyPickedBuilder.java:296)
	at de.metas.handlingunits.allocation.impl.HUContextProcessorExecutor$1.run(HUContextProcessorExecutor.java:102)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:145)
	at org.adempiere.ad.trx.api.impl.TrxCallableWrappers$3.call(TrxCallableWrappers.java:135)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call0(AbstractTrxManager.java:771)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:683)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:584)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.call(AbstractTrxManager.java:515)
	at org.adempiere.ad.trx.api.impl.AbstractTrxManager.run(AbstractTrxManager.java:500)
	at de.metas.handlingunits.allocation.impl.HUContextProcessorExecutor.run(HUContextProcessorExecutor.java:79)
	at de.metas.handlingunits.shipmentschedule.api.impl.AbstractShipmentScheduleQtyPickedBuilder.allocate(AbstractShipmentScheduleQtyPickedBuilder.java:289)
	at de.metas.fresh.picking.form.swing.FreshSwingPackageItems.packItemToHU(FreshSwingPackageItems.java:528)
	at de.metas.fresh.picking.form.swing.FreshSwingPackageItems.access$300(FreshSwingPackageItems.java:89)
	at de.metas.fresh.picking.form.swing.FreshSwingPackageItems$3.loadQtyToHU(FreshSwingPackageItems.java:812)
	at de.metas.fresh.picking.model.DistributeQtyToNewHUsResultExecutorTemplate.execute(DistributeQtyToNewHUsResultExecutorTemplate.java:83)
	at de.metas.fresh.picking.form.swing.FreshSwingPackageItems.onDistributeQtyToNewHUs(FreshSwingPackageItems.java:825)
	at de.metas.fresh.picking.form.swing.FreshSwingPackageItems.propertyChange0(FreshSwingPackageItems.java:317)
	at de.metas.fresh.picking.form.swing.FreshSwingPackageItems.propertyChange(FreshSwingPackageItems.java:237)
	at org.adempiere.util.beans.WeakPropertyChangeListener.propertyChange(WeakPropertyChangeListener.java:168)
	at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335)
	at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327)
	at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263)
	at de.metas.adempiere.form.terminal.swing.SwingTerminalButtonWrapper$1.actionPerformed(SwingTerminalButtonWrapper.java:80)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6533)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6298)
	at java.awt.Container.processEvent(Container.java:2236)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
	at java.awt.Container.dispatchEventImpl(Container.java:2280)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.awt.EventQueue$4.run(EventQueue.java:729)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

@metas-lc
Copy link

will close this task and docu in the follow-up

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants