src/org/openbravo/erpCommon/ad_reports/ReportProduction_data.xsql
author David Baz Fayos <david.baz@openbravo.com>
Tue, 27 May 2008 15:26:10 +0000
changeset 1044 8691bbc94032
parent 0 0247c26f10c6
child 6701 690d2af86089
permissions -rw-r--r--
Removed old frame parameter of windowTableId
carlos@0
     1
<?xml version="1.0" encoding="UTF-8" ?>
carlos@0
     2
<!--
carlos@0
     3
 *************************************************************************
carlos@0
     4
 * The contents of this file are subject to the Openbravo  Public  License
carlos@0
     5
 * Version  1.0  (the  "License"),  being   the  Mozilla   Public  License
carlos@0
     6
 * Version 1.1  with a permitted attribution clause; you may not  use this
carlos@0
     7
 * file except in compliance with the License. You  may  obtain  a copy of
carlos@0
     8
 * the License at http://www.openbravo.com/legal/license.html 
carlos@0
     9
 * Software distributed under the License  is  distributed  on  an "AS IS"
carlos@0
    10
 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
carlos@0
    11
 * License for the specific  language  governing  rights  and  limitations
carlos@0
    12
 * under the License. 
carlos@0
    13
 * The Original Code is Openbravo ERP. 
carlos@0
    14
 * The Initial Developer of the Original Code is Openbravo SL 
carlos@0
    15
 * All portions are Copyright (C) 2001-2006 Openbravo SL 
carlos@0
    16
 * All Rights Reserved. 
carlos@0
    17
 * Contributor(s):  ______________________________________.
carlos@0
    18
 ************************************************************************
carlos@0
    19
-->
carlos@0
    20
carlos@0
    21
carlos@0
    22
carlos@0
    23
carlos@0
    24
carlos@0
    25
<SqlClass name="ReportProductionData" package="org.openbravo.erpCommon.ad_reports">
carlos@0
    26
  <SqlClassComment></SqlClassComment>
carlos@0
    27
  <SqlMethod name="select" type="preparedStatement" return="multiple">
carlos@0
    28
    <SqlMethodComment></SqlMethodComment>
carlos@0
    29
    <Sql>
carlos@0
    30
    <![CDATA[
carlos@0
    31
      SELECT PRODUCTION_NAME, MOVEMENTDATE, PRODUCT_NAME, MOVEMENTQTY, DESCRIPTION, UOM_NAME
carlos@0
    32
      FROM (SELECT M_PRODUCTION.NAME AS PRODUCTION_NAME, M_PRODUCTION.MOVEMENTDATE, M_PRODUCT.NAME AS PRODUCT_NAME, 
carlos@0
    33
      SUM((CASE ? WHEN 'Y' THEN ROUND(M_PRODUCTIONLINE.MOVEMENTQTY, 2) ELSE (CASE SIGN(M_PRODUCTIONLINE.MOVEMENTQTY) WHEN -1 THEN 0 ELSE ROUND(M_PRODUCTIONLINE.MOVEMENTQTY, 2) END) END)) AS MOVEMENTQTY, M_ATTRIBUTESETINSTANCE.DESCRIPTION, C_UOM.NAME AS UOM_NAME
carlos@0
    34
      FROM M_PRODUCTIONLINE left join M_ATTRIBUTESETINSTANCE on M_PRODUCTIONLINE.M_ATTRIBUTESETINSTANCE_ID = M_ATTRIBUTESETINSTANCE.M_ATTRIBUTESETINSTANCE_ID,
carlos@0
    35
      M_PRODUCTION, M_PRODUCTIONPLAN,  M_PRODUCT,  C_UOM
carlos@0
    36
      WHERE M_PRODUCTION.M_PRODUCTION_ID = M_PRODUCTIONPLAN.M_PRODUCTION_ID
carlos@0
    37
      AND M_PRODUCTIONPLAN.M_PRODUCTIONPLAN_ID = M_PRODUCTIONLINE.M_PRODUCTIONPLAN_ID
carlos@0
    38
      AND M_PRODUCTIONLINE.M_PRODUCT_ID = M_PRODUCT.M_PRODUCT_ID
carlos@0
    39
      AND M_PRODUCTIONLINE.C_UOM_ID = C_UOM.C_UOM_ID
carlos@0
    40
      AND M_PRODUCTION.AD_CLIENT_ID IN ('1')
carlos@0
    41
      AND M_PRODUCTION.AD_ORG_ID IN ('1')
carlos@0
    42
      AND M_PRODUCTION.PROCESSED = 'Y'
carlos@0
    43
      AND M_PRODUCTION.MOVEMENTDATE >= to_date(?)
carlos@0
    44
      AND M_PRODUCTION.MOVEMENTDATE < to_date(?)
carlos@0
    45
      AND M_PRODUCTION.ISSOTRX = 'Y'
carlos@0
    46
      GROUP BY M_PRODUCTION.NAME, M_PRODUCTION.MOVEMENTDATE, M_PRODUCT.NAME, M_ATTRIBUTESETINSTANCE.DESCRIPTION, C_UOM.NAME
carlos@0
    47
      ORDER BY PRODUCTION_NAME, MOVEMENTDATE, MOVEMENTQTY DESC) AA
carlos@0
    48
      WHERE MOVEMENTQTY <> 0
carlos@0
    49
     ]]></Sql>
