Openbravo Issue Tracking System - Modules
View Issue Details
0037635ModulesAdvanced Warehouse Operationspublic2018-01-14 18:392018-02-05 11:05
nonofrancisco 
nonofrancisco 
normalminoralways
closedfixed 
5
 
 
dmiguelez
0037635: Null Pointer exception thrown when picking sales order
For Sales Order created prior installation of Advanced Warehouse Operation module, when doing picking, a Null Pointer Exception is thrown.
As System Administrator
  * Install AWO Module
  * Install AWO Template

As F&B International Group Admin
  * Open Organization window
    * Select "F&B US East Coast" organization
    * Open Organization Information tab
      * Check Advaced Warehouse Operation Flow

  * Open Task Type window and create a new record
    * Organization: "F&B US, Inc."
    * Searck Key: "PK"
    * Name: "Goods Picking"
    * Base Task Type: "from-to - Goods Movements (from-to)"
    * Priority Base: "50"

  * Open Warehouse Definition window
    * Select: "F&B US East Coast" warehouse
    * Select Internal Routing Area Tab
      * Create a new record
        * Search Key: "SHP"
        * Name: "Shipping"
        * Functional: yes
        * Picking: yes
      * Create a new record
        * Search Key: "STGN"
        * Name: "Storage Non Public"
        * Functional: no
        * Picking: yes
    * Select Storage Bin Group Tab
      * Create a new record
        * Search Key: "Beverage"
        * Name: "Beverage"
        * Internal Routing Area: "STGN - Storage Non Public - US East Coast"
        * Picking Sequence: 10
      * Create a new record
        * Search Key: "SHP"
        * Name: "Shipping"
        * Internal Routing Area: "SHP - Shipping - US East Coast"
        * Picking Sequence: 0
    * Select Storage Bin tab
      * Select EC-0-0-0 Storage Bin
        * Storage Bin Group: "Beverage"
        * Popularity Code: 10
        * Travel Sequence: 101
      * Select EC-RM-0-0
        * Storage Bin Group: SHP
    * Select Routing Tab
      * Create a new record
        * Search Key: "STGN-SHP/MC"
        * Name: "STGN to SHP Manual conf"
        * Task type: "PK - Goods Picking - 50 - 0"
        * Confirmation: Manual
        * Internal Routing Area From: "STGN - Storage Non Public - US East Coast"
        * Internal Routing Area To: "SHP - Shipping - US East Coast"
    * Select Routing Assignment Tab
      * Create a new record
        * Inventory Transaction Type: "Picking Sales Order"
        * Routing: "STGN to SHP Manual conf - STGN - Storage Non Public - US East Coast - SHP - Shipping - US East Coast"
    * Select Warehouse Algorithm Assignment tab
      * Create a new record
        * Inventory Transaction Type: "Picking Sales Order"
        * Warehouse Algorithm: "PA First valid bin"
      * Create a new record
        * Inventory Transaction Type: "Picking Sales Order"
        * Warehouse Algorithm: "PK M_Get_Stock"

  * Open Sales Order window
    * Remove all filter
    * Select any sales order belonging to "F&B US East Coast" organization
    * Click on "Pick" button
      * Leave assigned field blank
      * Ckick Done

  Realize an error message is displayed, showing "Error: java.lang.NullPointerException"
No tags attached.
patch org.openbravo.warehouse.advancedwarehouseoperations_1775.patch (2,115) 2018-01-14 21:43
https://issues.openbravo.com/file_download.php?file_id=11458&type=bug
Issue History
2018-01-14 18:39nonofranciscoNew Issue
2018-01-14 18:39nonofranciscoAssigned To => dmiguelez
2018-01-14 18:39nonofranciscoAssigned Todmiguelez => nonofrancisco
2018-01-14 18:40nonofranciscoStatusnew => scheduled
2018-01-14 21:43nonofranciscoFile Added: org.openbravo.warehouse.advancedwarehouseoperations_1775.patch
2018-01-15 14:04hgbotCheckin
2018-01-15 14:04hgbotNote Added: 0101695
2018-01-15 14:04hgbotStatusscheduled => resolved
2018-01-15 14:04hgbotResolutionopen => fixed
2018-01-15 14:04hgbotFixed in SCM revision => http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/d810241db540323548c565e8ead082f7d04da5fd [^]
2018-01-15 14:04hgbotCheckin
2018-01-15 14:04hgbotNote Added: 0101696
2018-01-15 14:04hgbotCheckin
2018-01-15 14:04hgbotNote Added: 0101697
2018-01-15 16:17dmiguelezNote Added: 0101699
2018-01-15 16:17dmiguelezReview Assigned To => dmiguelez
2018-01-15 16:17dmiguelezNote Added: 0101700
2018-01-15 16:17dmiguelezStatusresolved => closed
2018-01-15 17:25hgbotCheckin
2018-01-15 17:25hgbotNote Added: 0101703
2018-01-15 17:25hgbotStatusclosed => resolved
2018-01-15 17:25hgbotFixed in SCM revisionhttp://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/d810241db540323548c565e8ead082f7d04da5fd [^] => http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/dda8e7b2ab7c5d9b01944d60db032c2fb09f2d0a [^]
2018-01-15 17:25hgbotCheckin
2018-01-15 17:25hgbotNote Added: 0101704
2018-01-15 17:25hgbotCheckin
2018-01-15 17:25hgbotNote Added: 0101705
2018-01-16 13:22hgbotCheckin
2018-01-16 13:22hgbotNote Added: 0101720
2018-01-16 13:22hgbotCheckin
2018-01-16 13:22hgbotNote Added: 0101721
2018-02-05 11:05dmiguelezNote Added: 0102177
2018-02-05 11:05dmiguelezStatusresolved => closed
2022-09-06 17:18caristuCategoryAdvance Warehouse Operations => Advanced Warehouse Operations

