@ -3,7 +3,7 @@
# Module Writen to OpenERP, Open Source Management Solution
# Copyright (C) OpenERP Venezuela (<http://openerp.com.ve>).
# All Rights Reserved
############### Credits######################################################
# Credits######################################################
# Coded by: Humberto Arocha humberto@openerp.com.ve
# Angelica Barrios angelicaisabelb@gmail.com
# Jordi Esteve <jesteve@zikzakmedia.com>
@ -35,6 +35,8 @@ from report import report_sxw
from tools import config
from tools.translate import _
from osv import osv
class account_balance ( report_sxw . rml_parse ) :
def __init__ ( self , cr , uid , name , context ) :
@ -58,7 +60,6 @@ class account_balance(report_sxw.rml_parse):
} )
self . context = context
def get_fiscalyear_text ( self , form ) :
"""
Returns the fiscal year text used on the report .
@ -66,17 +67,20 @@ class account_balance(report_sxw.rml_parse):
fiscalyear_obj = self . pool . get ( ' account.fiscalyear ' )
fiscalyear = None
if form . get ( ' fiscalyear ' ) :
fiscalyear = fiscalyear_obj . browse ( self . cr , self . uid , form [ ' fiscalyear ' ] )
fiscalyear = fiscalyear_obj . browse (
self . cr , self . uid , form [ ' fiscalyear ' ] )
return fiscalyear . name or fiscalyear . code
else :
fiscalyear = fiscalyear_obj . browse ( self . cr , self . uid , fiscalyear_obj . find ( self . cr , self . uid ) )
fiscalyear = fiscalyear_obj . browse (
self . cr , self . uid , fiscalyear_obj . find ( self . cr , self . uid ) )
return " %s * " % ( fiscalyear . name or fiscalyear . code )
def get_informe_text ( self , form ) :
"""
Returns the header text used on the report .
"""
afr_id = form [ ' afr_id ' ] and type ( form [ ' afr_id ' ] ) in ( list , tuple ) and form [ ' afr_id ' ] [ 0 ] or form [ ' afr_id ' ]
afr_id = form [ ' afr_id ' ] and type ( form [ ' afr_id ' ] ) in (
list , tuple ) and form [ ' afr_id ' ] [ 0 ] or form [ ' afr_id ' ]
if afr_id :
name = self . pool . get ( ' afr ' ) . browse ( self . cr , self . uid , afr_id ) . name
elif form [ ' analytic_ledger ' ] and form [ ' columns ' ] == ' four ' and form [ ' inf_type ' ] == ' BS ' :
@ -93,7 +97,8 @@ class account_balance(report_sxw.rml_parse):
return day , year and month
'''
if form [ ' filter ' ] in [ ' bydate ' , ' all ' ] :
months = [ " Enero " , " Febrero " , " Marzo " , " Abril " , " Mayo " , " Junio " , " Julio " , " Agosto " , " Septiembre " , " Octubre " , " Noviembre " , " Diciembre " ]
months = [ " Enero " , " Febrero " , " Marzo " , " Abril " , " Mayo " , " Junio " ,
" Julio " , " Agosto " , " Septiembre " , " Octubre " , " Noviembre " , " Diciembre " ]
mes = months [ time . strptime ( form [ ' date_to ' ] , " % Y- % m- %d " ) [ 1 ] - 1 ]
ano = time . strptime ( form [ ' date_to ' ] , " % Y- % m- %d " ) [ 0 ]
dia = time . strptime ( form [ ' date_to ' ] , " % Y- % m- %d " ) [ 2 ]
@ -114,18 +119,21 @@ class account_balance(report_sxw.rml_parse):
"""
period_obj = self . pool . get ( ' account.period ' )
periods_str = None
fiscalyear_id = form [ ' fiscalyear ' ] or fiscalyear_obj . find ( self . cr , self . uid )
period_ids = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear_id ) , ( ' special ' , ' = ' , False ) ] )
fiscalyear_id = form [
' fiscalyear ' ] or fiscalyear_obj . find ( self . cr , self . uid )
period_ids = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear_id ) , ( ' special ' , ' = ' , False ) ] )
if form [ ' filter ' ] in [ ' byperiod ' , ' all ' ] :
period_ids = form [ ' periods ' ]
periods_str = ' , ' . join ( [ period . name or period . code for period in period_obj . browse ( self . cr , self . uid , period_ids ) ] )
periods_str = ' , ' . join ( [ period . name or period . code for period in period_obj . browse (
self . cr , self . uid , period_ids ) ] )
dates_str = None
if form [ ' filter ' ] in [ ' bydate ' , ' all ' ] :
dates_str = self . formatLang ( form [ ' date_from ' ] , date = True ) + ' - ' + self . formatLang ( form [ ' date_to ' ] , date = True ) + ' '
dates_str = self . formatLang ( form [
' date_from ' ] , date = True ) + ' - ' + self . formatLang ( form [ ' date_to ' ] , date = True ) + ' '
return { ' periods ' : periods_str , ' date ' : dates_str }
def special_period ( self , periods ) :
period_obj = self . pool . get ( ' account.period ' )
period_brw = period_obj . browse ( self . cr , self . uid , periods )
@ -135,11 +143,13 @@ class account_balance(report_sxw.rml_parse):
return False
def exchange_name ( self , form ) :
self . from_currency_id = self . get_company_currency ( form [ ' company_id ' ] and type ( form [ ' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] )
self . from_currency_id = self . get_company_currency ( form [ ' company_id ' ] and type ( form [
' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] )
if not form [ ' currency_id ' ] :
self . to_currency_id = self . from_currency_id
else :
self . to_currency_id = form [ ' currency_id ' ] and type ( form [ ' currency_id ' ] ) in ( list , tuple ) and form [ ' currency_id ' ] [ 0 ] or form [ ' currency_id ' ]
self . to_currency_id = form [ ' currency_id ' ] and type ( form [ ' currency_id ' ] ) in (
list , tuple ) and form [ ' currency_id ' ] [ 0 ] or form [ ' currency_id ' ]
return self . pool . get ( ' res.currency ' ) . browse ( self . cr , self . uid , self . to_currency_id ) . name
def exchange ( self , from_amount ) :
@ -159,7 +169,6 @@ class account_balance(report_sxw.rml_parse):
else :
return [ brw . id for brw in rc_obj . browse ( self . cr , self . uid , company_id ) . debit_account_ids ]
def _get_analytic_ledger ( self , account , ctx = { } ) :
res = [ ]
@ -168,7 +177,8 @@ class account_balance(report_sxw.rml_parse):
#~ FISCAL, SIN LOS PERIODOS ESPECIALES
periods = ' , ' . join ( [ str ( i ) for i in ctx [ ' periods ' ] ] )
#~ periods = str(tuple(ctx['periods']))
where = """ where aml.period_id in ( %s ) and aa.id = %s and aml.state <> ' draft ' """ % ( periods , account [ ' id ' ] )
where = """ where aml.period_id in ( %s ) and aa.id = %s and aml.state <> ' draft ' """ % (
periods , account [ ' id ' ] )
sql_detalle = """ select aml.id as id, aj.name as diario, aa.name as descripcion,
( select name from res_partner where aml.partner_id = id ) as partner ,
@ -224,7 +234,8 @@ class account_balance(report_sxw.rml_parse):
if aa_brw . child_id and aa_brw . level < level and aa_brw . type != ' consolidation ' :
if not change_sign :
ids2 . append ( [ aa_brw . id , True , False , aa_brw ] )
ids2 + = _get_children_and_consol ( cr , uid , [ x . id for x in aa_brw . child_id ] , level , context , change_sign = change_sign )
ids2 + = _get_children_and_consol ( cr , uid , [
x . id for x in aa_brw . child_id ] , level , context , change_sign = change_sign )
if change_sign :
ids2 . append ( aa_brw . id )
else :
@ -238,7 +249,7 @@ class account_balance(report_sxw.rml_parse):
#############################################################################
# CONTEXT FOR ENDIND BALANCE #
#############################################################################
#######################################################################
def _ctx_end ( ctx ) :
ctx_end = ctx
@ -253,9 +264,11 @@ class account_balance(report_sxw.rml_parse):
if form [ ' filter ' ] in [ ' byperiod ' , ' all ' ] :
if special :
ctx_end [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' id ' , ' in ' , form [ ' periods ' ] or ctx_end . get ( ' periods ' , False ) ) ] )
ctx_end [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' id ' , ' in ' , form [ ' periods ' ] or ctx_end . get ( ' periods ' , False ) ) ] )
else :
ctx_end [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' id ' , ' in ' , form [ ' periods ' ] or ctx_end . get ( ' periods ' , False ) ) , ( ' special ' , ' = ' , False ) ] )
ctx_end [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' id ' , ' in ' , form [
' periods ' ] or ctx_end . get ( ' periods ' , False ) ) , ( ' special ' , ' = ' , False ) ] )
if form [ ' filter ' ] in [ ' bydate ' , ' all ' , ' none ' ] :
ctx_end [ ' date_from ' ] = form [ ' date_from ' ]
@ -266,12 +279,14 @@ class account_balance(report_sxw.rml_parse):
def missing_period ( ctx_init ) :
ctx_init [ ' fiscalyear ' ] = fiscalyear_obj . search ( self . cr , self . uid , [ ( ' date_stop ' , ' < ' , fiscalyear . date_start ) ] , order = ' date_stop ' ) and \
fiscalyear_obj . search ( self . cr , self . uid , [ ( ' date_stop ' , ' < ' , fiscalyear . date_start ) ] , order = ' date_stop ' ) [ - 1 ] or [ ]
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , ctx_init [ ' fiscalyear ' ] ) , ( ' date_stop ' , ' < ' , fiscalyear . date_start ) ] )
fiscalyear_obj . search ( self . cr , self . uid , [ (
' date_stop ' , ' < ' , fiscalyear . date_start ) ] , order = ' date_stop ' ) [ - 1 ] or [ ]
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , ctx_init [ ' fiscalyear ' ] ) , ( ' date_stop ' , ' < ' , fiscalyear . date_start ) ] )
return ctx_init
#############################################################################
# CONTEXT FOR INITIAL BALANCE #
#############################################################################
#######################################################################
def _ctx_init ( ctx ) :
ctx_init = self . context . copy ( )
@ -282,36 +297,45 @@ class account_balance(report_sxw.rml_parse):
ctx_init [ ' periods ' ] = form [ ' periods ' ]
if not ctx_init [ ' periods ' ] :
ctx_init = missing_period ( ctx_init . copy ( ) )
date_start = min ( [ period . date_start for period in period_obj . browse ( self . cr , self . uid , ctx_init [ ' periods ' ] ) ] )
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' date_stop ' , ' <= ' , date_start ) ] )
date_start = min ( [ period . date_start for period in period_obj . browse (
self . cr , self . uid , ctx_init [ ' periods ' ] ) ] )
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' date_stop ' , ' <= ' , date_start ) ] )
elif form [ ' filter ' ] in [ ' bydate ' ] :
ctx_init [ ' date_from ' ] = fiscalyear . date_start
ctx_init [ ' date_to ' ] = form [ ' date_from ' ]
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' date_stop ' , ' <= ' , ctx_init [ ' date_to ' ] ) ] )
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' date_stop ' , ' <= ' , ctx_init [ ' date_to ' ] ) ] )
elif form [ ' filter ' ] == ' none ' :
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , True ) ] )
date_start = min ( [ period . date_start for period in period_obj . browse ( self . cr , self . uid , ctx_init [ ' periods ' ] ) ] )
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' date_start ' , ' <= ' , date_start ) , ( ' special ' , ' = ' , True ) ] )
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , True ) ] )
date_start = min ( [ period . date_start for period in period_obj . browse (
self . cr , self . uid , ctx_init [ ' periods ' ] ) ] )
ctx_init [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' date_start ' , ' <= ' , date_start ) , ( ' special ' , ' = ' , True ) ] )
return ctx_init . copy ( )
def z ( n ) :
return abs ( n ) < 0.005 and 0.0 or n
self . from_currency_id = self . get_company_currency ( form [ ' company_id ' ] and type ( form [ ' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] )
self . from_currency_id = self . get_company_currency ( form [ ' company_id ' ] and type ( form [
' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] )
if not form [ ' currency_id ' ] :
self . to_currency_id = self . from_currency_id
else :
self . to_currency_id = form [ ' currency_id ' ] and type ( form [ ' currency_id ' ] ) in ( list , tuple ) and form [ ' currency_id ' ] [ 0 ] or form [ ' currency_id ' ]
self . to_currency_id = form [ ' currency_id ' ] and type ( form [ ' currency_id ' ] ) in (
list , tuple ) and form [ ' currency_id ' ] [ 0 ] or form [ ' currency_id ' ]
if form . has_key ( ' account_list ' ) and form [ ' account_list ' ] :
if ' account_list ' in form and form [ ' account_list ' ] :
account_ids = form [ ' account_list ' ]
del form [ ' account_list ' ]
credit_account_ids = self . get_company_accounts ( form [ ' company_id ' ] and type ( form [ ' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] , ' credit ' )
credit_account_ids = self . get_company_accounts ( form [ ' company_id ' ] and type ( form [
' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] , ' credit ' )
debit_account_ids = self . get_company_accounts ( form [ ' company_id ' ] and type ( form [ ' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] , ' debit ' )
debit_account_ids = self . get_company_accounts ( form [ ' company_id ' ] and type ( form [
' company_id ' ] ) in ( list , tuple ) and form [ ' company_id ' ] [ 0 ] or form [ ' company_id ' ] , ' debit ' )
if form . get ( ' fiscalyear ' ) :
if type ( form . get ( ' fiscalyear ' ) ) in ( list , tuple ) :
@ -324,13 +348,17 @@ class account_balance(report_sxw.rml_parse):
# Get the accounts #
################################################################
account_ids = _get_children_and_consol ( self . cr , self . uid , account_ids , form [ ' display_account_level ' ] and form [ ' display_account_level ' ] or 100 , self . context )
account_ids = _get_children_and_consol ( self . cr , self . uid , account_ids , form [
' display_account_level ' ] and form [ ' display_account_level ' ] or 100 , self . context )
credit_account_ids = _get_children_and_consol ( self . cr , self . uid , credit_account_ids , 100 , self . context , change_sign = True )
credit_account_ids = _get_children_and_consol (
self . cr , self . uid , credit_account_ids , 100 , self . context , change_sign = True )
debit_account_ids = _get_children_and_consol ( self . cr , self . uid , debit_account_ids , 100 , self . context , change_sign = True )
debit_account_ids = _get_children_and_consol (
self . cr , self . uid , debit_account_ids , 100 , self . context , change_sign = True )
credit_account_ids = list ( set ( credit_account_ids ) - set ( debit_account_ids ) )
credit_account_ids = list ( set (
credit_account_ids ) - set ( debit_account_ids ) )
#
# Generate the report lines (checking each account)
@ -339,12 +367,15 @@ class account_balance(report_sxw.rml_parse):
tot_check = False
if not form [ ' periods ' ] :
form [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , False ) ] , order = ' date_start asc ' )
form [ ' periods ' ] = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , False ) ] , order = ' date_start asc ' )
if not form [ ' periods ' ] :
raise osv . except_osv ( _ ( ' UserError ' ) , _ ( ' The Selected Fiscal Year Does not have Regular Periods ' ) )
raise osv . except_osv ( _ ( ' UserError ' ) , _ (
' The Selected Fiscal Year Does not have Regular Periods ' ) )
if form [ ' columns ' ] == ' qtr ' :
period_ids = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , False ) ] , order = ' date_start asc ' )
period_ids = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , False ) ] , order = ' date_start asc ' )
a = 0
l = [ ]
p = [ ]
@ -361,7 +392,8 @@ class account_balance(report_sxw.rml_parse):
#~ period_ids = p
elif form [ ' columns ' ] == ' thirteen ' :
period_ids = period_obj . search ( self . cr , self . uid , [ ( ' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , False ) ] , order = ' date_start asc ' )
period_ids = period_obj . search ( self . cr , self . uid , [ (
' fiscalyear_id ' , ' = ' , fiscalyear . id ) , ( ' special ' , ' = ' , False ) ] , order = ' date_start asc ' )
if form [ ' columns ' ] == ' qtr ' :
tot_bal1 = 0.0
@ -400,7 +432,6 @@ class account_balance(report_sxw.rml_parse):
result_acc = [ ]
tot = { }
for aa_id in account_ids :
id = aa_id [ 0 ]
@ -426,20 +457,24 @@ class account_balance(report_sxw.rml_parse):
form [ ' periods ' ] = p_id
ctx_init = _ctx_init ( self . context . copy ( ) )
aa_brw_init = account_obj . browse ( self . cr , self . uid , id , ctx_init )
aa_brw_init = account_obj . browse (
self . cr , self . uid , id , ctx_init )
ctx_end = _ctx_end ( self . context . copy ( ) )
aa_brw_end = account_obj . browse ( self . cr , self . uid , id , ctx_end )
aa_brw_end = account_obj . browse (
self . cr , self . uid , id , ctx_end )
if form [ ' inf_type ' ] == ' IS ' :
d , c , b = map ( z , [ aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
d , c , b = map ( z , [
aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
res . update ( {
' dbr %s ' % pn : self . exchange ( d ) ,
' cdr %s ' % pn : self . exchange ( c ) ,
' bal %s ' % pn : self . exchange ( b ) ,
} )
else :
i , d , c = map ( z , [ aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
i , d , c = map ( z , [
aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
b = z ( i + d - c )
res . update ( {
' dbr %s ' % pn : self . exchange ( d ) ,
@ -452,20 +487,24 @@ class account_balance(report_sxw.rml_parse):
form [ ' periods ' ] = period_ids
ctx_init = _ctx_init ( self . context . copy ( ) )
aa_brw_init = account_obj . browse ( self . cr , self . uid , id , ctx_init )
aa_brw_init = account_obj . browse (
self . cr , self . uid , id , ctx_init )
ctx_end = _ctx_end ( self . context . copy ( ) )
aa_brw_end = account_obj . browse ( self . cr , self . uid , id , ctx_end )
aa_brw_end = account_obj . browse (
self . cr , self . uid , id , ctx_end )
if form [ ' inf_type ' ] == ' IS ' :
d , c , b = map ( z , [ aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
d , c , b = map ( z , [
aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
res . update ( {
' dbr5 ' : self . exchange ( d ) ,
' cdr5 ' : self . exchange ( c ) ,
' bal5 ' : self . exchange ( b ) ,
} )
else :
i , d , c = map ( z , [ aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
i , d , c = map ( z , [
aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
b = z ( i + d - c )
res . update ( {
' dbr5 ' : self . exchange ( d ) ,
@ -479,20 +518,24 @@ class account_balance(report_sxw.rml_parse):
form [ ' periods ' ] = [ p_id ]
ctx_init = _ctx_init ( self . context . copy ( ) )
aa_brw_init = account_obj . browse ( self . cr , self . uid , id , ctx_init )
aa_brw_init = account_obj . browse (
self . cr , self . uid , id , ctx_init )
ctx_end = _ctx_end ( self . context . copy ( ) )
aa_brw_end = account_obj . browse ( self . cr , self . uid , id , ctx_end )
aa_brw_end = account_obj . browse (
self . cr , self . uid , id , ctx_end )
if form [ ' inf_type ' ] == ' IS ' :
d , c , b = map ( z , [ aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
d , c , b = map ( z , [
aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
res . update ( {
' dbr %s ' % pn : self . exchange ( d ) ,
' cdr %s ' % pn : self . exchange ( c ) ,
' bal %s ' % pn : self . exchange ( b ) ,
} )
else :
i , d , c = map ( z , [ aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
i , d , c = map ( z , [
aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
b = z ( i + d - c )
res . update ( {
' dbr %s ' % pn : self . exchange ( d ) ,
@ -505,20 +548,24 @@ class account_balance(report_sxw.rml_parse):
form [ ' periods ' ] = period_ids
ctx_init = _ctx_init ( self . context . copy ( ) )
aa_brw_init = account_obj . browse ( self . cr , self . uid , id , ctx_init )
aa_brw_init = account_obj . browse (
self . cr , self . uid , id , ctx_init )
ctx_end = _ctx_end ( self . context . copy ( ) )
aa_brw_end = account_obj . browse ( self . cr , self . uid , id , ctx_end )
aa_brw_end = account_obj . browse (
self . cr , self . uid , id , ctx_end )
if form [ ' inf_type ' ] == ' IS ' :
d , c , b = map ( z , [ aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
d , c , b = map ( z , [
aa_brw_end . debit , aa_brw_end . credit , aa_brw_end . balance ] )
res . update ( {
' dbr13 ' : self . exchange ( d ) ,
' cdr13 ' : self . exchange ( c ) ,
' bal13 ' : self . exchange ( b ) ,
} )
else :
i , d , c = map ( z , [ aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
i , d , c = map ( z , [
aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
b = z ( i + d - c )
res . update ( {
' dbr13 ' : self . exchange ( d ) ,
@ -528,10 +575,13 @@ class account_balance(report_sxw.rml_parse):
else :
aa_brw_init = account_obj . browse ( self . cr , self . uid , id , ctx_init )
aa_brw_end = account_obj . browse ( self . cr , self . uid , id , ctx_end )
aa_brw_init = account_obj . browse (
self . cr , self . uid , id , ctx_init )
aa_brw_end = account_obj . browse (
self . cr , self . uid , id , ctx_end )
i , d , c = map ( z , [ aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
i , d , c = map ( z , [
aa_brw_init . balance , aa_brw_end . debit , aa_brw_end . credit ] )
b = z ( i + d - c )
res . update ( {
' balanceinit ' : self . exchange ( i ) ,
@ -559,24 +609,30 @@ class account_balance(report_sxw.rml_parse):
if form [ ' display_account ' ] == ' mov ' and aa_id [ 3 ] . parent_id :
# Include accounts with movements
for x in range ( pn - 1 ) :
to_test . append ( res . get ( ' dbr %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get ( ' cdr %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get (
' dbr %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get (
' cdr %s ' % x , 0.0 ) > = 0.005 and True or False )
if any ( to_test ) :
to_include = True
elif form [ ' display_account ' ] == ' bal ' and aa_id [ 3 ] . parent_id :
# Include accounts with balance
for x in range ( pn - 1 ) :
to_test . append ( res . get ( ' bal %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get (
' bal %s ' % x , 0.0 ) > = 0.005 and True or False )
if any ( to_test ) :
to_include = True
elif form [ ' display_account ' ] == ' bal_mov ' and aa_id [ 3 ] . parent_id :
# Include accounts with balance or movements
for x in range ( pn - 1 ) :
to_test . append ( res . get ( ' bal %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get ( ' dbr %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get ( ' cdr %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get (
' bal %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get (
' dbr %s ' % x , 0.0 ) > = 0.005 and True or False )
to_test . append ( res . get (
' cdr %s ' % x , 0.0 ) > = 0.005 and True or False )
if any ( to_test ) :
to_include = True
else :
@ -607,7 +663,6 @@ class account_balance(report_sxw.rml_parse):
else :
res [ ' mayor ' ] = [ ]
if to_include :
result_acc . append ( res )
#