[IMP] Consolidating Accounts now are able to be summarize with AFR
parent
14af492ba1
commit
76b4ec45e6
|
@ -440,7 +440,22 @@ class account_balance(report_sxw.rml_parse):
|
|||
('view', 'consolidation'))]))
|
||||
|
||||
account_not_black_ids = account_obj.search(self.cr, self.uid, ([('id', 'in', [
|
||||
i[0] for i in all_account_ids]), ('type', 'in', ('view', 'consolidation'))]))
|
||||
i[0] for i in all_account_ids]),('type', '=', 'view')]))
|
||||
|
||||
acc_cons_ids = account_obj.search(self.cr, self.uid, ([('id', 'in', [
|
||||
i[0] for i in all_account_ids]), ('type', 'in', ('consolidation',))]))
|
||||
|
||||
account_consol_ids = account_obj._get_children_and_consol(
|
||||
self.cr, self.uid, acc_cons_ids)
|
||||
|
||||
account_black_ids += account_obj.search(self.cr, self.uid, (
|
||||
[('id', 'in', account_consol_ids ),
|
||||
('type', 'not in',
|
||||
('view', 'consolidation'))]))
|
||||
|
||||
c_account_not_black_ids = account_obj.search(self.cr, self.uid, ([
|
||||
('id', 'in', account_consol_ids),
|
||||
('type', '=', 'view')]))
|
||||
|
||||
# This could be done quickly with a sql sentence
|
||||
account_not_black = account_obj.browse(
|
||||
|
@ -449,6 +464,21 @@ class account_balance(report_sxw.rml_parse):
|
|||
account_not_black.reverse()
|
||||
account_not_black_ids = [i.id for i in account_not_black]
|
||||
|
||||
c_account_not_black = account_obj.browse(
|
||||
self.cr, self.uid, c_account_not_black_ids)
|
||||
c_account_not_black.sort(key=lambda x: x.level)
|
||||
c_account_not_black.reverse()
|
||||
c_account_not_black_ids = [i.id for i in c_account_not_black]
|
||||
|
||||
acc_cons_brw = account_obj.browse(
|
||||
self.cr, self.uid, acc_cons_ids)
|
||||
acc_cons_brw.sort(key=lambda x: x.level)
|
||||
acc_cons_brw.reverse()
|
||||
acc_cons_ids = [i.id for i in acc_cons_brw]
|
||||
|
||||
account_not_black_ids = c_account_not_black_ids + acc_cons_ids + account_not_black_ids
|
||||
account_not_black = c_account_not_black + acc_cons_brw + account_not_black
|
||||
|
||||
all_account_period = {} # All accounts per period
|
||||
|
||||
# Iteration limit depending on the number of columns
|
||||
|
@ -514,7 +544,9 @@ class account_balance(report_sxw.rml_parse):
|
|||
) #It makes a copy because they modify
|
||||
|
||||
for acc_id in account_not_black_ids:
|
||||
acc_childs = dict_not_black.get(acc_id).get('obj').child_id
|
||||
acc_childs = dict_not_black.get(acc_id).get('obj').type=='view' \
|
||||
and dict_not_black.get(acc_id).get('obj').child_id \
|
||||
or dict_not_black.get(acc_id).get('obj').child_consol_ids
|
||||
for child_id in acc_childs:
|
||||
dict_not_black.get(acc_id)['debit'] += all_account.get(
|
||||
child_id.id).get('debit')
|
||||
|
|
Loading…
Reference in New Issue