Notes
(0101695)
hgbot   
2018-01-15 14:04   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: d810241db540323548c565e8ead082f7d04da5fd
Author: Nono Carballo <nonofce <at> gmail.com>
Date: Mon Jan 15 10:14:37 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/d810241db540323548c565e8ead082f7d04da5fd [^]

Fixes issue 37635: Null Pointer exception thrown when picking sales order

To prevent NPE for Sales Orders created before installation of AWO modules,
Quantity Pending Picking is calculated, if null, as
Ordered Quantity - Delivered Quantity

---
M src/org/openbravo/warehouse/advancedwarehouseoperations/eventobserver/TaskEventObserver.java
---
(0101696)
hgbot   
2018-01-15 14:04   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: 973d53f4dddae22c6b95af1d5abe364dcec31e8d
Author: David Miguelez <david.miguelez <at> openbravo.com>
Date: Mon Jan 15 11:50:56 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/973d53f4dddae22c6b95af1d5abe364dcec31e8d [^]

Related to Issue 37635. Code Review changes

* In Task Event Observer, manage the possibility that the delivered Quantity
  is greater than the OrderedQuantity. In this case return 0 as pending picking
  quantity for line
* When generating a Picking for a Sales Order, manage the possibility that this
  Order has been created before installing AWO. In this case the pending quantity
  to pick is the qty ordered - the qty delivered

---
M src/org/openbravo/warehouse/advancedwarehouseoperations/eventobserver/TaskEventObserver.java
M src/org/openbravo/warehouse/advancedwarehouseoperations/ittalgorithm/implementation/PickingSalesOrder_ITTAlgorithm.java
---
(0101697)
hgbot   
2018-01-15 14:04   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: ef27463aa3207b109ac1879ebb369b56e5113850
Author: Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
Date: Mon Jan 15 14:02:41 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/ef27463aa3207b109ac1879ebb369b56e5113850 [^]

Related to issue 37635: code review improvements

Simplified PickingSalesOrder_ITTAlgorithm.getQtyPendingToIssueForOrdersGeneratedWithoutAWO() method, moved it up so it can be read in the same order it's called (cleanliness improvement) and transform it to static.

TaskEventObserver calls this method directly so we avoid duplication of code.

---
M src/org/openbravo/warehouse/advancedwarehouseoperations/eventobserver/TaskEventObserver.java
M src/org/openbravo/warehouse/advancedwarehouseoperations/ittalgorithm/implementation/PickingSalesOrder_ITTAlgorithm.java
---
(0101699)
dmiguelez   
2018-01-15 16:17   
Test Plan

As System Administrator
  * Install AWO Module
  * Install AWO Template

As F&B International Group Admin
  * Open Organization window
    * Select "F&B US East Coast" organization
    * Open Organization Information tab
      * Check Advaced Warehouse Operation Flow

  * Open Task Type window and create a new record
    * Organization: "F&B US, Inc."
    * Searck Key: "PK"
    * Name: "Goods Picking"
    * Base Task Type: "from-to - Goods Movements (from-to)"
    * Priority Base: "50"

  * Open Warehouse Definition window
    * Select: "F&B US East Coast" warehouse
    * Select Internal Routing Area Tab
      * Create a new record
        * Search Key: "SHP"
        * Name: "Shipping"
        * Functional: yes
        * Picking: yes
      * Create a new record
        * Search Key: "STGN"
        * Name: "Storage Non Public"
        * Functional: no
        * Picking: yes
    * Select Storage Bin Group Tab
      * Create a new record
        * Search Key: "Beverage"
        * Name: "Beverage"
        * Internal Routing Area: "STGN - Storage Non Public - US East Coast"
        * Picking Sequence: 10
      * Create a new record
        * Search Key: "SHP"
        * Name: "Shipping"
        * Internal Routing Area: "SHP - Shipping - US East Coast"
        * Picking Sequence: 0
    * Select Storage Bin tab
      * Select EC-0-0-0 Storage Bin
        * Storage Bin Group: "Beverage"
        * Popularity Code: 10
        * Travel Sequence: 101
      * Select EC-RM-0-0
        * Storage Bin Group: SHP
    * Select Routing Tab
      * Create a new record
        * Search Key: "STGN-SHP/MC"
        * Name: "STGN to SHP Manual conf"
        * Task type: "PK - Goods Picking - 50 - 0"
        * Confirmation: Manual
        * Internal Routing Area From: "STGN - Storage Non Public - US East Coast"
        * Internal Routing Area To: "SHP - Shipping - US East Coast"
    * Select Routing Assignment Tab
      * Create a new record
        * Inventory Transaction Type: "Picking Sales Order"
        * Routing: "STGN to SHP Manual conf - STGN - Storage Non Public - US East Coast - SHP - Shipping - US East Coast"
    * Select Warehouse Algorithm Assignment tab
      * Create a new record
        * Inventory Transaction Type: "Picking Sales Order"
        * Warehouse Algorithm: "PA First valid bin"
      * Create a new record
        * Inventory Transaction Type: "Picking Sales Order"
        * Warehouse Algorithm: "PK M_Get_Stock"

  * Open Sales Order window
    * Remove all filter
    * Select any sales order belonging to "F&B US East Coast" organization
    * Click on "Pick" button
      * Leave assigned field blank
      * Click Done

