Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 8e18e2a9

Von Hans P. Schlaepfer vor etwa 4 Jahren hinzugefügt

  • ID 8e18e2a99cb1286d1c09799ea88f2b614459e430
  • Vorgänger 8044d442
  • Nachfolger c1136b47

Neues Design 2019 Standard-Code templates/webpages/order/tabs/basic_data.html

Unterschiede anzeigen:

templates/webpages/order/tabs/basic_data.html
4 4
[% USE L %]
5 5
[% USE P %]
6 6

  
7
[%- INCLUDE 'generic/set_longdescription.html' %]
7
[% INCLUDE 'generic/set_longdescription.html' %]
8 8

  
9 9
<div id="ui-tabs-basic-data">
10
  <table width="100%">
11
    <tr valign="top">
12
      <td>
13
        <table width="100%">
14
          <tr>
15
            <th align="right">[%- SELF.cv == "customer" ? LxERP.t8('Customer') : LxERP.t8('Vendor') -%]</th>
16
            [% SET cv_id = SELF.cv _ '_id' %]
17
            <td>
18
              [% P.customer_vendor.picker("order.${SELF.cv}" _ '_id', SELF.order.$cv_id, type=SELF.cv, style='width: 300px') %]
19
              [% P.button_tag("kivi.Order.show_vc_details_dialog()", LxERP.t8("Details (one letter abbreviation)")) %]
20
            </td>
21
          </tr>
22

  
23
          <tr id='cp_row' [%- IF !SELF.order.${SELF.cv}.contacts.size %]style='display:none'[%- END %]>
24
            <th align="right">[% 'Contact Person' | $T8 %]</th>
25
            <td>[% L.select_tag('order.cp_id',
26
                                SELF.order.${SELF.cv}.contacts,
27
                                default=SELF.order.cp_id,
28
                                title_key='full_name_dep',
29
                                value_key='cp_id',
30
                                with_empty=1,
31
                                style='width: 300px') %]</td>
32
          </tr>
33

  
34
          <tr>
35
            <th align="right">[% 'Shipping Address' | $T8 %]</th>
36
            <td>
37
              <span id='shipto_selection' [%- IF !SELF.order.${SELF.cv}.shipto.size %]style='display:none'[%- END %]>
38
                [% shiptos = [ { shipto_id => "", displayable_id => LxERP.t8("No/individual shipping address") } ] ;
39
                   FOREACH s = SELF.order.${SELF.cv}.shipto ;
40
                     shiptos.push(s) ;
41
                   END ;
42
                   L.select_tag('order.shipto_id',
43
                                 shiptos,
44
                                 default=SELF.order.shipto_id,
45
                                 title_key='displayable_id',
46
                                 value_key='shipto_id',
47
                                 with_empty=0,
48
                                 style='width: 300px') %]
49
              </span>
50
              [% L.button_tag("kivi.Order.edit_custom_shipto()", LxERP.t8("Custom shipto")) %]
51
            </td>
52
          </tr>
53

  
54
          [%- PROCESS order/tabs/_business_info_row.html SELF=SELF %]
55

  
56
          <tr>
57
            <th align="right">[% 'Steuersatz' | $T8 %]</th>
58
            <td>[% L.select_tag('order.taxzone_id', SELF.all_taxzones, default=SELF.order.taxzone_id, title_key='description', style='width: 300px', class='recalc') %]</td>
59
          </tr>
