Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 5efe1390

Von Bernd Bleßmann vor etwa 3 Jahren hinzugefügt

Auftrags-Controller: Warnung bei nicht vorhandener Kundenbestellummer …

… kann in der Mandantenkonfiguration eingeschaltet werden.

Unterschiede anzeigen:

SL/Controller/Order.pm
1893 1893
                      || (($self->type eq purchase_order_type()) && $::instance_conf->get_purchase_order_show_delete);
1894 1894

  
1895 1895
  my @req_trans_cost_art = qw(kivi.Order.check_transport_cost_article_presence) x!!$::instance_conf->get_transport_cost_reminder_article_number_id;
1896
  my @req_cusordnumber   = qw(kivi.Order.check_cusordnumber_presence)           x($self->type eq sales_order_type() && $::instance_conf->get_order_warn_no_cusordnumber);
1896 1897

  
1897 1898
  for my $bar ($::request->layout->get('actionbar')) {
1898 1899
    $bar->add(
......
1901 1902
          t8('Save'),
1902 1903
          call      => [ 'kivi.Order.save', 'save', $::instance_conf->get_order_warn_duplicate_parts,
1903 1904
                                                    $::instance_conf->get_order_warn_no_deliverydate,
1904
                                                                                                      ],
1905
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices', ['kivi.validate_form','#order_form'], @req_trans_cost_art ],
1905
          ],
1906
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices', ['kivi.validate_form','#order_form'],
1907
                         @req_trans_cost_art, @req_cusordnumber,
1908
          ],
1906 1909
        ],
1907 1910
        action => [
1908 1911
          t8('Save as new'),
1909 1912
          call      => [ 'kivi.Order.save', 'save_as_new', $::instance_conf->get_order_warn_duplicate_parts ],
1910
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices', @req_trans_cost_art ],
1913
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices',
1914
                         @req_trans_cost_art, @req_cusordnumber,
1915
          ],
1911 1916
          disabled  => !$self->order->id ? t8('This object has not been saved yet.') : undef,
1912 1917
        ],
1913 1918
      ], # end of combobox "Save"
......
1919 1924
        action => [
1920 1925
          t8('Save and Quotation'),
1921 1926
          submit   => [ '#order_form', { action => "Order/sales_quotation" } ],
1922
          checks   => [ @req_trans_cost_art ],
1927
          checks   => [ @req_trans_cost_art, @req_cusordnumber ],
1923 1928
          only_if  => (any { $self->type eq $_ } (sales_order_type())),
1924 1929
        ],
1925 1930
        action => [
......
1936 1941
        action => [
1937 1942
          t8('Save and Purchase Order'),
1938 1943
          call      => [ 'kivi.Order.purchase_order_check_for_direct_delivery' ],
1939
          checks    => [ @req_trans_cost_art ],
1944
          checks    => [ @req_trans_cost_art, @req_cusordnumber ],
1940 1945
          only_if   => (any { $self->type eq $_ } (sales_order_type(), request_quotation_type())),
1941 1946
        ],
1942 1947
        action => [
......
1944 1949
          call      => [ 'kivi.Order.save', 'save_and_delivery_order', $::instance_conf->get_order_warn_duplicate_parts,
1945 1950
                                                                       $::instance_conf->get_order_warn_no_deliverydate,
1946 1951
                                                                                                                        ],
1947
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices', @req_trans_cost_art ],
1952
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices',
1953
                         @req_trans_cost_art, @req_cusordnumber,
1954
          ],
1948 1955
          only_if   => (any { $self->type eq $_ } (sales_order_type(), purchase_order_type()))
1949 1956
        ],
1950 1957
        action => [
1951 1958
          t8('Save and Invoice'),
1952 1959
          call      => [ 'kivi.Order.save', 'save_and_invoice', $::instance_conf->get_order_warn_duplicate_parts ],
1953
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices', @req_trans_cost_art ],
1960
          checks    => [ 'kivi.Order.check_save_active_periodic_invoices',
1961
                         @req_trans_cost_art, @req_cusordnumber,
1962
          ],
1954 1963
        ],
