Revision 3a21f30f
Von Jan Büren vor mehr als 3 Jahren hinzugefügt
SL/DB/Pricegroup.pm | ||
---|---|---|
7 | 7 |
use SL::DB::Helper::ActsAsList; |
8 | 8 |
|
9 | 9 |
__PACKAGE__->meta->initialize; |
10 |
__PACKAGE__->before_save('_before_save_remove_customer_pricegroup'); |
|
10 | 11 |
|
11 | 12 |
sub displayable_name { |
12 | 13 |
my $self = shift; |
... | ... | |
14 | 15 |
return join ' ', grep $_, $self->id, $self->pricegroup; |
15 | 16 |
} |
16 | 17 |
|
18 |
sub _before_save_remove_customer_pricegroup { |
|
19 |
my ($self) = @_; |
|
20 |
|
|
21 |
return 1 unless $::form->{SELF}{remove_customer_pricegroup}; |
|
22 |
|
|
23 |
my %attributes = (pricegroup_id => undef); |
|
24 |
require SL::DB::Customer; |
|
25 |
SL::DB::Manager::Customer->update_all( |
|
26 |
set => \%attributes, |
|
27 |
where => [ |
|
28 |
'pricegroup_id' => $self->id, |
|
29 |
], |
|
30 |
); |
|
31 |
|
|
32 |
return 1; |
|
33 |
} |
|
34 |
|
|
17 | 35 |
sub validate { |
18 | 36 |
my ($self) = @_; |
19 | 37 |
require SL::DB::Customer; |
20 | 38 |
|
21 | 39 |
my @errors; |
22 |
|
|
23 |
if ( $self->obsolete && SL::DB::Manager::Customer->get_all_count(query => [ pricegroup_id => $self->id ]) ) { |
|
24 |
push @errors, $::locale->text('The pricegroup is being used by customers.'); |
|
40 |
if (!$::form->{SELF}{remove_customer_pricegroup} && |
|
41 |
$self->obsolete && |
|
42 |
SL::DB::Manager::Customer->get_all_count(query => [ pricegroup_id => $self->id ]) ) { |
|
43 |
push @errors, $::locale->text('The pricegroup is being used by customers.'); |
|
25 | 44 |
} |
26 | 45 |
|
27 | 46 |
return @errors; |
locale/de/all | ||
---|---|---|
729 | 729 |
'Costs' => 'Kosten', |
730 | 730 |
'Could not create new project #1' => 'Neues Projekt #1 kann nicht angelegt werden', |
731 | 731 |
'Could not extract Factur-X/ZUGFeRD data, data and error message:' => 'Konnte keine Factur-X-/ZUGFeRD-Daten extrahieren, folgende Fehlermeldung und das PDF:', |
732 |
'Could not find an entry for this part in the pricegroup.' => 'Konnte keine Eintrag für diesen Artikel in der Preisgruppe finden.', |
|
732 |
'Could not find an entry for this part in the pricegroup.' => 'Konnte keinen Eintrag für diesen Artikel in der Preisgruppe finden.',
|
|
733 | 733 |
'Could not load class #1 (#2): "#3"' => 'Konnte Klasse #1 (#2) nicht laden: "#3"', |
734 | 734 |
'Could not load class #1, #2' => 'Konnte Klasse #1 nicht laden: "#2"', |
735 | 735 |
'Could not load employee' => 'Konnte Benutzer nicht laden', |
... | ... | |
1012 | 1012 |
'Delete Images' => 'Bilder löschen', |
1013 | 1013 |
'Delete Shipto' => 'Lieferadresse löschen', |
1014 | 1014 |
'Delete all' => 'Alle Löschen', |
1015 |
'Delete for Customers' => 'Bei Kunden löschen', |
|
1015 | 1016 |
'Delete links' => 'Verknüpfungen löschen', |
1016 | 1017 |
'Delete picture' => 'Bild löschen', |
1017 | 1018 |
'Delete printfiles' => 'Dokumente löschen', |
... | ... | |
3805 | 3806 |
'This vendor has already a booking with this invoice number, do you really want to add the same invoice number again?' => 'Es gibt für diesen Lieferant schon einen Beleg mit dieser Rechnungsnummer. Möchten Sie wirklich eine weitere Buchung mit derselben Rechnungsnummer hinzufügen?', |
3806 | 3807 |
'This vendor has already been added.' => 'Der Lieferant wurde bereits hinzugefügt.', |
3807 | 3808 |
'This vendor number is already in use.' => 'Diese Lieferantennummer wird bereits verwendet.', |
3809 |
'This will also remove this pricegroup for all customers.' => 'Damit werden auch alle verknüpften Preisgruppen im Kundenstamm gelöscht!', |
|
3808 | 3810 |
'This will apply a 3% reduction to the master data price before entering it into the record item.' => 'Diese Zeile zieht vom Stammdatenpreis 3% ab, und schlägt den resultierenden Preis vor.', |
3809 | 3811 |
'This will be treated as a discount in percent points.' => 'Diese Option schlägt den Wert in Prozentpunkten als Rabatt vor.', |
3810 | 3812 |
'This will happen before the price is offered, and the reduction will not be printed in documents.' => 'Das passiert, bevor der Preis vorgeschlagen wird, und der Abschlag wird nicht in Belegen ausgewiesen.', |
templates/webpages/simple_system_setting/_pricegroup_form.html | ||
---|---|---|
10 | 10 |
<th align="right">[% LxERP.t8("Obsolete") %]</th> |
11 | 11 |
<td>[% L.checkbox_tag("object.obsolete", checked=SELF.object.obsolete, for_submit=1) %]</td> |
12 | 12 |
</tr> |
13 |
<tr> |
|
14 |
<th align="right">[% LxERP.t8("Delete for Customers") %]</th> |
|
15 |
<td>[% L.checkbox_tag("SELF.remove_customer_pricegroup", checked=SELF.remove_customer_pricegroup, for_submit=1) %] [% LxERP.t8("This will also remove this pricegroup for all customers.") %]</td> |
|
16 |
</tr> |
|
17 |
|
|
13 | 18 |
</table> |
Auch abrufbar als: Unified diff
Preisgruppen-Admin darf auch Preisgruppen bei allen verknüpften Kunden entfernen