openerp-community-reviewer team mailing list archive
-
openerp-community-reviewer team
-
Mailing list archive
-
Message #05308
[Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
Nicola Riolini - Micronaet has proposed merging lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing.
Requested reviews:
Account Core Editors (account-core-editors)
For more details, see:
https://code.launchpad.net/~nicolariolini/account-invoicing/add_module_account_payment_term_month/+merge/212400
Module account_payment_term_month
Module for manage payment in 'commercial month' so extra months are not calculated in 30 days * month (with known problems in 28th february) but really in N month
--
https://code.launchpad.net/~nicolariolini/account-invoicing/add_module_account_payment_term_month/+merge/212400
Your team Account Core Editors is requested to review the proposed merge of lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing.
=== added directory 'account_payment_term_month'
=== added file 'account_payment_term_month/__init__.py'
--- account_payment_term_month/__init__.py 1970-01-01 00:00:00 +0000
+++ account_payment_term_month/__init__.py 2014-03-24 12:27:56 +0000
@@ -0,0 +1,24 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Micronaet SRL (<http://www.micronaet.it>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+import payment
+
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'account_payment_term_month/__openerp__.py'
--- account_payment_term_month/__openerp__.py 1970-01-01 00:00:00 +0000
+++ account_payment_term_month/__openerp__.py 2014-03-24 12:27:56 +0000
@@ -0,0 +1,43 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Micronaet SRL (<http://www.micronaet.it>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+
+{
+ "name": "Payment terms - Commercial month",
+ "version": "1.0",
+ "author": "Micronaet s.r.l.",
+ "website": "http://www.micronaet.it",
+ "category": "Account / Payments",
+ "description": """
+ This module manage commercial month for end of month deadline
+ """,
+ "depends": [
+ "account",
+ ],
+ "init_xml": [],
+ "demo_xml": [],
+ "data": [
+ "payment_view.xml",
+ ],
+ "active": False,
+ "installable": True,
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added directory 'account_payment_term_month/i18n'
=== added file 'account_payment_term_month/i18n/it.po'
--- account_payment_term_month/i18n/it.po 1970-01-01 00:00:00 +0000
+++ account_payment_term_month/i18n/it.po 2014-03-24 12:27:56 +0000
@@ -0,0 +1,65 @@
+# Translation of OpenERP Server.
+# This file contains the translation of the following modules:
+# * account_payment_term_month
+# <> <>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenERP Server 7.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-02-07 06:40+0000\n"
+"PO-Revision-Date: 2014-02-07 07:43+0100\n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: account_payment_term_month
+#: help:account.payment.term.line,months:0
+msgid ""
+"Number of month to add before computation of the day of month.If Date = "
+"15/01, Number of month = 1, Day of Month = -1, then the due date is 28/02."
+msgstr ""
+"Numero di mesi da aggiungere prima del calcolo del giorno del mese. Se la "
+"data = 29/01, Numero di mesi = 1, Giorno del mese = -1 allora la data di "
+"scadenza sarà 28/02."
+
+#. module: account_payment_term_month
+#: view:account.payment.term.line:0
+msgid ""
+"{'invisible':[('commercial_month','=',True)],'required':"
+"[('commercial_month','=',False)],}"
+msgstr ""
+"{'invisible':[('commercial_month','=',True)],'required':"
+"[('commercial_month','=',False)],}"
+
+#. module: account_payment_term_month
+#: field:account.payment.term.line,commercial_month:0
+msgid "Month period"
+msgstr "Mese commerciale"
+
+#. module: account_payment_term_month
+#: help:account.payment.term.line,commercial_month:0
+msgid ""
+"If checked use the period as a months instead of days (use for commercial "
+"month - end of month payment)"
+msgstr ""
+"Se spuntato utilizza il periodo come mesi al posto di giorni (consiglio: "
+"utilizzare il mese commerciale nei pagamenti a fine mese)"
+
+#. module: account_payment_term_month
+#: model:ir.model,name:account_payment_term_month.model_account_payment_term
+msgid "Payment Term"
+msgstr "Termine di pagamento"
+
+#. module: account_payment_term_month
+#: model:ir.model,name:account_payment_term_month.model_account_payment_term_line
+msgid "Payment Term Line"
+msgstr "Riga termine di pagamento"
+
+#. module: account_payment_term_month
+#: field:account.payment.term.line,months:0
+msgid "Number of month"
+msgstr "Numero di mesi"
=== added file 'account_payment_term_month/payment.py'
--- account_payment_term_month/payment.py 1970-01-01 00:00:00 +0000
+++ account_payment_term_month/payment.py 2014-03-24 12:27:56 +0000
@@ -0,0 +1,108 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Micronaet SRL (<http://www.micronaet.it>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+import logging
+from datetime import datetime
+from dateutil.relativedelta import relativedelta
+from operator import itemgetter
+import time
+
+import openerp
+from openerp import SUPERUSER_ID
+from openerp import pooler, tools
+from openerp.osv import fields, osv, expression
+from openerp.tools.translate import _
+from openerp.tools.float_utils import float_round
+
+import openerp.addons.decimal_precision as dp
+
+
+class account_payment_term_line(osv.osv):
+ ''' Add extra field for manage commercial payments
+ '''
+ _name = "account.payment.term.line"
+ _inherit = "account.payment.term.line"
+
+ _columns = {
+ 'commercial_month': fields.boolean(
+ 'Month period',
+ help="If checked"
+ "use the period as a months instead of days (use for"
+ "commercial month - end of month payment)"),
+ 'months': fields.integer(
+ 'Number of month', required=False,
+ help="Number of month to add before computation of the day of"
+ "month. If Date=15-01, Number of month=1, Day of Month=-1,"
+ "then the due date is 28-02."),
+ }
+ _defaults = {
+ 'commercial_month': False,
+ 'months': 0,
+ }
+
+
+class account_payment_term(osv.osv):
+ ''' Override compunte method and add month check
+ '''
+ _name = "account.payment.term"
+ _inherit = "account.payment.term"
+
+ def compute(self, cr, uid, id, value, date_ref=False, context=None):
+ ''' Function overrided for check also month values
+ '''
+ if not date_ref:
+ date_ref = datetime.now().strftime('%Y-%m-%d')
+ pt = self.browse(cr, uid, id, context=context)
+ amount = value
+ result = []
+ obj_precision = self.pool.get('decimal.precision')
+ prec = obj_precision.precision_get(cr, uid, 'Account')
+ for line in pt.line_ids:
+ if line.value == 'fixed':
+ amt = round(line.value_amount, prec)
+ elif line.value == 'procent':
+ amt = round(value * line.value_amount, prec)
+ elif line.value == 'balance':
+ amt = round(amount, prec)
+ if amt:
+ if line.commercial_month: # commercial months
+ next_date = (
+ datetime.strptime(date_ref, '%Y-%m-%d') +
+ relativedelta(months=line.months))
+ else: # days
+ next_date = (
+ datetime.strptime(date_ref, '%Y-%m-%d') +
+ relativedelta(days=line.days))
+ if line.days2 < 0:
+ next_first_date = next_date + relativedelta(
+ day=1, months=1) # Getting 1st of next month
+ next_date = next_first_date + relativedelta(
+ days=line.days2)
+ if line.days2 > 0:
+ next_date += relativedelta(day=line.days2, months=1)
+ result.append((next_date.strftime('%Y-%m-%d'), amt))
+ amount -= amt
+
+ amount = reduce(lambda x, y: x+y[1], result, 0.0)
+ dist = round(value-amount, prec)
+ if dist:
+ result.append((time.strftime('%Y-%m-%d'), dist))
+ return result
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'account_payment_term_month/payment_view.xml'
--- account_payment_term_month/payment_view.xml 1970-01-01 00:00:00 +0000
+++ account_payment_term_month/payment_view.xml 2014-03-24 12:27:56 +0000
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+ <data>
+ <!-- Payment Terms Line -->
+ <record id="view_payment_term_line_tree_month" model="ir.ui.view">
+ <field name="name">account.payment.term.line.tree.month</field>
+ <field name="model">account.payment.term.line</field>
+ <field name="inherit_id" ref="account.view_payment_term_line_tree"/>
+ <field name="arch" type="xml">
+ <field name="days" position="after">
+ <field name="commercial_month"/>
+ <field name="months"/>
+ </field>
+ </field>
+ </record>
+
+ <record id="view_payment_term_line_form_month" model="ir.ui.view">
+ <field name="name">account.payment.term.line.form.month</field>
+ <field name="model">account.payment.term.line</field>
+ <field name="inherit_id" ref="account.view_payment_term_line_form"/>
+ <field name="arch" type="xml">
+ <field name="days" position="before">
+ <field name="commercial_month" />
+ <field name="months" attrs="{'invisible':[('commercial_month','=',False)],'required':[('commercial_month','=',True)],}"/>
+ </field>
+ <xpath expr="/form/group/group/field[@name='days']" position="attributes">
+ <attribute name="attrs">{'invisible':[('commercial_month','=',True)],'required':[('commercial_month','=',False)],}</attribute>
+ </xpath>
+ </field>
+ </record>
+
+ </data>
+</openerp>
=== added directory 'account_payment_term_month/security'
=== added directory 'account_payment_term_month/static'
=== added directory 'account_payment_term_month/static/src'
=== added directory 'account_payment_term_month/static/src/img'
=== added file 'account_payment_term_month/static/src/img/icon.png'
Binary files account_payment_term_month/static/src/img/icon.png 1970-01-01 00:00:00 +0000 and account_payment_term_month/static/src/img/icon.png 2014-03-24 12:27:56 +0000 differ
Follow ups
-
Fw: yahoo enjoyable day
From: Michele, 2017-11-26
-
☑Fw: my dear
From: Michele, 2017-11-08
-
✉what a nice surprise
From: Michele, 2017-10-19
-
☁a handful of questions
From: Michele, 2017-10-16
-
☁Re: wow that is just extremely great
From: Michele, 2017-10-14
-
☢Re: yay! something cool
From: Michele, 2017-09-26
-
✉wow oh wow, I'm impressed!
From: Michele, 2017-09-23
-
☠Re: yahoo! cool things
From: Michele, 2017-09-18
-
✔It worked for Blake, but would it work for us?
From: Michele, 2017-08-24
-
✔more nice stuff
From: Michele, 2017-07-28
-
☁need your help
From: Michele, 2017-07-25
-
✔just for you
From: Michele, 2017-07-11
-
✔your opinion is needed
From: Michele, 2017-05-29
-
Analysis | 5 questions Congress needs to answer about Trump and Russia
From: Michele, 2017-05-21
-
☢AI will take control of Milton Keynes traffic lights next year
From: Michele, 2017-05-18
-
✉Fw: a couple of questions
From: Michele, 2017-05-17
-
❣tell me what you think
From: Michele, 2017-05-14
-
✈Fw: that's amazing
From: Michele, 2017-05-10
-
Re: an unexpected surprise
From: Michele, 2017-05-10
-
☠Re: really nice place
From: Michele, 2017-05-03
-
☢Re: it's so cool!
From: Michele, 2017-04-24
-
musical performance
From: Michele, 2017-04-15
-
your opinion is needed
From: Michele, 2017-04-14
-
helpful info
From: Michele, 2017-04-04
-
really great stuff
From: Michele, 2017-04-03
-
what an amazing surprise
From: Michele, 2017-03-18
-
some stuff
From: Michele, 2017-03-10
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:~account-core-editors/account-invoicing/7.0
From: Pedro Manuel Baeza, 2014-08-13
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Lorenzo Battistini - Agile BG, 2014-06-04
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Sergio Corato, 2014-06-03
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Nicola Riolini - Micronaet, 2014-05-28
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Nicola Riolini - Micronaet, 2014-05-28
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Lorenzo Battistini - Agile BG, 2014-05-27
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Holger Brunn (Therp), 2014-05-12
-
Re: [Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Lorenzo Battistini - Agile BG, 2014-03-26
-
[Merge] lp:~nicolariolini/account-invoicing/add_module_account_payment_term_month into lp:account-invoicing
From: Nicola Riolini - Micronaet, 2014-03-24