X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=sql%2Falter2.2.php;h=63b479f4c1d35170da1eef86a964ab27e70b391b;hb=310a0d3ae5aeacbdaa0069546cc2652ac7518e6b;hp=c839df17ea6a6594459fea10378efd71733b0faa;hpb=46a0cd122367576da823e0ec3d84f5c97d97e7c3;p=fa-stable.git diff --git a/sql/alter2.2.php b/sql/alter2.2.php index c839df17..63b479f4 100644 --- a/sql/alter2.2.php +++ b/sql/alter2.2.php @@ -19,7 +19,7 @@ class fa2_2 { // function install($pref, $force) { - global $db; + global $db, $systypes_array; // set item category dflt accounts to values from company GL setup $prefs = get_company_prefs(); $sql = "UPDATE {$pref}stock_category SET " @@ -28,8 +28,60 @@ class fa2_2 { ."dflt_inventory_act = '" . $prefs['default_inventory_act'] . "'," ."dflt_adjustment_act = '" . $prefs['default_adj_act'] . "'," ."dflt_assembly_act = '" . $prefs['default_assembly_act']."'"; - $ret = db_query($sql, "Cannot update category default GL accounts"); - return $ret; + if (db_query($sql)==false) { + display_error("Cannot update category default GL accounts" + .':
'. db_error_msg($db)); + return false; + } + // add all references to refs table for easy searching via journal interface + foreach($systypes_array as $typeno => $typename) { + $info = get_systype_db_info($typeno); + if ($info == null || $info[3] == null) continue; + $tbl = str_replace(TB_PREF, $pref, $info[0]); + $sql = "SELECT {$info[2]} as id,{$info[3]} as ref FROM $tbl"; + if ($info[1]) + $sql .= " WHERE {$info[1]}=$typeno"; + $result = db_query($sql); + if (db_num_rows($result)) { + while ($row = db_fetch($result)) { + $res2 = db_query("INSERT INTO {$pref}refs VALUES(" + . $row['id'].",".$typeno.",'".$row['ref']."')"); + if (!$res2) { + display_error(_("Cannot copy references from $tbl") + .':
'. db_error_msg($db)); + return false; + } + } + } + } +/* FIX // restore/init audit_trail data + $datatbl = array ( + "gl_trans"=> array("type", "type_no","tran_date"), + "purch_orders" => array("order_no", "'18'", "ord_date"), + "sales_orders" => array("order_no", "'30'", "ord_date"), + "workorders" => array("id", "'26'", "date_") ); + foreach ( $datatbl as $tblname => $tbl) { + $sql = "SELECT {$tbl[0]} as type, {$tbl[1]} as trans, {$tbl[2]} as dat" + . " FROM {$pref}{$tblname}"; + $result = db_query($sql); + if (db_num_rows($result)) { + $user = ; + $year = ; + while ($row = db_fetch($result)) { + $sql2 = "INSERT INTO ".$pref."audit_trail" + ." (type, trans_no, user, fiscal_year, gl_date, gl_seq) VALUES (" + . "{$row['type']},{$row['trans']},$user,$year,{$row['dat']},0)"; + $res2 = db_query($sql2); + if (!$res2) { + display_error(_("Cannot init audit_trail data") + .':
'. db_error_msg($db)); + return false; + } + } + } + } +*/ + return true; } // // Checking before install @@ -45,6 +97,8 @@ class fa2_2 { if (check_table($pref, 'company', 'default_delivery_required')) return false; if (check_table($pref, 'stock_category', 'dflt_dim2')) return false; if (check_table($pref, 'users', 'sticky_doc_date')) return false; + if (check_table($pref, 'audit_trail')) return false; + if (check_table($pref, 'stock_master','no_sale')) return false; return true; } };