carlos@0
    50
      <Parameter name="isRaw"/>
carlos@0
    51
      <Parameter name="adUserClient" type="replace" optional="true" after="M_PRODUCTION.AD_CLIENT_ID IN (" text="'1'"/>
carlos@0
    52
      <Parameter name="adUserOrg" type="replace" optional="true" after="M_PRODUCTION.AD_ORG_ID IN (" text="'1'"/>
carlos@0
    53
      <Parameter name="dateFrom"/>
carlos@0
    54
      <Parameter name="dateTo"/>
carlos@0
    55
  </SqlMethod>
carlos@0
    56
  <SqlMethod name="set" type="constant" return="multiple">
carlos@0
    57
      <SqlMethodComment></SqlMethodComment>
carlos@0
    58
      <Sql></Sql>
carlos@0
    59
  </SqlMethod>
carlos@0
    60
  <SqlMethod name="selectSummering" type="preparedStatement" return="multiple">
carlos@0
    61
    <SqlMethodComment></SqlMethodComment>
carlos@0
    62
    <Sql>
carlos@0
    63
    <![CDATA[
carlos@0
    64
      SELECT M_PRODUCT.NAME AS PRODUCT_NAME, SUM(ROUND(M_PRODUCTIONLINE.MOVEMENTQTY,2)) AS MOVEMENTQTY, C_UOM.NAME AS UOM_NAME
carlos@0
    65
      FROM M_PRODUCTION, M_PRODUCTIONPLAN, M_PRODUCTIONLINE, M_PRODUCT, C_UOM
carlos@0
    66
      WHERE M_PRODUCTION.M_PRODUCTION_ID = M_PRODUCTIONPLAN.M_PRODUCTION_ID
carlos@0
    67
      AND M_PRODUCTIONPLAN.M_PRODUCTIONPLAN_ID = M_PRODUCTIONLINE.M_PRODUCTIONPLAN_ID
carlos@0
    68
      AND M_PRODUCTIONLINE.M_PRODUCT_ID = M_PRODUCT.M_PRODUCT_ID
carlos@0
    69
      AND M_PRODUCTIONLINE.C_UOM_ID = C_UOM.C_UOM_ID
carlos@0
    70
      AND M_PRODUCTION.AD_CLIENT_ID IN ('1')
carlos@0
    71
      AND M_PRODUCTION.AD_ORG_ID IN ('1')
carlos@0
    72
      AND M_PRODUCTION.PROCESSED = 'Y'
carlos@0
    73
      AND M_PRODUCTIONLINE.MOVEMENTQTY > 0
carlos@0
    74
      AND M_PRODUCTION.MOVEMENTDATE >= to_date(?)
carlos@0
    75
      AND M_PRODUCTION.MOVEMENTDATE < to_date(?)
carlos@0
    76
      AND M_PRODUCTION.ISSOTRX = 'Y'
carlos@0
    77
      GROUP BY M_PRODUCT.NAME, C_UOM.NAME
carlos@0
    78
      HAVING SUM(ROUND(M_PRODUCTIONLINE.MOVEMENTQTY,2)) > 0
carlos@0
    79
     ]]></Sql>
carlos@0
    80
      <Parameter name="adUserClient" type="replace" optional="true" after="M_PRODUCTION.AD_CLIENT_ID IN (" text="'1'"/>
carlos@0
    81
      <Parameter name="adUserOrg" type="replace" optional="true" after="M_PRODUCTION.AD_ORG_ID IN (" text="'1'"/>
carlos@0
    82
      <Parameter name="dateFrom"/>
carlos@0
    83
      <Parameter name="dateTo"/>
carlos@0
    84
  </SqlMethod>
carlos@0
    85
</SqlClass>