38
39
'journal_id' : fields.many2one(string='Journal', obj='account.journal'),
39
40
'partner_id' : fields.many2one(string='Partner', obj='res.partner'),
40
41
'period_id' : fields.many2one(string='Period', obj='account.period'),
41
'debit' : fields.float(string='Out'),
42
'credit' : fields.float(string='In'),
42
'debit' : fields.float(string='In'),
43
'credit' : fields.float(string='Out'),
44
'currency_id' : fields.many2one(string='Secondary Currency', obj='res.currency'),
45
'debit_amount_currency' : fields.float(string='In'),
46
'credit_amount_currency' : fields.float(string='Out'),
43
47
'state' : fields.selection(string='State', selection=[('draft','Unposted'),('posted','Posted')]),
61
65
B.period_id AS period_id,
63
67
A.credit AS credit,
65
FROM account_move_line AS A
66
JOIN account_move AS B ON A.move_id = B.id
67
JOIN account_journal C ON B.journal_id = C.id
68
JOIN account_account D ON A.account_id = D.id
69
WHERE (C.type = 'bank') AND
70
(D.type = 'other' OR D.type = 'receivable' or D.type = 'payable')
69
A.currency_id AS currency_id,
71
WHEN A.amount_currency > 0 THEN A.amount_currency
73
END AS debit_amount_currency,
75
WHEN A.amount_currency < 0 THEN ABS(A.amount_currency)
77
END AS credit_amount_currency
78
FROM account_move_line AS A
79
JOIN account_move AS B ON A.move_id = B.id
80
JOIN account_journal C ON B.journal_id = C.id
81
JOIN account_account D ON A.account_id = D.id
88
WHERE module = 'l10n_id_account_type' AND
89
model = 'account.account.type' AND
90
name = 'accountType_bank'
91
) AS E ON D.user_type = E.res_id
92
WHERE (C.type = 'bank')
77
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
78
obj_user = self.pool.get('res.users')
79
obj_journal = self.pool.get('account.journal')
80
obj_year = self.pool.get('account.fiscalyear')
82
user = obj_user.browse(cr, uid, [uid])[0]
84
res = super(query_bank_in_out, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar, submenu)
86
if view_type == 'search':
87
doc = etree.XML(res['arch'])
89
for node in doc.xpath("//group[@name='group_1']"):
90
criteria = [('type','=','bank'),('company_id','=',user.company_id.id)]
91
journal_ids = obj_journal.search(cr, uid, criteria)
94
for journal in obj_journal.browse(cr, uid, journal_ids):
95
etree.SubElement(node, 'filter', string=journal.name, domain="[('journal_id','=',%s)]" % (journal.id))
98
for node in doc.xpath("//group[@name='group_2']"):
99
year_ids = obj_year.find(cr, uid)
101
fiscalyear = obj_year.browse(cr, uid, [year_ids])[0]
103
if fiscalyear.period_ids:
104
for period in fiscalyear.period_ids:
105
etree.SubElement(node, 'filter', string=period.name, domain="[('period_id','=',%s)]" % (period.id))
107
res['arch'] = etree.tostring(doc)