}
}
- my $false = ($myconfig->{dbdriver} eq 'Pg') ? "FALSE" : q|'0'|;
-
my %sort_columns = (
'id' => [ qw(id) ],
'transdate' => [ qw(transdate id) ],
$query =
qq|SELECT
- ac.acc_trans_id, g.id, 'gl' AS type, $false AS invoice, g.reference, ac.taxkey, c.link,
+ ac.acc_trans_id, g.id, 'gl' AS type, FALSE AS invoice, g.reference, ac.taxkey, c.link,
g.description, ac.transdate, ac.gldate, ac.source, ac.trans_id,
ac.amount, c.accno, g.notes, t.chart_id,
CASE WHEN (COALESCE(e.name, '') = '') THEN e.login ELSE e.name END AS employee
FROM acc_trans a
JOIN chart c ON (c.id = a.chart_id)
LEFT JOIN project p ON (p.id = a.project_id)
- LEFT JOIN tax t ON
- (t.id =
- (SELECT tk.tax_id
- FROM taxkeys tk
- WHERE (tk.taxkey_id = a.taxkey) AND
- ((CASE WHEN a.chart_id IN
- (SELECT chart_id FROM taxkeys WHERE taxkey_id = a.taxkey)
- THEN tk.chart_id = a.chart_id
- ELSE 1 = 1
- END)
- OR (c.link LIKE '%tax%'))
- AND (startdate <= a.transdate)
- ORDER BY startdate DESC LIMIT 1))
+ LEFT JOIN tax t ON (t.id = a.tax_id)
WHERE (a.trans_id = ?)
AND (a.fx_transaction = '0')
ORDER BY a.acc_trans_id, a.transdate|;
}
sub get_tax_dropdown {
+ my ($self, $accno) = @_;
+
my $myconfig = \%main::myconfig;
my $form = $main::form;
my $dbh = $form->get_standard_dbh($myconfig);
my $query = qq|SELECT category FROM chart WHERE accno = ?|;
- my ($category) = selectrow_query($form, $dbh, $query, $form->{accno});
+ my ($category) = selectrow_query($form, $dbh, $query, $accno);
$query = qq|SELECT * FROM tax WHERE chart_categories like '%$category%' order by taxkey, rate|;
my $sth = prepare_execute_query($form, $dbh, $query);
- $form->{TAX_ACCOUNTS} = [];
+ my @tax_accounts = ();
while (my $ref = $sth->fetchrow_hashref("NAME_lc")) {
- push(@{ $form->{TAX_ACCOUNTS} }, $ref);
+ push(@tax_accounts, $ref);
}
+ return @tax_accounts;
}
1;