for my $i (1..$form->{rowcount}) {
if ($form->{"curr_$i"} ne $form->{"old_curr_$i"}) {
- $query = qq|UPDATE currencies SET name = '| . $form->{"curr_$i"} . qq|' WHERE name = '| . $form->{"old_curr_$i"} . qq|'|;
- do_query($form, $dbh, $query);
+ $query = qq|UPDATE currencies SET name = ? WHERE name = ?|;
+ do_query($form, $dbh, $query, $form->{"curr_$i"}, $form->{"old_curr_$i"});
}
}
if (length($form->{new_curr}) > 0) {
- $query = qq|INSERT INTO currencies (name) VALUES ('| . $form->{new_curr} . qq|')|;
- do_query($form, $dbh, $query);
+ $query = qq|INSERT INTO currencies (name) VALUES (?)|;
+ do_query($form, $dbh, $query, $form->{new_curr});
}
$dbh->commit();
$sth->finish;
#Get currencies:
- $query = qq|SELECT name AS curr FROM currencies ORDER BY id|;
-
- $form->{CURRENCIES} = [];
-
- $sth = prepare_execute_query($form, $dbh, $query);
- $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref("NAME_lc")) {
- push @{ $form->{ CURRENCIES } } , $ref;
- }
- $sth->finish;
+ $query = qq|SELECT name AS curr FROM currencies ORDER BY id|;
+ $form->{CURRENCIES} = selectall_hashref_query($form, $dbh, $query);
#Which of them is the default currency?
$query = qq|SELECT name AS defaultcurrency FROM currencies WHERE id = (SELECT currency_id FROM defaults LIMIT 1);|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{defaultcurrency} = ($sth->fetchrow_hashref("NAME_lc"))->{defaultcurrency};
-
- $sth->finish;
+ ($form->{defaultcurrency}) = selectrow_query($form, $dbh, $query);
$dbh->disconnect;
my $dbh = $self->get_standard_dbh($myconfig);
my @currencies =();
- my $query = qq|SELECT name AS curr FROM currencies|;
-
- my $sth = prepare_execute_query($self, $dbh, $query);
-
- while (my $ref = $sth->fetchrow_hashref()) {
- push(@currencies, $ref->{curr});
- }
- $sth->finish;
+ my $query = qq|SELECT name FROM currencies|;
+ my @currencies = map { $_->{name} } selectall_hashref_query($self, $dbh, $query);
$main::lxdebug->leave_sub();
v.id AS vendor_id, v.name AS vendor, v.discount as vendor_discount,
v.creditlimit, v.terms, v.notes AS intnotes,
v.email, v.cc, v.bcc, v.language_id, v.payment_id,
- v.street, v.zipcode, v.city, v.country, v.taxzone_id, (SELECT cu.name FROM currencies cu WHERE cu.id=v.currency_id) AS curr, v.direct_debit,
+ v.street, v.zipcode, v.city, v.country, v.taxzone_id, cu.name AS curr, v.direct_debit,
$duedate + COALESCE(pt.terms_netto, 0) AS duedate,
b.description AS business
FROM vendor v
LEFT JOIN business b ON (b.id = v.business_id)
LEFT JOIN payment_terms pt ON (v.payment_id = pt.id)
+ LEFT JOIN currencies cu ON (v.currency_id = cu.id)
WHERE 1=1 $where|;
my $ref = selectfirst_hashref_query($form, $dbh, $query, @values);
map { $params->{$_} = $ref->{$_} } keys %$ref;
# fax and phone and email as vendor*
my $query =
qq|SELECT ct.*, cp.*, ct.notes as vendornotes, phone as vendorphone, fax as vendorfax, email as vendoremail,
- (SELECT cu.name FROM currencies cu WHERE cu.id=ct.currency_id) AS currency
+ cu.name AS currency
FROM vendor ct
LEFT JOIN contacts cp ON (ct.id = cp.cp_cv_id)
+ LEFT JOIN currencies cu ON (ct.currency_id = cu.id)
WHERE (ct.id = ?) $contact
ORDER BY cp.cp_id
LIMIT 1|;
my $query =
qq|SELECT ct.*, cp.*, ct.notes as customernotes,
ct.phone AS customerphone, ct.fax AS customerfax, ct.email AS customeremail,
- (SELECT cu.name FROM currencies cu WHERE cu.id=ct.currency_id) AS currency
+ cu.name AS currency
FROM customer ct
LEFT JOIN contacts cp on ct.id = cp.cp_cv_id
+ LEFT JOIN currencies cu ON (ct.currency_id = cu.id)
WHERE (ct.id = ?) $where
ORDER BY cp.cp_id
LIMIT 1|;
c.id AS customer_id, c.name AS customer, c.discount as customer_discount, c.creditlimit, c.terms,
c.email, c.cc, c.bcc, c.language_id, c.payment_id,
c.street, c.zipcode, c.city, c.country,
- c.notes AS intnotes, c.klass as customer_klass, c.taxzone_id, c.salesman_id, (SELECT cu.name FROM currencies cu WHERE cu.id=c.currency_id) AS curr,
+ c.notes AS intnotes, c.klass as customer_klass, c.taxzone_id, c.salesman_id, cu.name AS curr,
c.taxincluded_checked, c.direct_debit,
$duedate + COALESCE(pt.terms_netto, 0) AS duedate,
b.discount AS tradediscount, b.description AS business
FROM customer c
LEFT JOIN business b ON (b.id = c.business_id)
LEFT JOIN payment_terms pt ON ($payment_id (c.payment_id = pt.id))
+ LEFT JOIN currencies cu ON (c.currency_id=cu.id)
WHERE c.id = ?|;
push @values, $cid;
$ref = selectfirst_hashref_query($form, $dbh, $query, @values);