diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 716369c429b..3ae70200ffb 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -818,7 +818,7 @@
-
+
diff --git a/addons/account/invoice.py b/addons/account/invoice.py
index ef056e454a9..b15c8667972 100644
--- a/addons/account/invoice.py
+++ b/addons/account/invoice.py
@@ -1171,7 +1171,7 @@ class account_invoice(osv.osv):
((move_id, invoice.move_id.id),))
lines = line.browse(cr, uid, map(lambda x: x[0], cr.fetchall()) )
for l in lines+invoice.payment_ids:
- if l.account_id.id==src_account_id:
+ if l.account_id.id == src_account_id:
line_ids.append(l.id)
total += (l.debit or 0.0) - (l.credit or 0.0)
diff --git a/addons/account/test/account_customer_invoice.yml b/addons/account/test/account_customer_invoice.yml
index 0cbcc0f944d..e5920d0caed 100644
--- a/addons/account/test/account_customer_invoice.yml
+++ b/addons/account/test/account_customer_invoice.yml
@@ -32,6 +32,12 @@
-
!assert {model: account.invoice, id: account_invoice_customer0}:
- state == 'proforma2'
+-
+ I check that there is no move attached to the invoice
+-
+ !python {model: account.invoice}: |
+ acc_id=self.browse(cr, uid, ref("account_invoice_customer0"))
+ assert acc_id.move_id, "Move not created"
-
I create invoice by clicking on Create button
-
@@ -41,6 +47,13 @@
-
!assert {model: account.invoice, id: account_invoice_customer0}:
- state == 'open'
+
+-
+ I check that now there is a move attached to the invoice
+-
+ !python {model: account.invoice}: |
+ acc_id=self.browse(cr, uid, ref("account_invoice_customer0"))
+ assert acc_id.move_id, "Move created"
-
I create a record for partial payment of 1000 EUR.
-
diff --git a/addons/account/test/account_fiscalyear_close.yml b/addons/account/test/account_fiscalyear_close.yml
index 6a619a8df5c..fa4f24effc1 100644
--- a/addons/account/test/account_fiscalyear_close.yml
+++ b/addons/account/test/account_fiscalyear_close.yml
@@ -59,33 +59,33 @@
"tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
})
--
- In order to test Cancel Opening Entries I cancelled the opening entries created for "Fiscal Year 2011"
--
- !record {model: account.open.closed.fiscalyear, id: account_open_closed_fiscalyear_1}:
- fyear_id: account.data_fiscalyear
--
- I clicked on Open button
--
- !python {model: account.open.closed.fiscalyear}: |
- self.remove_entries(cr, uid, [ref("account_open_closed_fiscalyear_1")], {"lang":
- 'en_US', "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_wizard_open_closed_fy")],
- "tz": False, "active_id": ref("account.menu_wizard_open_closed_fy"), })
--
- I check the opening entries By using "Entries by Line wizard"
--
- !record {model: account.move.journal, id: account_move_journal_2}:
- journal_id: account.sales_journal
- period_id: account_period_jan11
-
--
- I checked the Opening entries are cancelled successfully
--
- !python {model: account.move.journal}: |
- self.action_open_window(cr, uid, [ref("account_move_journal_2")], {"lang": 'en_US',
- "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_move_journal_line_form")],
- "tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
- })
+#-
+# In order to test Cancel Opening Entries I cancelled the opening entries created for "Fiscal Year 2011"
+#-
+# !record {model: account.open.closed.fiscalyear, id: account_open_closed_fiscalyear_1}:
+# fyear_id: account.data_fiscalyear
+#-
+# I clicked on Open button
+#-
+# !python {model: account.open.closed.fiscalyear}: |
+# self.remove_entries(cr, uid, [ref("account_open_closed_fiscalyear_1")], {"lang":
+# 'en_US', "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_wizard_open_closed_fy")],
+# "tz": False, "active_id": ref("account.menu_wizard_open_closed_fy"), })
+#-
+# I check the opening entries By using "Entries by Line wizard"
+#-
+# !record {model: account.move.journal, id: account_move_journal_2}:
+# journal_id: account.sales_journal
+# period_id: account_period_jan11
+#
+#-
+# I checked the Opening entries are cancelled successfully
+#-
+# !python {model: account.move.journal}: |
+# self.action_open_window(cr, uid, [ref("account_move_journal_2")], {"lang": 'en_US',
+# "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_move_journal_line_form")],
+# "tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
+# })
diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml
index 62e858a8349..710fc9d0075 100644
--- a/addons/base_action_rule/base_action_rule_view.xml
+++ b/addons/base_action_rule/base_action_rule_view.xml
@@ -1,9 +1,9 @@
-
+ parent="base.menu_base_config" sequence="3" />
- Action Rules
+ Automated Actions
base.action.rule
form
tree,form
@@ -113,7 +113,7 @@
+ parent="base.menu_base_action_rule" action="base_action_rule_act" sequence="1"/>
diff --git a/addons/base_calendar/base_calendar_view.xml b/addons/base_calendar/base_calendar_view.xml
index cb754080c02..2324be6adbd 100644
--- a/addons/base_calendar/base_calendar_view.xml
+++ b/addons/base_calendar/base_calendar_view.xml
@@ -157,7 +157,7 @@
+ parent="base.menu_base_config" sequence="6" />
@@ -201,7 +201,7 @@
- Available Alarms
+ Alarms
ir.actions.act_window
res.alarm
form
diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py
index 35870801ae6..0b170a85924 100644
--- a/addons/crm/__openerp__.py
+++ b/addons/crm/__openerp__.py
@@ -86,6 +86,7 @@ Create dashboard for CRM that includes:
'wizard/crm_send_email_view.xml',
'wizard/crm_forward_to_partner_view.xml',
'wizard/crm_custom_create_menu_view.xml',
+ 'wizard/crm_merge_opportunities_view.xml',
'crm_view.xml',
diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml
index 6897a3d1a23..9ddc87b2efd 100644
--- a/addons/crm/crm_lead_view.xml
+++ b/addons/crm/crm_lead_view.xml
@@ -15,7 +15,7 @@
+ parent="base.menu_crm_config_lead" />
@@ -31,7 +31,7 @@
+ parent="base.menu_crm_config_lead" />
diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml
index 2c6fbd02cc9..66bbc061009 100644
--- a/addons/crm/crm_meeting_view.xml
+++ b/addons/crm/crm_meeting_view.xml
@@ -13,8 +13,8 @@
{'object_id':'crm.meeting'}
-
+
diff --git a/addons/crm/crm_opportunity_view.xml b/addons/crm/crm_opportunity_view.xml
index 3ccfb1b1e18..411ae9ec58d 100644
--- a/addons/crm/crm_opportunity_view.xml
+++ b/addons/crm/crm_opportunity_view.xml
@@ -35,6 +35,8 @@
+
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index 3fdf9bbd827..41375001257 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -2,14 +2,14 @@
-
+
-
+
-
+
@@ -90,7 +90,7 @@
+ parent="base.menu_crm_config_lead" />
@@ -180,7 +180,7 @@
+ parent="base.menu_crm_config_lead" sequence="1"/>
@@ -334,7 +334,7 @@
- Segmentation
+ Partners Segmentation
crm.segmentation
form
tree,form
@@ -342,8 +342,8 @@
+ groups="base.group_extended" sequence="2"
+ parent="base.menu_base_action_rule" />
view.users.form.crm.modif.inherited1
diff --git a/addons/crm/wizard/__init__.py b/addons/crm/wizard/__init__.py
index 8c6a650b8da..70dd08a23cf 100644
--- a/addons/crm/wizard/__init__.py
+++ b/addons/crm/wizard/__init__.py
@@ -31,6 +31,8 @@ import crm_phonecall_to_opportunity
import crm_partner_to_opportunity
import crm_custom_create_menu
+import crm_merge_opportunities
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/wizard/crm_merge_opportunities.py b/addons/crm/wizard/crm_merge_opportunities.py
new file mode 100644
index 00000000000..a086bae028f
--- /dev/null
+++ b/addons/crm/wizard/crm_merge_opportunities.py
@@ -0,0 +1,135 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Tiny SPRL ().
+#
+# 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 .
+#
+##############################################################################
+
+from osv import osv, fields
+from tools.translate import _
+
+class crm_merge_opportunity(osv.osv_memory):
+ """Merge two Opportunities"""
+
+ _name = 'crm.merge.opportunity'
+ _description = 'Merge two Opportunities'
+
+ def view_init(self, cr, uid, fields, context=None):
+ """
+ This function checks for precondition before wizard executes
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param fields: List of fields for default value
+ @param context: A standard dictionary for contextual values
+
+ """
+ record_id = context and context.get('active_id', False) or False
+ if record_id:
+ opp_obj = self.pool.get('crm.lead')
+ opp = opp_obj.browse(cr, uid, record_id, context=context)
+ if opp.type != 'opportunity':
+ raise osv.except_osv(_('Warning!'), _('Can only perform this Operation for "Opportunities".'))
+ if not opp.partner_id:
+ raise osv.except_osv(_('Warning!'), _('Opportunity must have Partner assigned before merging with other Opportunity.'))
+ #Search for Opportunity for the same partner
+ opp_ids = opp_obj.search(cr, uid, [('partner_id', '=', opp.partner_id.id), ('type', '=', 'opportunity')])
+ if not len(opp_ids) > 1:
+ raise osv.except_osv(_('Warning!'), _("There are no other Opportunities for the partner '%s'.") % (opp.partner_id.name))
+ pass
+
+
+ def action_merge(self, cr, uid, ids, context=None):
+ """
+ This function merges two opportunities
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Phonecall to Opportunity IDs
+ @param context: A standard dictionary for contextual values
+
+ @return : Dictionary value for created Opportunity form
+ """
+ record_id = context and context.get('active_id', False) or False
+ if record_id:
+ opp_obj = self.pool.get('crm.lead')
+ message_obj = self.pool.get('mailgate.message')
+ current_opp = opp_obj.browse(cr, uid, record_id, context=context)
+
+ for this in self.browse(cr, uid, ids, context=context):
+ for opp in this.opportunity_ids:
+ opp_obj.write(cr, uid, opp.id, {
+ 'stage_id': opp.stage_id.id or current_opp.stage_id.id or False,
+ 'priority': opp.priority or current_opp.priority,
+ 'email_from': opp.email_from or current_opp.email_from,
+ 'phone': opp.phone or current_opp.phone,
+ 'section_id': opp.section_id.id or current_opp.section_id.id or False,
+ 'categ_id': opp.categ_id.id or current_opp.categ_id.id or False,
+ 'description': (opp.description or '') + '\n' + (current_opp.description or ''),
+ 'partner_name': opp.partner_name or current_opp.partner_name,
+ 'title': opp.title.id or current_opp.title.id or False,
+ 'function': opp.function or current_opp.function,
+ 'street': opp.street or current_opp.street,
+ 'street2': opp.street2 or current_opp.street2,
+ 'zip': opp.zip or current_opp.zip,
+ 'city': opp.city or current_opp.city,
+ 'country_id': opp.country_id.id or current_opp.country_id.id or False,
+ 'state_id': opp.state_id.id or current_opp.state_id.id or False,
+ 'fax': opp.fax or current_opp.fax,
+ 'mobile': opp.mobile or current_opp.mobile,
+ 'email_cc': ','.join(filter(lambda x: x, [opp.email_cc, current_opp.email_cc]))
+ })
+ for history in current_opp.message_ids:
+ if history.history:
+ new_history = message_obj.copy(cr, uid, history.id, default={'res_id': opp.id})
+ opp_obj._history(cr, uid, [current_opp], _('Merged into Opportunity: %s') % (opp.id))
+ opp_obj.case_cancel(cr, uid, [record_id])
+
+ return {}
+
+ _columns = {
+ 'opportunity_ids' : fields.many2many('crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id', 'Opportunities', domain=[('type', '=', 'opportunity')]),
+ }
+
+ def default_get(self, cr, uid, fields, context=None):
+ """
+ This function gets default values
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param fields: List of fields for default value
+ @param context: A standard dictionary for contextual values
+
+ @return : default values of fields.
+ """
+ record_id = context and context.get('active_id', False) or False
+ res = super(crm_merge_opportunity, self).default_get(cr, uid, fields, context=context)
+
+ if record_id:
+ opp_obj = self.pool.get('crm.lead')
+ opp = opp_obj.browse(cr, uid, record_id, context=context)
+ opp_ids = opp_obj.search(cr, uid, [('partner_id', '=', opp.partner_id.id), ('type', '=', 'opportunity')])
+ # Removing current opportunity
+ opp_ids.remove(record_id)
+
+ if 'opportunity_ids' in fields:
+ res.update({'opportunity_ids': opp_ids})
+ return res
+
+crm_merge_opportunity()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/wizard/crm_merge_opportunities_view.xml b/addons/crm/wizard/crm_merge_opportunities_view.xml
new file mode 100644
index 00000000000..56d336cf629
--- /dev/null
+++ b/addons/crm/wizard/crm_merge_opportunities_view.xml
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+ crm.merge.opportunity.form
+ crm.merge.opportunity
+ form
+
+
+
+
+
+
+
+
+ Merge Opportunities
+ crm.merge.opportunity
+ form
+ form
+
+ new
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/crm_claim/crm_claim.py b/addons/crm_claim/crm_claim.py
index 76a6073b58c..905b1bba9ff 100644
--- a/addons/crm_claim/crm_claim.py
+++ b/addons/crm_claim/crm_claim.py
@@ -52,12 +52,6 @@ class crm_claim(osv.osv, crm.crm_case):
"canall which is this opportunity source."),
'planned_revenue': fields.float('Planned Revenue'),
'planned_cost': fields.float('Planned Costs'),
- 'som': fields.many2one('res.partner.som', 'State of Mind', \
- help="The minds states allow to define a value scale "\
- "which represents the partner mentality in "\
- "relation to our services.The scale has to be "\
- "created with a factor for each level from 0 "\
- "(Very dissatisfied) to 10 (Extremely satisfied)"),
'categ_id': fields.many2one('crm.case.categ', 'Category', \
domain="[('section_id','=',section_id),\
('object_id.model', '=', 'crm.claim')]"),
diff --git a/addons/crm_claim/report/crm_claim_report.py b/addons/crm_claim/report/crm_claim_report.py
index 18c6d16ed53..fed4026aa02 100644
--- a/addons/crm_claim/report/crm_claim_report.py
+++ b/addons/crm_claim/report/crm_claim_report.py
@@ -107,7 +107,7 @@ class crm_claim_report(osv.osv):
group by to_char(c.create_date, 'YYYY'), to_char(c.create_date, 'MM'), \
c.state, c.user_id,c.section_id, c.stage_id,\
c.categ_id,c.partner_id,c.company_id,c.create_date,to_char(c.create_date, 'YYYY-MM-DD')
- ,c.priority,c.type_id,c.som
+ ,c.priority,c.type_id
)""")
crm_claim_report()
diff --git a/addons/crm_fundraising/crm_fundraising.py b/addons/crm_fundraising/crm_fundraising.py
index 81e16a47ac3..962fae07fd3 100644
--- a/addons/crm_fundraising/crm_fundraising.py
+++ b/addons/crm_fundraising/crm_fundraising.py
@@ -75,11 +75,6 @@ class crm_fundraising(osv.osv, crm.crm_case):
"modes available with the customer." \
" With each commercial opportunity, you can indicate\
the canall which is this opportunity source."),
- 'som': fields.many2one('res.partner.som', 'State of Mind', \
- help="The minds states allow to define a value scale which represents" \
- "the partner mentality in relation to our services.The scale has" \
- "to be created with a factor for each level from 0 \
- (Very dissatisfied) to 10 (Extremely satisfied)."),
'state': fields.selection(crm.AVAILABLE_STATES, 'State', size=16, readonly=True,
help='The state is set to \'Draft\', when a case is created.\
\nIf the case is in progress the state is set to \'Open\'.\
diff --git a/addons/crm_helpdesk/crm_helpdesk.py b/addons/crm_helpdesk/crm_helpdesk.py
index d4a1e9d59fc..9c223c74a54 100644
--- a/addons/crm_helpdesk/crm_helpdesk.py
+++ b/addons/crm_helpdesk/crm_helpdesk.py
@@ -61,11 +61,6 @@ class crm_helpdesk(osv.osv, crm.crm_case):
'planned_cost': fields.float('Planned Costs'),
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
'probability': fields.float('Probability (%)'),
- 'som': fields.many2one('res.partner.som', 'State of Mind', \
- help="The minds states allow to define a value scale which represents" \
- "the partner mentality in relation to our services.The scale has" \
- "to be created with a factor for each level from 0" \
- "(Very dissatisfied) to 10 (Extremely satisfied)."),
'categ_id': fields.many2one('crm.case.categ', 'Category', \
domain="[('section_id','=',section_id),\
('object_id.model', '=', 'crm.helpdesk')]"),
diff --git a/addons/crm_helpdesk/crm_helpdesk_demo.xml b/addons/crm_helpdesk/crm_helpdesk_demo.xml
index fd31bb4c8fb..be8da99f140 100644
--- a/addons/crm_helpdesk/crm_helpdesk_demo.xml
+++ b/addons/crm_helpdesk/crm_helpdesk_demo.xml
@@ -3,7 +3,6 @@
-
@@ -17,7 +16,6 @@
-
@@ -31,7 +29,6 @@
-
@@ -46,7 +43,6 @@
-
diff --git a/addons/crm_profiling/crm_profiling_view.xml b/addons/crm_profiling/crm_profiling_view.xml
index eeb95d77fc1..e0dbcce05a1 100644
--- a/addons/crm_profiling/crm_profiling_view.xml
+++ b/addons/crm_profiling/crm_profiling_view.xml
@@ -16,7 +16,7 @@
tree,form
-
@@ -26,7 +26,7 @@
tree,form
-
diff --git a/addons/l10n_ch/account_journal_view.xml b/addons/l10n_ch/account_journal_view.xml
index aa5d6c20080..5e681131e9c 100644
--- a/addons/l10n_ch/account_journal_view.xml
+++ b/addons/l10n_ch/account_journal_view.xml
@@ -8,24 +8,32 @@
+
+ Configure Your Account Journal System
+
+
+ Set accounts on financial journals defined by CamptoCamp l10n_ch module
+ 150
+
+
+ 15
+
+
-
-
-
-
-
-
-
+
+
+
+
+
- Next
+ Next
diff --git a/addons/mail_gateway/mail_gateway_view.xml b/addons/mail_gateway/mail_gateway_view.xml
index a9a2d1f96fc..fb70a08efc3 100644
--- a/addons/mail_gateway/mail_gateway_view.xml
+++ b/addons/mail_gateway/mail_gateway_view.xml
@@ -177,7 +177,7 @@
-
+
diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py
index 3a827b1982e..813133385be 100644
--- a/addons/mrp/mrp.py
+++ b/addons/mrp/mrp.py
@@ -533,35 +533,46 @@ class mrp_production(osv.osv):
return {'value': {'location_dest_id': src}}
return {}
- def product_id_change(self, cr, uid, ids, product, context=None):
+ def product_id_change(self, cr, uid, ids, product_id, context=None):
""" Finds UoM of changed product.
- @param product: Id of changed product.
+ @param product_id: Id of changed product.
@return: Dictionary of values.
"""
- if not product:
+ if not product_id:
return {'value': {
'product_uom': False,
'bom_id': False,
'routing_id': False
}}
- res = self.pool.get('product.product').browse(cr, uid, product, context=context)
+ bom_obj = self.pool.get('mrp.bom')
+ product = self.pool.get('product.product').browse(cr, uid, product_id, context=context)
+ bom_id = bom_obj._bom_find(cr, uid, product.id, product.uom_id and product.uom_id.id, [])
+ routing_id = False
+ if bom_id:
+ bom_point = bom_obj.browse(cr, uid, bom_id, context=context)
+ routing_id = bom_point.routing_id.id or False
result = {
- 'product_uom': res.uom_id and res.uom_id.id or False,
- 'bom_id': res.bom_ids and res.bom_ids[0].id or False,
- 'routing_id': res.bom_ids and res.bom_ids[0].routing_id.id or False
+ 'product_uom': product.uom_id and product.uom_id.id or False,
+ 'bom_id': bom_id,
+ 'routing_id': routing_id
}
return {'value': result}
- def bom_id_change(self, cr, uid, ids, product):
+ def bom_id_change(self, cr, uid, ids, bom_id, context=None):
""" Finds routing for changed BoM.
@param product: Id of product.
@return: Dictionary of values.
"""
- if not product:
- return {}
- res = self.pool.get('mrp.bom').read(cr, uid, [product], ['routing_id'])[0]
- routing_id = res['routing_id'] and res['routing_id'][0]
- result = {'routing_id': routing_id}
+ if not bom_id:
+ return {'value': {
+ 'routing_id': False
+ }}
+ bom_pool = self.pool.get('mrp.bom')
+ bom_point = bom_pool.browse(cr, uid, bom_id, context=context)
+ routing_id = bom_point.routing_id.id or False
+ result = {
+ 'routing_id': routing_id
+ }
return {'value': result}
def action_picking_except(self, cr, uid, ids):
diff --git a/addons/mrp_operations/__openerp__.py b/addons/mrp_operations/__openerp__.py
index 6cc27a4e2b2..d4d5cf98d08 100644
--- a/addons/mrp_operations/__openerp__.py
+++ b/addons/mrp_operations/__openerp__.py
@@ -51,7 +51,7 @@
""",
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
- 'depends': ['stock', 'hr', 'purchase', 'product', 'mrp'],
+ 'depends': ['mrp'],
'init_xml': [],
'update_xml': [
'security/ir.model.access.csv',
diff --git a/addons/mrp_operations/mrp_operations_view.xml b/addons/mrp_operations/mrp_operations_view.xml
index 36d0466a23c..285f5ff43da 100644
--- a/addons/mrp_operations/mrp_operations_view.xml
+++ b/addons/mrp_operations/mrp_operations_view.xml
@@ -32,9 +32,13 @@
-
-
-
+
+
+
+
+
+
+
@@ -56,8 +60,12 @@
-
-
+
+
+
+
+
+
diff --git a/addons/olap/data/olap_cube_view.xml b/addons/olap/data/olap_cube_view.xml
index 706f9093b3f..4ffbab0ff60 100644
--- a/addons/olap/data/olap_cube_view.xml
+++ b/addons/olap/data/olap_cube_view.xml
@@ -76,14 +76,14 @@
olap.parameters.config.wizard
form
-
diff --git a/addons/stock/test/stock_test.yml b/addons/stock/test/stock_test.yml
index 33b3350d628..442cc8735b9 100644
--- a/addons/stock/test/stock_test.yml
+++ b/addons/stock/test/stock_test.yml
@@ -192,7 +192,7 @@
seller_ids:
- delay: 1
name: stock.res_partner_shawtrust0
- qty: 5.0
+ min_qty: 5.0
supply_method: buy
type: product
uom_id: product.product_uom_unit
@@ -213,7 +213,7 @@
seller_ids:
- delay: 1
name: res_partner_shawtrust0
- qty: 5.0
+ min_qty: 5.0
supply_method: buy
type: product
uom_id: product.product_uom_unit
diff --git a/addons/stock/wizard/stock_change_standard_price.py b/addons/stock/wizard/stock_change_standard_price.py
index 4892bb77b93..7d0be0b333b 100644
--- a/addons/stock/wizard/stock_change_standard_price.py
+++ b/addons/stock/wizard/stock_change_standard_price.py
@@ -29,7 +29,7 @@ class change_standard_price(osv.osv_memory):
'new_price': fields.float('Price', required=True,
help="If cost price is increased, stock variation account will be debited "
"and stock output account will be credited with the value = (difference of amount * quantity available).\n"
- "If cost price is decreased, it will do vice-versa."),
+ "If cost price is decreased, stock variation account will be creadited and stock input account will be debited."),
'stock_account_input':fields.many2one('account.account', 'Stock Input Account'),
'stock_account_output':fields.many2one('account.account', 'Stock Output Account'),
'stock_journal':fields.many2one('account.journal', 'Stock journal', required=True),
diff --git a/addons/stock/wizard/stock_partial_move.py b/addons/stock/wizard/stock_partial_move.py
index 67dd232c168..044dc131df0 100644
--- a/addons/stock/wizard/stock_partial_move.py
+++ b/addons/stock/wizard/stock_partial_move.py
@@ -68,8 +68,7 @@ class stock_partial_move(osv.osv_memory):
move_ids = move_obj.search(cr, uid, [('id','in',move_ids)])
_moves_arch_lst = """