X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=gl%2Fincludes%2Fdb%2Fgl_db_account_types.inc;h=0ea366ecd7fd16a93dbc8594849648c8dcf14c4c;hb=3d154c1be37111f3659ad0d1a28b2576a51fdd38;hp=82de20a4a12c9c46f77d18d9df30758e4174121d;hpb=4a4ad9da800763d6ac61c8458a3c8bbc53f2436f;p=fa-stable.git diff --git a/gl/includes/db/gl_db_account_types.inc b/gl/includes/db/gl_db_account_types.inc index 82de20a4..0ea366ec 100644 --- a/gl/includes/db/gl_db_account_types.inc +++ b/gl/includes/db/gl_db_account_types.inc @@ -12,29 +12,59 @@ function add_account_type($id, $name, $class_id, $parent) { $sql = "INSERT INTO ".TB_PREF."chart_types (id, name, class_id, parent) - VALUES ($id, ".db_escape($name).", $class_id, $parent)"; + VALUES ($id, ".db_escape($name).", ".db_escape($class_id).", ".db_escape($parent).")"; - db_query($sql, "could not add account type"); + return db_query($sql); } -function update_account_type($id, $name, $class_id, $parent) +function update_account_type($id, $name, $class_id, $parent, $old_id) { - $sql = "UPDATE ".TB_PREF."chart_types SET name=".db_escape($name).", - class_id=$class_id, parent=$parent WHERE id = $id"; - - db_query($sql, "could not update account type"); + begin_transaction(); + if ($old_id != $id) + { + $sql = "SELECT id FROM ".TB_PREF."chart_types WHERE parent = ".db_escape($old_id); + + $result = db_query($sql, "could not get account type"); + + while ($myrow = db_fetch($result)) + { + $sql = "UPDATE ".TB_PREF."chart_types SET parent=".db_escape($id) + ." WHERE id = '".$myrow['id']."'"; + db_query($sql, "could not update account type"); + } + $sql = "SELECT account_code FROM ".TB_PREF."chart_master WHERE account_type = ".db_escape($old_id); + + $result = db_query($sql, "could not get account"); + + while ($myrow = db_fetch($result)) + { + $sql = "UPDATE ".TB_PREF."chart_master SET account_type=".db_escape($id) + ." WHERE account_code = '".$myrow['account_code']."'"; + db_query($sql, "could not update account"); + } + } + $sql = "UPDATE ".TB_PREF."chart_types SET id=".db_escape($id) .", name=".db_escape($name).", + class_id=".db_escape($class_id).", parent=".db_escape($parent) + ." WHERE id = ".db_escape($old_id); + + $ret = db_query($sql, "could not update account type"); + commit_transaction(); + return $ret; } -function get_account_types() +function get_account_types($all=false) { - $sql = "SELECT * FROM ".TB_PREF."chart_types ORDER BY class_id, id"; + $sql = "SELECT * FROM ".TB_PREF."chart_types"; + + if (!$all) $sql .= " WHERE !inactive"; + $sql .= " ORDER BY class_id, id"; return db_query($sql, "could not get account types"); } function get_account_type($id) { - $sql = "SELECT * FROM ".TB_PREF."chart_types WHERE id = $id"; + $sql = "SELECT * FROM ".TB_PREF."chart_types WHERE id = ".db_escape($id); $result = db_query($sql, "could not get account type"); @@ -43,7 +73,7 @@ function get_account_type($id) function get_account_type_name($id) { - $sql = "SELECT name FROM ".TB_PREF."chart_types WHERE id = $id"; + $sql = "SELECT name FROM ".TB_PREF."chart_types WHERE id = ".db_escape($id); $result = db_query($sql, "could not get account type"); @@ -51,40 +81,41 @@ function get_account_type_name($id) return $row[0]; } - function delete_account_type($id) { - $sql = "DELETE FROM ".TB_PREF."chart_types WHERE id = $id"; + $sql = "DELETE FROM ".TB_PREF."chart_types WHERE id = ".db_escape($id); db_query($sql, "could not delete account type"); } -function add_account_class($id, $name, $balance, $sign_conv) +function add_account_class($id, $name, $ctype) { - $sql = "INSERT INTO ".TB_PREF."chart_class (cid, class_name, balance_sheet, sign_convert) - VALUES ($id, ".db_escape($name).", $balance, $sign_conv)"; + $sql = "INSERT INTO ".TB_PREF."chart_class (cid, class_name, ctype) + VALUES (".db_escape($id).", ".db_escape($name).", ".db_escape($ctype).")"; - db_query($sql, "could not add account type"); + return db_query($sql); } -function update_account_class($id, $name, $balance, $sign_conv) +function update_account_class($id, $name, $ctype) { $sql = "UPDATE ".TB_PREF."chart_class SET class_name=".db_escape($name).", - balance_sheet=$balance, sign_convert=$sign_conv WHERE cid = $id"; + ctype=".db_escape($ctype)." WHERE cid = ".db_escape($id); - db_query($sql, "could not update account type"); + return db_query($sql); } -function get_account_classes() +function get_account_classes($all=false) { - $sql = "SELECT * FROM ".TB_PREF."chart_class ORDER BY cid"; + $sql = "SELECT * FROM ".TB_PREF."chart_class"; + if (!$all) $sql .= " WHERE !inactive"; + $sql .= " ORDER BY cid"; return db_query($sql, "could not get account types"); } function get_account_class($id) { - $sql = "SELECT * FROM ".TB_PREF."chart_class WHERE cid = $id"; + $sql = "SELECT * FROM ".TB_PREF."chart_class WHERE cid = ".db_escape($id); $result = db_query($sql, "could not get account type"); @@ -93,7 +124,7 @@ function get_account_class($id) function get_account_class_name($id) { - $sql = "SELECT class_name FROM ".TB_PREF."chart_class WHERE cid = $id"; + $sql = "SELECT class_name FROM ".TB_PREF."chart_class WHERE cid =".db_escape($id); $result = db_query($sql, "could not get account type"); @@ -101,22 +132,11 @@ function get_account_class_name($id) return $row[0]; } -function get_sign_convert($account_type) -{ - $sql = "SELECT sign_convert FROM ".TB_PREF."chart_class INNER JOIN ".TB_PREF."chart_types ON - ".TB_PREF."chart_class.cid = ".TB_PREF."chart_types.class_id WHERE ".TB_PREF."chart_types.id=$account_type"; - $result = db_query($sql, "could not get sign convert"); - - $row = db_fetch_row($result); - return ($row[0]==1); -} - function delete_account_class($id) { - $sql = "DELETE FROM ".TB_PREF."chart_class WHERE cid = $id"; + $sql = "DELETE FROM ".TB_PREF."chart_class WHERE cid = ".db_escape($id); db_query($sql, "could not delete account type"); } - ?> \ No newline at end of file