Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision cd98d068

Von Niclas Zimmermann vor mehr als 12 Jahren hinzugefügt

  • ID cd98d068d97cb6a981d931898c5a230cd8efc0a2
  • Vorgänger 7d026c7c
  • Nachfolger ffac4820

Filterung nach Kundennummer in Zahlungseingang

Im Zahlungsverkehr-Zahlungseingang ist jetzt eine neue Filteroption
Kundennummer vorhanden. Bei Eingabe der Kundennummer wird die
Filterung für das Dropdown ausgeschaltet. Es funktioniert dann nur
noch die Filterung von Rechnungsnummer und Kundennummer.

Unterschiede anzeigen:

SL/AR.pm
qq|LEFT JOIN department d ON (d.id = a.department_id)|;
my $where = "1 = 1";
if ($form->{customernumber}) {
$where .= " AND c.customernumber = ?";
push(@values, $form->{customernumber});
}
if ($form->{customer_id}) {
$where .= " AND a.customer_id = ?";
push(@values, $form->{customer_id});
bin/mozilla/cp.pl
use SL::IR;
use SL::AR;
use SL::AP;
use Data::Dumper;
use strict;
#use warnings;
......
# für bugfix 1771 (doppelte Leerzeichen werden nicht 'gepostet')
$form->{"select$form->{vc}"} = "";
$form->{selectcustomer} .= "<option value=\"\"></option>\n" if $form->{vc} eq "customer";
if ($form->{"all_$form->{vc}"}) {
# s.o. jb 12.10.2010
$form->{"$form->{vc}_id"} = $form->{"all_$form->{vc}"}->[0]->{id};
map { $form->{"select$form->{vc}"} .= "<option value=\"$_->{name}--$_->{id}\">$_->{name}--$_->{id}</option>\n" }
@{ $form->{"all_$form->{vc}"} };
}
CP->paymentaccounts(\%myconfig, \%$form);
# Standard Konto für Umlaufvermögen
......
if ($form->{ $form->{vc} } eq "") {
map { $form->{"addr$_"} = "" } (1 .. 4);
}
# sometimes it happens that values in customer arrive without the signs '--'
# but in order to select the right option field we need values with '--'
if ($form->{vc} eq "customer"){
my ($customername) = split /--/, $form->{ $form->{vc} };
$form->{ $form->{vc} } = $customername . "--" . $form->{customer_id};
}
# bugfix 1771
# geändert von <option>asdf--2929
# nach:
......
}
}
# search by customernumber
# the customernumber has to be correct otherwise nothing is found
if ($form->{vc} eq 'customer' and $form->{customernumber} and $form->{ARAP} eq 'AR') {
$form->{open} ='Y'; # only open invoices
# ar_transactions automatically searches by $form->{customer_id} or else
# $form->{customer} if available, and these variables will always be set
# so we have to empty these values first
$form->{customer_id} = '';
$form->{customer} = '';
AR->ar_transactions(\%myconfig, \%$form);
# Here we just take the first returned value even if the custumernumber
# may not be unique
$form->{customer} = $form->{AR}[0]{name};
$form->{customer_id} = $form->{AR}[0]{customer_id};
}
# search by invoicenumber,
if ($form->{invnumber}) {
$form->{open} ='Y'; # nur die offenen rechnungen
$form->{open} ='Y'; # only open invoices
if ($form->{ARAP} eq 'AR'){
# ar_transactions automatically searches by $form->{customer_id} or else
# $form->{customer} if available, and these variables will always be set
# when we have a dropdown field rather than an input field, so we have to
# empty these values first
# so we have to empty these values first
$form->{customer_id} = '';
$form->{customer} = '';
AR->ar_transactions(\%myconfig, \%$form);
......
}
# determine customer/vendor
if ( $form->{customer_id} and $form->{invnumber} ) {
if ( $form->{customer_id} and ($form->{invnumber} or $form->{customernumber}) ) {
# we already know the exact customer_id, so fill $form with customer data
IS->get_customer(\%myconfig, \%$form);
$updated = 1;
templates/webpages/cp/form_header.html
<tr>
<th align=right>[% is_customer ? LxERP.t8('Customer') : LxERP.t8('Vendor') %]</th>
<td>[% vccontent %]</td>
[% IF vc == 'customer' %]
[% IF vc == 'customer' %]
[% L.hidden_tag('selectcustomer', selectcustomer) %]
[% L.hidden_tag('customer_id', customer_id) %]
[% L.hidden_tag('oldcustomer', oldcustomer) %]
......
[% L.hidden_tag('oldvendor', oldvendor) %]
[% END %]
</tr>
[% IF vc == 'customer' %]
<tr>
<th align=right>[% 'Customer Number' | $T8 %]</th>
<td><input name="customernumber" size="35"</td>
</tr>
[% END %]
<tr>
<th align=right>[% 'Invoice Number' | $T8 %]</th>
<td><input name="invnumber" size="35"</td>

Auch abrufbar als: Unified diff