1
<?xml version="1.0" encoding="utf-8"?>
5
<record id="product_normal_form_view" model="ir.ui.view">
6
<field name="name">product.normal.form</field>
7
<field name="model">product.product</field>
8
<field name="type">form</field>
9
<field eval="300" name="priority"/>
10
<field name="inherit_id" ref="product_expiry.view_product_form_expiry" />
11
<field name="arch" type="xml">
14
<field name="life_time" position="replace">
15
<field name="life_time" attrs="{'required':[('short_shelf_life', '=', True),],}" />
22
<record id="view_order_form" model="ir.ui.view">
23
<field name="name">sale.order.form</field>
24
<field name="model">sale.order</field>
25
<field name="type">form</field>
26
<field name="priority" eval="250" />
27
<field name="inherit_id" ref="sale.view_order_form" />
28
<field name="arch" type="xml">
31
<xpath expr="//form[@string='Sales Order']//tree[@string='Sales Order Lines']/field[@name='product_uom']" position="after">
32
<field name="kc_dg" />
39
<record id="purchase_order_form" model="ir.ui.view">
40
<field name="name">purchase.order.form</field>
41
<field name="model">purchase.order</field>
42
<field name="type">form</field>
43
<field name="inherit_id" ref="purchase.purchase_order_form" />
44
<field name="arch" type="xml">
47
<xpath expr="//form[@string='Purchase Order']//tree[@string='Purchase Order Lines']/field[@name='product_uom']" position="after">
48
<field name="kc_dg" />
55
<record id="view_picking_form" model="ir.ui.view">
56
<field name="name">stock.picking.form</field>
57
<field name="model">stock.picking</field>
58
<field name="type">form</field>
59
<field name="inherit_id" ref="stock.view_picking_form" />
60
<field eval="12" name="priority"/>
61
<field name="arch" type="xml">
64
<xpath expr="//form[@string='Stock Moves']//field[@name='prodlot_id']" position="replace">
65
<field name="prodlot_id" groups="base.group_extended"
66
context="{'location_id':location_id, 'product_id':product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
67
domain="[('product_id','=?',product_id), ('check_type','=', True),]"
68
on_change="onchange_lot_id(prodlot_id,product_qty, location_id, product_id, product_uom)" colspan="3"
69
attrs="{'readonly': [('hidden_batch_management_mandatory','=',False), ('hidden_perishable_mandatory','=',False),],}" />
70
<field name="hidden_batch_management_mandatory" invisible="True" />
71
<field name="hidden_perishable_mandatory" invisible="True" />
72
<field name="expired_date" />
73
<field name="kc_check" />
74
<field name="ssl_check" />
75
<field name="dg_check" />
76
<field name="np_check" />
79
<xpath expr="//tree[@string='Stock Moves']//field[@name='prodlot_id']" position="after">
80
<field name="expired_date" />
83
<xpath expr="//tree[@string='Stock Moves']//field[@name='state']" position="after">
84
<field name="kc_check" />
85
<field name="ssl_check" />
86
<field name="dg_check" />
87
<field name="np_check" />
94
<record id="view_picking_out_form" model="ir.ui.view">
95
<field name="name">stock.picking.out.form</field>
96
<field name="model">stock.picking</field>
97
<field name="type">form</field>
98
<field name="inherit_id" ref="stock.view_picking_out_form" />
99
<field name="arch" type="xml">
102
<xpath expr="//form[@string='Stock Moves']//field[@name='prodlot_id']" position="replace">
103
<field name="prodlot_id" groups="base.group_extended"
104
context="{'location_id':location_id, 'product_id':product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
105
domain="[('product_id','=?',product_id), ('check_type','=', True),]"
106
on_change="onchange_lot_id(prodlot_id,product_qty, location_id, product_id, product_uom)" colspan="3"
107
attrs="{'readonly': [('hidden_batch_management_mandatory','=',False), ('hidden_perishable_mandatory','=',False),],}" />
108
<field name="hidden_batch_management_mandatory" invisible="True" />
109
<field name="hidden_perishable_mandatory" invisible="True" />
110
<field name="expired_date" />
111
<field name="kc_check" />
112
<field name="ssl_check" />
113
<field name="dg_check" />
114
<field name="np_check" />
117
<xpath expr="//tree[@string='Stock Moves']//field[@name='prodlot_id']" position="after">
118
<field name="expired_date" />
121
<xpath expr="//tree[@string='Stock Moves']//field[@name='state']" position="after">
122
<field name="kc_check" />
123
<field name="ssl_check" />
124
<field name="dg_check" />
125
<field name="np_check" />
133
<record id="view_picking_in_form" model="ir.ui.view">
134
<field name="name">stock.picking.in.form</field>
135
<field name="model">stock.picking</field>
136
<field name="type">form</field>
137
<field name="inherit_id" ref="stock.view_picking_in_form" />
138
<field name="arch" type="xml">
141
<xpath expr="//form[@string='Stock Moves']//field[@name='prodlot_id']" position="replace">
142
<field name="prodlot_id" groups="base.group_extended"
143
context="{'location_id':location_id, 'product_id':product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
144
domain="[('product_id','=?',product_id), ('check_type','=', True),]"
145
on_change="onchange_lot_id(prodlot_id,product_qty, location_id, product_id, product_uom)" colspan="3"
146
attrs="{'readonly': [('hidden_batch_management_mandatory','=',False), ('hidden_perishable_mandatory','=',False),],}" />
147
<field name="hidden_batch_management_mandatory" invisible="True" />
148
<field name="hidden_perishable_mandatory" invisible="True" />
149
<field name="expired_date" />
150
<field name="kc_check" />
151
<field name="ssl_check" />
152
<field name="dg_check" />
153
<field name="np_check" />
156
<xpath expr="//tree[@string='Stock Moves']//field[@name='prodlot_id']" position="after">
157
<field name="expired_date" />
160
<xpath expr="//tree[@string='Stock Moves']//field[@name='state']" position="after">
161
<field name="kc_check" />
162
<field name="ssl_check" />
163
<field name="dg_check" />
164
<field name="np_check" />
171
<record id="view_production_lot_tree" model="ir.ui.view">
172
<field name="name">stock.production.lot.tree</field>
173
<field name="model">stock.production.lot</field>
174
<field name="type">tree</field>
175
<field name="inherit_id" ref="stock.view_production_lot_tree" />
176
<field name="arch" type="xml">
179
<field name="ref" position="replace">
180
<field name="type" />
181
<field name="life_date" />
184
<field name="prefix" position="replace" />
186
<field name="stock_available" position="after">
187
<field name="stock_real" />
194
<record id="view_production_lot_expiry_date_tree" model="ir.ui.view">
195
<field name="name">stock.production.lot.expiry.date.tree</field>
196
<field name="model">stock.production.lot</field>
197
<field name="type">tree</field>
198
<field name="arch" type="xml">
199
<tree string="Expiry Dates">
200
<field name="prefix" invisible="True" />
201
<field name="type" invisible="True" />
202
<field name="life_date" />
203
<field name="name" />
204
<field name="product_id"/>
205
<field name="stock_available"/>
211
<record model="ir.ui.view" id="search_product_lot_filter">
212
<field name="name">Production Lots Filter</field>
213
<field name="model">stock.production.lot</field>
214
<field name="type">search</field>
215
<field name="inherit_id" ref="stock.search_product_lot_filter" />
216
<field name="arch" type="xml">
219
<filter name="available" position="replace">
220
<filter icon="terp-check" name="available" string="Available" domain="[('stock_available', '>', 0)]" help="Available Product Lots" />
221
<filter icon="terp-check" name="real" string="Real" domain="[('stock_real', '>', 0)]" help="Real Stock" />
223
<field name="prefix" position="replace" />
224
<field name="ref" position="replace" />
225
<field name="name" position="after">
226
<field name="type" />
227
<field name="life_date" />
234
<record id="view_production_lot_form" model="ir.ui.view">
235
<field name="name">stock.production.lot.form</field>
236
<field name="model">stock.production.lot</field>
237
<field name="type">form</field>
238
<field name="inherit_id" ref="stock.view_production_lot_form" />
239
<field name="arch" type="xml">
242
<field name="stock_available" position="after">
243
<field name="stock_real" colspan="4" />
247
<field name="ref" position="after">
248
<field name="type" />
251
<field name="name" position="replace">
252
<field name="name" colspan="4" />
255
<field name="date" position="replace">
256
<field name="date" colspan="2" />
259
<field name="prefix" position="replace" />
260
<field name="ref" position="replace" />
266
<record model="ir.ui.view" id="view_move_form_expiry">
267
<field name="name">stock.production.lot.form</field>
268
<field name="model">stock.production.lot</field>
269
<field name="inherit_id" ref="product_expiry.view_move_form_expiry" />
270
<field name="type">form</field>
271
<field name="arch" type="xml">
274
<field name="use_date" position="replace" />
275
<field name="removal_date" position="replace" />
276
<field name="alert_date" position="replace" />
282
<record id="view_move_form" model="ir.ui.view">
283
<field name="name">stock.move.form</field>
284
<field name="model">stock.move</field>
285
<field name="type">form</field>
286
<field eval="4" name="priority"/>
287
<field name="inherit_id" ref="stock.view_move_form" />
288
<field name="arch" type="xml">
291
<field name="prodlot_id" position="replace">
292
<field name="prodlot_id" groups="base.group_extended"
293
context="{'location_id':location_id, 'product_id':product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
294
domain="[('product_id','=?',product_id), ('check_type','=', True),]"
295
on_change="onchange_lot_id(prodlot_id,product_qty, location_id, product_id, product_uom)" colspan="3"
296
attrs="{'readonly': [('hidden_batch_management_mandatory','=',False), ('hidden_perishable_mandatory','=',False),],}" />
297
<field name="hidden_batch_management_mandatory" invisible="True" />
298
<field name="hidden_perishable_mandatory" invisible="True" />
299
<field name="expired_date" />
300
<field name="kc_check" />
301
<field name="ssl_check" />
302
<field name="dg_check" />
303
<field name="np_check" />
310
<record id="view_move_form_reception_picking" model="ir.ui.view">
311
<field name="name">stock.move.form2</field>
312
<field name="model">stock.move</field>
313
<field name="type">form</field>
314
<field eval="6" name="priority"/>
315
<field name="inherit_id" ref="stock.view_move_form_reception_picking" />
316
<field name="arch" type="xml">
319
<field name="prodlot_id" position="replace">
320
<field name="prodlot_id" groups="base.group_extended"
321
context="{'location_id':location_id, 'product_id':product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
322
domain="[('product_id','=?',product_id), ('check_type','=', True),]"
323
on_change="onchange_lot_id(prodlot_id,product_qty, location_id, product_id, product_uom)" colspan="3"
324
attrs="{'readonly': [('hidden_batch_management_mandatory','=',False), ('hidden_perishable_mandatory','=',False),],}" />
325
<field name="hidden_batch_management_mandatory" invisible="True" />
326
<field name="hidden_perishable_mandatory" invisible="True" />
327
<field name="expired_date" />
328
<field name="kc_check" />
329
<field name="ssl_check" />
330
<field name="dg_check" />
331
<field name="np_check" />
338
<record id="stock_move_tree" model="ir.ui.view">
339
<field name="name">Stock Moves</field>
340
<field name="model">stock.move</field>
341
<field name="type">tree</field>
342
<field name="field_parent">move_history_ids</field>
343
<field name="inherit_id" ref="stock.stock_move_tree" />
344
<field name="arch" type="xml">
347
<button name="action_done" position="after">
348
<field name="kc_check" />
349
<field name="ssl_check" />
350
<field name="dg_check" />
351
<field name="np_check" />
358
<record id="stock_move_tree2" model="ir.ui.view">
359
<field name="name">Stock Moves</field>
360
<field name="model">stock.move</field>
361
<field name="type">tree</field>
362
<field name="field_parent">move_history_ids2</field>
363
<field name="inherit_id" ref="stock.stock_move_tree2" />
364
<field name="arch" type="xml">
367
<field name="state" position="after">
368
<field name="kc_check" />
369
<field name="ssl_check" />
370
<field name="dg_check" />
371
<field name="np_check" />
378
<record id="view_move_tree" model="ir.ui.view">
379
<field name="name">stock.move.tree</field>
380
<field name="model">stock.move</field>
381
<field name="type">tree</field>
382
<field eval="6" name="priority"/>
383
<field name="inherit_id" ref="stock.view_move_tree" />
384
<field name="arch" type="xml">
387
<button name="action_done" position="after">
388
<field name="kc_check" />
389
<field name="ssl_check" />
390
<field name="dg_check" />
391
<field name="np_check" />
398
<record id="view_move_tree_reception_picking" model="ir.ui.view">
399
<field name="name">stock.move.tree2</field>
400
<field name="model">stock.move</field>
401
<field name="type">tree</field>
402
<field name="priority" eval="6" />
403
<field name="inherit_id" ref="stock.view_move_tree_reception_picking" />
404
<field name="arch" type="xml">
407
<button name="%(stock.action_partial_move_server)d" position="after">
408
<field name="kc_check" />
409
<field name="ssl_check" />
410
<field name="dg_check" />
411
<field name="np_check" />
418
<record id="stock_inventory_line_tree" model="ir.ui.view">
419
<field name="name">stock.inventory.line.tree</field>
420
<field name="model">stock.inventory.line</field>
421
<field name="type">tree</field>
422
<field name="inherit_id" ref="stock.stock_inventory_line_tree" />
423
<field name="arch" type="xml">
425
<xpath expr="/tree/field[@name='product_uom']" position="after">
426
<field name="reason_type_id" widget="selection" domain="[('is_inventory', '=', True)]" />
427
<field name="comment" />
430
<field name="prod_lot_id" position="replace">
431
<field name="prod_lot_id"
432
on_change="change_lot(prod_lot_id)"
433
groups="base.group_extended"
434
context="{'location_id':location_id, 'product_id': product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
435
domain="[('check_type','=', True), ('product_id', '=', product_id)]"
436
attrs="{'required': [('hidden_batch_management_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False), ('hidden_batch_management_mandatory', '=', False)],}" />
437
<field name="expiry_date"
438
on_change="change_expiry(expiry_date, product_id, type_check)"
439
attrs="{'required': [('hidden_perishable_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False),],}" />
441
<field name="hidden_perishable_mandatory" invisible="True" />
442
<field name="hidden_batch_management_mandatory" invisible="True" />
443
<field name="type_check" invisible="True" />
444
<field name="kc_check" />
445
<field name="ssl_check" />
446
<field name="dg_check" />
447
<field name="np_check" />
453
<record id="stock_inventory_line_form" model="ir.ui.view">
454
<field name="name">stock.inventory.line.form</field>
455
<field name="model">stock.inventory.line</field>
456
<field name="type">form</field>
457
<field name="inherit_id" ref="stock.view_inventory_line_form" />
458
<field name="arch" type="xml">
461
<field name="prod_lot_id" position="replace">
462
<field name="prod_lot_id"
463
on_change="change_lot(prod_lot_id)"
464
groups="base.group_extended"
465
context="{'location_id':location_id, 'product_id': product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
466
domain="[('check_type','=', True), ('product_id', '=', product_id)]"
467
attrs="{'required': [('hidden_batch_management_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False), ('hidden_batch_management_mandatory', '=', False)],}" />
468
<field name="expiry_date"
469
on_change="change_expiry(expiry_date, product_id, type_check)"
470
attrs="{'required': [('hidden_perishable_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False),],}" />
472
<field name="hidden_perishable_mandatory" invisible="True" />
473
<field name="hidden_batch_management_mandatory" invisible="True" />
474
<field name="type_check" invisible="True" />
475
<field name="kc_check" />
476
<field name="ssl_check" />
477
<field name="dg_check" />
478
<field name="np_check" />
485
<record id="view_inventory_form" model="ir.ui.view">
486
<field name="name">stock.inventory.form</field>
487
<field name="model">stock.inventory</field>
488
<field name="type">form</field>
489
<field name="inherit_id" ref="stock.view_inventory_form" />
490
<field name="arch" type="xml">
493
<xpath expr="//tree[@string='Products']//field[@name='prod_lot_id']" position="replace">
494
<field name="prod_lot_id"
495
on_change="change_lot(prod_lot_id)"
496
groups="base.group_extended"
497
context="{'location_id':location_id, 'product_id': product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
498
domain="[('check_type','=', True), ('product_id', '=', product_id),]"
499
attrs="{'required': [('hidden_batch_management_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False), ('hidden_batch_management_mandatory', '=', False)],}" />
500
<field name="expiry_date"
501
on_change="change_expiry(expiry_date, product_id, type_check)"
502
attrs="{'required': [('hidden_perishable_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False),],}" />
504
<field name="hidden_perishable_mandatory" invisible="True" />
505
<field name="hidden_batch_management_mandatory" invisible="True" />
506
<field name="type_check" invisible="True" />
507
<field name="kc_check" />
508
<field name="ssl_check" />
509
<field name="dg_check" />
510
<field name="np_check" />
513
<xpath expr="//form[@string='Products ']//field[@name='prod_lot_id']" position="replace">
514
<field name="prod_lot_id"
515
on_change="change_lot(prod_lot_id)"
516
groups="base.group_extended"
517
context="{'location_id':location_id, 'product_id': product_id, 'hidden_perishable_mandatory': hidden_perishable_mandatory,}"
518
domain="[('check_type','=', True), ('product_id', '=', product_id),]"
519
attrs="{'required': [('hidden_batch_management_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False), ('hidden_batch_management_mandatory', '=', False)],}" />
520
<field name="expiry_date"
521
on_change="change_expiry(expiry_date, product_id, type_check)"
522
attrs="{'required': [('hidden_perishable_mandatory', '=', True),], 'readonly': [('hidden_perishable_mandatory', '=', False),],}" />
524
<field name="hidden_perishable_mandatory" invisible="True" />
525
<field name="hidden_batch_management_mandatory" invisible="True" />
526
<field name="type_check" invisible="True" />
527
<field name="kc_check" />
528
<field name="ssl_check" />
529
<field name="dg_check" />
530
<field name="np_check" />
538
<record id="view_stock_inventory_search" model="ir.ui.view">
539
<field name="name">report.stock.inventory.search</field>
540
<field name="model">report.stock.inventory</field>
541
<field name="type">search</field>
542
<field name="inherit_id" ref="stock.view_stock_inventory_search" />
543
<field name="arch" type="xml">
546
<field name="prodlot_id" position="after">
547
<field name="expired_date" />
550
<filter name="group_lot" position="after">
551
<filter name="group_expiry" string="Expiry Date" icon="terp-accessories-archiver" context="{'group_by':'expired_date'}"/>
558
<record id="view_stock_inventory_tree" model="ir.ui.view">
559
<field name="name">report.stock.inventory.tree</field>
560
<field name="model">report.stock.inventory</field>
561
<field name="type">tree</field>
562
<field name="inherit_id" ref="stock.view_stock_inventory_tree" />
563
<field name="arch" type="xml">
566
<field name="prodlot_id" position="after">
567
<field name="expired_date" invisible="1"/>