Merge lp:~matjaz-6/openerpsl/openerpsl_04_29 into lp:openerpsl/7.0

Proposed by Matjaz Kalic
Status: Merged
Merged at revision: 411
Proposed branch: lp:~matjaz-6/openerpsl/openerpsl_04_29
Merge into: lp:openerpsl/7.0
Diff against target: 452 lines (+141/-106)
3 files modified
accounting_reports/account_account.py (+41/-9)
accounting_reports/report/account_balance.py (+4/-1)
accounting_reports/report/account_balance1.rml (+96/-96)
To merge this branch: bzr merge lp:~matjaz-6/openerpsl/openerpsl_04_29
Reviewer Review Type Date Requested Status
Mentis Pending
Review via email: mp+219790@code.launchpad.net

Description of the change

[FIX] accounting_reports (initial balance)

To post a comment you must log in.
411. By Dušan Laznik (Mentis)

[FIX] accounting_reports (initial balance)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'accounting_reports/account_account.py'
2--- accounting_reports/account_account.py 2013-09-02 10:37:48 +0000
3+++ accounting_reports/account_account.py 2014-05-16 08:09:36 +0000
4@@ -54,7 +54,15 @@
5 res = {}
6 null_result = dict((fn, 0.0) for fn in field_names)
7 if children_and_consolidated:
8+ context['if_date_calc_initial_bal'] = False
9 aml_query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
10+
11+ if context.has_key('date_from'):
12+ last_pos = aml_query.rfind('AND l.')
13+ tmp_query = aml_query[:last_pos] #odstranimo (SELECT id FROM account_move WHERE date < \'%s\')'
14+ aml_query = tmp_query + """AND l.move_id IN (
15+ SELECT AM.id FROM account_move AM LEFT JOIN account_period AP ON AM.period_id = AP.id
16+ WHERE (AM.date < \'{0}\' AND AP.special = False) or AP.special = True)""".format(context['date_from'])
17
18 wheres = [""]
19 if query.strip():
20@@ -140,15 +148,22 @@
21 if context.has_key('date_from'):
22 ctx['initial_bal'] = True
23 elif context.has_key('period_from'):
24- fiscalperiod_obj = self.pool.get('account.period')
25-
26- end_period_id = fiscalperiod_obj.browse(cr, uid, [ctx['period_from']], context=ctx)[0]
27- ctx['period_to'] = fiscalperiod_obj.search(cr, uid, [('date_start','<',end_period_id.date_start)], order='date_start DESC', limit=1)[0]
28-
29- period_company_id = fiscalperiod_obj.browse(cr, uid, ctx['period_from'], context=ctx).company_id.id
30- first_period = fiscalperiod_obj.search(cr, uid, [('company_id', '=', period_company_id)], order='date_start', limit=1)[0]
31- ctx['period_from'] = first_period
32-
33+ account_period_obj = self.pool.get('account.period')
34+ account_period_start_data = account_period_obj.browse(cr, uid, [ctx['period_from']], context=ctx)[0]
35+
36+ #period_company_id = account_period_obj.browse(cr, uid, ctx['period_from'], context=ctx).company_id.id
37+ #end_period_id = account_period_obj.browse(cr, uid, [ctx['period_from']], context=ctx)[0]
38+
39+ temp_from = account_period_obj.search(cr, uid, [('company_id', '=', account_period_start_data.company_id.id),
40+ ('fiscalyear_id','=',account_period_start_data.fiscalyear_id.id)],
41+ order='id', limit=1)[0]
42+
43+ temp_to = account_period_obj.search(cr, uid, [('date_start','<',account_period_start_data.date_start),
44+ ('company_id','=',account_period_start_data.company_id.id),
45+ ('fiscalyear_id','=',account_period_start_data.fiscalyear_id.id)],
46+ order='date_start DESC', limit=1)[0]
47+ ctx['period_from'] = temp_from
48+ ctx['period_to'] = temp_to
49
50
51 #raise 'napaka'
52@@ -162,3 +177,20 @@
53 }
54
55 account_account()
56+
57+class account_move_line(osv.osv):
58+ _inherit = "account.move.line"
59+
60+ def _query_get(self, cr, uid, obj='l', context=None):
61+ res = super(account_move_line, self)._query_get(cr, uid, obj='l', context=context)
62+
63+ if context.has_key('if_date_calc_initial_bal') and context['if_date_calc_initial_bal']: #preoblikujemo v primeru datuma in izracuna prometa
64+ last_pos = res.rfind('AND l.')
65+ tmp_query = res[:last_pos] #odstranimo (SELECT id FROM account_move WHERE date < \'%s\')'
66+ res = tmp_query + """AND l.move_id IN
67+ (SELECT AM.id FROM account_move AM LEFT JOIN account_period AP ON AM.period_id = AP.id
68+ WHERE (AM.date >= \'{0}\' AND AM.date <= \'{1}\' AND AP.special = False))
69+ """.format(context['date_from'],context['date_to'])
70+
71+ return res
72+account_move_line()
73\ No newline at end of file
74
75=== modified file 'accounting_reports/report/account_balance.py'
76--- accounting_reports/report/account_balance.py 2013-08-27 10:18:22 +0000
77+++ accounting_reports/report/account_balance.py 2014-05-16 08:09:36 +0000
78@@ -150,7 +150,8 @@
79 self.sum_BU += account_rec['debit_open'] - account_rec['credit_open'] + account_rec['debit'] - account_rec['credit']
80
81 if account_rec['child_id']:
82- for child in account_rec['child_id']:
83+ sorted_list = sorted(account_rec['child_id'])
84+ for child in sorted_list:
85 _process_child(accounts,disp_acc,child)
86
87 obj_account = self.pool.get('account.account')
88@@ -178,8 +179,10 @@
89 ctx['state'] = form['target_move']
90 parents = ids
91 child_ids = obj_account._get_children_and_consol(self.cr, self.uid, ids, ctx)
92+
93 if child_ids:
94 ids = child_ids
95+ ctx['if_date_calc_initial_bal'] = True
96 accounts = obj_account.read(self.cr, self.uid, ids, ['type','code','name','debit','credit','balance','credit_open','debit_open','parent_id','level','child_id'], ctx)
97
98 for parent in parents:
99
100=== modified file 'accounting_reports/report/account_balance1.rml'
101--- accounting_reports/report/account_balance1.rml 2013-08-27 10:18:22 +0000
102+++ accounting_reports/report/account_balance1.rml 2014-05-16 08:09:36 +0000
103@@ -240,17 +240,17 @@
104 <paraStyle name="P11" fontName="Helvetica" fontSize="2.0" leading="3" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
105 <paraStyle name="P12" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
106 <paraStyle name="P13" fontName="Helvetica-Bold" fontSize="6.0" leading="8" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
107- <paraStyle name="P14" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
108- <paraStyle name="P15" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
109- <paraStyle name="P16" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
110- <paraStyle name="P17" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
111- <paraStyle name="P18" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
112- <paraStyle name="P19" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
113- <paraStyle name="P20" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
114- <paraStyle name="P21" fontName="Helvetica"/>
115- <paraStyle name="P22" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
116- <paraStyle name="P23" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
117- <paraStyle name="P24" fontName="Helvetica-Bold" fontSize="6.0" leading="8" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
118+ <paraStyle name="P14" fontName="Helvetica-Bold" fontSize="6.0" leading="8" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
119+ <paraStyle name="P15" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
120+ <paraStyle name="P16" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
121+ <paraStyle name="P17" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
122+ <paraStyle name="P18" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
123+ <paraStyle name="P19" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
124+ <paraStyle name="P20" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
125+ <paraStyle name="P21" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
126+ <paraStyle name="P22" fontName="Helvetica"/>
127+ <paraStyle name="P23" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
128+ <paraStyle name="P24" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
129 <paraStyle name="Standard" fontName="Helvetica"/>
130 <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
131 <paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
132@@ -277,7 +277,7 @@
133 <blockTable colWidths="559.0" style="Table_Tilte_Table">
134 <tr>
135 <td>
136- <para style="P12">Bruto bilanca – z otvoritvijo</para>
137+ <para style="P12">Bruto bilanca – z začetnim stanjem</para>
138 </td>
139 </tr>
140 </blockTable>
141@@ -375,18 +375,18 @@
142 <blockTable colWidths="213.0,112.0,121.0,113.0" style="Table_otvoritev_promet_saldo_1">
143 <tr>
144 <td>
145- <para style="P16">
146+ <para style="P17">
147 <font color="white"> </font>
148 </para>
149 </td>
150 <td>
151- <para style="P16">Otvoritev</para>
152- </td>
153- <td>
154- <para style="P16">Promet</para>
155- </td>
156- <td>
157- <para style="P16">Saldo</para>
158+ <para style="P17">Otvoritev</para>
159+ </td>
160+ <td>
161+ <para style="P17">Promet</para>
162+ </td>
163+ <td>
164+ <para style="P17">Saldo</para>
165 </td>
166 </tr>
167 </blockTable>
168@@ -399,22 +399,22 @@
169 <para style="P7">Konto</para>
170 </td>
171 <td>
172- <para style="P23">V breme</para>
173- </td>
174- <td>
175- <para style="P23">Dobro</para>
176- </td>
177- <td>
178- <para style="P23">V breme</para>
179- </td>
180- <td>
181- <para style="P23">Dobro</para>
182- </td>
183- <td>
184- <para style="P23">V breme</para>
185- </td>
186- <td>
187- <para style="P23">Dobro</para>
188+ <para style="P24">V breme</para>
189+ </td>
190+ <td>
191+ <para style="P24">Dobro</para>
192+ </td>
193+ <td>
194+ <para style="P24">V breme</para>
195+ </td>
196+ <td>
197+ <para style="P24">Dobro</para>
198+ </td>
199+ <td>
200+ <para style="P24">V breme</para>
201+ </td>
202+ <td>
203+ <para style="P24">Dobro</para>
204 </td>
205 </tr>
206 </blockTable>
207@@ -435,42 +435,42 @@
208 <para style="P13">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]<font face="Helvetica">[[ '..'*(a['level']-1) ]]</font><font face="Helvetica">[[ a['name'] ]]</font></para>
209 </td>
210 <td>
211- <para style="P24">
212+ <para style="P14">
213 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
214 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit_open']) ]]</font>
215 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[formatLang(a['debit_open']) ]]</font>
216 </para>
217 </td>
218 <td>
219- <para style="P24">
220+ <para style="P14">
221 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
222 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit_open']) ]]</font>
223 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[formatLang(a['credit_open']) ]]</font>
224 </para>
225 </td>
226 <td>
227- <para style="P24">
228+ <para style="P14">
229 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
230 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit']) ]]</font>
231 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[formatLang(a['debit']) ]]</font>
232 </para>
233 </td>
234 <td>
235- <para style="P24">
236+ <para style="P14">
237 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font')]]</font>
238 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit']) ]]</font>
239 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[ formatLang(a['credit']) ]]</font>
240 </para>
241 </td>
242 <td>
243- <para style="P24">
244+ <para style="P14">
245 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
246 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit_close']) ]]</font>
247 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[ formatLang(a['debit_close']) ]]</font>
248 </para>
249 </td>
250 <td>
251- <para style="P24">
252+ <para style="P14">
253 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
254 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit_close']) ]]</font>
255 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[ formatLang(a['credit_close']) ]]</font>
256@@ -489,22 +489,22 @@
257 <font color="white"> </font>
258 </para>
259 <pageBreak/>
260- <para style="P21">
261+ <para style="P22">
262 <font color="white"> </font>
263 </para>
264 <blockTable colWidths="224.0,107.0,108.0,120.0" style="Table_razred_otvoritev_promet_saldo">
265 <tr>
266 <td>
267- <para style="P17">Vsota po razredih</para>
268- </td>
269- <td>
270- <para style="P16">Otvoritev</para>
271- </td>
272- <td>
273- <para style="P16">Promet</para>
274- </td>
275- <td>
276- <para style="P16">Saldo</para>
277+ <para style="P18">Vsota po razredih</para>
278+ </td>
279+ <td>
280+ <para style="P17">Začetni saldo</para>
281+ </td>
282+ <td>
283+ <para style="P17">Promet</para>
284+ </td>
285+ <td>
286+ <para style="P17">Končni saldo</para>
287 </td>
288 </tr>
289 </blockTable>
290@@ -517,22 +517,22 @@
291 <para style="P7">Konto</para>
292 </td>
293 <td>
294- <para style="P23">V breme</para>
295- </td>
296- <td>
297- <para style="P23">Dobro</para>
298- </td>
299- <td>
300- <para style="P23">V breme</para>
301- </td>
302- <td>
303- <para style="P23">Dobro</para>
304- </td>
305- <td>
306- <para style="P23">V breme</para>
307- </td>
308- <td>
309- <para style="P23">Dobro</para>
310+ <para style="P24">V breme</para>
311+ </td>
312+ <td>
313+ <para style="P24">Dobro</para>
314+ </td>
315+ <td>
316+ <para style="P24">V breme</para>
317+ </td>
318+ <td>
319+ <para style="P24">Dobro</para>
320+ </td>
321+ <td>
322+ <para style="P24">V breme</para>
323+ </td>
324+ <td>
325+ <para style="P24">Dobro</para>
326 </td>
327 </tr>
328 </blockTable>
329@@ -550,42 +550,42 @@
330 <para style="P13">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]<font face="Helvetica">[[ '..'*(a['level']-1) ]]</font><font face="Helvetica">[[ a['name'] ]]</font></para>
331 </td>
332 <td>
333- <para style="P24">
334+ <para style="P14">
335 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
336 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit_open']) ]]</font>
337 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[formatLang(a['debit_open']) ]]</font>
338 </para>
339 </td>
340 <td>
341- <para style="P24">
342+ <para style="P14">
343 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
344 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit_open']) ]]</font>
345 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[formatLang(a['credit_open']) ]]</font>
346 </para>
347 </td>
348 <td>
349- <para style="P24">
350+ <para style="P14">
351 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
352 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit']) ]]</font>
353 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[formatLang(a['debit']) ]]</font>
354 </para>
355 </td>
356 <td>
357- <para style="P24">
358+ <para style="P14">
359 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font')]]</font>
360 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit']) ]]</font>
361 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[ formatLang(a['credit']) ]]</font>
362 </para>
363 </td>
364 <td>
365- <para style="P24">
366+ <para style="P14">
367 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
368 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit_close']) ]]</font>
369 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[ formatLang(a['debit_close']) ]]</font>
370 </para>
371 </td>
372 <td>
373- <para style="P24">
374+ <para style="P14">
375 <font face="Helvetica">[[ (a['type']!='view' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font>
376 <font face="Helvetica">[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit_close']) ]]</font>
377 <font face="Helvetica">[[ a['type']!='view' and removeParentNode('font') ]] [[ formatLang(a['credit_close']) ]]</font>
378@@ -609,43 +609,30 @@
379 <blockTable colWidths="97.0,127.0,335.0" style="Table6">
380 <tr>
381 <td>
382- <para style="P18">Kontrolne vsote</para>
383+ <para style="P19">Kontrolne vsote</para>
384 </td>
385 <td>
386- <para style="P15">
387+ <para style="P16">
388 <font color="white"> </font>
389 </para>
390 </td>
391 <td>
392- <para style="P15">
393+ <para style="P16">
394 <font color="white"> </font>
395 </para>
396 </td>
397 </tr>
398 </blockTable>
399- <para style="P20">
400+ <para style="P21">
401 <font color="white"> </font>
402 </para>
403 <blockTable colWidths="96.0,127.0,335.0" style="Table7">
404 <tr>
405 <td>
406- <para style="P15">BS (0,1,2,3,6,8,9) =</para>
407- </td>
408- <td>
409- <para style="P22">[[ formatLang(get_BS_value()) ]]</para>
410- </td>
411- <td>
412- <para style="P14">
413- <font color="white"> </font>
414- </para>
415- </td>
416- </tr>
417- <tr>
418- <td>
419- <para style="P15">IPI (4,7) =</para>
420- </td>
421- <td>
422- <para style="P19">[[ formatLang(get_BU_value()) ]]</para>
423+ <para style="P16">BS (0,1,2,3,6,8,9) =</para>
424+ </td>
425+ <td>
426+ <para style="P23">[[ formatLang(get_BS_value()) ]]</para>
427 </td>
428 <td>
429 <para style="P15">
430@@ -653,6 +640,19 @@
431 </para>
432 </td>
433 </tr>
434+ <tr>
435+ <td>
436+ <para style="P16">IPI (4,7) =</para>
437+ </td>
438+ <td>
439+ <para style="P20">[[ formatLang(get_BU_value()) ]]</para>
440+ </td>
441+ <td>
442+ <para style="P16">
443+ <font color="white"> </font>
444+ </para>
445+ </td>
446+ </tr>
447 </blockTable>
448 <para style="Standard">
449 <font color="white"> </font>
450
451=== modified file 'accounting_reports/report/account_balance1.sxw'
452Binary files accounting_reports/report/account_balance1.sxw 2013-08-27 10:18:22 +0000 and accounting_reports/report/account_balance1.sxw 2014-05-16 08:09:36 +0000 differ

Subscribers

People subscribed via source and target branches