1955 1964
        action => [
1956 1965
          t8('Save and AP Transaction'),
......
1969 1978
          call   => [ 'kivi.Order.save', 'preview_pdf', $::instance_conf->get_order_warn_duplicate_parts,
1970 1979
                                                        $::instance_conf->get_order_warn_no_deliverydate,
1971 1980
                    ],
1972
          checks => [ @req_trans_cost_art ],
1981
          checks => [ @req_trans_cost_art, @req_cusordnumber ],
1973 1982
        ],
1974 1983
        action => [
1975 1984
          t8('Save and print'),
1976 1985
          call   => [ 'kivi.Order.show_print_options', $::instance_conf->get_order_warn_duplicate_parts,
1977 1986
                                                       $::instance_conf->get_order_warn_no_deliverydate,
1978 1987
                    ],
1979
          checks => [ @req_trans_cost_art ],
1988
          checks => [ @req_trans_cost_art, @req_cusordnumber ],
1980 1989
        ],
1981 1990
        action => [
1982 1991
          t8('Save and E-mail'),
SL/DB/MetaSetup/Default.pm
121 121
  normalize_vc_names                        => { type => 'boolean', default => 'true' },
122 122
  order_always_project                      => { type => 'boolean', default => 'false' },
123 123
  order_warn_duplicate_parts                => { type => 'boolean', default => 'true' },
124
  order_warn_no_cusordnumber                => { type => 'boolean', default => 'false' },
124 125
  order_warn_no_deliverydate                => { type => 'boolean', default => 'true' },
125 126
  parts_image_css                           => { type => 'text', default => 'border:0;float:left;max-width:250px;margin-top:20px:margin-right:10px;margin-left:10px;' },
126 127
  parts_listing_image                       => { type => 'boolean', default => 'true' },
doc/changelog
17 17

  
18 18
Kleinere neue Features und Detailverbesserungen:
19 19

  
20

  
21 20
- neue Druckvorlagen-Variante "Rechnungskopie", die mit dem Druckvorlagensatz marei
22 21
  ein Wasserzeichen "Rechnungskopie" bei Verkaufs-Rechnungen erzeugt
23 22
- Alle HTML-Textfelder benutzen die Rechtschreibprüfung des Anwender-Browser und
24 23
  markieren unbekannte Worte (Tippfehler) mit einer roten gewellten Linie
24
- Prüfung, ob Kundenbestellnummer in Verkaufsaufträgen vorhanden ist, kann in der
25
  Mandantenkonfiguration eingestellt werden
25 26

  
26 27
Bugfixes (Tracker: https://www.kivitendo.de/redmine):
27 28

  
......
29 30

  
30 31

  
31 32

  
32

  
33 33
2021-08-10 - Release 3.5.8
34 34

  
35 35
Kleinere neue Features und Detailverbesserungen:
js/kivi.Order.js
861 861
    return confirm(kivi.t8("The transport cost article '#1' is missing. Do you want to continue anyway?", [ description ]));
862 862
  };
863 863

  
864
  ns.check_cusordnumber_presence = function() {
865
    if ($('#order_cusordnumber').val() === '') {
866
      return confirm(kivi.t8('The customer order number is missing. Do you want to continue anyway?'));
867
    }
868
    return true;
869
  };
870

  
864 871
});
865 872

  
866 873
$(function() {
js/locale/de.js
153 153
"Text block picture actions":"Aktionen für Textblockbilder",
154 154
"The URL is missing.":"URL fehlt",
155 155
"The action can only be executed once.":"Die Aktion kann nur einmal ausgeführt werden.",
156
"The customer order number is missing. Do you want to continue anyway?":"Die Kundenbestellnummer fehlt. Möchten Sie trotzdem fortfahren?",
156 157
"The description is missing.":"Die Beschreibung fehlt.",
157 158
"The name is missing.":"Der Name fehlt.",
158 159
"The name must only consist of letters, numbers and underscores and start with a letter.":"Der Name darf nur aus Buchstaben (keine Umlaute), Ziffern und Unterstrichen bestehen und muss mit einem Buchstaben beginnen.",
js/locale/en.js
153 153
"Text block picture actions":"",
154 154
"The URL is missing.":"",
155 155
"The action can only be executed once.":"",
156
"The customer order number is missing. Do you want to continue anyway?":"",
156 157
"The description is missing.":"",
157 158
"The name is missing.":"",
158 159
"The name must only consist of letters, numbers and underscores and start with a letter.":"",
locale/de/all
1694 1694
  'If enabled a warning will be shown in purchase delivery orders on workflow to invoices if positions are not stocked in.' => 'Falls aktiviert, wird eine Warnung beim Workflow von Einkaufslieferscheinen zu Rechnungen ausgegeben, wenn die Positionen noch nicht eingelagert sind.',
1695 1695
  'If enabled a warning will be shown in sales and purchase orders if there are two or more positions of the same part (new controller only).' => 'Falls eingeschaltet, wird eine Warnung angezeigt, wenn der Auftrag mehrere gleiche Artikel enthält (nur neuer Controller).',
1696 1696
  'If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.' => 'Falls aktiviert, Warnungen ausgeben sobald Aufträge (Einkauf- und Verkauf) keinen Liefertermin haben.',
1697
  'If enabled a warning will be shown in sales delivery orders if the customer order number is missing.' => 'Falls aktiviert, wird eine Warnung beim Speichern von Verkaufsaufträgen ausgegeben, wenn die Kundenbestellnummer fehlt.',
1697 1698
  'If enabled a warning will be shown in sales delivery orders on workflow to invoices if positions are not stocked out.' => 'Falls aktiviert, wird eine Warnung beim Workflow von Verkaufslieferscheinen zu Rechnungen ausgegeben, wenn die Positionen noch nicht ausgelagert sind.',
1698 1699
  'If enabled only those projects that are assigned to the currently selected customer are offered for selection in sales records.' => 'Wenn eingeschaltet, so werden in Verkaufsbelegen nur diejenigen Projekte zur Auswahl angeboten, die dem aktuell ausgewählten Kunden zugewiesen wurden.',
1699 1700
  'If enabled purchase and sales records cannot be saved if no transaction description has been entered.' => 'Wenn angeschaltet, so können Einkaufs- und Verkaufsbelege nicht gespeichert werden, solange keine Vorgangsbezeichnung eingegeben wurde.',
......
3460 3461
  'The custom variable has been saved.' => 'Die benutzerdefinierte Variable wurde gespeichert.',
3461 3462
  'The custom variable is in use and cannot be deleted.' => 'Die benutzerdefinierte Variable ist in Benutzung und kann nicht gelöscht werden.',
3462 3463
  'The customer name is missing.' => 'Der Kundenname fehlt.',
3464
  'The customer order number is missing. Do you want to continue anyway?' => 'Die Kundenbestellnummer fehlt. Möchten Sie trotzdem fortfahren?',
3463 3465
  'The customer\'s bank account number (IBAN) is missing.' => 'Die Kontonummer (IBAN) des Kunden fehlt.',
3464 3466
  'The database for user management and authentication does not exist. You can create let kivitendo create it with the following parameters:' => 'Die Datenbank für die Benutzeranmeldung existiert nicht. Sie können Sie von kivitendo automatisch mit den folgenden Parametern anlegen lassen:',
3465 3467
  'The database host is missing.' => 'Der Datenbankhost fehlt.',
......
4116 4118
  'Warehouses'                  => 'Lager',
4117 4119
  'Warn before saving orders with duplicate parts (new controller only)' => 'Beim Speichern warnen, wenn doppelte Artikel in einem Auftrag sind',
4118 4120
  'Warn before saving orders without a delivery date' => 'Warnung ausgeben, falls Aufträge kein Lieferdatum haben.',
4121
  'Warn before saving sales orders with missing customer order number (new controller only)' => 'Warnung ausgeben, falls Verkaufsaufträge keine Kundenbestellnummer haben',
4119 4122
  'Warning'                     => 'Warnung',
4120 4123
  'Warning! Loading a draft will discard unsaved data!' => 'Achtung! Beim Laden eines Entwurfs werden ungespeicherte Daten verworfen!',
4121 4124
  'Warning: Faulty position ignored' => 'Warnung: Fehlerhafte Artikel-Position ignoriert',
locale/en/all
1694 1694
  'If enabled a warning will be shown in purchase delivery orders on workflow to invoices if positions are not stocked in.' => '',
1695 1695
  'If enabled a warning will be shown in sales and purchase orders if there are two or more positions of the same part (new controller only).' => '',
1696 1696
  'If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.' => '',
1697
  'If enabled a warning will be shown in sales delivery orders if the customer order number is missing.' => '',
1697 1698
  'If enabled a warning will be shown in sales delivery orders on workflow to invoices if positions are not stocked out.' => '',
1698 1699
  'If enabled only those projects that are assigned to the currently selected customer are offered for selection in sales records.' => '',
1699 1700
  'If enabled purchase and sales records cannot be saved if no transaction description has been entered.' => '',
......
3459 3460
  'The custom variable has been saved.' => '',
3460 3461
  'The custom variable is in use and cannot be deleted.' => '',
3461 3462
  'The customer name is missing.' => '',
3463
  'The customer order number is missing. Do you want to continue anyway?' => '',
3462 3464
  'The customer\'s bank account number (IBAN) is missing.' => '',
3463 3465
  'The database for user management and authentication does not exist. You can create let kivitendo create it with the following parameters:' => '',
3464 3466
  'The database host is missing.' => '',
......
4115 4117
  'Warehouses'                  => '',
4116 4118
  'Warn before saving orders with duplicate parts (new controller only)' => '',
4117 4119
  'Warn before saving orders without a delivery date' => '',
4120
  'Warn before saving sales orders with missing customer order number (new controller only)' => '',
4118 4121
  'Warning'                     => '',
4119 4122
  'Warning! Loading a draft will discard unsaved data!' => '',
4120 4123
  'Warning: Faulty position ignored' => '',
sql/Pg-upgrade2/defaults_order_warn_no_cusordnumber.sql
1
-- @tag: defaults_order_warn_no_cusordnumber
2
-- @description: Mandantenkonfiguration: Warnung bei fehlender Kundenbestellnummer in Verkaufsaufträgen
3
-- @depends: release_3_5_8
4

  
5
ALTER TABLE defaults ADD COLUMN order_warn_no_cusordnumber BOOLEAN DEFAULT FALSE;
templates/webpages/client_config/_features.html
249 249
   <td>[% L.yes_no_tag("defaults.order_warn_no_deliverydate", SELF.defaults.order_warn_no_deliverydate) %]</td>
250 250
   <td>[% LxERP.t8("If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.") %]</td>
251 251
  </tr>
252
  <tr>
253
   <td align="right">[% LxERP.t8("Warn before saving sales orders with missing customer order number (new controller only)") %]</td>
254
   <td>[% L.yes_no_tag("defaults.order_warn_no_cusordnumber", SELF.defaults.order_warn_no_cusordnumber) %]</td>
255
   <td>[% LxERP.t8("If enabled a warning will be shown in sales delivery orders if the customer order number is missing.") %]</td>
256
  </tr>
252 257
  <tr>
253 258
   <td align="right">[% LxERP.t8("For sales delivery orders, warn on workflow to invoice if not stocked out") %]</td>
254 259
   <td>[% L.yes_no_tag("defaults.sales_delivery_order_check_stocked", SELF.defaults.sales_delivery_order_check_stocked) %]</td>

Auch abrufbar als: Unified diff