title_key='safe_name') %]</td>
</tr>
+ [% IF SELF.cv == 'customer' %]
+ <tr>
+ <th align="right">[% 'Salesman' | $T8 %]</th>
+ <td>[% L.select_tag('order.employee_id',
+ SELF.all_employees,
+ default=(SELF.order.salesman_id ? SELF.order.salesman_id : SELF.current_employee_id),
+ title_key='safe_name') %]</td>
+ </tr>
+ [% END %]
+
<tr>
<th width="70%" align="right" nowrap>[% 'Order Number' | $T8 %]</th>
<td>[% L.input_tag('order.ordnumber', SELF.order.ordnumber, size = 11) %]</td>
<table width="100%">
<tr>
<td>
- <table id="row_table_id" width="100%">
- <thead>
- <tr class="listheading">
- <th class="listheading" style='display:none'></th>
- <th class="listheading" style='text-align:center' nowrap width="1"><img src="image/updown.png" alt="[%- LxERP.t8('reorder item') %]"></th>
- <th class="listheading" style='text-align:center' nowrap width="1"><img src="image/close.png" alt="[%- LxERP.t8('delete item') %]"></th>
- <th class="listheading" nowrap >[%- 'Part' | $T8 %] </th>
- <th class="listheading" nowrap width="5" >[%- 'Qty' | $T8 %] </th>
- <th class="listheading" nowrap width="5" >[%- 'Price Factor' | $T8 %] </th>
- <th class="listheading" nowrap width="5" >[%- 'Unit' | $T8 %] </th>
- <th class="listheading" nowrap width="15">[%- 'Price' | $T8 %] </th>
- <th class="listheading" nowrap width="5" >[%- 'Discount' | $T8 %] </th>
- <th class="listheading" nowrap width="10">[%- 'Extended' | $T8 %] </th>
- </tr>
- </thead>
-
- <tbody>
- [%- FOREACH item = SELF.order.items_sorted %]
- [%- PROCESS order/tabs/_row.html ITEM=item %]
- [%- END %]
- </tbody>
- </table>
+ <div id="row_table_scroll_id" style="overflow-y: auto; height: 45vh;">
+ <table id="row_table_id" width="100%">
+ <thead>
+ <tr class="listheading">
+ <th class="listheading" style='display:none'></th>
+ <th class="listheading" style='text-align:center' nowrap width="1"><img src="image/updown.png" alt="[%- LxERP.t8('reorder item') %]"></th>
+ <th class="listheading" style='text-align:center' nowrap width="1"><img src="image/close.png" alt="[%- LxERP.t8('delete item') %]"></th>
+ <th class="listheading" nowrap width="15">[%- 'Partnumber' | $T8 %] </th>
+ <th class="listheading" nowrap >[%- 'Description' | $T8 %] </th>
+ <th class="listheading" nowrap width="5" >[%- 'Qty' | $T8 %] </th>
+ <th class="listheading" nowrap width="5" >[%- 'Price Factor' | $T8 %] </th>
+ <th class="listheading" nowrap width="5" >[%- 'Unit' | $T8 %] </th>
+ <th class="listheading" nowrap width="15">[%- 'Price' | $T8 %] </th>
+ <th class="listheading" nowrap width="5" >[%- 'Discount' | $T8 %] </th>
+ <th class="listheading" nowrap width="10">[%- 'Extended' | $T8 %] </th>
+ </tr>
+ </thead>
+
+ <tbody>
+ [%- FOREACH item = SELF.order.items_sorted %]
+ [%- PROCESS order/tabs/_row.html ITEM=item %]
+ [%- END %]
+ </tbody>
+
+ </table>
+ </div>
+
</td>
</tr>
}
function add_item() {
+ if ($('#add_item_parts_id').val() == '') return;
+
var data = $('#order_form').serialize();
data += '&action=Order/add_item';
data += '&type=' + $('#type').val();
recalc_amounts_and_taxes()
}
-function set_item_values(event) {
- var cv_id = $('#order_[%- cv_id %]').val();
- var parts_id = $(event.target).val();
- var row = $(event.target).parents("tr").first();
-
- var item_id_dom = $(row).find('[name="order.orderitems[+].id"]');
- var qty_dom = $(row).find('[id^="order_orderitems"][id$="qty_as_number"]');
- var unit_dom = $(row).find('[id^="order_orderitems"][id$="unit"]');
- var sellprice_dom = $(row).find('[id^="order_orderitems"][id$="sellprice_as_number"]');
- var discount_dom = $(row).find('[id^="order_orderitems"][id$="discount_as_percent"]');
-
- var data = $('#order_form').serialize();
- data += '&action=Order/set_item_values';
- data += '&type=' + $('#type').val();
- data += '&item_id=' + item_id_dom.val();
- data += '&qty_dom_id=' + qty_dom.attr("id");
- data += '&unit_dom_id=' + unit_dom.attr("id");
- data += '&sellprice_dom_id=' + sellprice_dom.attr("id");
- data += '&discount_dom_id=' + discount_dom.attr("id");
-
- $.post("controller.pl", data, kivi.eval_json_result);
-}
-
function recalc_amounts_and_taxes() {
var data = $('#order_form').serialize();
data += '&action=Order/recalc_amounts_and_taxes';
$.post("controller.pl", data, kivi.eval_json_result);
}
-function display_linetotal(item_id, amount) {
- $('#item_' + item_id).parents("tr").first().find('[name="linetotal"]').html(amount);
+function row_table_scroll_down() {
+ $('#row_table_scroll_id').scrollTop($('#row_table_scroll_id')[0].scrollHeight);
}
-
$(function(){
$('#order_[%- cv_id %]').change(reload_cv_dependend_selections);
- $('[id^="order_orderitems"][id$="parts_id"]').change(set_item_values);
+ $('#add_item_parts_id').on('set_item:PartPicker', function(e,o) { $('#add_item_sellprice_as_number').val(kivi.format_amount(o.sellprice, -2)) });
+ $('#add_item_parts_id').on('set_item:PartPicker', function(e,o) { $('#add_item_description').val(o.description) });
+ $('.add_item_input').keydown(function(event) {
+ if(event.keyCode == 13) {
+ event.preventDefault();
+ add_item();
+ return false;
+ }
+ });
});
+
</script>