odoo/addons/point_of_sale/point_of_sale_view.xml

1063 lines
53 KiB
XML

<?xml version="1.0"?>
<openerp>
<data>
<!-- Top menu item -->
<menuitem name="PoS Backend"
id="menu_point_root"
groups="group_pos_manager"
sequence="140"/>
<record id="categ_others" model="pos.category">
<field name="name">Others</field>
</record>
<record model="ir.ui.view" id="view_pos_pos_form">
<field name="name">pos.order</field>
<field name="model">pos.order</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Point of Sale Orders" version="7.0">
<div class="oe_form_topbar">
<button name="%(action_pos_payment)d" string="Payment" icon="gtk-apply" type="action" states="draft" context="{'pos_session_id' : session_id}"/>
<button name="action_invoice" string="Invoice" icon="gtk-apply" type="object" states="paid" attrs="{'readonly': [('partner_id','=',False)]}"/>
<button name="refund" string="Return Products" type="object" icon="gtk-ok"
attrs="{'invisible':[('state','=','draft')]}"/>
<button name="%(action_report_pos_receipt)d" string="Reprint" icon="gtk-print" type="action" states="paid,done,invoiced"/>
<div class="oe_right">
<field name="state" nolabel="1" widget="statusbar" statusbar_visible="draft,paid,done" statusbar_colors='{"cancel":"red"}'/>
</div>
</div>
<sheet>
<group col="4" colspan="4">
<field name="name"/>
<field name="date_order"/>
<field name="session_id" required="1" />
<field name="partner_id" on_change="onchange_partner_id(partner_id)" context="{'search_default_customer':1}" attrs="{'readonly': [('state','=','invoiced')]}"/>
</group>
<notebook colspan="4">
<page string="Products">
<field name="lines" colspan="4" nolabel="1">
<tree string="Order lines" editable="bottom">
<field name="product_id" on_change="onchange_product_id(parent.pricelist_id,product_id,qty,parent.partner_id)"/>
<field name="qty" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
<field name="price_unit" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
<field name="discount" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
<field name="price_subtotal"/>
<field name="price_subtotal_incl"/>
</tree>
<form string="Order lines" version="7.0">
<group col="4">
<field name="product_id" on_change="onchange_product_id(parent.pricelist_id,product_id,qty,parent.partner_id)"/>
<field name="qty" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
<field name="discount" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
<field name="price_unit" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
<field name="price_subtotal" invisible="1"/>
<field name="price_subtotal_incl" invisible="1"/>
<field name="notice"/>
</group>
</form>
</field>
<group class="oe_subtotal_footer">
<field name="amount_tax"/>
<field name="amount_total"/>
<button name="button_dummy" string="Update" icon="gtk-execute" states="draft" />
</group>
</page>
<page string="Payments">
<field name="statement_ids" colspan="4" nolabel="1">
<tree editable="bottom" string="Statement lines">
<field name="journal_id"/>
<field name="statement_id" />
<field name="amount"/>
</tree>
<form string="Statement lines" version="7.0">
<group col="4">
<field name="account_id"/>
<field name="amount"/>
<field name="statement_id" domain="[('company_id','=',parent.company_id),('state','=','open')]"/>
</group>
</form>
</field>
</page>
<page string="Extra Info">
<group string="General Information">
<field name="company_id" groups="base.group_multi_company"/>
<field name="shop_id" widget="selection"/>
<field name="user_id"/>
<field name="pricelist_id" groups="product.group_sale_pricelist" domain="[('type','=','sale')]"/>
<field name="picking_id" readonly="1"/>
</group>
<group string="Accounting Information">
<field name="sale_journal" domain="[('type','=','sale')]"/>
<field name="invoice_id" readonly="1"
attrs="{'invisible':[('state','&lt;&gt;','invoiced')]}"/>
<button name="%(pos_invoice_report)d" string="Re-Print"
icon="gtk-print" type="action" attrs="{'invisible':[('state','&lt;&gt;','invoiced')]}"/>
<field name="account_move" readonly="1"
attrs="{'invisible':[('state','&lt;&gt;','done')]}"/>
</group>
</page>
<page string="Notes" >
<field name="note"/>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record model="ir.actions.act_window" id="action_pos_pos_form">
<field name="name">Orders</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.order</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" eval="False"/>
<field name="domain">[]</field>
</record>
<record model="ir.ui.view" id="view_pos_order_tree">
<field name="name">Sales</field>
<field name="model">pos.order</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS Orders" colors="blue:state == 'draft';gray:state in ('done','cancel');black:state not in('done','cancel')">
<field name="name"/>
<field name="partner_id"/>
<field name="date_order"/>
<field name="user_id"/>
<field name="invoice_id"/>
<field name="amount_total" sum="Amount total"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="state"/>
</tree>
</field>
</record>
<record id="view_pos_order_filter" model="ir.ui.view">
<field name="name">pos.order.list.select</field>
<field name="model">pos.order</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Sales Order">
<field name="name" string="Sales Order"/>
<separator orientation="vertical"/>
<field name="date_order"/>
<separator orientation="vertical"/>
<filter icon="terp-document-new" string="New" domain="[('state','=','draft')]"/>
<filter icon="gtk-apply" string="Done" domain="[('state','in',('paid','invoiced','done'))]"/>
<filter icon="terp-check" string="Invoiced" domain="[('state','=','invoiced')]"/>
<filter icon="gtk-convert" string="Posted" domain="[('state','=','done')]"/>
<separator orientation="vertical"/>
<field name="user_id"/>
<group expand="0" string="Group By...">
<filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
<filter string="Salesperson" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
<separator string="" orientation="vertical"/>
<filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
<separator string="" orientation="vertical"/>
<filter string="Order Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_order'}"/>
</group>
</search>
</field>
</record>
<menuitem name="Daily Operations" id="menu_point_of_sale" parent="menu_point_root" sequence="10" />
<menuitem parent="menu_point_of_sale" id="menu_point_ofsale" action="action_pos_pos_form" sequence="1" groups="group_pos_manager,group_pos_user"/>
<menuitem name="Products" id="menu_point_of_sale_product" parent="menu_point_root" sequence="15" />
<record id="product_normal_action" model="ir.actions.act_window">
<field name="name">Products</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">product.product</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,kanban</field>
<field name="context" eval="{'default_pos_categ_id': ref('point_of_sale.categ_others')}"/>
<field name="view_id" ref="product.product_product_tree_view"/>
<field name="search_view_id" ref="product.product_search_form_view"/>
<field name="help">You must define a Product for everything you buy or sell. Products can be raw materials, stockable products, consumables or services. The Product form contains detailed information about your products related to procurement logistics, sales price, product category, suppliers and so on.</field>
</record>
<menuitem
action="product_normal_action"
id="menu_pos_products"
parent="menu_point_of_sale_product" sequence="2"/>
<record model="ir.ui.view" id="view_pos_order_line">
<field name="name">Sale lines</field>
<field name="model">pos.order.line</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS Order lines">
<field name="product_id" readonly="1"/>
<field name="qty" readonly="1" sum="Total qty"/>
<field name="discount" readonly="1"/>
<field name="price_unit" readonly="1"/>
<field name="price_subtotal" readonly="1" sum="Sum of subtotals"/>
<field name="price_subtotal_incl" readonly="1" sum="Sum of subtotals"/>
<field name="create_date" readonly="1"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_pos_order_line_form">
<field name="name">Sale line</field>
<field name="model">pos.order.line</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="POS Order line" version="7.0">
<group col="4">
<field name="product_id" />
<field name="qty" />
<field name="discount" />
<field name="price_unit" />
<field name="create_date" />
</group>
</form>
</field>
</record>
<record model="ir.actions.act_window" id="action_pos_order_line">
<field name="name">Sale line</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.order.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_pos_order_line"/>
</record>
<record model="ir.actions.act_window" id="action_pos_order_line_form">
<field name="name">Sale line</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.order.line</field>
<field name="view_type">form</field>
<field name="view_mode">form,tree</field>
<field name="view_id" ref="view_pos_order_line_form"/>
</record>
<record model="ir.actions.act_window" id="action_pos_order_line_day">
<field name="name">Sale line</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.order.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_pos_order_line"/>
<field name="domain">[('create_date', '&gt;=', time.strftime('%Y-%m-%d 00:00:00')),('create_date', '&lt;=', time.strftime('%Y-%m-%d 23:59:59'))]</field>
</record>
<!-- report -->
<record model="ir.ui.view" id="view_pos_trans_user_form">
<field name="name">report.trans.pos.user.form</field>
<field name="model">report.transaction.pos</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="POS " version="7.0">
<group col="4">
<field name="user_id"/>
<field name="journal_id"/>
<field name="jl_id"/>
<field name="date_create" widget="date"/>
<field name="no_trans"/>
<field name="amount"/>
<field name="invoice_id"/>
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_trans_pos_user_tree">
<field name="name">Sales by user</field>
<field name="model">report.transaction.pos</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS">
<field name="date_create" widget="date" />
<field name="user_id"/>
<field name="journal_id"/>
<field name="jl_id"/>
<field name="no_trans" sum="Total Transaction"/>
<field name="amount" sum="Amount total"/>
<field name="product_nb" />
<field name="invoice_id"/>
<field name="disc"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_report_transaction_pos_calendar">
<field name="name">report.transaction.pos.calendar</field>
<field name="model">report.transaction.pos</field>
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<calendar color="user_id" date_start="date_create" string="POS Report">
<field name="journal_id"/>
<field name="amount"/>
</calendar>
</field>
</record>
<record model="ir.ui.view" id="view_report_transaction_pos_graph">
<field name="name">report.transaction.pos.graph</field>
<field name="model">report.transaction.pos</field>
<field name="type">graph</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<graph type="bar" string="POS Report">
<field name="user_id" />
<field name="amount"/>
<field group="True" name="journal_id"/>
</graph>
</field>
</record>
<record model="ir.actions.act_window" id="action_trans_pos_tree_today">
<field name="name">Sales by day</field>
<field name="res_model">report.transaction.pos</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="domain">[('date_create','=',time.strftime('%Y-%m-%d'))]</field>
</record>
<record model="ir.actions.act_window" id="action_trans_pos_tree_month">
<field name="name">Sales by month</field>
<field name="res_model">report.transaction.pos</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="domain">[('date_create','like',time.strftime('%Y-%m'))]</field>
</record>
<record model="ir.actions.act_window" id="action_trans_pos_tree">
<field name="name">Sales by user</field>
<field name="res_model">report.transaction.pos</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="view_id" ref="view_trans_pos_user_tree"/>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_form">
<field name="name">report.sales.by.user.pos.form</field>
<field name="model">report.sales.by.user.pos</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="POS " version="7.0">
<group col="4">
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="amount"/>
<field name="user_id"/>
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_tree">
<field name="name">report.sales.by.user.pos.tree</field>
<field name="model">report.sales.by.user.pos</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS">
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="amount"/>
<field name="user_id"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_calendar">
<field name="name">report.sales.by.user.pos.calendar</field>
<field name="model">report.sales.by.user.pos</field>
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<calendar color="user_id" date_start="date_order" string="POS Report">
<field name="qty"/>
<field name="amount" />
</calendar>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_graph">
<field name="name">report.sales.by.user.pos.graph</field>
<field name="model">report.sales.by.user.pos</field>
<field name="type">graph</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<graph type="bar" string="Sales by User">
<field name="user_id" />
<field name="amount"/>
</graph>
</field>
</record>
<record model="ir.actions.act_window" id="action_report_sales_by_user_pos_today">
<field name="name">Sales by User</field>
<field name="res_model">report.sales.by.user.pos</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="domain">[('date_order','=',time.strftime('%Y-%m-%d'))]</field>
</record>
<!-- Sales of user by month -->
<record model="ir.ui.view" id="view_report_sales_by_user_pos_month_form">
<field name="name">report.sales.by.user.pos.month.form</field>
<field name="model">report.sales.by.user.pos.month</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="POS " version="7.0">
<group col="4">
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="amount"/>
<field name="user_id"/>
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_month_tree">
<field name="name">report.sales.by.user.pos.month.tree</field>
<field name="model">report.sales.by.user.pos.month</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS">
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="amount"/>
<field name="user_id"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_month_calendar">
<field name="name">report.sales.by.user.pos.month.calendar</field>
<field name="model">report.sales.by.user.pos.month</field>
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<calendar color="user_id" date_start="date_order" string="POS Report">
<field name="qty"/>
<field name="amount" />
</calendar>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_user_pos_month_graph">
<field name="name">report.sales.by.user.pos.month.graph</field>
<field name="model">report.sales.by.user.pos.month</field>
<field name="type">graph</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<graph type="bar" string="Sales by User">
<field name="user_id" />
<field name="amount"/>
</graph>
</field>
</record>
<record model="ir.actions.act_window" id="action_report_sales_by_user_pos_month">
<field name="name">Sales by User Monthly</field>
<field name="res_model">report.sales.by.user.pos.month</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="domain">[('date_order','like',time.strftime('%Y-%m'))]</field>
</record>
<!-- Sales by margin -->
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_form">
<field name="name">report.sales.by.margin.pos.form</field>
<field name="model">report.sales.by.margin.pos</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="POS " version="7.0">
<group col="4">
<field name="user_id"/>
<field name="product_name"/>
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="net_margin_per_qty"/>
<field name="total"/>
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_tree">
<field name="name">report.sales.by.margin.pos.tree</field>
<field name="model">report.sales.by.margin.pos</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS">
<field name="user_id"/>
<field name="product_name"/>
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="net_margin_per_qty"/>
<field name="total"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_calendar">
<field name="name">report.sales.by.margin.pos.calendar</field>
<field name="model">report.sales.by.margin.pos</field>
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<calendar color="user_id" date_start="date_order" string="Sales by User Margin">
<field name="product_name"/>
<field name="total" />
</calendar>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_graph">
<field name="name">report.sales.by.margin.pos.graph</field>
<field name="model">report.sales.by.margin.pos</field>
<field name="type">graph</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<graph type="bar" string="Sales by User Margin" orientation="horizontal">
<field name="product_name" />
<field name="total" operator="+"/>
</graph>
</field>
</record>
<record model="ir.actions.act_window" id="action_report_sales_by_margin_pos_today">
<field name="name">Sales by User Daily margin</field>
<field name="res_model">report.sales.by.margin.pos</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="domain">[('date_order','=',time.strftime('%Y-%m-%d'))]</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_form">
<field name="name">report.sales.by.margin.pos.month.form</field>
<field name="model">report.sales.by.margin.pos.month</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="POS " version="7.0">
<group col="4">
<field name="user_id"/>
<field name="product_name"/>
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="net_margin_per_qty"/>
<field name="total"/>
</group>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_tree">
<field name="name">report.sales.by.margin.pos.month.tree</field>
<field name="model">report.sales.by.margin.pos.month</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS">
<field name="user_id"/>
<field name="product_name"/>
<field name="date_order" widget="date"/>
<field name="qty"/>
<field name="net_margin_per_qty"/>
<field name="total"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_calendar">
<field name="name">report.sales.by.margin.pos.month.calendar</field>
<field name="model">report.sales.by.margin.pos.month</field>
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<calendar color="user_id" date_start="date_order" string="Sales by User Margin">
<field name="product_name"/>
<field name="total" />
</calendar>
</field>
</record>
<record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_graph">
<field name="name">report.sales.by.margin.pos.month.graph</field>
<field name="model">report.sales.by.margin.pos.month</field>
<field name="type">graph</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<graph type="bar" string="Sales by User Margin" orientation="horizontal">
<field name="product_name" />
<field name="total" operator="+"/>
</graph>
</field>
</record>
<record model="ir.actions.act_window" id="action_report_sales_by_margin_pos_month">
<field name="name">Sales by User Monthly margin</field>
<field name="res_model">report.sales.by.margin.pos.month</field>
<field name="view_type">form</field>
<field name="view_mode">tree,calendar,form,graph</field>
<field name="domain">[('date_order','like',time.strftime('%Y-%m'))]</field>
</record>
<record id="product_normal_form_pos_view" model="ir.ui.view">
<field name="name">product.normal.pos.form.inherit</field>
<field name="model">product.product</field>
<field name="type">form</field>
<field name="inherit_id" ref="product.product_normal_form_view"/>
<field name="arch" type="xml">
<group name="status" position="after">
<group name="pos" string="Point of Sale">
<field name="pos_categ_id"/>
<field name="to_weight" />
</group>
</group>
</field>
</record>
<record id="product_normal_form_view" model="ir.ui.view">
<field name="name">product.normal.form.inherit</field>
<field name="model">product.product</field>
<field name="type">form</field>
<field name="inherit_id" ref="product.product_normal_form_view"/>
<field name="arch" type="xml">
<group name="misc" position="after">
<group name="pos" colspan="2" col="2">
<separator string="Point of Sale" colspan="2"/>
<field name="income_pdt"/>
<field name="expense_pdt"/>
</group>
</group>
</field>
</record>
<!-- Categories tree view -->
<record id="pos_category_form_view" model="ir.ui.view">
<field name="name">pos.category.form</field>
<field name="model">pos.category</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Product PoS Categories" version="7.0">
<sheet>
<field name="category_image" widget='image' class="oe_avatar oe_right"/>
<div class="oe_left">
<group>
<field name="name"/>
<field name="parent_id"/>
<field name="sequence"/>
</group>
</div>
</sheet>
</form>
</field>
</record>
<record id="pos_category_tree_view" model="ir.ui.view">
<field name="name">pos.category.tree</field>
<field name="model">pos.category</field>
<field name="type">tree</field>
<field name="field_parent" eval="False"/>
<field name="arch" type="xml">
<tree string="Product PoS Categories">
<field name="sequence" invisible="1"/>
<field name="complete_name"/>
</tree>
</field>
</record>
<record id="pos_category_action" model="ir.actions.act_window">
<field name="name">Product Categories</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.category</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" eval="False"/>
</record>
<menuitem action="pos_category_action" id="menu_pos_category" parent="menu_point_of_sale_product" sequence="0" />
<!-- END -->
<menuitem name="Configuration" parent="menu_point_root"
id="menu_point_config_product" sequence="25" groups="group_pos_manager"/>
<record id="action_account_journal_form" model="ir.actions.act_window">
<field name="name">Payment Methods</field>
<field name="res_model">account.journal</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="context" eval="{'default_journal_user': 1, 'default_type': 'cash'}"/>
<field name="domain">[('journal_user','=', 1)]</field>
<field name="help">Payment methods are defined by accounting journals having the field Payment Method checked.</field>
</record>
<menuitem action="action_account_journal_form"
id="menu_action_account_journal_form_open"
parent="menu_point_config_product"
sequence="20"/>
<record model="ir.ui.view" id="view_pos_order_tree_all_sales_lines">
<field name="name">POS Sales Lines</field>
<field name="model">pos.order.line</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="POS Orders lines">
<field name="order_id" />
<field name="create_date" />
<field name="product_id" />
<field name="qty" />
<field name="price_unit" />
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="action_pos_all_sales_lines">
<field name="name">All sales lines</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.order.line</field>
<field name="view_type">form</field>
<field name="view_id" ref="view_pos_order_tree_all_sales_lines" />
</record>
<!-- Miscellaneous Operations/Reporting -->
<menuitem name="Point of Sale" parent="base.menu_reporting" id="menu_point_rep" sequence="50" groups="group_pos_manager"/>
<!-- Invoice -->
<record model="ir.actions.act_window" id="action_pos_invoice">
<field name="name">Invoices</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">account.invoice</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('origin','like','POS')]</field>
</record>
<menuitem icon="STOCK_PRINT" action="action_report_pos_details"
id="menu_pos_details" parent="menu_point_rep" sequence="6" />
<record model="ir.actions.client" id="action_pos_pos">
<field name="name">Start Point of Sale</field>
<field name="tag">pos.ui</field>
</record>
<!-- Top menu item -->
<!--
right now it's not possible to directly call a client action
from a menuitem, so we can't use this shortcut element and
use an explicit record element instead
-->
<record id="menu_point_root_touchscreen" model="ir.ui.menu">
<field name="name">Point of Sale</field>
<field name="action" ref="action_pos_pos"/>
<field name="groups_id" eval="[(6, 0, [ref('point_of_sale.group_pos_manager'), ref('point_of_sale.group_pos_user')])]"/>
<field name="sequence">150</field>
</record>
<record model="ir.ui.view" id="view_pos_config_form">
<field name="name">pos.config.form.view</field>
<field name="model">pos.config</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Point of Sale Configuration" version="7.0">
<header>
<button string="Set to Active" name="set_active" type="object" states="inactive,deprecated"/>
<button string="Set to Inactive" name="set_inactive" type="object" states="active" />
<button string="Set to Deprecated" name="set_deprecate" type="object" states="active,inactive" />
<div class="oe_right">
<field name="state" widget="statusbar" statusbar_visible="active,inactive,deprecated" statusbar_colors='{"deprecated" : "red"}' nolabel="1"/>
</div>
</header>
<sheet>
<group>
<field name="name"/>
<field name="shop_id" widget="selection" />
<field name="journal_id" widget="selection" />
<field name="sequence_id" readonly="1"/>
<field name="group_by" />
</group>
<separator string="Available Payment Methods" colspan="4"/>
<field name="journal_ids" colspan="4" nolabel="1">
<tree string="Journals">
<field name="code" />
<field name="name" />
<field name="type" />
<field name="opening_control" />
<field name="closing_control" />
</tree>
</field>
<group string="Material Interfaces" >
<group>
<field name="iface_self_checkout" />
<field name="iface_websql" />
<field name="iface_led" />
<field name="iface_cashdrawer" />
<field name="iface_payment_terminal" />
</group>
<group>
<field name="iface_electronic_scale" />
<field name="iface_barscan" />
<field name="iface_vkeyboard" />
<field name="iface_print_via_proxy" />
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_pos_config_tree">
<field name="name">pos.config.tree.view</field>
<field name="model">pos.config</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Point of Sale Configuration" colors="grey:state == 'inactive'">
<field name="name" />
<field name="shop_id" />
<field name="state" />
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_pos_config_search">
<field name="name">pos.config.search.view</field>
<field name="model">pos.config</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Point of Sale Config">
<filter string="Active" domain="[('state', '=', 'active')]" />
<filter string="Inactive" domain="[('state', '=', 'inactive')]" />
<separator orientation="vertical"/>
<field name="name" />
<field name="shop_id" />
</search>
</field>
</record>
<act_window
id="act_pos_config_sessions"
name="Sessions"
src_model="pos.config"
res_model="pos.session"
domain="[('config_id', '=', active_id)]" />
<record model="ir.actions.act_window" id="action_pos_config_pos">
<field name="name">Point of Sales</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.config</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_pos_config_search" />
</record>
<menuitem
parent="menu_point_config_product"
action="action_pos_config_pos"
id="menu_pos_config_pos"
groups="group_pos_manager"/>
<act_window
id="act_pos_session_orders"
name="Orders"
src_model="pos.session"
res_model="pos.order"
context="{'search_default_session_id': active_id, 'default_session_id' : active_id }" />
<record model="ir.ui.view" id="view_pos_session_form">
<field name="name">pos.session.form.view</field>
<field name="model">pos.session</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Point of Sale Session" version="7.0">
<header>
<button name="open" type="workflow" string="Validate &amp; Open Session" states="opening_control" />
<button name="cashbox_control" type="workflow" string="End of Session" states="opened" />
<button name="close" type="workflow" string="Validate &amp; Close" states="closing_control,opened" />
<div class="oe_right">
<field name="state" widget="statusbar" statusbar_visible="opening_control,opened,closing_control,closed" nolabel="1"/>
</div>
</header>
<sheet>
<group>
<field name="config_id"/>
<field name="has_opening_control" invisible="1" />
<field name="has_closing_control" invisible="1" />
<group>
<button name="%(action_pos_box_in)d" string="Put Money In" type="action" states="opened"/>
<button name="%(action_pos_box_out)d" string="Take Money Out" type="action" states="opened"/>
<button name="open_frontend_cb" type="object" string="Open Point Of Sale" states="opened" />
</group>
<newline/>
<field name="user_id" />
<field name="name" />
<newline/>
<field name="start_at" attrs="{'insivible' : [('state', '=', 'opening_control')]}"/>
<field name="stop_at" attrs="{'insivible' : [('state', '=', 'opening_control')]}"/>
<separator string="Cash Control" colspan="4"/>
<field name="cash_register_id" invisible="1" />
<field name="opening_details_ids" colspan="4" nolabel="1" attrs="{'invisible' : [('state', 'not in', ('opening_control',))]}">
<tree string="Opening Cashbox Lines" editable="bottom">
<field name="pieces" readonly="1" />
<field name="number_opening" string="Opening Unit Numbers" on_change="on_change_sub_opening(pieces, number_opening, parent.balance_end)" />
<field name="subtotal_opening" string="Opening Subtotal" sum="Total"/>
</tree>
</field>
<field name="details_ids" colspan="4" nolabel="1" attrs="{'invisible': [('state', '=', 'opening_control')]}">
<tree string="Cashbox Lines" editable="bottom">
<field name="pieces" readonly="1" />
<field name="number_opening" readonly="1"/>
<field name="subtotal_opening"/>
<field name="number_closing"/>
<field name="subtotal_closing"/>
</tree>
</field>
<group col="4" colspan="4">
<group col="2" colspan="2">
<separator string="Cash Balance" colspan="2"/>
<field name="cash_register_balance_start" readonly="1" string="Opening Cash Control"/>
<field name="cash_register_total_entry_encoding" attrs="{'invisible' : [('state', '=', 'opening_control')]}" string="+ Transactions"/>
<field name="cash_register_balance_end" attrs="{'invisible' : [('state', '=', 'opening_control')]}" string="= Theorical Cash Closing"/>
</group>
<group col="2" colspan="2" attrs="{'invisible' : [('state', '=', 'opening_control')]}">
<separator string="Cash Closing Balance" colspan="2"/>
<field name="cash_register_balance_end_real"/>
<field name="cash_register_difference" />
</group>
</group>
<separator string="Summary by Payment Methods" colspan="4" attrs="{'invisible' : [('state', '=', 'opening_control')]}"/>
<field name="statement_ids" colspan="4" nolabel="1" attrs="{'invisible' : [('state', '=', 'opening_control')]}">
<tree string="Statements">
<field name="name" />
<field name="journal_id" />
<field name="balance_start" />
<field name="total_entry_encoding" />
<field name="balance_end_real" />
<field name="difference" />
<field name="currency" />
<field name="state" />
</tree>
</field>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_pos_session_tree">
<field name="name">pos.session.tree.view</field>
<field name="model">pos.session</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Point of Sale Session">
<field name="config_id" />
<field name="name" />
<field name="user_id" />
<field name="start_at" />
<field name="stop_at" />
</tree>
</field>
</record>
<record model="ir.ui.view" id="view_pos_session_search">
<field name="name">pos.session.search.view</field>
<field name="model">pos.session</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Point of Sale Session">
<filter string="Open" domain="[('state', '=', 'opened')]" />
<separator orientation="vertical"/>
<filter string="Today" domain="[('start_at', '>=', time.strftime('%%Y-%%m-%%d 00:00:00'))]" />
<separator orientation="vertical"/>
<field name="config_id" />
<field name="name" />
<field name="user_id" />
<newline />
<group expand="0" string="Group By...">
<filter string="User" icon="terp-personal" domain="[]" context="{'group_by' : 'user_id'}" />
<filter string="Point of Sales" domain="[]" context="{'group_by': 'user_id'}" />
</group>
</search>
</field>
</record>
<record model="ir.actions.act_window" id="action_pos_session">
<field name="name">All Sessions</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">pos.session</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_pos_session_search" />
</record>
<menuitem
parent="menu_point_rep"
action="action_pos_session"
id="menu_pos_session"
sequence="0"
groups="group_pos_manager"/>
<menuitem
parent="menu_point_of_sale"
action="action_pos_session"
id="menu_pos_session_all"
sequence="0"
groups="group_pos_manager"/>
<record id="view_pos_order_filter" model="ir.ui.view">
<field name="name">pos.order.list.select</field>
<field name="model">pos.order</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Sales Order">
<filter icon="terp-document-new" string="New" domain="[('state','=','draft')]"/>
<filter icon="gtk-apply" string="Done" domain="[('state','in',('paid','invoiced','done'))]"/>
<separator orientation="vertical"/>
<filter icon="terp-check" string="Invoiced" domain="[('state','=','invoiced')]"/>
<filter icon="gtk-convert" string="Posted" domain="[('state','=','done')]"/>
<separator orientation="vertical"/>
<field name="name"/>
<field name="user_id"/>
<field name="date_order"/>
<field name="session_id"/>
<newline/>
<group expand="0" string="Group By..." groups="base.group_extended">
<filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
<filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
<filter string="Session" icon="terp-personal" domain="[]" context="{'group_by':'session_id'}"/>
<separator string="" orientation="vertical"/>
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
<separator string="" orientation="vertical"/>
<filter string="Order Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_order'}"/>
</group>
</search>
</field>
</record>
<menuitem action="action_pos_session_opening" parent="menu_point_of_sale" id="menu_pos_session_opening" sequence="0" />
</data>
</openerp>