my $query = qq|SELECT e.$fld FROM exchangerate e
WHERE e.curr = ? AND e.transdate = ?|;
my ($exchangerate) = selectrow_query($self, $dbh, $query, $currency, $transdate);
- $dbh->disconnect;
+ $dbh->disconnect();
+
+ $exchangerate = 1 if ($exchangerate == 0);
+ $exchangerate = 1 if ($exchangerate eq "");
$main::lxdebug->leave_sub();
my ($self, $dbh) = @_;
my $query = qq|SELECT id, name FROM employee WHERE login = ?|;
- ($self->{employee_id}, $self->{employee}) = selectrow_query($self, $dbh, $query, $self->{login});
- $self->{employee_id} *= 1;
+ ($self->{"employee_id"}, $self->{"employee"}) = selectrow_query($self, $dbh, $query, $self->{login});
+ $self->{"employee_id"} *= 1;
$main::lxdebug->leave_sub();
}
sub _get_employees {
$main::lxdebug->enter_sub();
- my ($self, $dbh, $key) = @_;
+ my ($self, $dbh, $default_key, $key) = @_;
- $key = "all_employees" unless ($key);
- $self->{$key} =
- selectall_hashref_query($self, $dbh, qq|SELECT * FROM employee|);
+ $key = $default_key unless ($key);
+ $self->{$key} = selectall_hashref_query($self, $dbh, qq|SELECT * FROM employee ORDER BY name|);
$main::lxdebug->leave_sub();
}
$key = "all_customers" unless ($key);
- my $query = qq|SELECT * FROM customer|;
+ my $query = qq|SELECT * FROM customer WHERE NOT obsolete ORDER BY name|;
$self->{$key} = selectall_hashref_query($self, $dbh, $query);
$key = "all_vendors" unless ($key);
- my $query = qq|SELECT * FROM vendor|;
+ my $query = qq|SELECT * FROM vendor WHERE NOT obsolete ORDER BY name|;
$self->{$key} = selectall_hashref_query($self, $dbh, $query);
$key = "all_departments" unless ($key);
- my $query = qq|SELECT * FROM department|;
+ my $query = qq|SELECT * FROM department ORDER BY description|;
$self->{$key} = selectall_hashref_query($self, $dbh, $query);
}
if ($params{"employees"}) {
- $self->_get_employees($dbh, $params{"employees"});
+ $self->_get_employees($dbh, "all_employees", $params{"employees"});
+ }
+
+ if ($params{"salesmen"}) {
+ $self->_get_employees($dbh, "all_salesmen", $params{"salesmen"});
}
if ($params{"business_types"}) {
sub create_links {
$main::lxdebug->enter_sub();
- my ($self, $module, $myconfig, $table) = @_;
+ my ($self, $module, $myconfig, $table, $provided_dbh) = @_;
my ($fld, $arap);
if ($table eq "customer") {
# get last customers or vendors
my ($query, $sth, $ref);
- my $dbh = $self->dbconnect($myconfig);
+ my $dbh = $provided_dbh ? $provided_dbh : $self->dbconnect($myconfig);
my %xkeyref = ();
if (!$self->{id}) {
}
- $dbh->disconnect;
+ $dbh->disconnect() unless $provided_dbh;
$main::lxdebug->leave_sub();
}
&get_employee($self, $dbh);
}
- my $query =
- qq|INSERT INTO history_erp (trans_id, employee_id, addition, what_done, snumbers) | .
- qq|VALUES (?, ?, ?, ?, ?)|;
- my @values = (conv_i($self->{id}), conv_i($self->{employee_id}),
- $self->{addition}, $self->{what_done}, "$self->{snumbers}");
- do_query($self, $dbh, $query, @values);
+my $query =
+ qq|INSERT INTO history_erp (trans_id, employee_id, addition, what_done, snumbers) | .
+ qq|VALUES (?, (SELECT id FROM employee WHERE login = ?), ?, ?, ?)|;
+ my @values = (conv_i($self->{id}), $self->{login},
+ $self->{addition}, $self->{what_done}, "$self->{snumbers}");
+ do_query($self, $dbh, $query, @values);
$main::lxdebug->leave_sub();
}