Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision a3bdaf9d

Von Hans Peter Schlaepfer vor mehr als 5 Jahren hinzugefügt

  • ID a3bdaf9d43dbce5706babf47f9fd694b2fe5cf72
  • Vorgänger 2707d93c
  • Nachfolger 6a47fed7

Neues kivitendo Design Aenderungen in templates/webpages/client_config/..

Unterschiede anzeigen:

templates/webpages/client_config/_attachments.html
1
[%- USE LxERP -%][%- USE L -%]
1
[% USE LxERP %]
2
[% USE L %]
3

  
2 4
<div id="attachments">
5
<div class="wrapper">
6

  
3 7
[% SET file_type = 'attachment' %]
4 8
[% INCLUDE 'file/rename_dialog.html' %]
5
 <table>
6
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Global Attachments") %]
7
  [% LxERP.t8("for Document types") %]
8
</td></tr>
9
  <tr><td>  <div class="tabwidget">
10
     <ul>
11
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=sales_quotation&object_id=0&is_global=1">[%
12
      LxERP.t8("Sales Quotations") %]</a></li>
13
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=sales_order&object_id=0&is_global=1">[%
14
      LxERP.t8("Sales Orders") %]</a></li>
15
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=sales_delivery_order&object_id=0&is_global=1">[%
16
      LxERP.t8("Sales Delivery Orders") %]</a></li>
17
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=invoice&object_id=0&is_global=1">[%
18
      LxERP.t8("Invoices") %]</a></li>
19
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=request_quotation&object_id=0&is_global=1">[%
20
      LxERP.t8("Request Quotations") %]</a></li>
21
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_order&object_id=0&is_global=1">[%
22
      LxERP.t8("Purchase Orders") %]</a></li>
23
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_delivery_order&object_id=0&is_global=1">[%
24
      LxERP.t8("Purchase Delivery Orders") %]</a></li>
25
      <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_invoice&object_id=0&is_global=1">[%
26
      LxERP.t8("Purchase Invoices") %]</a></li>
27
     </ul>
28
    </div>
29
  </td></tr>
30
 </table>
9

  
10
<h3>[% LxERP.t8("for Document types") %]</h3>
11
</div><!-- /.wrapper -->
12
<div class="tabwidget">
13

  
14
<ul>
15
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=sales_quotation&object_id=0&is_global=1">[% LxERP.t8("Sales Quotations") %]</a></li>
16
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=sales_order&object_id=0&is_global=1">[% LxERP.t8("Sales Orders") %]</a></li>
17
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=sales_delivery_order&object_id=0&is_global=1">[% LxERP.t8("Sales Delivery Orders") %]</a></li>
18
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=invoice&object_id=0&is_global=1">[% LxERP.t8("Invoices") %]</a></li>
19
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=request_quotation&object_id=0&is_global=1">[% LxERP.t8("Request Quotations") %]</a></li>
20
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_order&object_id=0&is_global=1">[% LxERP.t8("Purchase Orders") %]</a></li>
21
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_delivery_order&object_id=0&is_global=1">[% LxERP.t8("Purchase Delivery Orders") %]</a></li>
22
  <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_invoice&object_id=0&is_global=1">[% LxERP.t8("Purchase Invoices") %]</a></li>
23
</ul>
24

  
25
</div><!-- /.tabwidget -->
26

  
31 27
</div>
templates/webpages/client_config/_datev_check_configuration.html
1
[%- USE LxERP -%][%- USE L -%]
1
[% USE LxERP %]
2
[% USE L %]
3

  
2 4
<div id="datev_check_configuration">
3
 <table>
5
<div class="wrapper">
6

  
7
<p>[% LxERP.t8('It is possible to make a quick DATEV export everytime you post a record to ensure things work nicely with their data requirements. This will result in a slight overhead though you can enable this for each type of record independently.') %]</p>
8

  
9

  
10

  
11
<table class="tbl-horizontal">
12
  <tbody>
4 13
  <tr>
5
   <td colspan="3">[% LxERP.t8('It is possible to make a quick DATEV export everytime you post a record to ensure things work nicely with their data requirements. This will result in a slight overhead though you can enable this for each type of record independently.') %]</td>
14
    <th>[% LxERP.t8('Check on sales invoice') %]</th>
15
    <td>[% L.yes_no_tag('defaults.datev_check_on_sales_invoice', SELF.defaults.datev_check_on_sales_invoice) %]</td>
16
    <td class="longdesc">[% LxERP.t8('Perform check when a sales invoice or a payment for a sales invoice is posted?') %]</td>
6 17
  </tr>
7 18
  <tr>
8
   <td align="right">[% LxERP.t8('Check on sales invoice') %]</td>
9
   <td>[% L.yes_no_tag('defaults.datev_check_on_sales_invoice', SELF.defaults.datev_check_on_sales_invoice) %]</td>
10
   <td>[% LxERP.t8('Perform check when a sales invoice or a payment for a sales invoice is posted?') %]</td>
19
    <th>[% LxERP.t8('Check on purchase invoice') %]</th>
20
    <td>[% L.yes_no_tag('defaults.datev_check_on_purchase_invoice', SELF.defaults.datev_check_on_purchase_invoice) %]</td>
21
    <td class="longdesc">[% LxERP.t8('Perform check when a purchase invoice or a payment for a purchase invoice is posted?') %]</td>
11 22
  </tr>
12 23
  <tr>
13
   <td align="right">[% LxERP.t8('Check on purchase invoice') %]</td>
14
   <td>[% L.yes_no_tag('defaults.datev_check_on_purchase_invoice', SELF.defaults.datev_check_on_purchase_invoice) %]</td>
15
   <td>[% LxERP.t8('Perform check when a purchase invoice or a payment for a purchase invoice is posted?') %]</td>
24
    <th>[% LxERP.t8('Check on ar transaction') %]</th>
25
    <td>[% L.yes_no_tag('defaults.datev_check_on_ar_transaction', SELF.defaults.datev_check_on_ar_transaction) %]</td>
26
    <td class="longdesc">[% LxERP.t8('Perform check when an ar transaction is posted?') %]</td>
16 27
  </tr>
17 28
  <tr>
18
   <td align="right">[% LxERP.t8('Check on ar transaction') %]</td>
19
   <td>[% L.yes_no_tag('defaults.datev_check_on_ar_transaction', SELF.defaults.datev_check_on_ar_transaction) %]</td>
20
   <td>[% LxERP.t8('Perform check when an ar transaction is posted?') %]</td>
29
    <th>[% LxERP.t8('Check on ap transaction') %]</th>
30
    <td>[% L.yes_no_tag('defaults.datev_check_on_ap_transaction', SELF.defaults.datev_check_on_ap_transaction) %]</td>
31
    <td class="longdesc">[% LxERP.t8('Perform check when an ap transaction is posted?') %]</td>
21 32
  </tr>
22 33
  <tr>
23
   <td align="right">[% LxERP.t8('Check on ap transaction') %]</td>
24
   <td>[% L.yes_no_tag('defaults.datev_check_on_ap_transaction', SELF.defaults.datev_check_on_ap_transaction) %]</td>
25
   <td>[% LxERP.t8('Perform check when an ap transaction is posted?') %]</td>
34
    <th>[% LxERP.t8('Check on gl transaction') %]</th>
35
    <td>[% L.yes_no_tag('defaults.datev_check_on_gl_transaction', SELF.defaults.datev_check_on_gl_transaction) %]</td>
36
    <td class="longdesc">[% LxERP.t8('Perform check when a gl transaction is posted?') %]</td>
26 37
  </tr>
27 38
  <tr>
28
   <td align="right">[% LxERP.t8('Check on gl transaction') %]</td>
29
   <td>[% L.yes_no_tag('defaults.datev_check_on_gl_transaction', SELF.defaults.datev_check_on_gl_transaction) %]</td>
30
   <td>[% LxERP.t8('Perform check when a gl transaction is posted?') %]</td>
39
    <th>[% LxERP.t8('Datev export encoding') %]</th>
40
    <td>[% L.select_tag('defaults.datev_export_format', [ [ 'cp1252', LxERP.t8('Strict and halt') ],[ 'cp1252-translit', LxERP.t8('Strict but replace') ],[ 'utf-8', LxERP.t8('Relaxed (UTF-8)') ]  ], default=SELF.defaults.datev_export_format) %]</td>
41
    <td class="longdesc">[% LxERP.t8('DATEV expects the encoding to be Western Europe conform (LATIN-1, cp1252). By setting this to "Strict and halt" the DATEV export halts with a error if there is a single character in "Posting Text" which is not LATIN-1 encodeable. By setting this to "Strict but replace" kivitendo will replace the character with a similar one and the export will simply warn about those fields. By setting this to relaxed (UTF-8) the DATEV export encoding will be in kivitendo (UTF-8) encoded and the external import program has to handle this (this may work for DATEV deriviates or future versions of DATEV). Background details: For example turkish characters (Ç) are not valid cp1252 charactes and armenian characters like "Գեղարդ" are probably not replaceable in cp1252') %]</td>
31 42
  </tr>
32
  <tr>
33
   <td align="right">[% LxERP.t8('Datev export encoding') %]</td>
34
   <td>[% L.select_tag('defaults.datev_export_format', [ [ 'cp1252', LxERP.t8('Strict and halt') ],[ 'cp1252-translit', LxERP.t8('Strict but replace') ],[ 'utf-8', LxERP.t8('Relaxed (UTF-8)') ]  ], default=SELF.defaults.datev_export_format) %]
35
   <td>[% LxERP.t8('DATEV expects the encoding to be Western Europe conform (LATIN-1, cp1252). By setting this to "Strict and halt" the DATEV export halts with a error if there is a single character in "Posting Text" which is not LATIN-1 encodeable. By setting this to "Strict but replace" kivitendo will replace the character with a similar one and the export will simply warn about those fields. By setting this to relaxed (UTF-8) the DATEV export encoding will be in kivitendo (UTF-8) encoded and the external import program has to handle this (this may work for DATEV deriviates or future versions of DATEV). Background details: For example turkish characters (Ç) are not valid cp1252 charactes and armenian characters like "Գեղարդ" are probably not replaceable in cp1252') %]</td>
36
  </tr>
37
 </table>
38
</div>
43
  </tbody>
