X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fam.pl;h=5a3b742230f7ee65a2a1191ef0a97f66d04bef18;hb=ee56f1b20ab915671ded297f593c0e2e245bad70;hp=ad17f31238c638d3e2ac0aae04f303312f97cd7d;hpb=e358c9af31afc5d60840f615f3c81d7b2bf7ad94;p=kivitendo-erp.git diff --git a/bin/mozilla/am.pl b/bin/mozilla/am.pl index ad17f3123..5a3b74223 100644 --- a/bin/mozilla/am.pl +++ b/bin/mozilla/am.pl @@ -24,7 +24,8 @@ # 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. #====================================================================== # # administration @@ -45,6 +46,8 @@ use SL::TODO; use SL::DB::Printer; use SL::DB::Tax; use SL::DB::Language; +use SL::DB::Default; +use SL::DBUtils qw(selectall_array_query conv_dateq); use CGI; require "bin/mozilla/common.pl"; @@ -87,10 +90,17 @@ sub edit_account { my $form = $main::form; my %myconfig = %main::myconfig; + my $defaults = SL::DB::Default->get; $main::auth->assert('config'); $form->{title} = "Edit"; + $form->{feature_balance} = $defaults->feature_balance; + $form->{feature_datev} = $defaults->feature_datev; + $form->{feature_erfolgsrechnung} = $defaults->feature_erfolgsrechnung; + $form->{feature_eurechnung} = $defaults->feature_eurechnung; + $form->{feature_ustva} = $defaults->feature_ustva; + AM->get_account(\%myconfig, \%$form); foreach my $item (split(/:/, $form->{link})) { @@ -256,6 +266,20 @@ sub account_header { } + my $select_er = q|\n|; + my %er = ( + 1 => "Ertrag", + 6 => "Aufwand"); + foreach my $item (sort({ $a <=> $b } keys(%er))) { + my $text = H($::locale->{iconv_utf8}->convert($er{$item})); + if ($item == $form->{pos_er}) { + $select_er .= qq|\n|; + } else { + $select_er .= qq|\n|; + } + + } + my $select_bwa = q|\n|; my %bwapos = ( @@ -358,6 +382,7 @@ sub account_header { select_bwa => $select_bwa, select_bilanz => $select_bilanz, select_eur => $select_eur, + select_er => $select_er, }; # Ausgabe des Templates @@ -575,7 +600,7 @@ sub delete_account { $form->{title} = $locale->text('Delete Account'); foreach my $id ( - qw(inventory_accno_id income_accno_id expense_accno_id fxgain_accno_id fxloss_accno_id) + qw(inventory_accno_id income_accno_id expense_accno_id fxgain_accno_id fxloss_accno_id rndgain_accno_id rndloss_accno_id) ) { if ($form->{id} == $form->{$id}) { $form->error($locale->text('Cannot delete default account!')); @@ -1226,14 +1251,22 @@ sub show_am_history { $restriction .= qq| AND employee_id = (SELECT id FROM employee WHERE name ILIKE | . $dbh->quote('%' . $form->{mitarbeiter} . '%') . qq|)|; } - my $query = qq|SELECT trans_id AS id FROM history_erp | . - ( $form->{'searchid'} ? qq| WHERE snumbers = '| . $searchNo{$form->{'what2search'}} . qq|_| . $form->{'searchid'} . qq|'| - : qq| WHERE snumbers ~ '^| . $searchNo{$form->{'what2search'}} . qq|'|); + my $snumbers_where = ''; + my $snumbers_value; + if ($form->{'searchid'}) { + $snumbers_where = ' WHERE snumbers = ?'; + $snumbers_value = $searchNo{$form->{'what2search'}} . '_' . $form->{'searchid'}; + } else { + $snumbers_where = ' WHERE snumbers ~ ?'; + $snumbers_value = '^' . $searchNo{$form->{'what2search'}}; + } + my $query = qq|SELECT trans_id AS id FROM history_erp $snumbers_where|; - my @ids = grep { $_ * 1 } selectall_array_query($form, $dbh, $query); + my @ids = grep { $_ * 1 } selectall_array_query($form, $dbh, $query, $snumbers_value); my $daten .= shift @ids; - $daten .= join '', map { " OR trans_id = $_" } @ids; - + if (scalar(@ids) > 0 ) { + $daten .= ' OR trans_id IN (' . join(',', @ids) . ')'; + } my ($sort, $sortby) = split(/\-\-/, $form->{order}); $sort =~ s/.*\.(.*)$/$1/; @@ -1619,7 +1652,7 @@ sub delete_warehouse { $form->header(); print $form->parse_html_template('am/confirm_delete_warehouse'); - ::end_of_request(); + $::dispatcher->end_request; } if (AM->delete_warehouse(\%myconfig, $form)) {