Erstellt vor 8 Jahren

Geschlossen vor 8 Jahren

#399 closed Fehler (fixed)

Verkaufsrechnung: Fehler im Kundennamen

Erstellt von: s.geisler@… Verantwortlicher: p.reetz@…
Priorität: normal Meilenstein:
Komponente: kivitendo ERP Version: 2.3-unstable
Schweregrad: normal Stichworte: Verkauf
Beobachter:

Beschreibung

Hallo,

im Verkaufsbereich wird bei Rechnungen der Kundenname fehlerhaft geladen.

Dies tritt in folgenden Situationen auf:
1) im Workflow, wenn aus einem Auftrag eine Rechnung generiert wird. Im Auftrag
ist der Kundenname korrekt.
2) wenn eine korrekt gebuchte Rechnung aufgerufen wird

Der Fehler zeigt sich dadurch, dass beim Kundennamen noch etwas angefügt wird.
In meinem Fall war es ein "--377".

Dadurch kann die Rechnung nicht gespeichert werden, ohne dass der Kundenname
korrigiert wird.

Susann.

Änderungshistorie (2)

comment:1 Geändert vor 8 Jahren durch info@…

Fehler liegt in arap.pl check_name()

sub check_name {

$lxdebug->enter_sub();

my ($customer_or_vendor) = @_;

my ($new_name, $new_id) = split /--/, $form->{$customer_or_vendor};
my $i = 0;

# Check if we use a selection list or a text input field for name entry
if ($form->{"select$customer_or_vendor"}) {

# selection list ...


if ($form->{"old$customer_or_vendor"} ne $form->{$customer_or_vendor}) {

# this is needed for is, ir and oe

# for credit calculations
$form->{oldinvtotal} = 0;
$form->{oldtotalpaid} = 0;
$form->{calctax} = 1;

$form->{"${customer_or_vendor}_id"} = $new_id;

IS->get_customer(\%myconfig, \%$form) if ($customer_or_vendor eq "customer");
IR->get_vendor(\%myconfig, \%$form) if ($customer_or_vendor eq "vendor");


#
# 2006/08/29 mgp-it
$form->{$customer_or_vendor} = $form->{"old$customer_or_vendor"} =

"$new_name--$new_id";

$i = 1;

}

} else {

# text input field


# check name, combine name and id
# 2006/09/02 mgp-it The form displays "name--id" for customer or vendor,
# even on free text entry. So use the split new_name
# below work correctly
$lxdebug->dump( LxDebug?.DEBUG2, "TEXT check_name > new_name", $new_name );
$lxdebug->dump( LxDebug?.DEBUG2, "TEXT check_name >

form->old$customer_or_vendor", $form->{"old$customer_or_vendor"});

$lxdebug->dump( LxDebug?.DEBUG2, "TEXT check_name > concatenation",

qq|${new_name}--$form->{"${customer_or_vendor}_id"}| );

if ($form->{"old$customer_or_vendor"} ne

qq|${new_name}--$form->{"${customer_or_vendor}_id"}|) {

# this is needed for is, ir and oe
# for credit calculations
$form->{oldinvtotal} = 0;
$form->{oldtotalpaid} = 0;
$form->{calctax} = 1;

$i = $form->get_name(\%myconfig, $customer_or_vendor);
# return one name or a list of names in $form->{name_list}
if ( $i > 1) {

# We got several matching names, so ask the user which one to choose
&select_name($customer_or_vendor);
exit;

}

if ($i == 1) {

# We got one matching name, so choose it
$form->{"${customer_or_vendor}_id"} = $form->{name_list}[0]->{id};
$form->{"$customer_or_vendor"} = $form->{name_list}[0]->{name};
$form->{"old$customer_or_vendor"} =

qq|$form->{"$customer_or_vendor"}--$form->{"${customer_or_vendor}_id"}|;

### $lxdebug->dump( LxDebug?.DEBUG2, "arap.get_name form", $form );
IS->get_customer(\%myconfig, \%$form) if ($customer_or_vendor eq

'customer');

IR->get_vendor(\%myconfig, \%$form) if ($customer_or_vendor eq 'vendor');

} else {

# We got no matching name, so display an error that name was not found
$msg = ucfirst $customer_or_vendor . " ". $form->{$customer_or_vendor} .

" not on file or locked!";

$form->error($locale->text($msg));

}

}

}

$lxdebug->leave_sub();

return $i;

}

comment:2 Geändert vor 8 Jahren durch p.reetz@…

  • Lösung auf fixed gesetzt
  • Status von new nach closed geändert

Behoben im aktuellen Release

Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.