← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 878271] [NEW] cash discount payment certified modules - eu supplier

 

Public bug reported:

Server and core modules 6.0.3.
additional modules:
account_invoice_cash_discount
account_payment_discount_extension
account_payment_extension
sale_tax_include
from lp:~openerp/openobject-addons/6.0-certified-addons

Create a payment term:
2% Cash Discount for payment in 14 days, 30 days net

Create a supplier invoice for EU partner with 100EUR. Home company is in Germany, supplier partner from Netherland.
So currency is the same EUR.
Fiscal Position is set EU Lieferant and after tax mapping invoice has two tax lines. (see first screen)

Validate the invoice. (see screen of account moves)

Then try to pay it using "Pay Invoice" wizard to the right of invoice form. see third screen)
You get a wizard screen with 2.00EUR Cash Discount Amount at the upper section of screen what is correct, but in account moves you get 1.00EUR for base and 1.00EUR for tax what is wrong. It should be 2.00 for base and 0.38 for tax. 
Additionally it should be two account move lines for tax as it was in invoice account moves.
Another bug is that for tax account move it is no account in wizard.

When you click "Full Payment Button" you get python error report:

Environment Information : 
System : Linux-2.6.32-34-generic-i686-with-Ubuntu-10.04-lucid
OS Name : posix
LSB Version:	core-2.0-ia32:core-2.0-noarch:core-3.0-ia32:core-3.0-noarch:core-3.1-ia32:core-3.1-noarch:core-3.2-ia32:core-3.2-noarch:core-4.0-ia32:core-4.0-noarch:cxx-3.0-ia32:cxx-3.0-noarch:cxx-3.1-ia32:cxx-3.1-noarch:cxx-3.2-ia32:cxx-3.2-noarch:cxx-4.0-ia32:cxx-4.0-noarch:desktop-3.1-ia32:desktop-3.1-noarch:desktop-3.2-ia32:desktop-3.2-noarch:desktop-4.0-ia32:desktop-4.0-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch:graphics-3.2-ia32:graphics-3.2-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-3.2-ia32:printing-3.2-noarch:printing-4.0-ia32:printing-4.0-noarch:qt4-3.1-ia32:qt4-3.1-noarch
Distributor ID:	Ubuntu
Description:	Ubuntu 10.04.3 LTS
Release:	10.04
Codename:	lucid
Operating System Release : 2.6.32-34-generic
Operating System Version : #77-Ubuntu SMP Tue Sep 13 19:40:53 UTC 2011
Operating System Architecture : 32bit
Operating System Locale : en_US.UTF8
Python Version : 2.6.5
OpenERP-Client Version : 6.0.2
Last revision No. & ID :1835 launchpad_translations_on_behalf_of_openerp-20110413143452-vuta882s04fsp92t
Traceback (most recent call last):
  File "/usr/lib/openerp-server-6.0.3/netsvc.py", line 489, in dispatch
    result = ExportService.getService(service_name).dispatch(method, auth, params)
  File "/usr/lib/openerp-server-6.0.3/service/web_services.py", line 599, in dispatch
    res = fn(db, uid, *params)
  File "/usr/lib/openerp-server-6.0.3/osv/osv.py", line 122, in wrapper
    return f(self, dbname, *args, **kwargs)
  File "/usr/lib/openerp-server-6.0.3/osv/osv.py", line 176, in execute
    res = self.execute_cr(cr, uid, obj, method, *args, **kw)
  File "/usr/lib/openerp-server-6.0.3/osv/osv.py", line 167, in execute_cr
    return getattr(object, method)(cr, uid, *args, **kw)
  File "/usr/lib/openerp-custom-addons/account_invoice_cash_discount/wizard/account_pay_invoice.py", line 473, in message
    self.pool.get('account.invoice.pay').pay_and_reconcile(cr, uid, ids, context=context)
  File "/usr/lib/openerp-custom-addons/account_invoice_cash_discount/wizard/account_pay_invoice.py", line 652, in pay_and_reconcile
    data['period_id'], writeoff_journal_id, context, data['name'])
  File "/usr/lib/openerp-custom-addons/account_invoice_cash_discount/account_invoice_cash_discount.py", line 473, in pay_and_reconcile
    move_id = move_obj.create(cr, uid, move, context=context)
  File "/usr/lib/openerp-server-6.0.3/addons/account/account.py", line 1286, in create
    result = super(account_move, self).create(cr, uid, vals, c)
  File "/usr/lib/openerp-server-6.0.3/osv/orm.py", line 3687, in create
    result += self._columns[field].set(cr, self, id_new, field, vals[field], user, rel_context) or []
  File "/usr/lib/openerp-server-6.0.3/osv/fields.py", line 502, in set
    id_new = obj.create(cr, user, act[2], context=context)
  File "/usr/lib/openerp-server-6.0.3/addons/account/account_move_line.py", line 1222, in create
    if ('account_id' in vals) and not account_obj.read(cr, uid, vals['account_id'], ['active'])['active']:
  File "/usr/lib/openerp-server-6.0.3/osv/orm.py", line 2944, in read
    result = self._read_flat(cr, user, select, fields, context, load)
  File "/usr/lib/openerp-server-6.0.3/osv/orm.py", line 3003, in _read_flat
    cr.execute(query, (tuple(sub_ids),))
  File "/usr/lib/openerp-server-6.0.3/sql_db.py", line 78, in wrapper
    return f(self, *args, **kwargs)
  File "/usr/lib/openerp-server-6.0.3/sql_db.py", line 131, in execute
    res = self._obj.execute(query, params)
