From dd1bf3a5473d8b0e48e9d5d03a39cb006c9e928b Mon Sep 17 00:00:00 2001 From: Janusz Dobrowolski Date: Thu, 26 Mar 2009 15:21:41 +0000 Subject: [PATCH] Fixed POS creation when no cash account is defined. --- sales/includes/db/sales_points_db.inc | 17 ++++++++--------- sales/manage/sales_points.php | 18 ++++++++++++++---- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/sales/includes/db/sales_points_db.inc b/sales/includes/db/sales_points_db.inc index 65e045e..9feae5a 100644 --- a/sales/includes/db/sales_points_db.inc +++ b/sales/includes/db/sales_points_db.inc @@ -33,21 +33,20 @@ function update_sales_point($id, $name, $location, $account, $cash, $credit) function get_all_sales_points() { $sql = "SELECT pos.*, loc.location_name, acc.bank_account_name FROM " - .TB_PREF."sales_pos as pos," - .TB_PREF."locations as loc," - .TB_PREF."bank_accounts as acc" - ." WHERE pos.pos_location=loc.loc_code AND pos.pos_account=acc.id"; + .TB_PREF."sales_pos as pos + LEFT JOIN ".TB_PREF."locations as loc on pos.pos_location=loc.loc_code + LEFT JOIN ".TB_PREF."bank_accounts as acc on pos.pos_account=acc.id"; return db_query($sql, "could not get all POS definitions"); } function get_sales_point($id) { - $sql = "SELECT pos.*, loc.location_name, acc.bank_account_name, acc.account_code FROM " - .TB_PREF."sales_pos as pos," - .TB_PREF."locations as loc," - .TB_PREF."bank_accounts as acc" - ." WHERE pos.id=$id AND pos.pos_location=loc.loc_code AND pos.pos_account=acc.id"; + $sql = "SELECT pos.*, loc.location_name, acc.bank_account_name FROM " + .TB_PREF."sales_pos as pos + LEFT JOIN ".TB_PREF."locations as loc on pos.pos_location=loc.loc_code + LEFT JOIN ".TB_PREF."bank_accounts as acc on pos.pos_account=acc.id + WHERE pos.id='$id'"; $result = db_query($sql, "could not get POS definition"); diff --git a/sales/manage/sales_points.php b/sales/manage/sales_points.php index ac949c0..799ed3a 100644 --- a/sales/manage/sales_points.php +++ b/sales/manage/sales_points.php @@ -106,6 +106,10 @@ echo '
'; start_form(); +$cash = db_has_cash_accounts(); + +if (!$cash) display_note(_("To have cash POS first define at least one cash bank account.")); + start_table($table_style2); if ($selected_id != -1) @@ -124,11 +128,17 @@ if ($selected_id != -1) } text_row_ex(_("Point of Sale Name").':', 'name', 20, 30); -check_row(_('Allowed credit sale'), 'credit', check_value('credit_sale')); -check_row(_('Allowed cash sale'), 'cash', check_value('cash_sale')); -locations_list_row(_("POS location").':', 'location'); -cash_accounts_list_row(_("Default cash account").':', 'account'); +if($cash) { + check_row(_('Allowed credit sale'), 'credit', check_value('credit_sale')); + check_row(_('Allowed cash sale'), 'cash', check_value('cash_sale')); + cash_accounts_list_row(_("Default cash account").':', 'account'); +} else { + hidden('credit', 1); + hidden('cash', 0); + hidden('account', 0); +} +locations_list_row(_("POS location").':', 'location'); end_table(1); submit_add_or_update_center($selected_id == -1, '', true); -- 2.30.2