Tasks are generated without further issue
(0101700)
dmiguelez   
2018-01-15 16:17   
Code Review + Testing Ok
(0101703)
hgbot   
2018-01-15 17:25   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: dda8e7b2ab7c5d9b01944d60db032c2fb09f2d0a
Author: Nono Carballo <nonofce <at> gmail.com>
Date: Mon Jan 15 10:14:37 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/dda8e7b2ab7c5d9b01944d60db032c2fb09f2d0a [^]

Fixes issue 37635: Null Pointer exception thrown when picking sales order

To prevent NPE for Sales Orders created before installation of AWO modules,
Quantity Pending Picking is calculated, if null, as
Ordered Quantity - Delivered Quantity

---
M src/org/openbravo/warehouse/advancedwarehouseoperations/eventobserver/TaskEventObserver.java
---
(0101704)
hgbot   
2018-01-15 17:25   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: a6abd8d4e62b9134e0dee673b395ab32b7b4d140
Author: David Miguelez <david.miguelez <at> openbravo.com>
Date: Mon Jan 15 11:50:56 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/a6abd8d4e62b9134e0dee673b395ab32b7b4d140 [^]

Related to Issue 37635. Code Review changes

* In Task Event Observer, manage the possibility that the delivered Quantity
  is greater than the OrderedQuantity. In this case return 0 as pending picking
  quantity for line
* When generating a Picking for a Sales Order, manage the possibility that this
  Order has been created before installing AWO. In this case the pending quantity
  to pick is the qty ordered - the qty delivered

---
M src/org/openbravo/warehouse/advancedwarehouseoperations/eventobserver/TaskEventObserver.java
M src/org/openbravo/warehouse/advancedwarehouseoperations/ittalgorithm/implementation/PickingSalesOrder_ITTAlgorithm.java
---
(0101705)
hgbot   
2018-01-15 17:25   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: 4cf266d07338fecb45f6fe42c3bdbf8080d96e6f
Author: Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
Date: Mon Jan 15 14:02:41 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/4cf266d07338fecb45f6fe42c3bdbf8080d96e6f [^]

Related to issue 37635: code review improvements

Simplified PickingSalesOrder_ITTAlgorithm.getQtyPendingToIssueForOrdersGeneratedWithoutAWO() method, moved it up so it can be read in the same order it's called (cleanliness improvement) and transform it to static.

TaskEventObserver calls this method directly so we avoid duplication of code.

---
M src/org/openbravo/warehouse/advancedwarehouseoperations/eventobserver/TaskEventObserver.java
M src/org/openbravo/warehouse/advancedwarehouseoperations/ittalgorithm/implementation/PickingSalesOrder_ITTAlgorithm.java
---
(0101720)
hgbot   
2018-01-16 13:22   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: 1f15bc81574c0780b95ea1b2c5ac70d1d14ed26d
Author: Nono Carballo <nonofce <at> gmail.com>
Date: Tue Jan 16 12:20:45 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/1f15bc81574c0780b95ea1b2c5ac70d1d14ed26d [^]

Adds Test for issue 37635

---
M src-test/org/openbravo/warehouse/advancedwarehouseoperations/test/AWOq_PendingPickingLines.java
---
(0101721)
hgbot   
2018-01-16 13:22   
Repository: erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations
Changeset: f956cb352c72af18919f69098eebaf715ad1366c
Author: David Miguelez <david.miguelez <at> openbravo.com>
Date: Tue Jan 16 13:22:15 2018 +0100
URL: http://code.openbravo.com/erp/pmods/org.openbravo.warehouse.advancedwarehouseoperations/rev/f956cb352c72af18919f69098eebaf715ad1366c [^]

Related to Issue 37635. Code Review improvements.

* Moved id's into constants
* Added Java Doc for test
* Renamed variables and methods to make it easier to read
* Added asserts

---
M src-test/org/openbravo/warehouse/advancedwarehouseoperations/test/AWOq_PendingPickingLines.java
---
(0102177)
dmiguelez   
2018-02-05 11:05   
Closed again after being re-opened for no reason