View source | View content page | Page history | Printable version   

Projects:Goods Movement Report/Technical Specifications

Warning.png   This document is still a work in progress. It may contain inaccuracies or errors.

Contents

Introduction

This technical specifications outlines the implementation for the Goods Movement Report redesign. This document builds on the Functional Specification.


Overview

The current goods movement report requires redesigning to better fit the function it is intended for. The following elements will be used in the creation of the report:


Scope

BP1. Goods Movement Creation

BP2. Goods Movement Report Realization

BP3. Process Goods Movement


Ubiquitous Language

  1. Warehouse - location containing 1 or multiple bins
  2. Bin - a storage location within a warehouse
  3. UOM - Unit of Measure - as defined for each product
  4. Attribute - an attribute of a product describing differentiation between similar products.


Technical Implementation

User Interface Implementation

The current Goods Movement form is generated using the Application Dictionary. The print options will need to be amended to point to a custom Jasper report which will be manually formatted.


Report Implementation


SQL Code

The following queries will take in the Movement Id from the form. This can be 1 or multiple movement id's as selected in the grid interface. Hence the where clause will use an in statement.

Output of the report will be grouped by the movement header, and then lines (ordered by the line value).

The sql shown below is an outline of the required statements, these will be finalised during implementation.

Header

SELECT 
   client.Name, 
   org.Name, 
   move.documentNo AS Name, 
   move.Description, 
   move.MovementDate
FROM
   M_Movement move
   INNER JOIN AD_CLIENT client 
   ON move.AD_CLIENT_ID = client.AD_CLIENT_ID
   INNER JOIN AD_ORG org
   ON move.AD_ORG_ID = org.AD_ORG_ID
WHERE
   move.M_MOVEMENT_ID IN (?)

Line Items

SELECT
   line.LINE,
   line.M_PRODUCT_ID,
   prod.Name,
   line.M_ATTRIBUTESETINSTANCE_ID,
   attr.Name, -- finalise the field we need here
   prod.description,
   line.M_LOCATOR_ID,
   binFrom.value,
   binFrom.description, --build this from x,y,z,w/house details
   line.M_LOCATORTO_ID,
   binTo.value,
   binTo.description, --build this from x,y,z,w/house details
   line.MOVEMENTQTY,
   line.M_PRODUCT_UOM_ID,
   line.C_UOM_ID,
   uom.Name,
   line.DESCRIPTION
FROM
   M_Movement move
   INNER JOIN M_MOVEMENT_LINE LINES
   ON move.M_MOVEMENT_ID = LINES.M_MOVEMENT_ID
   INNER JOIN M_PRODUCT prod
   ON line.M_PRODUCT_ID prod.M_PRODUCT_ID
   INNER JOIN M_LOCATOR binFrom
   ON line.M_LOCATOR_ID = binFrom
   INNER JOIN M_LOCATOR binTo
   ON line.M_LOCATORTO_ID = binTo.M_LOCATOR_ID
   INNER JOIN C_UOM uom
   ON line.C_UOM_ID = uom.C_UOM_ID
   INNER JOIN M_ATTRIBUTESETINSTANCE attr
   ON line.M_ATTRIBUTESETINSTANCE_ID = attr.M_ATTRIBUTESETINSTANCE_ID
WHERE
   move.M_MOVEMENT_ID IN (?)

Appendices

Appendix A. UML Diagrams

Retrieved from "http://wiki.openbravo.com/wiki/Projects:Goods_Movement_Report/Technical_Specifications"

This page has been accessed 6,951 times. This page was last modified on 8 June 2012, at 05:27. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.