def lines(self, period_id, journal_id, *args):
if type(period_id)==type([]):
ids_final = []
+ journal_obj = self.pool.get('account.journal')
+ period_obj = self.pool.get('account.period')
+ journal_period_obj = self.pool.get('account.journal.period')
for journal in journal_id:
+ a = {'journal':journal_obj.browse(self.cr, self.uid, journal)}
for period in period_id:
- ids_journal_period = self.pool.get('account.journal.period').search(self.cr,self.uid, [('journal_id','=',journal),('period_id','=',period)])
+ ids_journal_period = journal_period_obj.search(self.cr,self.uid, [('journal_id','=',journal),('period_id','=',period)])
if ids_journal_period:
self.cr.execute('select a.code, a.name, sum(debit) as debit, sum(credit) as credit from account_move_line l left join account_account a on (l.account_id=a.id) where l.period_id=%s and l.journal_id=%s and l.state<>\'draft\' group by a.id, a.code, a.name, l.journal_id, l.period_id', (period, journal))
res = self.cr.dictfetchall()
- a = {'journal':self.pool.get('account.journal').browse(self.cr, self.uid, journal),'period':self.pool.get('account.period').browse(self.cr, self.uid, period)}
- res[0].update(a)
- ids_final.append(res)
+ if res:
+ a.update({'period':period_obj.browse(self.cr, self.uid, period)})
+ res[0].update(a)
+ ids_final.append(res)
return ids_final
self.cr.execute('select a.code, a.name, sum(debit) as debit, sum(credit) as credit from account_move_line l left join account_account a on (l.account_id=a.id) where l.period_id=%s and l.journal_id=%s and l.state<>\'draft\' group by a.id, a.code, a.name', (period_id, journal_id))
res = self.cr.dictfetchall()
def lines(self, period_id, journal_id=[]):
if type(period_id)==type([]):
ids_final = []
+ journal_peroid_obj = self.pool.get('account.journal.period')
+ period_obj = self.pool.get('account.period')
for journal in journal_id:
for period in period_id:
- ids_journal_period = self.pool.get('account.journal.period').search(self.cr,self.uid, [('journal_id','=',journal),('period_id','=',period)])
+ ids_journal_period = journal_peroid_obj.search(self.cr,self.uid, [('journal_id','=',journal),('period_id','=',period)])
if ids_journal_period:
ids_final.append(ids_journal_period[0])
- data_jour_period = self.pool.get('account.journal.period').browse(self.cr, self.uid, ids_final)
+ data_jour_period = journal_peroid_obj.browse(self.cr, self.uid, ids_final)
lines_data = []
periods = []
for data in data_jour_period:
if not data.period_id.id in periods:
periods.append(data.period_id.id)
for period in periods:
- period_data = self.pool.get('account.period').browse(self.cr, self.uid, period)
+ period_data = period_obj.browse(self.cr, self.uid, period)
self.cr.execute(
'SELECT j.code, j.name, '
'SUM(l.debit) AS debit, SUM(l.credit) AS credit '
'AND l.state<>\'draft\' '
'GROUP BY j.id, j.code, j.name', (period, tuple(journal_id)))
res = self.cr.dictfetchall()
- res[0].update({'period_name':period_data.name})
- res[0].update({'pid':period})
- lines_data.append(res)
+ if res:
+ res[0].update({'period_name':period_data.name,'pid':period})
+ lines_data.append(res)
return lines_data
if not self.journal_ids:
return []
period_id = data['form']['period_id'][0][2]
journal_id=data['form']['journal_id'][0][2]
- if type(period_id)==type([]):
-
+ if type(period_id)==type([]):
ids_final = []
-
+ journal_period_obj = pooler.get_pool(cr.dbname).get('account.journal.period')
+ acct_move_line_obj = pooler.get_pool(cr.dbname).get('account.move.line')
for journal in journal_id:
for period in period_id:
- ids_journal_period = pooler.get_pool(cr.dbname).get('account.journal.period').search(cr,uid, [('journal_id','=',journal),('period_id','=',period)])
+ ids_journal_period = journal_period_obj.search(cr,uid, [('journal_id','=',journal),('period_id','=',period)])
- if ids_journal_period:
- ids_final.append(ids_journal_period)
+ if ids_journal_period and acct_move_line_obj.search(cr,uid, [('journal_id','=',journal),('period_id','=',period),('state','!=','draft')]):
+ ids_final += ids_journal_period
if not ids_final:
raise wizard.except_wizard(_('No Data Available'), _('No records found for your selection!'))
journal_id=data['form']['journal_id'][0][2]
if type(period_id)==type([]):
-
ids_final = []
-
+ acct_journal_period_obj = pooler.get_pool(cr.dbname).get('account.journal.period')
+ acct_move_line_obj = pooler.get_pool(cr.dbname).get('account.move.line')
for journal in journal_id:
for period in period_id:
- ids_journal_period = pooler.get_pool(cr.dbname).get('account.journal.period').search(cr,uid, [('journal_id','=',journal),('period_id','=',period)])
+ ids_journal_period = acct_journal_period_obj.search(cr,uid, [('journal_id','=',journal),('period_id','=',period)])
- if ids_journal_period:
- ids_final.append(ids_journal_period)
+ if ids_journal_period and acct_move_line_obj.search(cr,uid, [('journal_id','=',journal),('period_id','=',period),('state','!=','draft')]):
+ ids_final += ids_journal_period
if not ids_final:
raise wizard.except_wizard(_('No Data Available'), _('No records found for your selection!'))