44
</table>
45

  
46
</div><!-- /.wrapper -->
47
</div><!-- /#datev_check_configuration.wrapper -->
templates/webpages/client_config/_default_accounts.html
1
[%- USE HTML -%][%- USE LxERP -%][%- USE L -%][%- USE P -%][%- USE T8 -%]
2
[% SET style="width: 500px" %]
3
[%# L.dump( SELF.defaults ) %]
4
<div id="default_accounts">
5
 <table>
6
  <tr>
7
   <td align="right">[% LxERP.t8("Inventory Account") %]</td>
8
   <td>
9
   [% P.chart.picker('defaults.inventory_accno_id', SELF.defaults.inventory_accno_id, type='IC', choose=1, style=style) %]
10
   <td>
11
  </tr>
12

  
13
  <tr>
14
   <td align="right">[% LxERP.t8("Revenue Account") %]</td>
15
   <td>[% P.chart.picker('defaults.income_accno_id', SELF.defaults.income_accno_id, type='IC_income,IC_sale', choose=1, style=style) %]</td>
16
  </tr>
17

  
18
  <tr>
19
   <td align="right">[% LxERP.t8("Expense Account") %]</td>
20
   <td>[% P.chart.picker('defaults.expense_accno_id', SELF.defaults.expense_accno_id, type='IC_expense,IC_cogs', choose=1, style=style) %]</td>
21
  </tr>
22

  
23
  <tr>
24
   <td align="right">[% LxERP.t8("Foreign Exchange Gain") %]</td>
25
   <td>[% P.chart.picker('defaults.fxgain_accno_id', SELF.defaults.fxgain_accno_id, category='I,A', choose=1, style=style) %]<td>
26
  </tr>
1
[% USE HTML %]
2
[% USE LxERP %]
3
[% USE L %]
4
[% USE T8 %]
5
[% USE P %]
27 6

  
28
  <tr>
29
   <td align="right">[% LxERP.t8("Foreign Exchange Loss") %]</td>
30
   <td>[% P.chart.picker('defaults.fxloss_accno_id', SELF.defaults.fxloss_accno_id, category='E,A', choose=1, style=style) %]<td>
31
  </tr>
32

  
33
  <tr>
34
   <td align="right">[% LxERP.t8("Rounding Gain") %]</td>
35
   <td>[% P.chart.picker('defaults.rndgain_accno_id', SELF.defaults.rndgain_accno_id, category='I,A', choose=1, style=style) %]</td>
36
  </tr>
37

  
38
  <tr>
39
   <td align="right">[% LxERP.t8("Rounding Loss") %]</td>
40
   <td>[% P.chart.picker('defaults.rndloss_accno_id', SELF.defaults.rndloss_accno_id,  category='E,A', choose=1, style=style) %]</td>
41
  </tr>
42

  
43
  <tr>
44
   <td align="right">[% LxERP.t8("Current assets account") %]</td>
45
   <td>[% P.chart.picker('defaults.ar_paid_accno_id', SELF.defaults.ar_paid_accno_id, type='AR_paid', choose=1, style=style) %]<td>
46
  </tr>
7
[% SET style="width: 500px" %]
47 8

  
48
  <tr>
49
   <td align="right">[% LxERP.t8("Payable account") %]</td>
50
   <td>[% P.chart.picker('defaults.ap_chart_id', SELF.defaults.ap_chart_id, type='AP', choose=1, style=style) %]<td>
51
  </tr>
9
[%# L.dump( SELF.defaults ) %]
52 10

  
53
  <tr>
54
   <td align="right">[% LxERP.t8("Receivable account") %]</td>
55
   <td>[% P.chart.picker('defaults.ar_chart_id', SELF.defaults.ar_chart_id, type='AR', choose=1, style=style) %]<td>
56
  </tr>
11
<div id="default_accounts">
12
<div class="wrapper">
13

  
14

  
15
<table class="tbl-horizontal">
16
  <caption>[% 'Default Accounts' | $T8 %]</caption>
17
  <tbody>
18
    <tr>
19
      <th>[% LxERP.t8("Inventory Account") %]</th>
20
      <td>[% P.chart.picker('defaults.inventory_accno_id', SELF.defaults.inventory_accno_id, type='IC', choose=1, style=style) %] </td> 
21
    </tr>
22
    <tr>
23
      <th>[% LxERP.t8("Revenue Account") %]</th>
24
      <td>[% P.chart.picker('defaults.income_accno_id', SELF.defaults.income_accno_id, type='IC_income,IC_sale', choose=1, style=style) %]</td>
25
    </tr>
26
    <tr>
27
      <th>[% LxERP.t8("Expense Account") %]</th>
28
      <td>[% P.chart.picker('defaults.expense_accno_id', SELF.defaults.expense_accno_id, type='IC_expense,IC_cogs', choose=1, style=style) %]</td>
29
    </tr>
30
    <tr>
31
      <th>[% LxERP.t8("Foreign Exchange Gain") %]</th>
32
      <td>[% P.chart.picker('defaults.fxgain_accno_id', SELF.defaults.fxgain_accno_id, category='I,A', choose=1, style=style) %]</td> 
33
    </tr>
34
    <tr>
35
      <th>[% LxERP.t8("Foreign Exchange Loss") %]</th>
36
      <td>[% P.chart.picker('defaults.fxloss_accno_id', SELF.defaults.fxloss_accno_id, category='E,A', choose=1, style=style) %]</td> 
37
    </tr>
38
    <tr>
39
      <th>[% LxERP.t8("Rounding Gain") %]</th>
40
      <td>[% P.chart.picker('defaults.rndgain_accno_id', SELF.defaults.rndgain_accno_id, category='I,A', choose=1, style=style) %]</td>
41
    </tr>
42
    <tr>
43
      <th>[% LxERP.t8("Rounding Loss") %]</th>
44
      <td>[% P.chart.picker('defaults.rndloss_accno_id', SELF.defaults.rndloss_accno_id, category='E,A', choose=1, style=style) %]</td>
45
    </tr>
46
    <tr>
47
      <th>[% LxERP.t8("Current assets account") %]</th>
48
      <td>[% P.chart.picker('defaults.ar_paid_accno_id', SELF.defaults.ar_paid_accno_id, type='AR_paid', choose=1, style=style) %]</td> 
49
    </tr>
50
    <tr>
51
      <th>[% LxERP.t8("Payable account") %]</th>
52
      <td>[% P.chart.picker('defaults.ap_chart_id', SELF.defaults.ap_chart_id, type='AP', choose=1, style=style) %]</td> 
53
    </tr>
54
    <tr>
55
      <th>[% LxERP.t8("Receivable account") %]</th>
56
      <td>[% P.chart.picker('defaults.ar_chart_id', SELF.defaults.ar_chart_id, type='AR', choose=1, style=style) %]</td> 
57
    </tr>
58
  </tbody>
59
</table>
60

  
61
</div><!-- /.wrapper -->
62
</div><!-- /#default_accounts-->
57 63

  
58
 </table>
59
</div>
templates/webpages/client_config/_features.html
1
[%- USE LxERP -%][%- USE L -%][%- USE P -%][%- USE T8 %]
2
[% SET style="width: 250px" %]
3
<div id="features">
4
 <table>
5
  <tr><td class="listheading" colspan="4">[% LxERP.t8("DATEV") %]</td></tr>
6

  
7
  <tr>
8
   <td align="right">[% LxERP.t8('Datevautomatik') %]</td>
9
   <td>[% L.yes_no_tag('defaults.feature_datev', SELF.defaults.feature_datev) %]</td>
10
   <td>[% LxERP.t8('Use Datevautomatik') %]</td>
11
  </tr>
12

  
13
  <tr><td class="listheading" colspan="4">[% LxERP.t8("UStVA") %]</td></tr>
14

  
15
  <tr>
16
   <td align="right">[% LxERP.t8('UStVA') %]</td>
17
   <td>[% L.yes_no_tag('defaults.feature_ustva', SELF.defaults.feature_ustva) %]</td>
18
   <td>[% LxERP.t8('Use UStVA') %]</td>
19
  </tr>
20

  
21
  <tr><td class="listheading" colspan="4">[% LxERP.t8("File Management") %]</td></tr>
22
  <tr>
23
   <td align="right">[% LxERP.t8('WebDAV') %]</td>
24
   <td>[% L.yes_no_tag('defaults.webdav', SELF.defaults.webdav) %]</td>
25
   <td>[% LxERP.t8('Use WebDAV Repository') %]</td>
26
  </tr>
27
  <tr>
28
   <td align="right">[% LxERP.t8('WebDAV save documents') %]</td>
29
   <td>[% L.yes_no_tag('defaults.webdav_documents', SELF.defaults.webdav_documents) %]</td>
30
   <td>[% LxERP.t8('Save document in WebDAV repository') %]</td>
31
  </tr>
32
  <tr>
33
   <td align="right">[% LxERP.t8('Filemanagement') %]</td>
34
   <td>[% L.yes_no_tag('defaults.doc_storage', SELF.defaults.doc_storage) %]</td>
35
   <td>[% LxERP.t8('Use Filemanagement') %]</td>
36
  </tr>
37
  <tr>
38
    <td align="right">[% LxERP.t8('Storage Type for generated/imported PDF Documents') %]</td>
39
    <td>[% L.select_tag('defaults.doc_storage_for_documents',
40
         [ [ 'None', LxERP.t8('None') ],[ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
41
                               default = SELF.defaults.doc_storage_for_documents,
42
                               onchange="return checkavailable_filebackend(this);") %]</td>
43
    <td>[% LxERP.t8('Use this storage backend for all generated PDF-Files') %]</td>
44
  </tr>
45
  <tr>
46
    <td align="right">[% LxERP.t8('Storage Type for Attachments') %]</td>
47
    <td>[% L.select_tag('defaults.doc_storage_for_attachments',
48
         [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
49
                               default = SELF.defaults.doc_storage_for_attachments,
50
                               onchange="return checkavailable_filebackend(this);") %]</td>
51
    <td>[% LxERP.t8('Use this storage backend for all uploaded attachments') %]</td>
52
  </tr>
53
  <tr>
54
    <td align="right">[% LxERP.t8('Storage Type for images') %]</td>
55
    <td>[% L.select_tag('defaults.doc_storage_for_images',
56
         [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
57
                               default = SELF.defaults.doc_storage_for_images,
58
                               onchange="return checkavailable_filebackend(this);") %]</td>
59
    <td>[% LxERP.t8('Use this storage backend for uploaded images') %]</td>
60
  </tr>
61
  <tr>
62
    <td align="right">[% LxERP.t8('Storage Type for shopimages') %]</td>
63
    <td>[% L.select_tag('defaults.doc_storage_for_shopimages',
64
         [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
65
                               default = SELF.defaults.doc_storage_for_shopimages,
66
                               onchange="return checkavailable_filebackend(this);") %]</td>
67
    <td>[% LxERP.t8('Use this storage backend for uploaded images') %]</td>
68
  </tr>
69
  <tr>
70
   <td align="right">[% LxERP.t8('Delete printfiles') %]</td>
71
   <td>[% L.yes_no_tag('defaults.doc_delete_printfiles', SELF.defaults.doc_delete_printfiles) %]</td>
72
   <td>[% LxERP.t8('Allow to delete generated printfiles') %]</td>
73
  </tr>
74
  <tr>
75
   <td align="right">[% LxERP.t8('max filesize') %]</td>
76
   <td>[% L.input_tag('doc_max_filesize_MB','', size=10, onchange="verifyMBSize(this);") %]
77
       [% L.hidden_tag('defaults.doc_max_filesize',SELF.defaults.doc_max_filesize) %] MB</td>
78
   <td>[% LxERP.t8('The maximum of uploadable filesize in Megabyte') %]</td>
79
  </tr>
80
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Storage Backends") %]</td></tr>
81
  <tr>
82
   <td align="right">[% LxERP.t8('Files') %]</td>
83
   <td>[% L.yes_no_tag('defaults.doc_files', SELF.defaults.doc_files) %]</td>
84
   <td>[% LxERP.t8('Use File Storage backend') %]</td>
85
  </tr>
86
  <tr>
87
   <td align="right">[% LxERP.t8('WebDAV') %]</td>
88
   <td>[% L.yes_no_tag('defaults.doc_webdav', SELF.defaults.doc_webdav) %]</td>
89
   <td>[% LxERP.t8('Use WebDAV Storage backend') %]</td>
90
  </tr>
91

  
92
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Reports") %]</td></tr>
93

  
94
  <tr>
95
   <td align="right">[% LxERP.t8('Balance') %]</td>
96
   <td>[% L.yes_no_tag('defaults.feature_balance', SELF.defaults.feature_balance) %]</td>
97
   <td>[% LxERP.t8('Use Balance Sheet') %]</td>
98
  </tr>
99
  <tr>
100
   <td align="right">[% LxERP.t8('income') %]</td>
101
   <td>[% L.yes_no_tag('defaults.feature_eurechnung', SELF.defaults.feature_eurechnung) %]</td>
102
   <td>[% LxERP.t8('Use Income') %]</td>
103
  </tr>
104
  <tr>
105
   <td align="right">[% LxERP.t8('Erfolgsrechnung') %]</td>
106
   <td>[% L.yes_no_tag('defaults.feature_erfolgsrechnung', SELF.defaults.feature_erfolgsrechnung) %]</td>
107
   <td>[% LxERP.t8('Use Erfolgsrechnung') %]</td>
108
  </tr>
109

  
110
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Customer Master Data") %]</td></tr>
111

  
112
  <tr>
113
   <td align="right">[% LxERP.t8('Representative') %]</td>
114
   <td>[% L.yes_no_tag('defaults.vertreter', SELF.defaults.vertreter) %]</td>
115
   <td>[% LxERP.t8('Representative for Customer') %]</td>
116
  </tr>
117
 <tr>
118
   <td align="right">[% LxERP.t8('Normalize Customer / Vendor names') %]</td>
119
   <td>   [% L.yes_no_tag('defaults.normalize_vc_names', SELF.defaults.normalize_vc_names) %]</td>
120
   <td>[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in customer or vendor names') %]</td>
121
  </tr>
122

  
123
  <tr>
124
   <td align="right">[% LxERP.t8('Hourly Rate') %]</td>
125
   <td>[% L.input_tag('defaults.customer_hourly_rate', LxERP.format_amount(SELF.defaults.customer_hourly_rate, 2), style=style) %]</td>
126
   <td>[% LxERP.t8('Default hourly rate for new customers') %]</td>
127
  </tr>
128

  
129
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Parts Master Data") %]</td></tr>
130

  
131
  <tr>
132
   <td align="right">[% LxERP.t8('Pictures for parts') %]</td>
133
   <td>[% L.yes_no_tag('defaults.parts_show_image', SELF.defaults.parts_show_image) %]</td>
134
   <td>[% LxERP.t8('Show the picture in the part form') %]</td>
135
  </tr>
136
  <tr>
137
   <td align="right">[% LxERP.t8('Pictures for search parts') %]</td>
138
   <td>[% L.yes_no_tag('defaults.parts_listing_image', SELF.defaults.parts_listing_image) %]</td>
139
   <td>[% LxERP.t8('Show the pictures in the result for search parts') %]</td>
140
  </tr>
141
  <tr>
142
   <td align="right">[% LxERP.t8('CSS style for pictures') %]</td>
143
   <td>   [% L.input_tag('defaults.parts_image_css',SELF.defaults.parts_image_css, style=style) %]</td>
144
   <td>[% LxERP.t8('Style the picture with the following CSS code') %]</td>
145
  </tr>
146
  <tr>
147
    <td align="right">[% LxERP.t8('If item not found, allow creation of new item') %]</td>
148
    <td>[% L.yes_no_tag('defaults.create_part_if_not_found', SELF.defaults.create_part_if_not_found) %]</td>
149
    <td>[% LxERP.t8('If searching a part from a document and no part is found then offer to create a new part.') %]</td>
150
  </tr>
151
 <tr>
152
   <td align="right">[% LxERP.t8('Normalize part description and part notes') %]</td>
153
   <td>   [% L.yes_no_tag('defaults.normalize_part_descriptions', SELF.defaults.normalize_part_descriptions) %]</td>
154
   <td>[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in part description and part notes. Affects the CSV import as well.') %]</td>
155
 </tr>
156

  
157
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Purchasing & Sales") %]</td></tr>
158

  
159
  <tr>
160
   <td align="right">[% LxERP.t8('Require a transaction description in purchase and sales records') %]</td>
161
   <td>[% L.yes_no_tag('defaults.require_transaction_description_ps', SELF.defaults.require_transaction_description_ps) %]</td>
162
   <td>[% LxERP.t8('If enabled purchase and sales records cannot be saved if no transaction description has been entered.') %]</td>
163
  </tr>
164

  
165
  <tr>
166
   <td align="right">[% LxERP.t8("Only list customer's projects in sales records") %]</td>
167
   <td>[% L.yes_no_tag("defaults.customer_projects_only_in_sales", SELF.defaults.customer_projects_only_in_sales) %]</td>
168
   <td>[% LxERP.t8("If enabled only those projects that are assigned to the currently selected customer are offered for selection in sales records.") %]</td>
169
  </tr>
170

  
171
  <tr>
172
   <td align="right">[% LxERP.t8('Allow conversion from sales quotations to sales invoices') %]</td>
173
   <td>[% L.yes_no_tag('defaults.allow_sales_invoice_from_sales_quotation', SELF.defaults.allow_sales_invoice_from_sales_quotation) %]</td>
174
   <td>[% LxERP.t8('If disabled sales quotations cannot be converted into sales invoices directly.') %]</td>
175
  </tr>
1
[% USE LxERP %]
2
[% USE L %]
3
[% USE P %]
4
[% USE T8 %]
176 5

  
177
  <tr>
178
   <td align="right">[% LxERP.t8('Allow conversion from sales orders to sales invoices') %]</td>
179
   <td>[% L.yes_no_tag('defaults.allow_sales_invoice_from_sales_order', SELF.defaults.allow_sales_invoice_from_sales_order) %]</td>
180
   <td>[% LxERP.t8('If disabled sales orders cannot be converted into sales invoices directly.') %]</td>
181
  </tr>
182

  
183
  <tr>
184
   <td align="right">[% LxERP.t8('Allow direct creation of new purchase delivery orders') %]</td>
185
   <td>[% L.yes_no_tag('defaults.allow_new_purchase_delivery_order', SELF.defaults.allow_new_purchase_delivery_order) %]</td>
186
   <td>[% LxERP.t8('If disabled purchase delivery orders can only be created by conversion from existing requests for quotations and purchase orders.') %]</td>
187
  </tr>
188

  
189
  <tr>
190
   <td align="right">[% LxERP.t8('Allow direct creation of new purchase invoices') %]</td>
191
   <td>[% L.yes_no_tag('defaults.allow_new_purchase_invoice', SELF.defaults.allow_new_purchase_invoice) %]</td>
192
   <td>[% LxERP.t8('If disabled purchase invoices can only be created by conversion from existing requests for quotations, purchase orders and purchase delivery orders.') %]</td>
193
  </tr>
194

  
195
  <tr>
196
   <td align="right">[% LxERP.t8("Show »not delivered qty/value« column in sales and purchase orders") %]</td>
197
   <td>[% L.yes_no_tag("defaults.sales_purchase_order_ship_missing_column", SELF.defaults.sales_purchase_order_ship_missing_column) %]</td>
198
   <td>[% LxERP.t8("If enabled a column will be shown in sales and purchase orders that lists both the amount and the value not shipped yet for each item.") %]</td>
199
  </tr>
200

  
201
  <tr>
202
   <td align="right">[% LxERP.t8("Warn before saving orders with duplicate parts (new controller only)") %]</td>
203
   <td>[% L.yes_no_tag("defaults.order_warn_duplicate_parts", SELF.defaults.order_warn_duplicate_parts) %]</td>
204
   <td>[% 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).") %]</td>
205
  </tr>
206
  <tr>
207
   <td align="right">[% LxERP.t8("Warn before saving orders without a delivery date") %]</td>
208
   <td>[% L.yes_no_tag("defaults.order_warn_no_deliverydate", SELF.defaults.order_warn_no_deliverydate) %]</td>
209
   <td>[% LxERP.t8("If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.") %]</td>
210
  </tr>
211

  
212
  <tr><td class="listheading" colspan="4">[% LxERP.t8("E-mail") %]</td></tr>
213

  
214
  <tr>
215
   <td align="right">[% LxERP.t8('Global Record BCC') %]</td>
216
   <td>
217
     [% L.input_tag('defaults.global_bcc', SELF.defaults.global_bcc, style=style) %]
218
   </td>
219
   <td>[% 'Manually sent E-Mails will have their BCC field appended with this address. Will not trigger for employees without the right to send bcc, and will not apply to mails sent by automated jobs.' | $T8 %]</td>
220
  </tr>
221

  
222
  <tr>
223
   <td align="right">[% LxERP.t8('Send a BCC to logged in user?') %]</td>
224
   <td>
225
     [% L.yes_no_tag('defaults.bcc_to_login', SELF.defaults.bcc_to_login) %]
226
   </td>
227
   <td>
228
     [% LxERP.t8('Send a blind copy of all outgoing emails to current user\'s email address?') %]
229
   </td>
230
 </tr>
231

  
232
  <tr>
233
   <td align="right">[% LxERP.t8('Email journal') %]</td>
234
   <td>
235
     [% L.select_tag('defaults.email_journal', [ [ 0, LxERP.t8('No Journal') ],[ 1, LxERP.t8('Without Attachments') ],[ 2, LxERP.t8('With Attachments') ]  ], default=SELF.defaults.email_journal) %]
236
   </td>
237
   <td>[% 'Sent emails can be optionally stored in the database with or without their attachments.' | $T8 %]</td>
238
  </tr>
239

  
240
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Requirement Specs") %]</td></tr>
241

  
242
  <tr>
243
   <td align="right">[% LxERP.t8('Default article for converting into quotations and orders') %]</td>
244
   <td>
245
    [% IF SELF.h_unit_name %]
246
     [% 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) %]
247
    [% ELSE %]
248
     [% LxERP.t8("Error: this feature requires that articles with a time-based unit (e.g. 'h' or 'min') exist.") %]
249
    [% END %]
250
   </td>
251
   <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>
252
  </tr>
253
  <tr><td class="listheading" colspan="4">[% LxERP.t8('Transport and service costs reminder') %]</td></tr>
254
 <tr>
255
  <td align="right">[% LxERP.t8('Default transport article number') %]</td>
256
  <td>[% P.part.picker('defaults.transport_cost_reminder_article_number_id', SELF.defaults.transport_cost_reminder_article_number_id, style=style) %]</td>
257
   <td>[% LxERP.t8('Before saving a sales order, this article will be checked and a warning is generated.') %]</td>
258
 </tr>
259

  
260
 <tr><td class="listheading" colspan="4">[% LxERP.t8("Disabled Price Sources") %]</td></tr>
261
 <tr>
262
   <td align="right">[% 'Price Sources to be disabled in this client' | $T8 %]</td>
263
   <td colspan=2>
264
     <div class="clearfix">
265
      [% L.select_tag("defaults.disabled_price_sources[]", SELF.all_price_sources, id="defaults_price_sources", multiple=1, default=SELF.defaults.disabled_price_sources) %]
266
      [% L.multiselect2side("defaults_price_sources", labelsx=LxERP.t8("All price sources"), labeldx=LxERP.t8("Price sources deactivated in this client")) %]
267
     </div>
268
   </td>
269
 </tr>
270

  
271
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Projects") %]</td></tr>
272
  <tr>
273
   <td align="right">[% LxERP.t8('Always save orders with a projectnumber (create new projects)') %]</td>
274
   <td>[% L.yes_no_tag('defaults.order_always_project', SELF.defaults.order_always_project) %]</td>
275
  </tr>
276
  <tr>
277
   <td align="right">[% LxERP.t8('Project type') %]</td>
278
   <td>[% 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") %]</td>
279
  </tr>
280
  <tr>
281
   <td align="right">[% LxERP.t8('Project Status') %]</td>
282
   <td>[% 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") %]</td>
283
  </tr>
284
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Select Mulit-Item Options") %]</td></tr>
285
  <tr>
286
   <td align="right">[% LxERP.t8('Show parts longdescription (notes) in select list') %]</td>
287
   <td>[% L.yes_no_tag('defaults.show_longdescription_select_item', SELF.defaults.show_longdescription_select_item) %]</td>
288
  </tr>
6
<div id="features">
289 7

  
290
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Enabled Quick Searched") %]</td></tr>
291
  <tr>
292
    <td align="right">[% 'Quick Searches that will be shown in the header in this client' | $T8 %]</td>
293
    <td colspan=2>
294
      <div class="clearfix">
295
       [% L.select_tag("defaults.quick_search_modules[]", SELF.available_quick_search_modules, value_key="name", title_key="description_config", id="defaults_quick_searches", multiple=1, default=SELF.defaults.quick_search_modules) %]
296
       [% L.multiselect2side("defaults_quick_searches", labelsx=LxERP.t8("All modules"), labeldx=LxERP.t8("Enabled modules")) %]
8
<div class="wrapper">
9

  
10
  <table class="tbl-horizontal expanded" style="margin-right:4.0em;">
11
    <caption>[% LxERP.t8("DATEV & UStVA") %]</caption>
12
    <colgroup> <col class="wi-mediumsmall"><col class="wi-small"><col class="wi-mediumsmall"> </colgroup>
13
    <tbody>
14
      <tr>
15
        <th>[% LxERP.t8('Datevautomatik') %]</th>
16
        <td>[% L.yes_no_tag('defaults.feature_datev', SELF.defaults.feature_datev) %]</td>
17
        <td class="long-desc">[% LxERP.t8('Use Datevautomatik') %]</td>
18
      </tr>
19
      <tr>
20
        <th>[% LxERP.t8('UStVA') %]</th>
21
        <td>[% L.yes_no_tag('defaults.feature_ustva', SELF.defaults.feature_ustva) %]</td>
22
        <td class="long-desc">[% LxERP.t8('Use UStVA') %]</td>
23
      </tr>
24
      <tr>
25
        <th class="caption" colspan="3">[% LxERP.t8("File Management") %]</th>
26
      </tr>
27
      <tr>
28
        <th>[% LxERP.t8('WebDAV') %]</th>
29
        <td>[% L.yes_no_tag('defaults.webdav', SELF.defaults.webdav) %]</td>
30
        <td class="long-desc">[% LxERP.t8('Use WebDAV Repository') %]</td>
31
      </tr>
32
      <tr>
33
        <th>[% LxERP.t8('WebDAV save documents') %]</th>
34
        <td>[% L.yes_no_tag('defaults.webdav_documents', SELF.defaults.webdav_documents) %]</td>
35
        <td class="long-desc">[% LxERP.t8('Save document in WebDAV repository') %]</td>
36
      </tr>
37
      <tr>
38
        <th>[% LxERP.t8('Filemanagement') %]</th>
39
        <td>[% L.yes_no_tag('defaults.doc_storage', SELF.defaults.doc_storage) %]</td>
40
        <td class="long-desc">[% LxERP.t8('Use Filemanagement') %]</td>
41
      </tr>
42
      <tr>
43
        <th>[% LxERP.t8('Storage Type for generated/imported PDF Documents') %]</th>
44
        <td>[% L.select_tag('defaults.doc_storage_for_documents', [ [ 'None', LxERP.t8('None') ],[ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ], default = SELF.defaults.doc_storage_for_documents, onchange="return checkavailable_filebackend(this);") %]</td>
45
        <td class="long-desc">[% LxERP.t8('Use this storage backend for all generated PDF-Files') %]</td>
46
      </tr>
47
      <tr>
48
        <th>[% LxERP.t8('Storage Type for Attachments') %]</th>
49
        <td>[% L.select_tag('defaults.doc_storage_for_attachments', [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ], default = SELF.defaults.doc_storage_for_attachments, onchange="return checkavailable_filebackend(this);") %]</td>
50
        <td class="long-desc">[% LxERP.t8('Use this storage backend for all uploaded attachments') %]</td>
51
      </tr>
52
      <tr>
53
        <th>[% LxERP.t8('Storage Type for images') %]</th>
54
        <td>[% L.select_tag('defaults.doc_storage_for_images', [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ], default = SELF.defaults.doc_storage_for_images, onchange="return checkavailable_filebackend(this);") %]</td>
55
        <td class="long-desc">[% LxERP.t8('Use this storage backend for uploaded images') %]</td>
56
      </tr>
57
      <tr>
58
        <th>[% LxERP.t8('Storage Type for shopimages') %]</th>
59
        <td>[% L.select_tag('defaults.doc_storage_for_shopimages',
60
             [ [ 'None', LxERP.t8('None') ], [ 'Filesystem', LxERP.t8('Files') ],[ 'Webdav', LxERP.t8('WebDAV') ] ],
61
                                   default = SELF.defaults.doc_storage_for_shopimages,
62
                                   onchange="return checkavailable_filebackend(this);") %]</td>
63
        <td class="long-desc">[% LxERP.t8('Use this storage backend for uploaded images') %]</td>
64
      </tr>
65
      <tr>
66
        <th>[% LxERP.t8('Delete printfiles') %]</th>
67
        <td>[% L.yes_no_tag('defaults.doc_delete_printfiles', SELF.defaults.doc_delete_printfiles) %]</td>
68
        <td class="long-desc">[% LxERP.t8('Allow to delete generated printfiles') %]</td>
69
      </tr>
70
      <tr>
71
        <th>[% LxERP.t8('max filesize') %]</th>
72
        <td>[% L.input_tag('doc_max_filesize_MB','', size=10, onchange="verifyMBSize(this);", class='wi-small') %] [% L.hidden_tag('defaults.doc_max_filesize',SELF.defaults.doc_max_filesize) %] MB</td>
73
        <td class="long-desc">[% LxERP.t8('The maximum of uploadable filesize in Megabyte') %]</td>
74
      </tr>
75
      <tr>
76
        <th class="caption" colspan="3">[% LxERP.t8("Storage Backends") %]</th>
77
      </tr>
78
      <tr>
79
        <th>[% LxERP.t8('Files') %]</th>
80
        <td>[% L.yes_no_tag('defaults.doc_files', SELF.defaults.doc_files) %]</td>
81
        <td class="long-desc">[% LxERP.t8('Use File Storage backend') %]</td>
82
      </tr>
83
      <tr>
84
        <th>[% LxERP.t8('WebDAV') %]</th>
85
        <td>[% L.yes_no_tag('defaults.doc_webdav', SELF.defaults.doc_webdav) %]</td>
86
        <td class="long-desc">[% LxERP.t8('Use WebDAV Storage backend') %]</td>
87
      </tr>
88
      <tr>
89
        <th class="caption" colspan="3"> [% LxERP.t8("Reports") %] </th>
90
      </tr>
91
      <tr>
92
        <th>[% LxERP.t8('Balance') %]</th>
93
        <td>[% L.yes_no_tag('defaults.feature_balance', SELF.defaults.feature_balance) %]</td>
94
        <td class="long-desc">[% LxERP.t8('Use Balance Sheet') %]</td>
95
      </tr>
96
      <tr>
97
        <th>[% LxERP.t8('income') %]</th>
98
        <td>[% L.yes_no_tag('defaults.feature_eurechnung', SELF.defaults.feature_eurechnung) %]</td>
99
        <td class="long-desc">[% LxERP.t8('Use Income') %]</td>
100
      </tr>
101
      <tr>
102
        <th>[% LxERP.t8('Erfolgsrechnung') %]</th>
103
        <td>[% L.yes_no_tag('defaults.feature_erfolgsrechnung', SELF.defaults.feature_erfolgsrechnung) %]</td>
104
        <td class="long-desc">[% LxERP.t8('Use Erfolgsrechnung') %]</td>
105
      </tr>
106
      <tr>
107
        <th class="caption" colspan="3"> [% 'E-mail' | $T8 %] </th>
108
      </tr>
109
      <tr>
110
        <th>[% LxERP.t8('Global Record BCC') %]</th>
111
        <td colspan="2"> [% L.input_tag('defaults.global_bcc', SELF.defaults.global_bcc, class='wi-wide') %] <div class="description">[% 'Manually sent E-Mails will have their BCC field appended with this address. Will not trigger for employees without the right to send bcc, and will not apply to mails sent by automated jobs.' | $T8 %]</div></td>
112

  
113
      </tr>
114
      <tr>
115
        <th>[% LxERP.t8('Send a BCC to logged in user?') %]</th>
116
        <td> [% L.yes_no_tag('defaults.bcc_to_login', SELF.defaults.bcc_to_login) %] </td>
117
        <td class="long-desc"> [% LxERP.t8('Send a blind copy of all outgoing emails to current user\'s email address?') %] </td>
118
      </tr>
119
      <tr>
120
        <th>[% LxERP.t8('Email journal') %]</th>
121
        <td colspan="2"> [% L.select_tag('defaults.email_journal', [ [ 0, LxERP.t8('No Journal') ],[ 1, LxERP.t8('Without Attachments') ],[ 2, LxERP.t8('With Attachments') ] ], default=SELF.defaults.email_journal, class="wi-wide") %] <div class="description">[% 'Sent emails can be optionally stored in the database with or without their attachments.' | $T8 %]</div></td>
122

  
123
      </tr>
124
      <tr>
125
        <th class="caption" colspan="3">[% LxERP.t8("SEPA") %]</th>
126
      </tr>
127
      <tr>
128
        <th>[% 'Add Customer/Vendor Number' | $T8 %]</th>
129
        <td>[% L.yes_no_tag('defaults.sepa_reference_add_vc_vc_id', SELF.defaults.sepa_reference_add_vc_vc_id) %]</td>
130
        <td class="long-desc">[% LxERP.t8('Add Customer/Vendor Number as a reference add-on for SEPA export.') %]</td>
131
      </tr>
132
      <tr>
133
        <th>[% 'Execution Date = Invoice Duedate' | $T8 %]</th>
134
        <td>[% L.yes_no_tag('defaults.sepa_set_duedate_as_default_exec_date', SELF.defaults.sepa_set_duedate_as_default_exec_date) %]</td>
135
        <td class="long-desc">[% LxERP.t8('Set the invoice duedate as the default execution date for SEPA export.') %]</td>
136
      </tr>
137
      <tr>
138
        <th>[% 'Execution Date = Skonto Date' | $T8 %]</th>
139
        <td>[% L.yes_no_tag('defaults.sepa_set_skonto_date_as_default_exec_date', SELF.defaults.sepa_set_skonto_date_as_default_exec_date) %]</td>
140
        <td class="long-desc">[% LxERP.t8('Set the invoice skonto date (if exists) as the default execution date for SEPA export.') %]</td>
141
      </tr>
142
      <tr>
143
        <th>[% 'Buffer Substraction' | $T8 %]</th>
144
        <td>[% L.input_tag('defaults.sepa_set_skonto_date_buffer_in_days', LxERP.format_amount(SELF.defaults.sepa_set_skonto_date_buffer_in_days, 0), size=10, class='wi-small' ) %]</td>
145
        <td class="long-desc">[% LxERP.t8('In addition to the above date functions, subtract the following amount of days from the calculated date as a buffer.') %]</td>
146
      </tr>
147

  
148
      <tr>
149
        <th class="caption" colspan="3">[% LxERP.t8("Experimental Features") %]</th>
150
      </tr>
151
      <tr>
152
        <th>[% LxERP.t8('Order Controller') %]</th>
153
        <td>[% L.yes_no_tag('defaults.feature_experimental_order', SELF.defaults.feature_experimental_order) %]</td>
154
        <td class="long-desc">[% LxERP.t8('Replace legacy order controller with new one') %]</td>
155
      </tr>
156
      <tr>
157
        <th>[% LxERP.t8('Assortment') %]</th>
158
        <td>[% L.yes_no_tag('defaults.feature_experimental_assortment', SELF.defaults.feature_experimental_assortment) %]</td>
159
        <td class="long-desc">[% LxERP.t8('Enable Assortment as new article type') %]</td>
160
      </tr>
161
    </tbody>
162
  </table>
163

  
164
  <table class="tbl-horizontal expanded">
165
    <caption>[% 'Customer Master Data' | $T8 %]</caption>
166
    <colgroup> <col class="wi-mediumsmall"><col class="wi-small"><col class="wi-wide"> </colgroup>
167
    <tbody>
168
      <tr>
169
        <th>[% LxERP.t8('Representative') %]</th>
170
        <td>[% L.yes_no_tag('defaults.vertreter', SELF.defaults.vertreter) %]</td>
171
        <td class="long-desc">[% LxERP.t8('Representative for Customer') %]</td>
172
      </tr>
173
      <tr>
174
        <th>[% LxERP.t8('Normalize Customer / Vendor names') %]</th>
175
        <td> [% L.yes_no_tag('defaults.normalize_vc_names', SELF.defaults.normalize_vc_names) %]</td>
176
        <td class="long-desc">[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in customer or vendor names') %]</td>
177
      </tr>
178
      <tr>
179
        <th>[% LxERP.t8('Hourly Rate') %]</th>
180
        <td>[% L.input_tag('defaults.customer_hourly_rate', LxERP.format_amount(SELF.defaults.customer_hourly_rate, 2), class='wi-small') %]</td>
181
        <td class="long-desc">[% LxERP.t8('Default hourly rate for new customers') %]</td>
182
      </tr>
183
      <tr>
184
        <th class="caption" colspan="3">[% LxERP.t8("Parts Master Data") %]</th>
185
      </tr>
186
      <tr>
187
        <th>[% LxERP.t8('Pictures for parts') %]</th>
188
        <td>[% L.yes_no_tag('defaults.parts_show_image', SELF.defaults.parts_show_image) %]</td>
189
        <td class="long-desc">[% LxERP.t8('Show the picture in the part form') %]</td>
190
      </tr>
191
      <tr>
192
        <th>[% LxERP.t8('Pictures for search parts') %]</th>
193
        <td>[% L.yes_no_tag('defaults.parts_listing_image', SELF.defaults.parts_listing_image) %]</td>
194
        <td class="long-desc">[% LxERP.t8('Show the pictures in the result for search parts') %]</td>
195
      </tr>
196
      <tr>
197
        <th>[% LxERP.t8('CSS style for pictures') %]</th>
198
        <td> [% L.input_tag('defaults.parts_image_css',SELF.defaults.parts_image_css, class='wi-mediumsmall') %]</td>
199
        <td class="long-desc">[% LxERP.t8('Style the picture with the following CSS code') %]</td>
200
      </tr>
201
      <tr>
202
        <th>[% LxERP.t8('If item not found, allow creation of new item') %]</th>
203
        <td>[% L.yes_no_tag('defaults.create_part_if_not_found', SELF.defaults.create_part_if_not_found) %]</td>
204
        <td class="long-desc">[% LxERP.t8('If searching a part from a document and no part is found then offer to create a new part.') %]</td>
205
      </tr>
206
      <tr>
207
        <th>[% LxERP.t8('Normalize part description and part notes') %]</th>
208
        <td> [% L.yes_no_tag('defaults.normalize_part_descriptions', SELF.defaults.normalize_part_descriptions) %]</td>
209
        <td class="long-desc">[% LxERP.t8('Automatic deletion of leading, trailing and excessive (repetitive) spaces in part description and part notes. Affects the CSV import as well.') %]</td>
210
      </tr>
211
      <tr>
212
        <th class="caption" colspan="3">[% LxERP.t8("Purchasing & Sales") %]</th>
213
      </tr>
214
      <tr>
215
        <th>[% LxERP.t8('Require a transaction description in purchase and sales records') %]</th>
216
        <td>[% L.yes_no_tag('defaults.require_transaction_description_ps', SELF.defaults.require_transaction_description_ps) %]</td>
217
        <td class="long-desc">[% LxERP.t8('If enabled purchase and sales records cannot be saved if no transaction description has been entered.') %]</td>
218
      </tr>
219
      <tr>
220
        <th>[% LxERP.t8("Only list customer's projects in sales records") %]</th>
221
        <td>[% L.yes_no_tag("defaults.customer_projects_only_in_sales", SELF.defaults.customer_projects_only_in_sales) %]</td>
222
        <td class="long-desc">[% LxERP.t8("If enabled only those projects that are assigned to the currently selected customer are offered for selection in sales records.") %]</td>
223
      </tr>
224
      <tr>
225
        <th>[% LxERP.t8('Allow conversion from sales quotations to sales invoices') %]</th>
226
        <td>[% L.yes_no_tag('defaults.allow_sales_invoice_from_sales_quotation', SELF.defaults.allow_sales_invoice_from_sales_quotation) %]</td>
227
        <td class="long-desc">[% LxERP.t8('If disabled sales quotations cannot be converted into sales invoices directly.') %]</td>
228
      </tr>
229
      <tr>
230
        <th>[% LxERP.t8('Allow conversion from sales orders to sales invoices') %]</th>
231
        <td>[% L.yes_no_tag('defaults.allow_sales_invoice_from_sales_order', SELF.defaults.allow_sales_invoice_from_sales_order) %]</td>
232
        <td class="long-desc">[% LxERP.t8('If disabled sales orders cannot be converted into sales invoices directly.') %]</td>
233
      </tr>
234
      <tr>
235
        <th>[% LxERP.t8('Allow direct creation of new purchase delivery orders') %]</th>
236
        <td>[% L.yes_no_tag('defaults.allow_new_purchase_delivery_order', SELF.defaults.allow_new_purchase_delivery_order) %]</td>
237
        <td class="long-desc">[% LxERP.t8('If disabled purchase delivery orders can only be created by conversion from existing requests for quotations and purchase orders.') %]</td>
238
      </tr>
239
      <tr>
240
        <th>[% LxERP.t8('Allow direct creation of new purchase invoices') %]</th>
241
        <td>[% L.yes_no_tag('defaults.allow_new_purchase_invoice', SELF.defaults.allow_new_purchase_invoice) %]</td>
242
        <td class="long-desc">[% LxERP.t8('If disabled purchase invoices can only be created by conversion from existing requests for quotations, purchase orders and purchase delivery orders.') %]</td>
243
      </tr>
244
      <tr>
245
        <th>[% LxERP.t8("Show »not delivered qty/value« column in sales and purchase orders") %]</th>
246
        <td>[% L.yes_no_tag("defaults.sales_purchase_order_ship_missing_column", SELF.defaults.sales_purchase_order_ship_missing_column) %]</td>
247
        <td class="long-desc">[% LxERP.t8("If enabled a column will be shown in sales and purchase orders that lists both the amount and the value not shipped yet for each item.") %]</td>
248
      </tr>
249
      <tr>
250
        <th>[% LxERP.t8("Warn before saving orders with duplicate parts (new controller only)") %]</th>
251
        <td>[% L.yes_no_tag("defaults.order_warn_duplicate_parts", SELF.defaults.order_warn_duplicate_parts) %]</td>
252
        <td class="long-desc">[% 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).") %]</td>
253
      </tr>
254
      <tr>
255
       <td align="right">[% LxERP.t8("Warn before saving orders without a delivery date") %]</td>
256
       <td>[% L.yes_no_tag("defaults.order_warn_no_deliverydate", SELF.defaults.order_warn_no_deliverydate) %]</td>
257
       <td>[% LxERP.t8("If enabled a warning will be shown in sales and purchase orders if there the delivery date is empty.") %]</td>
258
      </tr>
259
      <tr>
260
        <th class="caption" colspan="3">[% LxERP.t8('Transport and service costs reminder') %]</th>
261
      </tr>
262
      <tr>
263
        <th>[% LxERP.t8('Default transport article number') %]</th>
264
        <td>[% P.part.picker('defaults.transport_cost_reminder_article_number_id', SELF.defaults.transport_cost_reminder_article_number_id, class='wi-mediumsmall') %]</td>
265
        <td class="long-desc">[% LxERP.t8('Before saving a sales order, this article will be checked and a warning is generated.') %]</td>
266
      </tr>
267
      <tr>
268
        <th class="caption" colspan="3">[% LxERP.t8("Requirement Specs") %]</th>
269
      </tr>
270
      <tr>
271
        <th>[% LxERP.t8('Default article for converting into quotations and orders') %]</th>
272
        <td>
273
          [% IF SELF.h_unit_name %]
274
            [% P.part.picker('defaults.requirement_spec_section_order_part_id', SELF.defaults.requirement_spec_section_order_part_id, convertible_unit=SELF.h_unit_name, class='wi-mediumsmall') %]
275
          [% ELSE %]
276
            [% LxERP.t8("Error: this feature requires that articles with a time-based unit (e.g. 'h' or 'min') exist.") %]
277
          [% END %]
278
        </td>
279
        <td class="long-desc">[% 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>
280
      </tr>
281
      <tr>
282
        <th class="caption" colspan="3">[% LxERP.t8("Projects") %]</th>
283
      </tr>
284
      <tr>
285
        <th>[% 'Orders with projectnumber' | $T8 %]</th>
286
        <td>[% L.yes_no_tag('defaults.order_always_project', SELF.defaults.order_always_project) %]</td>
287
        <td class="long-desc">[% LxERP.t8('Always save orders with a projectnumber (create new projects)') %]</td>
288
      </tr>
289
      <tr>
290
        <th>[% LxERP.t8('Project type') %]</th>
291
        <td>[% L.select_tag('defaults.project_type_id', SELF.all_project_types, default=SELF.defaults.project_type_id, title_key='description', with_empty=0, class='wi-mediumsmall') %]</td>
292
        <td class="long-desc"></td>
293
      </tr>
294
      <tr>
295
        <th>[% LxERP.t8('Project Status') %]</th>
296
        <td>[% L.select_tag('defaults.project_status_id', SELF.all_project_statuses, default=SELF.defaults.project_status_id, title_key='description', with_empty=0, class='wi-mediumsmall') %]</td>
297
        <td class="long-desc"></td>
298
      </tr>
299
      <tr>
300
        <th class="caption" colspan="3">[% LxERP.t8("Select Mulit-Item Options") %]</th>
301
      </tr>
302
      <tr>
303
        <th>[% 'Long description' | $T8 %]</th>
304
        <td>[% L.yes_no_tag('defaults.show_longdescription_select_item', SELF.defaults.show_longdescription_select_item) %]</td>
305
        <td class="long-desc">[% LxERP.t8('Show parts longdescription (notes) in select list') %]</td>
306
      </tr>
307
    </tbody>
308
  </table>
309

  
310
</div><!-- /.wrapper -->
311

  
312
<div class="wrapper">
313

  
314
<table class="tbl-horizontal expanded">
315
  <caption>[% LxERP.t8("Disabled Price Sources") %]</caption>
316
  <colgroup> <col class="wi-normal"><col class="wi-verywide"><col class="wi-normal"> </colgroup>
317
  <tbody>
318
    <tr>
319
      <th>[% 'Price Sources to be disabled in this client' | $T8 %]</th>
320
      <td colspan="2">
321
      <div>
322
        [% L.select_tag("defaults.disabled_price_sources[]", SELF.all_price_sources, id="defaults_price_sources", multiple=1, default=SELF.defaults.disabled_price_sources) %] [% L.multiselect2side("defaults_price_sources", labelsx=LxERP.t8("All price sources"), labeldx=LxERP.t8("Price sources deactivated in this client")) %]
323
      </div>
324
      </td>
325
    </tr>
326
    <tr>
327
      <th class="caption" colspan="3">[% LxERP.t8("Enabled Quick Searched") %]</th>
328
    </tr>
329
    <tr>
330
      <th>[% 'Quick Searches that will be shown in the header in this client' | $T8 %]</th>
331
      <td colspan="2">
332
      <div>
333
        [% L.select_tag("defaults.quick_search_modules[]", SELF.available_quick_search_modules, value_key="name", title_key="description_config", id="defaults_quick_searches", multiple=1, default=SELF.defaults.quick_search_modules) %] [% L.multiselect2side("defaults_quick_searches", labelsx=LxERP.t8("All modules"), labeldx=LxERP.t8("Enabled modules")) %]
297 334
      </div>
298
    </td>
299
  </tr>
300
  <tr><td class="listheading" colspan="4">[% LxERP.t8("SEPA") %]</td></tr>
301
  <tr>
302
   <td align="right">[% LxERP.t8('Add Customer/Vendor Number as a reference add-on for SEPA export.') %]</td>
303
   <td>[% L.yes_no_tag('defaults.sepa_reference_add_vc_vc_id', SELF.defaults.sepa_reference_add_vc_vc_id) %]</td>
304
  </tr>
305
  <tr>
306
   <td align="right">[% LxERP.t8('Set the invoice duedate as the default execution date for SEPA export.') %]</td>
307
   <td>[% L.yes_no_tag('defaults.sepa_set_duedate_as_default_exec_date', SELF.defaults.sepa_set_duedate_as_default_exec_date) %]</td>
308
  </tr>
309
  <tr>
310
   <td align="right">[% LxERP.t8('Set the invoice skonto date (if exists) as the default execution date for SEPA export.') %]</td>
311
   <td>[% L.yes_no_tag('defaults.sepa_set_skonto_date_as_default_exec_date', SELF.defaults.sepa_set_skonto_date_as_default_exec_date) %]</td>
312
  </tr>
313
  <tr>
314
   <td align="right">[% LxERP.t8('In addition to the above date functions, subtract the following amount of days from the calculated date as a buffer.') %]</td>
315
   <td>[% L.input_tag('defaults.sepa_set_skonto_date_buffer_in_days', LxERP.format_amount(SELF.defaults.sepa_set_skonto_date_buffer_in_days, 0), style=style) %]</td>
316
  </tr>
317
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Experimental Features") %]</td></tr>
318
  <tr>
319
   <td align="right">[% LxERP.t8('new order controller') %]</td>
320
   <td>[% L.yes_no_tag('defaults.feature_experimental_order', SELF.defaults.feature_experimental_order) %]</td>
321
  </tr>
322
  <tr>
323
   <td align="right">[% LxERP.t8('Assortment') %]</td>
324
   <td>[% L.yes_no_tag('defaults.feature_experimental_assortment', SELF.defaults.feature_experimental_assortment) %]</td>
325
  </tr>
335
      </td>
336
    </tr>
337
    <tr>
338
      <th class="caption" colspan="3">[% LxERP.t8("Shipped Quantity Algorithm") %]</th>
339
    </tr>
340
    <tr>
341
      <th>[% LxERP.t8('Require stock out to consider a delivery order position delivered?') %]</th>
342
      <td colspan="2">[% L.yes_no_tag('defaults.shipped_qty_require_stock_out', SELF.defaults.shipped_qty_require_stock_out) %]<div class="description wi-verywide">
343
[% 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.') %]
344
</div></td>
345
    </tr>
346
    <tr>
347
      <th>[% LxERP.t8('Use fill up when calculating shipped quantities?') %]</th>
348
      <td colspan="2">[% L.yes_no_tag('defaults.shipped_qty_fill_up', SELF.defaults.shipped_qty_fill_up) %]<div class="description wi-verywide">
349
[% LxERP.t8('Linked positions will always be 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.') %]
350
</div></td>
351
    </tr>
352
    <tr>
353
      <th>[% LxERP.t8('Position identity fields for fill up?') %]</th>
354
      <td colspan="2"> [% 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")) %]<div class="description wi-verywide">
355
[% 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 a 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 the order and delivery order has to match.') %]
356
</div></td>
357
      <!-- <td class="longdesc"></td> -->
358
    </tr>
359
  </tbody>
360
</table>
326 361

  
327
 <tr><td class="listheading" colspan="4">[% LxERP.t8("Shipped Quantity Algorithm") %]</td></tr>
328
 <tr>
329
  <td align="right">[% LxERP.t8('Require stock out to consider a delivery order position delivered?') %]</td>
330
  <td>[% L.yes_no_tag('defaults.shipped_qty_require_stock_out', SELF.defaults.shipped_qty_require_stock_out) %]</td>
331
  <td>[% 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.') %]</td>
332
 </tr>
333
 <tr>
334
  <td align="right">[% LxERP.t8('Use fill up when calculating shipped quantities?') %]</td>
335
  <td>[% L.yes_no_tag('defaults.shipped_qty_fill_up', SELF.defaults.shipped_qty_fill_up) %]</td>
336
  <td>[% LxERP.t8('Linked positions will always be 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.') %]</td>
337
 </tr>
338
 <tr>
339
  <td align="right">[% LxERP.t8('Position identity fields for fill up?') %]</td>
340
  <td>
341
    [% 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) %]
342
    [% L.multiselect2side("defaults_shipped_qty_item_identity_fields", labelsx=LxERP.t8("Available identity fields"), labeldx=LxERP.t8("Selected identity fields")) %]</td>
343
  <td>[% 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 a 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 the order and delivery order has to match.') %]</td>
344
 </tr>
362
</div><!-- /.wrapper -->
345 363

  
364
</div><!-- /#features -->
346 365

  
347
</table>
348
</div>
templates/webpages/client_config/_miscellaneous.html
1
[%- USE LxERP -%][%- USE L -%][%- USE HTML -%]
2
[% SET style="width: 400px" %]
3
<div id="miscellaneous">
4
 <table>
5
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Company settings") %]</td></tr>
6

  
7
  <tr>
8
   <td align="right">[% LxERP.t8("Company name") %]</td>
9
   <td>[% L.input_tag('defaults.company', SELF.defaults.company, style=style) %]</td>
10
  </tr>
11

  
12
  <tr>
13
   <td align="right" valign="top">[% LxERP.t8("Address") %]</td>
14
   <td valign="top">[% L.textarea_tag('defaults.address', SELF.defaults.address, style=style, rows=4) %]</td>
15
  </tr>
16

  
17
  <tr>
18
   <td align="right" valign="top">[% LxERP.t8("Signature") %]</td>
19
   <td valign="top">[% L.textarea_tag('defaults.signature', SELF.defaults.signature, style=style, rows=4) %]</td>
20
  </tr>
21

  
22
  <tr>
23
   <td align="right">[% LxERP.t8("Tax number") %]</td>
24
   [% IF SELF.defaults.feature_ustva %]
25
   <td>[% SELF.defaults.taxnumber %]&nbsp;&nbsp;<a href="ustva.pl?action=config_step1">([% LxERP.t8("For changeing goto USTVA Config") %])</a></td>
26
   [% ELSE %]
27
   <td>[% L.input_tag('defaults.taxnumber', SELF.defaults.taxnumber, style=style) %]</td>
28
   [% END %]
29
  </tr>
30

  
31
  <tr>
32
   <td align="right">[% LxERP.t8("Tax ID number") %]</td>
33
   <td>[% L.input_tag('defaults.co_ustid', SELF.defaults.co_ustid, style=style) %]</td>
34
  </tr>
35

  
36
  <tr>
37
   <td align="right">[% LxERP.t8("SEPA creditor ID") %]</td>
38
   <td>[% L.input_tag('defaults.sepa_creditor_id', SELF.defaults.sepa_creditor_id, style=style) %]</td>
39
  </tr>
40

  
41
  <tr>
42
   <td align="right">[% LxERP.t8("Business Number") %]</td>
43
   <td>[% L.input_tag('defaults.businessnumber', SELF.defaults.businessnumber, style=style) %]</td>
44
  </tr>
45

  
46
  <tr>
47
   <td align="right">[% LxERP.t8("DUNS number") %]</td>
48
   <td>[% L.input_tag('defaults.duns', SELF.defaults.duns, style=style) %]</td>
49
  </tr>
50

  
51
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Language settings") %]</td></tr>
52

  
53
  <tr>
54
   <td align="right">[% LxERP.t8('Default Customer/Vendor Language') %]</td>
55
   <td>[% L.select_tag('defaults.language_id', SELF.all_languages, title_key='description', default=SELF.defaults.language_id, with_empty=1, style=style) %]</td>
56
  </tr>
1
[% USE LxERP %]
2
[% USE L %]
3
[% USE HTML %]
4
[% USE T8 %]
57 5

  
58
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Print templates") %]</td></tr>
59

  
60
  <tr>
61
   <td align="right" valign="top">[% LxERP.t8("Print templates to use") %]</td>
62
   <td colspan="3" valign="top">
63
    <table>
64
     <tr>
65
      <td>[% L.radio_button_tag('use_templates', value='existing', id='use_templates_existing', label=LxERP.t8('Use existing templates'), checked=(FORM.use_templates == 'existing')) %]</td>
66
      <td>[% L.select_tag('defaults.templates', SELF.all_templates.print_templates, default=SELF.defaults.templates, value_sub=\make_templates_value, style=style) %]</td>
67
     </tr>
68

  
69
     <tr>
70
      <td>[% L.radio_button_tag('use_templates', value='new', id='use_templates_new', label=LxERP.t8('Create new templates from master templates'), checked=(FORM.use_templates == 'new')) %]</td>
71
      <td>[% L.select_tag('new_master_templates', SELF.all_templates.master_templates, default=FORM.new_master_templates, style=style) %]</td>
72
     </tr>
73

  
74
     <tr>
75
      <td align="right">[% LxERP.t8("New name") %]</td>
76
      <td>[% L.input_tag('new_templates', FORM.new_templates, style=style) %]</td>
77
     </tr>
78
    </table>
79
   </td>
80
  </tr>
81

  
82
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Currencies") %]</td></tr>
83

  
84
  <tr>
85
   <th></th>
86
   <th>[% LxERP.t8("Currency name") %]</th>
87
   <th>[% LxERP.t8("Default currency") %]</th>
88
   <th>[% LxERP.t8("Hints") %]</th>
89
  </tr>
90

  
91
[% FOREACH currency = SELF.all_currencies %]
92
  <tr>
93
   <td align="right">
94
     [% L.hidden_tag("currencies[+].id", currency.id) %]
95
     [% IF loop.count == 1 %][% LxERP.t8("Currencies") %][% END %]
96
   </td>
97
   <td>[% L.input_tag("currencies[].name", currency.name, style=style) %]</td>
98
   <td align="center">[% L.radio_button_tag('defaults.currency_id', value=currency.id, id='defaults.currency_id_' _ currency.id, checked=(SELF.defaults.currency_id == currency.id)) %]</td>
99
   <td>[% IF loop.count == 1 %][% LxERP.t8("Edit the currency names in order to rename them.") %][%- END %]</td>
100
  </tr>
101
[% END %]
102

  
103
  <tr>
104
   <td align="right">[% LxERP.t8("Add new currency") %]</td>
105
   <td>[% L.input_tag("new_currency", FORM.new_currency, style=style) %]</td>
106
   <td align="center">[% L.radio_button_tag('defaults.currency_id', value=-1, id='defaults.currency_id__1', checked=(SELF.defaults.currency_id == -1)) %]</td>
107
  </tr>
108

  
109
[% IF SELF.all_weightunits.size %]
110
  <tr><td class="listheading" colspan="4">[% LxERP.t8("Weight") %]</td></tr>
111

  
112
  <tr>
113
   <td align="right">[% LxERP.t8("Weight unit") %]</td>
114
   <td>[% L.select_tag('defaults.weightunit', SELF.all_weightunits, default=SELF.defaults.weightunit, value_key='name', title_key='name', style=style) %]</td>
115
  </tr>
6
<div id="miscellaneous">
116 7

  
117
  <tr>
118
   <td align="right">[% LxERP.t8('Show weights') %]</td>
119
   <td>[% L.yes_no_tag('defaults.show_weight', SELF.defaults.show_weight, style=style) %]</td>
120
   <td colspan="2">[% LxERP.t8('Show the weights of articles and the total weight in orders, invoices and delivery notes?') %]</td>
121
  </tr>
122
[% END %]
123
 </table>
124
</div>
8
<div class="wrapper">
9

  
10
  <table class="tbl-horizontal">
11
    <caption> [% LxERP.t8("Company settings") %] </caption>
12
    <colgroup> <col class="wi-mediumsmall"><col class="wi-wide"> </colgroup>
13
    <tbody>
14
    <tr>
15
      <th> [% LxERP.t8("Company name") %] </th>
16
      <td> [% L.input_tag('defaults.company', SELF.defaults.company, class='wi-wide') %] </td>
17
    </tr>
18
    <tr>
19
      <th> [% LxERP.t8("Address") %] </th>
20
      <td> [% L.textarea_tag('defaults.address', SELF.defaults.address, rows=4, class='wi-wide') %] </td>
21
    </tr>
22
    <tr>
23
      <th> [% LxERP.t8("Signature") %] </th>
24
      <td> [% L.textarea_tag('defaults.signature', SELF.defaults.signature, rows=4, class='wi-wide') %] </td>
25
    </tr>
26
    <tr>
27
      <th class="caption" colspan="2"> [% 'IDs & Numbers' | $T8 %] </th>
28
    </tr>
29
    <tr>
30
      <th> [% LxERP.t8("Tax number") %] </th>
31
      [% IF SELF.defaults.feature_ustva %]
32
      <td> [% SELF.defaults.taxnumber %]&nbsp;&nbsp; <a href="ustva.pl?action=config_step1"> ([% LxERP.t8("For changeing goto USTVA Config") %]) </a> </td>
33
      [% ELSE %]
34
      <td> [% L.input_tag('defaults.taxnumber', SELF.defaults.taxnumber, class='wi-medium-small') %] </td>
35
      [% END %]
36
    </tr>
37
    <tr>
38
      <th> [% LxERP.t8("Tax ID number") %] </th>
39
      <td> [% L.input_tag('defaults.co_ustid', SELF.defaults.co_ustid, class='wi-medium-small') %] </td>
40
    </tr>
41
    <tr>
42
      <th> [% LxERP.t8("SEPA creditor ID") %] </th>
43
      <td> [% L.input_tag('defaults.sepa_creditor_id', SELF.defaults.sepa_creditor_id, class='wi-medium-small') %] </td>
44
    </tr>
45
    <tr>
46
      <th> [% LxERP.t8("Business Number") %] </th>
47
      <td> [% L.input_tag('defaults.businessnumber', SELF.defaults.businessnumber, class='wi-medium-small') %] </td>
48
    </tr>
49
    <tr>
50
      <th> [% LxERP.t8("DUNS number") %] </th>
51
      <td> [% L.input_tag('defaults.duns', SELF.defaults.duns, class='wi-medium-small') %] </td>
52
    </tr>
53
    </tbody>
54
  </table>
55

  
56
  <table class="tbl-horizontal">
57
    <colgroup> <col class="wi-small"> <col class="wi-small"> <col class="wi-small"></colgroup>
58
    <caption>[% LxERP.t8("Language settings") %]</caption>
59
    <tbody>
60
    <tr>
61
      <th> [% LxERP.t8('Default Customer/Vendor Language') %] </th>
62
      <td colspan="2"> [% L.select_tag('defaults.language_id', SELF.all_languages, title_key='description', default=SELF.defaults.language_id, with_empty=1, class='wi-mediumsmall') %] </td>
63
    </tr>
64
    <tr class="header-caption">
65
      <th class="caption">[% LxERP.t8("Currencies") %] </th>
66
      <th>[% LxERP.t8("Currency name") %] </th>
67
      <th class="center">[% LxERP.t8("Default currency") %] </th>
68
    </tr>
69
    [% FOREACH currency = SELF.all_currencies %]
70
      <tr>
71
        <th>
72
          [% L.hidden_tag("currencies[+].id", currency.id) %]
73
          [% IF loop.count == 1 %][% LxERP.t8("Currencies") %][% END %]
74
        </th>
75
        <td>
76
          [% SET title=LxERP.t8("Edit the currency names in order to rename them.") %]
77
          [% L.input_tag("currencies[].name", currency.name, title=title, class='wi-small') %]
78
        </td>
79
        <td class="center">[% L.radio_button_tag('defaults.currency_id', value=currency.id, id='defaults.currency_id_' _ currency.id, checked=(SELF.defaults.currency_id == currency.id)) %]</td>
80
      </tr>
81
    [% END %]
82
    <tr>
83
      <th></th>
84
      <td>[% L.input_tag("new_currency", FORM.new_currency, class='wi-small', placeholder=LxERP.t8('Add new (currency)'), title=LxERP.t8('Add new currency') ) %] </td>
85
      <td class="center">[% L.radio_button_tag('defaults.currency_id', value=-1, id='defaults.currency_id__1', checked=(SELF.defaults.currency_id == -1)) %] </td>
86
    </tr>
87
    [% IF SELF.all_weightunits.size %]
88
    <tr>
89
      <th class="caption" colspan="3">[% LxERP.t8("Weight") %] </th>
90
    </tr>
91
    <tr>
92
      <th>[% LxERP.t8("Weight unit") %] </th>
93
      <td>[% L.select_tag('defaults.weightunit', SELF.all_weightunits, default=SELF.defaults.weightunit, value_key='name', title_key='name', class='wi-small') %] </td>
94
      <td></td>
95
    </tr>
96
    <tr>
97
      <th>[% LxERP.t8('Show weights') %] </th>
98
      <td colspan="2">
99
        [% L.yes_no_tag('defaults.show_weight', SELF.defaults.show_weight, class='wi-small') %]
100
        <div class="description">[% LxERP.t8('Show the weights of articles and the total weight in orders, invoices and delivery notes?') %]</div>
101
      </td>
102
    </tr>
103
    [% END %]
104
    </tbody>
105
  </table>
106

  
107
</div><!-- /.wrapper -->
108

  
109
<div class="wrapper">
110

  
111
  <table class="tbl-horizontal">
112
    <caption>[% LxERP.t8("Print templates") %] </caption>
113
    <colgroup> <col class="wi-mediumsmall"><col class="wi-lightwide"> </colgroup>
114

  
115
    <tbody>
116
      <tr>
117
        <th>[% LxERP.t8("Print templates to use") %] </th>
118
        <th>[% 'Templates / Master Templates' | $T8 %] </th>
119
      </tr>
120
      <tr>
121
        <th>[% L.radio_button_tag('use_templates', value='existing', id='use_templates_existing', label=LxERP.t8('Use existing templates'), checked=(FORM.use_templates == 'existing')) %] </th>
122
        <td>[% L.select_tag('defaults.templates', SELF.all_templates.print_templates, default=SELF.defaults.templates, value_sub=\make_templates_value, class='wi-normal') %] </td>
123
      </tr>
124
      <tr>
125
        <th>[% L.radio_button_tag('use_templates', value='new', id='use_templates_new', label=LxERP.t8('Create new templates from master templates'), checked=(FORM.use_templates == 'new')) %] </th>
126
        <td>[% L.select_tag('new_master_templates', SELF.all_templates.master_templates, default=FORM.new_master_templates, class='wi-normal') %] </td>
127
      </tr>
128
      <tr>
129
        <th></th>
130
        <td>[% SET placeholder=LxERP.t8("New name") %] [% L.input_tag('new_templates', FORM.new_templates, placeholder=placeholder, class='wi-normal') %] </td>
131
      </tr>
132
    </tbody>
133
  </table>
134

  
135
</div><!-- /.wrapper -->
136

  
137
</div><!-- /#miscellaneous -->
templates/webpages/client_config/_orders_deleteable.html
1
[%- USE LxERP -%][%- USE L -%]
1
[% USE LxERP %]
2
[% USE L %]
3
[% USE T8 %]
4

  
2 5
<div id="orders_deleteable">
3
 <table>
4
  <tr>
5
   <td align="right">[% LxERP.t8('Sales Orders deleteable') %]</td>
6
   <td>[% L.yes_no_tag('defaults.sales_order_show_delete', SELF.defaults.sales_order_show_delete) %]</td>
7
   <td>[% LxERP.t8('Show delete button in sales orders?') %]</td>
8
  </tr>
9
  <tr>
10
   <td align="right">[% LxERP.t8('Purchase Orders deleteable') %]</td>
11
   <td>[% L.yes_no_tag('defaults.purchase_order_show_delete', SELF.defaults.purchase_order_show_delete) %]</td>
12
   <td>[% LxERP.t8('Show delete button in purchase orders?') %]</td>
13
  </tr>
14
  <tr>
15
   <td align="right">[% LxERP.t8('Sales Delivery Orders deleteable') %]</td>
16
   <td>[% L.yes_no_tag('defaults.sales_delivery_order_show_delete', SELF.defaults.sales_delivery_order_show_delete) %]</td>
17
   <td>[% LxERP.t8('Show delete button in sales delivery orders?') %]</td>
18
  </tr>
19
  <tr>
20
   <td align="right">[% LxERP.t8('Purchase Delivery Orders deleteable') %]</td>
21
   <td>[% L.yes_no_tag('defaults.purchase_delivery_order_show_delete', SELF.defaults.purchase_delivery_order_show_delete) %]</td>
22
   <td>[% LxERP.t8('Show delete button in purchase delivery orders?') %]</td>
23
  </tr>
24
 </table>
25
</div>
6
<div class="wrapper">
7

  
8
  <table class="tbl-horizontal">
9
    <caption>[% 'Orders / Delivery Orders deleteable' | $T8 %]?</caption>
10
    <tbody>
11
      <tr>
12
        <th>[% LxERP.t8('Sales Orders') %]</th>
13
        <td>[% L.yes_no_tag('defaults.sales_order_show_delete', SELF.defaults.sales_order_show_delete, class='wi-small') %]</td>
14
        <td class="long-desc">[% LxERP.t8('Show delete button in sales orders?') %]</td>
15
      </tr>
16
      <tr>
17
        <th>[% LxERP.t8('Purchase Orders') %]</th>
18
        <td>[% L.yes_no_tag('defaults.purchase_order_show_delete', SELF.defaults.purchase_order_show_delete, class='wi-small') %]</td>
19
        <td class="long-desc">[% LxERP.t8('Show delete button in purchase orders?') %]</td>
20
      </tr>
21
      <tr>
22
        <th>[% LxERP.t8('Sales Delivery Orders') %]</th>
23
        <td>[% L.yes_no_tag('defaults.sales_delivery_order_show_delete', SELF.defaults.sales_delivery_order_show_delete, class='wi-small') %]</td>
24
        <td class="long-desc">[% LxERP.t8('Show delete button in sales delivery orders?') %]</td>
25
      </tr>
26
      <tr>
27
        <th>[% LxERP.t8('Purchase Delivery Orders') %]</th>
28
        <td>[% L.yes_no_tag('defaults.purchase_delivery_order_show_delete', SELF.defaults.purchase_delivery_order_show_delete, class='wi-small') %]</td>
29
        <td class="long-desc">[% LxERP.t8('Show delete button in purchase delivery orders?') %]</td>
30
      </tr>
31
    </tbody>
32
  </table>
33

  
34
</div><!-- /.wrapper -->
35
</div><!-- /#orders_deleteable -->
36

  
templates/webpages/client_config/_posting_configuration.html
1
[%- USE L -%][%- USE LxERP -%]
1
[% USE L %]
2
[% USE LxERP %]
3
[% USE T8 %]
4

  
2 5
<div id="posting_configuration">
3
 <table>
4
  <tr>
5
   <td align="right">[% LxERP.t8('Sales invoices changeable') %]</td>
6
   <td>[% L.select_tag('defaults.is_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.is_changeable) %]</td>
7
   <td>[% LxERP.t8('Should sales invoices be and when should they be changeable or deleteable after posting?') %]</td>
8
  </tr>
9
  <tr>
10
   <td align="right">[% LxERP.t8('Purchase invoices changeable') %]</td>
11
   <td>[% L.select_tag('defaults.ir_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.ir_changeable) %]</td>
12
   <td>[% LxERP.t8('Should purchase invoices be and when should they be deleteable after posting?') %]</td>
13
  </tr>
14
  <tr>
15
   <td align="right">[% LxERP.t8('AR transactions changeable') %]</td>
16
   <td>[% L.select_tag('defaults.ar_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.ar_changeable) %]</td>
17
   <td>[% LxERP.t8('Should ar transactions be and when should they be changeable or deleteable after posting?') %]</td>
18
  </tr>
19
  <tr>
20
   <td align="right">[% LxERP.t8('AP transactions changeable') %]</td>
21
   <td>[% L.select_tag('defaults.ap_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.ap_changeable) %]</td>
22
   <td>[% LxERP.t8('Should ap transactions be and when should they be changeable or deleteable after posting?') %]</td>
23
  </tr>
24
  <tr>
25
   <td align="right">[% LxERP.t8('GL transactions changeable') %]</td>
26
   <td>[% L.select_tag('defaults.gl_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.gl_changeable) %]</td>
27
   <td>[% LxERP.t8('Should gl transactions be and when should they be changeable or deleteable after posting?') %]</td>
28
  </tr>
29 6

  
30
  <tr> </tr>
31
  <tr> </tr>
7
<div class="wrapper" id="wrapper-5">
8

  
9
<table class="tbl-horizontal">
10
  <caption>[% 'Changeable after posting' | $T8 %]</caption>
11
  <colgroup> <col class="wi-small"><col class="wi-mediumsmall"><col class="wi-normal"> </colgroup>
12
  <tbody>
13
    <tr>
14
      <th>[% LxERP.t8('Sales invoices') %]</th>
15
      <td>[% L.select_tag('defaults.is_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.is_changeable, class='wi-normal') %]</td>
16
      <td class="longdesc">[% LxERP.t8('Should sales invoices be and when should they be changeable or deleteable after posting?') %]</td>
17
    </tr>
18
    <tr>
19
      <th>[% LxERP.t8('Purchase invoices') %]</th>
20
      <td>[% L.select_tag('defaults.ir_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.ir_changeable, class='wi-normal') %]</td>
21
      <td class="longdesc">[% LxERP.t8('Should purchase invoices be and when should they be deleteable after posting?') %]</td>
22
    </tr>
23
    <tr>
24
      <th>[% LxERP.t8('AR transactions') %]</th>
25
      <td>[% L.select_tag('defaults.ar_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.ar_changeable, class='wi-normal') %]</td>
26
      <td class="longdesc">[% LxERP.t8('Should ar transactions be and when should they be changeable or deleteable after posting?') %]</td>
27
    </tr>
28
    <tr>
29
      <th>[% LxERP.t8('AP transactions') %]</th>
30
      <td>[% L.select_tag('defaults.ap_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.ap_changeable, class='wi-normal') %]</td>
31
      <td class="longdesc">[% LxERP.t8('Should ap transactions be and when should they be changeable or deleteable after posting?') %]</td>
32
    </tr>
33
    <tr>
34
      <th>[% LxERP.t8('GL transactions') %]</th>
35
      <td>[% L.select_tag('defaults.gl_changeable', SELF.posting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.gl_changeable, class='wi-normal') %]</td>
36
      <td class="longdesc">[% LxERP.t8('Should gl transactions be and when should they be changeable or deleteable after posting?') %]</td>
37
    </tr>
38
    <tr>
39
      <th>[% LxERP.t8('Payments') %]</th>
40
      <td>[% L.select_tag('defaults.payments_changeable', SELF.payment_options, value_key = 'value', title_key = 'title', default = SELF.defaults.payments_changeable, class='wi-normal') %]</td>
41
      <td class="longdesc">[% LxERP.t8('Should payments be and when should they be changeable after posting?') %]</td>
42
    </tr>
43
  </tbody>
44
</table>
45

  
46

  
47
<table class="tbl-horizontal">
48
  <caption>[% 'Show "mark as paid' | $T8 %]</caption>
49
  <colgroup> <col class="wi-small"><col class="wi-small"><col class="wi-normal"> </colgroup>
50
  <tbody>
51
    <tr>
52
      <th>[% LxERP.t8('Sales Invoices') %]</th>
53
      <td>[% L.yes_no_tag('defaults.is_show_mark_as_paid', SELF.defaults.is_show_mark_as_paid, class='wi-small') %]</td>
54
      <td class="longdesc">[% LxERP.t8('Should the "mark as paid" button showed on sales invoices?') %]</td>
55
    </tr>
56
    <tr>
57
      <th>[% LxERP.t8('Purchase Invoices') %]</th>
58
      <td>[% L.yes_no_tag('defaults.ir_show_mark_as_paid', SELF.defaults.ir_show_mark_as_paid, class='wi-small') %]</td>
59
      <td class="longdesc">[% LxERP.t8('Should the "mark as paid" button showed in purchase invoices?') %]</td>
60
    </tr>
61
    <tr>
62
      <th>[% LxERP.t8('AR Transactions') %]</th>
63
      <td>[% L.yes_no_tag('defaults.ar_show_mark_as_paid', SELF.defaults.ar_show_mark_as_paid, class='wi-small') %]</td>
64
      <td class="longdesc">[% LxERP.t8('Should the "mark as paid" button showed in ar transactions?') %]</td>
65
    </tr>
66
    <tr>
67
      <th>[% LxERP.t8('AP Transactions') %]</th>
68
      <td>[% L.yes_no_tag('defaults.ap_show_mark_as_paid', SELF.defaults.ap_show_mark_as_paid, class='wi-small') %]</td>
69
      <td class="longdesc">[% LxERP.t8('Should the "mark as paid" button showed in ap transactions?') %]</td>
70
    </tr>
71
  </tbody>
72
</table>
73

  
74
</div><!-- /.wrapper -->
75

  
76
<div class="wrapper" id="wrapper-6">
77

  
78
<table class="tbl-horizontal">
79
  <caption>[% 'Methods & Preferences' | $T8 %]</caption>
80
  <tbody>
81
    <tr>
82
      <th>[% LxERP.t8('Accounting method') %]</th>
83
      <td>[% L.select_tag('defaults.accounting_method', SELF.accounting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.accounting_method, class='wi-normal') %]</td>
84
      <td class="longdesc">[% LxERP.t8('This option controls the posting and calculation behavior for the accounting method.') %]</td>
85
    </tr>
86
    <tr>
87
      <th>[% LxERP.t8('Inventory system') %]</th>
88
      <td>[% L.select_tag('defaults.inventory_system', SELF.inventory_options, value_key = 'value', title_key = 'title', default = SELF.defaults.inventory_system, class='wi-normal') %]</td>
89
      <td class="longdesc"> [% LxERP.t8('This option controls the inventory system.') %]<br>
90
      [% LxERP.t8('ATTENTION! You can not simply change it from periodic to perpetual once you started posting.') %] </td>
91
    </tr>
92
    <tr>
93
      <th>[% LxERP.t8('Profit determination') %]</th>
94
      <td>[% L.select_tag('defaults.profit_determination', SELF.profit_options, value_key = 'value', title_key = 'title', default = SELF.defaults.profit_determination, class='wi-morewide') %]</td>
95
      <td class="longdesc">[% LxERP.t8('This option controls the method used for profit determination.') %]</td>
96
    </tr>
97
    <tr>
98
      <th>[% LxERP.t8('Balance startdate method') %]</th>
99
      <td>[% L.select_tag('defaults.balance_startdate_method', SELF.balance_startdate_method_options, value_key = 'value', title_key = 'title', default = SELF.defaults.balance_startdate_method, class='wi-morewide') %]</td>
100
      <td class="longdesc">[% LxERP.t8('This option controls the method used for determining the startdate for the balance report.') %]</td>
101
    </tr>
102
    <tr>
103
      <th>[% LxERP.t8('Sales Quotation valid interval') %]</th>
104
      <td>[% L.input_tag('defaults.reqdate_interval', LxERP.format_amount(SELF.defaults.reqdate_interval, 0), class='wi-verysmall') %]</td>
105
      <td class="longdesc">[% LxERP.t8('Usually the sales quotation is valid until the next working day. If a value is set here then the quotation will be valid for at least that many days. The resulting date will be adjusted to the next working day if it ends up on a weekend.') %]</td>
106
    </tr>
107
  </tbody>
108
</table>
32 109

  
33
  <tr>
34
   <td align="right">[% LxERP.t8('Payments Changeable') %]</td>
35
   <td>[% L.select_tag('defaults.payments_changeable', SELF.payment_options, value_key = 'value', title_key = 'title', default = SELF.defaults.payments_changeable) %]</td>
36
   <td>[% LxERP.t8('Should payments be and when should they be changeable after posting?') %]</td>
37
  </tr>
110
</div><!-- /.wrapper -->
38 111

  
39
  <tr> </tr>
40
  <tr> </tr>
112
</div><!-- /#posting_configuration -->
41 113

  
42
  <tr>
43
   <td align="right">[% LxERP.t8('Show "mark as paid" in sales invoices') %]</td>
44
   <td>[% L.yes_no_tag('defaults.is_show_mark_as_paid', SELF.defaults.is_show_mark_as_paid) %]</td>
45
   <td>[% LxERP.t8('Should the "mark as paid" button showed on sales invoices?') %]</td>
46
  </tr>
47
  <tr>
48
   <td align="right">[% LxERP.t8('Show "mark as paid" in purchase invoices') %]</td>
49
   <td>[% L.yes_no_tag('defaults.ir_show_mark_as_paid', SELF.defaults.ir_show_mark_as_paid) %]</td>
50
   <td>[% LxERP.t8('Should the "mark as paid" button showed in purchase invoices?') %]</td>
51
  </tr>
52
  <tr>
53
   <td align="right">[% LxERP.t8('Show "mark as paid" in ar transactions') %]</td>
54
   <td>[% L.yes_no_tag('defaults.ar_show_mark_as_paid', SELF.defaults.ar_show_mark_as_paid) %]</td>
55
   <td>[% LxERP.t8('Should the "mark as paid" button showed in ar transactions?') %]</td>
56
  </tr>
57
  <tr>
58
   <td align="right">[% LxERP.t8('Show "mark as paid" in ap transactions') %]</td>
59
   <td>[% L.yes_no_tag('defaults.ap_show_mark_as_paid', SELF.defaults.ap_show_mark_as_paid) %]</td>
60
   <td>[% LxERP.t8('Should the "mark as paid" button showed in ap transactions?') %]</td>
61
  </tr>
62 114

  
63
  <tr> </tr>
64
  <tr> </tr>
65 115

  
66
  <tr>
67
   <td align="right">[% LxERP.t8('Accounting method') %]</td>
68
   <td>[% L.select_tag('defaults.accounting_method', SELF.accounting_options, value_key = 'value', title_key = 'title', default = SELF.defaults.accounting_method) %]</td>
69
   <td>[% LxERP.t8('This option controls the posting and calculation behavior for the accounting method.') %]</td>
70
  </tr>
71
  <tr>
72
   <td align="right">[% LxERP.t8('Inventory system') %]</td>
73
   <td>[% L.select_tag('defaults.inventory_system', SELF.inventory_options, value_key = 'value', title_key = 'title', default = SELF.defaults.inventory_system) %]</td>
74
   <td>
75
    [% LxERP.t8('This option controls the inventory system.') %]<br>
76
    [% LxERP.t8('ATTENTION! You can not simply change it from periodic to perpetual once you started posting.') %]
77
   </td>
78
  </tr>
79
  <tr>
80
   <td align="right">[% LxERP.t8('Profit determination') %]</td>
81
   <td>[% L.select_tag('defaults.profit_determination', SELF.profit_options, value_key = 'value', title_key = 'title', default = SELF.defaults.profit_determination) %]</td>
82
   <td>[% LxERP.t8('This option controls the method used for profit determination.') %]</td>
... Dieser Diff wurde abgeschnitten, weil er die maximale Anzahl anzuzeigender Zeilen überschreitet.

Auch abrufbar als: Unified diff