2
from report import report_sxw
5
class entry(report_sxw.rml_parse):
7
def __init__(self, cr, uid, name, context):
8
super(entry, self).__init__(cr, uid, name, context)
9
user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid)
11
self.start_balance = None;
12
self.localcontext.update({
15
'get_start_balance' : self._get_start_balance,
16
'get_sums' : self._get_sums,
19
def preprocess(self, objects, data, ids):
20
super(entry, self).preprocess(objects, data, ids)
22
self.localcontext['data'] = data
23
#Add all entries between the 2 dates
24
start = data['form']['date_start']
25
stop = data['form']['date_stop']
26
entry_obj = self.pool.get('pos.cash_entry')
27
result = entry_obj.search(self.cr,self.uid,[('date','>=',start),('date','<=',stop)])
28
entries = entry_obj.browse(self.cr,self.uid,result)
29
self.localcontext['entries'] = entries
31
def _get_start_balance(self):
32
start = self.localcontext['data']['form']['date_start']
33
entry_obj = self.pool.get('pos.cash_entry');
34
result = entry_obj.search(self.cr,self.uid,[('date','<',start)])
35
entries = entry_obj.browse(self.cr,self.uid,result)
39
sum_debit = sum_debit + e['debit']
40
sum_credit = sum_credit + e['credit']
41
self.start_balance = sum_credit - sum_debit
42
return sum_credit-sum_debit
45
#returns [sum credit,sum debit,cumulative total,new balance]
49
start = self.localcontext['data']['form']['date_start']
50
stop = self.localcontext['data']['form']['date_stop']
51
entry_obj = self.pool.get('pos.cash_entry');
52
result = entry_obj.search(self.cr,self.uid,[('date','>=',start),('date','<=',stop)])
53
entries = entry_obj.browse(self.cr,self.uid,result)
55
sum_debit = sum_debit + e['debit']
56
sum_credit = sum_credit + e['credit']
58
sum_credit = self.sums[0];
59
sum_debit = self.sums[1];
60
return [sum_credit,sum_debit,self.start_balance+sum_credit,self.start_balance+sum_credit-sum_debit]
63
report_sxw.report_sxw('report.pos.entry', 'pos.cash_entry', 'addons/point_of_sale/report/pos_entry.rml', parser=entry, header=False)