From 7735892d35bda5a3c4f47893dc44a5b2e89e0531 Mon Sep 17 00:00:00 2001 From: Janusz Dobrowolski Date: Sat, 3 Feb 2018 11:26:30 +0100 Subject: [PATCH] Bank Payment: for selected supplier payment set supplier account dimensions. --- gl/includes/ui/gl_bank_ui.inc | 51 +++++++++++++------------ purchasing/includes/db/suppliers_db.inc | 2 +- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/gl/includes/ui/gl_bank_ui.inc b/gl/includes/ui/gl_bank_ui.inc index b5a0932b..86a17bcd 100644 --- a/gl/includes/ui/gl_bank_ui.inc +++ b/gl/includes/ui/gl_bank_ui.inc @@ -218,11 +218,6 @@ function gl_edit_item_controls(&$order, $dim, $Index=null) $_POST['LineMemo'] = $item->reference; hidden('Index', $id); - echo gl_all_accounts_list('code_id', null, true, true); - if ($dim >= 1) - dimensions_list_cells(null, 'dimension_id', null, true, " ", false, 1); - if ($dim > 1) - dimensions_list_cells(null, 'dimension2_id', null, true, " ", false, 2); $Ajax->activate('items_table'); } else @@ -233,30 +228,36 @@ function gl_edit_item_controls(&$order, $dim, $Index=null) if(isset($_POST['_code_id_update'])) { $Ajax->activate('code_id'); } - - if ($_POST['PayType'] == PT_CUSTOMER) + if (list_updated('PayType') || list_updated('person_id')) { - $acc = get_branch_accounts($_POST['PersonDetailID']); - $_POST['code_id'] = $acc['receivables_account']; - } - elseif ($_POST['PayType'] == PT_SUPPLIER) - { - $acc = get_supplier_accounts($_POST['person_id']); - $_POST['code_id'] = $acc['payable_account']; - } - else { - $_POST['code_id'] = - get_company_pref($payment ? 'default_cogs_act':'default_inv_sales_act'); + if ($_POST['PayType'] == PT_CUSTOMER) + { + $acc = get_branch_accounts($_POST['PersonDetailID']); + $_POST['code_id'] = $acc['receivables_account']; + } + elseif ($_POST['PayType'] == PT_SUPPLIER) + { + $acc = get_supplier_accounts($_POST['person_id']); + $_POST['code_id'] = $acc['payable_account']; + $_POST['dimension_id'] = $acc['dimension_id']; + $_POST['dimension2_id'] = $acc['dimension2_id']; + } + else { + $_POST['code_id'] = + get_company_pref($payment ? 'default_cogs_act':'default_inv_sales_act'); + } + $Ajax->activate('dimension_id'); + $Ajax->activate('dimension2_id'); } - echo gl_all_accounts_list('code_id', null, true, true); - if ($dim >= 1) - dimensions_list_cells(null, 'dimension_id', null, true, " ", false, 1); - if ($dim > 1) - dimensions_list_cells(null, 'dimension2_id', null, true, " ", false, 2); } - if ($dim < 1) + echo gl_all_accounts_list('code_id', null, true, true); + if ($dim >= 1) + dimensions_list_cells(null, 'dimension_id', null, true, " ", false, 1); + else hidden('dimension_id', 0); - if ($dim < 2) + if ($dim > 1) + dimensions_list_cells(null, 'dimension2_id', null, true, " ", false, 2); + else hidden('dimension2_id', 0); amount_cells(null, 'amount'); diff --git a/purchasing/includes/db/suppliers_db.inc b/purchasing/includes/db/suppliers_db.inc index c031cede..2125e6a5 100644 --- a/purchasing/includes/db/suppliers_db.inc +++ b/purchasing/includes/db/suppliers_db.inc @@ -149,7 +149,7 @@ function get_supplier_name($supplier_id) function get_supplier_accounts($supplier_id) { - $sql = "SELECT payable_account,purchase_account,payment_discount_account FROM ".TB_PREF."suppliers WHERE supplier_id=".db_escape($supplier_id); + $sql = "SELECT payable_account,purchase_account,payment_discount_account, dimension_id, dimension2_id FROM ".TB_PREF."suppliers WHERE supplier_id=".db_escape($supplier_id); $result = db_query($sql, "could not get supplier"); -- 2.30.2