Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff -r 677e57333f98 -r 415c7ccd7f0f __init__.py
- --- a/__init__.py Tue Jun 26 19:11:40 2018 +0200
- +++ b/__init__.py Thu Jul 05 17:51:25 2018 +0200
- @@ -29,6 +29,7 @@
- GeneralLedgerAccountContext,
- GeneralLedgerLine,
- GeneralLedgerLineContext,
- + GeneralLedgerParty,
- BalanceSheetContext,
- BalanceSheetComparisionContext,
- IncomeStatementContext,
- diff -r 677e57333f98 -r 415c7ccd7f0f account.py
- --- a/account.py Tue Jun 26 19:11:40 2018 +0200
- +++ b/account.py Thu Jul 05 17:51:25 2018 +0200
- @@ -7,7 +7,7 @@
- from dateutil.relativedelta import relativedelta
- from sql import Column, Null, Window, Literal
- -from sql.aggregate import Sum, Max
- +from sql.aggregate import Sum, Max, Min
- from sql.conditionals import Coalesce, Case
- from trytond.model import (
- @@ -28,6 +28,7 @@
- 'OpenChartAccountStart', 'OpenChartAccount',
- 'GeneralLedgerAccount', 'GeneralLedgerAccountContext',
- 'GeneralLedgerLine', 'GeneralLedgerLineContext',
- + 'GeneralLedgerParty',
- 'GeneralLedger', 'TrialBalance',
- 'BalanceSheetContext', 'BalanceSheetComparisionContext',
- 'IncomeStatementContext',
- @@ -1285,6 +1286,8 @@
- 'get_account', searcher='search_account')
- lines = fields.One2Many('account.general_ledger.line', 'account', 'Lines',
- readonly=True)
- + parties = fields.One2Many('account.general_ledger.party', 'account', 'Parties',
- + readonly=True)
- general_ledger_balance = fields.Boolean('General Ledger Balance')
- currency_digits = fields.Function(fields.Integer('Currency Digits'),
- 'get_currency_digits')
- @@ -1521,6 +1524,44 @@
- self.end_period = None
- +class GeneralLedgerParty(ModelSQL, ModelView):
- + 'General Ledger Party'
- + __name__ = 'account.general_ledger.party'
- +
- + account = fields.Many2One('account.general_ledger.account', 'Account')
- + party = fields.Many2One('party.party', 'Party')
- +
- + @classmethod
- + def table_query(cls):
- + pool = Pool()
- + Line = pool.get('account.move.line')
- + LedgerAccount = pool.get('account.general_ledger.account')
- + Account = pool.get('account.account')
- + Party = pool.get('party.party')
- + transaction = Transaction()
- + line = Line.__table__()
- + account = Account.__table__()
- + party = Party.__table__()
- +
- + start_period_ids = set(LedgerAccount.get_period_ids('start_balance'))
- + end_period_ids = set(LedgerAccount.get_period_ids('end_balance'))
- + period_ids = list(end_period_ids.difference(start_period_ids))
- + with Transaction().set_context(periods=period_ids):
- + line_query, fiscalyear_ids = Line.query_get(line)
- + return party.join(line, condition=party.id == line.party
- + ).join(account, condition=line.account == account.id
- + ).select(
- + Min(party.id).as_('id'),
- + Max(party.create_uid).as_('create_uid'),
- + Max(party.create_date).as_('create_date'),
- + Max(party.write_uid).as_('write_uid'),
- + Max(party.write_date).as_('write_date'),
- + party.id.as_('party'),
- + account.id.as_('account'),
- + where=line_query,
- + group_by=party.id
- + )
- +
- class GeneralLedgerLine(ModelSQL, ModelView):
- 'General Ledger Line'
- __name__ = 'account.general_ledger.line'
- diff -r 677e57333f98 -r 415c7ccd7f0f account.xml
- --- a/account.xml Tue Jun 26 19:11:40 2018 +0200
- +++ b/account.xml Thu Jul 05 17:51:25 2018 +0200
- @@ -469,9 +469,16 @@
- <record model="ir.ui.view" id="general_ledger_account_view_list">
- <field name="model">account.general_ledger.account</field>
- <field name="type">tree</field>
- + <field name="field_childs">parties</field>
- <field name="name">general_ledger_account_list</field>
- </record>
- + <record model="ir.ui.view" id="general_ledger_party_view_list">
- + <field name="model">account.general_ledger.party</field>
- + <field name="type">tree</field>
- + <field name="name">general_ledger_party_list</field>
- + </record>
- +
- <record model="ir.action.act_window" id="act_general_ledger_account_form">
- <field name="name">General Ledger - Accounts</field>
- <field name="res_model">account.general_ledger.account</field>
- diff -r 677e57333f98 -r 415c7ccd7f0f view/general_ledger_account_list.xml
- --- a/view/general_ledger_account_list.xml Tue Jun 26 19:11:40 2018 +0200
- +++ b/view/general_ledger_account_list.xml Thu Jul 05 17:51:25 2018 +0200
- @@ -8,4 +8,5 @@
- <field name="debit" sum="Debit"/>
- <field name="credit" sum="Credit"/>
- <field name="end_balance" sum="End Balance"/>
- + <field name="parties" tree_invisible="1"/>
- </tree>
- diff -r 677e57333f98 -r 415c7ccd7f0f view/general_ledger_party_list.xml
- --- /dev/null Thu Jan 01 00:00:00 1970 +0000
- +++ b/view/general_ledger_party_list.xml Thu Jul 05 17:51:25 2018 +0200
- @@ -0,0 +1,6 @@
- +<?xml version="1.0"?>
- +<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
- +this repository contains the full copyright notices and license terms. -->
- +<tree>
- + <field name="party" expand="1"/>
- +</tree>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement