Added checks on bank account creation to avoid selection of already used GL account.
authorJanusz Dobrowolski <janusz@frontaccouting.eu>
Fri, 8 Jul 2011 09:13:01 +0000 (11:13 +0200)
committerJanusz Dobrowolski <janusz@frontaccouting.eu>
Fri, 8 Jul 2011 09:13:01 +0000 (11:13 +0200)
gl/includes/db/gl_db_accounts.inc
gl/manage/bank_accounts.php

index f085cfe84b8cd767374cefed78ae142634b78f7a..f97b713e57820e674fec4aae35fcbe314f7400d3 100644 (file)
@@ -179,4 +179,14 @@ function gl_account_in_quick_entry_lines($acc)
        $myrow = db_fetch_row($result);
        return ($myrow[0] > 0); 
 }
+
+function gl_account_in_bank_accounts($acc)
+{
+       $sql= "SELECT COUNT(*) FROM ".TB_PREF."bank_accounts WHERE 
+               account_code=".db_escape($acc);
+       $result = db_query($sql,"Couldn't test bank account GL codes");
+
+       $myrow = db_fetch_row($result);
+       return ($myrow[0] > 0); 
+}
 ?>
\ No newline at end of file
index 634283b421d52a46c65be3eb70b8be49e0ea45b9..d8d02ab27b36d4188371618069f178183e4cb5dd 100644 (file)
@@ -33,7 +33,12 @@ if ($Mode=='ADD_ITEM' || $Mode=='UPDATE_ITEM')
                display_error(_("The bank account name cannot be empty."));
                set_focus('bank_account_name');
        } 
-       
+       if ($Mode=='ADD_ITEM' && (gl_account_in_bank_accounts(get_post('account_code')) 
+                       || key_in_foreign_table(get_post('account_code'), 'gl_trans', 'account', true))) {
+               $input_error = 1;
+               display_error(_("The GL account selected is already in use. Select another GL account."));
+               set_focus('account_code');
+       }
        if ($input_error != 1)
        {
        if ($selected_id != -1)