details: /erp/devel/pi/rev/c4c2e83df2d3 changeset: 7407:c4c2e83df2d3 user: Harikrishnan Raja <harikrishnan.raja <at> openbravo.com> date: Thu May 20 17:58:34 2010 +0530 summary: Fixes Issue 13274 In the function c_validcombination_clone their is a logic for generating the new value for the element value.In this logic they are subtracting the Account Length from Sub account Length.Hence if both are equal this value will become zero.Hence a both the values are checked in the org schema trigger.
diffstat: src-db/database/model/triggers/AD_ORG_ACCTSCHEMA_TRG2.xml | 33 +++++++++++++++ src-db/database/model/triggers/C_BPARTNER_TRG.xml | 11 +++- src-db/database/sourcedata/AD_MESSAGE.xml | 11 +++++ 3 files changed, 52 insertions(+), 3 deletions(-) diffs (90 lines): diff -r eca1ef97ab25 -r c4c2e83df2d3 src-db/database/model/triggers/AD_ORG_ACCTSCHEMA_TRG2.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src-db/database/model/triggers/AD_ORG_ACCTSCHEMA_TRG2.xml Thu May 20 17:58:34 2010 +0530 @@ -0,0 +1,33 @@ +<?xml version="1.0"?> + <database name="TRIGGER AD_ORG_ACCTSCHEMA_TRG2"> + <trigger name="AD_ORG_ACCTSCHEMA_TRG2" table="AD_ORG_ACCTSCHEMA" fires="after" insert="true" update="true" delete="true" foreach="row"> + <body><![CDATA[ +/************************************************************************* +* The contents of this file are subject to the Openbravo Public License +* Version 1.0 (the "License"), being the Mozilla Public License +* Version 1.1 with a permitted attribution clause; you may not use this +* file except in compliance with the License. You may obtain a copy of +* the License at http://www.openbravo.com/legal/license.html +* 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 Openbravo ERP. +* The Initial Developer of the Original Code is Openbravo SLU +* All portions are Copyright (C) 2010 Openbravo SLU +* All Rights Reserved. +* Contributor(s): ______________________________________. +************************************************************************/ + +BEGIN + + IF AD_isTriggerEnabled()='N' THEN RETURN; + END IF; + + IF((:NEW.ISBPNEWACCOUNT = 'Y' OR :NEW.ISPRNEWACCOUNT = 'Y') AND :NEW.ACCT_LENGTH >= :NEW.SUBACCT_LENGTH) THEN + RAISE_APPLICATION_ERROR(-20000, '@ACCOUNT_LENGTH_CHECK@'); + END IF; +END AD_ORG_ACCTSCHEMA_TRG2 +]]></body> + </trigger> + </database> diff -r eca1ef97ab25 -r c4c2e83df2d3 src-db/database/model/triggers/C_BPARTNER_TRG.xml --- a/src-db/database/model/triggers/C_BPARTNER_TRG.xml Thu May 20 13:15:18 2010 +0530 +++ b/src-db/database/model/triggers/C_BPARTNER_TRG.xml Thu May 20 17:58:34 2010 +0530 @@ -97,7 +97,9 @@ /* Retrieving the prepayment account NUMBER */ - c_validcombination_clone(Cur_Defaults.C_Prepayment_Acct, v_Sequence_No, :new.Name, Cur_Defaults.acct_length, Cur_Defaults.subacct_length, v_C_Prepayment_Acct); + IF(Cur_Defaults.C_Prepayment_Acct IS NOT NULL) THEN + c_validcombination_clone(Cur_Defaults.C_Prepayment_Acct, v_Sequence_No, :new.Name, Cur_Defaults.acct_length, Cur_Defaults.subacct_length, v_C_Prepayment_Acct); + END IF; /* Inserting the new account NUMBER @@ -138,12 +140,15 @@ /* Retrieving the liability services account NUMBER */ - c_validcombination_clone(Cur_Defaults.V_Liability_Services_Acct, v_Sequence_No, :new.Name, Cur_Defaults.acct_length, Cur_Defaults.subacct_length, v_V_Liability_Services_Acct); + IF(Cur_Defaults.V_Liability_Services_Acct IS NOT NULL) THEN + c_validcombination_clone(Cur_Defaults.V_Liability_Services_Acct, v_Sequence_No, :new.Name, Cur_Defaults.acct_length, Cur_Defaults.subacct_length, v_V_Liability_Services_Acct); + END IF; /* Retrieving the prepayment account NUMBER */ + IF(Cur_Defaults.V_Prepayment_Acct IS NOT NULL) THEN c_validcombination_clone(Cur_Defaults.V_Prepayment_Acct, v_Sequence_No, :new.Name, Cur_Defaults.acct_length, Cur_Defaults.subacct_length, v_V_Prepayment_Acct); - + END IF; /* Inserting the new account NUMBER */ diff -r eca1ef97ab25 -r c4c2e83df2d3 src-db/database/sourcedata/AD_MESSAGE.xml --- a/src-db/database/sourcedata/AD_MESSAGE.xml Thu May 20 13:15:18 2010 +0530 +++ b/src-db/database/sourcedata/AD_MESSAGE.xml Thu May 20 17:58:34 2010 +0530 @@ -31949,6 +31949,17 @@ <!--A96A9CE562E94DBC8D59C2F0208028B0--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--A96A9CE562E94DBC8D59C2F0208028B0--></AD_MESSAGE> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--><AD_MESSAGE> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <AD_MESSAGE_ID><![CDATA[AA196DCD58DA494FA1ADCF695FFAA80C]]></AD_MESSAGE_ID> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <VALUE><![CDATA[ACCOUNT_LENGTH_CHECK]]></VALUE> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <MSGTEXT><![CDATA[Account Length can not be greater than the Sub Account Length.]]></MSGTEXT> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <MSGTYPE><![CDATA[E]]></MSGTYPE> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> +<!--AA196DCD58DA494FA1ADCF695FFAA80C--></AD_MESSAGE> + <!--AB8F1CCBF6254BB2862CE7FD75D2B6AE--><AD_MESSAGE> <!--AB8F1CCBF6254BB2862CE7FD75D2B6AE--> <AD_MESSAGE_ID><![CDATA[AB8F1CCBF6254BB2862CE7FD75D2B6AE]]></AD_MESSAGE_ID> <!--AB8F1CCBF6254BB2862CE7FD75D2B6AE--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> ------------------------------------------------------------------------------ _______________________________________________ Openbravo-commits mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openbravo-commits
