src-db/database/model/triggers/M_PRODUCT_CATEGORY_TRG.xml
author Juan Pablo Aroztegi <juanpablo.aroztegi@openbravo.com>
Mon, 28 Apr 2008 09:28:08 +0000
changeset 785 8dba91261590
parent 781 d68cf344696f
child 1067 4a05c922c488
permissions -rw-r--r--
Fix last update of copyright years in database files
<?xml version="1.0"?>
  <database name="TRIGGER M_PRODUCT_CATEGORY_TRG">
    <trigger name="M_PRODUCT_CATEGORY_TRG" table="M_PRODUCT_CATEGORY" fires="after" insert="true" update="false" delete="false" foreach="row">
      <body><![CDATA[
    /*************************************************************************
    * The contents of this file are subject to the Compiere Public
    * License 1.1 ("License"); You may not use this file except in
    * compliance with the License. You may obtain a copy of the License in
    * the legal folder of your Openbravo installation.
    * Software distributed under the License is distributed on an
    * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
    * implied. See the License for the specific language governing rights
    * and limitations under the License.
    * The Original Code is  Compiere  ERP &  Business Solution
    * The Initial Developer of the Original Code is Jorg Janke and ComPiere, Inc.
    * Portions created by Jorg Janke are Copyright (C) 1999-2001 Jorg Janke,
    * parts created by ComPiere are Copyright (C) ComPiere, Inc.;
    * All Rights Reserved.
    * Contributor(s): Openbravo SL
    * Contributions are Copyright (C) 2001-2008 Openbravo, S.L.
    *
    * Specifically, this derivative work is based upon the following Compiere
    * file and version.
    *************************************************************************
    * New Accounting Defaults
    */
   TYPE RECORD IS REF CURSOR;
  Cur_Defaults RECORD;
BEGIN
  FOR Cur_Defaults IN
    (
    SELECT *
    FROM C_AcctSchema_Default d
    WHERE EXISTS
      (
      SELECT *
      FROM AD_ClientInfo c
      WHERE d.C_AcctSchema_ID IN(c.C_AcctSchema1_ID, c.C_AcctSchema2_ID, c.C_AcctSchema3_ID)
        AND AD_Client_ID=:new.AD_Client_ID
      )
    )
  LOOP
    INSERT
    INTO M_Product_Category_Acct
      (
        M_Product_Category_ID, C_AcctSchema_ID, AD_Client_ID,
        AD_Org_ID, IsActive, Created,
        CreatedBy, Updated, UpdatedBy,
        P_Revenue_Acct, P_Expense_Acct, P_Asset_Acct,
        P_COGS_Acct, P_PurchasePriceVariance_Acct, P_InvoicePriceVariance_Acct,
        P_TradeDiscountRec_Acct, P_TradeDiscountGrant_Acct
      )
      VALUES
      (
        :new.M_Product_Category_ID, Cur_Defaults.C_AcctSchema_ID, :new.AD_Client_ID,
        :new.AD_ORG_ID,  'Y', now(),
        :new.CreatedBy, now(), :new.UpdatedBy,
        Cur_Defaults.P_Revenue_Acct, Cur_Defaults.P_Expense_Acct, Cur_Defaults.P_Asset_Acct,
        Cur_Defaults.P_COGS_Acct, Cur_Defaults.P_PurchasePriceVariance_Acct, Cur_Defaults.P_InvoicePriceVariance_Acct,
        Cur_Defaults.P_TradeDiscountRec_Acct, Cur_Defaults.P_TradeDiscountGrant_Acct
      )
      ;
  END LOOP;
END M_PRODUCT_CATEGORY_TRG
]]></body>
    </trigger>
  </database>