# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+# MA 02110-1335, USA.
#======================================================================
#
# General ledger backend code
#======================================================================
#
# General ledger backend code
my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
+ SL::DB->client->with_transaction(sub {
+ do_query($form, SL::DB->client->dbh, qq|DELETE FROM gl WHERE id = ?|, conv_i($form->{id}));
+ 1;
+ }) or do { die SL::DB->client->error };
my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
do_query($form, $dbh, $query, @values);
}
do_query($form, $dbh, $query, @values);
}
WHERE id = ?|;
@values = ($form->{reference}, $form->{description}, $form->{notes},
WHERE id = ?|;
@values = ($form->{reference}, $form->{description}, $form->{notes},
- conv_date($form->{transdate}), conv_i($department_id), $form->{taxincluded} ? 't' : 'f',
+ conv_date($form->{transdate}), conv_i($form->{department_id}), $form->{taxincluded} ? 't' : 'f',
$form->{storno} ? 't' : 'f', conv_i($form->{storno_id}), $form->{ob_transaction} ? 't' : 'f', $form->{cb_transaction} ? 't' : 'f',
conv_i($form->{id}));
do_query($form, $dbh, $query, @values);
$form->{storno} ? 't' : 'f', conv_i($form->{storno_id}), $form->{ob_transaction} ? 't' : 'f', $form->{cb_transaction} ? 't' : 'f',
conv_i($form->{id}));
do_query($form, $dbh, $query, @values);
}
sub all_transactions {
my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
}
sub all_transactions {
my ($self, $myconfig, $form) = @_;
$main::lxdebug->enter_sub();
my ($query, $sth, $source, $null, $space);
my ($glwhere, $arwhere, $apwhere) = ("1 = 1", "1 = 1", "1 = 1");
my ($query, $sth, $source, $null, $space);
my ($glwhere, $arwhere, $apwhere) = ("1 = 1", "1 = 1", "1 = 1");
$glwhere .= qq| AND g.reference ILIKE ?|;
$arwhere .= qq| AND a.invnumber ILIKE ?|;
$apwhere .= qq| AND a.invnumber ILIKE ?|;
$glwhere .= qq| AND g.reference ILIKE ?|;
$arwhere .= qq| AND a.invnumber ILIKE ?|;
$apwhere .= qq| AND a.invnumber ILIKE ?|;
- push(@glvalues, $::form->like($form->{reference}));
- push(@arvalues, $::form->like($form->{reference}));
- push(@apvalues, $::form->like($form->{reference}));
+ push(@glvalues, like($form->{reference}));
+ push(@arvalues, like($form->{reference}));
+ push(@apvalues, like($form->{reference}));
$glwhere .= qq| AND g.department_id = ?|;
$arwhere .= qq| AND a.department_id = ?|;
$apwhere .= qq| AND a.department_id = ?|;
$glwhere .= qq| AND g.department_id = ?|;
$arwhere .= qq| AND a.department_id = ?|;
$apwhere .= qq| AND a.department_id = ?|;
- push(@glvalues, $department);
- push(@arvalues, $department);
- push(@apvalues, $department);
+ push(@glvalues, $form->{department_id});
+ push(@arvalues, $form->{department_id});
+ push(@apvalues, $form->{department_id});
}
if ($form->{source}) {
$glwhere .= " AND ac.trans_id IN (SELECT trans_id from acc_trans WHERE source ILIKE ?)";
$arwhere .= " AND ac.trans_id IN (SELECT trans_id from acc_trans WHERE source ILIKE ?)";
$apwhere .= " AND ac.trans_id IN (SELECT trans_id from acc_trans WHERE source ILIKE ?)";
}
if ($form->{source}) {
$glwhere .= " AND ac.trans_id IN (SELECT trans_id from acc_trans WHERE source ILIKE ?)";
$arwhere .= " AND ac.trans_id IN (SELECT trans_id from acc_trans WHERE source ILIKE ?)";
$apwhere .= " AND ac.trans_id IN (SELECT trans_id from acc_trans WHERE source ILIKE ?)";
- push(@glvalues, $::form->like($form->{source}));
- push(@arvalues, $::form->like($form->{source}));
- push(@apvalues, $::form->like($form->{source}));
+ push(@glvalues, like($form->{source}));
+ push(@arvalues, like($form->{source}));
+ push(@apvalues, like($form->{source}));
$glwhere .= " AND g.description ILIKE ?";
$arwhere .= " AND ct.name ILIKE ?";
$apwhere .= " AND ct.name ILIKE ?";
$glwhere .= " AND g.description ILIKE ?";
$arwhere .= " AND ct.name ILIKE ?";
$apwhere .= " AND ct.name ILIKE ?";
- push(@glvalues, $::form->like($form->{description}));
- push(@arvalues, $::form->like($form->{description}));
- push(@apvalues, $::form->like($form->{description}));
+ push(@glvalues, like($form->{description}));
+ push(@arvalues, like($form->{description}));
+ push(@apvalues, like($form->{description}));
$glwhere .= " AND g.notes ILIKE ?";
$arwhere .= " AND a.notes ILIKE ?";
$apwhere .= " AND a.notes ILIKE ?";
$glwhere .= " AND g.notes ILIKE ?";
$arwhere .= " AND a.notes ILIKE ?";
$apwhere .= " AND a.notes ILIKE ?";
- push(@glvalues, $::form->like($form->{notes}));
- push(@arvalues, $::form->like($form->{notes}));
- push(@apvalues, $::form->like($form->{notes}));
+ push(@glvalues, like($form->{notes}));
+ push(@arvalues, like($form->{notes}));
+ push(@apvalues, like($form->{notes}));
($form->{account_description}) = selectrow_query($form, $dbh, $query, $form->{accno});
}
($form->{account_description}) = selectrow_query($form, $dbh, $query, $form->{accno});
}
my ($query, $sth, $ref, @values);
my ($query, $sth, $ref, @values);
$query = qq|SELECT closedto, revtrans FROM defaults|;
($form->{closedto}, $form->{revtrans}) = selectrow_query($form, $dbh, $query);
$query = qq|SELECT closedto, revtrans FROM defaults|;
($form->{closedto}, $form->{revtrans}) = selectrow_query($form, $dbh, $query);
if ($form->{id}) {
$query =
qq|SELECT g.reference, g.description, g.notes, g.transdate, g.storno, g.storno_id,
if ($form->{id}) {
$query =
qq|SELECT g.reference, g.description, g.notes, g.transdate, g.storno, g.storno_id,
- d.description AS department, e.name AS employee, g.taxincluded, g.gldate,
+ g.department_id, d.description AS department,
+ e.name AS employee, g.taxincluded, g.gldate,
g.ob_transaction, g.cb_transaction
FROM gl g
LEFT JOIN department d ON (d.id = g.department_id)
g.ob_transaction, g.cb_transaction
FROM gl g
LEFT JOIN department d ON (d.id = g.department_id)
ORDER BY c.accno|;
$form->{chart} = selectall_hashref_query($form, $dbh, $query, conv_date($form->{transdate}));
ORDER BY c.accno|;
$form->{chart} = selectall_hashref_query($form, $dbh, $query, conv_date($form->{transdate}));
my ($self, $form, $myconfig, $id) = @_;
my ($query, $new_id, $storno_row, $acc_trans_rows);
my ($self, $form, $myconfig, $id) = @_;
my ($query, $new_id, $storno_row, $acc_trans_rows);
$query = qq|SELECT nextval('glid')|;
($new_id) = selectrow_query($form, $dbh, $query);
$query = qq|SELECT nextval('glid')|;
($new_id) = selectrow_query($form, $dbh, $query);
do_query($form, $dbh, $query, (values %$row));
}
do_query($form, $dbh, $query, (values %$row));
}