Revision 90003b2c
Von Jan Büren vor etwa 10 Jahren hinzugefügt
SL/DB/MetaSetup/Default.pm | ||
---|---|---|
94 | 94 |
transfer_default_ignore_onhand => { type => 'boolean', default => 'false' }, |
95 | 95 |
transfer_default_services => { type => 'boolean', default => 'true' }, |
96 | 96 |
transfer_default_use_master_default_bin => { type => 'boolean', default => 'false' }, |
97 |
transport_cost_reminder_article_number => { type => 'text' }, |
|
97 | 98 |
vendornumber => { type => 'text' }, |
98 | 99 |
version => { type => 'varchar', length => 8 }, |
99 | 100 |
vertreter => { type => 'boolean', default => 'false' }, |
bin/mozilla/oe.pl | ||
---|---|---|
564 | 564 |
|
565 | 565 |
$TMPL_VAR{ALL_DELIVERY_TERMS} = SL::DB::Manager::DeliveryTerm->get_all_sorted(); |
566 | 566 |
|
567 |
my $tpca_reminder = check_transport_cost_reminder_article_number() if $::instance_conf->get_transport_cost_reminder_article_number; |
|
567 | 568 |
print $form->parse_html_template("oe/form_footer", { |
568 | 569 |
%TMPL_VAR, |
569 | 570 |
webdav => $::instance_conf->get_webdav, |
571 |
tpca_reminder => $tpca_reminder, |
|
570 | 572 |
print_options => print_options(inline => 1), |
571 | 573 |
label_edit => $locale->text("Edit the $form->{type}"), |
572 | 574 |
label_workflow => $locale->text("Workflow $form->{type}"), |
... | ... | |
2078 | 2080 |
_remove_billed_or_delivered_rows(quantities => \%handled_base_qtys); |
2079 | 2081 |
} |
2080 | 2082 |
|
2083 |
# iterate all positions and match articlenumber |
|
2084 |
sub check_transport_cost_reminder_article_number { |
|
2085 |
$main::lxdebug->enter_sub(); |
|
2086 |
|
|
2087 |
my $form = $main::form; |
|
2088 |
|
|
2089 |
check_oe_access(); |
|
2090 |
|
|
2091 |
my $transport_article = $::instance_conf->get_transport_cost_reminder_article_number; |
|
2092 |
for my $i (1 .. $form->{rowcount}) { |
|
2093 |
return undef if $form->{"partnumber_${i}"} eq $transport_article; |
|
2094 |
} |
|
2095 |
|
|
2096 |
return $transport_article; |
|
2097 |
|
|
2098 |
$main::lxdebug->leave_sub(); |
|
2099 |
} |
|
2081 | 2100 |
sub dispatcher { |
2082 | 2101 |
foreach my $action (qw(delete delivery_order e_mail invoice print purchase_order purchase_order quotation |
2083 | 2102 |
request_for_quotation sales_order sales_order save save_and_close save_as_new ship_to update)) { |
locale/de/all | ||
---|---|---|
334 | 334 |
'Bcc' => 'Bcc', |
335 | 335 |
'Bcc E-mail' => 'BCC (E-Mail)', |
336 | 336 |
'Because the useability gets worse if one partnumber is used for several parts (for example if you are searching a position for an invoice), partnumbers should be unique.' => 'Da die Benutzerfreundlichkeit durch doppelte Artikelnummern erheblich verschlechtert wird (zum Beispiel, wenn man einen Artikel für eine Rechnung sucht), sollten Artikelnummern eindeutig vergeben sein.', |
337 |
'Before saving a sales order, this article will be checked and a warning is generated.' => 'Vor dem Speichern eines Angebots oder Auftrags wird überprüft, ob die hier definierte Artikelnnumer vorhanden ist (Versandkosten01, etc.) und eine entsprechende Hinweiswarnung angezeigt', |
|
337 | 338 |
'Belegnummer' => 'Buchungsnummer', |
338 | 339 |
'Beratername' => 'Beratername', |
339 | 340 |
'Beraternummer' => 'Beraternummer', |
... | ... | |
756 | 757 |
'Default output medium' => 'Standardausgabekanal', |
757 | 758 |
'Default printer' => 'Standarddrucker', |
758 | 759 |
'Default template format' => 'Standardvorlagenformat', |
760 |
'Default transport article number' => 'Standard Versand / Transport-Erinnerungs-Artikel', |
|
759 | 761 |
'Default unit' => 'Standardeinheit', |
760 | 762 |
'Default value' => 'Standardwert', |
761 | 763 |
'Delete' => 'Löschen', |
... | ... | |
1474 | 1476 |
'Missing parameter (at least one of #1) in call to sub #2.' => 'Fehlernder Parameter (mindestens einer aus \'#1\') in Funktionsaufruf \'#2\'.', |
1475 | 1477 |
'Missing parameter for WebDAV file copy' => 'Fehlender Parameter für WebDAV Datei kopieren', |
1476 | 1478 |
'Missing taxkeys in invoices with taxes.' => 'Fehlende Steuerschlüssel in Rechnungen mit Steuern', |
1479 |
'Missing transport cost: #1 Are you sure?' => 'Fehlender Transportkosten-Artikel #1 Trotzdem speichern?', |
|
1477 | 1480 |
'Mitarbeiter' => 'Mitarbeiter', |
1478 | 1481 |
'Mixed (requires column "type")' => 'Gemischt (erfordert Spalte "type")', |
1479 | 1482 |
'Mobile' => 'Mobiltelefon', |
... | ... | |
2069 | 2072 |
'Save and Order' => 'Speichern und Auftrag erfassen', |
2070 | 2073 |
'Save and Quotation' => 'Speichern und Angebot', |
2071 | 2074 |
'Save and RFQ' => 'Speichern und Lieferantenanfrage', |
2072 |
'Save and close' => 'Speichern und schließen',
|
|
2075 |
'Save and close' => 'Speichern und schließen',
|
|
2073 | 2076 |
'Save and execute' => 'Speichern und ausführen', |
2074 | 2077 |
'Save and keep open' => 'Speichern und geöffnet lassen', |
2075 | 2078 |
'Save as new' => 'als neu speichern', |
... | ... | |
2708 | 2711 |
'Transfer successful' => 'Lagervorgang erfolgreich', |
2709 | 2712 |
'Translation' => 'Übersetzung', |
2710 | 2713 |
'Translations' => 'Übersetzungen', |
2714 |
'Transport and service costs reminder' => 'Transport- und Versandkosten-Erinnerung', |
|
2711 | 2715 |
'Trial Balance' => 'Summen- und Saldenliste', |
2712 | 2716 |
'Trial balance between %s and %s' => 'Summen- und Saldenlisten vom %s bis zum %s', |
2713 | 2717 |
'Trying to call a sub without a name' => 'Es wurde versucht, eine Unterfunktion ohne Namen aufzurufen.', |
sql/Pg-upgrade2/defaults_transport_cost_reminder.pl | ||
---|---|---|
1 |
# @tag: defaults_transport_cost_reminder |
|
2 |
# @description: Artikelname der beim Auftrag auf Vorhandensein überprüft wird (Versandkostenerinnerung). |
|
3 |
# @depends: release_3_1_0 |
|
4 |
package SL::DBUpgrade2::defaults_transport_cost_reminder; |
|
5 |
|
|
6 |
use utf8; |
|
7 |
|
|
8 |
use parent qw(SL::DBUpgrade2::Base); |
|
9 |
use strict; |
|
10 |
|
|
11 |
sub run { |
|
12 |
my ($self) = @_; |
|
13 |
|
|
14 |
# this query will fail if column already exist (new database) |
|
15 |
$self->db_query(qq|ALTER TABLE defaults ADD COLUMN transport_cost_reminder_article_number text|); |
|
16 |
return 1; |
|
17 |
} |
|
18 |
|
|
19 |
1; |
templates/webpages/client_config/_features.html | ||
---|---|---|
108 | 108 |
</td> |
109 | 109 |
<td>[% LxERP.t8('When converting a requirement spec into a quotation or an oder each section gets converted into a line position in the new record. This is the article used by default for this conversion.') %]</td> |
110 | 110 |
</tr> |
111 |
<tr><td class="listheading" colspan="4">[% LxERP.t8('Transport and service costs reminder') %]</td></tr> |
|
112 |
<tr> |
|
113 |
<td align="right">[% LxERP.t8('Default transport article number') %]</td> |
|
114 |
<td>[% L.input_tag('defaults.transport_cost_reminder_article_number', SELF.defaults.transport_cost_reminder_article_number, style=style) %]</td> |
|
115 |
<td>[% LxERP.t8('Before saving a sales order, this article will be checked and a warning is generated.') %]</td> |
|
116 |
</tr> |
|
111 | 117 |
</table> |
112 | 118 |
</div> |
templates/webpages/oe/form_footer.html | ||
---|---|---|
140 | 140 |
<input class="submit" type="submit" name="action_ship_to" value="[% 'Ship to' | $T8 %]"> |
141 | 141 |
<input class="submit" type="submit" name="action_print" value="[% 'Print' | $T8 %]" data-require-transaction-description="[% INSTANCE_CONF.get_require_transaction_description_ps %]"> |
142 | 142 |
<input class="submit" type="submit" name="action_e_mail" value="[% 'E-mail' | $T8 %]" data-require-transaction-description="[% INSTANCE_CONF.get_require_transaction_description_ps %]"> |
143 |
<input class="submit" type="submit" name="action_save" value="[% 'Save' | $T8 %]"[% IF warn_save_active_periodic_invoice %] data-warn-save-active-periodic-invoice="1"[% END %] data-require-transaction-description="[% INSTANCE_CONF.get_require_transaction_description_ps %]"> |
|
144 |
<input class="submit" type="submit" name="action_save_and_close" value="[% 'Save and Close' | $T8 %]"[% IF warn_save_active_periodic_invoice %] data-warn-save-active-periodic-invoice="1"[% END %] data-require-transaction-description="[% INSTANCE_CONF.get_require_transaction_description_ps %]"> |
|
143 |
|
|
144 |
[% IF not tpca_reminder %] |
|
145 |
<input class="submit" type="submit" name="action_save" value="[% 'Save' | $T8 %]"[% IF warn_save_active_periodic_invoice %] data-warn-save-active-periodic-invoice="1"[% END %] data-require-transaction-description="[% INSTANCE_CONF.get_require_transaction_description_ps %]"> |
|
146 |
<input class="submit" type="submit" name="action_save_and_close" value="[% 'Save and Close' | $T8 %]"[% IF warn_save_active_periodic_invoice %] data-warn-save-active-periodic-invoice="1"[% END %] data-require-transaction-description="[% INSTANCE_CONF.get_require_transaction_description_ps %]"> |
|
147 |
[% ELSE %] |
|
148 |
[% IF warn_save_active_periodic_invoice %] [% warn_save_active_periodic_invoice=1 %] [% END %] |
|
149 |
[% L.submit_tag('action_save', LxERP.t8('Save'), confirm=LxERP.t8('Missing transport cost: #1 Are you sure?', tpca_reminder), 'data-require-transaction-description'=INSTANCE_CONF.get_require_transaction_description_ps, 'data-warn-save-active-periodic-invoice'=warn_save_active_periodic_invoice) %] |
|
150 |
[% L.submit_tag('action_save_and_close', LxERP.t8('Save and close'), confirm=LxERP.t8('Missing transport cost: #1 Are you sure?', tpca_reminder), 'data-require-transaction-description'=INSTANCE_CONF.get_require_transaction_description_ps, 'data-warn-save-active-periodic-invoice'=warn_save_active_periodic_invoice) %] |
|
151 |
[% END %] |
|
145 | 152 |
|
146 | 153 |
[%- IF id %] |
147 | 154 |
<input type="button" class="submit" onclick="follow_up_window()" value="[% 'Follow-Up' | $T8 %]"> |
Auch abrufbar als: Unified diff
Erinnerung für Transport- oder Versandkostenartikel bei Angebot / Auftrag implementiert
Erweiterung: Mandantenkonfiguration um einen Standardartikel der auf Vorhandensein
überprüft wird (oe). Falls nicht wird eine entsprechende Warnung ausgegeben.
Verbesserungsmöglichkei 1: Artikelnummer per partpicker auswählen
Verbesserungsmöglichkei 2: Erinnerung anolog zu Vorgangsbezeichnung vergeben implementieren