ProgrammingError: operator does not exist: integer = boolean
ZEILE 1: ...d FROM "account_account" WHERE account_account.id IN (false)...
                                                              ^
TIP:  No operator matches the given name and argument type(s). You might need to add explicit type casts.

** Affects: openobject-addons
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to OpenERP Project Group.
https://bugs.launchpad.net/bugs/878271

Title:
  cash discount payment certified modules - eu supplier

Status in OpenERP Addons (modules):
  New

Bug description:
  Server and core modules 6.0.3.
  additional modules:
  account_invoice_cash_discount
  account_payment_discount_extension
  account_payment_extension
  sale_tax_include
  from lp:~openerp/openobject-addons/6.0-certified-addons

  Create a payment term:
  2% Cash Discount for payment in 14 days, 30 days net

  Create a supplier invoice for EU partner with 100EUR. Home company is in Germany, supplier partner from Netherland.
  So currency is the same EUR.
  Fiscal Position is set EU Lieferant and after tax mapping invoice has two tax lines. (see first screen)

  Validate the invoice. (see screen of account moves)

  Then try to pay it using "Pay Invoice" wizard to the right of invoice form. see third screen)
  You get a wizard screen with 2.00EUR Cash Discount Amount at the upper section of screen what is correct, but in account moves you get 1.00EUR for base and 1.00EUR for tax what is wrong. It should be 2.00 for base and 0.38 for tax. 
  Additionally it should be two account move lines for tax as it was in invoice account moves.
  Another bug is that for tax account move it is no account in wizard.

  When you click "Full Payment Button" you get python error report:

  Environment Information : 
  System : Linux-2.6.32-34-generic-i686-with-Ubuntu-10.04-lucid
  OS Name : posix
  LSB Version:	core-2.0-ia32:core-2.0-noarch:core-3.0-ia32:core-3.0-noarch:core-3.1-ia32:core-3.1-noarch:core-3.2-ia32:core-3.2-noarch:core-4.0-ia32:core-4.0-noarch:cxx-3.0-ia32:cxx-3.0-noarch:cxx-3.1-ia32:cxx-3.1-noarch:cxx-3.2-ia32:cxx-3.2-noarch:cxx-4.0-ia32:cxx-4.0-noarch:desktop-3.1-ia32:desktop-3.1-noarch:desktop-3.2-ia32:desktop-3.2-noarch:desktop-4.0-ia32:desktop-4.0-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch:graphics-3.2-ia32:graphics-3.2-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-3.2-ia32:printing-3.2-noarch:printing-4.0-ia32:printing-4.0-noarch:qt4-3.1-ia32:qt4-3.1-noarch
  Distributor ID:	Ubuntu
  Description:	Ubuntu 10.04.3 LTS
  Release:	10.04
  Codename:	lucid
  Operating System Release : 2.6.32-34-generic
  Operating System Version : #77-Ubuntu SMP Tue Sep 13 19:40:53 UTC 2011
  Operating System Architecture : 32bit
  Operating System Locale : en_US.UTF8
  Python Version : 2.6.5
  OpenERP-Client Version : 6.0.2
  Last revision No. & ID :1835 launchpad_translations_on_behalf_of_openerp-20110413143452-vuta882s04fsp92t
  Traceback (most recent call last):
    File "/usr/lib/openerp-server-6.0.3/netsvc.py", line 489, in dispatch
      result = ExportService.getService(service_name).dispatch(method, auth, params)
    File "/usr/lib/openerp-server-6.0.3/service/web_services.py", line 599, in dispatch
      res = fn(db, uid, *params)
    File "/usr/lib/openerp-server-6.0.3/osv/osv.py", line 122, in wrapper
      return f(self, dbname, *args, **kwargs)
    File "/usr/lib/openerp-server-6.0.3/osv/osv.py", line 176, in execute
      res = self.execute_cr(cr, uid, obj, method, *args, **kw)
    File "/usr/lib/openerp-server-6.0.3/osv/osv.py", line 167, in execute_cr
      return getattr(object, method)(cr, uid, *args, **kw)
    File "/usr/lib/openerp-custom-addons/account_invoice_cash_discount/wizard/account_pay_invoice.py", line 473, in message
      self.pool.get('account.invoice.pay').pay_and_reconcile(cr, uid, ids, context=context)
    File "/usr/lib/openerp-custom-addons/account_invoice_cash_discount/wizard/account_pay_invoice.py", line 652, in pay_and_reconcile
      data['period_id'], writeoff_journal_id, context, data['name'])
    File "/usr/lib/openerp-custom-addons/account_invoice_cash_discount/account_invoice_cash_discount.py", line 473, in pay_and_reconcile
      move_id = move_obj.create(cr, uid, move, context=context)
    File "/usr/lib/openerp-server-6.0.3/addons/account/account.py", line 1286, in create
      result = super(account_move, self).create(cr, uid, vals, c)
    File "/usr/lib/openerp-server-6.0.3/osv/orm.py", line 3687, in create
      result += self._columns[field].set(cr, self, id_new, field, vals[field], user, rel_context) or []
    File "/usr/lib/openerp-server-6.0.3/osv/fields.py", line 502, in set
      id_new = obj.create(cr, user, act[2], context=context)
    File "/usr/lib/openerp-server-6.0.3/addons/account/account_move_line.py", line 1222, in create
      if ('account_id' in vals) and not account_obj.read(cr, uid, vals['account_id'], ['active'])['active']:
    File "/usr/lib/openerp-server-6.0.3/osv/orm.py", line 2944, in read
      result = self._read_flat(cr, user, select, fields, context, load)
    File "/usr/lib/openerp-server-6.0.3/osv/orm.py", line 3003, in _read_flat
      cr.execute(query, (tuple(sub_ids),))
    File "/usr/lib/openerp-server-6.0.3/sql_db.py", line 78, in wrapper
      return f(self, *args, **kwargs)
    File "/usr/lib/openerp-server-6.0.3/sql_db.py", line 131, in execute
      res = self._obj.execute(query, params)
  ProgrammingError: operator does not exist: integer = boolean
  ZEILE 1: ...d FROM "account_account" WHERE account_account.id IN (false)...
                                                                ^
  TIP:  No operator matches the given name and argument type(s). You might need to add explicit type casts.

To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/878271/+subscriptions


Follow ups

References