Browse Source

[IMP] calculations just 12 columns

pull/7/merge
Yanina Aular 12 years ago
parent
commit
50c8471a6a
  1. 154
      account_financial_report/report/parser.py

154
account_financial_report/report/parser.py

@ -440,89 +440,89 @@ class account_balance(report_sxw.rml_parse):
###############################################################
all_account_period = {} #todas las cuentas por periodo
for p_act in range(0,13):
if form['columns'] == 'thirteen':
for p_act in range(0,13):
if p_act == 12:
form['periods'] = period_ids
else:
form['periods'] = [period_ids[p_act]]
if p_act == 12:
form['periods'] = period_ids
else:
form['periods'] = [period_ids[p_act]]
if form['inf_type'] == 'IS':
ctx_to_use = _ctx_end(self.context.copy())
else:
ctx_i = _ctx_init(self.context.copy())
ctx_to_use = _ctx_init(self.context.copy())
account_black_ids = account_obj.search(self.cr, self.uid, ([('id', 'in', [i[0] for i in account_ids]),('type','not in',('view','consolidation'))]))
account_black = account_obj.browse(self.cr, self.uid, account_black_ids, ctx_to_use)
if form['inf_type'] == 'IS':
ctx_to_use = _ctx_end(self.context.copy())
else:
ctx_i = _ctx_init(self.context.copy())
ctx_to_use = _ctx_init(self.context.copy())
account_black_ids = account_obj.search(self.cr, self.uid, ([('id', 'in', [i[0] for i in account_ids]),('type','not in',('view','consolidation'))]))
account_black = account_obj.browse(self.cr, self.uid, account_black_ids, ctx_to_use)
if form['inf_type'] == 'BF':
account_black_init = account_obj.browse(self.cr, self.uid, account_black_ids, ctx_i)
account_not_black_ids = account_obj.search(self.cr, self.uid, ([('id', 'in', [i[0] for i in account_ids]),('type','in',('view','consolidation'))]))
account_not_black = account_obj.browse(self.cr, self.uid, account_not_black_ids, ctx_to_use)
account_not_black.sort(key=lambda x: x.level)
account_not_black.reverse()
account_not_black_ids = [i.id for i in account_not_black]
#~ Negros
dict_black = {}
for i in account_black:
black_data = {}
black_data['obj'] = i
black_data['debit'] = i.debit
black_data['credit'] = i.credit
black_data['balance'] = i.balance
if form['inf_type'] == 'BF':
black_data['balanceinit'] = 0.0
dict_black[i.id] = black_data
if form['inf_type'] == 'BF':
for i in account_black_init:
dict_black[i.id]['balanceinit'] = i.balance
#########################
#~ No negros
dict_not_black = {}
for i in account_not_black:
not_black_data = {}
not_black_data['obj'] = i
not_black_data['debit'] = 0.0
not_black_data['credit'] = 0.0
not_black_data['balance'] = 0.0
account_black_init = account_obj.browse(self.cr, self.uid, account_black_ids, ctx_i)
account_not_black_ids = account_obj.search(self.cr, self.uid, ([('id', 'in', [i[0] for i in account_ids]),('type','in',('view','consolidation'))]))
account_not_black = account_obj.browse(self.cr, self.uid, account_not_black_ids, ctx_to_use)
account_not_black.sort(key=lambda x: x.level)
account_not_black.reverse()
account_not_black_ids = [i.id for i in account_not_black]
#~ Negros
dict_black = {}
for i in account_black:
black_data = {}
black_data['obj'] = i
black_data['debit'] = i.debit
black_data['credit'] = i.credit
black_data['balance'] = i.balance
if form['inf_type'] == 'BF':
black_data['balanceinit'] = 0.0
dict_black[i.id] = black_data
if form['inf_type'] == 'BF':
not_black_data['balanceinit'] = 0.0
dict_not_black[i.id] = not_black_data
###########################
all_account = dict_black.copy() #se hace una copia, porque se modificara
print "##################"
for i in dict_not_black:
print dict_not_black[i].get('obj').name , dict_not_black[i].get('debit')
for acc_id in account_not_black_ids:
print dict_not_black[acc_id].get('obj').name
acc_childs = dict_not_black[acc_id].get('obj').child_id
for child_id in acc_childs:
dict_not_black[acc_id]['debit'] += all_account[child_id.id].get('debit')
dict_not_black[acc_id]['credit'] += all_account[child_id.id].get('credit')
dict_not_black[acc_id]['balance'] += all_account[child_id.id].get('balance')
for i in account_black_init:
dict_black[i.id]['balanceinit'] = i.balance
#########################
#~ No negros
dict_not_black = {}
for i in account_not_black:
not_black_data = {}
not_black_data['obj'] = i
not_black_data['debit'] = 0.0
not_black_data['credit'] = 0.0
not_black_data['balance'] = 0.0
if form['inf_type'] == 'BF':
dict_not_black[acc_id]['balanceinit'] += all_account[child_id.id].get('balanceinit')
all_account[acc_id] = dict_not_black[acc_id]
not_black_data['balanceinit'] = 0.0
dict_not_black[i.id] = not_black_data
###########################
print "##################"
for i in all_account:
print all_account[i].get('obj').name , all_account[i].get('debit')
if p_act == 12:
all_account_period['all'] = all_account
else:
all_account_period[ period_ids[p_act] ] = all_account
all_account = dict_black.copy() #se hace una copia, porque se modificara
print "##################"
for i in dict_not_black:
print dict_not_black[i].get('obj').name , dict_not_black[i].get('debit')
for acc_id in account_not_black_ids:
print dict_not_black[acc_id].get('obj').name
acc_childs = dict_not_black[acc_id].get('obj').child_id
for child_id in acc_childs:
dict_not_black[acc_id]['debit'] += all_account[child_id.id].get('debit')
dict_not_black[acc_id]['credit'] += all_account[child_id.id].get('credit')
dict_not_black[acc_id]['balance'] += all_account[child_id.id].get('balance')
if form['inf_type'] == 'BF':
dict_not_black[acc_id]['balanceinit'] += all_account[child_id.id].get('balanceinit')
all_account[acc_id] = dict_not_black[acc_id]
print "##################"
for i in all_account:
print all_account[i].get('obj').name , all_account[i].get('debit')
if p_act == 12:
all_account_period['all'] = all_account
else:
all_account_period[ period_ids[p_act] ] = all_account
#pdb.set_trace()

Loading…
Cancel
Save