Fiscal Year delete . now removes all transactions and convert into relevant open...
[fa-stable.git] / gl / inquiry / journal_inquiry.php
index a0ad749c69bb4067fe01692a643197f597905052..15361bd2be26b16cd528e14fbc8b1a6f6b86863a 100644 (file)
@@ -44,10 +44,12 @@ start_row();
 
 ref_cells(_("Reference:"), 'Ref', '',null, _('Enter reference fragment or leave empty'));
 
-journal_types_list_cells(_("Transaction Type:"), "filterType");
+journal_types_list_cells(_("Type:"), "filterType");
 date_cells(_("From:"), 'FromDate', '', null, 0, 0, -1);
 date_cells(_("To:"), 'ToDate');
 
+check_cells( _("Show closed:"), 'AlsoClosed', null);
+
 submit_cells('Search', _("Search"), '', '', 'default');
 
 end_row();
@@ -55,6 +57,11 @@ end_table();
 
 end_form();
 
+function journal_pos($row)
+{
+       return $row['gl_seq'] ? $row['gl_seq'] : '-';
+}
+
 function systype_name($dummy, $type)
 {
        return systypes::name($type);
@@ -70,11 +77,6 @@ function gl_link($row)
        return get_gl_view_str($row["type"], $row["type_no"]);
 }
 
-function is_closed($row)
-{
-       return $row['gl_seq'] ? _('Yes') : _('No');
-}
-
 $editors = array(
        0 => "/gl/gl_journal.php?ModifyGL=Yes&trans_no=%d&trans_type=%d",
 //     1=> Bank Payment,
@@ -103,26 +105,32 @@ function edit_link($row)
 {
        global $editors;
 
-       return isset($editors[$row["type"]]) ? 
+       return isset($editors[$row["type"]]) && !is_closed_trans($row["type"], $row["type_no"]) 
                pager_link(_("Edit"), 
                        sprintf($editors[$row["type"]], $row["type_no"], $row["type"]),
                        ICON_EDIT) : '';
 }
 
-$sql = "SELECT gl.tran_date,
+$sql = "SELECT a.gl_seq,
+                               gl.tran_date,
                                gl.type,
                                gl.type_no,
                                refs.reference,
                                SUM(IF(gl.amount>0, gl.amount,0)) as amount,"
-                               ."com.memo_"
+                               ."com.memo_,"
+                               ."u.user_id"
                ." FROM ". TB_PREF."gl_trans as gl"
+               ." LEFT JOIN ". TB_PREF."audit_trail as a ON 
+                       (gl.type=a.type AND gl.type_no=a.trans_no)"
                ." LEFT JOIN ". TB_PREF."comments as com ON 
                        (gl.type=com.type AND gl.type_no=com.id)"
                ." LEFT JOIN ". TB_PREF."refs as refs ON 
-                       (gl.type=refs.type AND gl.type_no=refs.id)
+                       (gl.type=refs.type AND gl.type_no=refs.id)"
+               ." LEFT JOIN ". TB_PREF."users as u ON 
+                       a.user=u.id
                WHERE gl.tran_date >= '" . date2sql($_POST['FromDate']) . "'
        AND gl.tran_date <= '" . date2sql($_POST['ToDate']) . "'
-       AND gl.amount!=0";
+       AND gl.amount!=0 AND !ISNULL(a.gl_seq)";
 
 if (isset($_POST['Ref']) && $_POST['Ref'] != "") {
        $sql .= " AND reference LIKE '%". $_POST['Ref'] . "%'";
@@ -130,20 +138,29 @@ if (isset($_POST['Ref']) && $_POST['Ref'] != "") {
 if (get_post('filterType') != -1) {
        $sql .= " AND gl.type=".get_post('filterType');
 }
+if (!check_value('AlsoClosed')) {
+       $sql .= " AND a.gl_seq=0";
+}
 
 $sql .= " GROUP BY gl.type, gl.type_no";
 
 $cols = array(
+       _("#") => array('fun'=>'journal_pos', 'align'=>'center'), 
        _("Date") =>array('name'=>'tran_date','type'=>'date','ord'=>'desc'),
        _("Type") => array('fun'=>'systype_name'), 
        _("Trans #") => array('fun'=>'view_link'), 
        _("Reference"), 
        _("Amount") => array('type'=>'amount'),
        _("Memo"),
+       _("User"),
        _("View") => array('insert'=>true, 'fun'=>'gl_link'),
        array('insert'=>true, 'fun'=>'edit_link')
 );
 
+if (!check_value('AlsoClosed')) {
+       $cols[_("#")] = 'skip';
+}
+
 $table =& new_db_pager('journal_tbl', $sql, $cols);
 
 if (get_post('Search')) {