database/model/triggers/AD_WF_NODE_TRG.xml
author Adrián Romero <adrian.romero@openbravo.com>
Tue, 20 Nov 2007 16:27:14 +0000
changeset 94 4e7ba7b8a4ad
parent 0 0247c26f10c6
child 132 33c5ca45fcff
permissions -rw-r--r--
fix: Changed check constraint names and foreign key names to fit in to
30 characteres.
adrian@94
     1
<?xml version="1.0"?>
adrian@94
     2
  <database name="TRIGGER AD_WF_NODE_TRG">
adrian@94
     3
    <trigger name="AD_WF_NODE_TRG" table="AD_WF_NODE" fires="after" insert="true" update="true" delete="false" foreach="row">
adrian@94
     4
      <body>
adrian@94
     5
adrian@94
     6
adrian@94
     7
    /*************************************************************************
adrian@94
     8
    * The contents of this file are subject to the Compiere License
adrian@94
     9
    * Version 2.5.0 ("License"); You may not use this file except in
adrian@94
    10
    * compliance with the License. You may obtain a copy of the License at
adrian@94
    11
    * http://www.compiere.org/license.html
adrian@94
    12
    * Software distributed under the License is distributed on an
adrian@94
    13
    * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
adrian@94
    14
    * implied. See the License for the specific language governing rights
adrian@94
    15
    * and limitations under the License.
adrian@94
    16
    * The Original Code is  Compiere  ERP &amp;  Business Solution
adrian@94
    17
    * The Initial Developer of the Original Code is Jorg Janke  and ComPiere,
adrian@94
    18
    Inc.
adrian@94
    19
    * Portions created by Jorg Janke are Copyright (C) 1999-2001 Jorg Janke,
adrian@94
    20
    * parts created by ComPiere are Copyright (C) ComPiere, Inc.;
adrian@94
    21
    * All Rights Reserved.
adrian@94
    22
    * Contributor(s): Openbravo SL
adrian@94
    23
    * Contributions are Copyright (C) 1999-2005 Openbravo, S.L
adrian@94
    24
    *************************************************************************
adrian@94
    25
    */
adrian@94
    26
    BEGIN
adrian@94
    27
    -- Insert AD_WF_Node Trigger
adrian@94
    28
    --  for Translation
adrian@94
    29
    IF INSERTING
adrian@94
    30
    THEN
adrian@94
    31
    --  Create Translation Row
adrian@94
    32
  INSERT
adrian@94
    33
  INTO AD_WF_Node_Trl
adrian@94
    34
    (
adrian@94
    35
      AD_WF_Node_ID, AD_Language, AD_Client_ID,
adrian@94
    36
      AD_Org_ID, IsActive, Created,
adrian@94
    37
      CreatedBy, Updated, UpdatedBy,
adrian@94
    38
      Name, Description, Help,
adrian@94
    39
      IsTranslated
adrian@94
    40
    )
adrian@94
    41
  SELECT :new.AD_WF_Node_ID,
adrian@94
    42
    AD_Language, :new.AD_Client_ID, :new.AD_Org_ID,
adrian@94
    43
    :new.IsActive, :new.Created, :new.CreatedBy,
adrian@94
    44
    :new.Updated, :new.UpdatedBy, :new.Name,
adrian@94
    45
    :new.Description, :new.Help, 'N'
adrian@94
    46
  FROM AD_Language
adrian@94
    47
  WHERE IsActive='Y'
adrian@94
    48
    AND IsSystemLanguage='Y';
adrian@94
    49
 END IF;
adrian@94
    50
 -- Inserting
adrian@94
    51
 -- AD_WF_Node update trigger
adrian@94
    52
 --  synchronize name,...
adrian@94
    53
 IF UPDATING THEN
adrian@94
    54
  IF(COALESCE(:old.Name, '.') &lt;&gt; COALESCE(:NEW.Name, '.')
adrian@94
    55
  OR COALESCE(:old.Description, '.') &lt;&gt; COALESCE(:NEW.Description, '.')
adrian@94
    56
  OR COALESCE(:old.Help, '.') &lt;&gt; COALESCE(:NEW.Help, '.'))
adrian@94
    57
 THEN
adrian@94
    58
    UPDATE AD_WF_Node_Trl
adrian@94
    59
      SET IsTranslated='N',
adrian@94
    60
      Updated=SysDate
adrian@94
    61
    WHERE AD_WF_Node_ID=:new.AD_WF_Node_ID;
adrian@94
    62
  END IF;
adrian@94
    63
 END IF;
adrian@94
    64
-- Updating
adrian@94
    65
END AD_WF_Node_Trg
adrian@94
    66
adrian@94
    67
</body>
adrian@94
    68
    </trigger>
adrian@94
    69
  </database>