openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #00596
[Merge] lp:~openerp-commiter/openobject-addons/trunk-dev-addons3-psi into lp:~openerp-dev/openobject-addons/trunk-dev-addons3
psi (OpenERP) has proposed merging lp:~openerp-commiter/openobject-addons/trunk-dev-addons3-psi into lp:~openerp-dev/openobject-addons/trunk-dev-addons3.
Requested reviews:
OpenERP R&D Team (openerp-dev)
Related bugs:
#662538 account - account_move_lines for payables and receivables must have partner_id - missing check
https://bugs.launchpad.net/bugs/662538
#665326 Multi_company : Journal entry missing for company OpenERP IN.
https://bugs.launchpad.net/bugs/665326
#667619 Export po file from OpenERP, Accounting reports does not translated.
https://bugs.launchpad.net/bugs/667619
cumulative balance done for journal reports
change the query to get reports line
--
https://code.launchpad.net/~openerp-commiter/openobject-addons/trunk-dev-addons3-psi/+merge/41438
Your team OpenERP R&D Team is requested to review the proposed merge of lp:~openerp-commiter/openobject-addons/trunk-dev-addons3-psi into lp:~openerp-dev/openobject-addons/trunk-dev-addons3.
=== modified file 'account/account_move_line.py'
--- account/account_move_line.py 2010-11-16 09:25:36 +0000
+++ account/account_move_line.py 2010-11-22 11:31:19 +0000
@@ -716,6 +716,8 @@
account_id = line['account_id']['id']
partner_id = (line['partner_id'] and line['partner_id']['id']) or False
writeoff = debit - credit
+ if 'write_off' in context and context['write_off']['writeoff_amount']:
+ writeoff = context['write_off']['writeoff_amount']
# Ifdate_p in context => take this date
if context.has_key('date_p') and context['date_p']:
=== modified file 'account/report/account_journal.py'
--- account/report/account_journal.py 2010-11-19 04:53:49 +0000
+++ account/report/account_journal.py 2010-11-22 11:31:19 +0000
@@ -117,10 +117,22 @@
move_state = ['draft','posted']
if self.target_move == 'posted':
move_state = ['posted']
-
- self.cr.execute('SELECT l.id FROM account_move_line l, account_move am WHERE l.move_id=am.id AND am.state IN %s AND l.period_id=%s AND l.journal_id IN %s ' + self.query_get_clause + ' ORDER BY l.'+ self.sort_selection + '',(tuple(move_state), period_id, tuple(journal_id) ))
- ids = map(lambda x: x[0], self.cr.fetchall())
- return obj_mline.browse(self.cr, self.uid, ids)
+ self.cr.execute("SELECT l.id, l.date, l.ref, l.name, l.debit, l.credit, m.name as move_name, acc.code as account_code, rp.name as partner_name "\
+ "FROM account_move_line l "\
+ "LEFT JOIN account_move m ON (m.id=l.move_id) "\
+ "LEFT JOIN account_account acc ON (l.account_id = acc.id) "\
+ "LEFT JOIN res_partner rp ON (l.partner_id=rp.id) "\
+ "WHERE m.state IN %s "\
+ "AND l.period_id = %s "\
+ "AND l.journal_id IN %s " + self.query_get_clause + " "\
+ "ORDER BY l."+ self.sort_selection + " ",
+ (tuple(move_state), period_id, tuple(journal_id) ))
+ res = self.cr.dictfetchall()
+ account_sum = 0.0
+ for l in res:
+ account_sum += l['credit']-l['debit']
+ l['progress'] = account_sum
+ return res
def _set_get_account_currency_code(self, account_id):
self.cr.execute("SELECT c.symbol AS code "\
=== modified file 'account/report/account_journal.rml'
--- account/report/account_journal.rml 2010-11-10 07:04:30 +0000
+++ account/report/account_journal.rml 2010-11-22 11:31:19 +0000
@@ -176,9 +176,9 @@
<paraStyle name="terp_default_1" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_8_Italic" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
- <paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
- <paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
- <paraStyle name="terp_tblheader_Details_left" fontName="Helvetica-Bold" fontSize="8.0" leading="8" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_tblheader_Details_left" fontName="Helvetica-Bold" fontSize="8.0" leading="8" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
</stylesheet>
<images/>
<story>
@@ -202,44 +202,44 @@
</para>
<blockTable colWidths="85.0,80.0,80.0,120.0,70.0,100.0" style="Table2">
<tr>
- <td><para style="terp_tblheader_General_Centre"> [[ data['model']=='account.journal.period'and 'Company' or removeParentNode('para') ]]</para>
- <para style="terp_tblheader_General_Centre">[[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
+ <td><para style="terp_tblheader_General_Centre"> [[ data['model']=='account.journal.period'and 'Company' or removeParentNode('para') ]]</para>
+ <para style="terp_tblheader_General_Centre">[[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
- <td><para style="terp_tblheader_General_Centre">Journal</para></td>
+ <td><para style="terp_tblheader_General_Centre">Journal</para></td>
<td><para style="terp_tblheader_General_Centre">Filters By </para></td>
- <td><para style="terp_tblheader_General_Centre">Entries Sorted By</para></td>
+ <td><para style="terp_tblheader_General_Centre">Entries Sorted By</para></td>
<td><para style="terp_tblheader_General_Centre">Target Moves</para></td>
</tr>
- <tr>
- <td><para style="terp_default_Centre_8">[[ get_account(data) or '' ]]</para></td>
+ <tr>
+ <td><para style="terp_default_Centre_8">[[ get_account(data) or '' ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_fiscalyear(data) or '' ]]</para></td>
- <td><para style="terp_default_Centre_8">[[o.journal_id.name ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ get_filter(data)=='No Filter' and get_filter(data) or removeParentNode('para') ]] </para>
- <blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
- <tr>
- <td><para style="terp_tblheader_Details_Centre">Start Date</para></td>
- <td><para style="terp_tblheader_Details_Centre">End Date</para></td>
- </tr>
- <tr>
- <td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
- </tr>
- </blockTable>
- <blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
- <tr>
- <td><para style="terp_tblheader_Details_Centre">Start Period</para></td>
- <td><para style="terp_tblheader_Details_Centre">End Period</para></td>
- </tr>
- <tr>
- <td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
- </tr>
- </blockTable>
- </td>
- <td><para style="terp_default_Centre_8">[[ get_sortby(data) ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ get_target_move(data) ]] </para></td>
- </tr>
- </blockTable>
+ <td><para style="terp_default_Centre_8">[[o.journal_id.name ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ get_filter(data)=='No Filter' and get_filter(data) or removeParentNode('para') ]] </para>
+ <blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
+ <tr>
+ <td><para style="terp_tblheader_Details_Centre">Start Date</para></td>
+ <td><para style="terp_tblheader_Details_Centre">End Date</para></td>
+ </tr>
+ <tr>
+ <td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
+ </tr>
+ </blockTable>
+ <blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
+ <tr>
+ <td><para style="terp_tblheader_Details_Centre">Start Period</para></td>
+ <td><para style="terp_tblheader_Details_Centre">End Period</para></td>
+ </tr>
+ <tr>
+ <td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
+ </tr>
+ </blockTable>
+ </td>
+ <td><para style="terp_default_Centre_8">[[ get_sortby(data) ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ get_target_move(data) ]] </para></td>
+ </tr>
+ </blockTable>
<para style="P9">
<font color="white"> </font>
</para>
@@ -269,14 +269,14 @@
</tr>
<para style="Standard"><font color="white">[[lines(o.period_id.id, o.journal_id.id) or removeParentNode('story') ]]</font></para>
<tr>
- <td><para style="terp_default_8">[[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]]</para><para style="terp_default_8">[[ formatLang(line.date,date=True) ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ line.ref ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ line.account_id.code ]]</para></td>
- <td><para style="terp_default_8">[[ line.partner_id and line.partner_id.name ]]</para></td>
- <td><para style="terp_default_8">[[ line.move_id.name ]] - [[ line.name ]]</para></td>
- <td><para style="P8">[[ formatLang(line.debit) ]]</para></td>
- <td><para style="P8">[[ formatLang(line.credit) ]]</para></td>
- <td><para style="P8">[[ formatLang(line.credit - line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
+ <td><para style="terp_default_8">[[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]]</para><para style="terp_default_8">[[ formatLang(line['date'],date=True) ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ line['ref'] or '' ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ line['account_code'] or '' ]]</para></td>
+ <td><para style="terp_default_8">[[ line['partner_name'] or '' ]]</para></td>
+ <td><para style="terp_default_8">[[ line['move_name'] or '' ]] - [[ line['name'] or '' ]]</para></td>
+ <td><para style="P8">[[ formatLang(line['debit']) ]]</para></td>
+ <td><para style="P8">[[ formatLang(line['credit']) ]]</para></td>
+ <td><para style="P8">[[ formatLang(line['progress']) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
@@ -290,8 +290,8 @@
<td><para style="P10a">Move/Entry label</para></td>
<td><para style="P10b">Debit</para></td>
<td><para style="P10b">Credit</para></td>
- <td><para style="P10b">Balance</para></td>
- <td><para style="P10b">Currency</para></td>
+ <td><para style="P10b">Balance</para></td>
+ <td><para style="P10b">Currency</para></td>
</tr>
<tr>
<td><para style="P11">[[o.period_id.name ]]</para></td>
@@ -301,19 +301,19 @@
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P12"><u>[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]]</u></para></td>
- <td> <para style="P12"><u>[[ formatLang((sum_debit(o.period_id.id, o.journal_id.id) - sum_credit(o.period_id.id, o.journal_id.id))) ]] [[ company.currency_id.symbol ]]</u></para></td>
+ <td> <para style="P12"><u>[[ formatLang((sum_debit(o.period_id.id, o.journal_id.id) - sum_credit(o.period_id.id, o.journal_id.id))) ]] [[ company.currency_id.symbol ]]</u></para></td>
</tr>
<para style="Standard"><font color="white">[[lines(o.period_id.id, o.journal_id.id) or removeParentNode('story') ]]</font></para>
<tr>
- <td><para style="terp_default_8">[[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]]</para><para style="terp_default_8">[[ formatLang(line.date,date=True) ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ line.ref ]]</para></td>
- <td><para style="terp_default_Centre_8">[[ line.account_id.code ]]</para></td>
- <td><para style="terp_default_8">[[ line.partner_id and line.partner_id.name ]]</para></td>
- <td><para style="terp_default_8">[[ line.move_id.name ]] - [[ line.name ]]</para></td>
- <td><para style="P8">[[ formatLang(line.debit) ]]</para></td>
- <td><para style="P8">[[ formatLang(line.credit) ]]</para></td>
- <td><para style="P8">[[ formatLang(line.credit - line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
- <td><para style="P8">[[ line.currency_id and formatLang(line.amount_currency) or '' ]] [[ line.currency_id.symbol or '']]</para></td>
+ <td><para style="terp_default_8">[[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]]</para><para style="terp_default_8">[[ formatLang(line['date'],date=True) ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ line['ref'] or '' ]]</para></td>
+ <td><para style="terp_default_Centre_8">[[ line['account_code'] or '' ]]</para></td>
+ <td><para style="terp_default_8">[[ line['partner_name'] or '' ]]</para></td>
+ <td><para style="terp_default_8">[[ line['move_name'] or '' ]] - [[ line['name'] or '' ]]</para></td>
+ <td><para style="P8">[[ formatLang(line['debit']) ]]</para></td>
+ <td><para style="P8">[[ formatLang(line['credit']) ]]</para></td>
+ <td><para style="P8">[[ formatLang(line['progress']) ]] [[ company.currency_id.symbol ]]</para></td>
+ <td><para style="P8">[[ line.currency_id and formatLang(line.amount_currency) or '' ]] [[ line.currency_id.symbol or '']]</para></td>
</tr>
</blockTable>
=== modified file 'account/report/account_journal.sxw'
Binary files account/report/account_journal.sxw 2010-10-04 11:31:09 +0000 and account/report/account_journal.sxw 2010-11-22 11:31:19 +0000 differ
=== modified file 'account_voucher/account_voucher.py'
--- account_voucher/account_voucher.py 2010-11-19 13:56:06 +0000
+++ account_voucher/account_voucher.py 2010-11-22 11:31:19 +0000
@@ -638,7 +638,6 @@
'date': inv.date,
'date_maturity': inv.date_due
}
-
if (debit == 0.0 or credit == 0.0 or debit+credit > 0) and (debit > 0.0 or credit > 0.0):
master_line = move_line_pool.create(cr, uid, move_line)
@@ -695,6 +694,10 @@
if line.move_line_id.id:
rec_ids = [master_line, line.move_line_id.id]
rec_list_ids.append(rec_ids)
+ writeoff_account_id = False
+ writeoff_journal_id = False
+ writeoff_period_id = inv.period_id.id,
+ comment = False
if not currency_pool.is_zero(cr, uid, inv.currency_id, line_total):
diff = line_total
@@ -719,6 +722,19 @@
move_line_pool.create(cr, uid, move_line)
+ voucher = self.browse(cr, uid, ids)[0]
+
+ for rec_ids in rec_list_ids:
+ if len(rec_ids) >= 2:
+ for line in voucher.line_ids:
+ if line.amount_unreconciled != line.amount:
+ if 'write_off' in context and context['write_off']['writeoff_acc_id']:
+ writeoff_account_id = context['write_off']['writeoff_acc_id']
+ writeoff_journal_id = context['write_off']['writeoff_journal_id']
+ comment = context['write_off']['comment']
+ self.pool.get('account.move.line').reconcile(cr, uid, rec_ids, 'manual', writeoff_account_id, writeoff_period_id, writeoff_journal_id, context)
+ else:
+ self.pool.get('account.move.line').reconcile_partial(cr, uid, rec_ids, 'manual', context)
self.write(cr, uid, [inv.id], {
'move_id': move_id,
'state': 'posted',