60

  
61
          [% SET currency_id = SELF.order.currency_id || INSTANCE_CONF.get_currency_id  # use default currency for new order %]
62
          <tr id="currency_settings">
63
            <th align="right">[% 'Currency' | $T8 %]</th>
64
            <td>[% L.select_tag('order.currency_id', SELF.all_currencies, default=currency_id, value_key='id', title_key='name') %]</td>
65
          </tr>
66
          <tr id="exchangerate_settings" [%- IF SELF.order.currency_id==INSTANCE_CONF.get_currency_id %]style='display:none'[%- END %]>
67
            <th align="right">[% 'Exchangerate' | $T8 %]</th>
68
            <td> 1 <span id="currency_name">[% SELF.order.currency.name %]</span> =
69
              [% L.input_tag('order.exchangerate_as_null_number', SELF.order.exchangerate_as_null_number, size="15", class="reformat_number_as_null_number numeric") %]
70
              [% INSTANCE_CONF.default_currency %]
71
              [% L.hidden_tag('old_currency_id', currency_id) %]
72
              [% L.hidden_tag('old_exchangerate', SELF.order.exchangerate_as_null_number) %]
73
            </td>
74
          </tr>
75

  
76
[%- IF SELF.all_departments.size %]
77
          <tr>
78
            <th align="right">[% 'Department' | $T8 %]</th>
79
            <td>
80
              [% L.select_tag('order.department_id', SELF.all_departments, default=SELF.order.department_id, title_key='description', with_empty=1, style='width:300px') %]
81
            </td>
82
          </tr>
83
[%- END %]
84

  
85
          <tr>
86
            <th align="right">[% 'Shipping Point' | $T8 %]</th>
87
            <td>[% L.input_tag('order.shippingpoint', SELF.order.shippingpoint, style='width: 300px') %]</td>
88
          </tr>
89

  
90
          <tr>
91
            <th align="right">[% 'Ship via' | $T8 %]</th>
92
            <td>[% L.input_tag('order.shipvia', SELF.order.shipvia, style='width: 300px') %]</td>
93
          </tr>
94

  
95
          <tr>
96
            <th align="right">[% 'Transaction description' | $T8 %]</th>
97
            <td>[% L.input_tag('order.transaction_description', SELF.order.transaction_description, 'data-validate'=INSTANCE_CONF.get_require_transaction_description_ps ? 'required' : '', style='width: 300px') %]</td>
98
          </tr>
99

  
100
          <tr>
101
            <th align="right">[% 'Project Number' | $T8 %]</th>
102
            <td>[% P.project.picker('order.globalproject_id', SELF.order.globalproject_id, style='width: 300px') %]</td>
103
          </tr>
104

  
105
        </table>
106
      </td>
107

  
108
      <td align="right">
109
        <table>
110

  
111
          <tr>
112
            <td colspan="2" align="center">
113
              [%- IF SELF.order.id %]
114
                <label for="order.delivered">[% 'Delivery Order(s) for full qty created' | $T8 %]</label>
115
                [% L.yes_no_tag('order.delivered', SELF.order.delivered) %]
116
                <label for="order.closed">[% 'Closed' | $T8 %]</label>
117
                [% L.yes_no_tag('order.closed', SELF.order.closed) %]
118
              [%- END %]
119
            </td>
120
          </tr>
121

  
122
          <tr>
123
            <th align="right">[% 'Employee' | $T8 %]</th>
124
            <td>[% L.select_tag('order.employee_id',
125
              SELF.all_employees,
126
              default=(SELF.order.employee_id ? SELF.order.employee_id : SELF.current_employee_id),
127
              title_key='safe_name') %]</td>
128
          </tr>
129

  
130
          [% IF SELF.cv == 'customer' %]
131
          <tr>
132
            <th align="right">[% 'Salesman' | $T8 %]</th>
133
            <td>[% L.select_tag('order.salesman_id',
134
              SELF.all_salesmen,
135
              default=(SELF.order.salesman_id ? SELF.order.salesman_id : SELF.current_employee_id),
136
              title_key='safe_name') %]</td>
137
          </tr>
138
          [% END %]
139

  
140
          [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
141
          <tr>
142
            <th width="70%" align="right" nowrap>[% 'Order Number' | $T8 %]</th>
143
            <td>[% L.input_tag('order.ordnumber', SELF.order.ordnumber, size = 11, onchange='kivi.Order.set_number_in_title(this)') %]</td>
144
          </tr>
145
          [%- END -%]
146

  
147
          [%- IF (SELF.type == "sales_order" || SELF.type == "sales_quotation") -%]
148
            [%- SET quo_nr_txt = 'Quotation Number' -%]
149
          [%- ELSE -%]
150
            [%- SET quo_nr_txt = 'RFQ Number' -%]
151
          [%- END -%]
152
          <tr>
153
            <th width="70%" align="right" nowrap>[% quo_nr_txt | $T8 %]</th>
154
            [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
155
              <td>[% L.input_tag('order.quonumber', SELF.order.quonumber, size = 11) %]</td>
156
            [%- ELSE -%]
157
              <td>[% L.input_tag('order.quonumber', SELF.order.quonumber, size = 11, onchange='kivi.Order.set_number_in_title(this)') %]</td>
158
            [%- END -%]
159
          </tr>
160

  
161
          [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
162
          <tr>
163
            <th width="70%" align="right" nowrap>[% 'Customer Order Number' | $T8 %]</th>
164
            <td>[% L.input_tag('order.cusordnumber', SELF.order.cusordnumber, size = 11) %]</td>
165
          </tr>
166
          [%- END -%]
167

  
168
          [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
169
            [%- SET transdate_txt = 'Order Date' -%]
170
          [%- ELSIF SELF.type == "sales_quotation" -%]
171
            [%- SET transdate_txt = 'Quotation Date' -%]
172
          [%- ELSE -%]
173
            [%- SET transdate_txt = 'RFQ Date' -%]
174
          [%- END -%]
175
          <tr>
176
            <th width="70%" align="right" nowrap>[% transdate_txt | $T8 %]</th>
177
            <td>[% L.date_tag('order.transdate_as_date', SELF.order.transdate_as_date) %]</td>
178
          </tr>
179

  
180
          [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
181
            [%- SET reqdate_txt = 'Reqdate' -%]
182
          [%- ELSIF SELF.type == "sales_quotation" -%]
183
            [%- SET reqdate_txt = 'Valid until' -%]
184
          [%- ELSE -%]
185
            [%- SET reqdate_txt = 'Required by' -%]
186
          [%- END -%]
187
          <tr>
188
            <th width="70%" align="right" nowrap>[% reqdate_txt | $T8 %]</th>
189
            <td>[% L.date_tag('order.reqdate_as_date', SELF.order.reqdate_as_date) %]</td>
190
          </tr>
191

  
192
          [%- IF SELF.type == "sales_quotation" -%]
193
          <tr>
194
            <th width="70%" align="right" nowrap>[% 'Order probability' | $T8 %]</th>
195
            <td>[%- L.select_tag('order.order_probability', SELF.order_probabilities, title='title', default=SELF.order.order_probability) %]%</td>
196
          </tr>
197
          <tr>
198
            <th width="70%" align="right" nowrap>[% 'Expected billing date' | $T8 %]</th>
199
            <td>[%- L.date_tag('order.expected_billing_date_as_date', SELF.order.expected_billing_date_sa_date) %]</td>
200
          </tr>
201
          [%- END %]
202

  
203
          <tr>
204
            <th width="70%" align="right" nowrap>[% 'Insert Date' | $T8 %]</th>
205
            <td>[% SELF.order.itime_as_date %]</td>
206
          </tr>
207

  
208
        </table>
209

  
210
      </td>
211
    </tr>
10
<!-- PENDENT: EXPERIMENTELL -->
11

  
12

  
13
<div class="wrapper" id="wrapper-1">
14
[% INCLUDE 'generic/toggle_wrapper.html' %]
15

  
16
<div class="col">
17

  
18
  <table class="tbl-horizontal col">
19
    <caption>[% 'Customer & Order info' | $T8 %]</caption>
20
    <colgroup><col class="wi-mediumsmall"><col class="wi-lightwide"></colgroup>
21
    <tbody>
22
      <tr>
23
        <th>[%- SELF.cv == "customer" ? LxERP.t8('Customer') : LxERP.t8('Vendor') -%]</th>
24
        [% SET cv_id = SELF.cv _ '_id' %]
25
        <td class="wi-lightwide">
26
          [% P.customer_vendor.picker("order.${SELF.cv}" _ '_id', SELF.order.$cv_id, type=SELF.cv, class='wi-lightwide') %]
27
          [% #P.button_tag("kivi.Order.show_vc_details_dialog()", LxERP.t8("Details (one letter abbreviation)"), class='wi-tiny neutral') %]
28
          <a href="javascript:kivi.Order.show_vc_details_dialog();" title="[% 'Show detail informationen' | $T8 %]" class="button-image info"><img src="image/detail.png"></a>
29
        </td>
30
      </tr>
31
      <tr id='cp_row' [% IF !SELF.order.${SELF.cv}.contacts.size %]style='display:none'[% END %]>
32
        <th>[% 'Contact Person' | $T8 %]</th>
33
        <td>[% L.select_tag('order.cp_id',
34
                            SELF.order.${SELF.cv}.contacts,
35
                            default=SELF.order.cp_id,
36
                            title_key='full_name_dep',
37
                            value_key='cp_id',
38
                            with_empty=1,
39
                            class='wi-lightwide') %]</td>
40
      </tr>
41
      <tr>
42
        <th>[% 'Shipping Address' | $T8 %]</th>
43
        <td>
44
          <span id='shipto_selection' [% IF !SELF.order.${SELF.cv}.shipto.size %]style='display:none'[% END %]>
45
            [% shiptos = [ { shipto_id => "", displayable_id => LxERP.t8("No/individual shipping address") } ] ;
46
               FOREACH s = SELF.order.${SELF.cv}.shipto ;
47
                 shiptos.push(s) ;
48
               END ;
49
               L.select_tag('order.shipto_id',
50
                             shiptos,
51
                             default=SELF.order.shipto_id,
52
                             title_key='displayable_id',
53
                             value_key='shipto_id',
54
                             with_empty=0,
55
                             style='width: 300px') %]
56
          </span>
57
          [% L.button_tag("kivi.Order.edit_custom_shipto()", LxERP.t8("Custom shipto")) %]
58
        </td>
59
      </tr>
60
      [% PROCESS order/tabs/_business_info_row.html SELF=SELF %]
61
      <tr>
62
        <th>[% 'Steuersatz' | $T8 %]</th>
63
        <td>[% L.select_tag('order.taxzone_id', SELF.all_taxzones, default=SELF.order.taxzone_id, title_key='description', class='recalc wi-lightwide') %]</td>
64
      </tr>
65
      [% SET currency_id = SELF.order.currency_id || INSTANCE_CONF.get_currency_id  # use default currency for new order %]
66
      <tr id="currency_settings">
67
        <th>[% 'Currency' | $T8 %]</th>
68
        <td>[% L.select_tag('order.currency_id', SELF.all_currencies, default=currency_id, value_key='id', title_key='name') %]</td>
69
      </tr>
70
      <tr id="exchangerate_settings" [%- IF SELF.order.currency_id==INSTANCE_CONF.get_currency_id %]style='display:none'[%- END %]>
71
        <th>[% 'Exchangerate' | $T8 %]</th>
72
        <td> 1 <span id="currency_name">[% SELF.order.currency.name %]</span> =
73
          [% L.input_tag('order.exchangerate_as_null_number', SELF.order.exchangerate_as_null_number, size="15", class="reformat_number_as_null_number numeric") %]
74
          [% INSTANCE_CONF.default_currency %]
75
          [% L.hidden_tag('old_currency_id', currency_id) %]
76
          [% L.hidden_tag('old_exchangerate', SELF.order.exchangerate_as_null_number) %]
77
        </td>
78
      </tr>
79
      [% IF SELF.all_departments.size %]
80
        <tr>
81
          <th>[% 'Department' | $T8 %]</th>
82
          <td>
83
            [% L.select_tag('order.department_id', SELF.all_departments, default=SELF.order.department_id, title_key='description', with_empty=1, class='wi-lightwide') %]
84
          </td>
85
        </tr>
86
      [% END %]
87
      <tr>
88
        <th>[% 'Shipping Point' | $T8 %]</th>
89
        <td>[% L.input_tag('order.shippingpoint', SELF.order.shippingpoint, class='wi-lightwide') %]</td>
90
      </tr>
91
      <tr>
92
        <th>[% 'Ship via' | $T8 %]</th>
93
        <td>[% L.input_tag('order.shipvia', SELF.order.shipvia, class='wi-lightwide') %]</td>
94
      </tr>
95
      <tr>
96
        <th>[% 'Transaction description' | $T8 %]</th>
97
        <td>[% L.input_tag('order.transaction_description', SELF.order.transaction_description, 'data-validate'=INSTANCE_CONF.get_require_transaction_description_ps ? 'required' : '', class='wi-lightwide') %]</td>
98
      </tr>
99
      <tr>
100
        <th>[% 'Project Number' | $T8 %]</th>
101
        <td>[% P.project.picker('order.globalproject_id', SELF.order.globalproject_id, class='wi-lightwide') %]</td>
102
      </tr>
103
    </tbody>
212 104
  </table>
213 105

  
214
  [%- PROCESS order/tabs/_item_input.html SELF=SELF %]
106
  <table class="tbl-horizontal col">
107
    <caption>[% 'Terms' | $T8 %]</caption>
108
    <colgroup><col class="wi-mediumsmall"><col class="wi-lightwide"></colgroup>
109
    <tbody>
110
      <tr>
111
        <td colspan="2">
112
          <span class="label above">[% 'Payment Terms' | $T8 %]</span>
113
          [% L.select_tag('order.payment_id',
114
                            SELF.all_payment_terms,
115
                            default = SELF.order.payment_id,
116
                            with_empty = 1,
117
                            title_key = 'description',
118
                            class = 'wi-mediumsmall-lightwide') %]
119
        </td>
120
      </tr>
121
      <tr>
122
        <td colspan="2">
123
          <span class="label above">[% 'Delivery Terms' | $T8 %]</span>
124
          [% L.select_tag('order.delivery_term_id',
125
                            SELF.all_delivery_terms,
126
                            default = SELF.order.delivery_term_id,
127
                            with_empty = 1,
128
                            title_key = 'description',
129
                            class = 'wi-mediumsmall-lightwide') %]
130
        </td>
131
      </tr>
132
      <tr id="taxincluded_row_id">
133
        <th>[% IF !SELF.taxes.size %]<label for="order.taxincluded">[% 'Tax Included' | $T8 %]</label> [% END %]</th>
134
        <td>[% IF !SELF.taxes.size %][% L.yes_no_tag('order.taxincluded', SELF.order.taxincluded, class='recalc') %][% END %]</td>
135
      </tr>
136
      [% IF SELF.type == "sales_order" %]
137
        <tr>
138
          <th>[% 'Periodic Invoices' | $T8 %]</th>
139
          <td>
140
            <span id='periodic_invoices_status' class="data wi-normal wi-lightwide">[% SELF.periodic_invoices_status %]</span>
141
            <span class="button-inline">
142
              [% L.button_tag('kivi.Order.show_periodic_invoices_config_dialog()', LxERP.t8('Configure'), class='neutral inline below') %]
143
              <a href="doc/html/ch03.html#features.periodic-invoices.variables" target="_blank" class="button wi-tiny neutral" title="[% 'Documentation about periodic invoices in a new window' | $T8 %]">?</a>
144
            </span>
145
          </td>
146
        </tr>
147
      [% END %]
148
    </tbody>
149
  </table>
215 150

  
216
  [% L.button_tag('kivi.Order.show_multi_items_dialog()', LxERP.t8('Add multiple items')) %]
151
</div><!-- /.col -->
217 152

  
218
  <table width="100%">
153
<table class="tbl-horizontal col">
154
  <caption>[% 'Notes' | $T8 %]</caption>
155
  <colgroup><col class="wi-wide"></colgroup>
156
  <tbody>
219 157
    <tr>
220
      <td>
221
        [%- IF SELF.positions_scrollbar_height -%]
222
          [%- SET scroll_style = 'style="overflow-y: auto; height:' _ SELF.positions_scrollbar_height _ 'vh;"' -%]
223
        [%- ELSE -%]
224
          [%- SET scroll_style = '' -%]
225
        [%- END -%]
226
        <div id="row_table_scroll_id" [%- scroll_style -%]>
227
          <table id="row_table_id" width="100%">
228
            <thead>
229
              <tr class="listheading">
230
                <th class="listheading" style='text-align:center' nowrap width="1">
231
                  [%- IF MYCONFIG.show_form_details %]
232
                    [%- L.img_tag(src="image/collapse.svg", alt=LxERP.t8('Hide all details'), title=LxERP.t8('Hide all details'), id='expand_all', "data-expanded"="1") %]
233
                  [%- ELSE %]
234
                    [%- L.img_tag(src="image/expand.svg", alt=LxERP.t8('Show all details'), title=LxERP.t8('Show all details'), id='expand_all') %]
235
                  [%- END %]
236
                </th>
237
                <th class="listheading" nowrap width="3" >[%- 'position'     | $T8 %] </th>
238
                <th class="listheading" style='text-align:center' nowrap width="1"><img src="image/updown.png" alt="[%- LxERP.t8('reorder item') %]"></th>
239
                <th class="listheading" style='text-align:center' nowrap width="1"><img src="image/close.png" alt="[%- LxERP.t8('delete item') %]"></th>
240
                [%- IF SELF.show_update_button -%]
241
                <th class="listheading" style='text-align:center' nowrap width="1">
242
                  [%- L.img_tag(src="image/rotate_cw.svg",
243
                                alt=LxERP.t8('Update from master data'),
244
                                title= LxERP.t8('Update from master data'),
245
                                onclick="if (!confirm('" _ LxERP.t8("Are you sure to update all positions from master data?") _ "')) return false; kivi.Order.update_all_rows_from_master_data();",
246
                                id='update_from_master') %]
247
                </th>
248
                [%- END %]
249
                <th id="partnumber_header_id"   class="listheading" nowrap width="15"><a href='#' onClick='javascript:kivi.Order.reorder_items("partnumber")'> [%- 'Partnumber'  | $T8 %]</a></th>
250
                [%- IF SELF.search_cvpartnumber -%]
251
                <th id="cvpartnumber_header_id" class="listheading" nowrap width="15"><a href='#' onClick='javascript:kivi.Order.reorder_items("cvpartnumber")' > [%- SELF.cv == "customer" ? LxERP.t8('Customer Part Number') : LxERP.t8('Model') %]</a></th>
252
                [%- END -%]
253
                <th id="partclass_header_id"    class="listheading" nowrap width="2">[%- 'Type'  | $T8 %]</th>
254
                <th id="description_header_id"  class="listheading" nowrap           ><a href='#' onClick='javascript:kivi.Order.reorder_items("description")'>[%- 'Description' | $T8 %]</a></th>
255
                [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
256
                <th id="shipped_qty_header_id"  class="listheading" nowrap width="5" ><a href='#' onClick='javascript:kivi.Order.reorder_items("shipped_qty")'>[%- 'Delivered'   | $T8 %]</a></th>
257
                [%- END -%]
258
                <th id="qty_header_id"          class="listheading" nowrap width="5" ><a href='#' onClick='javascript:kivi.Order.reorder_items("qty")'>        [%- 'Qty'         | $T8 %]</a></th>
259
                <th class="listheading" nowrap width="5" >[%- 'Price Factor' | $T8 %] </th>
260
                <th class="listheading" nowrap width="5" >[%- 'Unit'         | $T8 %] </th>
261
                <th class="listheading" nowrap width="5" >[%- 'Price Source' | $T8 %] </th>
262
                <th id="sellprice_header_id"   class="listheading" nowrap width="15" ><a href='#' onClick='javascript:kivi.Order.reorder_items("sellprice")'> [%- 'Price'       | $T8 %]</a></th>
263
                <th id="discount_header_id"    class="listheading" nowrap width="15" ><a href='#' onClick='javascript:kivi.Order.reorder_items("discount")'>  [%- 'Discount'    | $T8 %]</a></th>
264
                <th class="listheading" nowrap width="10">[%- 'Extended'     | $T8 %] </th>
265
              </tr>
266
            </thead>
267

  
268
            [%- FOREACH item = SELF.order.items_sorted %]
269
              [%- PROCESS order/tabs/_row.html ITEM=item ID=(item.id||item.new_fake_id)  -%]
270
            [%- END %]
271

  
272
          </table>
273
        </div>
274

  
275
      </td>
158
      <td class="wi-wide">[% L.textarea_tag('order.notes', SELF.order.notes, wrap="soft",rows=7, class="texteditor wi-wide") %]</td>
276 159
    </tr>
277

  
278 160
    <tr>
161
      <td><span class="label above">[% 'Internal Notes' | $T8 %]</span>[% L.textarea_tag('order.intnotes', SELF.order.intnotes, wrap="soft", style="height: 150px", class="wi-wide") %]</td>
279 162
    </tr>
280

  
163
  </tbody>
164
</table>
165

  
166
<table class="tbl-horizontal col">
167
  <caption>[% 'Handling, Dates & Numbers' | $T8 %]</caption>
168
  <colgroup> <col class="wi-mediumsmall"><col class="wi-lightwide"> </colgroup>
169
  <tbody>
170
    [% IF SELF.order.id %]
281 171
    <tr>
282
      <td colspan="100%" width="100%">
283
        <table width="100%">
284
          <tr>
285
            <td>
286
              <table>
287
                <tr>
288
                  <th align="left">[% 'Notes' | $T8 %]</th>
289
                  <th align="left">[% 'Internal Notes' | $T8 %]</th>
290
                </tr>
291
                <tr valign="top">
292
                  <td>
293
                    [% L.textarea_tag('order.notes', SELF.order.notes, wrap="soft", style="width: 350px; height: 150px", class="texteditor") %]
294
                  </td>
295
                  <td>
296
                    [% L.textarea_tag('order.intnotes', SELF.order.intnotes, wrap="soft", style="width: 350px; height: 150px") %]
297
                  </td>
298
                </tr>
299
              </table>
300
            </td>
301

  
302
            <td>
303
              <table>
304
                <tr>
305
                  <th align="right">[% 'Payment Terms' | $T8 %]</th>
306
                  <td>[% L.select_tag('order.payment_id',
307
                                      SELF.all_payment_terms,
308
                                      default = SELF.order.payment_id,
309
                                      with_empty = 1,
310
                                      title_key = 'description',
311
                                      style = 'width: 250px') %]</td>
312
                </tr>
313
                <tr>
314
                  <th align="right">[% 'Delivery Terms' | $T8 %]</th>
315
                  <td>[% L.select_tag('order.delivery_term_id',
316
                                      SELF.all_delivery_terms,
317
                                      default = SELF.order.delivery_term_id,
318
                                      with_empty = 1,
319
                                      title_key = 'description',
320
                                      style = 'width: 250px') %]</td>
321
                </tr>
322
                [%- IF SELF.type == "sales_order" %]
323
                <tr>
324
                  <th align="right">[%- 'Periodic Invoices' | $T8 %]</th>
325
                  <td>[% L.button_tag('kivi.Order.show_periodic_invoices_config_dialog()', LxERP.t8('Configure')) %]
326
                    (<span id='periodic_invoices_status'>[%- SELF.periodic_invoices_status -%]</span>)
327
                    <a href="doc/html/ch03.html#features.periodic-invoices.variables" target="_blank">?</a>
328
                  </td>
329
                </tr>
330
                [%- END %]
331
              </table>
332
            </td>
172
    <th><label for="order.delivered">[% 'Delivery Order(s) for full qty created' | $T8 %]</label></th>
173
    <td>[% L.yes_no_tag('order.delivered', SELF.order.delivered, class='wi-small') %]</td>
174
    </tr>
175
    <tr>
176
      <th><label for="order.closed">[% 'Closed' | $T8 %]</label></th>
177
      <td>[% L.yes_no_tag('order.closed', SELF.order.closed, class='wi-small') %]</td>
178
    </tr>
179
    [% END %]
180
    <tr>
181
      <th>[% 'Employee' | $T8 %]</th>
182
      <td>[% L.select_tag('order.employee_id',
183
        SELF.all_employees,
184
        default=(SELF.order.employee_id ? SELF.order.employee_id : SELF.current_employee_id),
185
        title_key='safe_name') %]</td>
186
    </tr>
187
    [% IF SELF.cv == 'customer' %]
188
      <tr>
189
        <th>[% 'Salesman' | $T8 %]</th>
190
        <td>[% L.select_tag('order.salesman_id',
191
          SELF.all_salesmen,
192
          default=(SELF.order.salesman_id ? SELF.order.salesman_id : SELF.current_employee_id),
193
          title_key='safe_name') %]</td>
194
      </tr>
195
    [% END %]
196
    [% IF (SELF.type == "sales_order" || SELF.type == "purchase_order") %]
197
      <tr>
198
        <th>[% 'Order Number' | $T8 %]</th>
199
        <td>[% L.input_tag('order.ordnumber', SELF.order.ordnumber, size = 11, onchange='kivi.Order.set_number_in_title(this)', class='wi-small numeric') %]</td>
200
      </tr>
201
    [% END %]
202
    [% IF (SELF.type == "sales_order" || SELF.type == "sales_quotation") %]
203
      [% SET quo_nr_txt = 'Quotation Number' %]
204
    [% ELSE %]
205
      [% SET quo_nr_txt = 'RFQ Number' %]
206
    [% END %]
207
    <tr>
208
      <th>[% quo_nr_txt | $T8 %]</th>
209
      [% IF (SELF.type == "sales_order" || SELF.type == "purchase_order") %]
210
        <td>[% L.input_tag('order.quonumber', SELF.order.quonumber, size=5, class='wi-small') %]</td>
211
      [% ELSE %]
212
        <td>[% L.input_tag('order.quonumber', SELF.order.quonumber, class='wi-small numeric', size=5, class='wi-small', onchange='kivi.Order.set_number_in_title(this)') %]</td>
213
      [% END %]
214
    </tr>
215
    [% IF (SELF.type == "sales_order" || SELF.type == "purchase_order") %]
216
      <tr>
217
        <th>[% 'Customer Order Number' | $T8 %]</th>
218
        <td>[% L.input_tag('order.cusordnumber', SELF.order.cusordnumber, size=5, class='wi-small numeric') %]</td>
219
      </tr>
220
    [% END %]
221
    [% IF (SELF.type == "sales_order" || SELF.type == "purchase_order") %]
222
      [% SET transdate_txt = 'Order Date' %]
223
    [% ELSIF SELF.type == "sales_quotation" %]
224
      [% SET transdate_txt = 'Quotation Date' %]
225
    [% ELSE %]
226
      [% SET transdate_txt = 'RFQ Date' %]
227
    [% END %]
228
    <tr>
229
      <th>[% transdate_txt | $T8 %]</th>
230
      <td>[% L.date_tag('order.transdate_as_date', SELF.order.transdate_as_date, class='wi-date') %]</td>
231
    </tr>
232
    [% IF (SELF.type == "sales_order" || SELF.type == "purchase_order") %]
233
      [% SET reqdate_txt = 'Reqdate' %]
234
    [% ELSIF SELF.type == "sales_quotation" %]
235
      [% SET reqdate_txt = 'Valid until' %]
236
    [% ELSE %]
237
      [% SET reqdate_txt = 'Required by' %]
238
    [% END %]
239
    <tr>
240
      <th>[% reqdate_txt | $T8 %]</th>
241
      <td>[% L.date_tag('order.reqdate_as_date', SELF.order.reqdate_as_date, class='wi-date') %]</td>
242
    </tr>
243
    [% IF SELF.type == "sales_quotation" %]
244
      <tr>
245
        <th>[% 'Order probability' | $T8 %]</th>
246
        <td>[% L.select_tag('order.order_probability', SELF.order_probabilities, title='title', default=SELF.order.order_probability) %]%</td>
247
      </tr>
248
      <tr>
249
        <th>[% 'Expected billing date' | $T8 %]</th>
250
        <td>[% L.date_tag('order.expected_billing_date_as_date', SELF.order.expected_billing_date_as_date) %]</td>
251
      </tr>
252
    [% END %]
253
    <tr>
254
      <th>[% 'Insert Date' | $T8 %]</th>
255
      <td><span class="data wi-small">[% SELF.order.itime_as_date %]</span></td>
256
    </tr>
257
  </tbody>
258
</table>
333 259

  
334
            [%- IF (SELF.type == "sales_order" || SELF.type == "sales_quotation") -%]
335
            [%- SET marge_class = (SELF.order.marge_total < 0) ? 'plus0' : '' -%]
336
            <td>
337
              <table>
338
                <tr>
339
                  <th  align="left">[% 'Ertrag' | $T8 %]</th>
340
                  <td align="right">
341
                    [%- L.div_tag(SELF.order.marge_total_as_number, id='marge_total_id', class=marge_class) %]
342
                  </td>
343
                </tr>
344
                <tr>
345
                  <th  align="left">[% 'Ertrag prozentual' | $T8 %]</th>
346
                  <td align="right">
347
                    [%- L.div_tag(LxERP.format_amount(SELF.order.marge_percent, 2), id='marge_percent_id', class=marge_class) %]
348
                  </td>
349
                  <td>[%- L.div_tag('%', id='marge_percent_sign_id', class=marge_class) %]</td>
350
                </tr>
351
              </table>
352
            </td>
353
            [%- END %]
260
</div><!-- /.wrapper -->
354 261

  
355
            <td align="right">
356
              <table>
357
                <tr id="taxincluded_row_id" [%- IF !SELF.taxes.size %]style="display:none"[%- END %]>
358
                  <td align=right colspan="2">
359
                    <label for="order.taxincluded"><b>[% 'Tax Included' | $T8 %]</b></label>
360
                    [% L.yes_no_tag('order.taxincluded', SELF.order.taxincluded, class='recalc') %]
361
                  </td>
362
                </tr>
262
[% PROCESS order/tabs/_item_input.html SELF=SELF %]
363 263

  
364
                <tr id="subtotal_row_id" [%- IF SELF.order.taxincluded %]style="display:none"[%- END %]>
365
                  <th align="right">[%- 'Subtotal' | $T8 %]</th>
366
                  <td align="right">
367
                    [%- L.div_tag(SELF.order.netamount_as_number, id='netamount_id') %]
368
                  </td>
369
                </tr>
370
                [%- FOREACH tax = SELF.taxes %]
371
                  [%- PROCESS order/tabs/_tax_row.html TAX=tax TAXINCLUDED=SELF.order.taxincluded %]
372
                [%- END %]
373
                <tr id="amount_row_id">
374
                  <th align="right">[%- 'Total' | $T8 %]</th>
375
                  <td align="right">
376
                    [%- L.div_tag(SELF.order.amount_as_number, id='amount_id') %]
377
                  </td>
378
                </tr>
379
              </table>
380
            </td>
264
[%- IF SELF.positions_scrollbar_height -%]
265
  [%- SET scroll_style = 'style="overflow-y: auto; height:' _ SELF.positions_scrollbar_height _ 'vh;"' -%]
266
[%- ELSE -%]
267
  [%- SET scroll_style = '' -%]
268
[%- END -%]
269
<div id="row_table_scroll_id" class="wrapper" [%- scroll_style -%]>
381 270

  
382
          </tr>
383
        </table>
384
      </td>
271
<table id="row_table_id" class="tbl-list">
272
  <caption>[% 'Articles' | $T8 %]</caption>
273
  <thead>
274
    <tr>
275
      <th class="center">
276
        [% IF MYCONFIG.show_form_details %]
277
          [% L.img_tag(src="image/collapse.svg", alt=LxERP.t8('Hide all details'), title=LxERP.t8('Hide all details'), id='expand_all', "data-expanded"="1") %]
278
        [% ELSE %]
279
          [% L.img_tag(src="image/expand.svg", alt=LxERP.t8('Show all details'), title=LxERP.t8('Show all details'), id='expand_all') %]
280
        [% END %]
281
      </th>
282
      <th>[% 'position'     | $T8 %] </th>
283
      <th style='text-align:center'><img src="image/updown.png" alt="[% LxERP.t8('reorder item') %]"></th>
284
      <th style='text-align:center'><img src="image/close.png" alt="[% LxERP.t8('delete item') %]"></th>
285
      [%- IF SELF.show_update_button -%]
286
      <th class="listheading" style='text-align:center' nowrap width="1">
287
        [%- L.img_tag(src="image/rotate_cw.svg",
288
                      alt=LxERP.t8('Update from master data'),
289
                      title= LxERP.t8('Update from master data'),
290
                      onclick="if (!confirm('" _ LxERP.t8("Are you sure to update all positions from master data?") _ "')) return false; kivi.Order.update_all_rows_from_master_data();",
291
                      id='update_from_master') %]
292
      </th>
293
      [%- END %]
294
      <th id="partnumber_header_id"><a href='#' onClick='javascript:kivi.Order.reorder_items("partnumber")'> [% 'Partnumber'  | $T8 %]</a></th>
295
      [%- IF SELF.search_cvpartnumber -%]
296
      <th id="cvpartnumber_header_id"><a href='#' onClick='javascript:kivi.Order.reorder_items("cvpartnumber")'>[%- SELF.cv == "customer" ? LxERP.t8('Customer Part Number') : LxERP.t8('Model') %]</a></th>
297
      [%- END -%]
298
      <th id="partclass_header_id">[% 'Type'  | $T8 %]</th>
299
      <th id="description_header_id"><a href='#' onClick='javascript:kivi.Order.reorder_items("description")'>[% 'Description' | $T8 %]</a></th>
300
      [%- IF (SELF.type == "sales_order" || SELF.type == "purchase_order") -%]
301
      <th id="shipped_qty_header_id"><a href='#' onClick='javascript:kivi.Order.reorder_items("shipped_qty")'>[% 'Delivered' | $T8 %]</a></th>
302
      [%- END -%]
303
      <th id="qty_header_id"><a href='#' onClick='javascript:kivi.Order.reorder_items("qty")'>        [% 'Qty'         | $T8 %]</a></th>
304
      <th >[% 'Price Factor' | $T8 %]</th>
305
      <th >[% 'Unit'         | $T8 %]</th>
306
      <th >[% 'Price Source' | $T8 %]</th>
307
      <th id="sellprice_header_id"><a href='#' onClick='javascript:kivi.Order.reorder_items("sellprice")'> [% 'Price'       | $T8 %]</a></th>
308
      <th id="discount_header_id" ><a href='#' onClick='javascript:kivi.Order.reorder_items("discount")'>  [% 'Discount'    | $T8 %]</a></th>
309
      <th>[% 'Extended'     | $T8 %]</th>
385 310
    </tr>
311
  </thead>
312
  [% FOREACH item = SELF.order.items_sorted %]
313
    [% PROCESS order/tabs/_row.html ITEM=item ID=(item.id||item.new_fake_id) TYPE=SELF.type ALL_PRICE_FACTORS=SELF.all_price_factors SEARCH_CVPARTNUMBER=SELF.search_cvpartnumber %]
314
  [% END %]
315
  <tfoot>
316
    <tr id="subtotal_row_id">
317
      <td colspan="11"></td>
318
      <th colspan="3">[% IF SELF.order.taxincluded %][% 'Subtotal' | $T8 %][% END %]</th>
319
      <td>[% IF SELF.order.taxincluded %][% L.div_tag(SELF.order.netamount_as_number, id='netamount_id') %][% END %]</td>
320
    </tr>
321
    [% FOREACH tax = SELF.taxes %]
322
      [% PROCESS order/tabs/_tax_row.html TAX=tax TAXINCLUDED=SELF.order.taxincluded %]
323
    [% END %]
324
    <tr id="amount_row_id">
325
      [%- IF (SELF.type == "sales_order" || SELF.type == "sales_quotation") -%]
326
      [%- SET marge_class = (SELF.order.marge_total < 0) ? 'plus0' : '' -%]
327
      <th colspan="2">[% 'Ertrag' | $T8 %]</th>
328
      <td colspan="2" class="numeric">[%- L.div_tag(SELF.order.marge_total_as_number, id='marge_total_id', class=marge_class) %]</td>
329
      <th colspan="2">[% 'Ertrag prozentual' | $T8 %]</th>
330
      <td class="numeric">[%- LxERP.format_amount(SELF.order.marge_percent, 2) %] %</td>
331
      [%- ELSE -%]
332
      <td colspan="7">
333
      [%- END -%]
334
      <td colspan="4">
335
      <th colspan="3">[% 'Total' | $T8 %]</th>
336
      <td class="numeric">[% L.div_tag(SELF.order.amount_as_number, id='amount_id') %]</td>
337
    </tr>
338
  </tfoot>
339
</table>
386 340

  
387
  </table>
341
</div><!-- /#row_table_scroll_id /.wrapper -->
388 342

  
389
</div>
343
</div><!-- /#ui-tabs-basic-data -->
390 344

  
391 345
[% L.sortable_element('#row_table_id') %]

Auch abrufbar als: Unified diff