X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/f559550ffb82e23f3712c11be4161d9c53a4b904..HEAD:/templates/webpages/client_config/_features.html?ds=inline
diff --git a/templates/webpages/client_config/_features.html b/templates/webpages/client_config/_features.html
index 225859ad8..442b20a87 100644
--- a/templates/webpages/client_config/_features.html
+++ b/templates/webpages/client_config/_features.html
@@ -29,6 +29,26 @@
[% L.yes_no_tag('defaults.webdav_documents', SELF.defaults.webdav_documents) %] |
[% LxERP.t8('Save document in WebDAV repository') %] |
+
+ | [% LxERP.t8('WebDAV sync extern') %] |
+ [% L.yes_no_tag('defaults.webdav_sync_extern', SELF.defaults.webdav_sync_extern) %] |
+ [% LxERP.t8('Synchronize WebDAV with owncloud repository') %] |
+
+
+ | [% LxERP.t8('Destination URL for sync') %] |
+ [% L.input_tag('defaults.webdav_sync_extern_url', SELF.defaults.webdav_sync_extern_url, style=style) %] |
+ [% LxERP.t8('Complete URL for WebDAV sync external, including port and folders, i.e.: https://foo.com:4433/owncloud/kivitendo') %] |
+
+
+ | [% LxERP.t8('Login for sync') %] |
+ [% L.input_tag('defaults.webdav_sync_extern_login', SELF.defaults.webdav_sync_extern_login, style=style) %] |
+ [% LxERP.t8('Login for WebDAV sync external') %] |
+
+
+ | [% LxERP.t8('Password for sync') %] |
+ [% L.input_tag('defaults.webdav_sync_extern_pass', SELF.defaults.webdav_sync_extern_pass, style=style) %] |
+ [% LxERP.t8('Password for WebDAV sync external') %] |
+
| [% LxERP.t8('Filemanagement') %] |
[% L.yes_no_tag('defaults.doc_storage', SELF.defaults.doc_storage) %] |
@@ -37,7 +57,7 @@
| [% LxERP.t8('Storage Type for generated/imported PDF Documents') %] |
[% L.select_tag('defaults.doc_storage_for_documents',
- [ [ 'None', LxERP.t8('None') ],[ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ],[ 'ExtDMS', LxERP.t8('ext.DMS') ],[ 'DB', LxERP.t8('Database') ] ],
+ [ [ 'None', LxERP.t8('None') ],[ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
default = SELF.defaults.doc_storage_for_documents,
onchange="return checkavailable_filebackend(this);") %] |
[% LxERP.t8('Use this storage backend for all generated PDF-Files') %] |
@@ -45,7 +65,7 @@
| [% LxERP.t8('Storage Type for Attachments') %] |
[% L.select_tag('defaults.doc_storage_for_attachments',
- [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ],[ 'ExtDMS', LxERP.t8('ext.DMS') ],[ 'DB', LxERP.t8('Database') ] ],
+ [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
default = SELF.defaults.doc_storage_for_attachments,
onchange="return checkavailable_filebackend(this);") %] |
[% LxERP.t8('Use this storage backend for all uploaded attachments') %] |
@@ -53,11 +73,19 @@
| [% LxERP.t8('Storage Type for images') %] |
[% L.select_tag('defaults.doc_storage_for_images',
- [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ],[ 'ExtDMS', LxERP.t8('ext.DMS') ],[ 'DB', LxERP.t8('Database') ] ],
+ [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
default = SELF.defaults.doc_storage_for_images,
onchange="return checkavailable_filebackend(this);") %] |
[% LxERP.t8('Use this storage backend for uploaded images') %] |
+
+ | [% LxERP.t8('Storage Type for shopimages') %] |
+ [% L.select_tag('defaults.doc_storage_for_shopimages',
+ [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
+ default = SELF.defaults.doc_storage_for_shopimages,
+ onchange="return checkavailable_filebackend(this);") %] |
+ [% LxERP.t8('Use this storage backend for uploaded images') %] |
+
| [% LxERP.t8('Delete printfiles') %] |
[% L.yes_no_tag('defaults.doc_delete_printfiles', SELF.defaults.doc_delete_printfiles) %] |
@@ -69,6 +97,21 @@
[% L.hidden_tag('defaults.doc_max_filesize',SELF.defaults.doc_max_filesize) %] MB
[% LxERP.t8('The maximum of uploadable filesize in Megabyte') %] |
+
+ | [% LxERP.t8('Preselect Customer/Vendor documents as email attachments') %] |
+ [% L.yes_no_tag('defaults.email_attachment_vc_files_checked', SELF.defaults.email_attachment_vc_files_checked) %] |
+ [% LxERP.t8('Preselect all documents saved for the current customer/vendor as a mail attachment.') %] |
+
+
+ | [% LxERP.t8('Preselect part documents as email attachments') %] |
+ [% L.yes_no_tag('defaults.email_attachment_part_files_checked', SELF.defaults.email_attachment_part_files_checked) %] |
+ [% LxERP.t8('Preselect all documents for the current selected parts in a record as a mail attachment.') %] |
+
+
+ | [% LxERP.t8('Preselect record documents as email attachments') %] |
+ [% L.yes_no_tag('defaults.email_attachment_record_files_checked', SELF.defaults.email_attachment_record_files_checked) %] |
+ [% LxERP.t8('Preselect all documents saved for the current record as a mail attachment.') %] |
+
| [% LxERP.t8("Storage Backends") %] |
| [% LxERP.t8('Files') %] |
@@ -80,11 +123,6 @@
[% L.yes_no_tag('defaults.doc_webdav', SELF.defaults.doc_webdav) %] |
[% LxERP.t8('Use WebDAV Storage backend') %] |
-
- | [% LxERP.t8('Database') %] |
- [% L.yes_no_tag('defaults.doc_database', SELF.defaults.doc_database, disabled=1) %] |
- [% LxERP.t8('Use Database Storage backend (not implemented yet!)') %] |
-
| [% LxERP.t8("Reports") %] |
@@ -111,18 +149,44 @@
[% L.yes_no_tag('defaults.vertreter', SELF.defaults.vertreter) %] |
[% LxERP.t8('Representative for Customer') %] |
-
+
| [% LxERP.t8('Normalize Customer / Vendor names') %] |
[% L.yes_no_tag('defaults.normalize_vc_names', SELF.defaults.normalize_vc_names) %] |
[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in customer or vendor names') %] |
+
+ | [% LxERP.t8('Use text field for greetings') %] |
+ [% L.yes_no_tag('defaults.vc_greetings_use_textfield', SELF.defaults.vc_greetings_use_textfield) %] |
+ [% LxERP.t8('Use a text field to enter (new) greetings if enabled. Otherwise, only a drop down box is offered.') %] |
+
+
+ | [% LxERP.t8('Use text field for title of contacts') %] |
+ [% L.yes_no_tag('defaults.contact_titles_use_textfield', SELF.defaults.contact_titles_use_textfield) %] |
+ [% LxERP.t8('Use a text field to enter (new) contact titles if enabled. Otherwise, only a drop down box is offered.') %] |
+
+
+ | [% LxERP.t8('Use text field for department of contacts') %] |
+ [% L.yes_no_tag('defaults.contact_departments_use_textfield', SELF.defaults.contact_departments_use_textfield) %] |
+ [% LxERP.t8('Use a text field to enter (new) contact departments if enabled. Otherwise, only a drop down box is offered.') %] |
+
| [% LxERP.t8('Hourly Rate') %] |
- [% L.input_tag('defaults.customer_hourly_rate', LxERP.format_amount(SELF.defaults.customer_hourly_rate, 2), style=style) %] |
+ [% L.input_tag('defaults.customer_hourly_rate_as_number', SELF.defaults.customer_hourly_rate_as_number, style=style) %] |
[% LxERP.t8('Default hourly rate for new customers') %] |
+
+ | [% LxERP.t8('Customers: VAT ID / taxnumber unique') %] |
+ [% L.yes_no_tag('defaults.customer_ustid_taxnummer_unique', SELF.defaults.customer_ustid_taxnummer_unique) %] |
+ [% LxERP.t8('Should VAT ID or taxnumber be unique for customers? This is checked when saving a customer\'s master data. One of the fields is sufficient and required.') %] |
+
+
+ | [% LxERP.t8('Vendors: VAT ID / taxnumber unique') %] |
+ [% L.yes_no_tag('defaults.vendor_ustid_taxnummer_unique', SELF.defaults.vendor_ustid_taxnummer_unique) %] |
+ [% LxERP.t8('Should VAT ID or taxnumber be unique for all vendors? This is checked when saving a vendor\'s master data. One of the fields is sufficient and required.') %] |
+
+
| [% LxERP.t8("Parts Master Data") %] |
@@ -149,8 +213,12 @@
| [% LxERP.t8('Normalize part description and part notes') %] |
[% L.yes_no_tag('defaults.normalize_part_descriptions', SELF.defaults.normalize_part_descriptions) %] |
[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in part description and part notes. Affects the CSV import as well.') %] |
-
-
+
+
+ | [% LxERP.t8('Partsgroup is required for parts') %] |
+ [% L.yes_no_tag('defaults.partsgroup_required', SELF.defaults.partsgroup_required) %] |
+ [% LxERP.t8('If enabled, when saving parts the partsgroup must be not be empty.') %] |
+
| [% LxERP.t8("Purchasing & Sales") %] |
@@ -201,6 +269,121 @@
[% L.yes_no_tag("defaults.order_warn_duplicate_parts", SELF.defaults.order_warn_duplicate_parts) %] |
[% LxERP.t8("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).") %] |
+
+ | [% LxERP.t8("Warn before saving orders without a delivery date") %] |
+ [% L.yes_no_tag("defaults.order_warn_no_deliverydate", SELF.defaults.order_warn_no_deliverydate) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.") %] |
+
+
+ | [% LxERP.t8("Warn before saving sales orders with missing customer order number (new controller only)") %] |
+ [% L.yes_no_tag("defaults.order_warn_no_cusordnumber", SELF.defaults.order_warn_no_cusordnumber) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales delivery orders if the customer order number is missing.") %] |
+
+
+ | [% LxERP.t8("For sales delivery orders, warn on workflow to invoice if not stocked out") %] |
+ [% L.yes_no_tag("defaults.sales_delivery_order_check_stocked", SELF.defaults.sales_delivery_order_check_stocked) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales delivery orders on workflow to invoices if positions are not stocked out.") %] |
+
+
+ | [% LxERP.t8("For purchase delivery orders, warn on workflow to invoice if not stocked in") %] |
+ [% L.yes_no_tag("defaults.purchase_delivery_order_check_stocked", SELF.defaults.purchase_delivery_order_check_stocked) %] |
+ [% LxERP.t8("If enabled a warning will be shown in purchase delivery orders on workflow to invoices if positions are not stocked in.") %] |
+
+
+ | [% LxERP.t8("For sales invoices, warn if invoice has no delivery order as a predecessor") %] |
+ [% L.yes_no_tag("defaults.warn_no_delivery_order_for_invoice", SELF.defaults.warn_no_delivery_order_for_invoice ) %] |
+ [% LxERP.t8("If enabled a warning will be shown if a sales invoices is created without having a sales delivery order as a predecessor.") %] |
+
+
+
+ | [% LxERP.t8("Warn before saving reclamations with duplicate parts") %] |
+ [% L.yes_no_tag("defaults.reclamation_warn_duplicate_parts", SELF.defaults.reclamation_warn_duplicate_parts) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales and purchase reclamations if there are two or more positions of the same part.") %] |
+
+
+ | [% LxERP.t8("Warn before saving reclamations without a due date") %] |
+ [% L.yes_no_tag("defaults.reclamation_warn_no_reqdate", SELF.defaults.reclamation_warn_no_reqdate) %] |
+ [% LxERP.t8("If enabled a warning will be shown in sales and purchase reclamations if there the due date is empty.") %] |
+
+
+
+ | [% LxERP.t8("Create sales invoices with Factur-X/ZUGFeRD data") %] |
+ [% L.select_tag("defaults.create_zugferd_invoices", SELF.zugferd_settings, default=SELF.defaults.create_zugferd_invoices) %] |
+
+ [% LxERP.t8("If enabled Factur-X/ZUGFeRD conformant sales invoice PDFs will be created.") %]
+ [% LxERP.t8("If the test mode is enabled, the Factur-X/ZUGFeRD invoices will be flagged so that they're only fit to be used for testing purposes.") %]
+ |
+
+
+ | [% LxERP.t8("Create sales invoices with Swiss QR-bill") %] |
+
+ [% L.select_tag("defaults.create_qrbill_invoices", [ [ 0, LxERP.t8('Do not create QR-bill invoices') ], [ 1, LxERP.t8('Create variant QR-IBAN with QR reference') ], [ 2, LxERP.t8('Create variant IBAN without reference') ] ], default=SELF.defaults.create_qrbill_invoices) %]
+ |
+ [% LxERP.t8("If enabled sales invoices created using OpenDocument/OASIS format will include data for Swiss QR-Bill creation.") %] |
+
+
+ | [% LxERP.t8("When using Swiss QR-bill, copy the invoice number to the unstructured message automatically") %] |
+ [% L.yes_no_tag("defaults.qrbill_copy_invnumber", SELF.defaults.qrbill_copy_invnumber) %] |
+ [% LxERP.t8("If enabled the invoice number will be copied to the unstructured message upon booking. If there's a message already the invoice number will be appended to it.") %] |
+
+
+ | [% LxERP.t8("Lock RFQ/Quotation and Order Subversion") %] |
+ [% L.yes_no_tag("defaults.lock_oe_subversions", SELF.defaults.lock_oe_subversions) %] |
+ [% LxERP.t8("If enabled RFQs, Quotations and Orders can only be send once via email. By creating another subversion the current record gets a minor subversion and can be send again via email.") %] |
+
+
+ | [% 'Documents which are allowed to be saved with no positions' | $T8 %] |
+
+
+ [% L.select_tag("defaults.allowed_documents_with_no_positions[]",
+ SELF.available_documents_with_no_positions,
+ default=SELF.defaults.allowed_documents_with_no_positions,
+ multiple=1,
+ with_empty=1,
+ value_key="name",
+ title_key="description",
+ id="defaults_allowed_documents_with_no_positions",
+ size=SELF.available_documents_with_no_positions.size+1) %]
+
+ |
+
+
+ | [% LxERP.t8("Item input position for quotations and orders") %] |
+ [% L.select_tag("defaults.order_item_input_position", [ [ 0, LxERP.t8('above the positions'), ], [ 1, LxERP.t8('below the positions') ] ], default=SELF.defaults.order_item_input_position) %] |
+ [% LxERP.t8("Controls whether the default item input is above (default) or below the positions list in orders and quotations. Can be overridden by user preferences.") %] |
+
+
+ | [% 'Show certain sales and purchase documents' | $T8 %] |
+
+ | [% 'Show sales order intake' | $T8 %] |
+ [% L.yes_no_tag("defaults.show_sales_order_intake", SELF.defaults.show_sales_order_intake) %] |
+ [% 'When disabled, sales order intakes do not show up in the menu and in the workflow actions.' | $T8 %] |
+
+
+ | [% 'Show purchase quotation intake' | $T8 %] |
+ [% L.yes_no_tag("defaults.show_purchase_quotation_intake", SELF.defaults.show_purchase_quotation_intake) %] |
+ [% 'When disabled, purchase quotation intakes do not show up in the menu and in the workflow actions.' | $T8 %] |
+
+
+ | [% 'Show purchase order confirmation' | $T8 %] |
+ [% L.yes_no_tag("defaults.show_purchase_order_confirmation", SELF.defaults.show_purchase_order_confirmation) %] |
+ [% 'When disabled, purchase order confirmations do not show up in the menu and in the workflow actions.' | $T8 %] |
+
+
+ | [% 'Show sales reclamation' | $T8 %] |
+ [% L.yes_no_tag("defaults.show_sales_reclamation", SELF.defaults.show_sales_reclamation) %] |
+ [% 'When disabled, sales reclamations do not show up in the menu and in the workflow actions.' | $T8 %] |
+
+
+ | [% 'Show purchase reclamation' | $T8 %] |
+ [% L.yes_no_tag("defaults.show_purchase_reclamation", SELF.defaults.show_purchase_reclamation) %] |
+ [% 'When disabled, purchase reclamations do not show up in the menu and in the workflow actions.' | $T8 %] |
+
+
+ | [% 'Show invoice for payment in advance and final invoice' | $T8 %] |
+ [% L.yes_no_tag("defaults.show_invoice_for_advance_payment", SELF.defaults.show_invoice_for_advance_payment) %] |
+ [% 'When disabled, invoices for payment in advance and final invoices do not show up in the menu and in the workflow actions.' | $T8 %] |
+
| [% LxERP.t8("E-mail") %] |
@@ -229,14 +412,94 @@
[% 'Sent emails can be optionally stored in the database with or without their attachments.' | $T8 %] |
-
+
+ | [% LxERP.t8('Invoice email settings') %] |
+
+ [% L.select_tag('defaults.invoice_mail_settings', [ [ 'cp', LxERP.t8('Contact Person') ],[ 'invoice_mail', LxERP.t8('Invoice email') ],[ 'invoice_mail_cc_cp', LxERP.t8('Invoice email and Contact Person') ] ], default=SELF.defaults.invoice_mail_settings) %]
+ |
+ [% 'The invoice recipient can either be a selected contact person (default) or the email adress set in the master data of the customer. Additionally a contact persons mail and the company\'s invoicing mail can be combined.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Sales Quotation') %] |
+
+ [% L.input_tag('defaults.email_sender_sales_quotation', SELF.defaults.email_sender_sales_quotation, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Request Quotation') %] |
+
+ [% L.input_tag('defaults.email_sender_request_quotation', SELF.defaults.email_sender_request_quotation, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Sales Order') %] |
+
+ [% L.input_tag('defaults.email_sender_sales_order', SELF.defaults.email_sender_sales_order, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Purchase Order') %] |
+
+ [% L.input_tag('defaults.email_sender_purchase_order', SELF.defaults.email_sender_purchase_order, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Sales Delivery Order') %] |
+
+ [% L.input_tag('defaults.email_sender_sales_delivery_order', SELF.defaults.email_sender_sales_delivery_order, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Purchase Delivery Order') %] |
+
+ [% L.input_tag('defaults.email_sender_purchase_delivery_order', SELF.defaults.email_sender_purchase_delivery_order, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Sales Invoice') %] |
+
+ [% L.input_tag('defaults.email_sender_invoice', SELF.defaults.email_sender_invoice, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Sales Purchase Invoice') %] |
+
+ [% L.input_tag('defaults.email_sender_purchase_invoice', SELF.defaults.email_sender_purchase_invoice, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Letter') %] |
+
+ [% L.input_tag('defaults.email_sender_letter', SELF.defaults.email_sender_letter, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Sender Dunning') %] |
+
+ [% L.input_tag('defaults.email_sender_dunning', SELF.defaults.email_sender_dunning, style=style) %]
+ |
+ [% 'Generic email send address for this record type.' | $T8 %] |
+
+
+ | [% LxERP.t8('Email Subject Transaction Description') %] |
+ [% L.yes_no_tag('defaults.email_subject_transaction_description', SELF.defaults.email_subject_transaction_description) %] |
+ [% LxERP.t8('Include the transaction description in the preset email subject.') %] |
+
| [% LxERP.t8("Requirement Specs") %] |
-
| [% LxERP.t8('Default article for converting into quotations and orders') %] |
[% IF SELF.h_unit_name %]
- [% P.part_picker('defaults.requirement_spec_section_order_part_id', SELF.defaults.requirement_spec_section_order_part_id, convertible_unit=SELF.h_unit_name, style=style) %]
+ [% P.part.picker('defaults.requirement_spec_section_order_part_id', SELF.defaults.requirement_spec_section_order_part_id, convertible_unit=SELF.h_unit_name, style=style) %]
[% ELSE %]
[% LxERP.t8("Error: this feature requires that articles with a time-based unit (e.g. 'h' or 'min') exist.") %]
[% END %]
@@ -246,7 +509,7 @@
|
| [% LxERP.t8('Transport and service costs reminder') %] |
| [% LxERP.t8('Default transport article number') %] |
- [% L.part_picker('defaults.transport_cost_reminder_article_number_id', SELF.defaults.transport_cost_reminder_article_number_id, style=style) %] |
+ [% P.part.picker('defaults.transport_cost_reminder_article_number_id', SELF.defaults.transport_cost_reminder_article_number_id, style=style) %] |
[% LxERP.t8('Before saving a sales order, this article will be checked and a warning is generated.') %] |
@@ -270,6 +533,7 @@
[% LxERP.t8('Project type') %] |
[% L.select_tag('defaults.project_type_id', SELF.all_project_types, default=SELF.defaults.project_type_id, title_key='description', with_empty=0, style="width: 200px") %] |
+
| [% LxERP.t8('Project Status') %] |
[% L.select_tag('defaults.project_status_id', SELF.all_project_statuses, default=SELF.defaults.project_status_id, title_key='description', with_empty=0, style="width: 200px") %] |
@@ -294,33 +558,58 @@
[% LxERP.t8('Add Customer/Vendor Number as a reference add-on for SEPA export.') %] |
[% L.yes_no_tag('defaults.sepa_reference_add_vc_vc_id', SELF.defaults.sepa_reference_add_vc_vc_id) %] |
-
- | [% LxERP.t8("Experimental Features") %] |
- | [% LxERP.t8('Enable experimental features') %] |
- [% L.yes_no_tag('defaults.feature_experimental', SELF.defaults.feature_experimental) %] |
- [% LxERP.t8('Experimental features are:') %] [% LxERP.t8('new order controller') %], [% LxERP.t8('Assortment') %] |
+ [% LxERP.t8('Set the invoice duedate as the default execution date for SEPA export.') %] |
+ [% L.yes_no_tag('defaults.sepa_set_duedate_as_default_exec_date', SELF.defaults.sepa_set_duedate_as_default_exec_date) %] |
-
- | [% LxERP.t8("Shipped Quantity Algorithm") %] |
-
- | [% LxERP.t8('Require stock out to consider a delivery order position delivered?') %] |
- [% L.yes_no_tag('defaults.shipped_qty_require_stock_out', SELF.defaults.shipped_qty_require_stock_out) %] |
- [% LxERP.t8('If yes, delivery order positions are considered "delivered" only if they have been stocked out of the inventory. Otherwise saving the delivery order is considered delivered.') %] |
-
-
- | [% LxERP.t8('Use fill up when calculating shipped quantitiies?') %] |
- [% L.yes_no_tag('defaults.shipped_qty_fill_up', SELF.defaults.shipped_qty_fill_up) %] |
- [% LxERP.t8('Linked positions will always reconciled first. If this is set to yes, unlinked positions will be reconciled in a second step. This is necessary in very old databases (with open delivery orders from before 3.4.0) and in businesses where delivery orders are frequently amended. Usually the direct links are faster and more accurate. Defaults to true for historical reasons only.') %] |
-
+
+ | [% LxERP.t8('Set the invoice skonto date (if exists) as the default execution date for SEPA export.') %] |
+ [% L.yes_no_tag('defaults.sepa_set_skonto_date_as_default_exec_date', SELF.defaults.sepa_set_skonto_date_as_default_exec_date) %] |
+
+
+ | [% LxERP.t8('In addition to the above date functions, subtract the following amount of days from the calculated date as a buffer.') %] |
+ [% L.input_tag('defaults.sepa_set_skonto_date_buffer_in_days_as_number', SELF.defaults.sepa_set_skonto_date_buffer_in_days_as_number, style=style) %] |
+
+ | [% LxERP.t8("Experimental Features") %] |
+ | [% 'Displayable Name Preferences' | $T8 %] |
+ [% FOREACH module=SELF.displayable_name_specs_by_module.keys.sort %]
+ [%- SET spec=SELF.displayable_name_specs_by_module.$module -%]
+
+ | [% spec.specs.title %] |
+
+
+
+ | [% 'Option' | $T8 %] |
+ [% 'Name' | $T8 %] |
+
+ [% FOREACH option=spec.specs.options %]
+
+ | [% option.title %] |
+ [% option.name %] |
+
+ [% END %]
+
+ | [% 'Display' | $T8 %]: |
+
+ [% L.hidden_tag("displayable_name_specs[+].module", module) %]
+ [% L.input_tag("displayable_name_specs[].default", spec.prefs.get_default, size=50) %]
+ |
+
+
+ |
+ [% IF loop.first %]
+ [% 'The display of (mainly) picker results can be configured. To insert the value of one option use <%Name%>.' | $T8 %]
+ [% 'E.g. "<%customernumber%> <%name%>"' | $T8 %]
+ |
+ [% END %]
+
+ [% END %]
+ | [% 'Forced Layout Style' | $T8 %] |
- | [% LxERP.t8('Position identity fields for fill up?') %] |
-
- [% L.select_tag("defaults.shipped_qty_item_identity_fields[]", SELF.available_shipped_qty_item_identity_fields, id="defaults_shipped_qty_item_identity_fields", multiple=1, default=SELF.defaults.shipped_qty_item_identity_fields) %]
- [% L.multiselect2side("defaults_shipped_qty_item_identity_fields", labelsx=LxERP.t8("Available identity fields"), labeldx=LxERP.t8("Selected identity fields")) %] |
- [% LxERP.t8('Only applies if the previous is set to true. When filling up unlinked positions, consider them matches if ALL of these fields match. For example, in a business with variants that are defined by special description, description needs to be part of the identity. If delivering several similar order positions by delivery date is common, reqdate should be included in the identity. Serialnumber is useful when the serialnumber in order and delivery order has to match.') %] |
+ [% 'Force a layout style' | $T8 %] |
+ [% L.select_tag('defaults.layout_style', [['', LxERP.t8('Automatic')], ['desktop', LxERP.t8('desktop version')]], default=SELF.defaults.layout_style, with_empty=0) %] |
+ [% 'The layout style normally is choosen by the user agent string the browser sends. Here you can force the desktop or mobile version. Users can override this setting in their user preferences.' | $T8 %] |
-