bank_statement_reconciliation/views/bank_statement_line_views.xml
2025-10-27 14:26:19 +07:00

105 lines
4.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Action to open the bank statement lines view -->
<record id="action_bank_statement_lines" model="ir.actions.act_window">
<field name="name">Bank Statement Lines</field>
<field name="res_model">account.bank.statement.line</field>
<field name="view_mode">tree,form</field>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Select a bank journal to view its statement lines
</p>
</field>
</record>
<!-- Server action for reconciliation -->
<record id="action_reconcile_bank_lines" model="ir.actions.server">
<field name="name">Reconcile Selected Lines</field>
<field name="model_id" ref="account.model_account_bank_statement_line"/>
<field name="binding_model_id" ref="account.model_account_bank_statement_line"/>
<field name="state">code</field>
<field name="code">
action = {
'name': 'Select Journal Entry to Reconcile',
'type': 'ir.actions.act_window',
'res_model': 'bank.reconcile.wizard',
'view_mode': 'form',
'target': 'new',
'context': {
'default_bank_line_ids': env.context.get('active_ids'),
}
}
</field>
</record>
<!-- Tree view for bank statement lines -->
<record id="view_account_bank_statement_line_tree" model="ir.ui.view">
<field name="name">account.bank.statement.line.tree</field>
<field name="model">account.bank.statement.line</field>
<field name="arch" type="xml">
<tree string="Bank Statement Lines" create="0" delete="0" decoration-danger="amount &lt; 0" decoration-muted="move_id and 'Reconciliation:' in move_id.name">
<field name="date"/>
<field name="name"/>
<field name="partner_id"/>
<field name="amount"/>
<field name="journal_id"/>
<field name="statement_id"/>
<field name="move_id"/>
</tree>
</field>
</record>
<!-- Form view for bank statement lines -->
<record id="view_account_bank_statement_line_form" model="ir.ui.view">
<field name="name">account.bank.statement.line.form</field>
<field name="model">account.bank.statement.line</field>
<field name="arch" type="xml">
<form string="Bank Statement Line">
<header>
<button name="action_reconcile_selected_lines" type="object" string="Reconcile" class="btn-primary" invisible="move_id and 'Reconciliation:' in move_id.name"/>
</header>
<sheet>
<group>
<group>
<field name="date"/>
<field name="name"/>
<field name="ref"/>
</group>
<group>
<field name="amount"/>
<field name="partner_id"/>
<field name="journal_id" readonly="1"/>
</group>
</group>
<group>
<field name="statement_id"/>
<field name="move_id"/>
<field name="company_id" invisible="1"/>
</group>
</sheet>
</form>
</field>
</record>
<!-- Search view for bank statement lines -->
<record id="view_account_bank_statement_line_search" model="ir.ui.view">
<field name="name">account.bank.statement.line.search</field>
<field name="model">account.bank.statement.line</field>
<field name="arch" type="xml">
<search>
<field name="name"/>
<field name="partner_id"/>
<field name="journal_id"/>
<field name="date"/>
<filter name="positive_amount" string="Income" domain="[('amount', '&gt;', 0)]"/>
<filter name="negative_amount" string="Expense" domain="[('amount', '&lt;', 0)]"/>
<filter name="hide_reconciled" string="Hide Reconciled" domain="[('move_id', 'not ilike', '%Reconciliation:%')]" help="Hide lines that have been reconciled"/>
<filter name="show_all" string="Show All" domain="[]" help="Show all lines including reconciled"/>
<group expand="0" string="Group By">
<filter name="group_by_journal" string="Journal" context="{'group_by': 'journal_id'}"/>
<filter name="group_by_date" string="Date" context="{'group_by': 'date'}"/>
</group>
</search>
</field>
</record>
</odoo>