5 [%- USE LxERP %][%- USE P -%]
7 <h1>[% title | html %]</h1>
9 [%- INCLUDE 'common/flash.html' %]
11 <form method="post" action="[% script | html %]" id="form">
13 <input type="hidden" name="terms" value="[% terms | html %]">
15 <input type="hidden" name="creditlimit" value="[% creditlimit | html %]">
16 <input type="hidden" name="creditremaining" value="[% creditremaining | html %]">
18 <input type="hidden" name="forex" value="[% forex | html %]">
19 <input type="hidden" name="lastmtime" value="[% HTML.escape(lastmtime) %]">
21 <input id="id" type="hidden" name="id" value="[% id | html %]">
22 <input type="hidden" name="sort" value="[% sort | html %]">
23 <input type="hidden" name="closedto" value="[% closedto | html %]">
24 <input type="hidden" name="locked" value="[% locked | html %]">
25 <input type="hidden" name="title" value="[% title_ | html %]">
27 <input type="hidden" name="follow_up_trans_id_1" value="[% id | html %]">
28 <input type="hidden" name="follow_up_trans_type_1" value="ap_transaction">
29 <input type="hidden" name="follow_up_trans_info_1" value="[% follow_up_trans_info | html %]">
30 <input type="hidden" name="follow_up_rowcount" value="1">
32 <input type="hidden" name="defaultcurrency" value="[% defaultcurrency | html %]">
33 <input type="hidden" name="fxgain_accno" value="[% fxgain_accno | html %]">
34 <input type="hidden" name="fxloss_accno" value="[% fxloss_accno | html %]">
36 <input type="hidden" name="oldinvtotal" value="[% oldinvtotal | html %]">
37 <input type="hidden" name="oldtotalpaid" value="[% oldtotalpaid | html %]">
39 <input type="hidden" name="taxaccounts" value="[% taxaccounts | html %]">
41 <input type="hidden" name="rowcount" value="[% rowcount | html %]">
43 <input type="hidden" name="paidaccounts" value="[% paidaccounts | html %]">
45 [%- P.hidden_tag('convert_from_oe_id', convert_from_oe_id) -%]
47 [% FOREACH i IN [1..paidaccounts] %]
48 [% temp = "acc_trans_id_"_ i %]
49 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
51 [% temp = "gldate_"_ i %]
52 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
55 [% IF ( saved_message ) %]
56 <p>[% saved_message | html %]</p>
59 <div id="ap_tabs" class="tabwidget">
61 <li><a href="#ui-tabs-basic-data">[% 'Basic Data' | $T8 %]</a></li>
62 [%- IF INSTANCE_CONF.get_webdav %]
63 <li><a href="#ui-tabs-webdav">[% 'WebDAV' | $T8 %]</a></li>
65 [%- IF id AND INSTANCE_CONF.get_doc_storage %]
66 <li><a href="#ui-tabs-docs">[% 'Documents' | $T8 %]</a></li>
67 <li><a href="controller.pl?action=File/list&file_type=attachment&object_type=purchase_invoice&object_id=[% HTML.url(id) %]">[% 'Attachments' | $T8 %]</a></li>
70 [%- IF AUTH.assert('record_links', 1) %]
71 <li><a href="controller.pl?action=RecordLinks/ajax_list&object_model=PurchaseInvoice&object_id=[% HTML.url(id) %]">[% 'Linked Records' | $T8 %]</a></li>
73 <li><a href="[% 'controller.pl?action=AccTrans/list_transactions&trans_id=' _ HTML.url(id) | html %]">[% LxERP.t8('Transactions') %]</a></li>
77 [%- IF id AND INSTANCE_CONF.get_doc_storage %]
78 <div id="ui-tabs-docs"></div>
81 <div id="ui-tabs-basic-data">
90 <th align="right" nowrap>[% 'Vendor' | $T8 %]</th>
92 [% P.customer_vendor.picker("vendor_id", vendor_id, type="vendor", style="width: 330px", onchange="\$('#update_button').click()") %]
93 [% L.button_tag("show_vc_details('vendor')", LxERP.t8('Details (one letter abbreviation)')) %]
94 [% L.hidden_tag("previous_vendor_id", vendor_id) %]
99 <th align="right" valign="top">[% LxERP.t8("Credit Limit") %]</th>
101 [% creditlimit | html %];
102 [% LxERP.t8("Remaining") %]
103 <span class="plus[% creditremaining_plus %]">[% creditremaining | html %]</span>
107 [%- IF invoice_obj.sepa_exports.as_list.size %]
109 <th align="right">[% LxERP.t8("SEPA exports") %]</th>
111 [% FOREACH export = invoice_obj.sepa_exports.as_list %]
112 <a href="sepa.pl?action=bank_transfer_edit&vc=vendor&id=[% HTML.url(export.id) %]">[% HTML.escape(export.id) %]</a>
113 [% UNLESS loop.last %], [% END %]
120 <th align="right" nowrap>[% 'Currency' | $T8 %]</th>
121 <td>[% L.select_tag("currency", currencies, default=currency, value_key="name", title_key="name") %]</td>
123 [% IF ( defaultcurrency && (currency != defaultcurrency) ) %]
124 <th align=right>[% 'Exchangerate' | $T8 %]</th>
126 <td><input type="hidden" name="exchangerate" value="[% exchangerate | html %]">[% exchangerate | html %]</td>
128 <td><input type="text" name="exchangerate" size="10" value="[% exchangerate | html %]"></td>
134 [% IF ALL_DEPARTMENTS %]
136 <th align="right" nowrap>[% 'Department' | $T8 %]</th>
137 <td colspan=3>[% L.select_tag('department_id', ALL_DEPARTMENTS, default = department_id, title_key = 'description', with_empty = 1, style = "width:334px") %]</td>
142 <th align="right">[% 'Transaction description' | $T8 %]</th>
143 <td colspan="3">[% L.input_tag("transaction_description", transaction_description, style="width:330px", "data-validate"=INSTANCE_CONF.get_require_transaction_description_ps ? 'required' : '') %]</td>
146 <td align="right"><input name="taxincluded" class="checkbox" type="checkbox" value="1" [% IF ( taxincluded ) %]checked[% END %]></td>
147 <th align=left nowrap>[% 'Tax Included' | $T8 %]</th>
150 <td align="right"><input name="direct_debit" class="checkbox" type="checkbox" value="1" [% IF direct_debit %]checked[% END %]></td>
151 <th align="left" nowrap>[% 'direct debit' | $T8 %]</th>
159 <th align="right" nowrap>[% 'Invoice Number' | $T8 %]</th>
160 <td>[% L.input_tag("invnumber", invnumber, size="11", readonly=readonly) %]</td>
163 <th align="right" nowrap>[% 'Order Number' | $T8 %]</th>
164 <td>[% L.input_tag("ordnumber", ordnumber, size="11", readonly=readonly) %]</td>
167 <th align="right" nowrap>[% 'Invoice Date' | $T8 %]</th>
168 <td>[% L.date_tag('transdate', transdate, onchange='kivi.SalesPurchase.set_duedate_on_reference_date_change("transdate")') %]</td>
171 <th align="right" nowrap>[% 'Due Date' | $T8 %]</th>
172 <td>[% L.date_tag('duedate', duedate) %]</td>
175 <th align="right" nowrap>[% LxERP.t8('Tax point') %]</th>
176 <td>[% L.date_tag('tax_point', tax_point, id='tax_point') %]</td>
179 <th align=right nowrap>[% 'Delivery Date' | $T8 %]</th>
180 <td>[% L.date_tag('deliverydate', deliverydate) %]</td>
183 <th align="right" nowrap>[% 'Project Number' | $T8 %]</th>
185 [% P.project.picker('globalproject_id', globalproject_id, onchange="document.getElementById('update_button').click();") %]
198 <tr class=listheading>
199 <th class=listheading style="width:15%">[% 'Account' | $T8 %]</th>
200 <th class=listheading style="width:10%">[% 'Amount' | $T8 %]</th>
201 <th class=listheading style="width:10%">[% 'Tax' | $T8 %]</th>
202 <th class=listheading style="width:10%">[% 'Taxkey' | $T8 %]</th>
203 <th class=listheading style="width:10%">[% 'Project' | $T8 %]</th>
206 [% FOREACH i IN [1..rowcount] %]
209 [% SET selected_chart_id = "AP_amount_chart_id_"_ i %]
210 [% P.chart.picker("AP_amount_chart_id_" _ i, $selected_chart_id, style="width: 400px", type="AP_amount", class=(initial_focus == 'row_' _ i ? "initial_focus" : "")) %]
211 [% L.hidden_tag("previous_AP_amount_chart_id_" _ i, $selected_chart_id) %]
212 <input type="hidden" name="tax_[% i %]" value="[% temp = "tax"_ i %][% $temp | html %]">
215 <input name="amount_[% i %]" size="10" value="[% temp = "amount_"_ i %][% $temp | html %]">
218 [% IF "tax_reverse_"_ i %]
219 [% temp_r = "tax_reverse_"_ i %][% $temp_r | html %]
221 [% temp_c = "tax_charge_"_ i %][% $temp_c | html %]
223 [% temp = "tax_"_ i %][% $temp | html %]
227 [% temp = 'selected_taxchart_'_ i %]
228 [% taxcharts = 'taxcharts_' _ i %]
229 [% L.select_tag('taxchart_'_ i, $taxcharts, value_title_sub = \taxchart_value_title_sub, default = $temp, style="width: 250px") %]
232 [% temp = "project_id_"_ i %]
233 [% P.project.picker(temp, loop.last ? globalproject_id : $temp) %]
245 [% P.chart.picker('AP_chart_id', AP_chart_id, style="width: 400px", type="AP") %]
247 <th align="left">[% invtotal | html %]</th>
248 <td colspan="4"></td>
257 <th align="left">[% 'Notes' | $T8 %]</th>
258 <th align="left">[% 'Internal Notes' | $T8 %]</th>
259 <th align="left">[% 'Payment Terms' | $T8 %]</th>
263 [% L.textarea_tag("notes", notes, wrap="soft", rows=textarea_rows, cols=50, readonly=readonly) %]
266 [% L.textarea_tag("intnotes", intnotes, wrap="soft", rows=textarea_rows, cols=50, readonly=readonly) %]
269 [% L.select_tag('payment_id', payment_terms, default=payment_id, title_key='description', with_empty=1, style="width: 250px", onchange="kivi.SalesPurchase.set_duedate_on_reference_date_change('transdate')") %]
277 [% UNLESS no_payment_bookings %]
279 <tr class="listheading">
280 <th class="listheading" colspan="7">[% 'Payments' | $T8 %]</th>
284 <th>[% 'Date' | $T8 %]</th>
285 <th>[% 'Source' | $T8 %]</th>
286 <th>[% 'Memo' | $T8 %]</th>
287 <th>[% 'Amount' | $T8 %]</th>
289 [% IF ( !defaultcurrency || (currency != defaultcurrency) ) %]
290 <th>[% 'Exch' | $T8 %]</th>
292 <th>[% 'Account' | $T8 %]</th>
293 <th>[% 'Project Number' | $T8 %]</th>
296 [% FOREACH i IN [1..paidaccounts] %]
297 [% temp = "paidaccount_changeable_"_ i %]
298 [% changeable = $temp %]
301 [% temp = "datepaid_"_ i %]
303 [% IF( changeable ) %]
304 [% L.date_tag(temp, $temp ? $temp : today) %]
307 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
311 [% temp = "source_"_ i %]
313 [% IF( changeable ) %]
314 <input name="[% temp %]" size="11" value="[% $temp | html %]">
317 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
321 [% temp = "memo_"_ i %]
323 [% IF( changeable ) %]
324 <input name="[% temp %]" size="11" value="[% $temp | html %]">
327 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
331 [% temp = "paid_"_ i %]
333 [% IF( changeable ) %]
334 <input name="[% temp %]" size="11" data-validate="number" class="numeric" value="[% $temp | html %]" id="[%- 'payment_' _ temp -%]">
337 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
342 [% IF changeable && loop.last && paid_missing > 0 %]
343 <input type="button" id="ap_set_to_paid_missing" value="[% "Set to paid missing" | $T8 %]">
347 [% IF ( !defaultcurrency || (currency != defaultcurrency) ) %]
349 [% temp = "exchangerate_"_ i %]
350 [% temp_forex = "forex_"_ i %]
352 [% IF( $temp_forex || !changeable ) %]
354 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
356 <input name="[% temp %]" size="11" value="[% $temp | html %]">
359 <input type=hidden name="[% temp_forex %]" value="[% $temp_forex | html %]">
363 [% temp = "AP_paid_"_ i %]
364 [% readonly = "AP_paid_readonly_desc_"_ i %]
366 [% IF( changeable ) %]
367 [% L.select_tag(temp, ALL_CHARTS_AP_paid, value_title_sub = \AP_paid_value_title_sub, default = ($temp || accno_arap)) %]
369 [% $readonly | html %]
370 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
375 [% temp = "paid_project_id_"_ i %]
376 [% IF( changeable ) %]
377 [% P.project.picker(temp, $temp) %]
379 <input type="hidden" name="[% temp %]" value="[% $temp | html %]">
380 [% temp = "label"_ temp %]
390 <td align="center">[% 'Total' | $T8 %]</td>
391 <td align="center">[% LxERP.format_amount(totalpaid, 2) | html %]</td>
396 <td align="center">[% 'Missing amount' | $T8 %]</td>
397 <td align="center">[% LxERP.format_amount(paid_missing, 2) | html %]</td>
405 [% PROCESS 'webdav/_list.html' %]
407 [% LxERP.t8('Loading...') %]
411 <hr size="3" noshade>
413 <script type='text/javascript'>
414 $('#ap_set_to_paid_missing').click(function(){ $('input[id^="payment_paid_"]:last').val("[% LxERP.format_amount(paid_missing, 2) %]") });