diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index c8d17c2cf9e..7045f5c069c 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -19,11 +19,11 @@
#
##############################################################################
{
- "name" : "Accounting and Financial Management",
+ "name" : "eInvoicing",
"version" : "1.1",
"author" : "OpenERP SA",
"category": 'Accounting & Finance',
- 'complexity': "normal",
+ 'complexity': "easy",
"description": """
Accounting and Financial Management.
====================================
@@ -104,6 +104,7 @@ module named account_voucher.
'account_invoice_view.xml',
'partner_view.xml',
'data/account_data.xml',
+ 'data/data_account_type.xml',
'account_invoice_workflow.xml',
'project/project_view.xml',
'project/project_report.xml',
diff --git a/addons/account/account.py b/addons/account/account.py
index e41a5f2f280..fd8a0506d01 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -131,7 +131,7 @@ class account_account_type(osv.osv):
_name = "account.account.type"
_description = "Account Type"
_columns = {
- 'name': fields.char('Account Type', size=64, required=True),
+ 'name': fields.char('Account Type', size=64, required=True, translate=True),
'code': fields.char('Code', size=32, required=True),
'close_method': fields.selection([('none', 'None'), ('balance', 'Balance'), ('detail', 'Detail'), ('unreconciled', 'Unreconciled')], 'Deferral Method', required=True, help="""Set here the method that will be used to generate the end of year journal entries for all the accounts of this type.
@@ -771,7 +771,9 @@ class account_journal(osv.osv):
def create(self, cr, uid, vals, context=None):
if not 'sequence_id' in vals or not vals['sequence_id']:
- vals.update({'sequence_id': self.create_sequence(cr, uid, vals, context)})
+ # if we have the right to create a journal, we should be able to
+ # create it's sequence.
+ vals.update({'sequence_id': self.create_sequence(cr, 1, vals, context)})
return super(account_journal, self).create(cr, uid, vals, context)
def name_get(self, cr, user, ids, context=None):
@@ -789,9 +791,11 @@ class account_journal(osv.osv):
result = self.browse(cr, user, ids, context=context)
res = []
for rs in result:
- name = rs.name
if rs.currency:
- name = "%s (%s)" % (rs.name, rs.currency.name)
+ currency = rs.currency
+ else:
+ currency = rs.company_id.currency_id
+ name = "%s (%s)" % (rs.name, currency.name)
res += [(rs.id, name)]
return res
@@ -880,7 +884,7 @@ class account_fiscalyear(osv.osv):
for fy in self.browse(cr, uid, ids, context=context):
ds = datetime.strptime(fy.date_start, '%Y-%m-%d')
period_obj.create(cr, uid, {
- 'name': _('Opening Period'),
+ 'name': "%s %s" % (_('Opening Period'), ds.strftime('%Y')),
'code': ds.strftime('00/%Y'),
'date_start': ds,
'date_stop': ds,
@@ -1223,7 +1227,7 @@ class account_move(osv.osv):
'period_id': fields.many2one('account.period', 'Period', required=True, states={'posted':[('readonly',True)]}),
'journal_id': fields.many2one('account.journal', 'Journal', required=True, states={'posted':[('readonly',True)]}),
'state': fields.selection([('draft','Unposted'), ('posted','Posted')], 'State', required=True, readonly=True,
- help='All manually created new journal entry are usually in the state \'Unposted\', but you can set the option to skip that state on the related journal. In that case, they will be behave as journal entries automatically created by the system on document validation (invoices, bank statements...) and will be created in \'Posted\' state.'),
+ help='All manually created new journal entries are usually in the state \'Unposted\', but you can set the option to skip that state on the related journal. In that case, they will be behave as journal entries automatically created by the system on document validation (invoices, bank statements...) and will be created in \'Posted\' state.'),
'line_id': fields.one2many('account.move.line', 'move_id', 'Entries', states={'posted':[('readonly',True)]}),
'to_check': fields.boolean('To Review', help='Check this box if you are unsure of that journal entry and if you want to note it as \'to be reviewed\' by an accounting expert.'),
'partner_id': fields.related('line_id', 'partner_id', type="many2one", relation="res.partner", string="Partner", store=True),
@@ -2427,6 +2431,7 @@ class account_account_template(osv.osv):
'child_parent_ids':fields.one2many('account.account.template', 'parent_id', 'Children'),
'tax_ids': fields.many2many('account.tax.template', 'account_account_template_tax_rel', 'account_id', 'tax_id', 'Default Taxes'),
'nocreate': fields.boolean('Optional create', help="If checked, the new chart of accounts will not contain this by default."),
+ 'chart_template_id': fields.many2one('account.chart.template', 'Chart Template', help="This optional field allow you to link an account template to a specific chart template that may differ from the one its root parent belongs to. This allow you to define chart templates that extend another and complete it with few new accounts (You don't need to define the whole structure that is common to both several times)."),
}
_defaults = {
@@ -2463,6 +2468,59 @@ class account_account_template(osv.osv):
res.append((record['id'],name ))
return res
+ def generate_account(self, cr, uid, chart_template_id, tax_template_ref, acc_template_ref, code_digits, company_id, context=None):
+ """
+ This method for generating accounts from templates.
+
+ :param chart_template_id: id of the chart template chosen in the wizard
+ :param tax_template_ref: Taxes templates reference for write taxes_id in account_account.
+ :paramacc_template_ref: dictionary with the mappping between the account templates and the real accounts.
+ :param code_digits: number of digits got from wizard.multi.charts.accounts, this is use for account code.
+ :param company_id: company_id selected from wizard.multi.charts.accounts.
+ :returns: return acc_template_ref for reference purpose.
+ :rtype: dict
+ """
+ if context is None:
+ context = {}
+ obj_acc = self.pool.get('account.account')
+ company_name = self.pool.get('res.company').browse(cr, uid, company_id, context=context).name
+ template = self.pool.get('account.chart.template').browse(cr, uid, chart_template_id, context=context)
+ #deactivate the parent_store functionnality on account_account for rapidity purpose
+ ctx = context.copy()
+ ctx.update({'defer_parent_store_computation': True})
+ children_acc_template = self.search(cr, uid, ['|', ('chart_template_id','=', [chart_template_id]),'&',('parent_id','child_of', [template.account_root_id.id]),('chart_template_id','=', False), ('nocreate','!=',True)], order='id')
+ for account_template in self.browse(cr, uid, children_acc_template, context=context):
+ # skip the root of COA if it's not the main one
+ if (template.account_root_id.id == account_template.id) and template.parent_id:
+ continue
+ tax_ids = []
+ for tax in account_template.tax_ids:
+ tax_ids.append(tax_template_ref[tax.id])
+
+ code_main = account_template.code and len(account_template.code) or 0
+ code_acc = account_template.code or ''
+ if code_main > 0 and code_main <= code_digits and account_template.type != 'view':
+ code_acc = str(code_acc) + (str('0'*(code_digits-code_main)))
+ vals={
+ 'name': (template.account_root_id.id == account_template.id) and company_name or account_template.name,
+ 'currency_id': account_template.currency_id and account_template.currency_id.id or False,
+ 'code': code_acc,
+ 'type': account_template.type,
+ 'user_type': account_template.user_type and account_template.user_type.id or False,
+ 'reconcile': account_template.reconcile,
+ 'shortcut': account_template.shortcut,
+ 'note': account_template.note,
+ 'parent_id': account_template.parent_id and ((account_template.parent_id.id in acc_template_ref) and acc_template_ref[account_template.parent_id.id]) or False,
+ 'tax_ids': [(6,0,tax_ids)],
+ 'company_id': company_id,
+ }
+ new_account = obj_acc.create(cr, uid, vals, context=ctx)
+ acc_template_ref[account_template.id] = new_account
+
+ #reactivate the parent_store functionnality on account_account
+ obj_acc._parent_store_compute(cr)
+ return acc_template_ref
+
account_account_template()
class account_add_tmpl_wizard(osv.osv_memory):
@@ -2540,6 +2598,41 @@ class account_tax_code_template(osv.osv):
'notprintable': False,
}
+ def generate_tax_code(self, cr, uid, tax_code_root_id, company_id, context=None):
+ '''
+ This function generates the tax codes from the templates of tax code that are children of the given one passed
+ in argument. Then it returns a dictionary with the mappping between the templates and the real objects.
+
+ :param tax_code_root_id: id of the root of all the tax code templates to process
+ :param company_id: id of the company the wizard is running for
+ :returns: dictionary with the mappping between the templates and the real objects.
+ :rtype: dict
+ '''
+ obj_tax_code_template = self.pool.get('account.tax.code.template')
+ obj_tax_code = self.pool.get('account.tax.code')
+ tax_code_template_ref = {}
+ company = self.pool.get('res.company').browse(cr, uid, company_id, context=context)
+
+ #find all the children of the tax_code_root_id
+ children_tax_code_template = obj_tax_code_template.search(cr, uid, [('parent_id','child_of',[tax_code_root_id])], order='id')
+ for tax_code_template in obj_tax_code_template.browse(cr, uid, children_tax_code_template, context=context):
+ vals = {
+ 'name': (tax_code_root_id == tax_code_template.id) and company.name or tax_code_template.name,
+ 'code': tax_code_template.code,
+ 'info': tax_code_template.info,
+ 'parent_id': tax_code_template.parent_id and ((tax_code_template.parent_id.id in tax_code_template_ref) and tax_code_template_ref[tax_code_template.parent_id.id]) or False,
+ 'company_id': company_id,
+ 'sign': tax_code_template.sign,
+ }
+ #check if this tax code already exists
+ rec_list = obj_tax_code.search(cr, uid, [('name', '=', vals['name']),('code', '=', vals['code']),('company_id', '=', vals['company_id'])], context=context)
+ if not rec_list:
+ #if not yet, create it
+ new_tax_code = obj_tax_code.create(cr, uid, vals)
+ #recording the new tax code to do the mapping
+ tax_code_template_ref[tax_code_template.id] = new_tax_code
+ return tax_code_template_ref
+
def name_get(self, cr, uid, ids, context=None):
if not ids:
return []
@@ -2563,19 +2656,29 @@ class account_chart_template(osv.osv):
_columns={
'name': fields.char('Name', size=64, required=True),
- 'account_root_id': fields.many2one('account.account.template','Root Account',required=True,domain=[('parent_id','=',False)]),
- 'tax_code_root_id': fields.many2one('account.tax.code.template','Root Tax Code',required=True,domain=[('parent_id','=',False)]),
+ 'parent_id': fields.many2one('account.chart.template', 'Parent Chart Template'),
+ 'code_digits': fields.integer('# of Digits', required=True, help="No. of Digits to use for account code"),
+ 'visible': fields.boolean('Can be Visible?', help="Set this to False if you don't want this template to be used actively in the wizard that generate Chart of Accounts from templates, this is useful when you want to generate accounts of this template only when loading its child template."),
+ 'complete_tax_set': fields.boolean('Complete Set of Taxes', help='This boolean helps you to choose if you want to propose to the user to encode the sale and purchase rates or choose from list of taxes. This last choice assumes that the set of tax defined on this template is complete'),
+ 'account_root_id': fields.many2one('account.account.template', 'Root Account', domain=[('parent_id','=',False)]),
+ 'tax_code_root_id': fields.many2one('account.tax.code.template', 'Root Tax Code', domain=[('parent_id','=',False)]),
'tax_template_ids': fields.one2many('account.tax.template', 'chart_template_id', 'Tax Template List', help='List of all the taxes that have to be installed by the wizard'),
- 'bank_account_view_id': fields.many2one('account.account.template','Bank Account',required=True),
- 'property_account_receivable': fields.many2one('account.account.template','Receivable Account'),
- 'property_account_payable': fields.many2one('account.account.template','Payable Account'),
- 'property_account_expense_categ': fields.many2one('account.account.template','Expense Category Account'),
- 'property_account_income_categ': fields.many2one('account.account.template','Income Category Account'),
- 'property_account_expense': fields.many2one('account.account.template','Expense Account on Product Template'),
- 'property_account_income': fields.many2one('account.account.template','Income Account on Product Template'),
+ 'bank_account_view_id': fields.many2one('account.account.template', 'Bank Account'),
+ 'property_account_receivable': fields.many2one('account.account.template', 'Receivable Account'),
+ 'property_account_payable': fields.many2one('account.account.template', 'Payable Account'),
+ 'property_account_expense_categ': fields.many2one('account.account.template', 'Expense Category Account'),
+ 'property_account_income_categ': fields.many2one('account.account.template', 'Income Category Account'),
+ 'property_account_expense': fields.many2one('account.account.template', 'Expense Account on Product Template'),
+ 'property_account_income': fields.many2one('account.account.template', 'Income Account on Product Template'),
'property_reserve_and_surplus_account': fields.many2one('account.account.template', 'Reserve and Profit/Loss Account', domain=[('type', '=', 'payable')], help='This Account is used for transferring Profit/Loss(If It is Profit: Amount will be added, Loss: Amount will be deducted.), Which is calculated from Profilt & Loss Report'),
- 'property_account_income_opening': fields.many2one('account.account.template','Opening Entries Income Account'),
- 'property_account_expense_opening': fields.many2one('account.account.template','Opening Entries Expense Account'),
+ 'property_account_income_opening': fields.many2one('account.account.template', 'Opening Entries Income Account'),
+ 'property_account_expense_opening': fields.many2one('account.account.template', 'Opening Entries Expense Account'),
+ }
+
+ _defaults = {
+ 'visible': True,
+ 'code_digits': 6,
+ 'complete_tax_set': True,
}
account_chart_template()
@@ -2653,6 +2756,61 @@ class account_tax_template(osv.osv):
}
_order = 'sequence'
+ def _generate_tax(self, cr, uid, tax_templates, tax_code_template_ref, company_id, context=None):
+ """
+ This method generate taxes from templates.
+
+ :param tax_templates: list of browse record of the tax templates to process
+ :param tax_code_template_ref: Taxcode templates reference.
+ :param company_id: id of the company the wizard is running for
+ :returns:
+ {
+ 'tax_template_to_tax': mapping between tax template and the newly generated taxes corresponding,
+ 'account_dict': dictionary containing a to-do list with all the accounts to assign on new taxes
+ }
+ """
+ if context is None:
+ context = {}
+ res = {}
+ todo_dict = {}
+ tax_template_to_tax = {}
+ for tax in tax_templates:
+ vals_tax = {
+ 'name':tax.name,
+ 'sequence': tax.sequence,
+ 'amount': tax.amount,
+ 'type': tax.type,
+ 'applicable_type': tax.applicable_type,
+ 'domain': tax.domain,
+ 'parent_id': tax.parent_id and ((tax.parent_id.id in tax_template_to_tax) and tax_template_to_tax[tax.parent_id.id]) or False,
+ 'child_depend': tax.child_depend,
+ 'python_compute': tax.python_compute,
+ 'python_compute_inv': tax.python_compute_inv,
+ 'python_applicable': tax.python_applicable,
+ 'base_code_id': tax.base_code_id and ((tax.base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.base_code_id.id]) or False,
+ 'tax_code_id': tax.tax_code_id and ((tax.tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.tax_code_id.id]) or False,
+ 'base_sign': tax.base_sign,
+ 'tax_sign': tax.tax_sign,
+ 'ref_base_code_id': tax.ref_base_code_id and ((tax.ref_base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_base_code_id.id]) or False,
+ 'ref_tax_code_id': tax.ref_tax_code_id and ((tax.ref_tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_tax_code_id.id]) or False,
+ 'ref_base_sign': tax.ref_base_sign,
+ 'ref_tax_sign': tax.ref_tax_sign,
+ 'include_base_amount': tax.include_base_amount,
+ 'description': tax.description,
+ 'company_id': company_id,
+ 'type_tax_use': tax.type_tax_use,
+ 'price_include': tax.price_include
+ }
+ new_tax = self.pool.get('account.tax').create(cr, uid, vals_tax)
+ tax_template_to_tax[tax.id] = new_tax
+ #as the accounts have not been created yet, we have to wait before filling these fields
+ todo_dict[new_tax] = {
+ 'account_collected_id': tax.account_collected_id and tax.account_collected_id.id or False,
+ 'account_paid_id': tax.account_paid_id and tax.account_paid_id.id or False,
+ }
+ res.update({'tax_template_to_tax': tax_template_to_tax, 'account_dict': todo_dict})
+ return res
+
account_tax_template()
# Fiscal Position Templates
@@ -2669,6 +2827,38 @@ class account_fiscal_position_template(osv.osv):
'note': fields.text('Notes', translate=True),
}
+ def generate_fiscal_position(self, cr, uid, chart_temp_id, tax_template_ref, acc_template_ref, company_id, context=None):
+ """
+ This method generate Fiscal Position, Fiscal Position Accounts and Fiscal Position Taxes from templates.
+
+ :param chart_temp_id: Chart Template Id.
+ :param taxes_ids: Taxes templates reference for generating account.fiscal.position.tax.
+ :param acc_template_ref: Account templates reference for generating account.fiscal.position.account.
+ :param company_id: company_id selected from wizard.multi.charts.accounts.
+ :returns: True
+ """
+ if context is None:
+ context = {}
+ obj_tax_fp = self.pool.get('account.fiscal.position.tax')
+ obj_ac_fp = self.pool.get('account.fiscal.position.account')
+ obj_fiscal_position = self.pool.get('account.fiscal.position')
+ fp_ids = self.search(cr, uid, [('chart_template_id', '=', chart_temp_id)])
+ for position in self.browse(cr, uid, fp_ids, context=context):
+ new_fp = obj_fiscal_position.create(cr, uid, {'company_id': company_id, 'name': position.name})
+ for tax in position.tax_ids:
+ obj_tax_fp.create(cr, uid, {
+ 'tax_src_id': tax_template_ref[tax.tax_src_id.id],
+ 'tax_dest_id': tax.tax_dest_id and tax_template_ref[tax.tax_dest_id.id] or False,
+ 'position_id': new_fp
+ })
+ for acc in position.account_ids:
+ obj_ac_fp.create(cr, uid, {
+ 'account_src_id': acc_template_ref[acc.account_src_id.id],
+ 'account_dest_id': acc_template_ref[acc.account_dest_id.id],
+ 'position_id': new_fp
+ })
+ return True
+
account_fiscal_position_template()
class account_fiscal_position_tax_template(osv.osv):
@@ -2803,66 +2993,64 @@ class wizard_multi_charts_accounts(osv.osv_memory):
'seq_journal':fields.boolean('Separated Journal Sequences', help="Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."),
"sale_tax": fields.many2one("account.tax.template", "Default Sale Tax"),
"purchase_tax": fields.many2one("account.tax.template", "Default Purchase Tax"),
+ 'sale_tax_rate': fields.float('Sales Tax(%)'),
+ 'purchase_tax_rate': fields.float('Purchase Tax(%)'),
+ 'complete_tax_set': fields.boolean('Complete Set of Taxes', help='This boolean helps you to choose if you want to propose to the user to encode the sales and purchase rates or use the usual m2o fields. This last choice assumes that the set of tax defined for the chosen template is complete'),
}
def onchange_chart_template_id(self, cr, uid, ids, chart_template_id=False, context=None):
res = {}
- res['value'] = {}
- res['value']["sale_tax"] = False
- res['value']["purchase_tax"] = False
+ tax_templ_obj = self.pool.get('account.tax.template')
+ res['value'] = {'complete_tax_set': False, 'sale_tax': False, 'purchase_tax': False}
if chart_template_id:
- # default tax is given by the lowest sequence. For same sequence we will take the latest created as it will be the case for tax created while installing the generic chart of accounts
- sale_tax_ids = self.pool.get('account.tax.template').search(cr, uid, [("chart_template_id"
- , "=", chart_template_id), ('type_tax_use', 'in', ('sale','all'))], order="sequence, id desc")
- purchase_tax_ids = self.pool.get('account.tax.template').search(cr, uid, [("chart_template_id"
- , "=", chart_template_id), ('type_tax_use', 'in', ('purchase','all'))], order="sequence, id desc")
+ data = self.pool.get('account.chart.template').browse(cr, uid, chart_template_id, context=context)
+ res['value'].update({'complete_tax_set': data.complete_tax_set})
+ if data.complete_tax_set:
+ # default tax is given by the lowest sequence. For same sequence we will take the latest created as it will be the case for tax created while isntalling the generic chart of account
+ sale_tax_ids = tax_templ_obj.search(cr, uid, [("chart_template_id"
+ , "=", chart_template_id), ('type_tax_use', 'in', ('sale','all'))], order="sequence, id desc")
+ purchase_tax_ids = tax_templ_obj.search(cr, uid, [("chart_template_id"
+ , "=", chart_template_id), ('type_tax_use', 'in', ('purchase','all'))], order="sequence, id desc")
+ res['value'].update({'sale_tax': sale_tax_ids and sale_tax_ids[0] or False, 'purchase_tax': purchase_tax_ids and purchase_tax_ids[0] or False})
- res['value']["sale_tax"] = sale_tax_ids and sale_tax_ids[0] or False
- res['value']["purchase_tax"] = purchase_tax_ids and purchase_tax_ids[0] or False
+ if data.code_digits:
+ res['value'].update({'code_digits': data.code_digits})
return res
- def _get_purchase_tax(self, cr, uid, context=None):
- ids = self.pool.get('account.chart.template').search(cr, uid, [], context=context)
+
+ def default_get(self, cr, uid, fields, context=None):
+ res = super(wizard_multi_charts_accounts, self).default_get(cr, uid, fields, context=context)
+ tax_templ_obj = self.pool.get('account.tax.template')
+
+ if 'bank_accounts_id' in fields:
+ res.update({'bank_accounts_id': [{'acc_name': _('Current'), 'account_type': 'bank'},
+ {'acc_name': _('Deposit'), 'account_type': 'bank'},
+ {'acc_name': _('Cash'), 'account_type': 'cash'}]})
+ if 'company_id' in fields:
+ res.update({'company_id': self.pool.get('res.users').browse(cr, uid, [uid], context=context)[0].company_id.id})
+ if 'seq_journal' in fields:
+ res.update({'seq_journal': True})
+
+ ids = self.pool.get('account.chart.template').search(cr, uid, [('visible', '=', True)], context=context)
if ids:
- chart_template_id = ids[0]
- purchase_tax_ids = self.pool.get('account.tax.template').search(cr, uid, [("chart_template_id"
- , "=", chart_template_id), ('type_tax_use', 'in', ('purchase','all'))], order="sequence")
- return purchase_tax_ids and purchase_tax_ids[0] or False
- return False
-
- def _get_sale_tax(self, cr, uid, context=None):
- ids = self.pool.get('account.chart.template').search(cr, uid, [], context=context)
- if ids:
- chart_template_id = ids[0]
- sale_tax_ids = self.pool.get('account.tax.template').search(cr, uid, [("chart_template_id"
- , "=", chart_template_id), ('type_tax_use', 'in', ('sale','all'))], order="sequence")
- return sale_tax_ids and sale_tax_ids[0] or False
- return False
-
- def _get_chart(self, cr, uid, context=None):
- ids = self.pool.get('account.chart.template').search(cr, uid, [], context=context)
- if ids:
- return ids[0]
- return False
-
- def _get_default_accounts(self, cr, uid, context=None):
- return [
- {'acc_name': _('Cash'),'account_type':'cash'}
- ]
-
- _defaults = {
- 'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, [uid], c)[0].company_id.id,
- 'chart_template_id': _get_chart,
- 'bank_accounts_id': _get_default_accounts,
- 'sale_tax': _get_sale_tax,
- 'purchase_tax': _get_purchase_tax,
- 'code_digits': 6,
- 'seq_journal': True
- }
+ if 'chart_template_id' in fields:
+ res.update({'chart_template_id': ids[0]})
+ if 'sale_tax' in fields:
+ sale_tax_ids = tax_templ_obj.search(cr, uid, [("chart_template_id"
+ , "=", ids[0]), ('type_tax_use', 'in', ('sale','all'))], order="sequence")
+ res.update({'sale_tax': sale_tax_ids and sale_tax_ids[0] or False})
+ if 'purchase_tax' in fields:
+ purchase_tax_ids = tax_templ_obj.search(cr, uid, [("chart_template_id"
+ , "=", ids[0]), ('type_tax_use', 'in', ('purchase','all'))], order="sequence")
+ res.update({'purchase_tax': purchase_tax_ids and purchase_tax_ids[0] or False})
+ return res
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
res = super(wizard_multi_charts_accounts, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
cmp_select = []
- company_ids = self.pool.get('res.company').search(cr, uid, [], context=context)
+ acc_template_obj = self.pool.get('account.chart.template')
+ company_obj = self.pool.get('res.company')
+
+ company_ids = company_obj.search(cr, uid, [], context=context)
#display in the widget selection of companies, only the companies that haven't been configured yet (but don't care about the demo chart of accounts)
cr.execute("SELECT company_id FROM account_account WHERE active = 't' AND account_account.parent_id IS NULL AND name != %s", ("Chart For Automated Tests",))
configured_cmp = [r[0] for r in cr.fetchall()]
@@ -2872,305 +3060,118 @@ class wizard_multi_charts_accounts(osv.osv_memory):
res['fields'][field]['domain'] = [('id','in',unconfigured_cmp)]
res['fields'][field]['selection'] = [('', '')]
if unconfigured_cmp:
- cmp_select = [(line.id, line.name) for line in self.pool.get('res.company').browse(cr, uid, unconfigured_cmp)]
+ cmp_select = [(line.id, line.name) for line in company_obj.browse(cr, uid, unconfigured_cmp)]
res['fields'][field]['selection'] = cmp_select
return res
- def execute(self, cr, uid, ids, context=None):
- obj_multi = self.browse(cr, uid, ids[0])
- obj_acc = self.pool.get('account.account')
- obj_acc_tax = self.pool.get('account.tax')
+ def check_created_journals(self, cr, uid, vals_journal, company_id, context=None):
+ """
+ This method used for checking journals already created or not. If not then create new journal.
+ """
obj_journal = self.pool.get('account.journal')
- obj_acc_template = self.pool.get('account.account.template')
- obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
- obj_fiscal_position = self.pool.get('account.fiscal.position')
+ rec_list = obj_journal.search(cr, uid, [('name','=', vals_journal['name']),('company_id', '=', company_id)], context=context)
+ if not rec_list:
+ obj_journal.create(cr, uid, vals_journal, context=context)
+ return True
+
+ def generate_journals(self, cr, uid, chart_template_id, acc_template_ref, company_id, context=None):
+ """
+ This method is used for creating journals.
+
+ :param chart_temp_id: Chart Template Id.
+ :param acc_template_ref: Account templates reference.
+ :param company_id: company_id selected from wizard.multi.charts.accounts.
+ :returns: True
+ """
+ journal_data = self._prepare_all_journals(cr, uid, chart_template_id, acc_template_ref, company_id, context=context)
+ for vals_journal in journal_data:
+ self.check_created_journals(cr, uid, vals_journal, company_id, context=context)
+ return True
+
+ def _prepare_all_journals(self, cr, uid, chart_template_id, acc_template_ref, company_id, context=None):
+ def _get_analytic_journal(journal_type):
+ # Get the analytic journal
+ analytic_journal_ids = []
+ if journal_type in ('sale', 'sale_refund'):
+ analytical_journal_ids = analytic_journal_obj.search(cr, uid, [('type','=','sale')], context=context)
+ elif journal_type in ('purchase', 'purchase_refund'):
+ analytical_journal_ids = analytic_journal_obj.search(cr, uid, [('type','=','purchase')], context=context)
+ elif journal_type == 'general':
+ analytical_journal_ids = analytic_journal_obj.search(cr, uid, [('type', '=', 'situation')], context=context)
+ return analytic_journal_ids and analytic_journal_ids[0] or False
+
+ def _get_default_account(journal_type, type='debit'):
+ # Get the default accounts
+ default_account = False
+ if journal_type in ('sale', 'sale_refund'):
+ default_account = acc_template_ref.get(template.property_account_income_categ.id)
+ elif journal_type in ('purchase', 'purchase_refund'):
+ default_account = acc_template_ref.get(template.property_account_expense_categ.id)
+ elif journal_type == 'situation':
+ if type == 'debit':
+ default_account = acc_template_ref.get(template.property_account_expense_opening.id)
+ else:
+ default_account = acc_template_ref.get(template.property_account_income_opening.id)
+ return default_account
+
+ def _get_view_id(journal_type):
+ # Get the journal views
+ if journal_type in ('general', 'situation'):
+ data = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_view')
+ elif journal_type in ('sale_refund', 'purchase_refund'):
+ data = obj_data.get_object_reference(cr, uid, 'account', 'account_sp_refund_journal_view')
+ else:
+ data = obj_data.get_object_reference(cr, uid, 'account', 'account_sp_journal_view')
+ return data and data[1] or False
+
+ journal_names = {
+ 'sale': _('Sales Journal'),
+ 'purchase': _('Purchase Journal'),
+ 'sale_refund': _('Sales Refund Journal'),
+ 'purchase_refund': _('Purchase Refund Journal'),
+ 'general': _('Miscellaneous Journal'),
+ 'situation': _('Opening Entries Journal'),
+ }
+ journal_codes = {
+ 'sale': _('SAJ'),
+ 'purchase': _('EXJ'),
+ 'sale_refund': _('SCNJ'),
+ 'purchase_refund': _('ECNJ'),
+ 'general': _('MISC'),
+ 'situation': _('OPEJ'),
+ }
+
obj_data = self.pool.get('ir.model.data')
analytic_journal_obj = self.pool.get('account.analytic.journal')
- obj_tax_code = self.pool.get('account.tax.code')
- obj_tax_code_template = self.pool.get('account.tax.code.template')
- ir_values_obj = self.pool.get('ir.values')
- # Creating Account
- obj_acc_root = obj_multi.chart_template_id.account_root_id
- tax_code_root_id = obj_multi.chart_template_id.tax_code_root_id.id
- company_id = obj_multi.company_id.id
+ template = self.pool.get('account.chart.template').browse(cr, uid, chart_template_id, context=context)
- #new code
- acc_template_ref = {}
- tax_template_ref = {}
- tax_code_template_ref = {}
- todo_dict = {}
-
- #create all the tax code
- children_tax_code_template = obj_tax_code_template.search(cr, uid, [('parent_id','child_of',[tax_code_root_id])], order='id')
- children_tax_code_template.sort()
- for tax_code_template in obj_tax_code_template.browse(cr, uid, children_tax_code_template, context=context):
+ journal_data = []
+ for journal_type in ['sale', 'purchase', 'sale_refund', 'purchase_refund', 'general', 'situation']:
vals = {
- 'name': (tax_code_root_id == tax_code_template.id) and obj_multi.company_id.name or tax_code_template.name,
- 'code': tax_code_template.code,
- 'info': tax_code_template.info,
- 'parent_id': tax_code_template.parent_id and ((tax_code_template.parent_id.id in tax_code_template_ref) and tax_code_template_ref[tax_code_template.parent_id.id]) or False,
+ 'type': journal_type,
+ 'name': journal_names[journal_type],
+ 'code': journal_codes[journal_type],
'company_id': company_id,
- 'sign': tax_code_template.sign,
+ 'centralisation': journal_type == 'situation',
+ 'view_id': _get_view_id(journal_type),
+ 'analytic_journal_id': _get_analytic_journal(journal_type),
+ 'default_credit_account_id': _get_default_account(journal_type, 'credit'),
+ 'default_debit_account_id': _get_default_account(journal_type, 'debit'),
}
- new_tax_code = obj_tax_code.create(cr, uid, vals)
- #recording the new tax code to do the mapping
- tax_code_template_ref[tax_code_template.id] = new_tax_code
+ journal_data.append(vals)
+ return journal_data
- #create all the tax
- tax_template_to_tax = {}
- for tax in obj_multi.chart_template_id.tax_template_ids:
- #create it
- vals_tax = {
- 'name':tax.name,
- 'sequence': tax.sequence,
- 'amount':tax.amount,
- 'type':tax.type,
- 'applicable_type': tax.applicable_type,
- 'domain':tax.domain,
- 'parent_id': tax.parent_id and ((tax.parent_id.id in tax_template_ref) and tax_template_ref[tax.parent_id.id]) or False,
- 'child_depend': tax.child_depend,
- 'python_compute': tax.python_compute,
- 'python_compute_inv': tax.python_compute_inv,
- 'python_applicable': tax.python_applicable,
- 'base_code_id': tax.base_code_id and ((tax.base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.base_code_id.id]) or False,
- 'tax_code_id': tax.tax_code_id and ((tax.tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.tax_code_id.id]) or False,
- 'base_sign': tax.base_sign,
- 'tax_sign': tax.tax_sign,
- 'ref_base_code_id': tax.ref_base_code_id and ((tax.ref_base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_base_code_id.id]) or False,
- 'ref_tax_code_id': tax.ref_tax_code_id and ((tax.ref_tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_tax_code_id.id]) or False,
- 'ref_base_sign': tax.ref_base_sign,
- 'ref_tax_sign': tax.ref_tax_sign,
- 'include_base_amount': tax.include_base_amount,
- 'description':tax.description,
- 'company_id': company_id,
- 'type_tax_use': tax.type_tax_use,
- 'price_include': tax.price_include
- }
- new_tax = obj_acc_tax.create(cr, uid, vals_tax)
- tax_template_to_tax[tax.id] = new_tax
- #as the accounts have not been created yet, we have to wait before filling these fields
- todo_dict[new_tax] = {
- 'account_collected_id': tax.account_collected_id and tax.account_collected_id.id or False,
- 'account_paid_id': tax.account_paid_id and tax.account_paid_id.id or False,
- }
- tax_template_ref[tax.id] = new_tax
- #deactivate the parent_store functionnality on account_account for rapidity purpose
- ctx = context and context.copy() or {}
- ctx['defer_parent_store_computation'] = True
+ def generate_properties(self, cr, uid, chart_template_id, acc_template_ref, company_id, context=None):
+ """
+ This method used for creating properties.
- children_acc_template = obj_acc_template.search(cr, uid, [('parent_id','child_of',[obj_acc_root.id]),('nocreate','!=',True)])
- children_acc_template.sort()
- for account_template in obj_acc_template.browse(cr, uid, children_acc_template, context=context):
- tax_ids = []
- for tax in account_template.tax_ids:
- tax_ids.append(tax_template_ref[tax.id])
- #create the account_account
-
- dig = obj_multi.code_digits
- code_main = account_template.code and len(account_template.code) or 0
- code_acc = account_template.code or ''
- if code_main>0 and code_main<=dig and account_template.type != 'view':
- code_acc=str(code_acc) + (str('0'*(dig-code_main)))
- vals={
- 'name': (obj_acc_root.id == account_template.id) and obj_multi.company_id.name or account_template.name,
- 'currency_id': account_template.currency_id and account_template.currency_id.id or False,
- 'code': code_acc,
- 'type': account_template.type,
- 'user_type': account_template.user_type and account_template.user_type.id or False,
- 'reconcile': account_template.reconcile,
- 'shortcut': account_template.shortcut,
- 'note': account_template.note,
- 'parent_id': account_template.parent_id and ((account_template.parent_id.id in acc_template_ref) and acc_template_ref[account_template.parent_id.id]) or False,
- 'tax_ids': [(6,0,tax_ids)],
- 'company_id': company_id,
- }
- new_account = obj_acc.create(cr, uid, vals, context=ctx)
- acc_template_ref[account_template.id] = new_account
-
-
- #reactivate the parent_store functionnality on account_account
- obj_acc._parent_store_compute(cr)
-
- for key,value in todo_dict.items():
- if value['account_collected_id'] or value['account_paid_id']:
- obj_acc_tax.write(cr, uid, [key], {
- 'account_collected_id': acc_template_ref.get(value['account_collected_id'], False),
- 'account_paid_id': acc_template_ref.get(value['account_paid_id'], False),
- })
-
- # Creating Journals
- data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_sp_journal_view')])
- data = obj_data.browse(cr, uid, data_id[0], context=context)
- view_id = data.res_id
-
- #Sales Journal
- analytical_sale_ids = analytic_journal_obj.search(cr,uid,[('type','=','sale')])
- analytical_journal_sale = analytical_sale_ids and analytical_sale_ids[0] or False
-
- vals_journal = {
- 'name': _('Sales Journal'),
- 'type': 'sale',
- 'code': _('SAJ'),
- 'view_id': view_id,
- 'company_id': company_id,
- 'analytic_journal_id': analytical_journal_sale,
- }
-
- if obj_multi.chart_template_id.property_account_receivable:
- vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
- vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
-
- obj_journal.create(cr,uid,vals_journal)
-
- # Purchase Journal
- analytical_purchase_ids = analytic_journal_obj.search(cr,uid,[('type','=','purchase')])
- analytical_journal_purchase = analytical_purchase_ids and analytical_purchase_ids[0] or False
-
- vals_journal = {
- 'name': _('Purchase Journal'),
- 'type': 'purchase',
- 'code': _('EXJ'),
- 'view_id': view_id,
- 'company_id': company_id,
- 'analytic_journal_id': analytical_journal_purchase,
- }
-
- if obj_multi.chart_template_id.property_account_payable:
- vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
- vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
- obj_journal.create(cr,uid,vals_journal)
-
- # Creating Journals Sales Refund and Purchase Refund
- data_id = obj_data.search(cr, uid, [('model', '=', 'account.journal.view'), ('name', '=', 'account_sp_refund_journal_view')], context=context)
- data = obj_data.browse(cr, uid, data_id[0], context=context)
- view_id = data.res_id
-
- #Sales Refund Journal
- vals_journal = {
- 'name': _('Sales Refund Journal'),
- 'type': 'sale_refund',
- 'code': _('SCNJ'),
- 'view_id': view_id,
- 'analytic_journal_id': analytical_journal_sale,
- 'company_id': company_id
- }
-
- if obj_multi.chart_template_id.property_account_receivable:
- vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
- vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
-
- obj_journal.create(cr, uid, vals_journal, context=context)
-
- # Purchase Refund Journal
- vals_journal = {
- 'name': _('Purchase Refund Journal'),
- 'type': 'purchase_refund',
- 'code': _('ECNJ'),
- 'view_id': view_id,
- 'analytic_journal_id': analytical_journal_purchase,
- 'company_id': company_id
- }
-
- if obj_multi.chart_template_id.property_account_payable:
- vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
- vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
-
- obj_journal.create(cr, uid, vals_journal, context=context)
-
- # Miscellaneous Journal
- data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_view')])
- data = obj_data.browse(cr, uid, data_id[0], context=context)
- view_id = data.res_id
-
- analytical_miscellaneous_ids = analytic_journal_obj.search(cr, uid, [('type', '=', 'situation')], context=context)
- analytical_journal_miscellaneous = analytical_miscellaneous_ids and analytical_miscellaneous_ids[0] or False
-
- vals_journal = {
- 'name': _('Miscellaneous Journal'),
- 'type': 'general',
- 'code': _('MISC'),
- 'view_id': view_id,
- 'analytic_journal_id': analytical_journal_miscellaneous,
- 'company_id': company_id
- }
-
- obj_journal.create(cr, uid, vals_journal, context=context)
-
- # Opening Entries Journal
- if obj_multi.chart_template_id.property_account_income_opening and obj_multi.chart_template_id.property_account_expense_opening:
- vals_journal = {
- 'name': _('Opening Entries Journal'),
- 'type': 'situation',
- 'code': _('OPEJ'),
- 'view_id': view_id,
- 'company_id': company_id,
- 'centralisation': True,
- 'default_credit_account_id': acc_template_ref[obj_multi.chart_template_id.property_account_income_opening.id],
- 'default_debit_account_id': acc_template_ref[obj_multi.chart_template_id.property_account_expense_opening.id]
- }
- obj_journal.create(cr, uid, vals_journal, context=context)
-
- # Bank Journals
- data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view')])
- data = obj_data.browse(cr, uid, data_id[0], context=context)
- view_id_cash = data.res_id
-
- data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view_multi')])
- data = obj_data.browse(cr, uid, data_id[0], context=context)
- view_id_cur = data.res_id
- ref_acc_bank = obj_multi.chart_template_id.bank_account_view_id
-
- current_num = 1
- valid = True
- for line in obj_multi.bank_accounts_id:
- #create the account_account for this bank journal
- tmp = line.acc_name
- dig = obj_multi.code_digits
- if not ref_acc_bank.code:
- raise osv.except_osv(_('Configuration Error !'), _('The bank account defined on the selected chart of accounts hasn\'t a code.'))
- while True:
- new_code = str(ref_acc_bank.code.ljust(dig-len(str(current_num)), '0')) + str(current_num)
- ids = obj_acc.search(cr, uid, [('code', '=', new_code), ('company_id', '=', company_id)])
- if not ids:
- break
- else:
- current_num += 1
- vals = {
- 'name': tmp,
- 'currency_id': line.currency_id and line.currency_id.id or False,
- 'code': new_code,
- 'type': 'liquidity',
- 'user_type': account_template.user_type and account_template.user_type.id or False,
- 'reconcile': True,
- 'parent_id': acc_template_ref[ref_acc_bank.id] or False,
- 'company_id': company_id,
- }
- acc_cash_id = obj_acc.create(cr,uid,vals)
-
- #create the bank journal
- vals_journal = {
- 'name': vals['name'],
- 'code': _('BNK') + str(current_num),
- 'type': line.account_type == 'cash' and 'cash' or 'bank',
- 'company_id': company_id,
- 'analytic_journal_id': False,
- 'currency_id': False,
- }
- if line.currency_id:
- vals_journal['view_id'] = view_id_cur
- vals_journal['currency'] = line.currency_id.id
- else:
- vals_journal['view_id'] = view_id_cash
- vals_journal['default_credit_account_id'] = acc_cash_id
- vals_journal['default_debit_account_id'] = acc_cash_id
- obj_journal.create(cr, uid, vals_journal)
- current_num += 1
- valid = True
-
- #create the properties
+ :param chart_template_id: id of the current chart template for which we need to create properties
+ :param acc_template_ref: Mapping between ids of account templates and real accounts created from them
+ :param company_id: company_id selected from wizard.multi.charts.accounts.
+ :returns: True
+ """
property_obj = self.pool.get('ir.property')
- fields_obj = self.pool.get('ir.model.fields')
-
+ field_obj = self.pool.get('ir.model.fields')
todo_list = [
('property_account_receivable','res.partner','account.account'),
('property_account_payable','res.partner','account.account'),
@@ -3180,61 +3181,314 @@ class wizard_multi_charts_accounts(osv.osv_memory):
('property_account_income','product.template','account.account'),
('property_reserve_and_surplus_account','res.company','account.account')
]
+ template = self.pool.get('account.chart.template').browse(cr, uid, chart_template_id, context=context)
for record in todo_list:
- r = []
- r = property_obj.search(cr, uid, [('name','=', record[0] ),('company_id','=',company_id)])
- account = getattr(obj_multi.chart_template_id, record[0])
- field = fields_obj.search(cr, uid, [('name','=',record[0]),('model','=',record[1]),('relation','=',record[2])])
- vals = {
- 'name': record[0],
- 'company_id': company_id,
- 'fields_id': field[0],
- 'value': account and 'account.account,' + str(acc_template_ref[account.id]) or False,
+ account = getattr(template, record[0])
+ value = account and 'account.account,' + str(acc_template_ref[account.id]) or False
+ if value:
+ field = field_obj.search(cr, uid, [('name', '=', record[0]),('model', '=', record[1]),('relation', '=', record[2])], context=context)
+ vals = {
+ 'name': record[0],
+ 'company_id': company_id,
+ 'fields_id': field[0],
+ 'value': value,
+ }
+ property_ids = property_obj.search(cr, uid, [('name','=', record[0]),('company_id', '=', company_id)], context=context)
+ if property_ids:
+ #the property exist: modify it
+ property_obj.write(cr, uid, property_ids, vals, context=context)
+ else:
+ #create the property
+ property_obj.create(cr, uid, vals, context=context)
+ return True
+
+ def _install_template(self, cr, uid, template_id, company_id, code_digits=None, obj_wizard=None, acc_ref={}, taxes_ref={}, tax_code_ref={}, context=None):
+ '''
+ This function recursively loads the template objects and create the real objects from them.
+
+ :param template_id: id of the chart template to load
+ :param company_id: id of the company the wizard is running for
+ :param code_digits: integer that depicts the number of digits the accounts code should have in the COA
+ :param obj_wizard: the current wizard for generating the COA from the templates
+ :param acc_ref: Mapping between ids of account templates and real accounts created from them
+ :param taxes_ref: Mapping between ids of tax templates and real taxes created from them
+ :param tax_code_ref: Mapping between ids of tax code templates and real tax codes created from them
+ :returns: return a tuple with a dictionary containing
+ * the mapping between the account template ids and the ids of the real accounts that have been generated
+ from them, as first item,
+ * a similar dictionary for mapping the tax templates and taxes, as second item,
+ * a last identical containing the mapping of tax code templates and tax codes
+ :rtype: tuple(dict, dict, dict)
+ '''
+ template = self.pool.get('account.chart.template').browse(cr, uid, template_id, context=context)
+ if template.parent_id:
+ tmp1, tmp2, tmp3 = self._install_template(cr, uid, template.parent_id.id, company_id, code_digits=code_digits, acc_ref=acc_ref, taxes_ref=taxes_ref, tax_code_ref=tax_code_ref, context=context)
+ acc_ref.update(tmp1)
+ taxes_ref.update(tmp2)
+ tax_code_ref.update(tmp3)
+ tmp1, tmp2, tmp3 = self._load_template(cr, uid, template_id, company_id, code_digits=code_digits, obj_wizard=obj_wizard, account_ref=acc_ref, taxes_ref=taxes_ref, tax_code_ref=tax_code_ref, context=context)
+ acc_ref.update(tmp1)
+ taxes_ref.update(tmp2)
+ tax_code_ref.update(tmp3)
+ return acc_ref, taxes_ref, tax_code_ref
+
+ def _load_template(self, cr, uid, template_id, company_id, code_digits=None, obj_wizard=None, account_ref={}, taxes_ref={}, tax_code_ref={}, context=None):
+ '''
+ This function generates all the objects from the templates
+
+ :param template_id: id of the chart template to load
+ :param company_id: id of the company the wizard is running for
+ :param code_digits: integer that depicts the number of digits the accounts code should have in the COA
+ :param obj_wizard: the current wizard for generating the COA from the templates
+ :param acc_ref: Mapping between ids of account templates and real accounts created from them
+ :param taxes_ref: Mapping between ids of tax templates and real taxes created from them
+ :param tax_code_ref: Mapping between ids of tax code templates and real tax codes created from them
+ :returns: return a tuple with a dictionary containing
+ * the mapping between the account template ids and the ids of the real accounts that have been generated
+ from them, as first item,
+ * a similar dictionary for mapping the tax templates and taxes, as second item,
+ * a last identical containing the mapping of tax code templates and tax codes
+ :rtype: tuple(dict, dict, dict)
+ '''
+ template = self.pool.get('account.chart.template').browse(cr, uid, template_id, context=context)
+ obj_tax_code_template = self.pool.get('account.tax.code.template')
+ obj_acc_tax = self.pool.get('account.tax')
+ obj_tax_temp = self.pool.get('account.tax.template')
+ obj_acc_template = self.pool.get('account.account.template')
+ obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
+
+ # create all the tax code.
+ tax_code_ref.update(obj_tax_code_template.generate_tax_code(cr, uid, template.tax_code_root_id.id, company_id, context=context))
+
+ # Generate taxes from templates.
+ tax_templates = [x for x in template.tax_template_ids]
+ generated_tax_res = obj_tax_temp._generate_tax(cr, uid, tax_templates, tax_code_ref, company_id, context=context)
+ taxes_ref.update(generated_tax_res['tax_template_to_tax'])
+
+ # Generating Accounts from templates.
+ account_template_ref = obj_acc_template.generate_account(cr, uid, template_id, taxes_ref, account_ref, code_digits, company_id, context=context)
+ account_ref.update(account_template_ref)
+
+ # writing account values on tax after creation of accounts
+ for key,value in generated_tax_res['account_dict'].items():
+ if value['account_collected_id'] or value['account_paid_id']:
+ obj_acc_tax.write(cr, uid, [key], {
+ 'account_collected_id': account_ref.get(value['account_collected_id'], False),
+ 'account_paid_id': account_ref.get(value['account_paid_id'], False),
+ })
+
+ # Create Journals
+ self.generate_journals(cr, uid, template_id, account_ref, company_id, context=context)
+
+ # generate properties function
+ self.generate_properties(cr, uid, template_id, account_ref, company_id, context=context)
+
+ # Generate Fiscal Position , Fiscal Position Accounts and Fiscal Position Taxes from templates
+ obj_fiscal_position_template.generate_fiscal_position(cr, uid, template_id, taxes_ref, account_ref, company_id, context=context)
+
+ return account_ref, taxes_ref, tax_code_ref
+
+ def _create_tax_templates_from_rates(self, cr, uid, obj_wizard, company_id, context=None):
+ '''
+ This function checks if the chosen chart template is configured as containing a full set of taxes, and if
+ it's not the case, it creates the templates for account.tax.code and for account.account.tax objects accordingly
+ to the provided sale/purchase rates. Then it saves the new tax templates as default taxes to use for this chart
+ template.
+
+ :param obj_wizard: browse record of wizard to generate COA from templates
+ :param company_id: id of the company for wich the wizard is running
+ :return: True
+ '''
+ obj_tax_code_template = self.pool.get('account.tax.code.template')
+ obj_tax_temp = self.pool.get('account.tax.template')
+ chart_template = obj_wizard.chart_template_id
+ vals = {}
+ # create tax templates and tax code templates from purchase_tax_rate and sale_tax_rate fields
+ if not chart_template.complete_tax_set:
+ tax_data = {
+ 'sale': obj_wizard.sale_tax_rate,
+ 'purchase': obj_wizard.purchase_tax_rate,
}
- if r:
- #the property exist: modify it
- property_obj.write(cr, uid, r, vals)
- else:
- #create the property
- property_obj.create(cr, uid, vals)
+ for tax_type, value in tax_data.items():
+ # don't consider cases where entered value in rates are lower than 0
+ if value >= 0.0:
+ #create the tax code templates for base and tax
+ base_code_vals = {
+ 'name': (tax_type == 'sale' and _('Taxable Sales at %s') or _('Taxable Purchases at %s')) % value,
+ 'code': (tax_type == 'sale' and _('BASE-S-%s') or _('BASE-P-%s')) %value,
+ 'parent_id': chart_template.tax_code_root_id.id,
+ 'company_id': company_id,
+ }
+ new_base_code_id = obj_tax_code_template.create(cr, uid, base_code_vals, context=context)
+ tax_code_vals = {
+ 'name': (tax_type == 'sale' and _('Tax Received at %s') or _('Tax Paid at %s')) % value,
+ 'code': (tax_type == 'sale' and _('TAX-S-%s') or _('TAX-P-%s')) %value,
+ 'parent_id': chart_template.tax_code_root_id.id,
+ 'company_id': company_id,
+ }
+ new_tax_code_id = obj_tax_code_template.create(cr, uid, tax_code_vals, context=context)
+ #create the tax
+ tax_template_id = obj_tax_temp.create(cr, uid, {
+ 'name': _('Tax %s%%') % value,
+ 'amount': value/100,
+ 'base_code_id': new_base_code_id,
+ 'tax_code_id': new_tax_code_id,
+ 'ref_base_code_id': new_base_code_id,
+ 'ref_tax_code_id': new_tax_code_id,
+ 'type_tax_use': tax_type,
+ 'type': 'percent',
+ 'sequence': 0,
+ 'chart_template_id': chart_template.id or False,
+ }, context=context)
+ #record this new tax_template as default for this chart template
+ field_name = tax_type == 'sale' and 'sale_tax' or 'purchase_tax'
+ vals[field_name] = tax_template_id
+ self.write(cr, uid, obj_wizard.id, vals, context=context)
+ return True
- fp_ids = obj_fiscal_position_template.search(cr, uid, [('chart_template_id', '=', obj_multi.chart_template_id.id)])
+ def execute(self, cr, uid, ids, context=None):
+ '''
+ This function is called at the confirmation of the wizard to generate the COA from the templates. It will read
+ all the provided information to create the accounts, the banks, the journals, the taxes, the tax codes, the
+ accounting properties... accordingly for the chosen company.
+ '''
+ ir_values_obj = self.pool.get('ir.values')
+ obj_wizard = self.browse(cr, uid, ids[0])
+ company_id = obj_wizard.company_id.id
+ # If the floats for sale/purchase rates have been filled, create templates from them
+ self._create_tax_templates_from_rates(cr, uid, obj_wizard, company_id, context=context)
- if fp_ids:
- obj_tax_fp = self.pool.get('account.fiscal.position.tax')
- obj_ac_fp = self.pool.get('account.fiscal.position.account')
+ # Install all the templates objects and generate the real objects
+ acc_template_ref, taxes_ref, tax_code_ref = self._install_template(cr, uid, obj_wizard.chart_template_id.id, company_id, code_digits=obj_wizard.code_digits, obj_wizard=obj_wizard, context=context)
- for position in obj_fiscal_position_template.browse(cr, uid, fp_ids, context=context):
+ # write values of default taxes for product
+ if obj_wizard.sale_tax and taxes_ref:
+ ir_values_obj.set(cr, uid, key='default', key2=False, name="taxes_id", company=company_id,
+ models =[('product.product',False)], value=[taxes_ref[obj_wizard.sale_tax.id]])
+ if obj_wizard.purchase_tax and taxes_ref:
+ ir_values_obj.set(cr, uid, key='default', key2=False, name="supplier_taxes_id", company=company_id,
+ models =[('product.product',False)], value=[taxes_ref[obj_wizard.purchase_tax.id]])
- vals_fp = {
- 'company_id': company_id,
- 'name': position.name,
+ # Create Bank journals
+ self._create_bank_journals_from_o2m(cr, uid, obj_wizard, company_id, acc_template_ref, context=context)
+ return True
+
+ def _prepare_bank_journal(self, cr, uid, line, current_num, default_account_id, company_id, context=None):
+ '''
+ This function prepares the value to use for the creation of a bank journal created through the wizard of
+ generating COA from templates.
+
+ :param line: dictionary containing the values encoded by the user related to his bank account
+ :param current_num: integer corresponding to a counter of the already created bank journals through this wizard.
+ :param default_account_id: id of the default debit.credit account created before for this journal.
+ :param company_id: id of the company for which the wizard is running
+ :return: mapping of field names and values
+ :rtype: dict
+ '''
+ obj_data = self.pool.get('ir.model.data')
+ # Get the id of journal views
+ tmp = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_bank_view_multi')
+ view_id_cur = tmp and tmp[1] or False
+ tmp = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_bank_view')
+ view_id_cash = tmp and tmp[1] or False
+ vals = {
+ 'name': line['acc_name'],
+ 'code': _('BNK') + str(current_num),
+ 'type': line['account_type'] == 'cash' and 'cash' or 'bank',
+ 'company_id': company_id,
+ 'analytic_journal_id': False,
+ 'currency': False,
+ 'default_credit_account_id': default_account_id,
+ 'default_debit_account_id': default_account_id,
+ }
+ if line['currency_id']:
+ vals['view_id'] = view_id_cur
+ vals['currency'] = line['currency_id']
+ else:
+ vals['view_id'] = view_id_cash
+ return vals
+
+ def _prepare_bank_account(self, cr, uid, line, new_code, acc_template_ref, ref_acc_bank, company_id, context=None):
+ '''
+ This function prepares the value to use for the creation of the default debit and credit accounts of a
+ bank journal created through the wizard of generating COA from templates.
+
+ :param line: dictionary containing the values encoded by the user related to his bank account
+ :param new_code: integer corresponding to the next available number to use as account code
+ :param acc_template_ref: the dictionary containing the mapping between the ids of account templates and the ids
+ of the accounts that have been generated from them.
+ :param ref_acc_bank: browse record of the account template set as root of all bank accounts for the chosen
+ template
+ :param company_id: id of the company for which the wizard is running
+ :return: mapping of field names and values
+ :rtype: dict
+ '''
+ obj_data = self.pool.get('ir.model.data')
+
+ # Get the id of the user types fr-or cash and bank
+ tmp = obj_data.get_object_reference(cr, uid, 'account', 'data_account_type_cash')
+ cash_type = tmp and tmp[1] or False
+ tmp = obj_data.get_object_reference(cr, uid, 'account', 'data_account_type_bank')
+ bank_type = tmp and tmp[1] or False
+ return {
+ 'name': line['acc_name'],
+ 'currency_id': line['currency_id'],
+ 'code': new_code,
+ 'type': 'liquidity',
+ 'user_type': line['account_type'] == 'cash' and cash_type or bank_type,
+ 'parent_id': acc_template_ref[ref_acc_bank.id] or False,
+ 'company_id': company_id,
+ }
+
+ def _create_bank_journals_from_o2m(self, cr, uid, obj_wizard, company_id, acc_template_ref, context=None):
+ '''
+ This function creates bank journals and its accounts for each line encoded in the field bank_accounts_id of the
+ wizard.
+
+ :param obj_wizard: the current wizard that generates the COA from the templates.
+ :param company_id: the id of the company for which the wizard is running.
+ :param acc_template_ref: the dictionary containing the mapping between the ids of account templates and the ids
+ of the accounts that have been generated from them.
+ :return: True
+ '''
+ obj_acc = self.pool.get('account.account')
+ obj_journal = self.pool.get('account.journal')
+ code_digits = obj_wizard.code_digits
+
+ # Build a list with all the data to process
+ journal_data = []
+ if obj_wizard.bank_accounts_id:
+ for acc in obj_wizard.bank_accounts_id:
+ vals = {
+ 'acc_name': acc.acc_name,
+ 'account_type': acc.account_type,
+ 'currency_id': acc.currency_id.id,
}
- new_fp = obj_fiscal_position.create(cr, uid, vals_fp)
+ journal_data.append(vals)
+ ref_acc_bank = obj_wizard.chart_template_id.bank_account_view_id
+ if journal_data and not ref_acc_bank.code:
+ raise osv.except_osv(_('Configuration Error !'), _('The bank account defined on the selected chart of accounts hasn\'t a code.'))
- for tax in position.tax_ids:
- vals_tax = {
- 'tax_src_id': tax_template_ref[tax.tax_src_id.id],
- 'tax_dest_id': tax.tax_dest_id and tax_template_ref[tax.tax_dest_id.id] or False,
- 'position_id': new_fp,
- }
- obj_tax_fp.create(cr, uid, vals_tax)
+ current_num = 1
+ for line in journal_data:
+ # Seek the next available number for the account code
+ while True:
+ new_code = str(ref_acc_bank.code.ljust(code_digits-len(str(current_num)), '0')) + str(current_num)
+ ids = obj_acc.search(cr, uid, [('code', '=', new_code), ('company_id', '=', company_id)])
+ if not ids:
+ break
+ else:
+ current_num += 1
+ # Create the default debit/credit accounts for this bank journal
+ vals = self._prepare_bank_account(cr, uid, line, new_code, acc_template_ref, ref_acc_bank, company_id, context=context)
+ default_account_id = obj_acc.create(cr, uid, vals, context=context)
- for acc in position.account_ids:
- vals_acc = {
- 'account_src_id': acc_template_ref[acc.account_src_id.id],
- 'account_dest_id': acc_template_ref[acc.account_dest_id.id],
- 'position_id': new_fp,
- }
- obj_ac_fp.create(cr, uid, vals_acc)
-
- if obj_multi.sale_tax:
- ir_values_obj.set(cr, uid, key='default', key2=False, name="taxes_id", company=obj_multi.company_id.id,
- models =[('product.product',False)], value=[tax_template_to_tax[obj_multi.sale_tax.id]])
- if obj_multi.purchase_tax:
- ir_values_obj.set(cr, uid, key='default', key2=False, name="supplier_taxes_id", company=obj_multi.company_id.id,
- models =[('product.product',False)], value=[tax_template_to_tax[obj_multi.purchase_tax.id]])
+ #create the bank journal
+ vals_journal = self._prepare_bank_journal(cr, uid, line, current_num, default_account_id, company_id, context=context)
+ obj_journal.create(cr, uid, vals_journal)
+ current_num += 1
+ return True
wizard_multi_charts_accounts()
diff --git a/addons/account/account_bank.py b/addons/account/account_bank.py
index 01eab2fbb01..02270b94186 100644
--- a/addons/account/account_bank.py
+++ b/addons/account/account_bank.py
@@ -99,7 +99,6 @@ class bank(osv.osv):
'type': 'bank',
'company_id': bank.company_id.id,
'analytic_journal_id': False,
- 'currency_id': False,
'default_credit_account_id': acc_bank_id,
'default_debit_account_id': acc_bank_id,
'view_id': view_id_cash
diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py
index 57472e228ef..ab36586fe2f 100644
--- a/addons/account/account_bank_statement.py
+++ b/addons/account/account_bank_statement.py
@@ -30,10 +30,10 @@ class account_bank_statement(osv.osv):
def create(self, cr, uid, vals, context=None):
seq = 0
if 'line_ids' in vals:
+ new_line_ids = []
for line in vals['line_ids']:
seq += 1
line[2]['sequence'] = seq
- vals[seq - 1] = line
return super(account_bank_statement, self).create(cr, uid, vals, context=context)
def write(self, cr, uid, ids, vals, context=None):
diff --git a/addons/account/account_installer.xml b/addons/account/account_installer.xml
index e249f8fa872..430d65e0bf9 100644
--- a/addons/account/account_installer.xml
+++ b/addons/account/account_installer.xml
@@ -25,7 +25,7 @@
-
+
@@ -34,10 +34,6 @@
-
-
-
-
diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py
index 27881bf1280..bef6e68221a 100644
--- a/addons/account/account_invoice.py
+++ b/addons/account/account_invoice.py
@@ -207,7 +207,7 @@ class account_invoice(osv.osv):
help=' * The \'Draft\' state is used when a user is encoding a new and unconfirmed Invoice. \
\n* The \'Pro-forma\' when invoice is in Pro-forma state,invoice does not have an invoice number. \
\n* The \'Open\' state is used when user create invoice,a invoice number is generated.Its in open state till user does not pay invoice. \
- \n* The \'Paid\' state is set automatically when invoice is paid.\
+ \n* The \'Paid\' state is set automatically when the invoice is paid. Its related journal entries may or may not be reconciled. \
\n* The \'Cancelled\' state is used when user cancel invoice.'),
'date_invoice': fields.date('Invoice Date', readonly=True, states={'draft':[('readonly',False)]}, select=True, help="Keep empty to use the current date"),
'date_due': fields.date('Due Date', states={'paid':[('readonly',True)], 'open':[('readonly',True)], 'close':[('readonly',True)]}, select=True,
@@ -257,7 +257,7 @@ class account_invoice(osv.osv):
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, None, 50), # Check if we can remove ?
'account.move.line': (_get_invoice_from_line, None, 50),
'account.move.reconcile': (_get_invoice_from_reconcile, None, 50),
- }, help="The Journal Entry of the invoice have been totally reconciled with one or several Journal Entries of payment."),
+ }, help="It indicates that the invoice has been paid and the journal entry of the invoice has been reconciled with one or several journal entries of payment."),
'partner_bank_id': fields.many2one('res.partner.bank', 'Bank Account',
help='Bank Account Number, Company bank account if Invoice is customer or supplier refund, otherwise Partner bank account number.', readonly=True, states={'draft':[('readonly',False)]}),
'move_lines':fields.function(_get_lines, type='many2many', relation='account.move.line', string='Entry Lines'),
@@ -610,15 +610,15 @@ class account_invoice(osv.osv):
res[r[0]].append( r[1] )
return res
- def copy(self, cr, uid, id, default={}, context=None):
- if context is None:
- context = {}
+ def copy(self, cr, uid, id, default=None, context=None):
+ default = default or {}
default.update({
'state':'draft',
'number':False,
'move_id':False,
'move_name':False,
'internal_number': False,
+ 'period_id': False,
})
if 'date_invoice' not in default:
default.update({
@@ -923,7 +923,6 @@ class account_invoice(osv.osv):
'line_id': line,
'journal_id': journal_id,
'date': date,
- 'type': entry_type,
'narration':inv.comment
}
period_id = inv.period_id and inv.period_id.id or False
@@ -1081,7 +1080,8 @@ class account_invoice(osv.osv):
del line['invoice_id']
for field in ('company_id', 'partner_id', 'account_id', 'product_id',
'uos_id', 'account_analytic_id', 'tax_code_id', 'base_code_id'):
- line[field] = line.get(field, False) and line[field][0]
+ if line.get(field):
+ line[field] = line[field][0]
if 'invoice_line_tax_id' in line:
line['invoice_line_tax_id'] = [(6,0, line.get('invoice_line_tax_id', [])) ]
return map(lambda x: (0,0,x), lines)
@@ -1209,7 +1209,7 @@ class account_invoice(osv.osv):
l2['name'] = name
lines = [(0, 0, l1), (0, 0, l2)]
- move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'date': date, 'type': entry_type}
+ move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'date': date}
move_id = self.pool.get('account.move').create(cr, uid, move, context=context)
line_ids = []
@@ -1642,12 +1642,7 @@ class res_partner(osv.osv):
}
def copy(self, cr, uid, id, default=None, context=None):
- if default is None:
- default = {}
-
- if context is None:
- context = {}
-
+ default = default or {}
default.update({'invoice_ids' : []})
return super(res_partner, self).copy(cr, uid, id, default, context)
diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml
index 4cc1a63db61..d14106bab5f 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -362,13 +362,13 @@
-
+
-
+
-
-
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 16cd957a61e..d25190e01b2 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -171,8 +171,8 @@
-
-
+
+
@@ -326,6 +326,7 @@
@@ -1753,18 +1754,18 @@
@@ -51,9 +51,7 @@
-
-
@@ -94,9 +92,9 @@
-
+
@@ -121,7 +119,7 @@
-
+
@@ -290,8 +288,12 @@
-
-
+
+
+ Assetsaccount.asset.assetform
@@ -317,7 +319,7 @@
Review Asset Categoriesaccount.asset.categoryform
- form
+ tree,form
diff --git a/addons/account_asset/i18n/de.po b/addons/account_asset/i18n/de.po
index 41ca6dd0fbe..5b6c044d3c2 100755
--- a/addons/account_asset/i18n/de.po
+++ b/addons/account_asset/i18n/de.po
@@ -8,31 +8,31 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2009-11-24 12:54+0000\n"
-"PO-Revision-Date: 2011-07-12 12:04+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-11-29 08:00+0000\n"
+"Last-Translator: Ferdinand @ Camptocamp \n"
"Language-Team: German \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-11-30 05:27+0000\n"
+"X-Generator: Launchpad (build 14404)\n"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_normal
msgid "Open Assets"
-msgstr ""
+msgstr "Anlage (Entwurf)"
#. module: account_asset
#: field:account.asset.property,method_end:0
#: field:account.asset.property.history,method_end:0
msgid "Ending date"
-msgstr ""
+msgstr "Ende Datum"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation board"
-msgstr ""
+msgstr "Abschreibungs-Tableau"
#. module: account_asset
#: view:account.asset.asset:0
@@ -45,61 +45,61 @@ msgstr ""
#: model:ir.model,name:account_asset.model_account_asset_asset
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_form
msgid "Asset"
-msgstr ""
+msgstr "Anlagegüter"
#. module: account_asset
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
-msgstr ""
+msgstr "Ungültiger Modellname in der Aktionsdefinition."
#. module: account_asset
#: selection:account.asset.property,method:0
msgid "Linear"
-msgstr ""
+msgstr "Linear"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Change duration"
-msgstr ""
+msgstr "Verändere Lebensdauer"
#. module: account_asset
#: field:account.asset.asset,child_ids:0
msgid "Child assets"
-msgstr ""
+msgstr "untergeordnete Anlagengüter"
#. module: account_asset
#: field:account.asset.board,value_asset:0
msgid "Asset Value"
-msgstr ""
+msgstr "Anlagenwert"
#. module: account_asset
#: wizard_field:account.asset.modify,init,name:0
msgid "Reason"
-msgstr ""
+msgstr "Begründung"
#. module: account_asset
#: view:account.asset.asset:0
#: field:account.asset.asset,entry_ids:0
#: wizard_field:account.asset.compute,asset_compute,move_ids:0
msgid "Entries"
-msgstr ""
+msgstr "Buchungen"
#. module: account_asset
#: wizard_view:account.asset.compute,asset_compute:0
msgid "Generated entries"
-msgstr ""
+msgstr "erzeugte Buchungen"
#. module: account_asset
#: wizard_field:account.asset.modify,init,method_delay:0
#: field:account.asset.property,method_delay:0
#: field:account.asset.property.history,method_delay:0
msgid "Number of interval"
-msgstr ""
+msgstr "Anzahl der Intervalle"
#. module: account_asset
#: wizard_button:account.asset.compute,asset_compute,asset_open:0
msgid "Open entries"
-msgstr ""
+msgstr "offene Buchungen"
#. module: account_asset
#: view:account.asset.asset:0
@@ -108,102 +108,102 @@ msgstr ""
#: model:ir.ui.menu,name:account_asset.menu_finance_Assets
#: model:ir.ui.menu,name:account_asset.menu_finance_config_Assets
msgid "Assets"
-msgstr ""
+msgstr "Anlagegüter"
#. module: account_asset
#: selection:account.asset.property,method:0
msgid "Progressive"
-msgstr ""
+msgstr "Progressiv"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_draft
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_draft
msgid "Draft Assets"
-msgstr ""
+msgstr "Anlagegüter (Entwurf)"
#. module: account_asset
#: wizard_view:account.asset.modify,init:0
#: wizard_field:account.asset.modify,init,note:0
#: view:account.asset.property.history:0
msgid "Notes"
-msgstr ""
+msgstr "Bemerkungen"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Change history"
-msgstr ""
+msgstr "Bearbeitungshistorie"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation entries"
-msgstr ""
+msgstr "Abschreibungsbuchungen"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Methods"
-msgstr ""
+msgstr "Methoden"
#. module: account_asset
#: wizard_view:account.asset.modify,init:0
msgid "Asset properties to modify"
-msgstr ""
+msgstr "zu verändernde Anlagenmerkmale"
#. module: account_asset
#: field:account.asset.asset,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: account_asset
#: wizard_field:account.asset.modify,init,method_period:0
#: field:account.asset.property,method_period:0
#: field:account.asset.property.history,method_period:0
msgid "Period per interval"
-msgstr ""
+msgstr "Perioden pro Intervall"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation duration"
-msgstr ""
+msgstr "Abschreibungsdauer"
#. module: account_asset
#: field:account.asset.property,account_analytic_id:0
msgid "Analytic account"
-msgstr ""
+msgstr "Analytisches Konto"
#. module: account_asset
#: field:account.asset.property,state:0
msgid "State"
-msgstr ""
+msgstr "Status"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation methods"
-msgstr ""
+msgstr "Abschreibungsmethode"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Other information"
-msgstr ""
+msgstr "Andere Informationen"
#. module: account_asset
#: field:account.asset.board,value_asset_cumul:0
msgid "Cumul. value"
-msgstr ""
+msgstr "kummulierter Betrag"
#. module: account_asset
#: view:account.asset.property:0
msgid "Assets methods"
-msgstr ""
+msgstr "Anlagen Methoden"
#. module: account_asset
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "Fehlerhafter XML-Code für diese Ansicht!"
#. module: account_asset
#: model:ir.model,name:account_asset.model_account_asset_property
msgid "Asset property"
-msgstr ""
+msgstr "Anlagenmerkmale"
#. module: account_asset
#: wizard_view:account.asset.compute,asset_compute:0
@@ -212,30 +212,30 @@ msgstr ""
#: model:ir.actions.wizard,name:account_asset.wizard_asset_compute
#: model:ir.ui.menu,name:account_asset.menu_wizard_asset_compute
msgid "Compute assets"
-msgstr ""
+msgstr "Berechne Anlagen"
#. module: account_asset
#: wizard_view:account.asset.modify,init:0
#: wizard_button:account.asset.modify,init,asset_modify:0
#: model:ir.actions.wizard,name:account_asset.wizard_asset_modify
msgid "Modify asset"
-msgstr ""
+msgstr "Verändere Anlagegut"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Confirm asset"
-msgstr ""
+msgstr "Anlagegut bestätigen"
#. module: account_asset
#: view:account.asset.property.history:0
#: model:ir.model,name:account_asset.model_account_asset_property_history
msgid "Asset history"
-msgstr ""
+msgstr "Anlagenhistorie"
#. module: account_asset
#: field:account.asset.property,date:0
msgid "Date created"
-msgstr ""
+msgstr "Erstellungsdatum"
#. module: account_asset
#: model:ir.module.module,description:account_asset.module_meta_information
@@ -252,211 +252,213 @@ msgstr ""
#: field:account.asset.board,value_gross:0
#: field:account.asset.property,value_total:0
msgid "Gross value"
-msgstr ""
+msgstr "Anschaffungswert"
#. module: account_asset
#: selection:account.asset.property,method_time:0
msgid "Ending period"
-msgstr ""
+msgstr "Periodenende"
#. module: account_asset
#: field:account.asset.board,name:0
msgid "Asset name"
-msgstr ""
+msgstr "Anlagenname"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Accounts information"
-msgstr ""
+msgstr "Konto Information"
#. module: account_asset
#: field:account.asset.asset,note:0
#: field:account.asset.category,note:0
#: field:account.asset.property.history,note:0
msgid "Note"
-msgstr ""
+msgstr "Notiz"
#. module: account_asset
#: selection:account.asset.asset,state:0
#: selection:account.asset.property,state:0
msgid "Draft"
-msgstr ""
+msgstr "Entwurf"
#. module: account_asset
#: field:account.asset.property,type:0
msgid "Depr. method type"
-msgstr ""
+msgstr "Abschreibungsmethode"
#. module: account_asset
#: field:account.asset.property,account_asset_id:0
msgid "Asset account"
-msgstr ""
+msgstr "Anlagenkonto"
#. module: account_asset
#: field:account.asset.property.history,asset_property_id:0
msgid "Method"
-msgstr ""
+msgstr "Methode"
#. module: account_asset
#: selection:account.asset.asset,state:0
msgid "Normal"
-msgstr ""
+msgstr "Normal"
#. module: account_asset
#: field:account.asset.property,method_progress_factor:0
msgid "Progressif factor"
-msgstr ""
+msgstr "Progressionsfaktor"
#. module: account_asset
#: field:account.asset.asset,localisation:0
msgid "Localisation"
-msgstr ""
+msgstr "Lokalisation"
#. module: account_asset
#: field:account.asset.property,method:0
msgid "Computation method"
-msgstr ""
+msgstr "Berechnungsmethode"
#. module: account_asset
#: field:account.asset.property,method_time:0
msgid "Time method"
-msgstr ""
+msgstr "Zeitmethode"
#. module: account_asset
#: field:account.asset.asset,active:0
msgid "Active"
-msgstr ""
+msgstr "Aktiv"
#. module: account_asset
#: field:account.asset.property.history,user_id:0
msgid "User"
-msgstr ""
+msgstr "Benutzer"
#. module: account_asset
#: field:account.asset.asset,property_ids:0
msgid "Asset method name"
-msgstr ""
+msgstr "Anlagenmethoden Bezeichnung"
#. module: account_asset
#: field:account.asset.asset,date:0
#: field:account.asset.property.history,date:0
msgid "Date"
-msgstr ""
+msgstr "Datum"
#. module: account_asset
#: field:account.asset.board,value_net:0
msgid "Net value"
-msgstr ""
+msgstr "Netto Wert"
#. module: account_asset
#: wizard_view:account.asset.close,init:0
#: model:ir.actions.wizard,name:account_asset.wizard_asset_close
msgid "Close asset"
-msgstr ""
+msgstr "Anlagegut schliessen"
#. module: account_asset
#: field:account.asset.property,history_ids:0
msgid "History"
-msgstr ""
+msgstr "Verlauf"
#. module: account_asset
#: field:account.asset.property,account_actif_id:0
msgid "Depreciation account"
-msgstr ""
+msgstr "AfA-Konto"
#. module: account_asset
#: field:account.asset.asset,period_id:0
#: wizard_field:account.asset.compute,init,period_id:0
msgid "Period"
-msgstr ""
+msgstr "Periode"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_category_form
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_category_form
msgid "Asset Category"
-msgstr ""
+msgstr "Anlagenkategorie"
#. module: account_asset
#: wizard_button:account.asset.close,init,end:0
#: wizard_button:account.asset.compute,init,end:0
#: wizard_button:account.asset.modify,init,end:0
msgid "Cancel"
-msgstr ""
+msgstr "Abbrechen"
#. module: account_asset
#: selection:account.asset.asset,state:0
#: wizard_button:account.asset.compute,asset_compute,end:0
#: selection:account.asset.property,state:0
msgid "Close"
-msgstr ""
+msgstr "Schließen"
#. module: account_asset
#: selection:account.asset.property,state:0
msgid "Open"
-msgstr ""
+msgstr "Öffnen"
#. module: account_asset
#: constraint:ir.model:0
msgid ""
"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Der Objektname muss mit \"x_\" beginnen und darf keine Sonderzeichen "
+"beinhalten!"
#. module: account_asset
#: model:ir.module.module,shortdesc:account_asset.module_meta_information
msgid "Asset management"
-msgstr ""
+msgstr "Anlagenbuchhaltung"
#. module: account_asset
#: view:account.asset.board:0
#: field:account.asset.property,board_ids:0
#: model:ir.model,name:account_asset.model_account_asset_board
msgid "Asset board"
-msgstr ""
+msgstr "Anlagenspiegel"
#. module: account_asset
#: field:account.asset.asset,state:0
msgid "Global state"
-msgstr ""
+msgstr "Globaler Status"
#. module: account_asset
#: selection:account.asset.property,method_time:0
msgid "Delay"
-msgstr ""
+msgstr "Verzögerung"
#. module: account_asset
#: wizard_view:account.asset.close,init:0
msgid "General information"
-msgstr ""
+msgstr "Allgemeine Informationen"
#. module: account_asset
#: field:account.asset.property,journal_analytic_id:0
msgid "Analytic journal"
-msgstr ""
+msgstr "analytisches Journal"
#. module: account_asset
#: field:account.asset.property,name:0
msgid "Method name"
-msgstr ""
+msgstr "Methodenname"
#. module: account_asset
#: field:account.asset.property,journal_id:0
msgid "Journal"
-msgstr ""
+msgstr "Journal"
#. module: account_asset
#: field:account.asset.property.history,name:0
msgid "History name"
-msgstr ""
+msgstr "Verlauf Bezeichnung"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Close method"
-msgstr ""
+msgstr "Abschlussmethode"
#. module: account_asset
#: field:account.asset.property,entry_asset_ids:0
msgid "Asset Entries"
-msgstr ""
+msgstr "Anlagen"
#. module: account_asset
#: field:account.asset.asset,category_id:0
@@ -464,66 +466,66 @@ msgstr ""
#: field:account.asset.category,name:0
#: model:ir.model,name:account_asset.model_account_asset_category
msgid "Asset category"
-msgstr ""
+msgstr "Analgenkategorie"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation"
-msgstr ""
+msgstr "Abschreibung"
#. module: account_asset
#: field:account.asset.asset,code:0
#: field:account.asset.category,code:0
msgid "Asset code"
-msgstr ""
+msgstr "Kurzbezeichnung"
#. module: account_asset
#: field:account.asset.asset,value_total:0
msgid "Total value"
-msgstr ""
+msgstr "Gesamt Wert"
#. module: account_asset
#: selection:account.asset.asset,state:0
msgid "View"
-msgstr ""
+msgstr "Ansicht"
#. module: account_asset
#: view:account.asset.asset:0
msgid "General info"
-msgstr ""
+msgstr "Allgemeine Informationen"
#. module: account_asset
#: field:account.asset.asset,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Sequenz"
#. module: account_asset
#: field:account.asset.property,value_residual:0
msgid "Residual value"
-msgstr ""
+msgstr "Buchwert"
#. module: account_asset
#: wizard_button:account.asset.close,init,asset_close:0
msgid "End of asset"
-msgstr ""
+msgstr "Ende des Anlagegutes"
#. module: account_asset
#: selection:account.asset.property,type:0
msgid "Direct"
-msgstr ""
+msgstr "Direkt"
#. module: account_asset
#: selection:account.asset.property,type:0
msgid "Indirect"
-msgstr ""
+msgstr "Indirekt"
#. module: account_asset
#: field:account.asset.asset,parent_id:0
msgid "Parent asset"
-msgstr ""
+msgstr "übergeordnetes Anlagegut"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_tree
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_tree
msgid "Asset Hierarchy"
-msgstr ""
+msgstr "Anlangenhierarchie"
diff --git a/addons/account_asset/i18n/es_AR.po b/addons/account_asset/i18n/es_AR.po
new file mode 100644
index 00000000000..9102ec58885
--- /dev/null
+++ b/addons/account_asset/i18n/es_AR.po
@@ -0,0 +1,529 @@
+# Spanish (Argentina) translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2009-11-24 12:54+0000\n"
+"PO-Revision-Date: 2011-11-30 23:41+0000\n"
+"Last-Translator: Gustavo Earnshaw \n"
+"Language-Team: Spanish (Argentina) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-12-02 04:47+0000\n"
+"X-Generator: Launchpad (build 14414)\n"
+
+#. module: account_asset
+#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal
+#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_normal
+msgid "Open Assets"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,method_end:0
+#: field:account.asset.property.history,method_end:0
+msgid "Ending date"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Depreciation board"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+#: field:account.asset.asset,name:0
+#: field:account.asset.board,asset_id:0
+#: field:account.asset.property,asset_id:0
+#: field:account.invoice.line,asset_id:0
+#: field:account.move.line,asset_id:0
+#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_form
+#: model:ir.model,name:account_asset.model_account_asset_asset
+#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_form
+msgid "Asset"
+msgstr ""
+
+#. module: account_asset
+#: constraint:ir.actions.act_window:0
+msgid "Invalid model name in the action definition."
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,method:0
+msgid "Linear"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Change duration"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,child_ids:0
+msgid "Child assets"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.board,value_asset:0
+msgid "Asset Value"
+msgstr "valor de activos"
+
+#. module: account_asset
+#: wizard_field:account.asset.modify,init,name:0
+msgid "Reason"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+#: field:account.asset.asset,entry_ids:0
+#: wizard_field:account.asset.compute,asset_compute,move_ids:0
+msgid "Entries"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.compute,asset_compute:0
+msgid "Generated entries"
+msgstr ""
+
+#. module: account_asset
+#: wizard_field:account.asset.modify,init,method_delay:0
+#: field:account.asset.property,method_delay:0
+#: field:account.asset.property.history,method_delay:0
+msgid "Number of interval"
+msgstr ""
+
+#. module: account_asset
+#: wizard_button:account.asset.compute,asset_compute,asset_open:0
+msgid "Open entries"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list
+#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list
+#: model:ir.ui.menu,name:account_asset.menu_finance_Assets
+#: model:ir.ui.menu,name:account_asset.menu_finance_config_Assets
+msgid "Assets"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,method:0
+msgid "Progressive"
+msgstr ""
+
+#. module: account_asset
+#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_draft
+#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_draft
+msgid "Draft Assets"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.modify,init:0
+#: wizard_field:account.asset.modify,init,note:0
+#: view:account.asset.property.history:0
+msgid "Notes"
+msgstr "Notas"
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Change history"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Depreciation entries"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Methods"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.modify,init:0
+msgid "Asset properties to modify"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,partner_id:0
+msgid "Partner"
+msgstr ""
+
+#. module: account_asset
+#: wizard_field:account.asset.modify,init,method_period:0
+#: field:account.asset.property,method_period:0
+#: field:account.asset.property.history,method_period:0
+msgid "Period per interval"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Depreciation duration"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,account_analytic_id:0
+msgid "Analytic account"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,state:0
+msgid "State"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Depreciation methods"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Other information"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.board,value_asset_cumul:0
+msgid "Cumul. value"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.property:0
+msgid "Assets methods"
+msgstr ""
+
+#. module: account_asset
+#: constraint:ir.ui.view:0
+msgid "Invalid XML for View Architecture!"
+msgstr ""
+
+#. module: account_asset
+#: model:ir.model,name:account_asset.model_account_asset_property
+msgid "Asset property"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.compute,asset_compute:0
+#: wizard_view:account.asset.compute,init:0
+#: wizard_button:account.asset.compute,init,asset_compute:0
+#: model:ir.actions.wizard,name:account_asset.wizard_asset_compute
+#: model:ir.ui.menu,name:account_asset.menu_wizard_asset_compute
+msgid "Compute assets"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.modify,init:0
+#: wizard_button:account.asset.modify,init,asset_modify:0
+#: model:ir.actions.wizard,name:account_asset.wizard_asset_modify
+msgid "Modify asset"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Confirm asset"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.property.history:0
+#: model:ir.model,name:account_asset.model_account_asset_property_history
+msgid "Asset history"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,date:0
+msgid "Date created"
+msgstr ""
+
+#. module: account_asset
+#: model:ir.module.module,description:account_asset.module_meta_information
+msgid ""
+"Financial and accounting asset management.\n"
+" Allows to define\n"
+" * Asset category. \n"
+" * Assets.\n"
+" *Asset usage period and property.\n"
+" "
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.board,value_gross:0
+#: field:account.asset.property,value_total:0
+msgid "Gross value"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,method_time:0
+msgid "Ending period"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.board,name:0
+msgid "Asset name"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Accounts information"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,note:0
+#: field:account.asset.category,note:0
+#: field:account.asset.property.history,note:0
+msgid "Note"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.asset,state:0
+#: selection:account.asset.property,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,type:0
+msgid "Depr. method type"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,account_asset_id:0
+msgid "Asset account"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property.history,asset_property_id:0
+msgid "Method"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.asset,state:0
+msgid "Normal"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,method_progress_factor:0
+msgid "Progressif factor"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,localisation:0
+msgid "Localisation"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,method:0
+msgid "Computation method"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,method_time:0
+msgid "Time method"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,active:0
+msgid "Active"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property.history,user_id:0
+msgid "User"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,property_ids:0
+msgid "Asset method name"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,date:0
+#: field:account.asset.property.history,date:0
+msgid "Date"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.board,value_net:0
+msgid "Net value"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.close,init:0
+#: model:ir.actions.wizard,name:account_asset.wizard_asset_close
+msgid "Close asset"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,history_ids:0
+msgid "History"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,account_actif_id:0
+msgid "Depreciation account"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,period_id:0
+#: wizard_field:account.asset.compute,init,period_id:0
+msgid "Period"
+msgstr ""
+
+#. module: account_asset
+#: model:ir.actions.act_window,name:account_asset.action_account_asset_category_form
+#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_category_form
+msgid "Asset Category"
+msgstr ""
+
+#. module: account_asset
+#: wizard_button:account.asset.close,init,end:0
+#: wizard_button:account.asset.compute,init,end:0
+#: wizard_button:account.asset.modify,init,end:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.asset,state:0
+#: wizard_button:account.asset.compute,asset_compute,end:0
+#: selection:account.asset.property,state:0
+msgid "Close"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,state:0
+msgid "Open"
+msgstr ""
+
+#. module: account_asset
+#: constraint:ir.model:0
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
+msgstr ""
+
+#. module: account_asset
+#: model:ir.module.module,shortdesc:account_asset.module_meta_information
+msgid "Asset management"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.board:0
+#: field:account.asset.property,board_ids:0
+#: model:ir.model,name:account_asset.model_account_asset_board
+msgid "Asset board"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,state:0
+msgid "Global state"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,method_time:0
+msgid "Delay"
+msgstr ""
+
+#. module: account_asset
+#: wizard_view:account.asset.close,init:0
+msgid "General information"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,journal_analytic_id:0
+msgid "Analytic journal"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,name:0
+msgid "Method name"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,journal_id:0
+msgid "Journal"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property.history,name:0
+msgid "History name"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Close method"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,entry_asset_ids:0
+msgid "Asset Entries"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,category_id:0
+#: view:account.asset.category:0
+#: field:account.asset.category,name:0
+#: model:ir.model,name:account_asset.model_account_asset_category
+msgid "Asset category"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "Depreciation"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,code:0
+#: field:account.asset.category,code:0
+msgid "Asset code"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,value_total:0
+msgid "Total value"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.asset,state:0
+msgid "View"
+msgstr ""
+
+#. module: account_asset
+#: view:account.asset.asset:0
+msgid "General info"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,sequence:0
+msgid "Sequence"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.property,value_residual:0
+msgid "Residual value"
+msgstr ""
+
+#. module: account_asset
+#: wizard_button:account.asset.close,init,asset_close:0
+msgid "End of asset"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,type:0
+msgid "Direct"
+msgstr ""
+
+#. module: account_asset
+#: selection:account.asset.property,type:0
+msgid "Indirect"
+msgstr ""
+
+#. module: account_asset
+#: field:account.asset.asset,parent_id:0
+msgid "Parent asset"
+msgstr ""
+
+#. module: account_asset
+#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_tree
+#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_tree
+msgid "Asset Hierarchy"
+msgstr ""
diff --git a/addons/account_asset/i18n/hr.po b/addons/account_asset/i18n/hr.po
index 28b856aa75f..6bdd13d286c 100644
--- a/addons/account_asset/i18n/hr.po
+++ b/addons/account_asset/i18n/hr.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2009-11-24 12:54+0000\n"
-"PO-Revision-Date: 2011-10-17 21:09+0000\n"
-"Last-Translator: Ivan Marijanović \n"
+"PO-Revision-Date: 2011-12-08 16:13+0000\n"
+"Last-Translator: Tomislav Bosnjakovic \n"
"Language-Team: Croatian \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal
@@ -27,12 +27,12 @@ msgstr ""
#: field:account.asset.property,method_end:0
#: field:account.asset.property.history,method_end:0
msgid "Ending date"
-msgstr ""
+msgstr "Završni datum"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation board"
-msgstr ""
+msgstr "Depreciation board"
#. module: account_asset
#: view:account.asset.asset:0
@@ -45,7 +45,7 @@ msgstr ""
#: model:ir.model,name:account_asset.model_account_asset_asset
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_form
msgid "Asset"
-msgstr "Imovina"
+msgstr "Osnovno sredstvo"
#. module: account_asset
#: constraint:ir.actions.act_window:0
@@ -55,7 +55,7 @@ msgstr "Pogrešan naziv modela u definiciji akcije."
#. module: account_asset
#: selection:account.asset.property,method:0
msgid "Linear"
-msgstr "Linearno"
+msgstr "Linear"
#. module: account_asset
#: view:account.asset.asset:0
@@ -108,7 +108,7 @@ msgstr "Otvorene stavke"
#: model:ir.ui.menu,name:account_asset.menu_finance_Assets
#: model:ir.ui.menu,name:account_asset.menu_finance_config_Assets
msgid "Assets"
-msgstr "Imovina"
+msgstr "Osnovna sredstva"
#. module: account_asset
#: selection:account.asset.property,method:0
@@ -151,7 +151,7 @@ msgstr ""
#. module: account_asset
#: field:account.asset.asset,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: account_asset
#: wizard_field:account.asset.modify,init,method_period:0
@@ -168,12 +168,12 @@ msgstr ""
#. module: account_asset
#: field:account.asset.property,account_analytic_id:0
msgid "Analytic account"
-msgstr ""
+msgstr "Analitički konto"
#. module: account_asset
#: field:account.asset.property,state:0
msgid "State"
-msgstr ""
+msgstr "Stanje"
#. module: account_asset
#: view:account.asset.asset:0
@@ -212,14 +212,14 @@ msgstr ""
#: model:ir.actions.wizard,name:account_asset.wizard_asset_compute
#: model:ir.ui.menu,name:account_asset.menu_wizard_asset_compute
msgid "Compute assets"
-msgstr ""
+msgstr "Izračunaj amortizaciju"
#. module: account_asset
#: wizard_view:account.asset.modify,init:0
#: wizard_button:account.asset.modify,init,asset_modify:0
#: model:ir.actions.wizard,name:account_asset.wizard_asset_modify
msgid "Modify asset"
-msgstr ""
+msgstr "Promjeni sredstvo"
#. module: account_asset
#: view:account.asset.asset:0
@@ -230,7 +230,7 @@ msgstr ""
#: view:account.asset.property.history:0
#: model:ir.model,name:account_asset.model_account_asset_property_history
msgid "Asset history"
-msgstr ""
+msgstr "Povijest osnovnog sredstva"
#. module: account_asset
#: field:account.asset.property,date:0
@@ -274,13 +274,13 @@ msgstr ""
#: field:account.asset.category,note:0
#: field:account.asset.property.history,note:0
msgid "Note"
-msgstr ""
+msgstr "Bilješka"
#. module: account_asset
#: selection:account.asset.asset,state:0
#: selection:account.asset.property,state:0
msgid "Draft"
-msgstr ""
+msgstr "Nacrt"
#. module: account_asset
#: field:account.asset.property,type:0
@@ -325,12 +325,12 @@ msgstr ""
#. module: account_asset
#: field:account.asset.asset,active:0
msgid "Active"
-msgstr ""
+msgstr "Aktivan"
#. module: account_asset
#: field:account.asset.property.history,user_id:0
msgid "User"
-msgstr ""
+msgstr "Korisnik"
#. module: account_asset
#: field:account.asset.asset,property_ids:0
@@ -341,7 +341,7 @@ msgstr ""
#: field:account.asset.asset,date:0
#: field:account.asset.property.history,date:0
msgid "Date"
-msgstr ""
+msgstr "Datum"
#. module: account_asset
#: field:account.asset.board,value_net:0
@@ -352,12 +352,12 @@ msgstr ""
#: wizard_view:account.asset.close,init:0
#: model:ir.actions.wizard,name:account_asset.wizard_asset_close
msgid "Close asset"
-msgstr ""
+msgstr "Zatvori sredstvo"
#. module: account_asset
#: field:account.asset.property,history_ids:0
msgid "History"
-msgstr ""
+msgstr "Povijest"
#. module: account_asset
#: field:account.asset.property,account_actif_id:0
@@ -368,27 +368,27 @@ msgstr ""
#: field:account.asset.asset,period_id:0
#: wizard_field:account.asset.compute,init,period_id:0
msgid "Period"
-msgstr ""
+msgstr "Period"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_category_form
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_category_form
msgid "Asset Category"
-msgstr ""
+msgstr "Grupa o.sredstva"
#. module: account_asset
#: wizard_button:account.asset.close,init,end:0
#: wizard_button:account.asset.compute,init,end:0
#: wizard_button:account.asset.modify,init,end:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: account_asset
#: selection:account.asset.asset,state:0
#: wizard_button:account.asset.compute,asset_compute,end:0
#: selection:account.asset.property,state:0
msgid "Close"
-msgstr ""
+msgstr "Zatvori"
#. module: account_asset
#: selection:account.asset.property,state:0
@@ -441,12 +441,12 @@ msgstr ""
#. module: account_asset
#: field:account.asset.property,journal_id:0
msgid "Journal"
-msgstr ""
+msgstr "Dnevnik"
#. module: account_asset
#: field:account.asset.property.history,name:0
msgid "History name"
-msgstr ""
+msgstr "Naziv"
#. module: account_asset
#: view:account.asset.asset:0
@@ -464,7 +464,7 @@ msgstr ""
#: field:account.asset.category,name:0
#: model:ir.model,name:account_asset.model_account_asset_category
msgid "Asset category"
-msgstr ""
+msgstr "Asset category"
#. module: account_asset
#: view:account.asset.asset:0
@@ -526,4 +526,4 @@ msgstr ""
#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_tree
#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_tree
msgid "Asset Hierarchy"
-msgstr ""
+msgstr "hijerarhija imovine"
diff --git a/addons/account_asset/i18n/pt.po b/addons/account_asset/i18n/pt.po
index 126515e07a9..6683b7227db 100755
--- a/addons/account_asset/i18n/pt.po
+++ b/addons/account_asset/i18n/pt.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2009-11-24 12:54+0000\n"
-"PO-Revision-Date: 2011-07-12 12:04+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-12-10 11:58+0000\n"
+"Last-Translator: Paulino Ascenção \n"
"Language-Team: Portuguese \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-11 05:36+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_asset
#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal
@@ -27,12 +27,12 @@ msgstr "Activos em Aberto"
#: field:account.asset.property,method_end:0
#: field:account.asset.property.history,method_end:0
msgid "Ending date"
-msgstr ""
+msgstr "Data final"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation board"
-msgstr ""
+msgstr "Painel de amortização"
#. module: account_asset
#: view:account.asset.asset:0
@@ -60,7 +60,7 @@ msgstr "Linear"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Change duration"
-msgstr ""
+msgstr "Alterar a duração"
#. module: account_asset
#: field:account.asset.asset,child_ids:0
@@ -70,12 +70,12 @@ msgstr "Activos filho"
#. module: account_asset
#: field:account.asset.board,value_asset:0
msgid "Asset Value"
-msgstr "Valor do Imobilizado"
+msgstr "Valor do Ativo"
#. module: account_asset
#: wizard_field:account.asset.modify,init,name:0
msgid "Reason"
-msgstr ""
+msgstr "Motivo"
#. module: account_asset
#: view:account.asset.asset:0
@@ -94,7 +94,7 @@ msgstr "Movimentos gerados"
#: field:account.asset.property,method_delay:0
#: field:account.asset.property.history,method_delay:0
msgid "Number of interval"
-msgstr ""
+msgstr "Número de intervalo"
#. module: account_asset
#: wizard_button:account.asset.compute,asset_compute,asset_open:0
@@ -136,7 +136,7 @@ msgstr "Histórico de alterações"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation entries"
-msgstr ""
+msgstr "Lançamentos de amortização"
#. module: account_asset
#: view:account.asset.asset:0
@@ -158,12 +158,12 @@ msgstr "Terceiro"
#: field:account.asset.property,method_period:0
#: field:account.asset.property.history,method_period:0
msgid "Period per interval"
-msgstr ""
+msgstr "Período por intervalo"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation duration"
-msgstr ""
+msgstr "Duração da amortização"
#. module: account_asset
#: field:account.asset.property,account_analytic_id:0
@@ -178,7 +178,7 @@ msgstr "Estado"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation methods"
-msgstr ""
+msgstr "Métodos de amortização"
#. module: account_asset
#: view:account.asset.asset:0
@@ -188,12 +188,12 @@ msgstr "Outra informação"
#. module: account_asset
#: field:account.asset.board,value_asset_cumul:0
msgid "Cumul. value"
-msgstr ""
+msgstr "Valor acumulado"
#. module: account_asset
#: view:account.asset.property:0
msgid "Assets methods"
-msgstr ""
+msgstr "Métodos de imobilizado"
#. module: account_asset
#: constraint:ir.ui.view:0
@@ -203,7 +203,7 @@ msgstr "XML Inválido para a Arquitectura de Vista!"
#. module: account_asset
#: model:ir.model,name:account_asset.model_account_asset_property
msgid "Asset property"
-msgstr ""
+msgstr "Propriedade do ativo"
#. module: account_asset
#: wizard_view:account.asset.compute,asset_compute:0
@@ -273,7 +273,7 @@ msgstr "Nome do activo"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Accounts information"
-msgstr ""
+msgstr "Informação das contas"
#. module: account_asset
#: field:account.asset.asset,note:0
@@ -291,7 +291,7 @@ msgstr "Rascunho"
#. module: account_asset
#: field:account.asset.property,type:0
msgid "Depr. method type"
-msgstr ""
+msgstr "Tipo de método de amotiz."
#. module: account_asset
#: field:account.asset.property,account_asset_id:0
@@ -311,7 +311,7 @@ msgstr "Normal"
#. module: account_asset
#: field:account.asset.property,method_progress_factor:0
msgid "Progressif factor"
-msgstr ""
+msgstr "Fator de progressividade"
#. module: account_asset
#: field:account.asset.asset,localisation:0
@@ -326,7 +326,7 @@ msgstr "Método de cálculo"
#. module: account_asset
#: field:account.asset.property,method_time:0
msgid "Time method"
-msgstr ""
+msgstr "Método temporal"
#. module: account_asset
#: field:account.asset.asset,active:0
@@ -341,7 +341,7 @@ msgstr "Utilizador"
#. module: account_asset
#: field:account.asset.asset,property_ids:0
msgid "Asset method name"
-msgstr ""
+msgstr "Nome do método de ativo"
#. module: account_asset
#: field:account.asset.asset,date:0
@@ -368,7 +368,7 @@ msgstr "Histórico"
#. module: account_asset
#: field:account.asset.property,account_actif_id:0
msgid "Depreciation account"
-msgstr ""
+msgstr "Conta de amortização"
#. module: account_asset
#: field:account.asset.asset,period_id:0
@@ -412,24 +412,24 @@ msgstr ""
#. module: account_asset
#: model:ir.module.module,shortdesc:account_asset.module_meta_information
msgid "Asset management"
-msgstr "Gestão de Activo"
+msgstr "Gestão do Imobilizado"
#. module: account_asset
#: view:account.asset.board:0
#: field:account.asset.property,board_ids:0
#: model:ir.model,name:account_asset.model_account_asset_board
msgid "Asset board"
-msgstr ""
+msgstr "Painel do imobilizado"
#. module: account_asset
#: field:account.asset.asset,state:0
msgid "Global state"
-msgstr ""
+msgstr "Estado global"
#. module: account_asset
#: selection:account.asset.property,method_time:0
msgid "Delay"
-msgstr ""
+msgstr "Demora"
#. module: account_asset
#: wizard_view:account.asset.close,init:0
@@ -439,7 +439,7 @@ msgstr "Informação geral"
#. module: account_asset
#: field:account.asset.property,journal_analytic_id:0
msgid "Analytic journal"
-msgstr ""
+msgstr "Diário analítico"
#. module: account_asset
#: field:account.asset.property,name:0
@@ -454,7 +454,7 @@ msgstr "Diário"
#. module: account_asset
#: field:account.asset.property.history,name:0
msgid "History name"
-msgstr "Nome de História"
+msgstr "Nome de histórico"
#. module: account_asset
#: view:account.asset.asset:0
@@ -477,13 +477,13 @@ msgstr "Categoria de activos"
#. module: account_asset
#: view:account.asset.asset:0
msgid "Depreciation"
-msgstr ""
+msgstr "Amortização"
#. module: account_asset
#: field:account.asset.asset,code:0
#: field:account.asset.category,code:0
msgid "Asset code"
-msgstr "Código de imobilizado"
+msgstr "Código do ativo"
#. module: account_asset
#: field:account.asset.asset,value_total:0
diff --git a/addons/account_asset/security/ir.model.access.csv b/addons/account_asset/security/ir.model.access.csv
index 928cad25ebd..d6eda4016c9 100755
--- a/addons/account_asset/security/ir.model.access.csv
+++ b/addons/account_asset/security/ir.model.access.csv
@@ -1,11 +1,11 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_account_asset_category","account.asset.category","model_account_asset_category","account.group_account_user",1,0,0,0
-"access_account_asset_asset","account.asset.asset","model_account_asset_asset","account.group_account_user",1,0,0,0
-"access_account_asset_history","account.asset.history","model_account_asset_history","account.group_account_user",1,0,0,0
-"access_account_asset_category_manager","account.asset.category","model_account_asset_category","account.group_account_manager",1,1,1,1
-"access_account_asset_asset_manager","account.asset.asset","model_account_asset_asset","account.group_account_manager",1,1,1,1
-"access_account_asset_history_manager","account.asset.history","model_account_asset_history","account.group_account_manager",1,1,1,1
-"access_account_asset_depreciation_line","account.asset.depreciation.line","model_account_asset_depreciation_line","account.group_account_user",1,0,0,0
-"access_account_asset_depreciation_line_manager","account.asset.depreciation.line","model_account_asset_depreciation_line","account.group_account_manager",1,1,1,1
-"access_asset_asset_report","asset.asset.report","model_asset_asset_report","account.group_account_user",1,0,0,0
-"access_asset_asset_report_manager","asset.asset.report","model_asset_asset_report","account.group_account_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_account_asset_category,account.asset.category,model_account_asset_category,account.group_account_user,1,0,0,0
+access_account_asset_asset,account.asset.asset,model_account_asset_asset,account.group_account_user,1,0,0,0
+access_account_asset_history,account.asset.history,model_account_asset_history,account.group_account_user,1,0,0,0
+access_account_asset_category_manager,account.asset.category,model_account_asset_category,account.group_account_manager,1,1,1,1
+access_account_asset_asset_manager,account.asset.asset,model_account_asset_asset,account.group_account_manager,1,1,1,1
+access_account_asset_history_manager,account.asset.history,model_account_asset_history,account.group_account_manager,1,1,1,1
+access_account_asset_depreciation_line,account.asset.depreciation.line,model_account_asset_depreciation_line,account.group_account_user,1,0,0,0
+access_account_asset_depreciation_line_manager,account.asset.depreciation.line,model_account_asset_depreciation_line,account.group_account_manager,1,1,1,1
+access_asset_asset_report,asset.asset.report,model_asset_asset_report,account.group_account_user,1,0,0,0
+access_asset_asset_report_manager,asset.asset.report,model_asset_asset_report,account.group_account_manager,1,1,1,1
diff --git a/addons/account_budget/__openerp__.py b/addons/account_budget/__openerp__.py
index e4782ee0d2a..15076588ed5 100644
--- a/addons/account_budget/__openerp__.py
+++ b/addons/account_budget/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Budgets',
+ 'name': 'Budgets Management',
'version': '1.0',
- 'category': 'Project Management',
+ 'category': 'Accounting & Finance',
'complexity': "normal",
'description': """
This module allows accountants to manage analytic and crossovered budgets.
diff --git a/addons/account_budget/security/ir.model.access.csv b/addons/account_budget/security/ir.model.access.csv
index b2eb33f3d04..1298884a856 100644
--- a/addons/account_budget/security/ir.model.access.csv
+++ b/addons/account_budget/security/ir.model.access.csv
@@ -1,7 +1,6 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_crossovered_budget","crossovered.budget","model_crossovered_budget","account.group_account_manager",1,0,0,0
-"access_crossovered_budget_lines","crossovered.budget.lines","model_crossovered_budget_lines","account.group_account_manager",1,1,1,1
-"access_account_budget_post","account.budget.post","model_account_budget_post","account.group_account_manager",1,0,0,0
-"access_account_budget_post_accountant","account.budget.post accountant","model_account_budget_post","account.group_account_user",1,1,1,1
-"access_crossovered_budget_accountant","crossovered.budget accountant","model_crossovered_budget","account.group_account_user",1,1,1,1
-"access_crossovered_budget_lines_accountant","crossovered.budget.lines accountant","model_crossovered_budget_lines","account.group_account_user",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_crossovered_budget,crossovered.budget,model_crossovered_budget,account.group_account_manager,1,0,0,0
+access_account_budget_post,account.budget.post,model_account_budget_post,account.group_account_manager,1,0,0,0
+access_account_budget_post_accountant,account.budget.post accountant,model_account_budget_post,account.group_account_user,1,1,1,1
+access_crossovered_budget_accountant,crossovered.budget accountant,model_crossovered_budget,account.group_account_user,1,1,1,1
+access_crossovered_budget_lines_accountant,crossovered.budget.lines accountant,model_crossovered_budget_lines,account.group_account_user,1,1,1,1
diff --git a/addons/account_cancel/__openerp__.py b/addons/account_cancel/__openerp__.py
index ac73a2b8c31..252e8ffd3d0 100644
--- a/addons/account_cancel/__openerp__.py
+++ b/addons/account_cancel/__openerp__.py
@@ -20,10 +20,10 @@
##############################################################################
{
- "name" : "Cancel Entries",
+ "name" : "Cancel Journal Entries",
"version" : "1.1",
"author" : "OpenERP SA",
- "category": 'Hidden',
+ "category": 'Accounting & Finance',
'complexity': "normal",
"description": """
Allows cancelling accounting entries.
diff --git a/addons/account_cancel/i18n/hr.po b/addons/account_cancel/i18n/hr.po
index e64a2743ae6..91a5c4c300f 100644
--- a/addons/account_cancel/i18n/hr.po
+++ b/addons/account_cancel/i18n/hr.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2010-09-10 16:28+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-12-08 15:10+0000\n"
+"Last-Translator: Goran Kliska \n"
"Language-Team: Croatian \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:46+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_cancel
#: model:ir.module.module,description:account_cancel.module_meta_information
@@ -25,8 +25,12 @@ msgid ""
"journal. If set to true it allows user to cancel entries & invoices.\n"
" "
msgstr ""
+"\n"
+" Modul dodaje polje \"Dozvoli otkazivanje\" na formi dnevnika. Knjiženja "
+"i računi označenih dnevnika će se moći otkazivati.\n"
+" "
#. module: account_cancel
#: model:ir.module.module,shortdesc:account_cancel.module_meta_information
msgid "Account Cancel"
-msgstr ""
+msgstr "Dozvoli otkazivanje"
diff --git a/addons/account_chart/__openerp__.py b/addons/account_chart/__openerp__.py
index 948f13b5dcb..c0c9245a477 100644
--- a/addons/account_chart/__openerp__.py
+++ b/addons/account_chart/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Charts of Accounts',
+ 'name': 'Template of Charts of Accounts',
'version': '1.1',
- 'category': 'Hidden',
+ "category": 'Hidden/Dependency',
'description': """
Remove minimal account chart.
=============================
diff --git a/addons/account_coda/__openerp__.py b/addons/account_coda/__openerp__.py
index dd604e41aca..a51a9a1ede7 100644
--- a/addons/account_coda/__openerp__.py
+++ b/addons/account_coda/__openerp__.py
@@ -20,10 +20,10 @@
##############################################################################
{
- "name" : "Account CODA - import bank statements from coda file",
+ "name" : "CODA Bank Statements",
"version" : "1.0",
"author" : "OpenERP SA",
- "category" : "Hidden",
+ "category": 'Accounting & Finance',
'complexity': "normal",
"description": """
Module provides functionality to import bank statements from coda files.
diff --git a/addons/account_coda/i18n/hr.po b/addons/account_coda/i18n/hr.po
index f18ad9a000f..688d9a3383b 100644
--- a/addons/account_coda/i18n/hr.po
+++ b/addons/account_coda/i18n/hr.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2010-10-15 09:33+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-12-08 16:14+0000\n"
+"Last-Translator: Goran Kliska \n"
"Language-Team: Croatian \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:42+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_coda
#: help:account.coda,journal_id:0
@@ -32,37 +32,37 @@ msgstr "Zapisnik"
#. module: account_coda
#: model:ir.model,name:account_coda.model_account_coda_import
msgid "Account Coda Import"
-msgstr ""
+msgstr "Account Coda Import"
#. module: account_coda
#: field:account.coda,name:0
msgid "Coda file"
-msgstr ""
+msgstr "Coda file"
#. module: account_coda
#: view:account.coda:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupiraj po..."
#. module: account_coda
#: field:account.coda.import,awaiting_account:0
msgid "Default Account for Unrecognized Movement"
-msgstr ""
+msgstr "Konto za nepoznate (konto nep. kupaca)"
#. module: account_coda
#: help:account.coda,date:0
msgid "Import Date"
-msgstr ""
+msgstr "Datum uvoza"
#. module: account_coda
#: field:account.coda,note:0
msgid "Import log"
-msgstr ""
+msgstr "Import log"
#. module: account_coda
#: view:account.coda.import:0
msgid "Import"
-msgstr ""
+msgstr "Uvoz"
#. module: account_coda
#: view:account.coda:0
@@ -81,12 +81,14 @@ msgid ""
"Set here the default account that will be used, if the partner is found but "
"does not have the bank account, or if he is domiciled"
msgstr ""
+"Zadajte uobičajeni konto za slučaj da je partner pronađen, ali nema upisan "
+"bankovni račun."
#. module: account_coda
#: view:account.coda:0
#: field:account.coda,company_id:0
msgid "Company"
-msgstr ""
+msgstr "Organizacija"
#. module: account_coda
#: help:account.coda.import,def_payable:0
@@ -94,11 +96,13 @@ msgid ""
"Set here the payable account that will be used, by default, if the partner "
"is not found"
msgstr ""
+"Postavite ovdje račun plaćanja koji će se koristiti po defaultu ukoliko "
+"partner nije pronađen"
#. module: account_coda
#: view:account.coda:0
msgid "Search Coda"
-msgstr ""
+msgstr "Traži Coda"
#. module: account_coda
#: view:account.coda:0
@@ -110,12 +114,12 @@ msgstr "Korisnik"
#: view:account.coda:0
#: field:account.coda,date:0
msgid "Date"
-msgstr ""
+msgstr "Datum"
#. module: account_coda
#: model:ir.ui.menu,name:account_coda.menu_account_coda_statement
msgid "Coda Import Logs"
-msgstr ""
+msgstr "Coda Import Logs"
#. module: account_coda
#: model:ir.model,name:account_coda.model_account_coda
@@ -125,22 +129,22 @@ msgstr "coda za jedan nalog"
#. module: account_coda
#: field:account.coda.import,def_payable:0
msgid "Default Payable Account"
-msgstr "Osnovni platni konto"
+msgstr "Uobičajeni konto obveza"
#. module: account_coda
#: help:account.coda,name:0
msgid "Store the detail of bank statements"
-msgstr ""
+msgstr "Store the detail of bank statements"
#. module: account_coda
#: view:account.coda.import:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: account_coda
#: view:account.coda.import:0
msgid "Open Statements"
-msgstr ""
+msgstr "Open Statements"
#. module: account_coda
#: code:addons/account_coda/wizard/account_coda_import.py:167
@@ -151,13 +155,13 @@ msgstr ""
#. module: account_coda
#: model:ir.ui.menu,name:account_coda.menu_account_coda_import
msgid "Import Coda Statements"
-msgstr ""
+msgstr "Uvoz Coda izjave"
#. module: account_coda
#: view:account.coda.import:0
#: model:ir.actions.act_window,name:account_coda.action_account_coda_import
msgid "Import Coda Statement"
-msgstr ""
+msgstr "Import Coda Statement"
#. module: account_coda
#: model:ir.module.module,description:account_coda.module_meta_information
@@ -171,22 +175,22 @@ msgstr ""
#. module: account_coda
#: view:account.coda:0
msgid "Statements"
-msgstr ""
+msgstr "Izvodi"
#. module: account_coda
#: field:account.bank.statement,coda_id:0
msgid "Coda"
-msgstr ""
+msgstr "Coda"
#. module: account_coda
#: view:account.coda.import:0
msgid "Results :"
-msgstr ""
+msgstr "Rezultat :"
#. module: account_coda
#: view:account.coda.import:0
msgid "Result of Imported Coda Statements"
-msgstr ""
+msgstr "Rezultat uveženih Coda izvoda"
#. module: account_coda
#: help:account.coda.import,def_receivable:0
@@ -194,22 +198,24 @@ msgid ""
"Set here the receivable account that will be used, by default, if the "
"partner is not found"
msgstr ""
+"Zadajte uobičajeni konto potraživanja od kupaca kada partner nije "
+"pronađen/prepoznat sa izvoda."
#. module: account_coda
#: field:account.coda.import,coda:0
#: model:ir.actions.act_window,name:account_coda.act_account_payment_account_bank_statement
msgid "Coda File"
-msgstr ""
+msgstr "Coda File"
#. module: account_coda
#: model:ir.model,name:account_coda.model_account_bank_statement
msgid "Bank Statement"
-msgstr ""
+msgstr "Izvod banke"
#. module: account_coda
#: model:ir.actions.act_window,name:account_coda.action_account_coda
msgid "Coda Logs"
-msgstr ""
+msgstr "Coda Evidencije"
#. module: account_coda
#: code:addons/account_coda/wizard/account_coda_import.py:311
@@ -220,22 +226,22 @@ msgstr ""
#. module: account_coda
#: view:account.coda.import:0
msgid "Click on 'New' to select your file :"
-msgstr ""
+msgstr "Kliknite na \"Novo\" kako bi odabrali svoj file :"
#. module: account_coda
#: field:account.coda.import,def_receivable:0
msgid "Default Receivable Account"
-msgstr ""
+msgstr "Uobičajeni konto potraživanja"
#. module: account_coda
#: view:account.coda.import:0
msgid "Close"
-msgstr ""
+msgstr "Zatvori"
#. module: account_coda
#: field:account.coda,statement_ids:0
msgid "Generated Bank Statements"
-msgstr ""
+msgstr "Generirani bankovni izvodi"
#. module: account_coda
#: model:ir.module.module,shortdesc:account_coda.module_meta_information
@@ -245,18 +251,18 @@ msgstr ""
#. module: account_coda
#: view:account.coda.import:0
msgid "Configure Your Journal and Account :"
-msgstr ""
+msgstr "konfigurirajte temeljnicu i račun :"
#. module: account_coda
#: view:account.coda:0
msgid "Coda Import"
-msgstr ""
+msgstr "Coda Import"
#. module: account_coda
#: view:account.coda:0
#: field:account.coda,journal_id:0
msgid "Journal"
-msgstr ""
+msgstr "Dnevnik"
#~ msgid "Clic on 'New' to select your file :"
#~ msgstr "Kliknite na \"Novi\" za odabir datoteke"
diff --git a/addons/account_coda/security/ir.model.access.csv b/addons/account_coda/security/ir.model.access.csv
index 9eb831185d5..74fe7b0e8ce 100644
--- a/addons/account_coda/security/ir.model.access.csv
+++ b/addons/account_coda/security/ir.model.access.csv
@@ -1,4 +1,4 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_account_coda","account.coda","model_account_coda","account.group_account_user",1,0,0,0
-"access_account_coda_manager","account.coda","model_account_coda","account.group_account_manager",1,1,1,1
-"access_account_coda_import_user","account.coda","model_account_coda","account.group_account_user",1,0,0,0
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_account_coda,account.coda,model_account_coda,account.group_account_user,1,0,0,0
+access_account_coda_manager,account.coda,model_account_coda,account.group_account_manager,1,1,1,1
+access_account_coda_import_user,account.coda,model_account_coda,account.group_account_user,1,0,0,0
diff --git a/addons/account_followup/i18n/hr.po b/addons/account_followup/i18n/hr.po
index 949e2a81f10..3dca6a73c32 100644
--- a/addons/account_followup/i18n/hr.po
+++ b/addons/account_followup/i18n/hr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2010-09-04 09:03+0000\n"
+"PO-Revision-Date: 2011-12-08 16:15+0000\n"
"Last-Translator: Goran Kliska \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-12 04:52+0000\n"
-"X-Generator: Launchpad (build 14277)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:295
@@ -25,7 +25,7 @@ msgstr ""
#. module: account_followup
#: view:account_followup.followup:0
msgid "Search Followup"
-msgstr ""
+msgstr "Traži IOS-e"
#. module: account_followup
#: model:ir.module.module,description:account_followup.module_meta_information
@@ -55,7 +55,7 @@ msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupiraj po..."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:290
@@ -72,7 +72,7 @@ msgstr ""
#: view:account_followup.followup:0
#: field:account_followup.followup,followup_line:0
msgid "Follow-Up"
-msgstr ""
+msgstr "Follow-Up"
#. module: account_followup
#: field:account_followup.followup,company_id:0
@@ -80,12 +80,12 @@ msgstr ""
#: field:account_followup.stat,company_id:0
#: field:account_followup.stat.by.partner,company_id:0
msgid "Company"
-msgstr "Tvrtka"
+msgstr "Organizacija"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Invoice Date"
-msgstr "Datum Računa"
+msgstr "Datum računa"
#. module: account_followup
#: field:account.followup.print.all,email_subject:0
@@ -96,87 +96,87 @@ msgstr "Predmet email-a"
#: model:ir.actions.act_window,help:account_followup.action_followup_stat
msgid ""
"Follow up on the reminders sent over to your partners for unpaid invoices."
-msgstr ""
+msgstr "Izvodi otvorenih stavaka sa neplaćenim računima poslani partnerima."
#. module: account_followup
#: view:account.followup.print.all:0
#: view:account_followup.followup.line:0
msgid "Legend"
-msgstr ""
+msgstr "Legenda"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Ok"
-msgstr "Ok"
+msgstr "U redu"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Select Partners to Remind"
-msgstr ""
+msgstr "Select Partners to Remind"
#. module: account_followup
#: constraint:account.move.line:0
msgid "You can not create move line on closed account."
-msgstr ""
+msgstr "Ne možete kreirati stavke prometa za zatvoreni račun."
#. module: account_followup
#: field:account.followup.print,date:0
msgid "Follow-up Sending Date"
-msgstr ""
+msgstr "Datum slanja IOS-a"
#. module: account_followup
#: sql_constraint:account.move.line:0
msgid "Wrong credit or debit value in accounting entry !"
-msgstr ""
+msgstr "Pogrešno kreditna ili debitnom vrijednost unešene stavke!"
#. module: account_followup
#: selection:account_followup.followup.line,start:0
msgid "Net Days"
-msgstr ""
+msgstr "Neto dana"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form
#: model:ir.ui.menu,name:account_followup.account_followup_menu
msgid "Follow-Ups"
-msgstr ""
+msgstr "IOS-i"
#. module: account_followup
#: view:account_followup.stat.by.partner:0
msgid "Balance > 0"
-msgstr ""
+msgstr "Balance > 0"
#. module: account_followup
#: view:account.move.line:0
msgid "Total debit"
-msgstr "Ukupni dug"
+msgstr "Ukupno duguje"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(heading)s: Move line header"
-msgstr ""
+msgstr "%(heading)s: Zaglavlje stavke"
#. module: account_followup
#: view:res.company:0
#: field:res.company,follow_up_msg:0
msgid "Follow-up Message"
-msgstr ""
+msgstr "Poruka IOS-a"
#. module: account_followup
#: field:account.followup.print,followup_id:0
msgid "Follow-up"
-msgstr ""
+msgstr "Pratiti"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "VAT:"
-msgstr "VAT:"
+msgstr "PDV:"
#. module: account_followup
#: view:account_followup.stat:0
#: field:account_followup.stat,partner_id:0
#: field:account_followup.stat.by.partner,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -197,7 +197,7 @@ msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup
msgid "Account Follow Up"
-msgstr ""
+msgstr "Upravljanje IOS-ima"
#. module: account_followup
#: selection:account_followup.followup.line,start:0
@@ -207,7 +207,7 @@ msgstr "Kraj Mjeseca"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Not Litigation"
-msgstr ""
+msgstr "Not Litigation"
#. module: account_followup
#: view:account.followup.print.all:0
@@ -217,7 +217,7 @@ msgstr "%(user_signature)s: Korisničko ime"
#. module: account_followup
#: field:account_followup.stat,debit:0
msgid "Debit"
-msgstr "Dug"
+msgstr "Duguje"
#. module: account_followup
#: view:account.followup.print:0
@@ -226,33 +226,36 @@ msgid ""
"You can send them the default message for unpaid invoices or manually enter "
"a message should you need to remind them of a specific information."
msgstr ""
+"This feature allows you to send reminders to partners with pending invoices. "
+"You can send them the default message for unpaid invoices or manually enter "
+"a message should you need to remind them of a specific information."
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Ref"
-msgstr ""
+msgstr "Vezna oznaka"
#. module: account_followup
#: help:account_followup.followup.line,sequence:0
msgid "Gives the sequence order when displaying a list of follow-up lines."
-msgstr ""
+msgstr "Gives the sequence order when displaying a list of follow-up lines."
#. module: account_followup
#: view:account.followup.print.all:0
#: field:account.followup.print.all,email_body:0
msgid "Email body"
-msgstr ""
+msgstr "Email sadržaj"
#. module: account_followup
#: field:account.move.line,followup_line_id:0
msgid "Follow-up Level"
-msgstr ""
+msgstr "Nivo IOSa"
#. module: account_followup
#: field:account_followup.stat,date_followup:0
#: field:account_followup.stat.by.partner,date_followup:0
msgid "Latest followup"
-msgstr ""
+msgstr "Zadnji IOS"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line2
@@ -281,7 +284,7 @@ msgstr ""
#. module: account_followup
#: field:account.followup.print.all,partner_lang:0
msgid "Send Email in Partner Language"
-msgstr ""
+msgstr "Send Email in Partner Language"
#. module: account_followup
#: constraint:account.move.line:0
@@ -306,18 +309,18 @@ msgstr "Ispisana Poruka"
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print_all
#: model:ir.ui.menu,name:account_followup.account_followup_print_menu
msgid "Send followups"
-msgstr ""
+msgstr "Pošalji IOS-e"
#. module: account_followup
#: view:account_followup.stat.by.partner:0
msgid "Partner to Remind"
-msgstr ""
+msgstr "Partner to Remind"
#. module: account_followup
#: field:account_followup.followup.line,followup_id:0
#: field:account_followup.stat,followup_id:0
msgid "Follow Ups"
-msgstr ""
+msgstr "IOS-i"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line1
@@ -359,7 +362,7 @@ msgstr ""
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Send Mails"
-msgstr ""
+msgstr "Send Mails"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -369,7 +372,7 @@ msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat_by_partner
msgid "Followup Statistics by Partner"
-msgstr ""
+msgstr "Statistika IOS-a po partneru"
#. module: account_followup
#: model:ir.module.module,shortdesc:account_followup.module_meta_information
@@ -379,13 +382,13 @@ msgstr ""
#. module: account_followup
#: field:account_followup.stat,blocked:0
msgid "Blocked"
-msgstr ""
+msgstr "Blocked"
#. module: account_followup
#: help:account.followup.print,date:0
msgid ""
"This field allow you to select a forecast date to plan your follow-ups"
-msgstr ""
+msgstr "Upišite planirani dan kreiranja IOS-a"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -406,12 +409,12 @@ msgstr "Email Postavke"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Print Follow Ups"
-msgstr ""
+msgstr "Ispiši sve IOS-e"
#. module: account_followup
#: field:account.move.line,followup_date:0
msgid "Latest Follow-up"
-msgstr ""
+msgstr "Zadnji IOS-i"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -426,7 +429,7 @@ msgstr "Saldo:"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat
msgid "Followup Statistics"
-msgstr ""
+msgstr "Statistika IOS-a"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -436,22 +439,22 @@ msgstr "Plaćeno"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(user_signature)s: User Name"
-msgstr ""
+msgstr "%(user_signature)s: User Name"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_move_line
msgid "Journal Items"
-msgstr ""
+msgstr "Stavke glavne knjige"
#. module: account_followup
#: constraint:account.move.line:0
msgid "Company must be same for its related account and period."
-msgstr ""
+msgstr "Company must be same for its related account and period."
#. module: account_followup
#: field:account.followup.print.all,email_conf:0
msgid "Send email confirmation"
-msgstr ""
+msgstr "Send email confirmation"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:287
@@ -465,17 +468,17 @@ msgstr ""
#. module: account_followup
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
-msgstr ""
+msgstr "Pogreška! Ne možete kreirati rekurzivne organizacije."
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(company_name)s: User's Company name"
-msgstr ""
+msgstr "%(poduzeće_naziv)s: User's Company name"
#. module: account_followup
#: model:ir.model,name:account_followup.model_res_company
msgid "Companies"
-msgstr ""
+msgstr "Organizacije"
#. module: account_followup
#: view:account_followup.followup:0
@@ -485,34 +488,34 @@ msgstr ""
#. module: account_followup
#: field:account_followup.stat,credit:0
msgid "Credit"
-msgstr ""
+msgstr "Potražuje"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Maturity Date"
-msgstr ""
+msgstr "Maturity Date"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(partner_name)s: Partner Name"
-msgstr ""
+msgstr "%(partner_name)s: Partner Name"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Follow-Up lines"
-msgstr ""
+msgstr "Stavke IOS-a"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(company_currency)s: User's Company Currency"
-msgstr ""
+msgstr "%(company_currency)s: Valuta organizacije"
#. module: account_followup
#: view:account_followup.stat:0
#: field:account_followup.stat,balance:0
#: field:account_followup.stat.by.partner,balance:0
msgid "Balance"
-msgstr ""
+msgstr "Saldo"
#. module: account_followup
#: field:account_followup.followup.line,start:0
@@ -523,29 +526,29 @@ msgstr "Tip Uvjeta"
#: model:ir.model,name:account_followup.model_account_followup_print
#: model:ir.model,name:account_followup.model_account_followup_print_all
msgid "Print Followup & Send Mail to Customers"
-msgstr ""
+msgstr "Print Followup & Send Mail to Customers"
#. module: account_followup
#: field:account_followup.stat,date_move_last:0
#: field:account_followup.stat.by.partner,date_move_last:0
msgid "Last move"
-msgstr ""
+msgstr "Zadnja transakcija"
#. module: account_followup
#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
msgid "Followup Report"
-msgstr ""
+msgstr "Izvještaj IOS-a"
#. module: account_followup
#: field:account_followup.stat,period_id:0
msgid "Period"
-msgstr ""
+msgstr "Period"
#. module: account_followup
#: view:account.followup.print:0
#: view:account.followup.print.all:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: account_followup
#: view:account_followup.followup.line:0
@@ -555,22 +558,22 @@ msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
msgid "Litigation"
-msgstr ""
+msgstr "Sporno"
#. module: account_followup
#: field:account_followup.stat.by.partner,max_followup_id:0
msgid "Max Follow Up Level"
-msgstr ""
+msgstr "Max Follow Up Level"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_payable_all
msgid "Payable Items"
-msgstr ""
+msgstr "Payable Items"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(followup_amount)s: Total Amount Due"
-msgstr ""
+msgstr "%(followup_amount)s: Ukupni iznos duga"
#. module: account_followup
#: view:account.followup.print.all:0
@@ -581,7 +584,7 @@ msgstr "%(date)s: Trenutni Datum"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Followup Level"
-msgstr ""
+msgstr "Nivo IOS-a"
#. module: account_followup
#: view:account_followup.followup:0
@@ -593,12 +596,12 @@ msgstr "Opis"
#. module: account_followup
#: view:account_followup.stat:0
msgid "This Fiscal year"
-msgstr ""
+msgstr "This Fiscal year"
#. module: account_followup
#: view:account.move.line:0
msgid "Partner entries"
-msgstr ""
+msgstr "Partner entries"
#. module: account_followup
#: help:account.followup.print.all,partner_lang:0
@@ -606,24 +609,26 @@ msgid ""
"Do not change message text, if you want to send email in partner language, "
"or configure from company"
msgstr ""
+"Ne mijenjajte tekstualne poruke, ako želite poslati e-mail u partnerskom "
+"jeziku, ili konfigurirati iz tvrtke"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_all
msgid "Receivable Items"
-msgstr ""
+msgstr "Receivable Items"
#. module: account_followup
#: view:account_followup.stat:0
#: model:ir.actions.act_window,name:account_followup.action_followup_stat
#: model:ir.ui.menu,name:account_followup.menu_action_followup_stat_follow
msgid "Follow-ups Sent"
-msgstr ""
+msgstr "Poslani IOS-i"
#. module: account_followup
#: field:account_followup.followup,name:0
#: field:account_followup.followup.line,name:0
msgid "Name"
-msgstr "Ime"
+msgstr "Naziv"
#. module: account_followup
#: field:account_followup.stat,date_move:0
@@ -653,43 +658,43 @@ msgstr ""
#. module: account_followup
#: view:account.followup.print:0
msgid "Continue"
-msgstr ""
+msgstr "Continue"
#. module: account_followup
#: field:account_followup.followup.line,delay:0
msgid "Days of delay"
-msgstr ""
+msgstr "Dana kašnjenja"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Document : Customer account statement"
-msgstr ""
+msgstr "Document : Customer account statement"
#. module: account_followup
#: view:account.followup.print.all:0
#: field:account.followup.print.all,summary:0
msgid "Summary"
-msgstr ""
+msgstr "Sažetak"
#. module: account_followup
#: view:account.move.line:0
msgid "Total credit"
-msgstr ""
+msgstr "Ukupno potražuje"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(line)s: Ledger Posting lines"
-msgstr ""
+msgstr "%(line)s: Ledger Posting lines"
#. module: account_followup
#: field:account_followup.followup.line,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Sekvenca"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(company_name)s: User's Company Name"
-msgstr ""
+msgstr "%(company_name)s: Naziv korisnikove organizacije"
#. module: account_followup
#: report:account_followup.followup.print:0
@@ -699,22 +704,22 @@ msgstr "Poziv na broj"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(partner_name)s: Partner name"
-msgstr ""
+msgstr "%(partner_name)s: Ime/naziv partnera"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Latest Followup Date"
-msgstr ""
+msgstr "Datum zadnjeg IOS-a"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup_line
msgid "Follow-Up Criteria"
-msgstr ""
+msgstr "Kriterij IOS-a"
#. module: account_followup
#: constraint:account.move.line:0
msgid "You can not create move line on view account."
-msgstr ""
+msgstr "Ne može se knjižiti na sintetički konto."
#~ msgid "Select partners"
#~ msgstr "Odaberi partnere"
diff --git a/addons/account_followup/report/account_followup_print.py b/addons/account_followup/report/account_followup_print.py
index f2cf476e674..56004cebde3 100644
--- a/addons/account_followup/report/account_followup_print.py
+++ b/addons/account_followup/report/account_followup_print.py
@@ -64,9 +64,9 @@ class report_rappel(report_sxw.rml_parse):
line_cur = {base_currency.id: {'line': []}}
for line in movelines:
- if line.account_id.currency_id and (not line.account_id.currency_id.id in line_cur):
- line_cur[line.account_id.currency_id.id] = {'line': []}
- currency = line.account_id.currency_id or line.company_id.currency_id
+ if line.currency_id and (not line.currency_id.id in line_cur):
+ line_cur[line.currency_id.id] = {'line': []}
+ currency = line.currency_id or line.company_id.currency_id
line_data = {
'name': line.move_id.name,
'ref': line.ref,
diff --git a/addons/account_followup/security/ir.model.access.csv b/addons/account_followup/security/ir.model.access.csv
index 7b7e2af7ba8..75af9bf44f2 100644
--- a/addons/account_followup/security/ir.model.access.csv
+++ b/addons/account_followup/security/ir.model.access.csv
@@ -1,7 +1,6 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_account_followup_followup_line","account_followup.followup.line","model_account_followup_followup_line","account.group_account_user",1,0,0,0
-"access_account_followup_stat_manager","account_followup.stat.manager","model_account_followup_stat","account.group_account_manager",1,1,1,1
-"access_account_followup_followup_line_manager","account_followup.followup.line.manager","model_account_followup_followup_line","account.group_account_manager",1,1,1,1
-"access_account_followup_followup_accountant","account_followup.followup user","model_account_followup_followup","account.group_account_user",1,0,0,0
-"access_account_followup_stat_invoice","account_followup.stat.invoice","model_account_followup_stat","account.group_account_invoice",1,1,1,1
-"access_account_followup_stat_by_partner_manager","account_followup.stat.by.partner","model_account_followup_stat_by_partner","account.group_account_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_account_followup_followup_line,account_followup.followup.line,model_account_followup_followup_line,account.group_account_user,1,0,0,0
+access_account_followup_followup_line_manager,account_followup.followup.line.manager,model_account_followup_followup_line,account.group_account_manager,1,1,1,1
+access_account_followup_followup_accountant,account_followup.followup user,model_account_followup_followup,account.group_account_user,1,0,0,0
+access_account_followup_stat_invoice,account_followup.stat.invoice,model_account_followup_stat,account.group_account_invoice,1,1,1,1
+access_account_followup_stat_by_partner_manager,account_followup.stat.by.partner,model_account_followup_stat_by_partner,account.group_account_manager,1,1,1,1
diff --git a/addons/account_invoice_layout/__openerp__.py b/addons/account_invoice_layout/__openerp__.py
index 557f3c2e02c..cff01fa768b 100644
--- a/addons/account_invoice_layout/__openerp__.py
+++ b/addons/account_invoice_layout/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Improve Invoice Layout',
+ 'name': 'Invoice Layouts',
'version': '1.0',
- 'category': 'Hidden',
+ "category": 'Accounting & Finance',
'complexity': "easy",
'description': """
This module provides some features to improve the layout of the invoices.
diff --git a/addons/account_invoice_layout/i18n/hr.po b/addons/account_invoice_layout/i18n/hr.po
index 8c006706eaa..93e3154792a 100644
--- a/addons/account_invoice_layout/i18n/hr.po
+++ b/addons/account_invoice_layout/i18n/hr.po
@@ -7,37 +7,37 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2009-09-08 14:10+0000\n"
+"PO-Revision-Date: 2011-12-08 17:04+0000\n"
"Last-Translator: Ivica Perić \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:22+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
msgid "Sub Total"
-msgstr "Međuzbroj"
+msgstr "Podzbroj"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Note:"
-msgstr "Bilješka:"
+msgstr "Napomena:"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Cancelled Invoice"
-msgstr "Poništeni račun"
+msgstr "Otkazani račun"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
#: field:notify.message,name:0
msgid "Title"
-msgstr ""
+msgstr "Naslov"
#. module: account_invoice_layout
#: model:ir.actions.act_window,name:account_invoice_layout.action_account_invoice_special_msg
@@ -49,7 +49,7 @@ msgstr "Fakure sa izgledom i porukom"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Disc. (%)"
-msgstr "Popust (%)"
+msgstr "Pop.(%)"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
@@ -59,13 +59,13 @@ msgstr "Bilješka"
#. module: account_invoice_layout
#: model:ir.model,name:account_invoice_layout.model_notify_message
msgid "Notify By Messages"
-msgstr ""
+msgstr "Obavijesti po porukama"
#. module: account_invoice_layout
#: help:notify.message,msg:0
msgid ""
"This notification will appear at the bottom of the Invoices when printed."
-msgstr "Ova poruka će se pojaviti na dnu ispisanih faktura."
+msgstr "Ova poruka će se ispisati na podnožju računa."
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -97,132 +97,132 @@ msgstr ""
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "VAT :"
-msgstr ""
+msgstr "PDV :"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Tel. :"
-msgstr ""
+msgstr "Tel.:"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "PRO-FORMA"
-msgstr ""
+msgstr "Pro-forma"
#. module: account_invoice_layout
#: field:account.invoice,abstract_line_ids:0
msgid "Invoice Lines"
-msgstr ""
+msgstr "Stavke računa"
#. module: account_invoice_layout
#: view:account.invoice.line:0
msgid "Seq."
-msgstr ""
+msgstr "R.br."
#. module: account_invoice_layout
#: model:ir.ui.menu,name:account_invoice_layout.menu_finan_config_notify_message
msgid "Notification Message"
-msgstr ""
+msgstr "Notification Message"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
msgid "Product"
-msgstr ""
+msgstr "Proizvod"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Description"
-msgstr ""
+msgstr "Opis"
#. module: account_invoice_layout
#: help:account.invoice.line,sequence:0
msgid "Gives the sequence order when displaying a list of invoice lines."
-msgstr ""
+msgstr "Gives the sequence order when displaying a list of invoice lines."
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Price"
-msgstr ""
+msgstr "Cijena"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Invoice Date"
-msgstr ""
+msgstr "Datum računa"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
msgid "Taxes:"
-msgstr ""
+msgstr "Porezi:"
#. module: account_invoice_layout
#: field:account.invoice.line,functional_field:0
msgid "Source Account"
-msgstr ""
+msgstr "Konto"
#. module: account_invoice_layout
#: model:ir.actions.act_window,name:account_invoice_layout.notify_mesage_tree_form
msgid "Write Messages"
-msgstr ""
+msgstr "Write Messages"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Base"
-msgstr ""
+msgstr "Osnovica"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
msgid "Page Break"
-msgstr ""
+msgstr "Page Break"
#. module: account_invoice_layout
#: view:notify.message:0
#: field:notify.message,msg:0
msgid "Special Message"
-msgstr ""
+msgstr "Posebna poruka"
#. module: account_invoice_layout
#: help:account.invoice.special.msg,message:0
msgid "Message to Print at the bottom of report"
-msgstr ""
+msgstr "Poruka na kraju ispisa"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Quantity"
-msgstr ""
+msgstr "Količina"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Refund"
-msgstr ""
+msgstr "Povrat novca"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Fax :"
-msgstr ""
+msgstr "Fax:"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
msgid "Total:"
-msgstr ""
+msgstr "Ukupno:"
#. module: account_invoice_layout
#: view:account.invoice.special.msg:0
msgid "Select Message"
-msgstr ""
+msgstr "Select Message"
#. module: account_invoice_layout
#: view:notify.message:0
msgid "Messages"
-msgstr ""
+msgstr "Messages"
#. module: account_invoice_layout
#: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_1
@@ -233,66 +233,66 @@ msgstr ""
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Description / Taxes"
-msgstr ""
+msgstr "Opis/Porezi"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Amount"
-msgstr ""
+msgstr "Iznos"
#. module: account_invoice_layout
#: model:notify.message,msg:account_invoice_layout.demo_message1
msgid "ERP & CRM Solutions..."
-msgstr ""
+msgstr "ERP & CRM Solutions..."
#. module: account_invoice_layout
#: report:notify_account.invoice:0
msgid "Net Total :"
-msgstr ""
+msgstr "Net Total :"
#. module: account_invoice_layout
#: report:notify_account.invoice:0
msgid "Total :"
-msgstr ""
+msgstr "Ukupno :"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Draft Invoice"
-msgstr ""
+msgstr "Nacrt računa"
#. module: account_invoice_layout
#: field:account.invoice.line,sequence:0
msgid "Sequence Number"
-msgstr ""
+msgstr "Redni br."
#. module: account_invoice_layout
#: model:ir.model,name:account_invoice_layout.model_account_invoice_special_msg
msgid "Account Invoice Special Message"
-msgstr ""
+msgstr "Posebna poruka na računu"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Origin"
-msgstr ""
+msgstr "Izvor"
#. module: account_invoice_layout
#: field:account.invoice.line,state:0
msgid "Type"
-msgstr ""
+msgstr "Vrsta"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
msgid "Separator Line"
-msgstr ""
+msgstr "Separator Line"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Your Reference"
-msgstr ""
+msgstr "Vaša oznaka"
#. module: account_invoice_layout
#: model:ir.module.module,shortdesc:account_invoice_layout.module_meta_information
@@ -303,63 +303,63 @@ msgstr ""
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Supplier Invoice"
-msgstr ""
+msgstr "Ulazni račun"
#. module: account_invoice_layout
#: view:account.invoice.special.msg:0
msgid "Print"
-msgstr ""
+msgstr "Ispis"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Tax"
-msgstr ""
+msgstr "Porez"
#. module: account_invoice_layout
#: model:ir.model,name:account_invoice_layout.model_account_invoice_line
msgid "Invoice Line"
-msgstr ""
+msgstr "Stavka računa"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
msgid "Net Total:"
-msgstr ""
+msgstr "Ukupno netto:"
#. module: account_invoice_layout
#: view:notify.message:0
msgid "Write a notification or a wishful message."
-msgstr ""
+msgstr "Write a notification or a wishful message."
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: model:ir.model,name:account_invoice_layout.model_account_invoice
#: report:notify_account.invoice:0
msgid "Invoice"
-msgstr ""
+msgstr "Račun"
#. module: account_invoice_layout
#: view:account.invoice.special.msg:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Supplier Refund"
-msgstr ""
+msgstr "Povrat URA"
#. module: account_invoice_layout
#: field:account.invoice.special.msg,message:0
msgid "Message"
-msgstr ""
+msgstr "Poruka"
#. module: account_invoice_layout
#: report:notify_account.invoice:0
msgid "Taxes :"
-msgstr ""
+msgstr "Taxes :"
#. module: account_invoice_layout
#: model:ir.ui.menu,name:account_invoice_layout.menu_notify_mesage_tree_form
msgid "All Notification Messages"
-msgstr ""
+msgstr "Sve poruke"
diff --git a/addons/account_invoice_layout/report/report_account_invoice_layout.rml b/addons/account_invoice_layout/report/report_account_invoice_layout.rml
index c2dc0e036bb..6a8a286b66c 100644
--- a/addons/account_invoice_layout/report/report_account_invoice_layout.rml
+++ b/addons/account_invoice_layout/report/report_account_invoice_layout.rml
@@ -193,11 +193,7 @@
[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]
- [[ (o.address_invoice_id and o.address_invoice_id.street) or '' ]]
- [[ (o.address_invoice_id and o.address_invoice_id.street2) or removeParentNode('para') ]]
- [[ (o.address_invoice_id and o.address_invoice_id.zip) or '' ]] [[ (o.address_invoice_id and o.address_invoice_id.city) or '' ]]
- [[ (o.address_invoice_id and o.address_invoice_id.state_id and o.address_invoice_id.state_id.name) or removeParentNode('para') ]]
- [[ (o.address_invoice_id and o.address_invoice_id.country_id and o.address_invoice_id.country_id.name) or '' ]]
+ [[ display_address(o.address_invoice_id) ]]
@@ -235,7 +231,7 @@
Origin
-
-
+
+
diff --git a/addons/analytic/__openerp__.py b/addons/analytic/__openerp__.py
index 65f6588a1e3..33f1f281851 100644
--- a/addons/analytic/__openerp__.py
+++ b/addons/analytic/__openerp__.py
@@ -20,11 +20,11 @@
##############################################################################
{
- "name" : "Analytic Account",
+ "name" : "Analytic Accounting",
"version": "1.1",
"author" : "OpenERP SA",
"website" : "http://www.openerp.com",
- "category" : "Hidden",
+ "category": 'Hidden/Dependency',
"depends" : ["base", "decimal_precision"],
"description": """
Module for defining analytic accounting object.
diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py
index 114653d473e..2ecaeee0f15 100644
--- a/addons/analytic/analytic.py
+++ b/addons/analytic/analytic.py
@@ -161,7 +161,7 @@ class account_analytic_account(osv.osv):
'debit': fields.function(_debit_credit_bal_qtty, type='float', string='Debit', multi='debit_credit_bal_qtty', digits_compute=dp.get_precision('Account')),
'credit': fields.function(_debit_credit_bal_qtty, type='float', string='Credit', multi='debit_credit_bal_qtty', digits_compute=dp.get_precision('Account')),
'quantity': fields.function(_debit_credit_bal_qtty, type='float', string='Quantity', multi='debit_credit_bal_qtty'),
- 'quantity_max': fields.float('Maximum Quantity', help='Sets the higher limit of quantity of hours.'),
+ 'quantity_max': fields.float('Maximum Time', help='Sets the higher limit of time to work on the contract.'),
'partner_id': fields.many2one('res.partner', 'Partner'),
'contact_id': fields.many2one('res.partner.address', 'Contact'),
'user_id': fields.many2one('res.users', 'Account Manager'),
@@ -242,6 +242,13 @@ class account_analytic_account(osv.osv):
res['value']['partner_id'] = partner
return res
+ def onchange_partner_id(self, cr, uid, ids, partner, context=None):
+ partner_obj = self.pool.get('res.partner')
+ if not partner:
+ return {'value':{'contact_id': False}}
+ address = partner_obj.address_get(cr, uid, [partner], ['contact'])
+ return {'value':{'contact_id': address['contact']}}
+
def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100):
if not args:
args=[]
diff --git a/addons/analytic/i18n/hr.po b/addons/analytic/i18n/hr.po
new file mode 100644
index 00000000000..2ff7a50e37b
--- /dev/null
+++ b/addons/analytic/i18n/hr.po
@@ -0,0 +1,255 @@
+# Croatian translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:14+0000\n"
+"PO-Revision-Date: 2011-12-08 15:42+0000\n"
+"Last-Translator: Goran Kliska \n"
+"Language-Team: Croatian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
+
+#. module: analytic
+#: field:account.analytic.account,child_ids:0
+msgid "Child Accounts"
+msgstr "Podređena konta"
+
+#. module: analytic
+#: field:account.analytic.account,name:0
+msgid "Account Name"
+msgstr "Naziv konta"
+
+#. module: analytic
+#: help:account.analytic.line,unit_amount:0
+msgid "Specifies the amount of quantity to count."
+msgstr ""
+
+#. module: analytic
+#: model:ir.module.module,description:analytic.module_meta_information
+msgid ""
+"Module for defining analytic accounting object.\n"
+" "
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,state:0
+msgid "State"
+msgstr "Stanje"
+
+#. module: analytic
+#: field:account.analytic.account,user_id:0
+msgid "Account Manager"
+msgstr "Voditelj računovodstva"
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Draft"
+msgstr "Nacrt"
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Closed"
+msgstr "Zatvoren"
+
+#. module: analytic
+#: field:account.analytic.account,debit:0
+msgid "Debit"
+msgstr "Duguje"
+
+#. module: analytic
+#: help:account.analytic.account,state:0
+msgid ""
+"* When an account is created its in 'Draft' state. "
+" \n"
+"* If any associated partner is there, it can be in 'Open' state. "
+" \n"
+"* If any pending balance is there it can be in 'Pending'. "
+" \n"
+"* And finally when all the transactions are over, it can be in 'Close' "
+"state. \n"
+"* The project can be in either if the states 'Template' and 'Running'.\n"
+" If it is template then we can make projects based on the template projects. "
+"If its in 'Running' state it is a normal project. "
+" \n"
+" If it is to be reviewed then the state is 'Pending'.\n"
+" When the project is completed the state is set to 'Done'."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,type:0
+msgid "Account Type"
+msgstr "Vrsta konta"
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Template"
+msgstr "Predložak"
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Pending"
+msgstr "U toku"
+
+#. module: analytic
+#: model:ir.model,name:analytic.model_account_analytic_line
+msgid "Analytic Line"
+msgstr "Analitičke stavke"
+
+#. module: analytic
+#: field:account.analytic.account,description:0
+#: field:account.analytic.line,name:0
+msgid "Description"
+msgstr "Opis"
+
+#. module: analytic
+#: selection:account.analytic.account,type:0
+msgid "Normal"
+msgstr "Običan"
+
+#. module: analytic
+#: field:account.analytic.account,company_id:0
+#: field:account.analytic.line,company_id:0
+msgid "Company"
+msgstr "Organizacija"
+
+#. module: analytic
+#: field:account.analytic.account,quantity_max:0
+msgid "Maximum Quantity"
+msgstr "Maksimalna količina"
+
+#. module: analytic
+#: field:account.analytic.line,user_id:0
+msgid "User"
+msgstr "Korisnik"
+
+#. module: analytic
+#: field:account.analytic.account,parent_id:0
+msgid "Parent Analytic Account"
+msgstr "Nadređeni analitički konto"
+
+#. module: analytic
+#: field:account.analytic.line,date:0
+msgid "Date"
+msgstr "Datum"
+
+#. module: analytic
+#: field:account.analytic.account,currency_id:0
+msgid "Account currency"
+msgstr "Valuta konta"
+
+#. module: analytic
+#: field:account.analytic.account,quantity:0
+#: field:account.analytic.line,unit_amount:0
+msgid "Quantity"
+msgstr "Količina"
+
+#. module: analytic
+#: help:account.analytic.line,amount:0
+msgid ""
+"Calculated by multiplying the quantity and the price given in the Product's "
+"cost price. Always expressed in the company main currency."
+msgstr ""
+
+#. module: analytic
+#: help:account.analytic.account,quantity_max:0
+msgid "Sets the higher limit of quantity of hours."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,credit:0
+msgid "Credit"
+msgstr "Potražuje"
+
+#. module: analytic
+#: field:account.analytic.line,amount:0
+msgid "Amount"
+msgstr "Iznos"
+
+#. module: analytic
+#: field:account.analytic.account,contact_id:0
+msgid "Contact"
+msgstr "Kontakt"
+
+#. module: analytic
+#: constraint:account.analytic.account:0
+msgid ""
+"Error! The currency has to be the same as the currency of the selected "
+"company"
+msgstr "Greška! Valuta ne odgovara valuti organizacije."
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Cancelled"
+msgstr "Otkazano"
+
+#. module: analytic
+#: field:account.analytic.account,balance:0
+msgid "Balance"
+msgstr "Saldo"
+
+#. module: analytic
+#: constraint:account.analytic.account:0
+msgid "Error! You can not create recursive analytic accounts."
+msgstr "Greška! Ne možete kreirati rekurzivna analitička konta."
+
+#. module: analytic
+#: help:account.analytic.account,type:0
+msgid ""
+"If you select the View Type, it means you won't allow to create journal "
+"entries using that account."
+msgstr ""
+
+#. module: analytic
+#: field:account.analytic.account,date:0
+msgid "Date End"
+msgstr "Završni datum"
+
+#. module: analytic
+#: field:account.analytic.account,code:0
+msgid "Account Code"
+msgstr "Šifra konta"
+
+#. module: analytic
+#: field:account.analytic.account,complete_name:0
+msgid "Full Account Name"
+msgstr "Puni naziv konta"
+
+#. module: analytic
+#: field:account.analytic.line,account_id:0
+#: model:ir.model,name:analytic.model_account_analytic_account
+#: model:ir.module.module,shortdesc:analytic.module_meta_information
+msgid "Analytic Account"
+msgstr "Analitički konto"
+
+#. module: analytic
+#: selection:account.analytic.account,type:0
+msgid "View"
+msgstr "Pogled"
+
+#. module: analytic
+#: field:account.analytic.account,partner_id:0
+msgid "Partner"
+msgstr "Partner"
+
+#. module: analytic
+#: field:account.analytic.account,date_start:0
+msgid "Date Start"
+msgstr "Početni datum"
+
+#. module: analytic
+#: selection:account.analytic.account,state:0
+msgid "Open"
+msgstr "Otvoren"
+
+#. module: analytic
+#: field:account.analytic.account,line_ids:0
+msgid "Analytic Entries"
+msgstr "Stavke analitike"
diff --git a/addons/analytic/security/analytic_security.xml b/addons/analytic/security/analytic_security.xml
index 165bb92f6b9..3f8ec1036be 100644
--- a/addons/analytic/security/analytic_security.xml
+++ b/addons/analytic/security/analytic_security.xml
@@ -16,6 +16,7 @@
- Useability / Analytic Accounting
+ Analytic Accounting
+
diff --git a/addons/analytic/security/ir.model.access.csv b/addons/analytic/security/ir.model.access.csv
index 0a6c192eb56..4a08a4aa60d 100644
--- a/addons/analytic/security/ir.model.access.csv
+++ b/addons/analytic/security/ir.model.access.csv
@@ -1,2 +1 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
diff --git a/addons/analytic_journal_billing_rate/__openerp__.py b/addons/analytic_journal_billing_rate/__openerp__.py
index 059e85d9367..f29e19147d1 100644
--- a/addons/analytic_journal_billing_rate/__openerp__.py
+++ b/addons/analytic_journal_billing_rate/__openerp__.py
@@ -20,9 +20,9 @@
##############################################################################
{
- 'name': 'Analytic Journal Billing Rate, Define the default invoicing rate for a specific journal',
+ 'name': 'Billing Rates on Contracts',
'version': '1.0',
- 'category': 'Hidden',
+ 'category': 'Sales Management',
'description': """
This module allows you to define what is the default invoicing rate for a specific journal on a given account.
==============================================================================================================
diff --git a/addons/analytic_journal_billing_rate/i18n/hr.po b/addons/analytic_journal_billing_rate/i18n/hr.po
index f4074f5bcf3..e7aa86189c2 100644
--- a/addons/analytic_journal_billing_rate/i18n/hr.po
+++ b/addons/analytic_journal_billing_rate/i18n/hr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-03 16:56+0000\n"
-"PO-Revision-Date: 2009-09-08 15:52+0000\n"
-"Last-Translator: Ivica Perić \n"
+"PO-Revision-Date: 2011-12-08 15:46+0000\n"
+"Last-Translator: Goran Kliska \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:34+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: analytic_journal_billing_rate
#: model:ir.module.module,description:analytic_journal_billing_rate.module_meta_information
@@ -36,28 +36,28 @@ msgstr ""
#. module: analytic_journal_billing_rate
#: field:analytic_journal_rate_grid,journal_id:0
msgid "Analytic Journal"
-msgstr ""
+msgstr "Dnevnik analitike"
#. module: analytic_journal_billing_rate
#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
msgid "Invoice"
-msgstr ""
+msgstr "Račun"
#. module: analytic_journal_billing_rate
#: view:analytic_journal_rate_grid:0
msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
+msgstr "Stupanj naplate po temeljnici za ovaj analitički račun"
#. module: analytic_journal_billing_rate
#: field:analytic_journal_rate_grid,account_id:0
#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
msgid "Analytic Account"
-msgstr ""
+msgstr "Analitički konto"
#. module: analytic_journal_billing_rate
#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
msgid "Relation table between journals and billing rates"
-msgstr ""
+msgstr "Relacijska tablica između temeljnica i stupnjeva naplate"
#. module: analytic_journal_billing_rate
#: field:account.analytic.account,journal_rate_ids:0
@@ -76,7 +76,7 @@ msgstr ""
msgid ""
"Error! The currency has to be the same as the currency of the selected "
"company"
-msgstr ""
+msgstr "Greška! Valuta ne odgovara valuti organizacije."
#. module: analytic_journal_billing_rate
#: field:analytic_journal_rate_grid,rate_id:0
@@ -86,7 +86,7 @@ msgstr ""
#. module: analytic_journal_billing_rate
#: constraint:account.analytic.account:0
msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
+msgstr "Greška! Ne možete kreirati rekurzivna analitička konta."
#. module: analytic_journal_billing_rate
#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
diff --git a/addons/analytic_journal_billing_rate/security/ir.model.access.csv b/addons/analytic_journal_billing_rate/security/ir.model.access.csv
index 0b03709a81b..b4a604b2362 100644
--- a/addons/analytic_journal_billing_rate/security/ir.model.access.csv
+++ b/addons/analytic_journal_billing_rate/security/ir.model.access.csv
@@ -1,4 +1,4 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_analytic_journal_rate_user","analytic journal rate user","model_analytic_journal_rate_grid","account.group_account_manager",1,0,0,0
-"access_analytic_journal_rate_manager","analytic journal rate manager","model_analytic_journal_rate_grid","account.group_account_manager",1,1,1,1
-"access_analytic_journal_rate_account_manager","analytic journal rateaccount manager","model_analytic_journal_rate_grid","account.group_account_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_analytic_journal_rate_user,analytic journal rate user,model_analytic_journal_rate_grid,account.group_account_manager,1,0,0,0
+access_analytic_journal_rate_manager,analytic journal rate manager,model_analytic_journal_rate_grid,account.group_account_manager,1,1,1,1
+access_analytic_journal_rate_account_manager,analytic journal rateaccount manager,model_analytic_journal_rate_grid,account.group_account_manager,1,1,1,1
diff --git a/addons/analytic_user_function/__openerp__.py b/addons/analytic_user_function/__openerp__.py
index bb3ca084be7..d7f97c1b158 100644
--- a/addons/analytic_user_function/__openerp__.py
+++ b/addons/analytic_user_function/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Human Resources',
+ 'name': 'Jobs on Contracts',
'version': '1.0',
- 'category': 'Hidden',
+ 'category': 'Sales Management',
'description': """
This module allows you to define what is the default function of a specific user on a given account.
====================================================================================================
diff --git a/addons/analytic_user_function/i18n/hr.po b/addons/analytic_user_function/i18n/hr.po
index 8f795e66fcc..fc425f5a69f 100644
--- a/addons/analytic_user_function/i18n/hr.po
+++ b/addons/analytic_user_function/i18n/hr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev_rc3\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-03 16:56+0000\n"
-"PO-Revision-Date: 2010-08-03 02:55+0000\n"
-"Last-Translator: Mantavya Gajjar (Open ERP) \n"
+"PO-Revision-Date: 2011-12-08 15:51+0000\n"
+"Last-Translator: Goran Kliska \n"
"Language-Team: Vinteh\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:36+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
"Language: hr\n"
#. module: analytic_user_function
@@ -27,7 +27,7 @@ msgstr "Proizvod"
#: code:addons/analytic_user_function/analytic_user_function.py:131
#, python-format
msgid "Error !"
-msgstr ""
+msgstr "Greška !"
#. module: analytic_user_function
#: model:ir.model,name:analytic_user_function.model_hr_analytic_timesheet
@@ -56,19 +56,19 @@ msgstr "Korisnik"
msgid ""
"Error! The currency has to be the same as the currency of the selected "
"company"
-msgstr ""
+msgstr "Greška! Valuta ne odgovara valuti organizacije."
#. module: analytic_user_function
#: code:addons/analytic_user_function/analytic_user_function.py:97
#: code:addons/analytic_user_function/analytic_user_function.py:132
#, python-format
msgid "There is no expense account define for this product: \"%s\" (id:%d)"
-msgstr ""
+msgstr "nije definiran konto troška za ovaj proizvod: \"%s\" (id:%d)"
#. module: analytic_user_function
#: model:ir.model,name:analytic_user_function.model_analytic_user_funct_grid
msgid "Relation table between users and products on a analytic account"
-msgstr "Vza između korisnika i proizvoda kod Analitičkog konta."
+msgstr "Veza između korisnika i proizvoda na analitičkom kontu."
#. module: analytic_user_function
#: model:ir.module.module,description:analytic_user_function.module_meta_information
@@ -95,12 +95,12 @@ msgstr "Funkcija Analitičkog Korisnika"
#. module: analytic_user_function
#: constraint:account.analytic.account:0
msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
+msgstr "Greška! Ne možete kreirati rekurzivna analitička konta."
#. module: analytic_user_function
#: view:analytic_user_funct_grid:0
msgid "User's Product for this Analytic Account"
-msgstr "Korisnikov Proizvod za ovaj Analitički konto."
+msgstr "Proizvod rada"
#~ msgid "Invalid XML for View Architecture!"
#~ msgstr "Nepravilan XML format za View Architecture!"
diff --git a/addons/analytic_user_function/security/ir.model.access.csv b/addons/analytic_user_function/security/ir.model.access.csv
index d8f2f0d2116..fe48e329aea 100644
--- a/addons/analytic_user_function/security/ir.model.access.csv
+++ b/addons/analytic_user_function/security/ir.model.access.csv
@@ -1,6 +1,6 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_analytic_user_funct_user","analytic user funct user","model_analytic_user_funct_grid","account.group_account_manager",1,0,0,0
-"access_analytic_user_funct_manager","analytic user funct manager","model_analytic_user_funct_grid","account.group_account_manager",1,1,1,1
-"access_analytic_user_funct_account_manager","analytic user funct account manager","model_analytic_user_funct_grid","account.group_account_manager",1,1,1,1
-"access_analytic_user_funct_grid_hr_user","analytic user funct grid hr user","model_analytic_user_funct_grid","base.group_hr_user",1,0,0,0
-"access_analytic_user_funct_grid_hr_manager","analytic user funct grid hr manager","model_analytic_user_funct_grid","base.group_hr_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_analytic_user_funct_user,analytic user funct user,model_analytic_user_funct_grid,account.group_account_manager,1,0,0,0
+access_analytic_user_funct_manager,analytic user funct manager,model_analytic_user_funct_grid,account.group_account_manager,1,1,1,1
+access_analytic_user_funct_account_manager,analytic user funct account manager,model_analytic_user_funct_grid,account.group_account_manager,1,1,1,1
+access_analytic_user_funct_grid_hr_user,analytic user funct grid hr user,model_analytic_user_funct_grid,base.group_hr_user,1,0,0,0
+access_analytic_user_funct_grid_hr_manager,analytic user funct grid hr manager,model_analytic_user_funct_grid,base.group_hr_manager,1,1,1,1
diff --git a/addons/anonymization/__openerp__.py b/addons/anonymization/__openerp__.py
index ed22530c6bc..91b6686c621 100644
--- a/addons/anonymization/__openerp__.py
+++ b/addons/anonymization/__openerp__.py
@@ -24,7 +24,7 @@
{
'name': 'Database Anonymization',
'version': '1.0',
- 'category': 'Hidden',
+ 'category': 'Tools',
'complexity': "easy",
'description': """
This module allows you to anonymize a database.
diff --git a/addons/anonymization/i18n/hr.po b/addons/anonymization/i18n/hr.po
new file mode 100644
index 00000000000..24208ceb18c
--- /dev/null
+++ b/addons/anonymization/i18n/hr.po
@@ -0,0 +1,226 @@
+# Croatian translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:14+0000\n"
+"PO-Revision-Date: 2011-12-08 15:53+0000\n"
+"Last-Translator: Goran Kliska \n"
+"Language-Team: Croatian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
+
+#. module: anonymization
+#: model:ir.model,name:anonymization.model_ir_model_fields_anonymize_wizard
+msgid "ir.model.fields.anonymize.wizard"
+msgstr ""
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization,field_name:0
+msgid "Field Name"
+msgstr "Naziv polja"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization,field_id:0
+msgid "Field"
+msgstr "Polje"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization.history,state:0
+#: field:ir.model.fields.anonymize.wizard,state:0
+msgid "State"
+msgstr "Stanje"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymize.wizard,file_import:0
+msgid "Import"
+msgstr "Uvoz"
+
+#. module: anonymization
+#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization
+msgid "ir.model.fields.anonymization"
+msgstr ""
+
+#. module: anonymization
+#: model:ir.module.module,shortdesc:anonymization.module_meta_information
+msgid "Database anonymization module"
+msgstr ""
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization.history,direction:0
+msgid "Direction"
+msgstr "Smjer"
+
+#. module: anonymization
+#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_tree
+#: view:ir.model.fields.anonymization:0
+#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_fields
+msgid "Anonymized Fields"
+msgstr ""
+
+#. module: anonymization
+#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization
+msgid "Database anonymization"
+msgstr ""
+
+#. module: anonymization
+#: code:addons/anonymization/anonymization.py:55
+#: sql_constraint:ir.model.fields.anonymization:0
+#, python-format
+msgid "You cannot have two records having the same model and the same field"
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization,state:0
+#: selection:ir.model.fields.anonymize.wizard,state:0
+msgid "Anonymized"
+msgstr ""
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization,state:0
+msgid "unknown"
+msgstr "nepoznato"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization,model_id:0
+msgid "Object"
+msgstr "Objekt"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization.history,filepath:0
+msgid "File path"
+msgstr "Putanja datoteke"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization.history,date:0
+msgid "Date"
+msgstr "Datum"
+
+#. module: anonymization
+#: field:ir.model.fields.anonymize.wizard,file_export:0
+msgid "Export"
+msgstr "Izvoz"
+
+#. module: anonymization
+#: view:ir.model.fields.anonymize.wizard:0
+msgid "Reverse the Database Anonymization"
+msgstr ""
+
+#. module: anonymization
+#: view:ir.model.fields.anonymize.wizard:0
+msgid "Database Anonymization"
+msgstr ""
+
+#. module: anonymization
+#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_wizard
+msgid "Anonymize database"
+msgstr ""
+
+#. module: anonymization
+#: view:ir.model.fields.anonymization.history:0
+#: field:ir.model.fields.anonymization.history,field_ids:0
+msgid "Fields"
+msgstr "Polja"
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization,state:0
+#: selection:ir.model.fields.anonymize.wizard,state:0
+msgid "Clear"
+msgstr "Očisti"
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization.history,direction:0
+msgid "clear -> anonymized"
+msgstr ""
+
+#. module: anonymization
+#: view:ir.model.fields.anonymize.wizard:0
+#: field:ir.model.fields.anonymize.wizard,summary:0
+msgid "Summary"
+msgstr "Sažetak"
+
+#. module: anonymization
+#: view:ir.model.fields.anonymization:0
+msgid "Anonymized Field"
+msgstr ""
+
+#. module: anonymization
+#: model:ir.module.module,description:anonymization.module_meta_information
+msgid ""
+"\n"
+"This module allows you to anonymize a database.\n"
+" "
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymize.wizard,state:0
+msgid "Unstable"
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization.history,state:0
+msgid "Exception occured"
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization,state:0
+#: selection:ir.model.fields.anonymize.wizard,state:0
+msgid "Not Existing"
+msgstr ""
+
+#. module: anonymization
+#: field:ir.model.fields.anonymization,model_name:0
+msgid "Object Name"
+msgstr "Naziv objekta"
+
+#. module: anonymization
+#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_history_tree
+#: view:ir.model.fields.anonymization.history:0
+#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_history
+msgid "Anonymization History"
+msgstr ""
+
+#. module: anonymization
+#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_history
+msgid "ir.model.fields.anonymization.history"
+msgstr ""
+
+#. module: anonymization
+#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymize_wizard
+#: view:ir.model.fields.anonymize.wizard:0
+msgid "Anonymize Database"
+msgstr ""
+
+#. module: anonymization
+#: field:ir.model.fields.anonymize.wizard,name:0
+msgid "File Name"
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization.history,direction:0
+msgid "anonymized -> clear"
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization.history,state:0
+msgid "Started"
+msgstr ""
+
+#. module: anonymization
+#: selection:ir.model.fields.anonymization.history,state:0
+msgid "Done"
+msgstr ""
+
+#. module: anonymization
+#: view:ir.model.fields.anonymization.history:0
+#: field:ir.model.fields.anonymization.history,msg:0
+#: field:ir.model.fields.anonymize.wizard,msg:0
+msgid "Message"
+msgstr ""
diff --git a/addons/anonymization/security/ir.model.access.csv b/addons/anonymization/security/ir.model.access.csv
index b558227df24..745913eaa65 100644
--- a/addons/anonymization/security/ir.model.access.csv
+++ b/addons/anonymization/security/ir.model.access.csv
@@ -1,7 +1,5 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_ir_model_fields_anonymization_group_system","ir_model_fields_anonymization group_user","model_ir_model_fields_anonymization","base.group_system",1,1,1,1
-"access_ir_model_fields_anonymization_user","ir_model_fields_anonymization user","model_ir_model_fields_anonymization",,1,0,0,0
-"access_ir_model_fields_anonymization_history_group_system","ir_model_fields_anonymization_history group_user","model_ir_model_fields_anonymization_history","base.group_system",1,1,1,1
-"access_ir_model_fields_anonymization_history_user","ir_model_fields_anonymization_history user","model_ir_model_fields_anonymization_history",,1,0,0,0
-"access_ir_model_fields_anonymize_wizard_group_system","ir_model_fields_anonymize_wizard group_user","model_ir_model_fields_anonymize_wizard","base.group_system",1,1,1,1
-"access_ir_model_fields_anonymize_wizard_user","ir_model_fields_anonymize_wizard user","model_ir_model_fields_anonymize_wizard",,1,0,0,0
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_ir_model_fields_anonymization_group_system,ir_model_fields_anonymization group_user,model_ir_model_fields_anonymization,base.group_system,1,1,1,1
+access_ir_model_fields_anonymization_user,ir_model_fields_anonymization user,model_ir_model_fields_anonymization,,1,0,0,0
+access_ir_model_fields_anonymization_history_group_system,ir_model_fields_anonymization_history group_user,model_ir_model_fields_anonymization_history,base.group_system,1,1,1,1
+access_ir_model_fields_anonymization_history_user,ir_model_fields_anonymization_history user,model_ir_model_fields_anonymization_history,,1,0,0,0
diff --git a/addons/association/__openerp__.py b/addons/association/__openerp__.py
index 3dc6c03f94e..36622a5750d 100644
--- a/addons/association/__openerp__.py
+++ b/addons/association/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Association profile',
+ 'name': 'Associations Management',
'version': '0.1',
'category': 'Specific Industry Applications',
'complexity': "normal",
diff --git a/addons/association/i18n/hr.po b/addons/association/i18n/hr.po
index 9951ce3dd25..080d41d3e30 100644
--- a/addons/association/i18n/hr.po
+++ b/addons/association/i18n/hr.po
@@ -7,29 +7,29 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2010-11-12 11:37+0000\n"
-"Last-Translator: <>\n"
+"PO-Revision-Date: 2011-12-08 15:58+0000\n"
+"Last-Translator: Goran Kliska \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:52+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: association
#: field:profile.association.config.install_modules_wizard,wiki:0
msgid "Wiki"
-msgstr ""
+msgstr "Wiki"
#. module: association
#: view:profile.association.config.install_modules_wizard:0
msgid "Event Management"
-msgstr ""
+msgstr "Upravljanje eventima"
#. module: association
#: field:profile.association.config.install_modules_wizard,project_gtd:0
msgid "Getting Things Done"
-msgstr ""
+msgstr "Getting Things Done"
#. module: association
#: model:ir.module.module,description:association.module_meta_information
@@ -39,7 +39,7 @@ msgstr ""
#. module: association
#: field:profile.association.config.install_modules_wizard,progress:0
msgid "Configuration Progress"
-msgstr ""
+msgstr "Napredak konfiguracije"
#. module: association
#: view:profile.association.config.install_modules_wizard:0
@@ -51,7 +51,7 @@ msgstr ""
#. module: association
#: view:profile.association.config.install_modules_wizard:0
msgid "title"
-msgstr ""
+msgstr "naslov"
#. module: association
#: help:profile.association.config.install_modules_wizard,event_project:0
@@ -61,7 +61,7 @@ msgstr ""
#. module: association
#: field:profile.association.config.install_modules_wizard,config_logo:0
msgid "Image"
-msgstr ""
+msgstr "Slika"
#. module: association
#: help:profile.association.config.install_modules_wizard,hr_expense:0
@@ -69,6 +69,8 @@ msgid ""
"Tracks and manages employee expenses, and can automatically re-invoice "
"clients if the expenses are project-related."
msgstr ""
+"Prati i upravlja troškove djelatnika , moguće je automatski ponovno "
+"fakturirati klijente ako su troškovi povezani sa projektom."
#. module: association
#: help:profile.association.config.install_modules_wizard,project_gtd:0
@@ -80,7 +82,7 @@ msgstr ""
#. module: association
#: view:profile.association.config.install_modules_wizard:0
msgid "Resources Management"
-msgstr ""
+msgstr "Upravljanje resursima"
#. module: association
#: model:ir.module.module,shortdesc:association.module_meta_information
@@ -90,7 +92,7 @@ msgstr ""
#. module: association
#: field:profile.association.config.install_modules_wizard,hr_expense:0
msgid "Expenses Tracking"
-msgstr ""
+msgstr "Praćenje troškova"
#. module: association
#: model:ir.actions.act_window,name:association.action_config_install_module
@@ -120,15 +122,15 @@ msgstr ""
#. module: association
#: field:profile.association.config.install_modules_wizard,event_project:0
msgid "Events"
-msgstr ""
+msgstr "Eventi"
#. module: association
#: view:profile.association.config.install_modules_wizard:0
#: field:profile.association.config.install_modules_wizard,project:0
msgid "Project Management"
-msgstr ""
+msgstr "Upravljanje Projektima"
#. module: association
#: view:profile.association.config.install_modules_wizard:0
msgid "Configure"
-msgstr ""
+msgstr "Postavke"
diff --git a/addons/association/profile_association.xml b/addons/association/profile_association.xml
index 8ce97cb2e43..5f81769eb1a 100644
--- a/addons/association/profile_association.xml
+++ b/addons/association/profile_association.xml
@@ -6,7 +6,6 @@
id="base.menu_association"
icon="terp-calendar"
sequence="9"
- groups="base.group_extended"
web_icon="images/association.png"
web_icon_hover="images/association-hover.png"/>
diff --git a/addons/association/security/ir.model.access.csv b/addons/association/security/ir.model.access.csv
index 0343f29f43a..4a08a4aa60d 100644
--- a/addons/association/security/ir.model.access.csv
+++ b/addons/association/security/ir.model.access.csv
@@ -1 +1 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
diff --git a/addons/auction/__openerp__.py b/addons/auction/__openerp__.py
index 3f6c6c35e31..c3cba1d7255 100644
--- a/addons/auction/__openerp__.py
+++ b/addons/auction/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Auction Management',
+ 'name': 'Auction Houses',
'version': '1.0',
'category': 'Specific Industry Applications',
'complexity': "normal",
@@ -68,6 +68,7 @@ The dashboard for auction includes:
],
'installable': True,
+ 'auction': True,
'active': False,
'certificate': '0039333102717',
'images': ['images/auction1.jpeg','images/auction2.jpeg','images/auction3.jpeg'],
diff --git a/addons/auction/report/buyer_form_report.rml b/addons/auction/report/buyer_form_report.rml
index c917a931fd3..3421bf27d12 100644
--- a/addons/auction/report/buyer_form_report.rml
+++ b/addons/auction/report/buyer_form_report.rml
@@ -99,9 +99,7 @@
[[ o['partner'] and o['partner'].name or False]]
- [[o['partner'] and o['partner'].address[0].street or False]]
- [[o['partner'] and o['partner'].address[0].zip or False]][[o['partner'] and o['partner'].address[0].city or False]]
- [[o['partner'] and o['partner'].address[0].country_id.name or False]]
+ [[o['partner'] and o['partner'].address and display_address(o['partner'].address[0]) ]]
+ crm.meetingcalendar,tree,form,gantt
- {"search_default_user_id":uid, 'search_default_section_id': section_id, 'virtual_id' : True}
+ {"search_default_user_id":uid, 'search_default_section_id': section_id}The meeting calendar is shared between the sales teams and fully integrated with other applications such as the employee holidays or the business opportunities. You can also synchronize meetings with your mobile phone using the caldav interface.
diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml
index d35300b62b5..c04e00e5fcc 100644
--- a/addons/crm/crm_meeting_view.xml
+++ b/addons/crm/crm_meeting_view.xml
@@ -45,7 +45,6 @@
widget="selection" />
-
@@ -67,7 +66,7 @@
-
+
@@ -231,24 +230,11 @@
-
+
+
-
-
-
-
-
-
-
-
@@ -294,14 +280,18 @@
-
-
-
+
+
+
+
+
-
diff --git a/addons/crm/crm_phonecall.py b/addons/crm/crm_phonecall.py
index 9cfdddf159c..b9bb6d359b1 100644
--- a/addons/crm/crm_phonecall.py
+++ b/addons/crm/crm_phonecall.py
@@ -102,11 +102,6 @@ class crm_phonecall(crm_base, osv.osv):
def case_close(self, cr, uid, ids, *args):
"""Overrides close for crm_case for setting close date
- @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 case Ids
- @param *args: Tuple Value for additional Params
"""
res = True
for phone in self.browse(cr, uid, ids):
@@ -121,11 +116,6 @@ class crm_phonecall(crm_base, osv.osv):
def case_reset(self, cr, uid, ids, *args):
"""Resets case as Todo
- @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 case Ids
- @param *args: Tuple Value for additional Params
"""
res = super(crm_phonecall, self).case_reset(cr, uid, ids, args, 'crm.phonecall')
self.write(cr, uid, ids, {'duration': 0.0})
@@ -134,25 +124,147 @@ class crm_phonecall(crm_base, osv.osv):
def case_open(self, cr, uid, ids, *args):
"""Overrides cancel for crm_case for setting Open Date
- @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 case's Ids
- @param *args: Give Tuple Value
"""
res = super(crm_phonecall, self).case_open(cr, uid, ids, *args)
self.write(cr, uid, ids, {'date_open': time.strftime('%Y-%m-%d %H:%M:%S')})
return res
+ def schedule_another_phonecall(self, cr, uid, ids, schedule_time, call_summary, \
+ user_id=False, section_id=False, categ_id=False, action='schedule', context=None):
+ """
+ action :('schedule','Schedule a call'), ('log','Log a call')
+ """
+ model_data = self.pool.get('ir.model.data')
+ phonecall_dict = {}
+ if not categ_id:
+ res_id = model_data._get_id(cr, uid, 'crm', 'categ_phone2')
+ if res_id:
+ categ_id = model_data.browse(cr, uid, res_id, context=context).res_id
+ for call in self.browse(cr, uid, ids, context=context):
+ if not section_id:
+ section_id = call.section_id and call.section_id.id or False
+ if not user_id:
+ user_id = call.user_id and call.user_id.id or False
+ vals = {
+ 'name' : call_summary,
+ 'user_id' : user_id or False,
+ 'categ_id' : categ_id or False,
+ 'description' : call.description or False,
+ 'date' : schedule_time,
+ 'section_id' : section_id or False,
+ 'partner_id': call.partner_id and call.partner_id.id or False,
+ 'partner_address_id': call.partner_address_id and call.partner_address_id.id or False,
+ 'partner_phone' : call.partner_phone,
+ 'partner_mobile' : call.partner_mobile,
+ 'priority': call.priority,
+ }
+
+ new_id = self.create(cr, uid, vals, context=context)
+ self.case_open(cr, uid, [new_id])
+ if action == 'log':
+ self.case_close(cr, uid, [new_id])
+ phonecall_dict[call.id] = new_id
+ return phonecall_dict
+
+ def _call_create_partner(self, cr, uid, phonecall, context=None):
+ partner = self.pool.get('res.partner')
+ partner_id = partner.create(cr, uid, {
+ 'name': phonecall.name,
+ 'user_id': phonecall.user_id.id,
+ 'comment': phonecall.description,
+ 'address': []
+ })
+ return partner_id
+
+ def _call_set_partner(self, cr, uid, ids, partner_id, context=None):
+ return self.write(cr, uid, ids, {'partner_id' : partner_id}, context=context)
+
+ def _call_create_partner_address(self, cr, uid, phonecall, partner_id, context=None):
+ address = self.pool.get('res.partner.address')
+ return address.create(cr, uid, {
+ 'partner_id': partner_id,
+ 'name': phonecall.name,
+ 'phone': phonecall.partner_phone,
+ })
+
+ def convert_partner(self, cr, uid, ids, action='create', partner_id=False, context=None):
+ """
+ This function convert partner based on action.
+ if action is 'create', create new partner with contact and assign lead to new partner_id.
+ otherwise assign lead to specified partner_id
+ """
+ if context is None:
+ context = {}
+ partner_ids = {}
+ for call in self.browse(cr, uid, ids, context=context):
+ if action == 'create':
+ if not partner_id:
+ partner_id = self._call_create_partner(cr, uid, call, context=context)
+ self._call_create_partner_address(cr, uid, call, partner_id, context=context)
+ self._call_set_partner(cr, uid, [call.id], partner_id, context=context)
+ partner_ids[call.id] = partner_id
+ return partner_ids
+
+
+ def redirect_phonecall_view(self, cr, uid, phonecall_id, context=None):
+ model_data = self.pool.get('ir.model.data')
+ # Select the view
+ tree_view = model_data.get_object_reference(cr, uid, 'crm', 'crm_case_phone_tree_view')
+ form_view = model_data.get_object_reference(cr, uid, 'crm', 'crm_case_phone_form_view')
+ search_view = model_data.get_object_reference(cr, uid, 'crm', 'view_crm_case_phonecalls_filter')
+ value = {
+ 'name': _('Phone Call'),
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'res_model': 'crm.phonecall',
+ 'res_id' : int(phonecall_id),
+ 'views': [(form_view and form_view[1] or False, 'form'), (tree_view and tree_view[1] or False, 'tree'), (False, 'calendar')],
+ 'type': 'ir.actions.act_window',
+ 'search_view_id': search_view and search_view[1] or False,
+ }
+ return value
+
+
+ def convert_opportunity(self, cr, uid, ids, opportunity_summary=False, partner_id=False, planned_revenue=0.0, probability=0.0, context=None):
+ partner = self.pool.get('res.partner')
+ address = self.pool.get('res.partner.address')
+ opportunity = self.pool.get('crm.lead')
+ opportunity_dict = {}
+ default_contact = False
+ for call in self.browse(cr, uid, ids, context=context):
+ if not partner_id:
+ partner_id = call.partner_id and call.partner_id.id or False
+ if partner_id:
+ address_id = partner.address_get(cr, uid, [partner_id])['default']
+ if address_id:
+ default_contact = address.browse(cr, uid, address_id, context=context)
+ opportunity_id = opportunity.create(cr, uid, {
+ 'name': opportunity_summary or call.name,
+ 'planned_revenue': planned_revenue,
+ 'probability': probability,
+ 'partner_id': partner_id or False,
+ 'partner_address_id': default_contact and default_contact.id,
+ 'phone': default_contact and default_contact.phone,
+ 'mobile': default_contact and default_contact.mobile,
+ 'section_id': call.section_id and call.section_id.id or False,
+ 'description': call.description or False,
+ 'priority': call.priority,
+ 'type': 'opportunity',
+ 'phone': call.partner_phone or False,
+ })
+ vals = {
+ 'partner_id': partner_id,
+ 'opportunity_id' : opportunity_id,
+ }
+ self.write(cr, uid, [call.id], vals)
+ self.case_close(cr, uid, [call.id])
+ opportunity.case_open(cr, uid, [opportunity_id])
+ opportunity_dict[call.id] = opportunity_id
+ return opportunity_dict
+
def action_make_meeting(self, cr, uid, ids, context=None):
"""
This opens Meeting's calendar view to schedule meeting on current Phonecall
- @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 Meeting IDs
- @param context: A standard dictionary for contextual values
-
@return : Dictionary value for created Meeting view
"""
value = {}
diff --git a/addons/crm/crm_phonecall_demo.xml b/addons/crm/crm_phonecall_demo.xml
index 8f0661ab8be..e80930284f4 100644
--- a/addons/crm/crm_phonecall_demo.xml
+++ b/addons/crm/crm_phonecall_demo.xml
@@ -83,9 +83,6 @@
-
-
-
diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py
index cbb05ee3e74..e2016f6d8aa 100644
--- a/addons/crm/res_partner.py
+++ b/addons/crm/res_partner.py
@@ -33,6 +33,44 @@ class res_partner(osv.osv):
'phonecall_ids': fields.one2many('crm.phonecall', 'partner_id',\
'Phonecalls'),
}
+
+ def redirect_partner_form(self, cr, uid, partner_id, context=None):
+ search_view = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'view_res_partner_filter')
+ value = {
+ 'domain': "[]",
+ 'view_type': 'form',
+ 'view_mode': 'form,tree',
+ 'res_model': 'res.partner',
+ 'res_id': int(partner_id),
+ 'view_id': False,
+ 'context': context,
+ 'type': 'ir.actions.act_window',
+ 'search_view_id': search_view and search_view[1] or False
+ }
+ return value
+
+ def make_opportunity(self, cr, uid, ids, opportunity_summary, planned_revenue=0.0, probability=0.0, partner_id=None, context=None):
+ categ = self.pool.get('crm.case.categ')
+ address = self.address_get(cr, uid, ids)
+ categ_ids = categ.search(cr, uid, [('object_id.model','=','crm.lead')])
+ lead = self.pool.get('crm.lead')
+ opportunity_ids = {}
+ for partner in self.browse(cr, uid, ids, context=context):
+ address = self.address_get(cr, uid, [partner.id])['default']
+ if not partner_id:
+ partner_id = partner.id
+ opportunity_id = lead.create(cr, uid, {
+ 'name' : opportunity_summary,
+ 'planned_revenue' : planned_revenue,
+ 'probability' : probability,
+ 'partner_id' : partner_id,
+ 'partner_address_id' : address,
+ 'categ_id' : categ_ids and categ_ids[0] or '',
+ 'state' :'draft',
+ 'type': 'opportunity'
+ })
+ opportunity_ids[partner_id] = opportunity_id
+ return opportunity_ids
res_partner()
diff --git a/addons/crm/security/crm_security.xml b/addons/crm/security/crm_security.xml
index 8ac32086cfd..ed3d86bf9b8 100644
--- a/addons/crm/security/crm_security.xml
+++ b/addons/crm/security/crm_security.xml
@@ -3,16 +3,19 @@
- Sales / User - Own Leads Only
+ User - Own Leads Only
+
- Sales / User - All Leads
+ User - All Leads
+
- Sales / Manager
+ Manager
+
@@ -40,6 +43,13 @@
-
+
+
+ Hide Private Meetings
+
+
+ ['|',('user_id','=',user.id),('show_as','=','busy')]
+
+
diff --git a/addons/crm/security/ir.model.access.csv b/addons/crm/security/ir.model.access.csv
index 4ea07252276..c893ed6aad7 100644
--- a/addons/crm/security/ir.model.access.csv
+++ b/addons/crm/security/ir.model.access.csv
@@ -1,48 +1,45 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_crm_segmentation_user","crm.segmentation user","model_crm_segmentation","base.group_sale_salesman",1,0,0,0
-"access_crm_segmentation_line_user","crm.segmentation.line user","model_crm_segmentation_line","base.group_sale_salesman",1,0,0,0
-"access_crm_segmentation","crm.segmentation","model_crm_segmentation","base.group_sale_manager",1,1,1,1
-"access_crm_segmentation_line","crm.segmentation.line","model_crm_segmentation_line","base.group_sale_manager",1,1,1,1
-"access_crm_case_channel_user","crm.case.channel user","model_crm_case_channel","base.group_sale_salesman",1,0,0,0
-"access_crm_case_channel_manager","crm.case.channel manager","model_crm_case_channel","base.group_sale_manager",1,1,1,1
-"access_crm_case_section","crm.case.section","model_crm_case_section","base.group_sale_salesman",1,1,1,0
-"access_crm_case_categ","crm.case.categ","model_crm_case_categ","base.group_sale_salesman",1,1,1,0
-"access_crm_meeting_manager","crm.meeting.manager","model_crm_meeting","base.group_sale_manager",1,1,1,1
-"access_crm_lead_manager","crm.lead.manager","model_crm_lead","base.group_sale_manager",1,1,1,1
-"access_crm_phonecall_manager","crm.phonecall.manager","model_crm_phonecall","base.group_sale_manager",1,1,1,1
-"access_crm_case_categ","crm.case.categ","model_crm_case_categ","base.group_user",1,0,0,0
-"access_crm_meeting","crm.meeting","model_crm_meeting","base.group_sale_salesman",1,1,1,0
-"access_crm_meeting_all","crm.meeting_allll","model_crm_meeting","base.group_user",1,0,0,0
-"access_crm_lead","crm.lead","model_crm_lead","base.group_sale_salesman",1,1,1,0
-"access_crm_lead.all","crm.lead.all","model_crm_lead","base.group_user",1,0,0,0
-"access_crm_phonecall","crm.phonecall","model_crm_phonecall","base.group_sale_salesman",1,1,1,0
-"access_crm_phonecall.all","crm.phonecall.all","model_crm_phonecall","base.group_user",1,0,0,0
-"access_crm_case_section_user","crm.case.section.user","model_crm_case_section","base.group_sale_salesman",1,1,1,0
-"access_crm_case_section_manager","crm.case.section.manager","model_crm_case_section","base.group_sale_manager",1,1,1,1
-"access_crm_case_stage","crm.case.stage","model_crm_case_stage","base.group_user",1,0,0,0
-"access_crm_case_stage_manager","crm.case.stage","model_crm_case_stage","base.group_sale_manager",1,1,1,1
-"access_crm_case_resource_type_user","crm_case_resource_type user","model_crm_case_resource_type","base.group_sale_salesman",1,1,1,0
-"access_crm_case_resource_type_manager","crm_case_resource_type manager","model_crm_case_resource_type","base.group_sale_manager",1,1,1,1
-"access_crm_phonecall_report_user","crm.phonecall.report.user","model_crm_phonecall_report","base.group_sale_salesman",1,0,0,0
-"access_crm_lead_report_manager","crm.lead.report","model_crm_lead_report","base.group_sale_manager",1,1,1,1
-"access_crm_phonecall_report_manager","crm.phonecall.report","model_crm_phonecall_report","base.group_sale_manager",1,1,1,1
-"access_res_partner_manager","res.partner.crm.manager","base.model_res_partner","base.group_sale_manager",1,0,0,0
-"access_res_partner_address_manager","res.partner.address.crm.user.manager","base.model_res_partner_address","base.group_sale_manager",1,0,0,0
-"access_res_partner_category_manager","res.partner.category.crm.manager","base.model_res_partner_category","base.group_sale_manager",1,0,0,0
-"mail_mail_message_manager","mail.message.manager","mail.model_mail_message","base.group_sale_manager",1,0,0,0
-"mail_thread_manager","mail.thread.manager","mail.model_mail_thread","base.group_sale_manager",1,1,1,1
-"access_calendar_attendee_crm_user","calendar.attendee.crm.user","model_calendar_attendee","base.group_sale_salesman",1,1,1,0
-"access_calendar_attendee_crm_manager","calendar.attendee.crm.manager","model_calendar_attendee","base.group_sale_manager",1,1,1,1
-"access_res_partner","res.partner.crm.user","base.model_res_partner","base.group_sale_salesman",1,1,1,0
-"access_res_partner_address","res.partner.address.crm.user","base.model_res_partner_address","base.group_sale_salesman",1,1,1,0
-"access_res_partner_category","res.partner.category.crm.user","base.model_res_partner_category","base.group_sale_salesman",1,1,1,0
-"mail_mailgate_thread","mail.thread","mail.model_mail_thread","base.group_sale_salesman",1,1,1,1
-"mail_gateway_mail_message_user","mail.message.user","mail.model_mail_message","base.group_sale_salesman",1,1,1,1
-"access_crm_case_categ_manager","crm.case.categ manager","model_crm_case_categ","base.group_sale_manager",1,1,1,1
-"access_base_action_rule_manager","base.action.rule manager","model_base_action_rule","base.group_sale_manager",1,1,1,1
-"access_crm_lead_report_user","crm.lead.report user","model_crm_lead_report","base.group_sale_salesman",1,1,1,1
-"access_res_partner_bank_type_crm_user","res.partner.bank.type.crm.user","base.model_res_partner_bank_type","base.group_sale_salesman",1,0,0,0
-"access_res_partner_bank_type_crm_manager","res.partner.bank.type.crm.manager","base.model_res_partner_bank_type","base.group_sale_manager",1,0,0,0
-"access_crm_lead_partner_manager","crm.lead.partner.manager","model_crm_lead","base.group_partner_manager",1,0,0,0
-"access_crm_phonecall_partner_manager","crm.phonecall.partner.manager","model_crm_phonecall","base.group_partner_manager",1,1,1,1
-"access_crm_meeting_partner_manager","crm.meeting.partner.manager","model_crm_meeting","base.group_partner_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_crm_segmentation_user,crm.segmentation user,model_crm_segmentation,base.group_sale_salesman,1,0,0,0
+access_crm_segmentation_line_user,crm.segmentation.line user,model_crm_segmentation_line,base.group_sale_salesman,1,0,0,0
+access_crm_segmentation,crm.segmentation,model_crm_segmentation,base.group_sale_manager,1,1,1,1
+access_crm_segmentation_line,crm.segmentation.line,model_crm_segmentation_line,base.group_sale_manager,1,1,1,1
+access_crm_case_channel_user,crm.case.channel user,model_crm_case_channel,base.group_sale_salesman,1,0,0,0
+access_crm_case_channel_manager,crm.case.channel manager,model_crm_case_channel,base.group_sale_manager,1,1,1,1
+access_crm_case_section,crm.case.section,model_crm_case_section,base.group_sale_salesman,1,1,1,0
+access_crm_case_categ,crm.case.categ,model_crm_case_categ,base.group_sale_salesman,1,1,1,0
+access_crm_meeting_manager,crm.meeting.manager,model_crm_meeting,base.group_sale_manager,1,1,1,1
+access_crm_lead_manager,crm.lead.manager,model_crm_lead,base.group_sale_manager,1,1,1,1
+access_crm_phonecall_manager,crm.phonecall.manager,model_crm_phonecall,base.group_sale_manager,1,1,1,1
+access_crm_case_categ,crm.case.categ,model_crm_case_categ,base.group_user,1,0,0,0
+access_crm_meeting,crm.meeting,model_crm_meeting,base.group_sale_salesman,1,1,1,0
+access_crm_meeting_all,crm.meeting_allll,model_crm_meeting,base.group_user,1,0,0,0
+access_crm_lead,crm.lead,model_crm_lead,base.group_sale_salesman,1,1,1,0
+access_crm_lead.all,crm.lead.all,model_crm_lead,base.group_user,1,0,0,0
+access_crm_phonecall,crm.phonecall,model_crm_phonecall,base.group_sale_salesman,1,1,1,0
+access_crm_phonecall.all,crm.phonecall.all,model_crm_phonecall,base.group_user,1,0,0,0
+access_crm_case_section_user,crm.case.section.user,model_crm_case_section,base.group_sale_salesman,1,1,1,0
+access_crm_case_section_manager,crm.case.section.manager,model_crm_case_section,base.group_sale_manager,1,1,1,1
+access_crm_case_stage,crm.case.stage,model_crm_case_stage,base.group_user,1,0,0,0
+access_crm_case_stage_manager,crm.case.stage,model_crm_case_stage,base.group_sale_manager,1,1,1,1
+access_crm_case_resource_type_user,crm_case_resource_type user,model_crm_case_resource_type,base.group_sale_salesman,1,1,1,0
+access_crm_case_resource_type_manager,crm_case_resource_type manager,model_crm_case_resource_type,base.group_sale_manager,1,1,1,1
+access_crm_phonecall_report_user,crm.phonecall.report.user,model_crm_phonecall_report,base.group_sale_salesman,1,0,0,0
+access_crm_phonecall_report_manager,crm.phonecall.report,model_crm_phonecall_report,base.group_sale_manager,1,1,1,1
+access_res_partner_manager,res.partner.crm.manager,base.model_res_partner,base.group_sale_manager,1,0,0,0
+access_res_partner_address_manager,res.partner.address.crm.user.manager,base.model_res_partner_address,base.group_sale_manager,1,0,0,0
+access_res_partner_category_manager,res.partner.category.crm.manager,base.model_res_partner_category,base.group_sale_manager,1,0,0,0
+mail_mail_message_manager,mail.message.manager,mail.model_mail_message,base.group_sale_manager,1,0,0,0
+access_calendar_attendee_crm_user,calendar.attendee.crm.user,model_calendar_attendee,base.group_sale_salesman,1,1,1,0
+access_calendar_attendee_crm_manager,calendar.attendee.crm.manager,model_calendar_attendee,base.group_sale_manager,1,1,1,1
+access_res_partner,res.partner.crm.user,base.model_res_partner,base.group_sale_salesman,1,1,1,0
+access_res_partner_address,res.partner.address.crm.user,base.model_res_partner_address,base.group_sale_salesman,1,1,1,0
+access_res_partner_category,res.partner.category.crm.user,base.model_res_partner_category,base.group_sale_salesman,1,1,1,0
+mail_mailgate_thread,mail.thread,mail.model_mail_thread,base.group_sale_salesman,1,1,1,1
+mail_gateway_mail_message_user,mail.message.user,mail.model_mail_message,base.group_sale_salesman,1,1,1,1
+access_crm_case_categ_manager,crm.case.categ manager,model_crm_case_categ,base.group_sale_manager,1,1,1,1
+access_base_action_rule_manager,base.action.rule manager,model_base_action_rule,base.group_sale_manager,1,1,1,1
+access_crm_lead_report_user,crm.lead.report user,model_crm_lead_report,base.group_sale_salesman,1,1,1,1
+access_res_partner_bank_type_crm_user,res.partner.bank.type.crm.user,base.model_res_partner_bank_type,base.group_sale_salesman,1,0,0,0
+access_crm_lead_partner_manager,crm.lead.partner.manager,model_crm_lead,base.group_partner_manager,1,0,0,0
+access_crm_phonecall_partner_manager,crm.phonecall.partner.manager,model_crm_phonecall,base.group_partner_manager,1,1,1,1
+access_crm_meeting_partner_manager,crm.meeting.partner.manager,model_crm_meeting,base.group_partner_manager,1,1,1,1
diff --git a/addons/crm/test/customer_request.eml b/addons/crm/test/customer_request.eml
new file mode 100644
index 00000000000..2c6c5e8110d
--- /dev/null
+++ b/addons/crm/test/customer_request.eml
@@ -0,0 +1,30 @@
+Return-Path:
+X-Original-To: info@customer.com
+Delivered-To: sales@my.com
+Received: by mail.my.com (Postfix, from userid xxx)
+ id 822ECBFB67; Mon, 24 Oct 2011 07:36:51 +0200 (CEST)
+X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.my.com
+X-Spam-Level:
+X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham
+ version=3.3.1
+Received: from [192.168.1.146]
+ (Authenticated sender: info@mail.customer.com)
+ by mail.customer.com (Postfix) with ESMTPSA id 07A30BFAB4
+ for ; Mon, 24 Oct 2011 07:36:50 +0200 (CEST)
+Message-ID: <4EA4F95D.904@customer.com>
+Date: Mon, 24 Oct 2011 11:06:29 +0530
+From: Mr. John Right
+User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Lightning/1.0b2 Thunderbird/3.1.8
+MIME-Version: 1.0
+To: sales@my.com
+Subject: Fournir votre devis avec le meilleur prix.
+Content-Type: text/plain; charset=ISO-8859-1; format=flowed
+Content-Transfer-Encoding: 8bit
+
+Bonjour l'équipe de vente,
+
+Je veux acheter vos produits et services.
+
+S'il vous plaît fournir votre cotation avec le meilleur prix.
+
+Merci
diff --git a/addons/crm/test/process/cancel_lead.yml b/addons/crm/test/process/cancel_lead.yml
new file mode 100644
index 00000000000..a5f85a14058
--- /dev/null
+++ b/addons/crm/test/process/cancel_lead.yml
@@ -0,0 +1,53 @@
+-
+ I cancel unqualified lead.
+-
+ !python {model: crm.lead}: |
+ self.case_cancel(cr, uid, [ref("crm_case_itisatelesalescampaign0")])
+-
+ I check cancelled lead.
+-
+ !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Lead is in cancel state}:
+ - state == "cancel"
+-
+ I reset cancelled lead into unqualified lead.
+-
+ !python {model: crm.lead}: |
+ self.case_reset(cr, uid, [ref("crm_case_itisatelesalescampaign0")])
+-
+ I check unqualified lead after reset.
+-
+ !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Lead is in draft state}:
+ - state == "draft"
+-
+ I put unqualified lead into pending.
+-
+ !python {model: crm.lead}: |
+ self.case_pending(cr, uid, [ref("crm_case_itisatelesalescampaign0")])
+-
+ I check status of pending lead.
+-
+ !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Lead is in pending state}:
+ - state == "pending"
+-
+ I Escalate the Lead to Parent Team.
+-
+ !python {model: crm.lead}: |
+ self.case_escalate(cr, uid, [ref("crm_case_itisatelesalescampaign0")])
+-
+ I check lead escalate to Parent Team.
+-
+ !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Escalate lead to parent team}:
+ - section_id.name == "Sales Department"
+-
+ I mark as lost the opportunity.
+-
+ !python {model: crm.lead}: |
+ self.case_mark_lost(cr, uid, [ref("crm_case_itisatelesalescampaign0")])
+-
+ I check opportunity after lost.
+-
+ !python {model: crm.lead}: |
+ lead = self.browse(cr, uid, ref('crm_case_itisatelesalescampaign0'))
+ assert lead.state == 'done', "lead is not done state"
+ assert lead.stage_id.id == ref('crm.stage_lead6'), 'Stage is not changed!'
+ assert lead.probability == 0.0, 'Probability is wrong!'
diff --git a/addons/crm/test/process/communication_with_customer.yml b/addons/crm/test/process/communication_with_customer.yml
new file mode 100644
index 00000000000..92e711ce016
--- /dev/null
+++ b/addons/crm/test/process/communication_with_customer.yml
@@ -0,0 +1,56 @@
+-
+ Customer interested in our product. so He send request by email to get more details.
+-
+ Mail script will be fetched him request from mail server. so I process that mail after read EML file
+-
+ !python {model: mail.thread}: |
+ import addons
+ request_file = open(addons.get_module_resource('crm','test', 'customer_request.eml'),'rb')
+ request_message = request_file.read()
+ self.message_process(cr, uid, 'crm.lead', request_message)
+-
+ After getting the mail, I check details of new lead of that customer.
+-
+ !python {model: crm.lead}: |
+ lead_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')])
+ assert lead_ids and len(lead_ids), "Lead is not created after getting request"
+ lead = self.browse(cr, uid, lead_ids[0], context=context)
+ assert not lead.partner_id, "Customer should be a new"
+ assert lead.name == "Fournir votre devis avec le meilleur prix.", "Subject does not match"
+-
+ I reply him request with welcome message.
+-
+ !python {model: mail.compose.message}: |
+ lead_ids = self.pool.get('crm.lead').search(cr, uid, [('email_from','=', 'Mr. John Right ')])
+ context.update({'active_model': 'crm.lead','active_id': lead_ids[0]})
+ id = self.create(cr, uid, {'body_text': "Merci à l'intérêt pour notre produit.nous vous contacterons bientôt. Merci", 'email_from': 'sales@mycompany.com'}, context=context)
+ try:
+ self.send_mail(cr, uid, [id], context=context)
+ except:
+ pass
+-
+ Now, I convert him into customer and put into regular customer list.
+-
+ !python {model: crm.lead}: |
+ lead_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')])
+ self.convert_partner(cr, uid, lead_ids, context=context)
+-
+ Now, I search customer in regular customer list.
+-
+ !python {model: crm.lead}: |
+ partner_ids = self.message_partner_by_email(cr, uid, 'Mr. John Right ')
+ assert partner_ids.get('partner_id'), "Customer is not found in regular customer list."
+-
+ I convert one phonecall request as a customer and put into regular customer list.
+-
+ !python {model: crm.phonecall}: |
+ self.convert_partner(cr, uid, [ref('crm.crm_case_phone06')], context=context)
+-
+ I check converted phonecall to partner.
+-
+ !python {model: res.partner}: |
+ partner_id = self.search(cr, uid, [('phonecall_ids', '=', ref('crm.crm_case_phone06'))])
+ assert partner_id, "Customer is not found in regular customer list."
+ data = self.browse(cr, uid, partner_id, context=context)[0]
+ assert data.user_id.id == ref("base.user_root"), "User not assign properly"
+ assert data.name == "Bad time", "User not assign properly"
diff --git a/addons/crm/test/process/lead2opportunity2win.yml b/addons/crm/test/process/lead2opportunity2win.yml
new file mode 100644
index 00000000000..dbc04abae19
--- /dev/null
+++ b/addons/crm/test/process/lead2opportunity2win.yml
@@ -0,0 +1,90 @@
+-
+ In order to test convert customer lead into opportunity,
+-
+ I open customer lead.
+-
+ !python {model: crm.lead}: |
+ self.case_open(cr, uid, [ref("crm_case_qrecorp0")])
+-
+ I check lead state is "Open".
+-
+ !assert {model: crm.lead, id: crm.crm_case_qrecorp0, string: Lead in open state}:
+ - state == "open"
+-
+ I convert lead into opportunity for exiting customer.
+-
+ !python {model: crm.lead}: |
+ self.convert_opportunity(cr, uid ,[ref("crm_case_qrecorp0")], ref("base.res_partner_agrolait"))
+-
+ I check details of converted opportunity.
+-
+ !python {model: crm.lead}: |
+ lead = self.browse(cr, uid, ref('crm_case_qrecorp0'))
+ assert lead.type == 'opportunity', 'Lead is not converted to opportunity!'
+ assert lead.partner_id.id == ref("base.res_partner_agrolait"), 'Partner missmatch!'
+ assert lead.stage_id.id == ref("stage_lead1"), 'Stage of opportunity is incorrect!'
+-
+ Now I begin communication and schedule a phone call with the customer.
+-
+ !python {model: crm.opportunity2phonecall}: |
+ import time
+ context.update({'active_model': 'crm.lead', 'active_ids': [ref('crm_case_qrecorp0')]})
+ call_id = self.create(cr, uid, {'date': time.strftime('%Y-%m-%d %H:%M:%S'),
+ 'name': "Bonjour M. Jean, Comment êtes-vous? J'ai obtenu votre demande. peut-on parler au sujet de ce pour quelques minutes?"}, context=context)
+ self.action_schedule(cr, uid, [call_id], context=context)
+-
+ I check that phonecall is scheduled for that opportunity.
+-
+ !python {model: crm.phonecall}: |
+ ids = self.search(cr, uid, [('opportunity_id', '=', ref('crm_case_qrecorp0'))])
+ assert len(ids), 'phonecall is not scheduled'
+-
+ Now I schedule Meeting with Customer.
+-
+ !python {model: crm.lead}: |
+ self.action_makeMeeting(cr, uid, [ref('crm_case_qrecorp0')])
+
+-
+ After communicated with customer, I put some notes with Contract details.
+-
+ !python {model: crm.add.note}: |
+ context.update({'active_model': 'crm.lead', 'active_id': ref('crm_case_qrecorp0')})
+ note_id = self.create(cr, uid, {'body': "ces détails envoyés par le client sur le FAX pour la qualité"})
+ self.action_add(cr, uid, [note_id], context=context)
+-
+ Finally, I won this opportunity, so I close this opportunity.
+-
+ !python {model: crm.lead}: |
+ self.case_mark_won(cr, uid, [ref("crm_case_qrecorp0")])
+-
+ I check details of the opportunity After won the opportunity.
+-
+ !python {model: crm.lead}: |
+ lead = self.browse(cr, uid, ref('crm_case_qrecorp0'))
+ assert lead.state == 'done', 'Opportunity is not in done state!'
+ assert lead.stage_id.name == 'Won', ' Stage of Opportunity is not win!'
+ assert lead.probability == 100.0, 'probability revenue should not be 100.0!'
+-
+ I convert mass lead into opportunity customer.
+-
+ !python {model: crm.lead2opportunity.partner.mass}: |
+ context.update({'active_model': 'crm.lead', 'active_ids': [ref("crm_case_employee0"), ref("crm_case_electonicgoodsdealer0")], 'active_id': ref("crm_case_qrecorp0")})
+ id = self.create(cr, uid, {'user_ids': [ref('base.user_root')], 'section_id': ref('crm.section_sales_department')}, context=context)
+ self.mass_convert(cr, uid, [id], context=context)
+-
+ Now I check First lead converted on opportunity.
+-
+ !python {model: crm.lead}: |
+ opp = self.browse(cr, uid, ref('crm_case_employee0'))
+ assert opp.name == "Need Info about Onsite Intervention", "Opportunity name not correct"
+ assert opp.type == 'opportunity', 'Lead is not converted to opportunity!'
+ assert opp.partner_id.name == "Agrolait", 'Partner missmatch!'
+ assert opp.stage_id.id == ref("stage_lead1"), 'Stage of probability is incorrect!'
+-
+ Then check for Second lead converted on opportunity.
+-
+ !python {model: crm.lead}: |
+ opp = self.browse(cr, uid, ref('crm_case_electonicgoodsdealer0'))
+ assert opp.name == "Interest in Your New Product", "Opportunity name not correct"
+ assert opp.type == 'opportunity', 'Lead is not converted to opportunity!'
+ assert opp.stage_id.id == ref("stage_lead1"), 'Stage of probability is incorrect!'
\ No newline at end of file
diff --git a/addons/crm/test/process/merge_opportunity.yml b/addons/crm/test/process/merge_opportunity.yml
new file mode 100644
index 00000000000..463e330fc10
--- /dev/null
+++ b/addons/crm/test/process/merge_opportunity.yml
@@ -0,0 +1,51 @@
+-
+ I make direct opportunity for Customer.
+-
+ !python {model: crm.partner2opportunity}: |
+ context.update({'active_model': 'res.partner', 'active_ids': [ref("base.res_partner_9")]})
+ res_id = self.create(cr, uid, {'name': "enquête pour l'achat de services"}, context=context)
+ self.make_opportunity(cr, uid, [res_id], context=context)
+-
+ I make another opportunity from phonecall for same customer.
+-
+ !python {model: crm.phonecall2opportunity}: |
+ context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_case_phone06")]})
+ res_id = self.create(cr, uid, {'name': "Quoi de prix de votre autre service?", 'partner_id': ref("base.res_partner_9")}, context=context)
+ self.make_opportunity(cr, uid, [res_id], context=context)
+-
+ Now I merge all opportunities of customer.
+-
+ !python {model: crm.lead}: |
+ opportunity_ids = self.search(cr, uid, [('partner_id','=', ref("base.res_partner_9"))])
+ self.merge_opportunity(cr, uid, opportunity_ids, context=context)
+-
+ I check for merged opportunities for customer.
+-
+ !python {model: crm.lead}: |
+ merge_id = self.search(cr, uid, [('partner_id','=', ref("base.res_partner_9"))])
+ assert merge_id, 'Fail to create Merge opportunity'
+ merge_data = self.browse(cr, uid, merge_id)[0]
+ assert merge_data.type == 'opportunity', 'Merged opportunity type not change!'
+ assert merge_data.partner_id.id == ref("base.res_partner_9"), 'Partner missmatch!'
+-
+ Now I schedule another phonecall to customer after merged.
+-
+ !python {model: crm.phonecall2phonecall}: |
+ context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_case_phone06")]})
+ res_id = self.create(cr, uid, {'name': "vos chances sont fusionnés en un seul"}, context=context)
+ self.action_schedule(cr, uid, [res_id], context=context)
+-
+ I schedule Meeting on this phonecall.
+-
+ !python {model: crm.phonecall}: |
+ self.action_make_meeting(cr, uid, [ref("crm.crm_case_phone06")])
+-
+ I setting Phone call to Held (Done).
+-
+ !python {model: crm.phonecall}: |
+ self.case_close(cr, uid, [ref("crm.crm_case_phone06")])
+-
+ I check that the phone call is in 'Held' state.
+-
+ !assert {model: crm.phonecall, id: crm.crm_case_phone06, string: Phone call Helded}:
+ - state == "done"
diff --git a/addons/crm/test/process/segmentation.yml b/addons/crm/test/process/segmentation.yml
new file mode 100644
index 00000000000..74500049290
--- /dev/null
+++ b/addons/crm/test/process/segmentation.yml
@@ -0,0 +1,16 @@
+-
+ In order to test segmentation process which create specific partner categories criteria,
+-
+ I start the process.
+-
+ !python {model: crm.segmentation}: |
+ self.process_start(cr, uid, [ref("crm_segmentation0")],context)
+ #Todo: Need to check after segmentation started
+
+-
+ I create rule Segmentation line record for partner .
+-
+ !python {model: crm.segmentation.line}: |
+ id = self.create(cr, uid, {'name': "OpenERP partners",'expr_value': 25})
+ self.test(cr, uid, [id],partner_id=0)
+ #Todo: Need to test segmantation line record
\ No newline at end of file
diff --git a/addons/crm/test/test_crm_lead.yml b/addons/crm/test/test_crm_lead.yml
deleted file mode 100644
index d5d3c6b933b..00000000000
--- a/addons/crm/test/test_crm_lead.yml
+++ /dev/null
@@ -1,154 +0,0 @@
--
- In order to test the CRM in OpenERP, I will do a customer qualification
- process that starts with a fist contact with a customer (a lead), which will
- be converted to a business opportunity and a partner.
--
- I create a two new users "user_crm" and I assign the group "salesman".
--
- !record {model: res.users, id: res_users_usercrm0}:
- company_id: base.main_company
- context_lang: en_US
- context_section_id: crm.section_sales_department
- groups_id:
- - base.group_sale_salesman
- login: user_crm
- name: user_crm
- password: user_crm
-
-- |
- I start by creating a new lead "New Customer" and I provide an address to this
- new customer, as well as an email "info@mycustomer.com".
--
- !record {model: crm.lead, id: crm_lead_newcustomer0}:
- email_from: info@mycustomer.com
- name: New Customer
- partner_name: Capegemini
- partner_id: base.res_partner_9
- phone: (855) 924-4364
- mobile: (333) 715-1450
- section_id: crm.section_sales_department
- referred: False
-- |
- I check that the lead is in 'draft' state.
--
- !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in Draft}:
- - state == "draft"
--
- I open lead by click on "Open" button.
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref("crm_lead_newcustomer0")])
- fields={
- 'day_open': 0.0,
- 'day_close': 0.0
- }
- self._compute_day(cr, uid, [ref("crm_lead_newcustomer0")], fields, context)
-- |
- I check that lead is now in 'open' state.
--
- !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in open state}:
- - state == "open"
--
- I search id for case object.
--
- !python {model: crm.case.categ}: |
- self._find_object_id(cr, uid, context)
-- |
- As the lead seems to be a real business opportunity, I will convert it to a
- partner
- and a business opportunity by clicking on the "Convert" button.
--
- !python {model: crm.lead}: |
- lead = self.browse(cr, uid, ref('crm_lead_newcustomer0'))
- action = self.convert_opportunity(cr, uid, [ref("crm_lead_newcustomer0")], {'active_ids': [ref("crm_lead_newcustomer0")]})
- assert action['res_model'] == 'crm.lead2opportunity.partner'
--
- |
- I select "create a new partner" option.
--
- !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_0}:
- action: 'create'
- name: 'convert'
--
- Then, Click on "Create Opportunity" button.
--
- !python {model: crm.lead2opportunity.partner}: |
- self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_0")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
--
- |
- I select "Link to an existing partner" option.
--
- !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_1}:
- action: 'exist'
--
- Then, Click on "Create Opportunity" button.
--
- !python {model: crm.lead2opportunity.partner}: |
- self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_1")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
--
- |
- I select "Do not link to a partner" option.
--
- !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_2}:
- action: 'nothing'
--
- Then, Click on "Create Opportunity" button.
--
- !python {model: crm.lead2opportunity.partner}: |
- self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_2")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
-- |
- In order to check the opportunity is created or not, I check type.
--
- !python {model: crm.lead}: |
- lead = self.browse(cr, uid, ref("crm_lead_newcustomer0"))
- assert lead.type == 'opportunity'
-
--
- I create mass report of lead to opprtunity partner.
--
- !record {model: crm.lead2opportunity.partner.mass, id: crm_lead2opportunity_partner_mass0}:
- user_ids:
- - base.user_root
- section_id: crm.section_sales_department
--
- Then, execute that mass wizard.
--
- !python {model: crm.lead2opportunity.partner.mass}: |
- self.mass_convert(cr, uid, [ref("crm_lead2opportunity_partner_mass0")],{'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
--
- I close lead by click on "close" button.
--
- !python {model: crm.lead}: |
- self.case_close(cr, uid, [ref("crm_lead_newcustomer0")])
-- |
- I check that lead is now in 'done' state.
--
- !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in done state}:
- - state == "done"
--
- I cancel lead by click on "cancel" button.
--
- !python {model: crm.lead}: |
- self.case_cancel(cr, uid, [ref("crm_lead_newcustomer0")])
-- |
- I check that lead is now in 'cancel' state.
--
- !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in cancel state}:
- - state == "cancel"
-
-#-
-# |
-# yaml is also not working with smtp server and send new email.
-
-- |
- I configure with smtp server.
-- |
- And I communicate with lead through send New mail to Lead using its email address from the user who is logged in.
-- |
- I check that communication history generated when send email to lead.
-- |
- Then, I add a cc which receive copy of future communication between partner and users by mail.
-
-- |
- I Reply to last Email to lead with some document attached.and check that communication history generated or not.
-
diff --git a/addons/crm/test/test_crm_lead_case2.yml b/addons/crm/test/test_crm_lead_case2.yml
deleted file mode 100644
index 23a654d31a8..00000000000
--- a/addons/crm/test/test_crm_lead_case2.yml
+++ /dev/null
@@ -1,151 +0,0 @@
--
- In order to do complete test the CRM in OpenERP,
- I will create new full configured record and carry test on it.
-- |
- I Start by creating "Test Sales Team" with No Unlink.
- I create a crm.case.section record.
--
- !record {model: crm.case.section, id: crm_case_section_demosalesteam}:
- code: DEMO
- complete_name: Test Sales Team
- name: Test Sales Team
- allow_unlink: False
- member_ids:
- - base.user_admin
- stage_ids:
- - crm.stage_lead1
- - crm.stage_lead2
- - crm.stage_lead3
- - crm.stage_lead4
- - crm.stage_lead5
- - crm.stage_lead6
- working_hours: 0.0
- resource_calendar_id: resource.timesheet_group1
- parent_id: crm.section_sales_department
--
- I assign segmentation.
--
- !record {model: res.users, id: res_users_usercrm0}:
- context_section_id: crm_case_section_demosalesteam
-- |
- I create a new lead "Test Customer" and I provide an address to this
- demo customer and email "info@democustomer.com" and Also "Test Sales Team".
--
- !record {model: crm.lead, id: crm_lead_democustomer}:
- email_from: info@democustomer.com
- name: Test Customer
- partner_name: NotSoTinySARL
- phone: (+32).81.81.37.00
- mobile: (+32).81.81.37.00
- section_id: crm_case_section_demosalesteam
- referred: False
- type: lead
--
- I check that the lead is in 'draft' state.
--
- !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in Draft}:
- - state == "draft"
--
- I create categories.
--
- !record {model: crm.case.categ, id: crm_case_categ0}:
- name: crm_case_section_demosalesteam
- section_id: crm_case_section_demosalesteam
--
- I assigning contact detail to the Lead "Test Customer" without address.
--
- !python {model: crm.lead}: |
- self.onchange_partner_address_id(cr, uid, ref("crm_lead_democustomer"), None, email=False)
-
--
- I assigning contact detail to the Lead "Test Customer" with address.
--
- !python {model: crm.lead}: |
- self.onchange_partner_address_id(cr, uid, ref("crm_lead_democustomer"), ref("base.res_partner_address_notsotinysarl0"), email=False)
-
--
- I selecting email "Opt-out" option for the "Test Customer" Lead.
--
- !python {model: crm.lead}: |
- self.on_change_optout(cr, uid, ref("crm_lead_democustomer"), True)
-
--
- I change the Opt-out to Opt-in to show email receive preference.
--
- !python {model: crm.lead}: |
- self.on_change_optin(cr, uid, ref("crm_lead_democustomer"), True)
--
- I open lead by click on "Open" button.
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref("crm_lead_democustomer")])
--
- I check that lead "Test Customer" is now in 'open' state.
--
- !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in open state}:
- - state == "open"
--
- I reset the lead "Test Customer".
--
- !python {model: crm.lead}: |
- self.case_reset(cr, uid, [ref("crm_lead_democustomer")])
--
- I again opening lead by click on "Open" button.
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref("crm_lead_democustomer")])
--
- I setting stage "New" for the lead "Test Customer".
--
- !python {model: crm.lead}: |
- self.stage_next(cr, uid, [ref("crm_lead_democustomer")], context={'stage_type': 'lead'})
--
- I try to Unlink the Lead "Test Customer" demo Lead.
--
- !python {model: crm.lead}: |
- try:
- self.unlink(cr, uid, [ref("crm_lead_democustomer")])
- except:
- pass
--
- I setting Lead "Test Customer" to Pending State.
--
- !python {model: crm.lead}: |
- self.case_pending(cr, uid, [ref("crm_lead_democustomer")])
--
- I check that lead "Test Customer" is now in 'Pending' state.
--
- !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in Pending state}:
- - state == "pending"
--
- I Escalate the Lead "Test Customer" Parent "Sales Team".
--
- !python {model: crm.lead}: |
- self.case_escalate(cr, uid, [ref("crm_lead_democustomer")])
--
- I add Internal Note Saying Escalated Reason.
--
- !record {model: crm.add.note, id: crm_add_note_0}:
- body: Sales Lead Has Been Escalated Due to Some Technical reason to the parent 'Sales
- Team'
- state: unchanged
--
- I click a note button to attach the record.
--
- !python {model: crm.add.note}: |
- context['active_model'] = "crm.lead"
- context['active_ids'] = [ref("crm_lead_democustomer")]
- self.action_add(cr, uid, [ref("crm_add_note_0")], context=context)
-
--
- I Copying this lead "Test Customer" to New Lead.
--
- !python {model: crm.lead}: |
- self.copy(cr, uid, ref("crm_lead_democustomer"))
--
- I checking the Lead Copied or Not.
--
- !python {model: crm.lead}: |
- sid = self.search(cr, uid, [('name', '=', 'Test Customer'),('state', '=', 'draft')])
- if not sid:
- raise AssertionError("Lead is not copied Successfully")
diff --git a/addons/crm/test/test_crm_meeting.yml b/addons/crm/test/test_crm_meeting.yml
deleted file mode 100644
index 1aee11463dd..00000000000
--- a/addons/crm/test/test_crm_meeting.yml
+++ /dev/null
@@ -1,97 +0,0 @@
-- |
- I will test Meetings which may be customer meeting or phonecall meeting or
- internal Meeting.
-- |
- I start by creating a new Meeting.
--
- !record {model: crm.meeting, id: crm_meeting_regardingpresentation0}:
- categ_id: crm.categ_meet2
- date: !eval time.strftime('%Y-%m-%d 16:04:00')
- date_deadline: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 00:04:00')"
- duration: 8.0
- email_from: info@balmerinc.be
- location: Ahmedabad
- name: Regarding Presentation
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- rrule_type: weekly
- section_id: crm.section_sales_department
-- |
- I check that the Meetings is in 'UnConfirmed' state.
--
- !assert {model: crm.meeting, id: crm_meeting_regardingpresentation0}:
- - state == "draft"
-- |
- I can set reminder on meeting if I put reminder "40 minutes before" .
-- |
- For that, I first create alarm.
--
- !record {model: res.alarm, id: res_alarm_minituesbefore0}:
- name: 40 minutes before
- trigger_duration: 40
- trigger_interval: minutes
- trigger_occurs: before
- trigger_related: start
-- |
- I will assign this reminder.
-
-- !python {model: crm.meeting}: |
- self.write(cr, uid, [ref('crm_meeting_regardingpresentation0')], {'alarm_id': ref("res_alarm_minituesbefore0")})
-- |
- In order to check recurrence on meetings I will set Recurrency to Custom
- and I set the fields so that the meeting will occur weekly on Monday and Friday 10 times.
--
- !python {model: crm.meeting}: |
- self.write(cr, uid, [ref("crm_meeting_regardingpresentation0")], {'fr': 1, 'mo': 1, 'th': 1, 'tu': 1, 'we':1, 'count':10, 'interval': 1, 'rrule_type': 'weekly', 'recurrency' : True})
-
-- |
- I can see from the calendar view that the meeting is scheduled on Monday and Friday
- for 10 times.
-
--
- !python {model: crm.meeting}: |
- self.fields_view_get(cr, uid, False, 'calendar', context)
-- |
- I will search for one of the recurrent event and count the number of meeting.
--
- !python {model: crm.meeting}: |
- import time
- from datetime import datetime, date, timedelta
- ids = self.search(cr, uid, [('date', '>=', time.strftime('%Y-%m-%d 00:00:00')), ('date', '<=', (datetime.now()+timedelta(31)).strftime('%Y-%m-%d 00:00:00')), ('name', '=', 'Regarding Presentation')], context={'virtual_id': True})
- assert len(ids) == 10
-
-- |
- If I want to edit meetings information for all occurrence I click on "Edit All" button.
--
- !python {model: crm.meeting}: |
- self.write(cr, uid, [ref('crm_meeting_regardingpresentation0')], {'edit_all':'True'},context)
-- |
- I can see that new meeting form is opened with same value.
- I change some data for meeting and save it.
- I can see from meeting's calendar view that all meeting occurrences are changed accordingly.
--
- !record {model: crm.meeting, id: crm.crm_meeting_regardingpresentation0}:
- alarm_id: base_calendar.alarm9
- rrule_type: weekly
-
-- |
- In order to invite people for this meetings, I click on "Invite People" button
- I can invite internal user.
--
- !record {model: base_calendar.invite.attendee, id: base_calendar_invite_attendee_0}:
- type: internal
- send_mail: False
- partner_id: base.res_partner_9
- user_ids:
- - base.user_demo
--
- I click on "Invite" button of "Invite attendee" wizard.
--
- !python {model: base_calendar.invite.attendee}: |
- self.do_invite(cr, uid, [ref('base_calendar_invite_attendee_0')], {'active_id': ref('crm_meeting_regardingpresentation0'), 'model' : 'crm.meeting', 'attendee_field':'attendee_ids'})
-
-- |
- After direct/indirect confirmation for meetings I can confirm meeting.
--
- !python {model: crm.meeting}: |
- self.case_open(cr, uid, [ref('crm_meeting_regardingpresentation0')])
diff --git a/addons/crm/test/test_crm_opportunity.yml b/addons/crm/test/test_crm_opportunity.yml
deleted file mode 100644
index 734a1cae46c..00000000000
--- a/addons/crm/test/test_crm_opportunity.yml
+++ /dev/null
@@ -1,113 +0,0 @@
-- |
- I start by creating a new Opportunity. And I select partner for opportunity.
- I can see that after selecting partner his contact and email is automatically filled.
--
- !record {model: crm.lead, id: crm_opportunity_abcfuelcounits0}:
- email_from: info@balmerinc.be
- name: 'ABC FUEL CO 829264 - 10002 units'
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- probability: 1.0
- stage_id: crm.stage_lead1
- categ_id: crm.categ_oppor2
- section_id: crm.section_sales_department
-- |
- I check that the opportunity is in 'New' state.
--
- !assert {model: crm.lead, id: crm_opportunity_abcfuelcounits0}:
- - state == "draft"
-
-- |
- I check that phonecall record is created for that opportunity.
--
- !python {model: crm.phonecall}: |
- phone_obj = self.pool.get('crm.phonecall')
-- |
- I schedule Meeting on this current opportunity by clicking on "schedule
- Meeting".
--
- !python {model: crm.lead}: |
- self.action_makeMeeting(cr, uid, [ref("crm_opportunity_abcfuelcounits0")])
-
-- |
- I can see that Meeting's calendar view is shown.
- then I click on the date on which I want to schedule meeting.
- I fill proper data for that meeting and save it.
--
- !record {model: crm.meeting, id: crm_meeting_abcfuelcounits0}:
- date: !eval time.strftime('%Y-%m-%d 00:00:00')
- date_deadline: !eval time.strftime('%Y-%m-%d 08:00:00')
- duration: 8.0
- email_from: info@balmerinc.be
- name: 'ABC FUEL CO 829264 - 10002 units'
- opportunity_id: 'crm_opportunity_abcfuelcounits0'
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- section_id: crm.section_sales_department
- state: open
-- |
- In order to schedule a phonecall to the partner
- I click on "schedule call" button and select planned date for the call.
--
- !record {model: crm.opportunity2phonecall, id: crm_opportunity2phonecall_abcfuelcounits0}:
- date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')"
- name: 'ABC FUEL CO 829264 - 10002 units'
- section_id: crm.section_sales_department
- user_id: base.user_demo
- categ_id: crm.categ_phone1
-- |
- schedule phonecall by opportunity2phoncall wizard.
--
- !python {model: crm.opportunity2phonecall}: |
- self.action_apply(cr, uid, [ref('crm_opportunity2phonecall_abcfuelcounits0')], {'active_ids': [ref("crm_opportunity_abcfuelcounits0")]})
-- |
- I check that phonecall record is created for that opportunity.
--
- !python {model: crm.phonecall}: |
- phone_obj = self.pool.get('crm.phonecall')
- ids = phone_obj.search(cr, uid, [('name', '=', 'ABC FUEL CO 829264 - 10002 units')])
- assert len(ids)
-- |
- I can see phonecall record after click on "Schedule call" wizard.
--
- !record {model: crm.phonecall, id: crm_phonecall_abcfuelcounits0}:
- date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')"
- duration: 3.0
- name: 'ABC FUEL CO 829264 - 10002 units'
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- section_id: crm.section_sales_department
-- |
- I Merge the opportunities.
--
- for that create two opportunities first opportunity 'Test FUEL CO'.
--
- !record {model: crm.lead, id: crm_opportunity_1}:
- email_from: info@balmerinc.be
- name: 'Test FUEL CO 829264 - 10002 units'
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- probability: 1.0
- stage_id: crm.stage_lead1
- categ_id: crm.categ_oppor2
- section_id: crm.section_sales_department
--
- I create the opportunity 'FUEL CO'.
--
- !record {model: crm.lead, id: crm_opportunity_2}:
- email_from: info@balmerinc.be
- name: 'FUEL CO 829264 - 10002 units'
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- probability: 1.0
- stage_id: crm.stage_lead1
- categ_id: crm.categ_oppor2
- section_id: crm.section_sales_department
-- |
- I Merge two Opportunities.
--
- !python {model: crm.merge.opportunity}: |
- op_list = [ref('crm_opportunity_1'),ref('crm_opportunity_2')]
- op_ids=self.pool.get('crm.lead').browse(cr,uid,op_list)
- lead_ids = [ref('crm_lead_newcustomer0')]
- self.merge(cr, uid, op_ids, {'lead_ids': lead_ids})
diff --git a/addons/crm/test/test_crm_opportunity_case2.yml b/addons/crm/test/test_crm_opportunity_case2.yml
deleted file mode 100644
index dc0dbe517f1..00000000000
--- a/addons/crm/test/test_crm_opportunity_case2.yml
+++ /dev/null
@@ -1,45 +0,0 @@
-- |
- I start by creating a new Opportunity. And I select partner for opportunity.
- I can see that after selecting partner his contact and email is automatically filled.
--
- !record {model: crm.lead, id: crm_opportunity_demotestopportunity}:
- email_from: info@balmerinc.be
- name: 'Demo Test Opportunity'
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- probability: 1.0
- categ_id: crm.categ_oppor2
- section_id: crm.section_sales_department
- type: opportunity
--
- I check that the opportunity is in 'New' state.
--
- !assert {model: crm.lead, id: crm_opportunity_demotestopportunity, string: Opportunity in Draft}:
- - state == "draft"
--
- I open opportunity by click on "Open" button.
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref("crm_opportunity_demotestopportunity")])
--
- I change partner of the opportunity.
--
- !python {model: crm.lead}: |
- self.onchange_partner_id(cr, uid, [ref("crm_opportunity_demotestopportunity")], ref("base.res_partner_agrolait"))
-
--
- I change Contact Detail of the opportunity.
--
- !python {model: crm.lead}: |
- self.onchange_partner_address_id(cr, uid,[ref("crm_opportunity_demotestopportunity")], ref("base.res_partner_address_8invoice"))
-
--
- I change Opportunity to Won State.
--
- !python {model: crm.lead}: |
- self.case_mark_won(cr, uid, [ref("crm_opportunity_demotestopportunity")])
--
- I check that the opportunity is in 'Done' state.
--
- !assert {model: crm.lead, id: crm_opportunity_demotestopportunity, string: Opportunity is Won}:
- - state == "done"
diff --git a/addons/crm/test/test_crm_partner2opportunity.yml b/addons/crm/test/test_crm_partner2opportunity.yml
deleted file mode 100644
index fe026074f4f..00000000000
--- a/addons/crm/test/test_crm_partner2opportunity.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-- |
- I start by creating a new opportunity from partner.
--
- !record {model: crm.partner2opportunity, id: crm_partner2opportunity_id_0}:
- name: test
- planned_revenue: 0.0
- partner_id: base.res_partner_9
- probability: 0.0
--
- I click on "Create Opportunity" button of this wizard.
--
- !python {model: crm.partner2opportunity}: |
- fields = {
- 'name': 'test',
- 'planned_revenue': '0.0',
- 'partner_id': ref('base.res_partner_9'),
- 'probability': '0.0'
- }
- self.default_get(cr, uid, fields, {"active_ids": [ref("crm_partner2opportunity_id_0")]})
-- |
- In order to check the opportunity is created or not, I check type.
--
- !python {model: crm.partner2opportunity}: |
- opportunity = self.make_opportunity(cr, uid, [ref("crm_partner2opportunity_id_0")], {"active_ids": [ref("crm_partner2opportunity_id_0")]})
- assert True
diff --git a/addons/crm/test/test_crm_phonecall.yml b/addons/crm/test/test_crm_phonecall.yml
deleted file mode 100644
index 0754a5b9544..00000000000
--- a/addons/crm/test/test_crm_phonecall.yml
+++ /dev/null
@@ -1,116 +0,0 @@
-- |
- I start by creating a new phonecall.
--
- !record {model: crm.phonecall, id: crm_phonecall_interviewcall0}:
- date: !eval time.strftime('%Y-%m-%d 08:00:00')
- name: Interview call
- duration: 2.0
- section_id: crm.section_sales_department
--
- I select partner by click on "Create a Partner" button.
--
- !record {model: crm.phonecall2partner, id: crm_phonecall2partner_1}:
- action: exist
- partner_id: base.res_partner_9
-
--
- I click on "Continue" button of this wizard and make partner.
--
- !python {model: crm.phonecall2partner}: |
-
- self._select_partner(cr, uid,{"active_ids": [ref("crm_phonecall_interviewcall0")]})
- self.open_create_partner(cr, uid, [ref("crm_phonecall2partner_1")], {"active_ids": [ref("crm_phonecall_interviewcall0")]})
- self.make_partner(cr, uid, [ref("crm_phonecall2partner_1")], {"active_ids": [ref("crm_phonecall_interviewcall0")]})
-
-- |
- As the success of phonecall seems to be a real business opportunity, I will convert
- it to opportunity by clicking on the "Convert to Opportunity" button.
--
- !record {model: crm.phonecall2opportunity, id: crm_phonecall2opportunity_interviewcall0}:
- name: Interview call
- partner_id: base.res_partner_9
- planned_revenue: 0.0
- probability: 0.0
-- |
- I can see that a business opportunity is now assigned to this phonecall
--
- !assert {model: crm.phonecall, id: crm_phonecall_interviewcall0}:
- - opportunity_id != False
--
- I click on "Convert" button of this wizard.
--
- !python {model: crm.phonecall2opportunity}: |
- self.action_apply(cr, uid, [ref("crm_phonecall2opportunity_interviewcall0")], {"active_id": ref("crm_phonecall_interviewcall0")})
-- |
- And I check that the phonecall and the newly created business opportunity is linked
- to same partner.
--
- !python {model: crm.phonecall}: |
- obj_phonecall = self.browse(cr, uid, ref('crm_phonecall_interviewcall0'))
- ids = self.pool.get('crm.lead').search(cr, uid, [('name', '=', obj_phonecall.opportunity_id.name)])
- obj_opp = self.pool.get('crm.lead').browse(cr, uid, ids)[0]
- assert obj_phonecall.partner_id == obj_opp.partner_id
-- |
- I schedule Meeting on this current phonecall by clicking on "schedule
- Meeting".
--
- !python {model: crm.phonecall}: |
- self.action_make_meeting(cr, uid, [ref('crm_phonecall_interviewcall0')])
-
-- |
- I can see that Meeting's calendar view is shown.
- then I click on the date on which I want schedule meeting.
- I fill proper data for that meeting and save it.
--
- !record {model: crm.meeting, id: crm_meeting_interviewcall0}:
- alarm_id: base_calendar.alarm3
- date: !eval "'%s-%s-%s 09:00:00' %(datetime.now().year,datetime.now().month,datetime.now().day)"
- date_deadline: !eval "'%s-%s-%s 17:00:00' %(datetime.now().year,datetime.now().month,datetime.now().day)"
- duration: 8.0
- email_from: info@balmerinc.be
- name: Interview call
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- phonecall_id: 'crm_phonecall_interviewcall0'
- state: open
-
-- |
- In order to schedule other phonecall to the partner
- I click on "schedule other call" button. and plan for other call
- I can see that it will open other phonecall view with some data same as current
- phonecall.
--
- !record {model: crm.phonecall2phonecall, id: crm_phonecall2phonecall_interviewcall0}:
- date: !eval "'%s-%s-%s 19:49:00' %(datetime.now().year,datetime.now().month,datetime.now().day)"
- name: Interview call
- section_id: crm.section_sales_department
- user_id: base.user_root
- action: schedule
- categ_id: crm.categ_phone1
--
- I click on "schedule other call" button. and plan for other call.
--
- !record {model: crm.phonecall2phonecall, id: crm_phonecall2phonecall_interviewcall1}:
- date: !eval "'%s-%s-%s 19:49:00' %(datetime.now().year,datetime.now().month,datetime.now().day)"
- name: Interview call
- section_id: crm.section_sales_department
- user_id: base.user_root
- action: log
- categ_id: crm.categ_phone1
-- |
- I click on "Schedule" button of this wizard.
--
- !python {model: crm.phonecall2phonecall}: |
- fields = {
- 'name': 'Interview call',
- 'section_id': ref('crm.section_sales_department'),
- 'user_id': ref('base.user_root'),
- 'categ_id': ref('crm.categ_phone1')
- }
- self.default_get(cr, uid, fields,{'active_id': ref('crm_phonecall_interviewcall0')})
- self.action_apply(cr, uid, [ref('crm_phonecall2phonecall_interviewcall0')], {'active_id': ref('crm_phonecall_interviewcall0')})
-- |
- I click on "Schedule" button of this wizard with log option.
--
- !python {model: crm.phonecall2phonecall}: |
- self.action_apply(cr, uid, [ref('crm_phonecall2phonecall_interviewcall1')], {'active_id': ref('crm_phonecall_interviewcall0')})
diff --git a/addons/crm/test/test_crm_phonecall_case2.yml b/addons/crm/test/test_crm_phonecall_case2.yml
deleted file mode 100644
index 1b07121183c..00000000000
--- a/addons/crm/test/test_crm_phonecall_case2.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-- |
- I start by creating a new phonecall.
--
- !record {model: crm.phonecall, id: crm_phonecall_dummycall}:
- date: !eval time.strftime('%Y-%m-%d 08:00:00')
- name: Dummy call
- duration: 0.0
- section_id: crm.section_sales_department
- partner_id: base.res_partner_agrolait
- state: open
--
- I change Contact Detail of the Partner.
--
- !python {model: crm.phonecall}: |
- self.onchange_partner_address_id(cr, uid,[ref("crm_phonecall_dummycall")], ref("base.res_partner_address_8invoice"))
-
--
- I setting Phone call to Held (Done).
--
- !python {model: crm.phonecall}: |
- self.case_close(cr, uid, [ref("crm_phonecall_dummycall")])
--
- I check that the hone call is in 'Held' state.
--
- !assert {model: crm.phonecall, id: crm_phonecall_dummycall, string: Phone call Helded}:
- - state == "done"
diff --git a/addons/crm/test/test_crm_recurrent_meeting.yml b/addons/crm/test/test_crm_recurrent_meeting.yml
deleted file mode 100644
index 297ca8d5e4e..00000000000
--- a/addons/crm/test/test_crm_recurrent_meeting.yml
+++ /dev/null
@@ -1,106 +0,0 @@
--
- In order to test recurrent meetings in OpenERP, I create meetings with different recurrency.
--
- I create a customer meeting record with daily recurrency.
--
- !record {model: crm.meeting, id: crm_meeting_pricelistdiscussion0}:
- categ_id: crm.categ_meet1
- count: 0.0
- date: '2011-01-05 00:00:00'
- date_deadline: '2011-01-05 01:00:00'
- day: 0.0
- duration: 1.0
- end_date: '2011-01-12'
- end_type: end_date
- name: Pricelist Discussion
- recurrency: true
- recurrent_uid: 0.0
- rrule: FREQ=DAILY;INTERVAL=1;UNTIL=20110112T235959Z
- rrule_type: daily
- sequence: 0.0
--
- I create another meeting record with weekly recurrency.
--
- !record {model: crm.meeting, id: crm_meeting_changesindesigning0}:
- categ_id: crm.categ_meet2
- count: 15
- date: '2011-01-22 11:05:05'
- date_deadline: '2011-01-22 16:05:05'
- day: 0.0
- duration: 5.0
- email_from: info@opensides.be
- end_type: count
- fr: true
- mo: true
- name: Changes in Designing
- partner_address_id: base.res_partner_address_1
- partner_id: base.res_partner_9
- recurrency: true
- recurrent_uid: 0.0
- rrule: FREQ=WEEKLY;BYDAY=FR,TU,TH,WE,MO;INTERVAL=1;COUNT=15
- rrule_type: weekly
- section_id: crm.section_sales_department
- sequence: 0.0
- th: true
- tu: true
- user_id: base.user_demo
- we: true
--
- I create a meeting record with monthly recurrency.
--
- !record {model: crm.meeting, id: crm_meeting_reviewneeds0}:
- categ_id: crm.categ_meet3
- count: 0.0
- date: '2011-01-20 10:02:02'
- date_deadline: '2011-01-20 16:02:02'
- day: 15
- duration: 6.0
- end_date: '2011-05-31'
- end_type: end_date
- name: Review needs
- partner_address_id: base.res_partner_address_15
- partner_id: base.res_partner_11
- recurrency: true
- recurrent_uid: 0.0
- rrule: FREQ=MONTHLY;INTERVAL=1;UNTIL=20110531T235959Z;BYMONTHDAY=15
- rrule_type: monthly
- section_id: crm.section_sales_department
- sequence: 0.0
- user_id: base.user_demo
--
- I create a record for daily scrum meeting.
--
- !record {model: crm.meeting, id: crm_meeting_scrummeeting0}:
- categ_id: crm.categ_meet2
- count: 0.0
- date: '2011-01-06 00:00:00'
- date_deadline: '2011-01-06 01:00:00'
- day: 0.0
- duration: 1.0
- name: Scrum meeting
- recurrency: true
- recurrent_uid: 0.0
- rrule: FREQ=DAILY;INTERVAL=1
- rrule_type: daily
- sequence: 0.0
--
- I create a meeting record for yearly recurrency.
--
- !record {model: crm.meeting, id: crm_meeting_updatethedata0}:
- categ_id: crm.categ_meet2
- count: 0.0
- date: '2011-01-18 13:12:49'
- date_deadline: '2011-01-19 02:30:49'
- day: 0.0
- duration: 13.300000000000001
- end_date: '2015-01-06'
- end_type: end_date
- name: Update the data
- partner_address_id: base.res_partner_address_7
- partner_id: base.res_partner_4
- recurrency: true
- recurrent_uid: 0.0
- rrule: FREQ=YEARLY;INTERVAL=1;UNTIL=20150106T235959Z
- rrule_type: yearly
- section_id: crm.section_sales_department
- sequence: 0.0
diff --git a/addons/crm/test/test_crm_segmentation.yml b/addons/crm/test/test_crm_segmentation.yml
deleted file mode 100644
index 5563f1ce52f..00000000000
--- a/addons/crm/test/test_crm_segmentation.yml
+++ /dev/null
@@ -1,38 +0,0 @@
-- |
- I will test segmentation which create specific partner categories criteria.
--
- I create a new segmentation record.
--
- !record {model: crm.segmentation, id: crm_segmentation_id_0}:
- categ_id: base.res_partner_category_5
- exclusif: true
- name: segment
- som_interval: 0.0
- sales_purchase_active : True
--
- I start the process.
--
- !python {model: crm.segmentation}: |
- self.process_start(cr, uid, [ref("crm_segmentation_id_0")],context)
--
- I continue the segmentation process.
--
- !python {model: crm.segmentation}: |
- context.update({'start': True})
- self.process_continue(cr, uid, [ref("crm_segmentation_id_0")], context)
--
- I create the segmentation line.
--
- !record {model: crm.segmentation.line, id: crm_segmentation_line_id_0}:
- expr_name: sale
- expr_operator: '>'
- expr_value: 1000.0
- name: Rule1
- operator: or
- segmentation_id: crm_segmentation_id_0
-
--
- I check the Segmentation line record.
--
- !python {model: crm.segmentation.line}: |
- self.test(cr, uid, [ref("crm_segmentation_line_id_0")],partner_id=0)
diff --git a/addons/crm/test/test_crm_stage_changes.yml b/addons/crm/test/test_crm_stage_changes.yml
deleted file mode 100644
index 391a328bffe..00000000000
--- a/addons/crm/test/test_crm_stage_changes.yml
+++ /dev/null
@@ -1,96 +0,0 @@
--
- In order to test the changes on stage of a lead or an opportunity with OpenERP,
- I create some leads and test the stage changes.
--
- I want to change the probability to 0.0 when the opportunity is marked as lost.
- So I set its Change probability automatically true.
--
- !record {model: crm.case.stage, id: crm.stage_lead6}:
- name: Lost
- on_change: true
- probability: 0.0
- section_ids:
- - crm.section_sales_department
- sequence: 0
--
- I create a lead 'Test Lead1'.
--
- !record {model: crm.lead, id: crm_lead_openerppresentation0}:
- categ_id: crm.categ_oppor4
- day_close: 0.0
- day_open: 0.0
- name: Test Lead1
- planned_revenue: 0.0
- probability: 10.0
- section_id: crm.section_sales_department
--
- I open the lead.
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref('crm_lead_openerppresentation0')])
--
- I assigning stage.
--
- !python {model: crm.lead}: |
- self.onchange_stage_id(cr, uid, [ref('crm_lead_openerppresentation0')], [], context)
--
- I assigning percent.
--
- !python {model: crm.lead}: |
- self.stage_find_percent(cr, uid, 10.0, [])
--
- I find that this lead can be converted to opportunity.
--
- !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner0}:
- action: 'create'
- name: 'convert'
--
- So I convert the lead to opportunity.
--
- !python {model: crm.lead2opportunity.partner}: |
- self.action_apply(cr, uid, [ref('crm_lead2opportunity_partner0')], context={'active_ids': [ref('crm_lead_openerppresentation0')]})
--
- I check that lead is now converted to opportunity.
--
- !python {model: crm.lead}: |
- lead = self.browse(cr, uid, ref('crm_lead_openerppresentation0'))
- assert lead.type == 'opportunity', 'Lead is not converted to opportunity!'
--
- I mark this opportunity as lost.
--
- !python {model: crm.lead}: |
- self.case_mark_lost(cr, uid, [ref('crm_lead_openerppresentation0')])
--
- I check whether the probability is set according to stage change or not.
--
- !python {model: crm.lead}: |
- opportunity = self.browse(cr, uid, ref('crm_lead_openerppresentation0'))
- assert opportunity.stage_id.id == ref('crm.stage_lead6'), 'Stage is not changed!'
- assert opportunity.probability == 0.0, 'Probability is wrong!'
--
- I create one more opportunity.
--
- !record {model: crm.lead, id: crm_lead_test2}:
- name: Partner Demo
- type: opportunity
- categ_id: crm.categ_oppor3
- planned_revenue: 50000.0
- probability: 100.0
- section_id: crm.section_sales_department
--
- I open this opportunity.
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref('crm_lead_test2')])
--
- I mark this opportunity as won.
--
- !python {model: crm.lead}: |
- self.case_mark_won(cr, uid, [ref('crm_lead_test2')])
--
- I check whether the stage is changed to 'Won' and probability is 100.0 or not.
--
- !python {model: crm.lead}: |
- opportunity = self.browse(cr, uid, ref('crm_lead_test2'))
- assert opportunity.stage_id.id == ref('crm.stage_lead5'), 'Stage is not changed!'
- assert opportunity.probability == 100.0, 'Probability is wrong!'
diff --git a/addons/crm/test/ui/crm_demo.yml b/addons/crm/test/ui/crm_demo.yml
new file mode 100644
index 00000000000..5ef40838466
--- /dev/null
+++ b/addons/crm/test/ui/crm_demo.yml
@@ -0,0 +1,29 @@
+-
+ I create lead record to call of partner onchange, stage onchange and Mailing opt-in onchange method.
+-
+ !record {model: crm.lead, id: crm_case_shelvehouse}:
+ name: 'Need more info about your pc2'
+ partner_id: base.res_partner_theshelvehouse0
+ type: opportunity
+ stage_id: crm.stage_lead1
+ state: draft
+ optin: True
+-
+ I create lead record to call Mailing opt-out onchange method.
+-
+ !record {model: crm.lead, id: crm_case_mediapoleunits0}:
+ name: 'Need 20 Days of Consultancy'
+ type: opportunity
+ state: draft
+ optout: True
+-
+ I create phonecall record to call partner onchange method.
+-
+ !record {model: crm.phonecall, id: crm_case_phone05}:
+ name: 'Bad time'
+ partner_id: base.res_partner_5
+-
+ I setting next stage "New" for the lead.
+-
+ !python {model: crm.lead}: |
+ self.stage_next(cr, uid, [ref("crm_case_qrecorp0")], context={'stage_type': 'lead'})
diff --git a/addons/crm/test/ui/delete_lead.yml b/addons/crm/test/ui/delete_lead.yml
new file mode 100644
index 00000000000..472b22d0d2d
--- /dev/null
+++ b/addons/crm/test/ui/delete_lead.yml
@@ -0,0 +1,5 @@
+-
+ I Unlink the Lead.
+-
+ !python {model: crm.lead}: |
+ self.unlink(cr, uid, [ref("crm_case_qrecorp0")])
diff --git a/addons/crm/test/ui/duplicate_lead.yml b/addons/crm/test/ui/duplicate_lead.yml
new file mode 100644
index 00000000000..6b349ca350c
--- /dev/null
+++ b/addons/crm/test/ui/duplicate_lead.yml
@@ -0,0 +1,5 @@
+-
+ I make duplicate the Lead.
+-
+ !python {model: crm.lead}: |
+ self.copy(cr, uid, ref("crm_case_qrecorp0"))
diff --git a/addons/crm/wizard/__init__.py b/addons/crm/wizard/__init__.py
index 3ebdceda437..2fc39c51505 100644
--- a/addons/crm/wizard/__init__.py
+++ b/addons/crm/wizard/__init__.py
@@ -24,11 +24,11 @@ import crm_add_note
import crm_lead_to_partner
import crm_lead_to_opportunity
-import crm_opportunity_to_phonecall
import crm_phonecall_to_phonecall
+import crm_opportunity_to_phonecall
import crm_phonecall_to_partner
-import crm_phonecall_to_opportunity
import crm_partner_to_opportunity
+import crm_phonecall_to_opportunity
import crm_merge_opportunities
diff --git a/addons/crm/wizard/crm_lead_to_opportunity.py b/addons/crm/wizard/crm_lead_to_opportunity.py
index 87ab9229d26..52a79e4514c 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity.py
+++ b/addons/crm/wizard/crm_lead_to_opportunity.py
@@ -54,6 +54,8 @@ class crm_lead2opportunity_partner(osv.osv_memory):
email = False
for lead in lead_obj.browse(cr, uid, opportunities, context=context):
partner_id = lead.partner_id and lead.partner_id.id or False
+
+ #TOFIX: use mail.mail_message.to_mail
email = re.findall(r'([^ ,<@]+@[^> ,]+)', lead.email_from or '')
email = map(lambda x: "'" + x + "'", email)
@@ -93,139 +95,51 @@ class crm_lead2opportunity_partner(osv.osv_memory):
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
"""
if context is None:
context = {}
lead_obj = self.pool.get('crm.lead')
-
for lead in lead_obj.browse(cr, uid, context.get('active_ids', []), context=context):
if lead.state in ['done', 'cancel']:
raise osv.except_osv(_("Warning !"), _("Closed/Cancelled Leads can not be converted into Opportunity"))
return False
- def _convert(self, cr, uid, ids, lead, partner_id, stage_ids, context=None):
- leads = self.pool.get('crm.lead')
- address_id = False
- if partner_id:
- address_id = self.pool.get('res.partner.address').search(cr, uid,
- [('partner_id', '=', partner_id)],
- order='create_date desc',
- limit=1)
- vals = {
- 'planned_revenue': lead.planned_revenue,
- 'probability': lead.probability,
- 'name': lead.name,
- 'partner_id': partner_id,
- 'user_id': (lead.user_id and lead.user_id.id),
- 'type': 'opportunity',
- 'stage_id': stage_ids and stage_ids[0] or False,
- 'date_action': time.strftime('%Y-%m-%d %H:%M:%S'),
- }
- if partner_id and address_id:
- vals['partner_address_id'] = address_id[0]
- else:
- vals['partner_address_id'] = False
+ def _convert_opportunity(self, cr, uid, ids, vals, context=None):
+ if context is None:
+ context = {}
+ lead = self.pool.get('crm.lead')
+ partner_id = self._create_partner(cr, uid, ids, context=context)
+ lead_ids = vals.get('lead_ids', [])
+ user_ids = vals.get('user_ids', False)
+ team_id = vals.get('section_id', False)
+ return lead.convert_opportunity(cr, uid, lead_ids, partner_id, user_ids, team_id, context=context)
- lead.write(vals, context=context)
- text = _('Converted to opportunity')
- leads.message_append(cr, uid, [lead], text, body_text=text, context=context)
- if lead.partner_id:
- msg_ids = [ x.id for x in lead.message_ids]
- self.pool.get('mail.message').write(cr, uid, msg_ids, {
- 'partner_id': lead.partner_id.id
- }, context=context)
- leads.log(cr, uid, lead.id, _("Lead '%s' has been converted to an opportunity.") % lead.name)
-
- def send_mail_to_salesman(self, cr, uid, lead):
- email_to = lead.user_id and lead.user_id.user_email
- if not email_to:
- return False
- message_pool = self.pool.get('mail.message')
- email_from = lead.section_id and lead.section_id.user_id and lead.section_id.user_id.user_email or email_to
- partner = lead.partner_id and lead.partner_id.name or lead.partner_name
- subject = "lead %s converted into opportunity" % lead.name
- body = "Info \n Id : %s \n Subject: %s \n Partner: %s \n Description : %s " % (lead.id, lead.name, lead.partner_id.name, lead.description)
- return message_pool.schedule_with_attach(cr, uid, email_from, [email_to], subject, body)
+ def _merge_opportunity(self, cr, uid, ids, opportunity_ids, action='merge', context=None):
+ #TOFIX: is it usefully ?
+ if context is None:
+ context = {}
+ merge_opportunity = self.pool.get('crm.merge.opportunity')
+ res = False
+ #If we convert in mass, don't merge if there is no other opportunity but no warning
+ if action == 'merge' and (len(opportunity_ids) > 1 or not context.get('mass_convert') ):
+ self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, [opportunity_ids[0].id])]}, context=context)
+ context.update({'lead_ids' : record_id, "convert" : True})
+ res = merge_opportunity.merge(cr, uid, data.opportunity_ids, context=context)
+ return res
def action_apply(self, cr, uid, ids, context=None):
"""
This converts lead to opportunity and opens Opportunity view
- @param ids: ids of the leads to convert to opportunities
-
- @return : View dictionary opening the Opportunity form view
"""
if not context:
context = {}
-
- record_id = context and context.get('active_ids') or False
- if not record_id:
- return {'type': 'ir.actions.act_window_close'}
-
- leads = self.pool.get('crm.lead')
- models_data = self.pool.get('ir.model.data')
-
- # Get Opportunity views
- result = models_data._get_id(
- cr, uid, 'crm', 'view_crm_case_opportunities_filter')
- opportunity_view_search = models_data.browse(
- cr, uid, result, context=context).res_id
- opportunity_view_form = models_data._get_id(
- cr, uid, 'crm', 'crm_case_form_view_oppor')
- opportunity_view_tree = models_data._get_id(
- cr, uid, 'crm', 'crm_case_tree_view_oppor')
- if opportunity_view_form:
- opportunity_view_form = models_data.browse(
- cr, uid, opportunity_view_form, context=context).res_id
- if opportunity_view_tree:
- opportunity_view_tree = models_data.browse(
- cr, uid, opportunity_view_tree, context=context).res_id
-
- for lead in leads.browse(cr, uid, record_id, context=context):
- if lead.section_id:
- stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('sequence','>=',1), ('section_ids','=', lead.section_id.id)])
- else:
- stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('sequence','>=',1)])
-
- data = self.browse(cr, uid, ids[0], context=context)
-
-
- if data.action == 'create':
- partner_ids = []
- partner_ids = self._create_partner(cr, uid, ids, context=context)
- partner_id = partner_ids and partner_ids[0]
- elif data.action == 'exist':
- partner_id = data.partner_id and data.partner_id.id
- else:
- partner_id = False
-
- self._convert(cr, uid, ids, lead, partner_id, stage_ids, context=context)
- self.send_mail_to_salesman(cr, uid, lead)
- #If we convert in mass, don't merge if there is no other opportunity but no warning
- if data.name == 'merge' and (len(data.opportunity_ids) > 1 or not context.get('mass_convert') ):
- merge_obj = self.pool.get('crm.merge.opportunity')
- self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, [data.opportunity_ids[0].id])]}, context=context)
- context.update({'lead_ids' : record_id, "convert" : True})
- return merge_obj.merge(cr, uid, data.opportunity_ids, context=context)
-
- return {
- 'name': _('Opportunity'),
- 'view_type': 'form',
- 'view_mode': 'form,tree',
- 'res_model': 'crm.lead',
- 'domain': [('type', '=', 'opportunity')],
- 'res_id': int(lead.id),
- 'view_id': False,
- 'views': [(opportunity_view_form, 'form'),
- (opportunity_view_tree, 'tree'),
- (False, 'calendar'), (False, 'graph')],
- 'type': 'ir.actions.act_window',
- 'search_view_id': opportunity_view_search
- }
+
+ lead = self.pool.get('crm.lead')
+ lead_ids = context.get('active_ids', [])
+ data = self.browse(cr, uid, ids, context=context)[0]
+ self._convert_opportunity(cr, uid, ids, {'lead_ids': lead_ids}, context=context)
+ self._merge_opportunity(cr, uid, ids, data.opportunity_ids, data.action, context=context)
+ return lead.redirect_opportunity_view(cr, uid, lead_ids[0], context=context)
crm_lead2opportunity_partner()
@@ -240,55 +154,19 @@ class crm_lead2opportunity_mass_convert(osv.osv_memory):
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
}
+ def _convert_opportunity(self, cr, uid, ids, vals, context=None):
+ data = self.browse(cr, uid, ids, context=context)[0]
+ salesteam_id = data.section_id and data.section_id.id or False
+ salesman = []
+ if data.user_ids:
+ salesman = [x.id for x in data.user_ids]
+ vals.update({'user_ids': salesman, 'section_id': salesteam_id})
+ return super(crm_lead2opportunity_mass_convert, self)._convert_opportunity(cr, uid, ids, vals, context=context)
def mass_convert(self, cr, uid, ids, context=None):
- lead_obj = self.pool.get('crm.lead')
- if not context:
- context = {}
-
- active_ids = context.get('active_ids')
- data = self.browse(cr, uid, ids, context=context)[0]
-
- salesteam = data.section_id and data.section_id.id
- if data.user_ids:
- salesmans = map(lambda x : x.id, data.user_ids)
- index = 0
- else:
- salesmans = False
-
- for lead_id in active_ids:
- value = {}
- if salesteam:
- value['section_id'] = salesteam
- if salesmans:
- value['user_id'] = salesmans[index]
- index += 1
- index = index < len(salesmans) and index or 0
- if value:
- lead_obj.write(cr, uid, [lead_id], value, context=context)
-
- context['active_ids'] = [lead_id]
- value = self.default_get(cr, uid, ['partner_id', 'opportunity_ids'], context=context)
- value['opportunity_ids'] = [(6, 0, value['opportunity_ids'])]
- self.write(cr, uid, ids, value, context=context)
-
- self.action_apply(cr, uid, ids, context=context)
-
-
-
- models_data = self.pool.get('ir.model.data')
- result = models_data._get_id(cr, uid, 'crm', 'view_crm_case_opportunities_filter')
- opportunity_view_search = models_data.browse(cr, uid, result, context=context).res_id
-
- return {
- 'name': _('Opportunity'),
- 'view_type': 'form',
- 'view_mode': 'tree,form',
- 'res_model': 'crm.lead',
- 'domain': [('type', '=', 'opportunity'), ('id', 'in', active_ids)],
- 'type': 'ir.actions.act_window',
- 'search_view_id': opportunity_view_search,
- }
-
+ value = self.default_get(cr, uid, ['partner_id', 'opportunity_ids'], context=context)
+ value['opportunity_ids'] = [(6, 0, value['opportunity_ids'])]
+ self.write(cr, uid, ids, value, context=context)
+ return self.action_apply(cr, uid, ids, context=context)
crm_lead2opportunity_mass_convert()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/wizard/crm_lead_to_opportunity_view.xml b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
index 833c04c3575..5f8453768c0 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
@@ -65,6 +65,15 @@
+
+
+ Create a Partner
+ ir.actions.act_window
+ crm.lead2opportunity.partner
+ form
+
+ new
+ ,]+)', lead.email_from or '')
- email = map(lambda x: "'" + x + "'", email)
- if email:
- cr.execute("""select partner_id from res_partner_address
- where
- substring(email from '([^ ,<@]+@[^> ,]+)') in (%s)""" % (','.join(email)))
- partner_ids = map(lambda x: x[0], cr.fetchall())
-
- # Find partner name that matches the name of the lead
- if not partner_ids and lead.partner_name:
- partner_ids = partner_obj.search(cr, uid, [('name', '=ilike', lead.partner_name)], context=context)
-
- partner_id = partner_ids and partner_ids[0] or False
- if 'partner_id' in fields:
- res.update({'partner_id': partner_id})
- if 'action' in fields:
- res.update({'action': partner_id and 'exist' or 'create'})
- if 'opportunity_ids' in fields:
- res.update({'opportunity_ids': data})
-
+ if 'partner_id' in fields:
+ res.update({'partner_id': partner_id})
+ if 'action' in fields:
+ res.update({'action': partner_id and 'exist' or 'create'})
+
return res
def open_create_partner(self, cr, uid, ids, context=None):
"""
This function Opens form of create partner.
- @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 Lead to Partner's IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary value for next form.
"""
- if context is None:
- context = {}
-
view_obj = self.pool.get('ir.ui.view')
- view_id = view_obj.search(cr, uid, [('model', '=', 'crm.lead2partner'), \
- ('name', '=', 'crm.lead2partner.view')])
+ view_id = view_obj.search(cr, uid, [('model', '=', self._name), \
+ ('name', '=', self._name+'.view')])
return {
'view_mode': 'form',
'view_type': 'form',
'view_id': view_id or False,
- 'res_model': 'crm.lead2partner',
+ 'res_model': self._name,
'context': context,
'type': 'ir.actions.act_window',
'target': 'new',
- }
-
+ }
def _create_partner(self, cr, uid, ids, context=None):
"""
This function Creates partner based on action.
- @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 Lead to Partner's IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary {}.
"""
if context is None:
context = {}
-
- lead_obj = self.pool.get('crm.lead')
- partner_obj = self.pool.get('res.partner')
- contact_obj = self.pool.get('res.partner.address')
- partner_ids = []
- partner_id = False
- rec_ids = context and context.get('active_ids', [])
-
- for data in self.browse(cr, uid, ids, context=context):
- for lead in lead_obj.browse(cr, uid, rec_ids, context=context):
- if data.action == 'create':
- partner_id = partner_obj.create(cr, uid, {
- 'name': lead.partner_name or lead.contact_name or lead.name,
- 'user_id': lead.user_id.id,
- 'comment': lead.description,
- 'address': []
- })
- contact_obj.create(cr, uid, {
- 'partner_id': partner_id,
- 'name': lead.contact_name,
- 'phone': lead.phone,
- 'mobile': lead.mobile,
- 'email': lead.email_from,
- 'fax': lead.fax,
- 'title': lead.title and lead.title.id or False,
- 'function': lead.function,
- 'street': lead.street,
- 'street2': lead.street2,
- 'zip': lead.zip,
- 'city': lead.city,
- 'country_id': lead.country_id and lead.country_id.id or False,
- 'state_id': lead.state_id and lead.state_id.id or False,
- })
-
- else:
- if data.partner_id:
- partner_id = data.partner_id.id
- self.assign_partner(cr, uid, lead.id, partner_id)
- partner_ids.append(partner_id)
- return partner_ids
-
-
- def assign_partner(self, cr, uid, lead_id, partner_id):
- self.pool.get("crm.lead").write(cr, uid, [lead_id], {'partner_id' : partner_id})
-
+ lead = self.pool.get('crm.lead')
+ lead_ids = context and context.get('active_ids') or []
+ data = self.browse(cr, uid, ids, context=context)[0]
+ partner_id = data.partner_id and data.partner_id.id or False
+ partner_ids = lead.convert_partner(cr, uid, lead_ids, data.action, partner_id, context=context)
+ return partner_ids[lead_ids[0]]
def make_partner(self, cr, uid, ids, context=None):
"""
This function Makes partner based on action.
- @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 Lead to Partner's IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary value for created Partner form.
"""
- if context is None:
- context = {}
-
- partner_ids = self._create_partner(cr, uid, ids, context=context)
- return {'type': 'ir.actions.act_window_close'}
+ partner_id = self._create_partner(cr, uid, ids, context=context)
+ return self.pool.get('res.partner').redirect_partner_form(cr, uid, partner_id, context=context)
crm_lead2partner()
diff --git a/addons/crm/wizard/crm_merge_opportunities.py b/addons/crm/wizard/crm_merge_opportunities.py
index f092d6ad0b6..381bb9871ea 100644
--- a/addons/crm/wizard/crm_merge_opportunities.py
+++ b/addons/crm/wizard/crm_merge_opportunities.py
@@ -26,195 +26,16 @@ class crm_merge_opportunity(osv.osv_memory):
_name = 'crm.merge.opportunity'
_description = 'Merge two Opportunities'
- def _get_first_not_null_id(self, attr, ops, oldest):
- if hasattr(oldest, attr) and getattr(oldest, attr):
- return getattr(oldest, attr).id
-
- for op in ops:
- if hasattr(op, attr) and getattr(op, attr):
- return getattr(op, attr).id
- return False
-
- def _get_first_not_null(self, attr, ops, oldest):
- if hasattr(oldest, attr) and getattr(oldest, attr):
- return getattr(oldest, attr)
-
- for op in ops:
- if hasattr(op, attr) and getattr(op, attr):
- return getattr(op, attr)
- return False
-
- def _concat_all(self, attr, ops):
- return ', '.join([getattr(op, attr) for op in ops if hasattr(op, attr) and getattr(op, attr)])
-
-
- def get_attachments(self, cr, uid, id, context=None):
- proxy = self.pool.get('ir.attachment')
- ids = proxy.search(cr, uid, [('res_model', '=', 'crm.lead'), ('res_id', '=', id)], context=context)
- return proxy.browse(cr, uid, ids, context=context)
-
- def find_oldest(self, cr, uid, op_ids, context=None):
- if not context:
- context = {}
- ids = [op_id.id for op_id in op_ids]
- if context.get('convert'):
- ids = list(set(ids) - set(context.get('lead_ids', False)) )
- lead_obj = self.pool.get('crm.lead')
- op_id = lead_obj.search(cr, uid, [('id', 'in', ids)], order='create_date' , context=context)
- if not op_id:
- return False
- opps = lead_obj.browse(cr, uid, [op_id[0]], context=context)
- return opps[0]
-
- def _update_data(self, op_ids, oldest_opp):
- data = {
- 'partner_id': self._get_first_not_null_id('partner_id', op_ids, oldest_opp), # !!
- 'title': self._get_first_not_null_id('title', op_ids, oldest_opp),
- 'name' : self._get_first_not_null('name', op_ids, oldest_opp), #not lost
- 'categ_id' : self._get_first_not_null_id('categ_id', op_ids, oldest_opp), # !!
- 'channel_id' : self._get_first_not_null_id('channel_id', op_ids, oldest_opp), # !!
- 'city' : self._get_first_not_null('city', op_ids, oldest_opp), # !!
- 'company_id' : self._get_first_not_null_id('company_id', op_ids, oldest_opp), #!!
- 'contact_name' : self._get_first_not_null('contact_name', op_ids, oldest_opp), #not lost
- 'country_id' : self._get_first_not_null_id('country_id', op_ids, oldest_opp), #!!
- 'partner_address_id' : self._get_first_not_null_id('partner_address_id', op_ids, oldest_opp), #!!
- 'type_id' : self._get_first_not_null_id('type_id', op_ids, oldest_opp), #!!
- 'user_id' : self._get_first_not_null_id('user_id', op_ids, oldest_opp), #!!
- 'section_id' : self._get_first_not_null_id('section_id', op_ids, oldest_opp), #!!
- 'state_id' : self._get_first_not_null_id('state_id', op_ids, oldest_opp),
- 'description' : self._concat_all('description', op_ids), #not lost
- 'email' : self._get_first_not_null('email', op_ids, oldest_opp), # !!
- 'fax' : self._get_first_not_null('fax', op_ids, oldest_opp),
- 'mobile' : self._get_first_not_null('mobile', op_ids, oldest_opp),
- 'partner_name' : self._get_first_not_null('partner_name', op_ids, oldest_opp),
- 'phone' : self._get_first_not_null('phone', op_ids, oldest_opp),
- 'probability' : self._get_first_not_null('probability', op_ids, oldest_opp),
- 'planned_revenue' : self._get_first_not_null('planned_revenue', op_ids, oldest_opp),
- 'street' : self._get_first_not_null('street', op_ids, oldest_opp),
- 'street2' : self._get_first_not_null('street2', op_ids, oldest_opp),
- 'zip' : self._get_first_not_null('zip', op_ids, oldest_opp),
- 'state' : 'open',
- 'create_date' : self._get_first_not_null('create_date', op_ids, oldest_opp),
- 'date_action_last': self._get_first_not_null('date_action_last', op_ids, oldest_opp),
- 'date_action_next': self._get_first_not_null('date_action_next', op_ids, oldest_opp),
- 'email_from' : self._get_first_not_null('email_from', op_ids, oldest_opp),
- 'email_cc' : self._get_first_not_null('email_cc', op_ids, oldest_opp),
- 'partner_name' : self._get_first_not_null('partner_name', op_ids, oldest_opp),
- }
- return data
-
- def merge(self, cr, uid, op_ids, context=None):
- """
- :param opp_ids: list of opportunities ids to merge
- """
- opp_obj = self.pool.get('crm.lead')
- message_obj = self.pool.get('mail.message')
-
- lead_ids = context and context.get('lead_ids', []) or []
-
- if len(op_ids) <= 1:
- raise osv.except_osv(_('Warning !'),_('Please select more than one opportunities.'))
-
- opportunities = opp_obj.browse(cr, uid, lead_ids, context=context)
- opportunities_list = list(set(op_ids) - set(opportunities))
- oldest_opp = self.find_oldest(cr, uid, op_ids, context=context)
- if opportunities :
- first_opportunity = opportunities[0]
- tail_opportunities = opportunities_list
- else:
- first_opportunity = opportunities_list[0]
- tail_opportunities = opportunities_list[1:]
- data = self._update_data(op_ids, oldest_opp)
-
- #copy message into the first opportunity + merge attachement
- count = 1
- first_attachments = self.get_attachments(cr, uid, first_opportunity, context=context)
- for opp in tail_opportunities:
- attachments = self.get_attachments(cr, uid, opp, context=context)
- for first in first_attachments:
- for attachment in attachments:
- if attachment.name == first.name:
- values = dict(
- name = "%s (%s)" % (attachment.name, count,),
- res_id = first_opportunity.id,
- )
- attachment.write(values)
- count+=1
-
- for history in opp.message_ids:
- message_obj.write(cr, uid, history.id, {'res_id': first_opportunity.id, 'subject' : _("From %s : %s") % (opp.name, history.subject) }, context=context)
-
- #Notification about loss of information
- details = []
- subject = ['Merged opportunities :']
- for opp in op_ids:
- subject.append(opp.name)
- details.append(_('Merged Opportunity: %s\n Partner: %s\n Stage: %s\n Section: %s\n Salesman: %s\n Category: %s\n Channel: %s\n Company: %s\n Contact name: %s\n Email: %s\n Phone number: %s\n Fax: %s\n Mobile: %s\n State: %s\n Description: %s\n Probability: %s\n Planned revennue: %s\n Country: %s\n City: %s\n Street: %s\n Street 2: %s\n Zip 2: %s') % ( opp.name, opp.partner_id.name or '',
- opp.stage_id.name or '',
- opp.section_id.name or '',
- opp.user_id.name or '',
- opp.categ_id.name or '',
- opp.channel_id.name or '',
- opp.company_id.name or '',
- opp.contact_name or '',
- opp.email_from or '',
- opp.phone or '',
- opp.fax or '',
- opp.mobile or '',
- opp.state_id.name or '',
- opp.description or '',
- opp.probability or '',
- opp.planned_revenue or '',
- opp.country_id.name or '',
- opp.city or '',
- opp.street or '',
- opp.street2 or '',
- opp.zip or '',
- ))
- subject = subject[0] + ", ".join(subject[1:])
- details = "\n\n".join(details)
-
- opp_obj.message_append(cr, uid, [first_opportunity], subject, body_text=details)
- #data.update({'message_ids' : [(6, 0 ,self._concat_o2m('message_ids', op_ids))]})
- opp_obj.write(cr, uid, [first_opportunity.id], data, context=context)
- unlink_ids = map(lambda x: x.id, tail_opportunities)
- opp_obj.unlink(cr, uid, unlink_ids, context=context)
-
- models_data = self.pool.get('ir.model.data')
-
- # Get Opportunity views
- opportunity_view_form = models_data._get_id(
- cr, uid, 'crm', 'crm_case_form_view_oppor')
- opportunity_view_tree = models_data._get_id(
- cr, uid, 'crm', 'crm_case_tree_view_oppor')
- if opportunity_view_form:
- opportunity_view_form = models_data.browse(
- cr, uid, opportunity_view_form, context=context).res_id
- if opportunity_view_tree:
- opportunity_view_tree = models_data.browse(
- cr, uid, opportunity_view_tree, context=context).res_id
-
- return {
- 'name': _('Opportunity'),
- 'view_type': 'form',
- 'view_mode': 'tree, form',
- 'res_model': 'crm.lead',
- 'domain': [('type', '=', 'opportunity')],
- 'res_id': int(first_opportunity.id),
- 'view_id': False,
- 'views': [(opportunity_view_form, 'form'),
- (opportunity_view_tree, 'tree'),
- (False, 'calendar'), (False, 'graph')],
- 'type': 'ir.actions.act_window',
- }
-
-
def action_merge(self, cr, uid, ids, context=None):
- obj_opportunity = self.browse(cr, uid, ids[0], context=context)
- op_ids = obj_opportunity.opportunity_ids
- self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, [op_ids[0].id])]}, context=context)
- context['lead_ids'] = [op_ids[0].id]
- return self.merge(cr, uid, op_ids, context)
+ lead = self.pool.get('crm.lead')
+ record = self.browse(cr, uid, ids[0], context=context)
+ opportunities = record.opportunity_ids
+ #TOFIX: why need to check lead_ids here
+ lead_ids = [opportunities[0].id]
+ self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, lead_ids)]}, context=context)
+ context['lead_ids'] = lead_ids
+ merge_id = lead.merge_opportunity(cr, uid, [x.id for x in opportunities], context=context)
+ return lead.redirect_opportunity_view(cr, uid, merge_id, context=context)
_columns = {
'opportunity_ids' : fields.many2many('crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id', 'Opportunities', domain=[('type', '=', 'opportunity')]),
@@ -223,13 +44,6 @@ class crm_merge_opportunity(osv.osv_memory):
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 users 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_ids = context and context.get('active_ids', False) or False
res = super(crm_merge_opportunity, self).default_get(cr, uid, fields, context=context)
diff --git a/addons/crm/wizard/crm_opportunity_to_phonecall.py b/addons/crm/wizard/crm_opportunity_to_phonecall.py
index b0bfbf3b817..630f9a7e889 100644
--- a/addons/crm/wizard/crm_opportunity_to_phonecall.py
+++ b/addons/crm/wizard/crm_opportunity_to_phonecall.py
@@ -21,43 +21,16 @@
from osv import osv, fields
from tools.translate import _
-import pprint
-pp = pprint.PrettyPrinter(indent=4)
import time
class crm_opportunity2phonecall(osv.osv_memory):
"""Converts Opportunity to Phonecall"""
-
+ _inherit = 'crm.phonecall2phonecall'
_name = 'crm.opportunity2phonecall'
_description = 'Opportunity to Phonecall'
- _columns = {
- 'name' : fields.char('Call summary', size=64, required=True, select=1),
- 'user_id' : fields.many2one('res.users', "Assign To"),
- 'contact_name':fields.char('Contact', size=64),
- 'phone':fields.char('Phone', size=64),
- 'partner_id' : fields.many2one('res.partner', "Partner"),
- 'date': fields.datetime('Date'),
- 'section_id': fields.many2one('crm.case.section', 'Sales Team'),
- 'categ_id': fields.many2one('crm.case.categ', 'Category', \
- domain="['|',('section_id','=',False),('section_id','=',section_id),\
- ('object_id.model', '=', 'crm.phonecall')]"),
- 'action': fields.selection([('schedule','Schedule a call'), ('log','Log a call')], 'Action', required=True),
- 'note':fields.text('Note'),
- }
-
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.
- """
opp_obj = self.pool.get('crm.lead')
categ_id = False
data_obj = self.pool.get('ir.model.data')
@@ -66,8 +39,8 @@ class crm_opportunity2phonecall(osv.osv_memory):
categ_id = data_obj.browse(cr, uid, res_id, context=context).res_id
record_ids = context and context.get('active_ids', []) or []
- res = super(crm_opportunity2phonecall, self).default_get(cr, uid, fields, context=context)
- res.update({'action': 'log', 'date': time.strftime('%Y-%m-%d %H:%M:%S')})
+ res = {}
+ res.update({'action': 'schedule', 'date': time.strftime('%Y-%m-%d %H:%M:%S')})
for opp in opp_obj.browse(cr, uid, record_ids, context=context):
if 'name' in fields:
res.update({'name': opp.name})
@@ -87,84 +60,20 @@ class crm_opportunity2phonecall(osv.osv_memory):
res.update({'phone': opp.phone or (opp.partner_address_id and opp.partner_address_id.phone or False)})
return res
- def action_cancel(self, cr, uid, ids, context=None):
- """
- Closes Opportunity to Phonecall form
- @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 Opportunity to Phonecall's IDs
- @param context: A standard dictionary for contextual values
- """
- return {'type': 'ir.actions.act_window_close'}
-
- def action_apply(self, cr, uid, ids, context=None):
- """
- This converts Opportunity to Phonecall and opens Phonecall view
- @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 Opportunity to Phonecall IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary value for created Opportunity form
- """
+ def action_schedule(self, cr, uid, ids, context=None):
value = {}
- record_ids = context and context.get('active_ids', []) or []
-
- phonecall_obj = self.pool.get('crm.phonecall')
- opp_obj = self.pool.get('crm.lead')
- mod_obj = self.pool.get('ir.model.data')
- result = mod_obj._get_id(cr, uid, 'crm', 'view_crm_case_phonecalls_filter')
- res = mod_obj.read(cr, uid, result, ['res_id'])
-
- data_obj = self.pool.get('ir.model.data')
-
- # Select the view
- id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_tree_view')
- id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_form_view')
- if id2:
- id2 = data_obj.browse(cr, uid, id2, context=context).res_id
- if id3:
- id3 = data_obj.browse(cr, uid, id3, context=context).res_id
-
- for this in self.browse(cr, uid, ids, context=context):
- for opp in opp_obj.browse(cr, uid, record_ids, context=context):
- vals = {
- 'name' : opp.name,
- 'case_id' : opp.id,
- 'user_id' : this.user_id and this.user_id.id or False,
- 'categ_id' : this.categ_id.id,
- 'description' : opp.description or False,
- 'date' : this.date,
- 'section_id' : this.section_id.id or False,
- 'partner_id': opp.partner_id and opp.partner_id.id or False,
- 'partner_address_id': opp.partner_address_id and opp.partner_address_id.id or False,
- 'partner_phone' : opp.phone or (opp.partner_address_id and opp.partner_address_id.phone or False),
- 'partner_mobile' : opp.partner_address_id and opp.partner_address_id.mobile or False,
- 'priority': opp.priority,
- 'opportunity_id': opp.id,
- 'date_open': time.strftime('%Y-%m-%d %H:%M:%S')
- }
-
- new_case = phonecall_obj.create(cr, uid, vals, context=context)
-
- if this.action == 'log':
- phonecall_obj.case_close(cr, uid, [new_case])
- return {'type': 'ir.actions.act_window_close'}
-
- value = {
- 'name': _('Phone Call'),
- 'domain': "[('user_id','=',%s),('opportunity_id','=',%s)]" % (uid,opp.id),
- 'view_type': 'form',
- 'view_mode': 'tree,form',
- 'res_model': 'crm.phonecall',
- 'res_id' : new_case,
- 'views': [(id3, 'form'), (id2, 'tree'), (False, 'calendar')],
- 'type': 'ir.actions.act_window',
- 'search_view_id': res['res_id'],
- }
- return value
+ if context is None:
+ context = {}
+ phonecall = self.pool.get('crm.phonecall')
+ opportunity_ids = context and context.get('active_ids') or []
+ opportunity = self.pool.get('crm.lead')
+ data = self.browse(cr, uid, ids, context=context)[0]
+ call_ids = opportunity.schedule_phonecall(cr, uid, opportunity_ids, data.date, data.name, \
+ data.note, data.phone, data.contact_name, data.user_id and data.user_id.id or False, \
+ data.section_id and data.section_id.id or False, \
+ data.categ_id and data.categ_id.id or False, \
+ action=data.action, context=context)
+ return phonecall.redirect_phonecall_view(cr, uid, call_ids[opportunity_ids[0]], context=context)
crm_opportunity2phonecall()
diff --git a/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml b/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml
index 980b93500d2..a12bd92115c 100644
--- a/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml
+++ b/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml
@@ -16,24 +16,19 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
diff --git a/addons/crm/wizard/crm_partner_to_opportunity.py b/addons/crm/wizard/crm_partner_to_opportunity.py
index 4d24bd5b78f..6322d0341c1 100644
--- a/addons/crm/wizard/crm_partner_to_opportunity.py
+++ b/addons/crm/wizard/crm_partner_to_opportunity.py
@@ -35,16 +35,15 @@ class crm_partner2opportunity(osv.osv_memory):
'partner_id': fields.many2one('res.partner', 'Partner'),
}
+ def action_cancel(self, cr, uid, ids, context=None):
+ """
+ Closes Partner 2 Opportunity
+ """
+ return {'type':'ir.actions.act_window_close'}
+
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.
"""
partner_obj = self.pool.get('res.partner')
data = context and context.get('active_ids', []) or []
@@ -58,56 +57,17 @@ class crm_partner2opportunity(osv.osv_memory):
return res
def make_opportunity(self, cr, uid, ids, context=None):
- """
- @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 context: A standard dictionary for contextual values
- """
-
- data = context and context.get('active_ids', []) or []
- make_opportunity = self.pool.get('crm.partner2opportunity')
- data_obj = self.pool.get('ir.model.data')
- part_obj = self.pool.get('res.partner')
- categ_obj = self.pool.get('crm.case.categ')
- case_obj = self.pool.get('crm.lead')
-
- for make_opportunity_obj in make_opportunity.browse(cr, uid, ids, context=context):
- result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_opportunities_filter')
- res = data_obj.read(cr, uid, result, ['res_id'])
-
- id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_oppor')
- id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_oppor')
- if id2:
- id2 = data_obj.browse(cr, uid, id2, context=context).res_id
- if id3:
- id3 = data_obj.browse(cr, uid, id3, context=context).res_id
-
- address = part_obj.address_get(cr, uid, data)
- categ_ids = categ_obj.search(cr, uid, [('object_id.model','=','crm.lead')])
-
- opp_id = case_obj.create(cr, uid, {
- 'name' : make_opportunity_obj.name,
- 'planned_revenue' : make_opportunity_obj.planned_revenue,
- 'probability' : make_opportunity_obj.probability,
- 'partner_id' : make_opportunity_obj.partner_id.id,
- 'partner_address_id' : address['default'],
- 'categ_id' : categ_ids and categ_ids[0] or '',
- 'state' :'draft',
- 'type': 'opportunity'
- })
- value = {
- 'name' : _('Opportunity'),
- 'view_type' : 'form',
- 'view_mode' : 'form,tree',
- 'res_model' : 'crm.lead',
- 'res_id' : opp_id,
- 'view_id' : False,
- 'views' : [(id2, 'form'), (id3, 'tree'), (False, 'calendar'), (False, 'graph')],
- 'type' : 'ir.actions.act_window',
- 'search_view_id' : res['res_id']
- }
- return value
+ partner_ids = context and context.get('active_ids', []) or []
+ partner = self.pool.get('res.partner')
+ lead = self.pool.get('crm.lead')
+ data = self.browse(cr, uid, ids, context=context)[0]
+ opportunity_ids = partner.make_opportunity(cr, uid, partner_ids,
+ data.name,
+ data.planned_revenue,
+ data.probability,
+ )
+ opportunity_id = opportunity_ids[partner_ids[0]]
+ return lead.redirect_opportunity_view(cr, uid, opportunity_id, context=context)
crm_partner2opportunity()
diff --git a/addons/crm/wizard/crm_partner_to_opportunity_view.xml b/addons/crm/wizard/crm_partner_to_opportunity_view.xml
index 1111bbbbc50..f75f3d5b90e 100644
--- a/addons/crm/wizard/crm_partner_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_partner_to_opportunity_view.xml
@@ -16,7 +16,7 @@
-
+
diff --git a/addons/crm/wizard/crm_phonecall_to_opportunity.py b/addons/crm/wizard/crm_phonecall_to_opportunity.py
index ffab1867ebb..7305cbd8b5f 100644
--- a/addons/crm/wizard/crm_phonecall_to_opportunity.py
+++ b/addons/crm/wizard/crm_phonecall_to_opportunity.py
@@ -26,97 +26,31 @@ class crm_phonecall2opportunity(osv.osv_memory):
""" Converts Phonecall to Opportunity"""
_name = 'crm.phonecall2opportunity'
+ _inherit = 'crm.partner2opportunity'
_description = 'Phonecall To Opportunity'
- def action_cancel(self, cr, uid, ids, context=None):
- """
- Closes Phonecall to Opportunity form
- """
-
- return {'type':'ir.actions.act_window_close'}
-
-
- def action_apply(self, cr, uid, ids, context=None):
+ def make_opportunity(self, cr, uid, ids, context=None):
"""
This converts Phonecall to Opportunity and opens Phonecall view
"""
- record_id = context and context.get('active_id', False) or False
- if record_id:
- opp_obj = self.pool.get('crm.lead')
- phonecall_obj = self.pool.get('crm.phonecall')
- case = phonecall_obj.browse(cr, uid, record_id, context=context)
- data_obj = self.pool.get('ir.model.data')
- result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_opportunities_filter')
- res = data_obj.read(cr, uid, result, ['res_id'])
- id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_oppor')
- id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_oppor')
- if id2:
- id2 = data_obj.browse(cr, uid, id2, context=context).res_id
- if id3:
- id3 = data_obj.browse(cr, uid, id3, context=context).res_id
-
- for this in self.browse(cr, uid, ids, context=context):
- address = None
- if this.partner_id:
- address_id = self.pool.get('res.partner').address_get(cr, uid, [this.partner_id.id])
- if address_id['default']:
- address = self.pool.get('res.partner.address').browse(cr, uid, address_id['default'], context=context)
- new_opportunity_id = opp_obj.create(cr, uid, {
- 'name': this.name,
- 'planned_revenue': this.planned_revenue,
- 'probability': this.probability,
- 'partner_id': this.partner_id and this.partner_id.id or False,
- 'partner_address_id': address and address.id,
- 'phone': address and address.phone,
- 'mobile': address and address.mobile,
- 'section_id': case.section_id and case.section_id.id or False,
- 'description': case.description or False,
- 'phonecall_id': case.id,
- 'priority': case.priority,
- 'type': 'opportunity',
- 'phone': case.partner_phone or False,
- })
- vals = {
- 'partner_id': this.partner_id.id,
- 'opportunity_id' : new_opportunity_id,
- }
- phonecall_obj.write(cr, uid, [case.id], vals)
- phonecall_obj.case_close(cr, uid, [case.id])
- opp_obj.case_open(cr, uid, [new_opportunity_id])
-
- value = {
- 'name': _('Opportunity'),
- 'view_type': 'form',
- 'view_mode': 'form,tree',
- 'res_model': 'crm.lead',
- 'res_id': int(new_opportunity_id),
- 'view_id': False,
- 'views': [(id2, 'form'), (id3, 'tree'), (False, 'calendar'), (False, 'graph')],
- 'type': 'ir.actions.act_window',
- 'search_view_id': res['res_id']
- }
- return value
-
- _columns = {
- 'name' : fields.char('Opportunity Summary', size=64, required=True, select=1),
- 'probability': fields.float('Success Probability'),
- 'planned_revenue': fields.float('Expected Revenue'),
- 'partner_id': fields.many2one('res.partner', 'Partner'),
- }
+ if not len(ids):
+ return False
+ call_ids = context and context.get('active_ids', False) or False
+ this = self.browse(cr, uid, ids[0], context=context)
+ if not call_ids:
+ return {}
+ opportunity = self.pool.get('crm.lead')
+ phonecall = self.pool.get('crm.phonecall')
+ opportunity_ids = phonecall.convert_opportunity(cr, uid, call_ids, this.name, this.partner_id and this.partner_id.id or False, \
+ this.planned_revenue, this.probability, context=context)
+ return opportunity.redirect_opportunity_view(cr, uid, opportunity_ids[call_ids[0]], context=context)
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_phonecall2opportunity, self).default_get(cr, uid, fields, context=context)
+ res = {}
if record_id:
phonecall = self.pool.get('crm.phonecall').browse(cr, uid, record_id, context=context)
diff --git a/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml b/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml
index ea024831b54..d3c59f89433 100644
--- a/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml
@@ -19,7 +19,7 @@
-
+
diff --git a/addons/crm/wizard/crm_phonecall_to_partner.py b/addons/crm/wizard/crm_phonecall_to_partner.py
index 38e673108e4..0fa077bbf42 100644
--- a/addons/crm/wizard/crm_phonecall_to_partner.py
+++ b/addons/crm/wizard/crm_phonecall_to_partner.py
@@ -26,42 +26,12 @@ class crm_phonecall2partner(osv.osv_memory):
""" Converts phonecall to partner """
_name = 'crm.phonecall2partner'
+ _inherit = 'crm.lead2partner'
_description = 'Phonecall to Partner'
-
- _columns = {
- 'action': fields.selection([('exist', 'Link to an existing partner'), \
- ('create', 'Create a new partner')], \
- 'Action', required=True),
- 'partner_id': fields.many2one('res.partner', 'Partner')
- }
-
- 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
-
- """
- phonecall_obj = self.pool.get('crm.phonecall')
- rec_ids = context and context.get('active_ids', [])
- for phonecall in phonecall_obj.browse(cr, uid, rec_ids, context=context):
- if phonecall.partner_id:
- raise osv.except_osv(_('Warning !'),
- _('A partner is already defined on this phonecall.'))
-
+
def _select_partner(self, cr, uid, context=None):
"""
This function Searches for Partner from selected phonecall.
- @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 : Partner id if any for selected phonecall.
"""
if context is None:
context = {}
@@ -75,7 +45,7 @@ class crm_phonecall2partner(osv.osv_memory):
for phonecall in phonecall_obj.browse(cr, uid, rec_ids, context=context):
partner_ids = partner_obj.search(cr, uid, [('name', '=', phonecall.name or phonecall.name)])
if not partner_ids and phonecall.email_from:
- address_ids = contact_obj.search(cr, uid, [('email', '=', phonecall.email_from)])
+ address_ids = contact_obj.search(cr, uid, ['|', ('phone', '=', phonecall.partner_phone), ('mobile','=',phonecall.partner_mobile)])
if address_ids:
addresses = contact_obj.browse(cr, uid, address_ids)
partner_ids = addresses and [addresses[0].partner_id.id] or False
@@ -83,117 +53,20 @@ class crm_phonecall2partner(osv.osv_memory):
partner_id = partner_ids and partner_ids[0] or False
return partner_id
- _defaults = {
- 'action': lambda *a:'exist',
- 'partner_id': _select_partner
- }
-
- def open_create_partner(self, cr, uid, ids, context=None):
- """
- This function Opens form of create partner.
- @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 Partner's IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary value for next form.
- """
-
- view_obj = self.pool.get('ir.ui.view')
- view_id = view_obj.search(cr, uid, [('model', '=', 'crm.phonecall2partner'), \
- ('name', '=', 'crm.phonecall2partner.view')])
- return {
- 'view_mode': 'form',
- 'view_type': 'form',
- 'view_id': view_id or False,
- 'res_model': 'crm.phonecall2partner',
- 'context': context,
- 'type': 'ir.actions.act_window',
- 'target': 'new',
- }
-
def _create_partner(self, cr, uid, ids, context=None):
"""
This function Creates partner based on action.
- @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 Partner's IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary {}.
"""
if context is None:
context = {}
+ phonecall = self.pool.get('crm.phonecall')
- phonecall_obj = self.pool.get('crm.phonecall')
- partner_obj = self.pool.get('res.partner')
- contact_obj = self.pool.get('res.partner.address')
- partner_ids = []
- contact_id = False
-
- rec_ids = context and context.get('active_ids', [])
-
- for data in self.browse(cr, uid, ids, context=context):
- for phonecall in phonecall_obj.browse(cr, uid, rec_ids, context=context):
- if data.action == 'create':
- partner_id = partner_obj.create(cr, uid, {
- 'name': phonecall.name or phonecall.name,
- 'user_id': phonecall.user_id.id,
- 'comment': phonecall.description,
- })
- contact_id = contact_obj.create(cr, uid, {
- 'partner_id': partner_id,
- 'name': phonecall.name,
- 'phone': phonecall.partner_phone,
- })
-
- else:
- if data.partner_id:
- partner_id = data.partner_id.id
- contact_id = partner_obj.address_get(cr, uid, [partner_id])['default']
-
- partner_ids.append(partner_id)
-
- vals = {}
- if partner_id:
- vals.update({'partner_id': partner_id})
- if contact_id:
- vals.update({'partner_address_id': contact_id})
- phonecall_obj.write(cr, uid, [phonecall.id], vals)
- return partner_ids
-
- def make_partner(self, cr, uid, ids, context=None):
- """
- This function Makes partner based on action.
- @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 Partner's IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary value for created Partner form.
- """
-
- partner_ids = self._create_partner(cr, uid, ids, context=context)
- mod_obj = self.pool.get('ir.model.data')
- result = mod_obj._get_id(cr, uid, 'base', 'view_res_partner_filter')
- res = mod_obj.read(cr, uid, result, ['res_id'])
-
- value = {
- 'domain': "[]",
- 'view_type': 'form',
- 'view_mode': 'form,tree',
- 'res_model': 'res.partner',
- 'res_id': partner_ids and int(partner_ids[0]) or False,
- 'view_id': False,
- 'context': context,
- 'type': 'ir.actions.act_window',
- 'search_view_id': res['res_id']
- }
- return value
+ data = self.browse(cr, uid, ids, context=context)[0]
+ call_ids = context and context.get('active_ids') or []
+ partner_id = data.partner_id and data.partner_id.id or False
+ partner_ids = phonecall.convert_partner(cr, uid, call_ids, data.action, partner_id, context=context)
+ return partner_ids[call_ids[0]]
crm_phonecall2partner()
diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall.py b/addons/crm/wizard/crm_phonecall_to_phonecall.py
index 2872acad4eb..d68591ab0b7 100644
--- a/addons/crm/wizard/crm_phonecall_to_phonecall.py
+++ b/addons/crm/wizard/crm_phonecall_to_phonecall.py
@@ -25,108 +25,50 @@ from tools.translate import _
import time
class crm_phonecall2phonecall(osv.osv_memory):
- """ Converts Phonecall to Phonecall"""
-
_name = 'crm.phonecall2phonecall'
_description = 'Phonecall To Phonecall'
+ _columns = {
+ 'name' : fields.char('Call summary', size=64, required=True, select=1),
+ 'user_id' : fields.many2one('res.users',"Assign To"),
+ 'contact_name':fields.char('Contact', size=64),
+ 'phone':fields.char('Phone', size=64),
+ 'categ_id': fields.many2one('crm.case.categ', 'Category', \
+ domain="['|',('section_id','=',False),('section_id','=',section_id),\
+ ('object_id.model', '=', 'crm.phonecall')]"),
+ 'date': fields.datetime('Date'),
+ 'section_id':fields.many2one('crm.case.section','Sales Team'),
+ 'action': fields.selection([('schedule','Schedule a call'), ('log','Log a call')], 'Action', required=True),
+ 'partner_id' : fields.many2one('res.partner', "Partner"),
+ 'note':fields.text('Note')
+ }
+
+
def action_cancel(self, cr, uid, ids, context=None):
"""
Closes Phonecall to Phonecall form
- @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 Phonecall's IDs
- @param context: A standard dictionary for contextual values
"""
return {'type':'ir.actions.act_window_close'}
- def action_apply(self, cr, uid, ids, context=None):
- """
- This converts Phonecall to Phonecall and opens Phonecall view
- @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 Phonecall IDs
- @param context: A standard dictionary for contextual values
-
- @return : Dictionary value for created Opportunity form
- """
- res = {}
- record_id = context and context.get('active_id', False) or False
- phonecall_obj = self.pool.get('crm.phonecall')
-
- if record_id:
- data_obj = self.pool.get('ir.model.data')
-
- # Get Phonecall views
- result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_phonecalls_filter')
- res = data_obj.read(cr, uid, result, ['res_id'])
- id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_form_view')
- id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_tree_view')
- if id2:
- id2 = data_obj.browse(cr, uid, id2, context=context).res_id
- if id3:
- id3 = data_obj.browse(cr, uid, id3, context=context).res_id
-
- phonecall = phonecall_obj.browse(cr, uid, record_id, context=context)
-
- for this in self.browse(cr, uid, ids, context=context):
- values = {
- 'name': this.name,
- 'user_id': this.user_id and this.user_id.id,
- 'categ_id': this.categ_id.id,
- 'section_id': this.section_id.id or (phonecall.section_id and phonecall.section_id.id),
- 'description': phonecall.description or '',
- 'partner_id': phonecall.partner_id.id,
- 'partner_address_id': phonecall.partner_address_id.id,
- 'partner_mobile': phonecall.partner_mobile or False,
- 'priority': phonecall.priority,
- 'partner_phone': phonecall.partner_phone or False,
- 'date': this.date
- }
- phonecall_id = phonecall_obj.create(cr, uid, values, context=context)
- if this.action == 'schedule':
- phonecall_obj.case_open(cr, uid, [phonecall_id])
- elif this.action == 'log':
- phonecall_obj.case_close(cr, uid, [phonecall_id])
-
- res = {
- 'name': _('Phone Call'),
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'crm.phonecall',
- 'view_id': False,
- 'views': [(id2, 'form'), (id3, 'tree'), (False, 'calendar'), (False, 'graph')],
- 'type': 'ir.actions.act_window',
- 'res_id': phonecall_id,
- 'domain': [('id', '=', phonecall_id)],
- 'search_view_id': res['res_id']
- }
- return res
-
- _columns = {
- 'name' : fields.char('Call summary', size=64, required=True, select=1),
- 'user_id' : fields.many2one('res.users',"Assign To"),
- 'categ_id': fields.many2one('crm.case.categ', 'Category', \
- domain="['|',('section_id','=',False),('section_id','=',section_id),\
- ('object_id.model', '=', 'crm.phonecall')]"),
- 'date': fields.datetime('Date'),
- 'section_id':fields.many2one('crm.case.section','Sales Team'),
- 'action': fields.selection([('schedule','Schedule a call'), ('log','Log a call')], 'Action', required=True),
- 'partner_id' : fields.many2one('res.partner', "Partner"),
- }
+ def action_schedule(self, cr, uid, ids, context=None):
+ value = {}
+ if context is None:
+ context = {}
+ phonecall = self.pool.get('crm.phonecall')
+ phonecall_ids = context and context.get('active_ids') or []
+ for this in self.browse(cr, uid, ids, context=context):
+ phocall_ids = phonecall.schedule_another_phonecall(cr, uid, phonecall_ids, this.date, this.name, \
+ this.user_id and this.user_id.id or False, \
+ this.section_id and this.section_id.id or False, \
+ this.categ_id and this.categ_id.id or False, \
+ action=this.action, context=context)
+ return phonecall.redirect_phonecall_view(cr, uid, phocall_ids[phonecall_ids[0]], context=context)
+
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.
+
"""
res = super(crm_phonecall2phonecall, self).default_get(cr, uid, fields, context=context)
record_id = context and context.get('active_id', False) or False
diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml b/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml
index 794634da4f1..572fbb8b9a1 100644
--- a/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml
+++ b/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml
@@ -22,8 +22,8 @@
-
-
+
+
diff --git a/addons/crm_caldav/__openerp__.py b/addons/crm_caldav/__openerp__.py
index 8f1812862c5..0cbf6e172cd 100644
--- a/addons/crm_caldav/__openerp__.py
+++ b/addons/crm_caldav/__openerp__.py
@@ -22,7 +22,7 @@
{
- 'name': 'Calendar Synchronizing',
+ 'name': 'Meetings Synchronization',
'version': '1.1',
'category': 'Customer Relationship Management',
'complexity': "normal",
diff --git a/addons/crm_caldav/i18n/ar.po b/addons/crm_caldav/i18n/ar.po
new file mode 100644
index 00000000000..7865b4a8797
--- /dev/null
+++ b/addons/crm_caldav/i18n/ar.po
@@ -0,0 +1,46 @@
+# Arabic translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-12-05 08:17+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Arabic \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-12-06 05:28+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
+
+#. module: crm_caldav
+#: model:ir.actions.act_window,name:crm_caldav.action_caldav_browse
+msgid "Caldav Browse"
+msgstr ""
+
+#. module: crm_caldav
+#: model:ir.model,name:crm_caldav.model_crm_meeting
+msgid "Meeting"
+msgstr "إجتماعات"
+
+#. module: crm_caldav
+#: model:ir.module.module,shortdesc:crm_caldav.module_meta_information
+msgid "Extended Module to Add CalDav feature on Meeting"
+msgstr ""
+
+#. module: crm_caldav
+#: model:ir.module.module,description:crm_caldav.module_meta_information
+msgid ""
+"\n"
+" New Features in Meeting:\n"
+" * Share meeting with other calendar clients like sunbird\n"
+msgstr ""
+
+#. module: crm_caldav
+#: model:ir.ui.menu,name:crm_caldav.menu_caldav_browse
+msgid "Synchronyze this calendar"
+msgstr ""
diff --git a/addons/crm_claim/__openerp__.py b/addons/crm_claim/__openerp__.py
index ae493c5dac2..7949ea48376 100644
--- a/addons/crm_claim/__openerp__.py
+++ b/addons/crm_claim/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Claims',
+ 'name': 'Claims Management',
'version': '1.0',
'category': 'Customer Relationship Management',
'complexity': "easy",
@@ -48,7 +48,9 @@ automatically new claims based on incoming emails.
'demo_xml': [
'crm_claim_demo.xml',
],
- 'test': ['test/test_crm_claim.yml'],
+ 'test': ['test/process/claim.yml',
+ 'test/ui/claim_demo.yml'
+ ],
'installable': True,
'active': False,
'certificate' : '00612027414703404749',
diff --git a/addons/crm_claim/crm_claim.py b/addons/crm_claim/crm_claim.py
index b5cd2009698..7875d6a2f1a 100644
--- a/addons/crm_claim/crm_claim.py
+++ b/addons/crm_claim/crm_claim.py
@@ -46,6 +46,7 @@ class crm_claim(crm.crm_case, osv.osv):
_columns = {
'id': fields.integer('ID', readonly=True),
'name': fields.char('Claim Subject', size=128, required=True),
+ 'active': fields.boolean('Active'),
'action_next': fields.char('Next Action', size=200),
'date_action_next': fields.datetime('Next Action Date'),
'description': fields.text('Description'),
@@ -95,6 +96,7 @@ class crm_claim(crm.crm_case, osv.osv):
'date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.case', context=c),
'priority': lambda *a: crm.AVAILABLE_PRIORITIES[2][0],
+ 'active': lambda *a: 1
}
def onchange_partner_id(self, cr, uid, ids, part, email=False):
@@ -129,8 +131,6 @@ class crm_claim(crm.crm_case, osv.osv):
if l.state == 'draft':
message = _("The claim '%s' has been opened.") % l.name
self.log(cr, uid, l.id, message)
- value = {'date_open': time.strftime('%Y-%m-%d %H:%M:%S')}
- self.write(cr, uid, [l.id], value)
stage_id = self.stage_find(cr, uid, l.section_id.id or False, [('sequence','>',0)])
if stage_id:
self.stage_set(cr, uid, [l.id], stage_id)
diff --git a/addons/crm_claim/crm_claim_demo.xml b/addons/crm_claim/crm_claim_demo.xml
index 0f8488628b5..8279e04eb6f 100644
--- a/addons/crm_claim/crm_claim_demo.xml
+++ b/addons/crm_claim/crm_claim_demo.xml
@@ -15,8 +15,6 @@
-
-
@@ -31,8 +29,6 @@
-
-
@@ -47,8 +43,6 @@
-
-
@@ -63,8 +57,6 @@
-
-
@@ -79,8 +71,6 @@
-
-
@@ -88,14 +78,12 @@
-
-
@@ -104,14 +92,12 @@
-
-
diff --git a/addons/crm_claim/crm_claim_view.xml b/addons/crm_claim/crm_claim_view.xml
index 7ec18da18eb..08237d06094 100644
--- a/addons/crm_claim/crm_claim_view.xml
+++ b/addons/crm_claim/crm_claim_view.xml
@@ -151,7 +151,7 @@
-
+
@@ -161,32 +161,6 @@
context="{'mail.compose.message.mode':'reply'}"
icon="terp-mail-replied" type="action" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- crm.new.mass.forward.mail.form
- crm.lead.mass.forward.to.partner
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/addons/crm_profiling/__openerp__.py b/addons/crm_profiling/__openerp__.py
index 656f8360f0b..fdc85ba3d4d 100644
--- a/addons/crm_profiling/__openerp__.py
+++ b/addons/crm_profiling/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Profiling Tools',
+ 'name': 'Customer Profiling',
'version': '1.3',
'category': 'Marketing',
'complexity': "easy",
@@ -39,9 +39,11 @@ It also has been merged with the earlier CRM & SRM segmentation tool because the
'website': 'http://www.openerp.com',
'depends': ['base', 'crm'],
'init_xml': [],
- 'update_xml': ['security/ir.model.access.csv', 'crm_profiling_view.xml'],
+ 'update_xml': ['security/ir.model.access.csv', 'wizard/open_questionnaire_view.xml', 'crm_profiling_view.xml'],
'demo_xml': ['crm_profiling_demo.xml'],
- 'test': ['test/test_crm_profiling.yml'],
+ 'test': [
+ #'test/process/profiling.yml', #TODO:It's not debuging because problem to write data for open.questionnaire from partner section.
+ ],
'installable': True,
'active': False,
'certificate': '0033984979005',
diff --git a/addons/crm_profiling/crm_profiling.py b/addons/crm_profiling/crm_profiling.py
index 59137966da0..587ddbe0b52 100644
--- a/addons/crm_profiling/crm_profiling.py
+++ b/addons/crm_profiling/crm_profiling.py
@@ -159,30 +159,6 @@ class questionnaire(osv.osv):
_name="crm_profiling.questionnaire"
_description= "Questionnaire"
- def build_form(self, cr, uid, data, context=None):
- """
- @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 data: Get Data
- @param context: A standard dictionary for contextual values """
-
- query = """
- select name, id
- from crm_profiling_question
- where id in ( select question from profile_questionnaire_quest_rel where questionnaire = %s)"""
- res = cr.execute(query, (data['form']['questionnaire_name'],))
- result = cr.fetchall()
- quest_fields={}
- quest_form='''
-
Invoiced to[[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.name or '']]
- [[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.street or '']]
- [[ (o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.street2) or removeParentNode('para')]]
- [[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.zip or '']] [[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.city or '' ]]
- [[ (o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.state_id and o.sale_id.partner_invoice_id.state_id.name) or removeParentNode('para') ]]
- [[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.country_id and o.sale_id.partner_invoice_id.country_id.name or '']]
+ [[ o.sale_id and o.sale_id.partner_invoice_id and display_address(o.sale_id.partner_invoice_id) ]]
[[ o.address_id and o.address_id.partner_id and o.address_id.partner_id.name or '' ]]
- [[ o.address_id and o.address_id.street or '']]
- [[ o.address_id and o.address_id.street2 or removeParentNode('para')]]
- [[ o.address_id and o.address_id.zip or '']] [[ o.address_id and o.address_id.city or '']]
- [[ (o.address_id and o.address_id.state_id and o.address_id.state_id.name) or removeParentNode('para') ]]
- [[ o.address_id and o.address_id.country_id and o.address_id.country_id.name or '']]
+ [[ o.address_id and o.address_id and display_address(o.address_id) ]]
- Conference on ERP Buisness
@@ -92,7 +94,7 @@
Thanks for registration. The conference will begin at 2 PM and will be given by Mr. Pinckaers.
-
+
@@ -126,5 +128,16 @@
+
+
+
+
+ 5
+ Ticket for Conference
+ 20
+
+
+
+
+
-
+
+
+
+ Import SugarCRM
+ import.sugarcrm
+ form
+ tree,form
+
+ new
+
+
+
-
+
-
diff --git a/addons/import_sugarcrm/security/ir.model.access.csv b/addons/import_sugarcrm/security/ir.model.access.csv
new file mode 100644
index 00000000000..5aadbf32950
--- /dev/null
+++ b/addons/import_sugarcrm/security/ir.model.access.csv
@@ -0,0 +1,3 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_import_sugarcrm_system,import.sugarcrm system,model_import_sugarcrm,base.group_system,1,1,1,1
+access_import_message_system,import.message system,model_import_message,base.group_system,1,1,1,1
diff --git a/addons/knowledge/__openerp__.py b/addons/knowledge/__openerp__.py
index 2ca58e9861f..e37419ffcaf 100644
--- a/addons/knowledge/__openerp__.py
+++ b/addons/knowledge/__openerp__.py
@@ -21,11 +21,11 @@
{
- "name" : "Knowledge Management System",
+ "name" : "Document Management System",
"version" : "1.0",
"depends" : ["base","base_setup"],
"author" : "OpenERP SA",
- "category": 'Hidden',
+ 'category': 'Hidden/Dependency',
'complexity': "easy",
"description": """
Installer for knowledge-based Hidden.
diff --git a/addons/knowledge/security/ir.model.access.csv b/addons/knowledge/security/ir.model.access.csv
index 7a057fcfcbe..34255019afe 100644
--- a/addons/knowledge/security/ir.model.access.csv
+++ b/addons/knowledge/security/ir.model.access.csv
@@ -1,4 +1,3 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_ir_attachment_sale_manager","ir_attachment manager","base.model_ir_attachment","base.group_sale_manager",1,1,1,1
-"access_ir_attachment_partner_manager","ir_attachment_partner manager","base.model_ir_attachment","base.group_partner_manager",1,1,1,1
-
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_ir_attachment_sale_manager,ir_attachment manager,base.model_ir_attachment,base.group_sale_manager,1,1,1,1
+access_ir_attachment_partner_manager,ir_attachment_partner manager,base.model_ir_attachment,base.group_partner_manager,1,1,1,1
diff --git a/addons/knowledge/security/knowledge_security.xml b/addons/knowledge/security/knowledge_security.xml
index b4c7bb99c1b..560fdce0506 100644
--- a/addons/knowledge/security/knowledge_security.xml
+++ b/addons/knowledge/security/knowledge_security.xml
@@ -1,13 +1,11 @@
-
- Sales / Manager
-
-
- Knowledge / User
-
+
+ User
+
+
diff --git a/addons/l10n_at/__openerp__.py b/addons/l10n_at/__openerp__.py
index 570841374d8..cd96d4ee9dc 100644
--- a/addons/l10n_at/__openerp__.py
+++ b/addons/l10n_at/__openerp__.py
@@ -20,10 +20,10 @@
##############################################################################
{
- "name" : "Austria - Chart of Accounts",
+ "name" : "Austria - Accounting",
"version" : "1.0",
"author" : "conexus.at",
- "website" : "http://www.conexus.at",
+ "website" : "http://www.conexus.at",
"category" : "Localization/Account Charts",
"depends" : ["account_chart", 'base_vat'],
"description": "This module provides the standard Accounting Chart for Austria which is based on the Template from BMF.gv.at. Please keep in mind that you should review and adapt it with your Accountant, before using it in a live Environment.",
diff --git a/addons/l10n_be/__openerp__.py b/addons/l10n_be/__openerp__.py
index d4300186660..c8f44493597 100644
--- a/addons/l10n_be/__openerp__.py
+++ b/addons/l10n_be/__openerp__.py
@@ -18,7 +18,7 @@
# along with this program. If not, see .
#
##############################################################################
-{ 'name': 'Belgium - Plan Comptable Minimum Normalise',
+{ 'name': 'Belgium - Accounting',
'version': '1.1',
'category': 'Localization/Account Charts',
'description': """
diff --git a/addons/l10n_be/l10n_be_wizard.yml b/addons/l10n_be/l10n_be_wizard.yml
index 0e9b04a6cf2..5acc10c629f 100644
--- a/addons/l10n_be/l10n_be_wizard.yml
+++ b/addons/l10n_be/l10n_be_wizard.yml
@@ -5,16 +5,15 @@
type: automatic
-
!python {model: ir.actions.todo}: |
- if self.browse(cr, uid, ref('l10n_be.config_call_account_template')).state=='open':
+ install_todo = self.browse(cr, uid, ref('l10n_be.config_call_account_template'))
+ if install_todo.state == 'open':
wiz = self.pool.get('wizard.multi.charts.accounts')
values = {
'chart_template_id': ref('l10n_be.l10nbe_chart_template')
}
values.update(
- wiz.onchange_chart_template_id(cr, uid, False, ref('l10n_be.l10nbe_chart_template')).get('values', {})
+ wiz.onchange_chart_template_id(cr, uid, False, ref('l10n_be.l10nbe_chart_template')).get('value', {})
)
wiz_id = wiz.create(cr, uid, values)
wiz.execute(cr, uid, [wiz_id])
- self.write(cr, uid, [ref('l10n_be.config_call_account_template')], {
- 'state': 'done'
- })
+ install_todo.write({'state':'done'})
diff --git a/addons/l10n_be/security/ir.model.access.csv b/addons/l10n_be/security/ir.model.access.csv
index 0343f29f43a..4a08a4aa60d 100644
--- a/addons/l10n_be/security/ir.model.access.csv
+++ b/addons/l10n_be/security/ir.model.access.csv
@@ -1 +1 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
diff --git a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
index 77d8515d78b..138f6f668f8 100644
--- a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
+++ b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
@@ -70,9 +70,10 @@ class l10n_be_vat_declaration(osv.osv_memory):
obj_company = data_tax.tax_code_id.company_id
else:
obj_company = obj_user.browse(cr, uid, uid, context=context).company_id
- vat_no = obj_company.partner_id.vat.replace(' ','').upper()
+ vat_no = obj_company.partner_id.vat
if not vat_no:
raise osv.except_osv(_('Data Insufficient'), _('No VAT Number Associated with Main Company!'))
+ vat_no = vat_no.replace(' ','').upper()
tax_code_ids = obj_tax_code.search(cr, uid, [], context=context)
ctx = context.copy()
diff --git a/addons/l10n_be_hr_payroll/__openerp__.py b/addons/l10n_be_hr_payroll/__openerp__.py
index d667cdfa126..488345869b2 100644
--- a/addons/l10n_be_hr_payroll/__openerp__.py
+++ b/addons/l10n_be_hr_payroll/__openerp__.py
@@ -19,8 +19,8 @@
#
##############################################################################
{
- 'name': 'Belgian Payroll Rules',
- 'category': 'Localization/Payroll',
+ 'name': 'Belgium - Payroll',
+ 'category': 'Localization',
'author': 'OpenERP SA',
'depends': ['hr_payroll'],
'version': '1.0',
diff --git a/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml b/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml
index 799c544a0c8..5acb2729abb 100644
--- a/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml
+++ b/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml
@@ -165,7 +165,7 @@
carfix15
- none
+ none
@@ -266,7 +266,7 @@
165pythonresult = bool(contract.insurance_employee_deduction)
- result = -contract.insurance_employee_deduction
+ result = -contract.insurance_employee_deduction
diff --git a/addons/l10n_be_invoice_bba/__openerp__.py b/addons/l10n_be_invoice_bba/__openerp__.py
index c18f49817b5..2fde058b4be 100644
--- a/addons/l10n_be_invoice_bba/__openerp__.py
+++ b/addons/l10n_be_invoice_bba/__openerp__.py
@@ -21,11 +21,11 @@
##############################################################################
{
- 'name': 'Add support for Belgian structured communication to Invoices',
+ 'name': 'Belgium - Structured Communication',
'version': '1.2',
'license': 'AGPL-3',
'author': 'Noviat',
- 'category' : 'Localization/Accounting',
+ 'category' : 'Localization',
'description': """
Belgian localisation for in- and outgoing invoices (prereq to account_coda):
diff --git a/addons/l10n_br/__openerp__.py b/addons/l10n_br/__openerp__.py
index 86ff4cd4e83..909d4f53600 100644
--- a/addons/l10n_br/__openerp__.py
+++ b/addons/l10n_br/__openerp__.py
@@ -19,7 +19,7 @@
#################################################################################
{
- 'name': 'Brazilian Localization',
+ 'name': 'Brazilian - Accounting',
'category': 'Localization/Account Charts',
'description': """
Base module for the Brazilian localization
diff --git a/addons/l10n_br/data/account_tax_template.xml b/addons/l10n_br/data/account_tax_template.xml
index 58f860e0d90..fcdcb4d30e6 100644
--- a/addons/l10n_br/data/account_tax_template.xml
+++ b/addons/l10n_br/data/account_tax_template.xml
@@ -5,7 +5,6 @@
IPIIPI
- vat0.00
@@ -21,7 +20,6 @@
IPI 2%IPI 2%
- vat0.02
@@ -37,7 +35,6 @@
IPI 3%IPI 3%
- vat0.03
@@ -53,7 +50,6 @@
IPI 4%IPI 4%
- vat0.04
@@ -69,7 +65,6 @@
IPI 5%IPI 5%
- vat0.05
@@ -85,7 +80,6 @@
IPI 7%IPI 7%
- vat0.07
@@ -101,7 +95,6 @@
IPI 8%IPI 8%
- vat0.08
@@ -117,7 +110,6 @@
IPI 10%IPI 10%
- vat0.10
@@ -133,7 +125,6 @@
IPI 12%IPI 12%
- vat0.12
@@ -149,7 +140,6 @@
IPI 13%IPI 13%
- vat0.13
@@ -165,7 +155,6 @@
IPI 15%IPI 15%
- vat0.15
@@ -181,7 +170,6 @@
IPI 16%IPI 16%
- vat0.16
@@ -197,7 +185,6 @@
IPI 18%IPI 18%
- vat0.18
@@ -213,7 +200,6 @@
IPI 20%IPI 20%
- vat0.20
@@ -229,7 +215,6 @@
IPI 22%IPI 22%
- vat0.22
@@ -245,7 +230,6 @@
IPI 25%IPI 25%
- vat0.25
@@ -261,7 +245,6 @@
IPI 27%IPI 27%
- vat0.27
@@ -277,7 +260,6 @@
IPI 30%IPI 30%
- vat0.30
@@ -293,7 +275,6 @@
IPI 35%IPI 35%
- vat0.35
@@ -309,7 +290,6 @@
IPI 40%IPI 40%
- vat0.40
@@ -325,7 +305,6 @@
IPI 42%IPI 42%
- vat0.42
@@ -341,7 +320,6 @@
IPI 45%IPI 45%
- vat0.45
@@ -357,7 +335,6 @@
IPI 50%IPI 50%
- vat0.50
@@ -373,7 +350,6 @@
IPI 60%IPI 60%
- vat0.60
@@ -389,7 +365,6 @@
IPI 330%IPI 330%
- vat3.30
@@ -405,7 +380,6 @@
ICMS InternoICMS Interno
- vat0.00
@@ -421,7 +395,6 @@
ICMS ExternoICMS Externo
- vat0.00
@@ -437,7 +410,6 @@
ICMS SubistICMS Subist
- vat0.00
@@ -451,7 +423,6 @@
ICMS Externo 7%ICMS Externo 7%
- vat0.07
@@ -467,7 +438,6 @@
ICMS Externo 12%ICMS Externo 12%
- vat0.12
@@ -483,7 +453,6 @@
ICMS Interno 19%ICMS Interno 19%
- vat0.19
@@ -499,7 +468,6 @@
ICMS Interno 26%ICMS Interno 26%
- vat0.26
@@ -515,7 +483,6 @@
PISPIS
- vat0.00
@@ -531,7 +498,6 @@
PIS 0,65%PIS 0,65%
- vat0.0065
@@ -547,7 +513,6 @@
COFINSCOFINS
- vat0.00
@@ -563,7 +528,6 @@
COFINS 3%COFINS 3%
- vat0.03
@@ -579,7 +543,6 @@
IRPJIRPJ
- vat0.00
@@ -593,7 +556,6 @@
IRIR
- vat0.00
@@ -607,7 +569,6 @@
ISSISS
- vat0.00
@@ -621,7 +582,6 @@
ISS 1%ISS 1%
- vat0.01
@@ -635,7 +595,6 @@
ISS 2%ISS 2%
- vat0.02
@@ -649,7 +608,6 @@
ISS 3%ISS 3%
- vat0.03
@@ -663,7 +621,6 @@
ISS 4%ISS 4%
- vat0.04
@@ -677,7 +634,6 @@
ISS 5%ISS 5%
- vat0.05
@@ -691,7 +647,6 @@
CSLLCSLL
- vat0.00
@@ -703,4 +658,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_br/data/l10n_br_account_chart_template.xml b/addons/l10n_br/data/l10n_br_account_chart_template.xml
index 9dbcb4d558f..89ccee11edc 100644
--- a/addons/l10n_br/data/l10n_br_account_chart_template.xml
+++ b/addons/l10n_br/data/l10n_br_account_chart_template.xml
@@ -19,7 +19,7 @@
This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.
open
- onskip
+ once
diff --git a/addons/l10n_br/security/ir.model.access.csv b/addons/l10n_br/security/ir.model.access.csv
index 2a1ecd6910f..9381bd449b3 100644
--- a/addons/l10n_br/security/ir.model.access.csv
+++ b/addons/l10n_br/security/ir.model.access.csv
@@ -1,3 +1,3 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"l10n_br_account_cst","l10n_br_account.cst","model_l10n_br_account_cst","account.group_account_invoice",1,1,1,1
-"l10n_br_account_cst_template","l10n_br_account.cst.template","model_l10n_br_account_cst_template","account.group_account_invoice",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+l10n_br_account_cst,l10n_br_account.cst,model_l10n_br_account_cst,account.group_account_invoice,1,1,1,1
+l10n_br_account_cst_template,l10n_br_account.cst.template,model_l10n_br_account_cst_template,account.group_account_invoice,1,1,1,1
diff --git a/addons/l10n_ca/__openerp__.py b/addons/l10n_ca/__openerp__.py
index fbfadbf9755..800ca7937eb 100644
--- a/addons/l10n_ca/__openerp__.py
+++ b/addons/l10n_ca/__openerp__.py
@@ -19,7 +19,7 @@
#
##############################################################################
{
- "name" : "Canada - English and French - Canadian Chart of Accounts",
+ "name" : "Canada - Accounting",
"version" : "1.0",
"author" : "Savoir-faire Linux",
"website" : "http://www.savoirfairelinux.com",
diff --git a/addons/l10n_ch/__openerp__.py b/addons/l10n_ch/__openerp__.py
index cabd15e42de..b2363ca051b 100644
--- a/addons/l10n_ch/__openerp__.py
+++ b/addons/l10n_ch/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name" : "Switzerland - localization with 2011 taxes",
+ "name" : "Switzerland - Accounting",
"description" : """
Swiss localisation :
- DTA generation for a lot of payment types
@@ -99,8 +99,9 @@ TODO :
'test' : [
'test/l10n_ch_report.yml',
'test/l10n_ch_dta.yml',
- 'test/l10n_ch_v11.yml',
- 'test/l10n_ch_v11_part.yml',
+ #TODO: uncomment the 2 following tests once they are fixed
+ #'test/l10n_ch_v11.yml',
+ #'test/l10n_ch_v11_part.yml',
],
"active": False,
"installable": True,
diff --git a/addons/l10n_ch/bank_view.xml b/addons/l10n_ch/bank_view.xml
index 705e2d63ef4..e23be1bb6ac 100644
--- a/addons/l10n_ch/bank_view.xml
+++ b/addons/l10n_ch/bank_view.xml
@@ -6,7 +6,6 @@
res.bank.formres.bankform
-
@@ -23,7 +22,6 @@
res.bank.treeres.banktree
-
@@ -40,7 +38,6 @@
res.partner_bank.form.hide.f1res.partnerform
-
@@ -51,7 +48,6 @@
res.partner_bank.form.hide.f2res.partnerform
-
@@ -63,7 +59,6 @@
res.partner_bank.form.hide.f2res.partnerform
-
@@ -94,7 +89,6 @@
res.partner_bank.form.hide.acc_number.frominvoiceres.partner.bankform
-
@@ -106,7 +100,6 @@
res.partner_bank.form.hide.bank.frominvoiceres.partner.bankform
-
@@ -118,7 +111,6 @@
res.partner_bank.form.hide.frominvoiceres.partner.bankform
-
diff --git a/addons/l10n_ch/security/ir.model.access.csv b/addons/l10n_ch/security/ir.model.access.csv
index 0343f29f43a..4a08a4aa60d 100644
--- a/addons/l10n_ch/security/ir.model.access.csv
+++ b/addons/l10n_ch/security/ir.model.access.csv
@@ -1 +1 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
diff --git a/addons/l10n_ch/sterchi_chart/account.xml b/addons/l10n_ch/sterchi_chart/account.xml
index ded5f542fe5..8fdd29fe8a8 100644
--- a/addons/l10n_ch/sterchi_chart/account.xml
+++ b/addons/l10n_ch/sterchi_chart/account.xml
@@ -177,14 +177,12 @@
Bilan : Debiteursreceivable
- TrueunreconcilednoneBilan : Fournisseurspayable
- Trueunreconcilednone
diff --git a/addons/l10n_ch/wizard/bvr_import.py b/addons/l10n_ch/wizard/bvr_import.py
index 31c1e9ab96f..e98053513cd 100644
--- a/addons/l10n_ch/wizard/bvr_import.py
+++ b/addons/l10n_ch/wizard/bvr_import.py
@@ -168,7 +168,7 @@ def _import(self, cursor, user, data, context=None):
# line2reconcile = line.id
account_id = line.account_id.id
break
- result = voucher_obj.onchange_partner_id(cursor, user, [], partner_id, journal_id=statement.journal_id.id, price=abs(record['amount']), currency_id= statement.currency.id, ttype='receipt', date=statement.date ,context=context)
+ result = voucher_obj.onchange_partner_id(cursor, user, [], partner_id, journal_id=statement.journal_id.id, amount=abs(record['amount']), currency_id= statement.currency.id, ttype='receipt', date=statement.date ,context=context)
voucher_res = { 'type': 'receipt' ,
'name': values['name'],
diff --git a/addons/l10n_cn/__openerp__.py b/addons/l10n_cn/__openerp__.py
index 6a063505275..24823f96eb7 100644
--- a/addons/l10n_cn/__openerp__.py
+++ b/addons/l10n_cn/__openerp__.py
@@ -18,7 +18,7 @@
#
##############################################################################
{
- "name" : "中国会计科目表",
+ "name" : "中国会计科目表 - Accounting",
"version" : "1.0",
"category": "Localization/Account Charts",
"author" : "openerp-china.org",
diff --git a/addons/l10n_cr/__openerp__.py b/addons/l10n_cr/__openerp__.py
index 5fc4d80d7f7..6052115df3b 100644
--- a/addons/l10n_cr/__openerp__.py
+++ b/addons/l10n_cr/__openerp__.py
@@ -33,7 +33,7 @@
##############################################################################
{
- 'name': 'Costa Rica - Chart of Accounts',
+ 'name': 'Costa Rica - Accounting',
'version': '0.1',
'url': 'http://launchpad.net/openerp-costa-rica',
'author': 'ClearCorp S.A.',
diff --git a/addons/l10n_cr/data/account_tax_template.xml b/addons/l10n_cr/data/account_tax_template.xml
index 7626b25b5ad..42b5ca03a13 100644
--- a/addons/l10n_cr/data/account_tax_template.xml
+++ b/addons/l10n_cr/data/account_tax_template.xml
@@ -11,7 +11,6 @@
1013percent
-
alltrue
@@ -34,7 +33,6 @@
1013percent
-
alltrue
diff --git a/addons/l10n_de/__openerp__.py b/addons/l10n_de/__openerp__.py
index 646836eba2a..232a1abb3ad 100644
--- a/addons/l10n_de/__openerp__.py
+++ b/addons/l10n_de/__openerp__.py
@@ -121,7 +121,7 @@
{
- "name" : "Deutschland - SKR03 and SKR04",
+ "name" : "Deutschland - Accounting",
"version" : "1.0",
"author" : "openbig.org",
"website" : "http://www.openbig.org",
diff --git a/addons/l10n_ec/__openerp__.py b/addons/l10n_ec/__openerp__.py
index f3dbf88289b..9dd81606036 100644
--- a/addons/l10n_ec/__openerp__.py
+++ b/addons/l10n_ec/__openerp__.py
@@ -18,7 +18,7 @@
#
##############################################################################
{
- 'name': 'Ecuador - Accounting Chart',
+ 'name': 'Ecuador - Accounting',
'version': '1.1',
'category': 'Localization/Account Charts',
'description': """
diff --git a/addons/l10n_es/__openerp__.py b/addons/l10n_es/__openerp__.py
index e2f5ad3402d..4da526f4b76 100644
--- a/addons/l10n_es/__openerp__.py
+++ b/addons/l10n_es/__openerp__.py
@@ -22,7 +22,7 @@
##############################################################################
{
- "name" : "Spanish Charts of Accounts (PGCE 2008)",
+ "name" : "Spanish - Accounting (PGCE 2008)",
"version" : "3.0",
"author" : "Spanish Localization Team",
'website' : 'https://launchpad.net/openerp-spain',
diff --git a/addons/l10n_fr/__openerp__.py b/addons/l10n_fr/__openerp__.py
index 1bcb659c322..d4b4f91d911 100644
--- a/addons/l10n_fr/__openerp__.py
+++ b/addons/l10n_fr/__openerp__.py
@@ -26,7 +26,7 @@
#
##############################################################################
{
- "name" : "France - Plan Comptable Général",
+ "name" : "France - Accounting",
"version" : "1.0",
"author" : "OpenERP SA",
"website": "http://www.openerp.com",
@@ -37,7 +37,7 @@ This is the module to manage the accounting chart for France in OpenERP.
Credits: Sistheo Zeekom CrysaLEAD
""",
- "depends" : ['base', 'account', 'account_chart', 'base_vat'],
+ "depends" : ['base', 'account', 'account_chart', 'base_vat', 'l10n_fr_rib'],
"init_xml" : [],
"update_xml" : [
"fr_report_demo.xml",
diff --git a/addons/l10n_fr/security/ir.model.access.csv b/addons/l10n_fr/security/ir.model.access.csv
index 13405e7ce76..3642d709040 100644
--- a/addons/l10n_fr/security/ir.model.access.csv
+++ b/addons/l10n_fr/security/ir.model.access.csv
@@ -1,5 +1,3 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_l10n_fr_report_manager","l10n_fr.report account manager","model_l10n_fr_report","account.group_account_manager",1,1,1,1
-"access_l10n_fr_report_user","l10n_fr_report account user","model_l10n_fr_report","account.group_account_user",1,1,1,1
-"access_l10n_fr_line_manager","l10n_fr_line account manager","model_l10n_fr_line","account.group_account_manager",1,1,1,1
-"access_l10n_fr_line_user","l10n_fr.l10n_fr_line_account user","model_l10n_fr_line","account.group_account_user",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_l10n_fr_report_user,l10n_fr_report account user,model_l10n_fr_report,account.group_account_user,1,1,1,1
+access_l10n_fr_line_user,l10n_fr.l10n_fr_line_account user,model_l10n_fr_line,account.group_account_user,1,1,1,1
diff --git a/addons/l10n_fr_rib/__init__.py b/addons/l10n_fr_rib/__init__.py
new file mode 100644
index 00000000000..a061d3f40a2
--- /dev/null
+++ b/addons/l10n_fr_rib/__init__.py
@@ -0,0 +1,25 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 Numérigraphe SARL.
+#
+# 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 .
+#
+##############################################################################
+
+import bank
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+
diff --git a/addons/l10n_fr_rib/__openerp__.py b/addons/l10n_fr_rib/__openerp__.py
new file mode 100644
index 00000000000..072f8f5c1ac
--- /dev/null
+++ b/addons/l10n_fr_rib/__openerp__.py
@@ -0,0 +1,49 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 Numérigraphe SARL.
+#
+# 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 .
+#
+##############################################################################
+
+{
+ 'name': 'French RIB Bank Details',
+ 'version': '1.0',
+ "category": 'Hidden/Dependency',
+ 'description': '''
+This module lets users enter the banking details of Partners in the RIB format (French standard for bank accounts details).
+RIB Bank Accounts can be entered in the "Accounting" tab of the Partner form by specifying the account type "RIB". The four standard RIB fields will then become mandatory:
+- Bank Code
+- Office Code
+- Account number
+- RIB key
+As a safety measure, OpenERP will check the RIB key whenever a RIB is saved, and will refuse to record the data if the key is incorrect. Please bear in mind that this can only happen when the user presses the "save" button, for example on the Partner Form.
+Since each bank account may relate to a Bank, users may enter the RIB Bank Code in the Bank form - it will the pre-fill the Bank Code on the RIB when they select the Bank.
+To make this easier, this module will also let users find Banks using their RIB code.
+
+The module base_iban can be a useful addition to this module, because French banks are now progressively adopting the international IBAN format instead of the RIB format.
+The RIB and IBAN codes for a single account can be entered by recording two Bank Accounts in OpenERP: the first with the type "RIB", the second with the type "IBAN".
+''',
+ 'author' : u'Numérigraphe SARL',
+ 'depends': ['base', 'account'],
+ 'init_xml': ['bank_data.xml', ],
+ 'update_xml': ['bank_view.xml', ],
+ 'installable': True,
+ 'certificate': '003407950790',
+ 'active': False,
+}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_fr_rib/bank.py b/addons/l10n_fr_rib/bank.py
new file mode 100644
index 00000000000..03f71f60dee
--- /dev/null
+++ b/addons/l10n_fr_rib/bank.py
@@ -0,0 +1,118 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 Numérigraphe SARL.
+#
+# 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 .
+#
+##############################################################################
+
+import netsvc
+from osv import fields, osv
+from tools.translate import _
+
+class res_partner_bank(osv.osv):
+ """Add fields and behavior for French RIB"""
+ _inherit = "res.partner.bank"
+
+ def _check_key(self, cr, uid, ids):
+ """Check the RIB key"""
+ for bank_acc in self.browse(cr, uid, ids):
+ # Ignore the accounts of type other than rib
+ if bank_acc.state !='rib':
+ continue
+ # Fail if the needed values are empty of too short
+ if (not bank_acc.bank_code
+ or len(bank_acc.bank_code) != 5
+ or not bank_acc.office or len(bank_acc.office) != 5
+ or not bank_acc.acc_number or len(bank_acc.acc_number) != 11
+ or not bank_acc.key or len(bank_acc.key) != 2):
+ return False
+ # Get the rib data (without the key)
+ rib = "%s%s%s" % (bank_acc.bank_code, bank_acc.office,
+ bank_acc.acc_number)
+ # Translate letters into numbers according to a specific table
+ # (notice how s -> 2)
+ table = dict((ord(a), b) for a, b in zip(
+ u'abcdefghijklmnopqrstuvwxyz', u'12345678912345678923456789'))
+ rib = rib.lower().translate(table)
+ # compute the key
+ key = 97 - (100 * int(rib)) % 97
+ if int(bank_acc.key) != key:
+ return False
+ return True
+
+ def onchange_bank_id(self, cr, uid, ids, bank_id, context=None):
+ """Change the bank code"""
+ result = super(res_partner_bank, self).onchange_bank_id(cr, uid, ids, bank_id,
+ context=context)
+ if bank_id:
+ value = result.setdefault('value', {})
+ bank = self.pool.get('res.bank').browse(cr, uid, bank_id,
+ context=context)
+ value['bank_code'] = bank.rib_code
+ return result
+
+ _columns = {
+ 'bank_code': fields.char('Bank Code', size=64, readonly=True,),
+ 'office': fields.char('Office Code', size=5, readonly=True,),
+ 'key': fields.char('Key', size=2, readonly=True,
+ help="The key is a number allowing to check the "
+ "correctness of the other codes."),
+ }
+
+ def _construct_constraint_msg(self, cr, uid, ids, context=None):
+ """Quote the data in the warning message"""
+ # Only process the first id
+ if type(ids) not in (int, long):
+ id = ids[0]
+ rib = self.browse(cr, uid, id, context=context)
+ if rib:
+ return (_("\nThe RIB key %s does not correspond to the other "
+ "codes: %s %s %s.") %
+ (rib.key,
+ rib.bank_code,
+ rib.office,
+ rib.acc_number) )
+
+ _constraints = [(_check_key,
+ _construct_constraint_msg,
+ ["key"])]
+
+res_partner_bank()
+
+class res_bank(osv.osv):
+ """Add the bank code to make it easier to enter RIB data"""
+ _inherit = 'res.bank'
+
+ def name_search(self, cr, user, name, args=None, operator='ilike',
+ context=None, limit=80):
+ """Search by bank code in addition to the standard search"""
+ # Get the standard results
+ results = super(res_bank, self).name_search(cr, user,
+ name, args=args ,operator=operator, context=context, limit=limit)
+ # Get additional results using the RIB code
+ ids = self.search(cr, user, [('rib_code', operator, name)],
+ limit=limit, context=context)
+ # Merge the results
+ results = list(set(results + self.name_get(cr, user, ids, context)))
+ return results
+
+ _columns = {
+ 'rib_code': fields.char('RIB Bank Code', size=64),
+ }
+res_bank()
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+
diff --git a/addons/l10n_fr_rib/bank_data.xml b/addons/l10n_fr_rib/bank_data.xml
new file mode 100644
index 00000000000..1dc9f4c88fd
--- /dev/null
+++ b/addons/l10n_fr_rib/bank_data.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+ RIB Bank Details
+ rib
+
+
+
+ bank_code
+
+
+
+
+
+ office
+
+
+
+
+
+ acc_number
+
+
+
+ 11
+
+
+ key
+
+
+
+
+
+ bank_bic
+
+
+
+
+
diff --git a/addons/l10n_fr_rib/bank_view.xml b/addons/l10n_fr_rib/bank_view.xml
new file mode 100644
index 00000000000..56eb8393aef
--- /dev/null
+++ b/addons/l10n_fr_rib/bank_view.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+ res.partner.form.rib1.inherit
+ res.partner
+
+ form
+
+
+
+
+
+
+
+
+
+
+ res.partner.form.rib2.inherit
+ res.partner
+
+ form
+
+
+
+
+
+
+
+
+
+ res.bank.form.rib.inherit
+ res.bank
+
+ form
+
+
+
+
+
+
+
+
diff --git a/addons/l10n_fr_rib/i18n/fr.po b/addons/l10n_fr_rib/i18n/fr.po
new file mode 100644
index 00000000000..4057dafb803
--- /dev/null
+++ b/addons/l10n_fr_rib/i18n/fr.po
@@ -0,0 +1,116 @@
+# Translation of OpenERP Server.
+# This file contains the translation of the following modules:
+# * l10n_fr_rib
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenERP Server 6.1beta\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-11-21 12:37+0000\n"
+"PO-Revision-Date: 2011-11-21 12:37+0000\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: l10n_fr_rib
+#: constraint:res.partner.bank:0
+msgid "\n"
+"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments"
+msgstr "\n"
+"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments"
+
+#. module: l10n_fr_rib
+#: model:ir.model,name:l10n_fr_rib.model_res_partner_bank
+msgid "Bank Accounts"
+msgstr "Comptes bancaires"
+
+#. module: l10n_fr_rib
+#: field:res.partner.bank,bank_code:0
+msgid "Bank Code"
+msgstr "Code banque"
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bic_field
+msgid "bank_bic"
+msgstr "bank_bic"
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_office_field
+msgid "office"
+msgstr "Agence"
+
+#. module: l10n_fr_rib
+#: field:res.bank,rib_code:0
+msgid "RIB Bank Code"
+msgstr "Code banque RIB"
+
+#. module: l10n_fr_rib
+#: model:ir.module.module,description:l10n_fr_rib.module_meta_information
+msgid "\n"
+"This module installs the base for RIB bank accounts (French standard for bank accounts). \n"
+"To make it easier to enter RIB data, it will also allow to search for banks by code."
+msgstr "\n"
+"Ce module installe la base pour les comptes bancaires RIB (norme française pour les n° de compte). \n"
+"Pour faciliter la saisie des RIBs, il permet aussi de chercher les banques par code."
+
+#. module: l10n_fr_rib
+#: field:res.partner.bank,office:0
+msgid "Office Code"
+msgstr "Code agence"
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type,name:l10n_fr_rib.bank_rib
+msgid "RIB Bank Details"
+msgstr "Relevé d'identité bancaire (RIB)"
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_code_field
+msgid "bank_code"
+msgstr "bank_code"
+
+#. module: l10n_fr_rib
+#: code:addons/l10n_fr_rib/bank.py:109
+#, python-format
+msgid "\n"
+"The RIB key %s does not correspond to the other codes: %s %s %s."
+msgstr "\n"
+"La clé RIB %s ne correspond pas aux autres codes : %s %s %s."
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field
+msgid "key"
+msgstr "key"
+
+#. module: l10n_fr_rib
+#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information
+msgid "French RIB Bank Details"
+msgstr "Relevés d'identité bancaire français (RIB)"
+
+#. module: l10n_fr_rib
+#: help:res.partner.bank,key:0
+msgid "The key is a number allowing to check the correctness of the other codes."
+msgstr "La clé est un nombre permettant de vérifier que les autres codes sont corrects."
+
+#. module: l10n_fr_rib
+#: field:res.partner.bank,key:0
+msgid "Key"
+msgstr "Clé"
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type,format_layout:l10n_fr_rib.bank_rib
+msgid "%(bank_name)s: %(acc_number)s"
+msgstr "%(bank_name)s: %(acc_number)s"
+
+#. module: l10n_fr_rib
+#: model:ir.model,name:l10n_fr_rib.model_res_bank
+msgid "Bank"
+msgstr "Banque"
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.bank_acc_number_field
+msgid "acc_number"
+msgstr "acc_number"
+
diff --git a/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot b/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot
new file mode 100644
index 00000000000..5db922fe20f
--- /dev/null
+++ b/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot
@@ -0,0 +1,112 @@
+# Translation of OpenERP Server.
+# This file contains the translation of the following modules:
+# * l10n_fr_rib
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: OpenERP Server 6.1beta\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-11-21 12:36+0000\n"
+"PO-Revision-Date: 2011-11-21 12:36+0000\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: l10n_fr_rib
+#: constraint:res.partner.bank:0
+msgid "\n"
+"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:ir.model,name:l10n_fr_rib.model_res_partner_bank
+msgid "Bank Accounts"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: field:res.partner.bank,bank_code:0
+msgid "Bank Code"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bic_field
+msgid "bank_bic"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_office_field
+msgid "office"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: field:res.bank,rib_code:0
+msgid "RIB Bank Code"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:ir.module.module,description:l10n_fr_rib.module_meta_information
+msgid "\n"
+"This module installs the base for RIB bank accounts (French standard for bank accounts). \n"
+"To make it easier to enter RIB data, it will also allow to search for banks by code."
+msgstr ""
+
+#. module: l10n_fr_rib
+#: field:res.partner.bank,office:0
+msgid "Office Code"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type,name:l10n_fr_rib.bank_rib
+msgid "RIB Bank Details"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_code_field
+msgid "bank_code"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: code:addons/l10n_fr_rib/bank.py:109
+#, python-format
+msgid "\n"
+"The RIB key %s does not correspond to the other codes: %s %s %s."
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field
+msgid "key"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information
+msgid "French RIB Bank Details"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: help:res.partner.bank,key:0
+msgid "The key is a number allowing to check the correctness of the other codes."
+msgstr ""
+
+#. module: l10n_fr_rib
+#: field:res.partner.bank,key:0
+msgid "Key"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type,format_layout:l10n_fr_rib.bank_rib
+msgid "%(bank_name)s: %(acc_number)s"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:ir.model,name:l10n_fr_rib.model_res_bank
+msgid "Bank"
+msgstr ""
+
+#. module: l10n_fr_rib
+#: model:res.partner.bank.type.field,name:l10n_fr_rib.bank_acc_number_field
+msgid "acc_number"
+msgstr ""
+
diff --git a/addons/l10n_gr/__openerp__.py b/addons/l10n_gr/__openerp__.py
index 72b1d2c7cc4..0ad042b3b28 100644
--- a/addons/l10n_gr/__openerp__.py
+++ b/addons/l10n_gr/__openerp__.py
@@ -20,7 +20,7 @@
#
##############################################################################
{
- "name" : "Greece - Normal Plan",
+ "name" : "Greece - Accounting",
"version" : "0.2",
"author" : "P. Christeas, OpenERP SA.",
"website": "http://openerp.hellug.gr/",
diff --git a/addons/l10n_gt/__openerp__.py b/addons/l10n_gt/__openerp__.py
index d80c1fa80a7..f05bbdaaff1 100644
--- a/addons/l10n_gt/__openerp__.py
+++ b/addons/l10n_gt/__openerp__.py
@@ -33,7 +33,7 @@
#
{
- 'name': 'Guatemala - Plan contable general',
+ 'name': 'Guatemala - Accounting',
'version': '3.0',
'category': 'Localization/Account Charts',
'description': """
diff --git a/addons/l10n_gt/l10n_gt_base.xml b/addons/l10n_gt/l10n_gt_base.xml
index c52e7e94532..5238d7b4f23 100644
--- a/addons/l10n_gt/l10n_gt_base.xml
+++ b/addons/l10n_gt/l10n_gt_base.xml
@@ -16,7 +16,6 @@
GTQ
- GTQQ0.014
diff --git a/addons/l10n_hn/__openerp__.py b/addons/l10n_hn/__openerp__.py
index 31d9344cb65..af8bb4cfa1d 100644
--- a/addons/l10n_hn/__openerp__.py
+++ b/addons/l10n_hn/__openerp__.py
@@ -33,7 +33,7 @@
#
{
- 'name': 'Honduras - Plan contable general',
+ 'name': 'Honduras - Accounting',
'version': '0.1',
'category': 'Localization/Account Charts',
'description': """Agrega una nomenclatura contable para Honduras. También incluye impuestos y la moneda Lempira. -- Adds accounting chart for Honduras. It also includes taxes and the Lempira currency""",
@@ -49,6 +49,5 @@
],
'demo_xml': [],
'installable': True,
- 'certificate': '',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_in/__openerp__.py b/addons/l10n_in/__openerp__.py
index 9aaec061319..2c54ca256fc 100644
--- a/addons/l10n_in/__openerp__.py
+++ b/addons/l10n_in/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name": "Indian Chart of Account",
+ "name": "India - Accounting",
"version": "1.0",
"description": """
Indian Accounting : Chart of Account.
diff --git a/addons/l10n_it/__openerp__.py b/addons/l10n_it/__openerp__.py
index 2c5811a6915..b531db26c99 100644
--- a/addons/l10n_it/__openerp__.py
+++ b/addons/l10n_it/__openerp__.py
@@ -28,7 +28,7 @@
##############################################################################
{
- "name" : "Italy - Generic Chart of Accounts",
+ "name" : "Italy - Accounting",
"version" : "0.1",
"depends" : ['base_vat','account_chart','base_iban'],
"author" : "OpenERP Italian Community",
diff --git a/addons/l10n_lu/__openerp__.py b/addons/l10n_lu/__openerp__.py
index 7a4436e31c1..68c2e7ac76b 100644
--- a/addons/l10n_lu/__openerp__.py
+++ b/addons/l10n_lu/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Luxembourg - Plan Comptable Minimum Normalise',
+ 'name': 'Luxembourg - Accounting',
'version': '1.0',
'category': 'Localization/Account Charts',
'description': """
diff --git a/addons/l10n_ma/__openerp__.py b/addons/l10n_ma/__openerp__.py
index a9bd7ce557e..69fd801e1dc 100644
--- a/addons/l10n_ma/__openerp__.py
+++ b/addons/l10n_ma/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name" : "Maroc - Plan Comptable Général",
+ "name" : "Maroc - Accounting",
"version" : "1.0",
"author" : "kazacube",
"category" : "Localization/Account Charts",
diff --git a/addons/l10n_ma/security/ir.model.access.csv b/addons/l10n_ma/security/ir.model.access.csv
index da5da5f48a2..2c89d1d3692 100644
--- a/addons/l10n_ma/security/ir.model.access.csv
+++ b/addons/l10n_ma/security/ir.model.access.csv
@@ -1,5 +1,3 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_l10n_ma_report_manager","l10n_ma.report account manager","model_l10n_ma_report","account.group_account_manager",1,1,1,1
-"access_l10n_ma_report_user","l10n_ma_report account user","model_l10n_ma_report","account.group_account_user",1,1,1,1
-"access_l10n_ma_line_manager","l10n_ma_line account manager","model_l10n_ma_line","account.group_account_manager",1,1,1,1
-"access_l10n_ma_line_user","l10n_ma.l10n_ma_line_account user","model_l10n_ma_line","account.group_account_user",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_l10n_ma_report_user,l10n_ma_report account user,model_l10n_ma_report,account.group_account_user,1,1,1,1
+access_l10n_ma_line_user,l10n_ma.l10n_ma_line_account user,model_l10n_ma_line,account.group_account_user,1,1,1,1
diff --git a/addons/crm_partner_assign/wizard/crm_merge_opportunity.py b/addons/l10n_multilang/__init__.py
similarity index 56%
rename from addons/crm_partner_assign/wizard/crm_merge_opportunity.py
rename to addons/l10n_multilang/__init__.py
index 3c56fada5a1..446f3beb668 100644
--- a/addons/crm_partner_assign/wizard/crm_merge_opportunity.py
+++ b/addons/l10n_multilang/__init__.py
@@ -18,27 +18,7 @@
# along with this program. If not, see .
#
##############################################################################
-from osv import osv, fields
-from tools.translate import _
-
-
-class crm_merge_opportunity_assign_partner(osv.osv_memory):
- """Merge two Opportunities"""
-
- _inherit = 'crm.merge.opportunity'
-
- def _update_data(self, op_ids, oldest_opp):
- data = super(crm_merge_opportunity_assign_partner, self)._update_data(op_ids, oldest_opp)
-
- new_data = {
- 'partner_latitude': self._get_first_not_null('partner_latitude', op_ids, oldest_opp),
- 'partner_longitude': self._get_first_not_null('partner_longitude', op_ids, oldest_opp),
- 'partner_assigned_id': self._get_first_not_null_id('partner_assigned_id', op_ids, oldest_opp),
- 'date_assign' : self._get_first_not_null('date_assign', op_ids, oldest_opp),
- }
- data.update(new_data)
- return data
-
-crm_merge_opportunity_assign_partner()
+import account
+import l10n_multilang
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_multilang/__openerp__.py b/addons/l10n_multilang/__openerp__.py
new file mode 100644
index 00000000000..f7c3b4db1d7
--- /dev/null
+++ b/addons/l10n_multilang/__openerp__.py
@@ -0,0 +1,43 @@
+# -*- 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 .
+#
+##############################################################################
+
+{
+ "name" : "Multi Language Chart of Accounts",
+ "version" : "1.1",
+ "author" : "OpenERP SA",
+ "category": 'Hidden/Dependency',
+ "description": """
+ * Multi language support for Chart of Accounts, Taxes, Tax Codes , Journals, Accounting Templates,
+ Analytic Chart of Accounts and Analytic Journals.
+ * Setup wizard changes
+ - Copy translations for COA, Tax, Tax Code and Fiscal Position from templates to target objects.
+ """,
+ 'website': 'http://www.openerp.com',
+ 'init_xml': [],
+ "depends" : ['account_accountant'],
+ 'update_xml': [
+ ],
+ 'demo_xml': [
+ ],
+ 'installable': True,
+ 'active': False,
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_multilang/account.py b/addons/l10n_multilang/account.py
new file mode 100644
index 00000000000..162abb0447f
--- /dev/null
+++ b/addons/l10n_multilang/account.py
@@ -0,0 +1,107 @@
+# -*- 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 fields, osv
+from tools.translate import _
+
+
+#in this file, we mostly add the tag translate=True on existing fields that we now want to be translated
+
+class account_account_template(osv.osv):
+ _inherit = 'account.account.template'
+ _columns = {
+ 'name': fields.char('Name', size=128, required=True, select=True, translate=True),
+ }
+account_account_template()
+
+class account_tax(osv.osv):
+ _inherit = 'account.tax'
+ _columns = {
+ 'name': fields.char('Tax Name', size=128, required=True, select=True, translate=True),
+ }
+account_tax()
+
+
+class account_tax_template(osv.osv):
+ _inherit = 'account.tax.template'
+ _columns = {
+ 'name': fields.char('Tax Name', size=128, required=True, select=True, translate=True),
+ }
+account_tax_template()
+
+
+class account_tax_code_template(osv.osv):
+ _inherit = 'account.tax.code.template'
+ _columns = {
+ 'name': fields.char('Tax Case Name', size=64, required=True, translate=True),
+ }
+account_tax_code_template()
+
+
+class account_chart_template(osv.osv):
+ _inherit = 'account.chart.template'
+ _columns={
+ 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'spoken_languages': fields.char('Spoken Languages', size=64, help="State here the languages for which the translations of templates could be loaded at the time of installation of this localization module and copied in the final object when generating them from templates. You must provide the language codes separated by ';'"),
+ }
+ _order = 'name'
+account_chart_template()
+
+
+class account_fiscal_position(osv.osv):
+ _inherit = 'account.fiscal.position'
+ _columns = {
+ 'name': fields.char('Fiscal Position', size=64, required=True, translate=True),
+ }
+account_fiscal_position()
+
+
+class account_fiscal_position_template(osv.osv):
+ _inherit = 'account.fiscal.position.template'
+ _columns = {
+ 'name': fields.char('Fiscal Position Template', size=64, required=True, translate=True),
+ }
+account_fiscal_position_template()
+
+
+class account_journal(osv.osv):
+ _inherit = 'account.journal'
+ _columns = {
+ 'name': fields.char('Journal Name', size=64, required=True, translate=True),
+ }
+account_journal()
+
+
+class account_analytic_account(osv.osv):
+ _inherit = 'account.analytic.account'
+ _columns = {
+ 'name': fields.char('Account Name', size=128, required=True, translate=True),
+ }
+account_analytic_account()
+
+
+class account_analytic_journal(osv.osv):
+ _inherit = 'account.analytic.journal'
+ _columns = {
+ 'name': fields.char('Journal Name', size=64, required=True, translate=True),
+ }
+account_analytic_journal()
diff --git a/addons/l10n_multilang/l10n_multilang.py b/addons/l10n_multilang/l10n_multilang.py
new file mode 100644
index 00000000000..c4130f2761d
--- /dev/null
+++ b/addons/l10n_multilang/l10n_multilang.py
@@ -0,0 +1,156 @@
+# -*- 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 fields, osv
+import os
+from tools.translate import _
+import netsvc
+logger=netsvc.Logger()
+
+class wizard_multi_charts_accounts(osv.osv_memory):
+ """
+ Change wizard that a new account chart for a company.
+ * Add option to install languages during the setup
+ * Copy translations for COA, Tax, Tax Code and Fiscal Position from templates to target objects.
+ """
+ _inherit = 'wizard.multi.charts.accounts'
+
+ def process_translations(self, cr, uid, langs, in_obj, in_field, in_ids, out_obj, out_ids, force_write=False, context=None):
+ """
+ This method copies translations values of templates into new Accounts/Taxes/Journals for languages selected
+
+ :param cr: A database cursor
+ :param uid: ID of the user currently logged in
+ :param langs: List of languages to load for new records
+ :param in_field: Name of the translatable field of source templates
+ :param in_obj: Name of source object of templates.
+ :param in_ids: List of ids of source object
+ :param out_obj: Destination object for which translation is to be copied
+ :param out_ids: List of ids of destination object
+ :param force_write: boolean that depicts if we need to create a translation OR simply replace the actual value
+ with the translation in the uid's language by doing a write (in case it's TRUE)
+ :param context: usual context information. May contain the key 'lang', which is the language of the user running
+ the wizard, that will be used if force_write is True
+
+ :return: True
+ """
+ if context is None:
+ context = {}
+ src = {}
+ xlat_obj = self.pool.get('ir.translation')
+ #find the source from Account Template
+ for x in in_obj.browse(cr, uid, in_ids):
+ src.update({x.id: x.name})
+ for lang in langs:
+ #find the value from Translation
+ value = xlat_obj._get_ids(cr, uid, in_obj._name + ',' + in_field, 'model', lang, in_ids)
+ for j in range(len(in_ids)):
+ in_id = in_ids[j]
+ if value[in_id]:
+ if not force_write:
+ #copy Translation from Source to Destination object
+ xlat_obj.create(cr, uid, {
+ 'name': out_obj._name + ',' + in_field,
+ 'type': 'model',
+ 'res_id': out_ids[j],
+ 'lang': lang,
+ 'src': src[in_id],
+ 'value': value[in_id],
+ })
+ else:
+ #replace the value in the destination object only if it's the user lang
+ if context.get('lang') == lang:
+ self.pool.get(out_obj._name).write(cr, uid, out_ids[j], {in_field: value[in_id]})
+ else:
+ logger.notifyChannel('addons.'+self._name, netsvc.LOG_WARNING,
+ 'Language: %s. Translation from template: there is no translation available for %s!' %(lang, src[in_id]))#out_obj._name))
+ return True
+
+ def execute(self, cr, uid, ids, context=None):
+ res = super(wizard_multi_charts_accounts, self).execute(cr, uid, ids, context=context)
+
+ obj_multi = self.browse(cr, uid, ids[0], context=context)
+ company_id = obj_multi.company_id.id
+
+ # load languages
+ langs = []
+ res_lang_obj = self.pool.get('res.lang')
+ installed_lang_ids = res_lang_obj.search(cr, uid, [])
+ installed_langs = [x.code for x in res_lang_obj.browse(cr, uid, installed_lang_ids, context=context)]
+ if obj_multi.chart_template_id.spoken_languages:
+ for lang in obj_multi.chart_template_id.spoken_languages.split(';'):
+ if lang not in installed_langs:
+ # the language is not installed, so we don't need to load its translations
+ continue
+ else:
+ # the language was already installed, so the po files have been loaded at the installation time
+ # and now we need to copy the translations of templates to the right objects
+ langs.append(lang)
+ if langs:
+ # write account.account translations in the real COA
+ self._process_accounts_translations(cr, uid, obj_multi, company_id, langs, 'name', context=context)
+
+ # copy account.tax.code translations
+ self._process_tax_codes_translations(cr, uid, obj_multi, company_id, langs, 'name', context=context)
+
+ # copy account.tax translations
+ self._process_taxes_translations(cr, uid, obj_multi, company_id, langs, 'name', context=context)
+
+ # copy account.fiscal.position translations
+ self._process_fiscal_pos_translations(cr, uid, obj_multi, company_id, langs, 'name', context=context)
+
+ return res
+
+ def _process_accounts_translations(self, cr, uid, obj_multi, company_id, langs, field, context=None):
+ obj_acc_template = self.pool.get('account.account.template')
+ obj_acc = self.pool.get('account.account')
+ acc_template_root_id = obj_multi.chart_template_id.account_root_id.id
+ acc_root_id = obj_acc.search(cr, uid, [('company_id', '=', company_id), ('parent_id', '=', None)])[0]
+ in_ids = obj_acc_template.search(cr, uid, [('id', 'child_of', [acc_template_root_id])], order='id')[1:]
+ out_ids = obj_acc.search(cr, uid, [('id', 'child_of', [acc_root_id])], order='id')[1:]
+ return self.process_translations(cr, uid, langs, obj_acc_template, field, in_ids, obj_acc, out_ids, force_write=True, context=context)
+
+ def _process_tax_codes_translations(self, cr, uid, obj_multi, company_id, langs, field, context=None):
+ obj_tax_code_template = self.pool.get('account.tax.code.template')
+ obj_tax_code = self.pool.get('account.tax.code')
+ tax_code_template_root_id = obj_multi.chart_template_id.tax_code_root_id.id
+ tax_code_root_id = obj_tax_code.search(cr, uid, [('company_id', '=', company_id), ('parent_id', '=', None)])[0]
+ in_ids = obj_tax_code_template.search(cr, uid, [('id', 'child_of', [tax_code_template_root_id])], order='id')[1:]
+ out_ids = obj_tax_code.search(cr, uid, [('id', 'child_of', [tax_code_root_id])], order='id')[1:]
+ return self.process_translations(cr, uid, langs, obj_tax_code_template, field, in_ids, obj_tax_code, out_ids, force_write=False, context=context)
+
+ def _process_taxes_translations(self, cr, uid, obj_multi, company_id, langs, field, context=None):
+ obj_tax_template = self.pool.get('account.tax.template')
+ obj_tax = self.pool.get('account.tax')
+ in_ids = sorted([x.id for x in obj_multi.chart_template_id.tax_template_ids])
+ out_ids = obj_tax.search(cr, uid, [('company_id', '=', company_id)], order='id')
+ return self.process_translations(cr, uid, langs, obj_tax_template, field, in_ids, obj_tax, out_ids, force_write=False, context=context)
+
+ def _process_fiscal_pos_translations(self, cr, uid, obj_multi, company_id, langs, field, context=None):
+ obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
+ obj_fiscal_position = self.pool.get('account.fiscal.position')
+ in_ids = obj_fiscal_position_template.search(cr, uid, [('chart_template_id', '=', obj_multi.chart_template_id.id)], order='id')
+ out_ids = obj_fiscal_position.search(cr, uid, [('company_id', '=', company_id)], order='id')
+ return self.process_translations(cr, uid, langs, obj_fiscal_position_template, field, in_ids, obj_fiscal_position, out_ids, force_write=False, context=context)
+
+wizard_multi_charts_accounts()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_mx/__openerp__.py b/addons/l10n_mx/__openerp__.py
index d56d5f570b1..aa21d1a6356 100644
--- a/addons/l10n_mx/__openerp__.py
+++ b/addons/l10n_mx/__openerp__.py
@@ -20,7 +20,7 @@
#
##############################################################################
{
- "name" : "Mexico - Chart of Account",
+ "name" : "Mexico - Accounting",
"version" : "1.0",
"author" : "RelTek Mexico",
"category" : "Localization/Account Charts",
diff --git a/addons/l10n_nl/__openerp__.py b/addons/l10n_nl/__openerp__.py
index 5635e16d6c3..562fd0ab876 100644
--- a/addons/l10n_nl/__openerp__.py
+++ b/addons/l10n_nl/__openerp__.py
@@ -86,7 +86,7 @@
# Changed naming of 7020 and 7030 to Kostprijs omzet xxxx
{
- "name" : "Netherlands - Grootboek en BTW rekeningen",
+ "name" : "Netherlands - Accounting",
"version" : "1.5",
"category": "Localization/Account Charts",
"description": """
diff --git a/addons/l10n_pl/__openerp__.py b/addons/l10n_pl/__openerp__.py
index 0ec97ab7cb6..de1784009b5 100644
--- a/addons/l10n_pl/__openerp__.py
+++ b/addons/l10n_pl/__openerp__.py
@@ -21,7 +21,7 @@
#
##############################################################################
{
- "name" : "Poland - Chart of Accounts",
+ "name" : "Poland - Accounting",
"version" : "1.0",
"author" : "Grzegorz Grzelak (Cirrus)",
"website": "http://www.cirrus.pl",
diff --git a/addons/l10n_ro/__openerp__.py b/addons/l10n_ro/__openerp__.py
index 647b4b35449..df441869d72 100644
--- a/addons/l10n_ro/__openerp__.py
+++ b/addons/l10n_ro/__openerp__.py
@@ -20,7 +20,7 @@
#
##############################################################################
{
- "name" : "Romania - Chart of Accounts",
+ "name" : "Romania - Accounting",
"version" : "1.1",
"author" : "filsys",
"website": "http://www.filsystem.ro",
diff --git a/addons/l10n_syscohada/__openerp__.py b/addons/l10n_syscohada/__openerp__.py
index 0fa4631b1f1..7b258a04507 100644
--- a/addons/l10n_syscohada/__openerp__.py
+++ b/addons/l10n_syscohada/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name" : "OHADA - The accounting chart ",
+ "name" : "OHADA - Accounting",
"version" : "1.0",
"author" : "Baamtu Senegal",
"category" : "Localization/Account Charts",
diff --git a/addons/l10n_th/__openerp__.py b/addons/l10n_th/__openerp__.py
index 4ab8f7d355c..c1534787721 100644
--- a/addons/l10n_th/__openerp__.py
+++ b/addons/l10n_th/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- 'name': 'Thailand - Thai Chart of Accounts',
+ 'name': 'Thailand - Accounting',
'version': '1.0',
'category': 'Localization/Account Charts',
'description': """
diff --git a/addons/l10n_uk/__openerp__.py b/addons/l10n_uk/__openerp__.py
index f6e253fffc2..f6e8212aed0 100644
--- a/addons/l10n_uk/__openerp__.py
+++ b/addons/l10n_uk/__openerp__.py
@@ -20,7 +20,7 @@
{
- 'name': 'UK Chart of Accounts - latest (Smartode/CT600)',
+ 'name': 'UK - Accounting',
'version': '1.0',
'category': 'Localization/Account Charts',
'description': """This is the latest UK OpenERP localisation necesary to run OpenERP accounting for UK SME's with:
diff --git a/addons/l10n_uk/l10n_uk_wizard.xml b/addons/l10n_uk/l10n_uk_wizard.xml
index b7da2ee5c6b..b4f96afc700 100644
--- a/addons/l10n_uk/l10n_uk_wizard.xml
+++ b/addons/l10n_uk/l10n_uk_wizard.xml
@@ -34,7 +34,7 @@
10
- onskip
+ onceopen
diff --git a/addons/l10n_ve/__openerp__.py b/addons/l10n_ve/__openerp__.py
index 45ac68fc105..ce44be32771 100644
--- a/addons/l10n_ve/__openerp__.py
+++ b/addons/l10n_ve/__openerp__.py
@@ -23,7 +23,7 @@
#
##############################################################################
{
- "name" : "Venezuela -Chart of Account",
+ "name" : "Venezuela - Accounting",
"version" : "1.0",
"author" : ['OpenERP SA', "Netquatro"],
"category" : "Localization/Account Charts",
diff --git a/addons/lunch/__openerp__.py b/addons/lunch/__openerp__.py
index 6d5cd576912..363b0b3a2c2 100644
--- a/addons/lunch/__openerp__.py
+++ b/addons/lunch/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name": "Lunch",
+ "name": "Lunch Orders",
"author": "OpenERP SA",
'complexity': "easy",
"Description": """
@@ -33,7 +33,7 @@
""",
"version": "0.1",
"depends": ["base_tools"],
- "category" : "Human Resources",
+ "category" : "Tools",
'description': """
The base module to manage lunch
diff --git a/addons/lunch/security/ir.model.access.csv b/addons/lunch/security/ir.model.access.csv
index 59670a8d1b1..72c06cceb2b 100644
--- a/addons/lunch/security/ir.model.access.csv
+++ b/addons/lunch/security/ir.model.access.csv
@@ -1,8 +1,8 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_lunch_order_user","lunch.order user","model_lunch_order","base.group_tool_user",1,1,1,1
-"access_lunch_cashmove_user","lunch.cashmove user","model_lunch_cashmove","base.group_tool_user",1,1,1,1
-"access_report_lunch_amount_manager","report.lunch.amount manager","model_report_lunch_amount","base.group_tool_manager",1,1,1,1
-"access_lunch_category_manager","lunch.category.user","model_lunch_category","base.group_tool_user",1,1,1,1
-"access_report_lunch_order_manager","report.lunch.order manager","model_report_lunch_order","base.group_tool_manager",1,1,1,1
-"access_lunch_product_user","lunch.product user","model_lunch_product","base.group_tool_user",1,1,1,1
-"access_lunch_cashbox_user","lunch.cashbox user","model_lunch_cashbox","base.group_tool_user",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_lunch_order_user,lunch.order user,model_lunch_order,base.group_tool_user,1,1,1,1
+access_lunch_cashmove_user,lunch.cashmove user,model_lunch_cashmove,base.group_tool_user,1,1,1,1
+access_report_lunch_amount_manager,report.lunch.amount manager,model_report_lunch_amount,base.group_tool_manager,1,1,1,1
+access_lunch_category_manager,lunch.category.user,model_lunch_category,base.group_tool_user,1,1,1,1
+access_report_lunch_order_manager,report.lunch.order manager,model_report_lunch_order,base.group_tool_manager,1,1,1,1
+access_lunch_product_user,lunch.product user,model_lunch_product,base.group_tool_user,1,1,1,1
+access_lunch_cashbox_user,lunch.cashbox user,model_lunch_cashbox,base.group_tool_user,1,1,1,1
diff --git a/addons/lunch/security/lunch_security.xml b/addons/lunch/security/lunch_security.xml
index e84cdb41c0d..7d665c96435 100644
--- a/addons/lunch/security/lunch_security.xml
+++ b/addons/lunch/security/lunch_security.xml
@@ -3,10 +3,12 @@
- Tools / User
+ User
+
- Tools / Manager
+ Manager
+
diff --git a/addons/mail/__openerp__.py b/addons/mail/__openerp__.py
index 1cb97ce182e..8f4833c294f 100644
--- a/addons/mail/__openerp__.py
+++ b/addons/mail/__openerp__.py
@@ -20,9 +20,9 @@
##############################################################################
{
- 'name': 'Email Subsystem',
+ 'name': 'Emails Management',
'version': '1.0',
- 'category': 'Hidden',
+ 'category': 'Hidden/Dependency',
'complexity': "easy",
'description': """
A generic email subsystem with message storage and queuing
diff --git a/addons/mail/mail_message.py b/addons/mail/mail_message.py
index 159259f151d..fd00135816e 100644
--- a/addons/mail/mail_message.py
+++ b/addons/mail/mail_message.py
@@ -380,12 +380,16 @@ class mail_message(osv.osv):
if 'To' in fields:
msg['to'] = decode(msg_txt.get('To'))
+
if 'Delivered-To' in fields:
msg['to'] = decode(msg_txt.get('Delivered-To'))
if 'CC' in fields:
msg['cc'] = decode(msg_txt.get('CC'))
+ if 'Cc' in fields:
+ msg['cc'] = decode(msg_txt.get('Cc'))
+
if 'Reply-To' in fields:
msg['reply'] = decode(msg_txt.get('Reply-To'))
@@ -455,6 +459,7 @@ class mail_message(osv.osv):
msg['sub_type'] = msg['subtype'] or 'plain'
return msg
+
def send(self, cr, uid, ids, auto_commit=False, context=None):
"""Sends the selected emails immediately, ignoring their current
state (mails that have already been sent should not be passed
diff --git a/addons/mail/mail_thread.py b/addons/mail/mail_thread.py
index c8f7da9a5bb..70b536296bf 100644
--- a/addons/mail/mail_thread.py
+++ b/addons/mail/mail_thread.py
@@ -58,6 +58,14 @@ class mail_thread(osv.osv):
'message_ids': fields.one2many('mail.message', 'res_id', 'Messages', readonly=True),
}
+ def message_capable_models(self, cr, uid, context=None):
+ ret_dict = {}
+ for model_name in self.pool.obj_list():
+ model = self.pool.get(model_name)
+ if 'mail.thread' in getattr(model, '_inherit', []):
+ ret_dict[model_name] = model._description
+ return ret_dict
+
def message_thread_followers(self, cr, uid, ids, context=None):
"""Returns a list of email addresses of the people following
this thread, including the sender of each mail, and the
diff --git a/addons/mail/mail_thread_view.xml b/addons/mail/mail_thread_view.xml
index bd10a72faf2..3a7ed8f46fe 100644
--- a/addons/mail/mail_thread_view.xml
+++ b/addons/mail/mail_thread_view.xml
@@ -8,29 +8,10 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/mail/security/ir.model.access.csv b/addons/mail/security/ir.model.access.csv
index b508cd68d83..42c70da9f19 100644
--- a/addons/mail/security/ir.model.access.csv
+++ b/addons/mail/security/ir.model.access.csv
@@ -1,3 +1,3 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_mail_message","mail.message","model_mail_message",,1,0,0,0
-"access_mail_thread","mail.thread","model_mail_thread",,1,0,0,0
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_mail_message,mail.message,model_mail_message,,1,0,0,0
+access_mail_thread,mail.thread,model_mail_thread,,1,0,0,0
diff --git a/addons/mail/wizard/mail_compose_message.py b/addons/mail/wizard/mail_compose_message.py
index 93bf0b004d8..f5906d2b186 100644
--- a/addons/mail/wizard/mail_compose_message.py
+++ b/addons/mail/wizard/mail_compose_message.py
@@ -236,7 +236,7 @@ class mail_compose_message(osv.osv_memory):
attachments=attachment, references=references, res_id=int(mail.res_id),
subtype=mail.subtype, headers=headers, context=context)
# in normal mode, we send the email immediately, as the user expects us to (delay should be sufficiently small)
- mail_message.send(cr, uid, [msg_id], context)
+ mail_message.send(cr, uid, [msg_id], context=context)
return {'type': 'ir.actions.act_window_close'}
diff --git a/addons/marketing/__openerp__.py b/addons/marketing/__openerp__.py
index 1f1995c52da..31d50dc61ac 100644
--- a/addons/marketing/__openerp__.py
+++ b/addons/marketing/__openerp__.py
@@ -25,7 +25,7 @@
"version" : "1.1",
"depends" : ["base", "base_setup"],
"author" : "OpenERP SA",
- "category": 'Marketing',
+ "category": 'Hidden/Dependency',
'complexity': "expert",
"description": """
Menu for Marketing.
diff --git a/addons/marketing/security/ir.model.access.csv b/addons/marketing/security/ir.model.access.csv
index 0343f29f43a..4a08a4aa60d 100644
--- a/addons/marketing/security/ir.model.access.csv
+++ b/addons/marketing/security/ir.model.access.csv
@@ -1 +1 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
diff --git a/addons/marketing/security/marketing_security.xml b/addons/marketing/security/marketing_security.xml
index 344e562eb67..d04473da8bf 100644
--- a/addons/marketing/security/marketing_security.xml
+++ b/addons/marketing/security/marketing_security.xml
@@ -2,11 +2,13 @@
- Marketing / User
+ User
+
- Marketing / Manager
+ Manager
+
diff --git a/addons/marketing_campaign/security/ir.model.access.csv b/addons/marketing_campaign/security/ir.model.access.csv
index b0157b76c51..9e54e06c5b1 100644
--- a/addons/marketing_campaign/security/ir.model.access.csv
+++ b/addons/marketing_campaign/security/ir.model.access.csv
@@ -1,21 +1,21 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_marketing_campaign_admin","marketing.campaign","model_marketing_campaign","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_segment_campaignadmin","marketing.campaign.segment","model_marketing_campaign_segment","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_activity_campaignadmin","marketing.campaign.activity","model_marketing_campaign_activity","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_workitem_campaignadmin","marketing.campaign.workitem","model_marketing_campaign_workitem","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_transition_campaignadmin","marketing.campaign.transition","model_marketing_campaign_transition","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_analysis_campaignadmin","campaign.analysis","model_campaign_analysis","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_workitem_all","marketing.campaign.workitem","model_marketing_campaign_workitem","base.group_user",1,0,0,0
-"access_email_template_user","email.template","model_email_template","marketing.group_marketing_user",1,1,0,0
-"access_email_template_account_user","ir.mail_server","base.model_ir_mail_server","marketing.group_marketing_user",1,1,0,0
-"access_marketing_campaign_system","marketing.campaign system","model_marketing_campaign","base.group_system",1,0,0,0
-"access_marketing_campaign_segment_system","marketing.campaign.segment system","model_marketing_campaign_segment","base.group_system",1,0,0,0
-"access_marketing_campaign_workitem_system","marketing.campaign.workitem system","model_marketing_campaign_workitem","base.group_system",1,0,0,0
-"access_marketing_campaign_manager","marketing.campaign","model_marketing_campaign","marketing.group_marketing_manager",1,1,1,1
-"access_marketing_campaign_segment_campaign_manager","marketing.campaign.segment","model_marketing_campaign_segment","marketing.group_marketing_manager",1,1,1,1
-"access_marketing_campaign_activity_campaign_manager","marketing.campaign.activity","model_marketing_campaign_activity","marketing.group_marketing_manager",1,1,1,1
-"access_marketing_campaign_workitem_campaign_manager","marketing.campaign.workitem","model_marketing_campaign_workitem","marketing.group_marketing_manager",1,1,1,1
-"access_marketing_campaign_transition_campaign_manager","marketing.campaign.transition","model_marketing_campaign_transition","marketing.group_marketing_manager",1,1,1,1
-"access_marketing_campaign_analysis_campaign_manager","campaign.analysis","model_campaign_analysis","marketing.group_marketing_manager",1,1,1,1
-"access_email_template_manager","email.template","model_email_template","marketing.group_marketing_manager",1,1,1,1
-"access_email_template_account_manager","ir.mail_server","base.model_ir_mail_server","marketing.group_marketing_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_marketing_campaign_admin,marketing.campaign,model_marketing_campaign,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_segment_campaignadmin,marketing.campaign.segment,model_marketing_campaign_segment,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_activity_campaignadmin,marketing.campaign.activity,model_marketing_campaign_activity,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_workitem_campaignadmin,marketing.campaign.workitem,model_marketing_campaign_workitem,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_transition_campaignadmin,marketing.campaign.transition,model_marketing_campaign_transition,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_analysis_campaignadmin,campaign.analysis,model_campaign_analysis,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_workitem_all,marketing.campaign.workitem,model_marketing_campaign_workitem,base.group_user,1,0,0,0
+access_email_template_user,email.template,model_email_template,marketing.group_marketing_user,1,1,0,0
+access_email_template_account_user,ir.mail_server,base.model_ir_mail_server,marketing.group_marketing_user,1,1,0,0
+access_marketing_campaign_system,marketing.campaign system,model_marketing_campaign,base.group_system,1,0,0,0
+access_marketing_campaign_segment_system,marketing.campaign.segment system,model_marketing_campaign_segment,base.group_system,1,0,0,0
+access_marketing_campaign_workitem_system,marketing.campaign.workitem system,model_marketing_campaign_workitem,base.group_system,1,0,0,0
+access_marketing_campaign_manager,marketing.campaign,model_marketing_campaign,marketing.group_marketing_manager,1,1,1,1
+access_marketing_campaign_segment_campaign_manager,marketing.campaign.segment,model_marketing_campaign_segment,marketing.group_marketing_manager,1,1,1,1
+access_marketing_campaign_activity_campaign_manager,marketing.campaign.activity,model_marketing_campaign_activity,marketing.group_marketing_manager,1,1,1,1
+access_marketing_campaign_workitem_campaign_manager,marketing.campaign.workitem,model_marketing_campaign_workitem,marketing.group_marketing_manager,1,1,1,1
+access_marketing_campaign_transition_campaign_manager,marketing.campaign.transition,model_marketing_campaign_transition,marketing.group_marketing_manager,1,1,1,1
+access_marketing_campaign_analysis_campaign_manager,campaign.analysis,model_campaign_analysis,marketing.group_marketing_manager,1,1,1,1
+access_email_template_manager,email.template,model_email_template,marketing.group_marketing_manager,1,1,1,1
+access_email_template_account_manager,ir.mail_server,base.model_ir_mail_server,marketing.group_marketing_manager,1,1,1,1
diff --git a/addons/marketing_campaign_crm_demo/__openerp__.py b/addons/marketing_campaign_crm_demo/__openerp__.py
index 4841cc1a2e8..a47ac040656 100644
--- a/addons/marketing_campaign_crm_demo/__openerp__.py
+++ b/addons/marketing_campaign_crm_demo/__openerp__.py
@@ -21,13 +21,13 @@
{
- "name" : "Demo data for Marketing Campaign",
+ "name" : "Marketing Campaign - Demo",
"version" : "1.0",
"depends" : ["marketing_campaign",
"crm",
],
"author" : "OpenERP SA",
- "category": 'Hidden',
+ "category": 'Marketing',
"description": """
Demo data for the module marketing_campaign.
============================================
diff --git a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
index ee11fbcdb75..abf29f2c011 100644
--- a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
+++ b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
@@ -34,137 +34,113 @@
- Thanks for showing interest in OpenERP
- info@tinyerp.com
-
+ Thanks for showing interest in OpenERP
+ info@tinyerp.com
-
-
- Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,
- mako
+
+
+ Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,For OpenERP OnDemand Free Trial 2010
- crm.lead
- Propose to subscribe to the OpenERP Discovery Day on May 2010
- info@tinyerp.com
-
+ Propose to subscribe to the OpenERP Discovery Day on May 2010
+ info@tinyerp.com
-
-
- Hello,We have very good offer that might suit you.
+
+
+ Hello,We have very good offer that might suit you.
We propose you to subscribe to the OpenERP Discovery Day on May 2010.
If any further information required kindly revert back.
We really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor OpenERP Discovery Day on May 2010
- crm.lead
- Thanks for subscribing to the OpenERP Discovery Day
- info@tinyerp.com
-
+ Thanks for subscribing to the OpenERP Discovery Day
+ info@tinyerp.com
-
-
- Hello,Thanks for showing intrest and for subscribing to the OpenERP Discovery Day.
+
+
+ Hello,Thanks for showing intrest and for subscribing to the OpenERP Discovery Day.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor OpenERP Discovery Day
- crm.lead
- Thanks for buying the OpenERP book
- info@tinyerp.com
-
+ Thanks for buying the OpenERP book
+ info@tinyerp.com
-
-
- Hello,Thanks for showing intrest and buying the OpenERP book.
+
+
+ Hello,Thanks for showing intrest and buying the OpenERP book.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor OpenERP book
- crm.lead
- Propose a free technical training to Gold partners
- info@tinyerp.com
-
+ Propose a free technical training to Gold partners
+ info@tinyerp.com
-
-
- Hello, We have very good offer that might suit you.
+
+
+ Hello, We have very good offer that might suit you.
For our gold partners,We are arranging free technical training on june,2010.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor technical training to Gold partners
- crm.lead
- Propose paid training to Silver partners
- info@tinyerp.com
-
+ Propose paid training to Silver partners
+ info@tinyerp.com
-
-
- Hello, We have very good offer that might suit you.
+
+
+ Hello, We have very good offer that might suit you.
For our silver partners,We are paid technical training on june,2010.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor training to Silver partners
- crm.lead
- Propose gold partnership to silver partners
- info@tinyerp.com
-
+ Propose gold partnership to silver partners
+ info@tinyerp.com
-
-
- Hello, We have very good offer that might suit you.
+
+
+ Hello, We have very good offer that might suit you.
For our silver partners,We are offering Gold partnership.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor gold partnership to silver partners
- crm.lead
- Thanks for subscribing to technical training
- info@tinyerp.com
-
+ Thanks for subscribing to technical training
+ info@tinyerp.com
-
-
- Hello, Thanks for showing intrest and for subscribing to technical training.If any further information required kindly revert back.I really appreciate your co-operation on this.
+
+
+ Hello, Thanks for showing intrest and for subscribing to technical training.If any further information required kindly revert back.I really appreciate your co-operation on this.
Regards,OpenERP Team,
- makoFor subscribing to technical training
- crm.lead
diff --git a/addons/membership/__openerp__.py b/addons/membership/__openerp__.py
index 20d01b6a60e..0012ec2d0b4 100644
--- a/addons/membership/__openerp__.py
+++ b/addons/membership/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Membership',
+ 'name': 'Membership Management',
'version': '0.1',
- 'category': 'Hidden',
+ 'category': 'Association',
'description': """
This module allows you to manage all operations for managing memberships.
=========================================================================
diff --git a/addons/membership/security/ir.model.access.csv b/addons/membership/security/ir.model.access.csv
index f3d91646c44..d53e57a5151 100644
--- a/addons/membership/security/ir.model.access.csv
+++ b/addons/membership/security/ir.model.access.csv
@@ -1,4 +1,4 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_membership_membership_line_partner_manager","membership.membership_line partner_manager","model_membership_membership_line","base.group_partner_manager",1,1,1,1
-"access_membership_membership_line","membership.membership_line","model_membership_membership_line",,1,0,0,0
-"access_report_membership","report.membership","model_report_membership","base.group_partner_manager",1,0,0,0
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_membership_membership_line_partner_manager,membership.membership_line partner_manager,model_membership_membership_line,base.group_partner_manager,1,1,1,1
+access_membership_membership_line,membership.membership_line,model_membership_membership_line,,1,0,0,0
+access_report_membership,report.membership,model_report_membership,base.group_partner_manager,1,0,0,0
diff --git a/addons/mrp/__openerp__.py b/addons/mrp/__openerp__.py
index 38c5fa9a9d1..588ba103f04 100644
--- a/addons/mrp/__openerp__.py
+++ b/addons/mrp/__openerp__.py
@@ -21,7 +21,7 @@
{
- "name" : "Manufacturing Resource Planning",
+ "name" : "MRP",
"version" : "1.1",
"author" : "OpenERP SA",
"website" : "http://www.openerp.com",
@@ -101,6 +101,7 @@ Dashboard provided by this module:
],
'installable': True,
+ 'application': True,
'active': False,
'certificate': '0032052481373',
}
diff --git a/addons/mrp/board_manufacturing_view.xml b/addons/mrp/board_manufacturing_view.xml
index 427780f344c..9956aae4ffe 100644
--- a/addons/mrp/board_manufacturing_view.xml
+++ b/addons/mrp/board_manufacturing_view.xml
@@ -7,13 +7,12 @@
form
-
+
-
+
-
diff --git a/addons/mrp/i18n/ar.po b/addons/mrp/i18n/ar.po
index c8a56267090..0a13682d76e 100644
--- a/addons/mrp/i18n/ar.po
+++ b/addons/mrp/i18n/ar.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/bg.po b/addons/mrp/i18n/bg.po
index cc97c80360f..2dbb5ea5340 100644
--- a/addons/mrp/i18n/bg.po
+++ b/addons/mrp/i18n/bg.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -748,7 +748,7 @@ msgid "Per month"
msgstr "За месец"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -761,7 +761,7 @@ msgid "Product Name"
msgstr "Име на продукт"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Невалидно действие !"
@@ -1273,7 +1273,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1327,7 +1327,7 @@ msgid "Month -1"
msgstr "Месец -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1338,7 +1338,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1567,7 +1567,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1657,7 +1657,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Копиране"
@@ -2146,7 +2146,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/bs.po b/addons/mrp/i18n/bs.po
index f5106281e27..9a78c360f43 100644
--- a/addons/mrp/i18n/bs.po
+++ b/addons/mrp/i18n/bs.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/ca.po b/addons/mrp/i18n/ca.po
index c6d359150ec..a81bfdc6da6 100644
--- a/addons/mrp/i18n/ca.po
+++ b/addons/mrp/i18n/ca.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-08-17 22:02+0000\n"
-"Last-Translator: mgaja (GrupoIsep.com) \n"
+"PO-Revision-Date: 2011-12-06 11:07+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -758,7 +758,7 @@ msgid "Per month"
msgstr "Per mes"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -771,7 +771,7 @@ msgid "Product Name"
msgstr "Nom producte"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Acció no vàlida!"
@@ -1320,7 +1320,7 @@ msgstr "Ubicació on el sistema emmagatzemarà els productes finalitzats."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Aquest és l'albarà intern que porta el producte acabat cap al pla de "
@@ -1380,7 +1380,7 @@ msgid "Month -1"
msgstr "Mes -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Ordre de producció '%s' planificada pel '%s'"
@@ -1391,7 +1391,7 @@ msgid "Production Order N° :"
msgstr "Núm. ordre producció :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Ordre de fabricació '%s' està preparada per produir"
@@ -1635,7 +1635,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Ordres de producció a iniciar"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "No es pot eliminar ordre/s de producció que estan en estat %s!"
@@ -1728,7 +1728,7 @@ msgid "Production Analysis"
msgstr "Anàlisi de producció"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copieu"
@@ -2254,7 +2254,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tipus de producte és emmagatzemable o consumible."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3321,6 +3321,13 @@ msgstr "Any"
#~ msgid "Workcenter Usage"
#~ msgstr "Us del centre de producció"
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Aquest és l'albarà intern que porta el producte acabat cap al pla de "
+#~ "producció."
+
#~ msgid ""
#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
#~ "Routing is indicated then,the third tab of a production order (workcenters) "
diff --git a/addons/mrp/i18n/cs.po b/addons/mrp/i18n/cs.po
index 5244b3928c6..57c6e3b019b 100644
--- a/addons/mrp/i18n/cs.po
+++ b/addons/mrp/i18n/cs.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
"X-Poedit-Language: Czech\n"
#. module: mrp
@@ -727,7 +727,7 @@ msgid "Per month"
msgstr "Za měsíc"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -740,7 +740,7 @@ msgid "Product Name"
msgstr "Jméno výrobku"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Neplatná akce !"
@@ -1257,7 +1257,7 @@ msgstr "Umístění kde systém naskladní hotové výrobky."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1311,7 +1311,7 @@ msgid "Month -1"
msgstr "Měsíc -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Výrobní příkaz '%s' je naplánován pro %s."
@@ -1322,7 +1322,7 @@ msgid "Production Order N° :"
msgstr "Výrobní příkaz N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Výrobní příkaz '%s' je připraven k výrobě."
@@ -1551,7 +1551,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Výrobní příkazy pro spuštění"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1641,7 +1641,7 @@ msgid "Production Analysis"
msgstr "Analýza výroby"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Kopírovat"
@@ -2136,7 +2136,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Typ výrobku je Skladový nebo Spotřební."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/da.po b/addons/mrp/i18n/da.po
index 17a13380616..59fe0907efe 100644
--- a/addons/mrp/i18n/da.po
+++ b/addons/mrp/i18n/da.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-10 04:57+0000\n"
-"X-Generator: Launchpad (build 14263)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr "Pr. måned"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/de.po b/addons/mrp/i18n/de.po
index 73f62cd257d..99e1b5f1f59 100644
--- a/addons/mrp/i18n/de.po
+++ b/addons/mrp/i18n/de.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-04-03 09:21+0000\n"
-"Last-Translator: Ferdinand @ Camptocamp \n"
+"PO-Revision-Date: 2011-12-06 11:05+0000\n"
+"Last-Translator: Ferdinand-camptocamp \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -758,7 +758,7 @@ msgid "Per month"
msgstr "Pro Monat"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -771,7 +771,7 @@ msgid "Product Name"
msgstr "Produkt Bezeichnung"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Fehlerhafte Aktion !"
@@ -1323,7 +1323,7 @@ msgstr "Ort, an dem das System die Fertigprodukte einlagern wird."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Dies ist ein interner Lieferauftrag, der die gefertigten Produkte in den "
@@ -1382,7 +1382,7 @@ msgid "Month -1"
msgstr "Monat -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Fertigungsauftrag '%s' ist geplant für %s."
@@ -1393,7 +1393,7 @@ msgid "Production Order N° :"
msgstr "Fertigungsauftragsnr."
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Fertigungsauftrag '%s' ist Startbereit."
@@ -1635,7 +1635,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Fertigungsaufträge (Startbereit)"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "Fertigungsaufträge im Status %s können nicht gelöscht werden"
@@ -1728,7 +1728,7 @@ msgid "Production Analysis"
msgstr "Statistik Fertigungsaufträge"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Duplizieren"
@@ -2257,7 +2257,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Produkttyp ist 'Lagerprodukt' oder 'Verbrauchsmaterial'."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3350,6 +3350,13 @@ msgstr "Jahr"
#~ "können. Wenn an diesem Arbeitsplatz 5 Mitarbeiter tätig sind, liegt die "
#~ "Kapazität pro Zyklus bei 5."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Dies ist ein interner Lieferauftrag, der die gefertigten Produkte in den "
+#~ "Fertigungsplan eintragen wird"
+
#~ msgid ""
#~ "Description of the work center. Explain here what's a cycle according to "
#~ "this work center."
diff --git a/addons/mrp/i18n/el.po b/addons/mrp/i18n/el.po
index 8120ac8bb2f..7d85bf2de57 100644
--- a/addons/mrp/i18n/el.po
+++ b/addons/mrp/i18n/el.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-11-27 12:17+0000\n"
+"PO-Revision-Date: 2011-12-06 11:08+0000\n"
"Last-Translator: qdp (OpenERP) \n"
"Language-Team: l10n_chart_gr \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
"X-Poedit-Country: GREECE\n"
"X-Poedit-Language: Greek\n"
"X-Poedit-SourceCharset: utf-8\n"
@@ -724,7 +724,7 @@ msgid "Per month"
msgstr "Ανά μήνα"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -737,7 +737,7 @@ msgid "Product Name"
msgstr "Όνομα Προϊόντος"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Άκυρη ενέργεια!"
@@ -1249,7 +1249,7 @@ msgstr "Τοποθεσία όπου το σύστημα θα αποθηκεύσ
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1303,7 +1303,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1314,7 +1314,7 @@ msgid "Production Order N° :"
msgstr "Νο Εντολής Παραγωγής:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1543,7 +1543,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1633,7 +1633,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2123,7 +2123,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/es.po b/addons/mrp/i18n/es.po
index bb45000dc25..76bfff76f74 100644
--- a/addons/mrp/i18n/es.po
+++ b/addons/mrp/i18n/es.po
@@ -7,15 +7,15 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-03-12 16:35+0000\n"
+"PO-Revision-Date: 2011-12-06 11:03+0000\n"
"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
"\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -760,7 +760,7 @@ msgid "Per month"
msgstr "Por mes"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -773,7 +773,7 @@ msgid "Product Name"
msgstr "Nombre producto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "¡Acción no válida!"
@@ -1321,7 +1321,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Este es el albarán interno que trae el producto terminado hacia el plan de "
@@ -1381,7 +1381,7 @@ msgid "Month -1"
msgstr "Mes -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Órden de producción '%s' planificada para el '%s'"
@@ -1392,7 +1392,7 @@ msgid "Production Order N° :"
msgstr "Núm. orden producción :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Orden fabricación '%s' está preparada para producir."
@@ -1635,7 +1635,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Órdenes de producción a iniciar"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1729,7 +1729,7 @@ msgid "Production Analysis"
msgstr "Análisis de producción"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiar"
@@ -2258,7 +2258,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tipo de producto es almacenable o consumible."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3324,6 +3324,13 @@ msgstr "Año"
#~ "futuras cargas de los centros de producción a partir de la planificación de "
#~ "la producción."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Este es el albarán interno que trae el producto terminado hacia el plan de "
+#~ "producción."
+
#~ msgid "Workcenter Usage"
#~ msgstr "Uso centro de producción"
diff --git a/addons/mrp/i18n/es_AR.po b/addons/mrp/i18n/es_AR.po
index f3c9ec67c23..eadea6dfc48 100644
--- a/addons/mrp/i18n/es_AR.po
+++ b/addons/mrp/i18n/es_AR.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -749,7 +749,7 @@ msgid "Per month"
msgstr "Por mes"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -762,7 +762,7 @@ msgid "Product Name"
msgstr "Nombre del Producto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "¡Acción no válida!"
@@ -1295,7 +1295,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1353,7 +1353,7 @@ msgid "Month -1"
msgstr "Mes -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1364,7 +1364,7 @@ msgid "Production Order N° :"
msgstr "Orden de producción Nº :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1601,7 +1601,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1692,7 +1692,7 @@ msgid "Production Analysis"
msgstr "Análisis de la producción"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiar"
@@ -2202,7 +2202,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tipo de producto es almacenable o consumible."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/es_CL.po b/addons/mrp/i18n/es_CL.po
index 5b574d2578d..55a2771ced5 100644
--- a/addons/mrp/i18n/es_CL.po
+++ b/addons/mrp/i18n/es_CL.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -759,7 +759,7 @@ msgid "Per month"
msgstr "Por mes"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -772,7 +772,7 @@ msgid "Product Name"
msgstr "Nombre producto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "¡Acción no válida!"
@@ -1320,11 +1320,9 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
-"Este es el albarán interno que trae el producto terminado hacia el plan de "
-"producción."
#. module: mrp
#: field:stock.change.standard.price,change_parent_price:0
@@ -1380,7 +1378,7 @@ msgid "Month -1"
msgstr "Mes -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Órden de producción '%s' planificada para el '%s'"
@@ -1391,7 +1389,7 @@ msgid "Production Order N° :"
msgstr "Núm. orden producción :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Orden fabricación '%s' está preparada para producir."
@@ -1628,7 +1626,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Órdenes de producción a iniciar"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1722,7 +1720,7 @@ msgid "Production Analysis"
msgstr "Análisis de producción"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiar"
@@ -2251,7 +2249,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tipo de producto es almacenable o consumible."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2567,6 +2565,13 @@ msgstr "Año"
#~ "paralelo. Si este centro de trabajo representa un equipo del 5 trabajadores, "
#~ "la capacidad por ciclo es de 5."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Este es el albarán interno que trae el producto terminado hacia el plan de "
+#~ "producción."
+
#~ msgid ""
#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
#~ "Routing is indicated then,the third tab of a production order (workcenters) "
diff --git a/addons/mrp/i18n/es_EC.po b/addons/mrp/i18n/es_EC.po
index a11178e0c8e..0cd26845cbf 100644
--- a/addons/mrp/i18n/es_EC.po
+++ b/addons/mrp/i18n/es_EC.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -759,7 +759,7 @@ msgid "Per month"
msgstr "Por mes"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -772,7 +772,7 @@ msgid "Product Name"
msgstr "Nombre producto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "¡Acción inválida!"
@@ -1320,11 +1320,9 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
-"Este es el albarán interno que trae el producto terminado hacia el plan de "
-"producción."
#. module: mrp
#: field:stock.change.standard.price,change_parent_price:0
@@ -1380,7 +1378,7 @@ msgid "Month -1"
msgstr "Mes -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Órden de producción '%s' planificada para el '%s'"
@@ -1391,7 +1389,7 @@ msgid "Production Order N° :"
msgstr "Núm. orden producción :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Orden fabricación '%s' está preparada para producir."
@@ -1634,7 +1632,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Órdenes de producción a iniciar"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1728,7 +1726,7 @@ msgid "Production Analysis"
msgstr "Análisis de producción"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiar"
@@ -2257,7 +2255,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tipo de producto es almacenable o consumible."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3328,6 +3326,13 @@ msgstr "Año"
#~ " *Lista de órdenes de fabricación con excepciones\n"
#~ " "
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Este es el albarán interno que trae el producto terminado hacia el plan de "
+#~ "producción."
+
#~ msgid ""
#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
#~ "Routing is indicated then,the third tab of a production order (workcenters) "
diff --git a/addons/mrp/i18n/es_MX.po b/addons/mrp/i18n/es_MX.po
index 4504a8e2f95..82d584be219 100644
--- a/addons/mrp/i18n/es_MX.po
+++ b/addons/mrp/i18n/es_MX.po
@@ -1321,7 +1321,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Este es el albarán interno que trae el producto terminado hacia el plan de "
@@ -2803,7 +2803,7 @@ msgstr "Año"
#~ "producción."
#~ msgid ""
-#~ "This is the internal picking list take bring the raw materials to the "
+#~ "This is the Internal Picking List take bring the raw materials to the "
#~ "production plan."
#~ msgstr ""
#~ "Ésta es la lista de empaquetado interna que lleva las materias primas a la "
diff --git a/addons/mrp/i18n/es_VE.po b/addons/mrp/i18n/es_VE.po
index 4504a8e2f95..82d584be219 100644
--- a/addons/mrp/i18n/es_VE.po
+++ b/addons/mrp/i18n/es_VE.po
@@ -1321,7 +1321,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Este es el albarán interno que trae el producto terminado hacia el plan de "
@@ -2803,7 +2803,7 @@ msgstr "Año"
#~ "producción."
#~ msgid ""
-#~ "This is the internal picking list take bring the raw materials to the "
+#~ "This is the Internal Picking List take bring the raw materials to the "
#~ "production plan."
#~ msgstr ""
#~ "Ésta es la lista de empaquetado interna que lleva las materias primas a la "
diff --git a/addons/mrp/i18n/et.po b/addons/mrp/i18n/et.po
index 8e2648993cb..39bae390026 100644
--- a/addons/mrp/i18n/et.po
+++ b/addons/mrp/i18n/et.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr "Kuus"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr "Toote nimi"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Vigane tegevus !"
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr "tootmiskorralduse N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/fi.po b/addons/mrp/i18n/fi.po
index 78a0b3583b9..bfcdf990112 100644
--- a/addons/mrp/i18n/fi.po
+++ b/addons/mrp/i18n/fi.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-19 12:22+0000\n"
-"Last-Translator: Pekka Pylvänäinen \n"
+"PO-Revision-Date: 2011-12-06 09:50+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: Finnish \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -749,7 +749,7 @@ msgid "Per month"
msgstr "Kuukaudessa"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -762,7 +762,7 @@ msgid "Product Name"
msgstr "Tuotteen nimi"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Virheellinen toiminto!"
@@ -1285,7 +1285,7 @@ msgstr "Paikka jonne järjestelmä varastoi valmiit tuotteet."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Tämä on sisäinen keräilyslista joka tuo lopputuotteen tuontatosuunnitelmaan"
@@ -1343,7 +1343,7 @@ msgid "Month -1"
msgstr "edellinen kk"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Valmistustilaus '%s' on aikataulutettu '%s':lle."
@@ -1354,7 +1354,7 @@ msgid "Production Order N° :"
msgstr "Tuotantotilaus nro:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Valmistustilaus '%s'on valmis tuotantoon."
@@ -1589,7 +1589,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Aloitettavat valmistustilaukset"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "Valmistustilauksia, jotka ovat %s tilassa, ei voi poistaa!"
@@ -1682,7 +1682,7 @@ msgid "Production Analysis"
msgstr "Tuotannon analyysi"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Kopioi"
@@ -2185,7 +2185,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tuotetyyppi on varastoitava tai käytettävä"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3219,6 +3219,12 @@ msgstr "Vuosi"
#~ "Työpisteen suorittavien rinnakkaisten tehtävien lukumäärä. Jos työpisteen "
#~ "henkilöstö on 5 työntekijää, kapasiteetti sykliä kohti on 5."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Tämä on sisäinen keräilyslista joka tuo lopputuotteen tuontatosuunnitelmaan"
+
#~ msgid ""
#~ "Description of the work center. Explain here what's a cycle according to "
#~ "this work center."
diff --git a/addons/mrp/i18n/fr.po b/addons/mrp/i18n/fr.po
index 884c885b019..628aeae9449 100644
--- a/addons/mrp/i18n/fr.po
+++ b/addons/mrp/i18n/fr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-09-26 12:16+0000\n"
+"PO-Revision-Date: 2011-12-06 10:24+0000\n"
"Last-Translator: lholivier \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.bom,product_uos:0
@@ -776,7 +776,7 @@ msgid "Per month"
msgstr "Par mois"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -789,7 +789,7 @@ msgid "Product Name"
msgstr "Nom du Produit"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Action non valide !"
@@ -1374,7 +1374,7 @@ msgstr "Emplacement où le système stockera les produits finis."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"C'est le bon de transfert interne qui fournit les produits finis au plan de "
@@ -1434,7 +1434,7 @@ msgid "Month -1"
msgstr "Mois -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Ordre de production '%s' est planifié pour le %s."
@@ -1445,7 +1445,7 @@ msgid "Production Order N° :"
msgstr "Ordre de Production N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "L'ordre de production '%s' est pret a être produit."
@@ -1688,7 +1688,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Ordres de fabrication à lancer"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "Impossible de supprimer l'ordre de production à l'état %s !"
@@ -1767,7 +1767,7 @@ msgid "Production Analysis"
msgstr "Analyse de la production"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copier"
@@ -2295,7 +2295,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Le type produit est stockable ou consommable."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3340,6 +3340,13 @@ msgstr "Année"
#~ "Le nom de l'objet doit commencer par x_ et ne doit contenir aucun caractère "
#~ "spécial!"
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "C'est le bon de transfert interne qui fournit les produits finis au plan de "
+#~ "production"
+
#~ msgid "A cycle is defined in the workcenter definition."
#~ msgstr "Un cycle est défini dans la définition du Centre de Production."
diff --git a/addons/mrp/i18n/gl.po b/addons/mrp/i18n/gl.po
index 3ba7c6c8c85..7410d5e6ece 100644
--- a/addons/mrp/i18n/gl.po
+++ b/addons/mrp/i18n/gl.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-06-09 15:28+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-12-06 10:31+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: Galician \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -757,7 +757,7 @@ msgid "Per month"
msgstr "Por mes"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -770,7 +770,7 @@ msgid "Product Name"
msgstr "Nome produto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Acción non válida!"
@@ -1314,7 +1314,7 @@ msgstr "Lugar onde almacenará o sistema os produtos rematados"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Este é o albará interno que trae o produto rematado ó plan de produción."
@@ -1373,7 +1373,7 @@ msgid "Month -1"
msgstr "Mes -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Orde de produción '%s' planificada para o '%s'"
@@ -1384,7 +1384,7 @@ msgid "Production Order N° :"
msgstr "Nº orde produción:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "A orde de fabricación '%s' está preparada para producir."
@@ -1626,7 +1626,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Ordes de produción a iniciar"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1720,7 +1720,7 @@ msgid "Production Analysis"
msgstr "Análise de produción"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiar"
@@ -2243,7 +2243,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "O Tipo de produto é almacenable ou consumible."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2614,6 +2614,12 @@ msgstr "Ano"
#~ "ordes de fabricación con excepcións\n"
#~ " "
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Este é o albará interno que trae o produto rematado ó plan de produción."
+
#~ msgid ""
#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
#~ "Routing is indicated then,the third tab of a production order (workcenters) "
diff --git a/addons/mrp/i18n/hi.po b/addons/mrp/i18n/hi.po
index 40199555bbc..9ece8255329 100644
--- a/addons/mrp/i18n/hi.po
+++ b/addons/mrp/i18n/hi.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr "प्रति माह"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr "वस्तु का नाम"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/hr.po b/addons/mrp/i18n/hr.po
index 0f488328de2..4600dbaa8c6 100644
--- a/addons/mrp/i18n/hr.po
+++ b/addons/mrp/i18n/hr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-08-03 08:21+0000\n"
-"Last-Translator: Mantavya Gajjar (Open ERP) \n"
+"PO-Revision-Date: 2011-12-12 09:28+0000\n"
+"Last-Translator: Tomislav Bosnjakovic \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-13 05:01+0000\n"
+"X-Generator: Launchpad (build 14458)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -31,6 +31,11 @@ msgid ""
"raw materials (stock decrease) and the production of the finished products "
"(stock increase) when the order is processed."
msgstr ""
+"Manufacturing Orders are usually proposed automatically by OpenERP based on "
+"the bill of materials and the procurement rules, but you can also create "
+"manufacturing orders manually. OpenERP will handle the consumption of the "
+"raw materials (stock decrease) and the production of the finished products "
+"(stock increase) when the order is processed."
#. module: mrp
#: help:mrp.production,location_src_id:0
@@ -40,22 +45,22 @@ msgstr "Mjesto gdje sistem traži komponente"
#. module: mrp
#: field:mrp.production,workcenter_lines:0
msgid "Work Centers Utilisation"
-msgstr "Iskorištenje Radnih Centara"
+msgstr "Iskorištenost radnih centara"
#. module: mrp
#: view:mrp.routing.workcenter:0
msgid "Routing Work Centers"
-msgstr "Slijed Radnih Centara"
+msgstr "Radni centri usmjeravanja"
#. module: mrp
#: model:ir.module.module,shortdesc:mrp.module_meta_information
msgid "Manufacturing Resource Planning"
-msgstr ""
+msgstr "Planiranje resursa proizvodnje"
#. module: mrp
#: report:mrp.production.order:0
msgid "No. Of Cycles"
-msgstr "Br. Ciklusa"
+msgstr "Br. ciklusa"
#. module: mrp
#: field:mrp.routing.workcenter,cycle_nbr:0
@@ -68,12 +73,14 @@ msgid ""
"The 'Minimum stock rule' allows the system to create procurement orders "
"automatically as soon as the minimum stock is reached."
msgstr ""
+"'Pravilo minimalne zalihe' omogućuje automatsko kreiranje naloga nabave kada "
+"nivo zalihe dostigne definirani minimum."
#. module: mrp
#: field:mrp.production,picking_id:0
#: field:mrp.production.order,picking_id:0
msgid "Picking list"
-msgstr ""
+msgstr "Skladišnica"
#. module: mrp
#: code:addons/mrp/report/price.py:121
@@ -90,7 +97,7 @@ msgstr ""
#. module: mrp
#: view:mrp.production:0
msgid "Scrap Products"
-msgstr "Otpad"
+msgstr "Otpis proizvoda"
#. module: mrp
#: view:mrp.production.order:0
@@ -102,22 +109,22 @@ msgstr "Dan"
#: model:ir.actions.act_window,name:mrp.mrp_routing_action
#: model:ir.ui.menu,name:mrp.menu_mrp_routing_action
msgid "Routings"
-msgstr ""
+msgstr "Usmjeravanja"
#. module: mrp
#: field:mrp.workcenter,product_id:0
msgid "Work Center Product"
-msgstr ""
+msgstr "Proizvod radnog centra"
#. module: mrp
#: view:mrp.bom:0
msgid "Search Bill Of Material"
-msgstr "Pretraži Listu Materijala"
+msgstr "Traži sastavnice"
#. module: mrp
#: model:process.node,note:mrp.process_node_stockproduct1
msgid "For stockable products and consumables"
-msgstr ""
+msgstr "For stockable products and consumables"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_stockproduction0
@@ -130,6 +137,8 @@ msgid ""
"Number of iterations this work center has to do in the specified operation "
"of the routing."
msgstr ""
+"Number of iterations this work center has to do in the specified operation "
+"of the routing."
#. module: mrp
#: view:mrp.bom:0
@@ -137,18 +146,18 @@ msgstr ""
#: view:mrp.production:0
#: field:mrp.production,name:0
msgid "Reference"
-msgstr "Referenca"
+msgstr "Vezna oznaka"
#. module: mrp
#: view:mrp.production:0
msgid "Finished Products"
-msgstr "Gotovi Proizvodi"
+msgstr "Gototvi proizvodi"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_servicerfq0
#: model:process.transition,name:mrp.process_transition_stockrfq0
msgid "To Buy"
-msgstr "Za Kupiti"
+msgstr "Za nabaviti"
#. module: mrp
#: view:mrp.production.order:0
@@ -165,17 +174,17 @@ msgstr ""
#. module: mrp
#: model:process.transition,note:mrp.process_transition_purchaseprocure0
msgid "The system launches automatically a RFQ to the preferred supplier."
-msgstr ""
+msgstr "Sustav automatski pokreče RFQ na preferiranog dobavljača."
#. module: mrp
#: view:mrp.production:0
msgid "Products to Finish"
-msgstr "Proizvodi za Završiti"
+msgstr "Proizvodi za završiti"
#. module: mrp
#: selection:mrp.bom,method:0
msgid "Set / Pack"
-msgstr "Set / Pakovanje"
+msgstr "Set / Paket"
#. module: mrp
#: field:mrp.installer,mrp_subproduct:0
@@ -188,12 +197,12 @@ msgstr "MRP Podproizvodi"
#: view:mrp.production.order:0
#: field:mrp.production.order,state:0
msgid "State"
-msgstr "Status"
+msgstr "Stanje"
#. module: mrp
#: field:mrp.workcenter,costs_hour:0
msgid "Cost per hour"
-msgstr "Trošak po Stu"
+msgstr "Trošak po satu"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_stockproduction0
@@ -201,7 +210,7 @@ msgid ""
"In case the Supply method of the product is Produce, the system creates a "
"production order."
msgstr ""
-"U slučaju da je metoda nabave proizvoda Proizvodnja, sistem kreira nalog za "
+"Kada je metoda nabave proizvoda Proizvodnja, sistem kreira nalog za "
"proizvodnju."
#. module: mrp
@@ -217,7 +226,7 @@ msgstr "JM"
#: field:mrp.production.order,product_qty:0
#: field:mrp.production.product.line,product_qty:0
msgid "Product Qty"
-msgstr "Količina proizvoda"
+msgstr "Količina"
#. module: mrp
#: help:mrp.workcenter,product_id:0
@@ -225,6 +234,8 @@ msgid ""
"Fill this product to track easily your production costs in the analytic "
"accounting."
msgstr ""
+"Ispunite ovaj proizvod kako b jednostavno pratili troškove proizvodnje "
+"unutar analitike računovodstva."
#. module: mrp
#: model:process.node,note:mrp.process_node_purchaseprocure0
@@ -244,7 +255,7 @@ msgstr "Izvještavanje"
#. module: mrp
#: field:mrp.workcenter,costs_cycle_account_id:0
msgid "Cycle Account"
-msgstr "Račun Ciklusa"
+msgstr "Konto ciklusa"
#. module: mrp
#: code:addons/mrp/report/price.py:121
@@ -260,7 +271,7 @@ msgstr "["
#. module: mrp
#: model:process.transition,name:mrp.process_transition_procureserviceproduct0
msgid "Procurement of services"
-msgstr "Nabava servisa"
+msgstr "Nabava usluga"
#. module: mrp
#: view:mrp.workcenter:0
@@ -270,7 +281,7 @@ msgstr "Informacija o kapacitetu"
#. module: mrp
#: report:mrp.production.order:0
msgid "Destination Location"
-msgstr "Odredišna Lokacija"
+msgstr "Odredišna lokacija"
#. module: mrp
#: view:mrp.installer:0
@@ -280,7 +291,7 @@ msgstr "naslov"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_bom
msgid "Master Data"
-msgstr "Matični Podaci"
+msgstr "Glavni podaci"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_stockmts0
@@ -288,11 +299,13 @@ msgid ""
"The system waits for the products to be available in the stock. These "
"products are typically procured manually or through a minimum stock rule."
msgstr ""
+"The system waits for the products to be available in the stock. These "
+"products are typically procured manually or through a minimum stock rule."
#. module: mrp
#: report:mrp.production.order:0
msgid "Partner Ref"
-msgstr "Referenca Parnera"
+msgstr "Oznaka partnera"
#. module: mrp
#: selection:mrp.workcenter.load,measure_unit:0
@@ -337,7 +350,7 @@ msgstr "Lipanj"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_product_produce
msgid "Product Produce"
-msgstr "Proizvedi Proizvod"
+msgstr "Proizvedi proizvod"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -353,12 +366,12 @@ msgstr ""
#. module: mrp
#: model:process.transition,name:mrp.process_transition_procurestockableproduct0
msgid "Procurement of stockable Product"
-msgstr "Nabava skladištivog Proizvoda"
+msgstr "Nabava uskladištivog proizvoda"
#. module: mrp
#: view:mrp.bom:0
msgid "Default UOM"
-msgstr "Predefinirana JM"
+msgstr "Uobičajena JM"
#. module: mrp
#: code:addons/mrp/report/price.py:130
@@ -377,7 +390,7 @@ msgstr "Broj sati"
#. module: mrp
#: view:mrp.production:0
msgid "Confirm Production"
-msgstr "Potvrdi Proizvodnju"
+msgstr "Potvrdi proizvodnju"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_stockproduct0
@@ -385,6 +398,8 @@ msgid ""
"The system creates an order (production or purchased) depending on the sold "
"quantity and the products parameters."
msgstr ""
+"Sistem kreira nalog (za proizvodnju ili nabavu) prema prodanim količinama i "
+"parametrima proizvoda."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_servicemts0
@@ -392,6 +407,8 @@ msgid ""
"This is used in case of a service without any impact in the system, a "
"training session for instance."
msgstr ""
+"This is used in case of a service without any impact in the system, a "
+"training session for instance."
#. module: mrp
#: field:mrp.installer,mrp_repair:0
@@ -411,7 +428,7 @@ msgstr "Radno vrijeme"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_in_out_picking_tree
msgid "Weekly Stock Value Variation"
-msgstr "Tjedna Varijacija Vrijednosti Zalihe"
+msgstr "Tjedna varijacija vrijednosti zalihe"
#. module: mrp
#: help:mrp.installer,mrp_repair:0
@@ -425,12 +442,12 @@ msgstr ""
#: report:mrp.production.order:0
#: field:mrp.production.order,date_planned:0
msgid "Scheduled Date"
-msgstr "Planirani Datum"
+msgstr "Planirani datum"
#. module: mrp
#: report:mrp.production.order:0
msgid "Bill Of Material"
-msgstr "Lista Materijala"
+msgstr "Sastavnica"
#. module: mrp
#: help:mrp.routing,location_id:0
@@ -439,21 +456,24 @@ msgid ""
"needed.Set a location if you produce at a fixed location. This can be a "
"partner location if you subcontract the manufacturing operations."
msgstr ""
+"Keep empty if you produce at the location where the finished products are "
+"needed.Set a location if you produce at a fixed location. This can be a "
+"partner location if you subcontract the manufacturing operations."
#. module: mrp
#: view:board.board:0
msgid "Stock Value Variation"
-msgstr ""
+msgstr "Stock Value Variation"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action2
msgid "Bill of Materials Structure"
-msgstr "Struktura Liste Materijala"
+msgstr "Struktura sastavnice"
#. module: mrp
#: model:process.node,note:mrp.process_node_serviceproduct0
msgid "Product type is service"
-msgstr "Tip proizvoda je servis"
+msgstr "Tip proizvoda je usluga"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_property_group_action
@@ -461,16 +481,18 @@ msgid ""
"Define specific property groups that can be assigned to the properties of "
"your bill of materials."
msgstr ""
+"Define specific property groups that can be assigned to the properties of "
+"your bill of materials."
#. module: mrp
#: model:process.transition,name:mrp.process_transition_bom0
msgid "Manufacturing decomposition"
-msgstr ""
+msgstr "Dekompozicija proizvodnje"
#. module: mrp
#: model:process.node,note:mrp.process_node_serviceproduct1
msgid "For Services."
-msgstr "Za Servise"
+msgstr "Za usluge."
#. module: mrp
#: field:mrp.bom.revision,date:0
@@ -484,6 +506,8 @@ msgid ""
"Complete this only if you want automatic analytic accounting entries on "
"production orders."
msgstr ""
+"Complete this only if you want automatic analytic accounting entries on "
+"production orders."
#. module: mrp
#: field:mrp.production.workcenter.line,cycle:0
@@ -494,7 +518,7 @@ msgstr "Broj ciklusa"
#: model:process.node,note:mrp.process_node_orderrfq0
#: model:process.node,note:mrp.process_node_rfq0
msgid "Request for Quotation."
-msgstr "Zahtjev za Ponudu"
+msgstr "Zahtjev za ponudom"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_billofmaterialrouting0
@@ -502,32 +526,34 @@ msgid ""
"The Bill of Material is linked to a routing, i.e. the succession of work "
"centers."
msgstr ""
+"The Bill of Material is linked to a routing, i.e. the succession of work "
+"centers."
#. module: mrp
#: constraint:product.product:0
msgid "Error: Invalid ean code"
-msgstr "Pogreška: Nevažeći EAN kod"
+msgstr "Greška: Neispravan barkod!"
#. module: mrp
#: view:mrp.routing:0
#: field:mrp.routing,location_id:0
msgid "Production Location"
-msgstr ""
+msgstr "Lokacija proizvodnje"
#. module: mrp
#: view:mrp.production:0
msgid "Change Qty"
-msgstr ""
+msgstr "Promjeni kol."
#. module: mrp
#: view:mrp.production:0
msgid "Force Reservation"
-msgstr ""
+msgstr "Force Reservation"
#. module: mrp
#: field:mrp.bom.revision,author_id:0
msgid "Author"
-msgstr ""
+msgstr "Autor"
#. module: mrp
#: field:report.mrp.inout,value:0
@@ -537,12 +563,12 @@ msgstr "Vrijednost Zalihe"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_product_bom_structure
msgid "Product BoM Structure"
-msgstr ""
+msgstr "Proizvod BoM Struktura"
#. module: mrp
#: view:mrp.production:0
msgid "Search Production"
-msgstr "Pretraži Proizvodnju"
+msgstr "Traži proizvodnju"
#. module: mrp
#: code:addons/mrp/report/price.py:130
@@ -558,36 +584,36 @@ msgstr "Ožujak"
#. module: mrp
#: field:mrp.bom,child_complete_ids:0
msgid "BoM Hierarchy"
-msgstr ""
+msgstr "BoM Hierarchy"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.act_mrp_product_produce
#: view:mrp.product.produce:0
#: view:mrp.production:0
msgid "Produce"
-msgstr ""
+msgstr "Produce"
#. module: mrp
#: help:mrp.workcenter,costs_cycle:0
msgid "Specify Cost of Work Center per cycle."
-msgstr ""
+msgstr "Trošak radnog centra po ciklusu."
#. module: mrp
#: selection:mrp.production,state:0
#: view:mrp.production.order:0
#: selection:mrp.production.order,state:0
msgid "Picking Exception"
-msgstr ""
+msgstr "Skladišna iznimka"
#. module: mrp
#: field:mrp.bom,bom_lines:0
msgid "BoM Lines"
-msgstr ""
+msgstr "BoM Lines"
#. module: mrp
#: field:mrp.workcenter,time_start:0
msgid "Time before prod."
-msgstr ""
+msgstr "Time before prod."
#. module: mrp
#: help:mrp.routing,active:0
@@ -595,11 +621,13 @@ msgid ""
"If the active field is set to False, it will allow you to hide the routing "
"without removing it."
msgstr ""
+"If the active field is set to False, it will allow you to hide the routing "
+"without removing it."
#. module: mrp
#: model:process.transition,name:mrp.process_transition_billofmaterialrouting0
msgid "Material Routing"
-msgstr ""
+msgstr "Usmjeravanje materijala"
#. module: mrp
#: view:mrp.production:0
@@ -607,7 +635,7 @@ msgstr ""
#: report:mrp.production.order:0
#: field:mrp.production.order,consumed_products:0
msgid "Consumed Products"
-msgstr "Utrošeni Proizvodi"
+msgstr "Utrošeni proizvodi"
#. module: mrp
#: constraint:mrp.bom:0
@@ -619,7 +647,7 @@ msgstr ""
#: model:ir.model,name:mrp.model_mrp_workcenter_load
#: model:ir.model,name:mrp.model_report_workcenter_load
msgid "Work Center Load"
-msgstr "Opterećenje Radnog Centra"
+msgstr "Opterećenje radnog centra"
#. module: mrp
#: code:addons/mrp/procurement.py:45
@@ -631,7 +659,7 @@ msgstr ""
#: model:ir.actions.act_window,name:mrp.mrp_bom_form_action2
#: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action2
msgid "Bill of Material Components"
-msgstr "Komponente Liste Materijala"
+msgstr "Komponente sastavnice"
#. module: mrp
#: field:mrp.production.order,nbr:0
@@ -656,16 +684,20 @@ msgid ""
"operations and to plan future loads on work centers based on production "
"plannification."
msgstr ""
+"The list of operations (list of work centers) to produce the finished "
+"product. The routing is mainly used to compute work center costs during "
+"operations and to plan future loads on work centers based on production "
+"plannification."
#. module: mrp
#: help:mrp.workcenter,time_cycle:0
msgid "Time in hours for doing one cycle."
-msgstr ""
+msgstr "Vrijeme u satima za jedan ciklus."
#. module: mrp
#: report:bom.structure:0
msgid "BOM Ref"
-msgstr ""
+msgstr "Ozn. sastavnice"
#. module: mrp
#: view:mrp.production:0
@@ -678,7 +710,7 @@ msgstr "U proizvodnji"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_property
msgid "Master Bill of Materials"
-msgstr ""
+msgstr "Glavna sastavnica"
#. module: mrp
#: help:mrp.bom,product_uos:0
@@ -686,6 +718,7 @@ msgid ""
"Product UOS (Unit of Sale) is the unit of measurement for the invoicing and "
"promotion of stock."
msgstr ""
+"JP proizvoda (Jedinica Prodaje) je mjerna jedinica za fakturiranje prodaje."
#. module: mrp
#: view:mrp.product_price:0
@@ -697,7 +730,7 @@ msgstr "Ispis"
#: view:mrp.bom:0
#: view:mrp.workcenter:0
msgid "Type"
-msgstr "Tip"
+msgstr "Vrsta"
#. module: mrp
#: code:addons/mrp/report/price.py:150
@@ -709,7 +742,7 @@ msgstr "Ukupni Trošak "
#. module: mrp
#: model:process.node,note:mrp.process_node_minimumstockrule0
msgid "Linked to the 'Minimum stock rule' supplying method."
-msgstr ""
+msgstr "Vezano na 'Pravilo minimalne zalihe' metodu nabave."
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
@@ -717,7 +750,7 @@ msgid "Per month"
msgstr "Mjesečno"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -727,10 +760,10 @@ msgstr ""
#. module: mrp
#: report:bom.structure:0
msgid "Product Name"
-msgstr "Ime Proizvoda"
+msgstr "Naziv proizvoda"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Pogrešna akcija !"
@@ -738,7 +771,7 @@ msgstr "Pogrešna akcija !"
#. module: mrp
#: help:mrp.bom,product_efficiency:0
msgid "A factor of 0.9 means a loss of 10% within the production process."
-msgstr ""
+msgstr "A factor of 0.9 means a loss of 10% within the production process."
#. module: mrp
#: view:mrp.installer:0
@@ -756,12 +789,12 @@ msgstr "Datum ispisa"
#: model:process.node,name:mrp.process_node_orderrfq0
#: model:process.node,name:mrp.process_node_rfq0
msgid "RFQ"
-msgstr ""
+msgstr "ZZP (RFQ)"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_producttostockrules0
msgid "Procurement rule"
-msgstr ""
+msgstr "Pravilo nabave"
#. module: mrp
#: help:mrp.workcenter,costs_hour:0
@@ -790,6 +823,9 @@ msgid ""
"order creates a RFQ for a subcontracting purchase order or waits until the "
"service is done (= the delivery of the products)."
msgstr ""
+"Depending on the chosen method to 'supply' the service, the procurement "
+"order creates a RFQ for a subcontracting purchase order or waits until the "
+"service is done (= the delivery of the products)."
#. module: mrp
#: selection:mrp.production,priority:0
@@ -800,12 +836,12 @@ msgstr "Hitno"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_routing_workcenter
msgid "Work Center Usage"
-msgstr ""
+msgstr "Work Center Usage"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production
msgid "Manufacturing Order"
-msgstr "Nalog za Proizvodnju"
+msgstr "Nalog proizvodnje"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_productionprocureproducts0
@@ -823,19 +859,19 @@ msgstr ""
#: view:mrp.production:0
#: field:mrp.production,cycle_total:0
msgid "Total Cycles"
-msgstr "Ukupno Ciklusa"
+msgstr "Ukupno ciklusa"
#. module: mrp
#: selection:mrp.production,state:0
#: view:mrp.production.order:0
#: selection:mrp.production.order,state:0
msgid "Ready to Produce"
-msgstr "Spremno za Proizvodnju"
+msgstr "Spremno za proizvodnju"
#. module: mrp
#: field:mrp.bom.revision,name:0
msgid "Modification name"
-msgstr "Ime promjene"
+msgstr "Naziv promjene"
#. module: mrp
#: view:mrp.bom:0
@@ -847,7 +883,7 @@ msgstr "Datum"
#. module: mrp
#: field:mrp.bom,type:0
msgid "BoM Type"
-msgstr ""
+msgstr "BoM Type"
#. module: mrp
#: view:mrp.production.order:0
@@ -865,7 +901,7 @@ msgstr ""
#: view:mrp.production.order:0
#: view:mrp.property:0
msgid "Search"
-msgstr "Traži"
+msgstr "Search"
#. module: mrp
#: field:report.workcenter.load,cycle:0
@@ -875,30 +911,30 @@ msgstr "Broj Ciklusa"
#. module: mrp
#: model:ir.model,name:mrp.model_res_company
msgid "Companies"
-msgstr "Tvrtke"
+msgstr "Organizacije"
#. module: mrp
#: model:process.node,name:mrp.process_node_minimumstockrule0
#: model:process.node,name:mrp.process_node_productminimumstockrule0
msgid "Minimum Stock"
-msgstr ""
+msgstr "Minimalna zaliha"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menus_dash_mrp
msgid "Dashboard"
-msgstr "Kontrolna ploča"
+msgstr "Kokpit"
#. module: mrp
#: view:board.board:0
msgid "Work Center Future Load"
-msgstr "Buduće Opterećenje Radnog Centra"
+msgstr "Buduće opterećenje radnog centra"
#. module: mrp
#: model:process.node,name:mrp.process_node_stockproduct0
#: model:process.node,name:mrp.process_node_stockproduct1
#: model:process.process,name:mrp.process_process_stockableproductprocess0
msgid "Stockable Product"
-msgstr "Uskladištivi proizvod"
+msgstr "Stockable Product"
#. module: mrp
#: code:addons/mrp/report/price.py:121
@@ -914,7 +950,7 @@ msgstr "Šifra"
#. module: mrp
#: report:mrp.production.order:0
msgid "No. Of Hours"
-msgstr "Br. Sati"
+msgstr "Br. sati"
#. module: mrp
#: field:mrp.installer,mrp_jit:0
@@ -925,7 +961,7 @@ msgstr ""
#: view:mrp.property:0
#: view:mrp.property.group:0
msgid "Property Group"
-msgstr "Grupa Svojstava"
+msgstr "Grupa svojstava"
#. module: mrp
#: view:mrp.production:0
@@ -935,7 +971,7 @@ msgstr "Kol."
#. module: mrp
#: model:process.node,note:mrp.process_node_production0
msgid "Manufacturing Plan."
-msgstr "Plan Proizvodnje"
+msgstr "Plan proizvodnje."
#. module: mrp
#: view:mrp.routing:0
@@ -957,7 +993,7 @@ msgstr ""
#: view:mrp.production:0
#: view:mrp.workcenter.load:0
msgid "Cancel"
-msgstr "Otkaži"
+msgstr "Odustani"
#. module: mrp
#: view:mrp.production:0
@@ -970,6 +1006,8 @@ msgid ""
"Number of operations this Work Center can do in parallel. If this Work "
"Center represents a team of 5 workers, the capacity per cycle is 5."
msgstr ""
+"Number of operations this Work Center can do in parallel. If this Work "
+"Center represents a team of 5 workers, the capacity per cycle is 5."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_servicerfq0
@@ -977,11 +1015,13 @@ msgid ""
"If the service has a 'Buy' supply method, this creates a RFQ, a "
"subcontracting demand for instance."
msgstr ""
+"Ako je usluga koristi način opskrbe \"Kupovina\", stvara se RFQ, "
+"podugovaranje potražnje za primjer"
#. module: mrp
#: field:mrp.production,move_prod_id:0
msgid "Move product"
-msgstr "Premjesti Proizvod"
+msgstr "Premjesti proizvod"
#. module: mrp
#: view:mrp.production:0
@@ -991,7 +1031,7 @@ msgstr "Kasni"
#. module: mrp
#: model:process.node,name:mrp.process_node_servicemts0
msgid "Make to stock"
-msgstr ""
+msgstr "Sa skladišta (MTS)"
#. module: mrp
#: help:mrp.routing.workcenter,sequence:0
@@ -1002,28 +1042,28 @@ msgstr ""
#. module: mrp
#: report:bom.structure:0
msgid "BOM Name"
-msgstr ""
+msgstr "BOM Name"
#. module: mrp
#: view:mrp.production:0
msgid "Start Production"
-msgstr "Pokreni Proizvodnju"
+msgstr "Pokreni proizvodnju"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.open_board_manufacturing
#: model:ir.ui.menu,name:mrp.menu_board_manufacturing
msgid "Production Dashboard"
-msgstr "Upravljačka ploča proizvodnje"
+msgstr "Kokpit proizvodnje"
#. module: mrp
#: view:mrp.production:0
msgid "Source Loc."
-msgstr ""
+msgstr "Lok. izvora"
#. module: mrp
#: field:mrp.bom,position:0
msgid "Internal Reference"
-msgstr "Interna Referenca"
+msgstr "Interna oznaka"
#. module: mrp
#: help:mrp.installer,stock_location:0
@@ -1035,7 +1075,7 @@ msgstr ""
#. module: mrp
#: model:process.node,note:mrp.process_node_billofmaterial0
msgid "Product's structure"
-msgstr "Struktura Proizvoda"
+msgstr "Struktura proizvoda"
#. module: mrp
#: field:mrp.bom,name:0
@@ -1064,7 +1104,7 @@ msgstr ""
#. module: mrp
#: field:mrp.product.produce,mode:0
msgid "Mode"
-msgstr "Način"
+msgstr "Mode"
#. module: mrp
#: report:bom.structure:0
@@ -1074,7 +1114,7 @@ msgstr "]"
#. module: mrp
#: field:mrp.workcenter.load,measure_unit:0
msgid "Amount measuring unit"
-msgstr ""
+msgstr "Mjerna jedinica iznosa"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_production_action_planning
@@ -1086,6 +1126,12 @@ msgid ""
"materials have been defined, OpenERP is capable of automatically deciding on "
"the manufacturing route depending on the needs of the company."
msgstr ""
+"Manufacturing Orders describe the operations that need to be carried out and "
+"the raw materials usage for each production stage. You use specifications "
+"(bills of materials or BoM) to work out the raw material requirements and "
+"the manufacturing orders needed for the finished products. Once the bills of "
+"materials have been defined, OpenERP is capable of automatically deciding on "
+"the manufacturing route depending on the needs of the company."
#. module: mrp
#: constraint:mrp.production:0
@@ -1095,7 +1141,7 @@ msgstr ""
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action3
msgid "Manufacturing Orders in Progress"
-msgstr "Nalozi za Proizvodnju u Radu"
+msgstr "Nalozi proizvodnje u tijeku"
#. module: mrp
#: model:ir.module.module,description:mrp.module_meta_information
@@ -1139,7 +1185,7 @@ msgstr ""
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action4
msgid "Manufacturing Orders Waiting Products"
-msgstr "Nalozi za Proizvodnju koji čekaju Proizvode"
+msgstr "Nalozi proizvodnje koji čekaju proizvode"
#. module: mrp
#: view:mrp.bom:0
@@ -1160,19 +1206,19 @@ msgstr "Trašak Ciklusa"
#. module: mrp
#: selection:mrp.workcenter.load,measure_unit:0
msgid "Amount in cycles"
-msgstr "Količina u ciklusima"
+msgstr "Iznos u ciklusima"
#. module: mrp
#: field:mrp.production,location_dest_id:0
#: view:mrp.production.order:0
#: field:mrp.production.order,location_dest_id:0
msgid "Finished Products Location"
-msgstr "Lokacija Završenih Proizvoda"
+msgstr "Lokacija gotovih proizvoda"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_pm_resources_config
msgid "Resources"
-msgstr "Resursi"
+msgstr "Sredstva"
#. module: mrp
#: field:mrp.workcenter,costs_journal_id:0
@@ -1184,7 +1230,7 @@ msgstr "Dnevnik analitike"
#: model:ir.ui.menu,name:mrp.menu_view_resource_search_mrp
#: field:mrp.routing,workcenter_lines:0
msgid "Work Centers"
-msgstr "Radni Centri"
+msgstr "Radni centri"
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
@@ -1199,6 +1245,10 @@ msgid ""
"They are attached to bills of materials that will define the required raw "
"materials."
msgstr ""
+"Routings allow you to create and manage the manufacturing operations that "
+"should be followed within your work centers in order to produce a product. "
+"They are attached to bills of materials that will define the required raw "
+"materials."
#. module: mrp
#: field:report.workcenter.load,hour:0
@@ -1208,7 +1258,7 @@ msgstr "Broj Sati"
#. module: mrp
#: view:mrp.routing:0
msgid "Work Center Operations"
-msgstr "Operacije Radnih Centara"
+msgstr "Operacije radnog centra"
#. module: mrp
#: view:mrp.routing:0
@@ -1222,7 +1272,7 @@ msgstr "Bilješke"
#: field:mrp.production.order,bom_id:0
#: model:process.node,name:mrp.process_node_billofmaterial0
msgid "Bill of Material"
-msgstr "Lista Materijala"
+msgstr "Sastavnica"
#. module: mrp
#: view:mrp.workcenter.load:0
@@ -1237,14 +1287,16 @@ msgstr "Opterećenje radnog centra"
#. module: mrp
#: help:mrp.production,location_dest_id:0
msgid "Location where the system will stock the finished products."
-msgstr ""
+msgstr "Lokacija gotovih proizvoda"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
+"This is the Internal Picking List that brings the finished product to the "
+"production plan"
#. module: mrp
#: field:stock.change.standard.price,change_parent_price:0
@@ -1254,7 +1306,7 @@ msgstr ""
#. module: mrp
#: model:ir.model,name:mrp.model_stock_move
msgid "Stock Move"
-msgstr "Prijenos Zaliha"
+msgstr "Skladišni prijenosi"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_producttostockrules0
@@ -1263,11 +1315,14 @@ msgid ""
"maxi quantity. It's available in the Inventory management menu and "
"configured by product."
msgstr ""
+"The Minimum Stock Rule is an automatic procurement rule based on a mini and "
+"maxi quantity. It's available in the Inventory management menu and "
+"configured by product."
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
msgid "Day by day"
-msgstr ""
+msgstr "Dan po dan"
#. module: mrp
#: view:mrp.bom:0
@@ -1288,7 +1343,7 @@ msgstr "Prioritet"
#. module: mrp
#: model:ir.model,name:mrp.model_stock_picking
msgid "Picking List"
-msgstr "Lista odabira"
+msgstr "Skladišni dokument"
#. module: mrp
#: view:mrp.production.order:0
@@ -1296,7 +1351,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Nalog za Proizvodnju '%s' je planiran za %s."
@@ -1304,10 +1359,10 @@ msgstr "Nalog za Proizvodnju '%s' je planiran za %s."
#. module: mrp
#: report:mrp.production.order:0
msgid "Production Order N° :"
-msgstr ""
+msgstr "Production Order N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Nalog za Proizvodnju '%s' je spreman za proizvodnju."
@@ -1315,19 +1370,19 @@ msgstr "Nalog za Proizvodnju '%s' je spreman za proizvodnju."
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production_product_line
msgid "Production Scheduled Product"
-msgstr ""
+msgstr "Production Scheduled Product"
#. module: mrp
#: help:res.company,manufacturing_lead:0
msgid "Security days for each manufacturing operation."
-msgstr ""
+msgstr "Rezervni dani za svaku operaciju proizvodnje"
#. module: mrp
#: model:process.node,name:mrp.process_node_mts0
#: model:process.transition,name:mrp.process_transition_servicemts0
#: model:process.transition,name:mrp.process_transition_stockmts0
msgid "Make to Stock"
-msgstr ""
+msgstr "Sa skladišta (MTS)"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -1343,24 +1398,29 @@ msgid ""
"product needs. You can either create a bill of materials to define specific "
"production steps or define a single multi-level bill of materials."
msgstr ""
+"Master Bills of Materials allow you to create and manage the list of "
+"necessary raw materials used to make a finished product. OpenERP will use "
+"these BoMs to automatically propose manufacturing orders according to "
+"product needs. You can either create a bill of materials to define specific "
+"production steps or define a single multi-level bill of materials."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_stockrfq0
msgid ""
"In case the Supply method of the product is Buy, the system creates a "
"purchase order."
-msgstr ""
+msgstr "Kada je Metoda nabave \"Kupi\", sistem kreira nalog za nabavu."
#. module: mrp
#: model:ir.model,name:mrp.model_procurement_order
msgid "Procurement"
-msgstr ""
+msgstr "Procurement"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_view_mrp_product_price_wizard
#: view:mrp.product_price:0
msgid "Product Cost Structure"
-msgstr ""
+msgstr "Struktura troška proizvoda"
#. module: mrp
#: code:addons/mrp/report/price.py:130
@@ -1376,7 +1436,7 @@ msgstr ""
#. module: mrp
#: view:mrp.production:0
msgid "Production Work Centers"
-msgstr ""
+msgstr "Radni centri proizvodnje"
#. module: mrp
#: view:mrp.production.order:0
@@ -1393,28 +1453,28 @@ msgstr ""
#. module: mrp
#: view:mrp.workcenter:0
msgid "Search for mrp workcenter"
-msgstr ""
+msgstr "Search for mrp workcenter"
#. module: mrp
#: view:mrp.bom:0
msgid "BoM Structure"
-msgstr ""
+msgstr "BoM Structure"
#. module: mrp
#: field:mrp.production,date_start:0
#: field:mrp.production.order,date_start:0
msgid "Start Date"
-msgstr ""
+msgstr "Početni datum"
#. module: mrp
#: field:mrp.workcenter,costs_hour_account_id:0
msgid "Hour Account"
-msgstr ""
+msgstr "Hour Account"
#. module: mrp
#: view:mrp.production:0
msgid "Destination Loc."
-msgstr ""
+msgstr "Odredišna lokacija"
#. module: mrp
#: field:mrp.production.order,product_id2:0
@@ -1424,24 +1484,24 @@ msgstr ""
#. module: mrp
#: view:mrp.production:0
msgid "Pending"
-msgstr ""
+msgstr "Na čekanju"
#. module: mrp
#: field:mrp.bom,active:0
#: field:mrp.routing,active:0
msgid "Active"
-msgstr ""
+msgstr "Aktivan"
#. module: mrp
#: model:process.node,name:mrp.process_node_procureproducts0
msgid "Procure Products"
-msgstr ""
+msgstr "Procure Products"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_workcenter_load_tree
#: view:report.workcenter.load:0
msgid "Work Center Loads"
-msgstr ""
+msgstr "Opterećenje radnog centra"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_property_action
@@ -1452,13 +1512,13 @@ msgstr ""
#: view:procurement.order:0
#: field:procurement.order,property_ids:0
msgid "Properties"
-msgstr ""
+msgstr "Svojstva"
#. module: mrp
#: help:mrp.production,origin:0
msgid ""
"Reference of the document that generated this production order request."
-msgstr ""
+msgstr "Dokument koji je generirao ovaj nalog za proizvodnju."
#. module: mrp
#: sql_constraint:mrp.bom:0
@@ -1467,21 +1527,24 @@ msgid ""
"You should install the mrp_subproduct module if you want to manage extra "
"products on BoMs !"
msgstr ""
+"All product quantities must be greater than 0.\n"
+"You should install the mrp_subproduct module if you want to manage extra "
+"products on BoMs !"
#. module: mrp
#: view:mrp.production:0
msgid "Extra Information"
-msgstr "Dodatne Informacije"
+msgstr "Dodatni Podaci"
#. module: mrp
#: model:ir.model,name:mrp.model_change_production_qty
msgid "Change Quantity of Products"
-msgstr ""
+msgstr "Promijeni količine proizvoda"
#. module: mrp
#: model:process.node,note:mrp.process_node_productionorder0
msgid "Drives the procurement orders for raw material."
-msgstr ""
+msgstr "Upravlja nalozima nabave za sirovine."
#. module: mrp
#: view:mrp.production.order:0
@@ -1491,19 +1554,19 @@ msgstr ""
#. module: mrp
#: field:mrp.workcenter,costs_general_account_id:0
msgid "General Account"
-msgstr ""
+msgstr "Konto glavne knjige"
#. module: mrp
#: report:mrp.production.order:0
msgid "SO Number"
-msgstr ""
+msgstr "SO Number"
#. module: mrp
#: selection:mrp.production,state:0
#: view:mrp.production.order:0
#: selection:mrp.production.order,state:0
msgid "Done"
-msgstr ""
+msgstr "Izvršeno"
#. module: mrp
#: model:ir.model,name:mrp.model_stock_change_standard_price
@@ -1515,13 +1578,13 @@ msgstr ""
#: report:mrp.production.order:0
#: field:mrp.production.order,origin:0
msgid "Source Document"
-msgstr ""
+msgstr "Izvorni dokument"
#. module: mrp
#: selection:mrp.production,priority:0
#: selection:mrp.production.order,priority:0
msgid "Not urgent"
-msgstr ""
+msgstr "Not urgent"
#. module: mrp
#: help:stock.change.standard.price,change_parent_price:0
@@ -1533,10 +1596,10 @@ msgstr ""
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action2
msgid "Manufacturing Orders To Start"
-msgstr "Naloz za Proizvodnju Za Pokrenuti"
+msgstr "Ne pokrenuti nalozi proizvodnje"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1548,12 +1611,12 @@ msgstr ""
#: view:mrp.workcenter:0
#: field:report.workcenter.load,workcenter_id:0
msgid "Work Center"
-msgstr ""
+msgstr "Radni centar"
#. module: mrp
#: field:mrp.workcenter,capacity_per_cycle:0
msgid "Capacity per Cycle"
-msgstr ""
+msgstr "Kapacitet po ciklusu"
#. module: mrp
#: model:ir.model,name:mrp.model_product_product
@@ -1566,30 +1629,30 @@ msgstr ""
#: field:mrp.production.order,product_id:0
#: field:mrp.production.product.line,product_id:0
msgid "Product"
-msgstr ""
+msgstr "Proizvod"
#. module: mrp
#: view:mrp.production:0
#: field:mrp.production,hour_total:0
msgid "Total Hours"
-msgstr ""
+msgstr "Uk. sati"
#. module: mrp
#: field:mrp.production,location_src_id:0
#: field:mrp.production.order,location_src_id:0
msgid "Raw Materials Location"
-msgstr ""
+msgstr "Lokacija sirovina"
#. module: mrp
#: view:mrp.product_price:0
msgid "Print Cost Structure of Product."
-msgstr ""
+msgstr "Print Cost Structure of Product."
#. module: mrp
#: field:mrp.bom,product_uos:0
#: field:mrp.production.product.line,product_uos:0
msgid "Product UOS"
-msgstr ""
+msgstr "JP Proizvoda"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_workcenter_action
@@ -1602,7 +1665,7 @@ msgstr ""
#. module: mrp
#: view:mrp.production:0
msgid "Consume Products"
-msgstr ""
+msgstr "Utroši proizvode"
#. module: mrp
#: field:mrp.bom,product_uom:0
@@ -1610,14 +1673,14 @@ msgstr ""
#: field:mrp.production.order,product_uom:0
#: field:mrp.production.product.line,product_uom:0
msgid "Product UOM"
-msgstr ""
+msgstr "JM proizvoda"
#. module: mrp
#: model:process.node,name:mrp.process_node_stock0
#: model:process.transition,name:mrp.process_transition_servicemto0
#: model:process.transition,name:mrp.process_transition_stockproduct0
msgid "Make to Order"
-msgstr ""
+msgstr "Po narudžbi (MTO)"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_mrp_production_order
@@ -1626,7 +1689,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -1634,29 +1697,29 @@ msgstr ""
#. module: mrp
#: view:mrp.production.lot.line:0
msgid "Production Products"
-msgstr ""
+msgstr "Proizvodnja proizvoda"
#. module: mrp
#: field:mrp.production,date_finished:0
#: field:mrp.production.order,date_finished:0
msgid "End Date"
-msgstr ""
+msgstr "Završni Datum"
#. module: mrp
#: field:mrp.workcenter,resource_id:0
msgid "Resource"
-msgstr ""
+msgstr "Resurs"
#. module: mrp
#: help:mrp.bom,date_start:0
#: help:mrp.bom,date_stop:0
msgid "Validity of this BoM or component. Keep empty if it's always valid."
-msgstr ""
+msgstr "Valjanost Bom ili komponente. Držite prazno ako je uvijek valjan."
#. module: mrp
#: field:mrp.production,product_uos:0
msgid "Product UoS"
-msgstr ""
+msgstr "JP Proizvoda"
#. module: mrp
#: view:mrp.production.order:0
@@ -1667,7 +1730,7 @@ msgstr ""
#: selection:mrp.production,priority:0
#: selection:mrp.production.order,priority:0
msgid "Very Urgent"
-msgstr ""
+msgstr "Very Urgent"
#. module: mrp
#: help:mrp.bom,routing_id:0
@@ -1677,37 +1740,41 @@ msgid ""
"operations and to plan future loads on work centers based on production "
"planning."
msgstr ""
+"The list of operations (list of work centers) to produce the finished "
+"product. The routing is mainly used to compute work center costs during "
+"operations and to plan future loads on work centers based on production "
+"planning."
#. module: mrp
#: view:change.production.qty:0
msgid "Approve"
-msgstr ""
+msgstr "Odobri"
#. module: mrp
#: view:mrp.property.group:0
msgid "Properties categories"
-msgstr ""
+msgstr "Properties categories"
#. module: mrp
#: help:mrp.production.workcenter.line,sequence:0
msgid "Gives the sequence order when displaying a list of work orders."
-msgstr ""
+msgstr "Definira poredak radnih naloga u popisu."
#. module: mrp
#: report:mrp.production.order:0
msgid "Source Location"
-msgstr ""
+msgstr "Izvorna lokacija"
#. module: mrp
#: view:mrp.production:0
#: view:mrp.production.product.line:0
msgid "Scheduled Products"
-msgstr "Planirani Proizvodi"
+msgstr "Planirani proizvodi"
#. module: mrp
#: view:mrp.production.lot.line:0
msgid "Production Products Consommation"
-msgstr ""
+msgstr "Production Products Consommation"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action
@@ -1716,7 +1783,7 @@ msgstr ""
#: model:ir.ui.menu,name:mrp.menu_mrp_production_order_action
#: view:mrp.production:0
msgid "Manufacturing Orders"
-msgstr "Nalozi za Proizvodnju"
+msgstr "Nalozi za proizvodnju"
#. module: mrp
#: help:mrp.product.produce,mode:0
@@ -1727,29 +1794,34 @@ msgid ""
"the quantity selected and it will finish the production order when total "
"ordered quantities are produced."
msgstr ""
+"'Consume only' mode will only consume the products with the quantity "
+"selected.\n"
+"'Consume & Produce' mode will consume as well as produce the products with "
+"the quantity selected and it will finish the production order when total "
+"ordered quantities are produced."
#. module: mrp
#: view:mrp.production:0
#: report:mrp.production.order:0
msgid "Work Orders"
-msgstr "Radni Nalozi"
+msgstr "Radni nalozi"
#. module: mrp
#: field:mrp.workcenter,costs_cycle:0
msgid "Cost per cycle"
-msgstr ""
+msgstr "Cost per cycle"
#. module: mrp
#: model:process.node,name:mrp.process_node_serviceproduct0
#: model:process.node,name:mrp.process_node_serviceproduct1
msgid "Service"
-msgstr ""
+msgstr "Service"
#. module: mrp
#: selection:mrp.production,state:0
#: selection:mrp.production.order,state:0
msgid "Cancelled"
-msgstr ""
+msgstr "Otkazani"
#. module: mrp
#: view:mrp.production.order:0
@@ -1761,6 +1833,7 @@ msgstr ""
msgid ""
"UoM (Unit of Measure) is the unit of measurement for the inventory control"
msgstr ""
+"UoM (Unit of Measure) is the unit of measurement for the inventory control"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_bom0
@@ -1769,6 +1842,9 @@ msgid ""
"are products themselves) can also have their own Bill of Material (multi-"
"level)."
msgstr ""
+"The Bill of Material is the product's decomposition. The components (that "
+"are products themselves) can also have their own Bill of Material (multi-"
+"level)."
#. module: mrp
#: field:mrp.bom,company_id:0
@@ -1779,12 +1855,12 @@ msgstr ""
#: field:mrp.routing.workcenter,company_id:0
#: view:mrp.workcenter:0
msgid "Company"
-msgstr ""
+msgstr "Organizacija"
#. module: mrp
#: field:mrp.workcenter,time_cycle:0
msgid "Time for 1 cycle (hour)"
-msgstr ""
+msgstr "Time for 1 cycle (hour)"
#. module: mrp
#: model:ir.actions.report.xml,name:mrp.report_mrp_production_report
@@ -1793,50 +1869,50 @@ msgstr ""
#: model:process.node,name:mrp.process_node_production0
#: model:process.node,name:mrp.process_node_productionorder0
msgid "Production Order"
-msgstr ""
+msgstr "Production Order"
#. module: mrp
#: model:process.node,note:mrp.process_node_productminimumstockrule0
msgid "Automatic procurement rule"
-msgstr ""
+msgstr "Pravilo automatske nabave"
#. module: mrp
#: view:mrp.production:0
msgid "Compute Data"
-msgstr ""
+msgstr "Compute Data"
#. module: mrp
#: field:mrp.production,product_uos_qty:0
msgid "Product UoS Qty"
-msgstr ""
+msgstr "Količina JP"
#. module: mrp
#: code:addons/mrp/report/price.py:130
#: view:mrp.bom:0
#, python-format
msgid "Components"
-msgstr ""
+msgstr "Components"
#. module: mrp
#: report:bom.structure:0
#: model:ir.actions.report.xml,name:mrp.report_bom_structure
msgid "BOM Structure"
-msgstr ""
+msgstr "BOM Struktura"
#. module: mrp
#: field:mrp.bom,date_stop:0
msgid "Valid Until"
-msgstr ""
+msgstr "Valid Until"
#. module: mrp
#: field:mrp.bom,date_start:0
msgid "Valid From"
-msgstr ""
+msgstr "Valid From"
#. module: mrp
#: selection:mrp.bom,type:0
msgid "Normal BoM"
-msgstr ""
+msgstr "Normal BoM"
#. module: mrp
#: field:res.company,manufacturing_lead:0
@@ -1847,7 +1923,7 @@ msgstr "Pripremno vrijeme proizvodnje"
#: field:mrp.bom,product_uos_qty:0
#: field:mrp.production.product.line,product_uos_qty:0
msgid "Product UOS Qty"
-msgstr ""
+msgstr "Količina JP"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.action_report_in_out_picking_tree
@@ -1856,21 +1932,24 @@ msgid ""
"linked to manufacturing activities, receptions of products and delivery "
"orders."
msgstr ""
+"Weekly Stock Value Variation enables you to track the stock value evolution "
+"linked to manufacturing activities, receptions of products and delivery "
+"orders."
#. module: mrp
#: view:mrp.product.produce:0
msgid "Confirm"
-msgstr ""
+msgstr "Potvrdi"
#. module: mrp
#: field:mrp.bom,product_efficiency:0
msgid "Manufacturing Efficiency"
-msgstr "Efikasnost Proizvodnje"
+msgstr "Efikasnost proizvodnje"
#. module: mrp
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
-msgstr ""
+msgstr "Pogreška! Ne možete kreirati rekurzivne organizacije."
#. module: mrp
#: help:mrp.bom,active:0
@@ -1878,17 +1957,19 @@ msgid ""
"If the active field is set to False, it will allow you to hide the bills of "
"material without removing it."
msgstr ""
+"If the active field is set to False, it will allow you to hide the bills of "
+"material without removing it."
#. module: mrp
#: field:mrp.bom,product_rounding:0
msgid "Product Rounding"
-msgstr ""
+msgstr "Zaokruživanje decimala"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production_workcenter_line
#: field:mrp.production.workcenter.line,name:0
msgid "Work Order"
-msgstr ""
+msgstr "Radni nalog"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.action_report_mrp_production_order
@@ -1900,12 +1981,12 @@ msgstr ""
#. module: mrp
#: selection:mrp.product.produce,mode:0
msgid "Consume Only"
-msgstr ""
+msgstr "Samo za utrošiti"
#. module: mrp
#: view:mrp.production:0
msgid "Recreate Picking"
-msgstr ""
+msgstr "Ponovo kreiraj prijenos"
#. module: mrp
#: help:mrp.bom,type:0
@@ -1916,11 +1997,16 @@ msgid ""
"product, it will be sold and shipped as a set of components, instead of "
"being produced."
msgstr ""
+"If a sub-product is used in several products, it can be useful to create its "
+"own BoM. Though if you don't want separated production orders for this sub-"
+"product, select Set/Phantom as BoM type. If a Phantom BoM is used for a root "
+"product, it will be sold and shipped as a set of components, instead of "
+"being produced."
#. module: mrp
#: field:mrp.bom,method:0
msgid "Method"
-msgstr ""
+msgstr "Metoda"
#. module: mrp
#: help:mrp.production,state:0
@@ -1933,62 +2019,68 @@ msgid ""
" When the production gets started then the state is set to 'In Production'.\n"
" When the production is over, the state is set to 'Done'."
msgstr ""
+"Nakon kreiranja nalog za proizvodnju je u stanju 'Nacrt'.\n"
+" Potvrđeni nalozi su u stanju 'Na čekanju' (materijala).\n"
+" U slučaju iznimki stanje je 'Skladišna iznimka'. \n"
+" Ako je zaliha dostatna za proizvodnju stanje je 'Spremno za proizvodnju'.\n"
+" Kad je proizvodnja pokrenuta stanje je 'U proizvodnji'.\n"
+" Izvršeni nalozi su u stanju 'Izvršen'."
#. module: mrp
#: selection:mrp.bom,method:0
msgid "On Order"
-msgstr ""
+msgstr "Na nalogu"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_configuration
#: view:res.company:0
msgid "Configuration"
-msgstr ""
+msgstr "Postava"
#. module: mrp
#: field:mrp.workcenter,time_stop:0
msgid "Time after prod."
-msgstr ""
+msgstr "Vrijeme nakon prod."
#. module: mrp
#: field:mrp.workcenter.load,time_unit:0
msgid "Type of period"
-msgstr ""
+msgstr "Type of period"
#. module: mrp
#: view:mrp.production:0
msgid "Total Qty"
-msgstr ""
+msgstr "Ukupna kol."
#. module: mrp
#: field:mrp.routing.workcenter,hour_nbr:0
msgid "Number of Hours"
-msgstr ""
+msgstr "Broj sati"
#. module: mrp
#: view:mrp.workcenter:0
msgid "Costing Information"
-msgstr ""
+msgstr "Costing Information"
#. module: mrp
#: model:process.node,name:mrp.process_node_purchaseprocure0
msgid "Procurement Orders"
-msgstr ""
+msgstr "Nalozi za nabavu"
#. module: mrp
#: help:mrp.bom,product_rounding:0
msgid "Rounding applied on the product quantity."
-msgstr ""
+msgstr "Zaokruživanje se primjenjuje na količinu proizvoda."
#. module: mrp
#: model:process.node,note:mrp.process_node_stock0
msgid "Assignment from Production or Purchase Order."
-msgstr ""
+msgstr "Prijenos iz proizvodnje ili naloga za nabavu."
#. module: mrp
#: field:mrp.routing.workcenter,routing_id:0
msgid "Parent Routing"
-msgstr ""
+msgstr "Nadređeno usmjeravanje"
#. module: mrp
#: view:mrp.installer:0
@@ -1998,7 +2090,7 @@ msgstr ""
#. module: mrp
#: help:mrp.workcenter,time_start:0
msgid "Time in hours for the setup."
-msgstr ""
+msgstr "Vrijeme u satima za pripremu."
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2014,7 +2106,7 @@ msgstr ""
#: field:mrp.bom.revision,bom_id:0
#: field:procurement.order,bom_id:0
msgid "BoM"
-msgstr ""
+msgstr "BoM"
#. module: mrp
#: model:ir.model,name:mrp.model_report_mrp_inout
@@ -2026,25 +2118,25 @@ msgstr "Varijacija vrijednosti Zalihe"
#: model:process.node,note:mrp.process_node_mts0
#: model:process.node,note:mrp.process_node_servicemts0
msgid "Assignment from stock."
-msgstr ""
+msgstr "Dodjela sa skladišta"
#. module: mrp
#: selection:mrp.production,state:0
#: view:mrp.production.order:0
#: selection:mrp.production.order,state:0
msgid "Waiting Goods"
-msgstr ""
+msgstr "Waiting Goods"
#. module: mrp
#: field:mrp.bom.revision,last_indice:0
msgid "last indice"
-msgstr ""
+msgstr "last indice"
#. module: mrp
#: field:mrp.bom,revision_ids:0
#: view:mrp.bom.revision:0
msgid "BoM Revisions"
-msgstr ""
+msgstr "BoM Revisions"
#. module: mrp
#: selection:mrp.production,state:0
@@ -2056,7 +2148,7 @@ msgstr ""
#: field:report.mrp.inout,date:0
#: field:report.workcenter.load,name:0
msgid "Week"
-msgstr "Tjedni"
+msgstr "Week"
#. module: mrp
#: field:mrp.installer,progress:0
@@ -2067,24 +2159,24 @@ msgstr ""
#: selection:mrp.production,priority:0
#: selection:mrp.production.order,priority:0
msgid "Normal"
-msgstr ""
+msgstr "Normalan"
#. module: mrp
#: model:process.node,note:mrp.process_node_routing0
msgid "Manufacturing Steps."
-msgstr "Koraci Proizvodnje"
+msgstr "Koraci proizvodnje"
#. module: mrp
#: code:addons/mrp/report/price.py:136
#: model:ir.actions.report.xml,name:mrp.report_cost_structure
#, python-format
msgid "Cost Structure"
-msgstr ""
+msgstr "Cost Structure"
#. module: mrp
#: selection:mrp.product.produce,mode:0
msgid "Consume & Produce"
-msgstr ""
+msgstr "Utroši i proizvedi"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2094,7 +2186,7 @@ msgstr ""
#. module: mrp
#: field:mrp.bom,bom_id:0
msgid "Parent BoM"
-msgstr ""
+msgstr "Nadređena sastavnica"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_bom_form_action2
@@ -2103,6 +2195,9 @@ msgid ""
"master bills of materials. Use this menu to search in which BoM a specific "
"component is used."
msgstr ""
+"Bills of materials components are components and sub-products used to create "
+"master bills of materials. Use this menu to search in which BoM a specific "
+"component is used."
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2112,10 +2207,10 @@ msgstr ""
#. module: mrp
#: model:process.node,note:mrp.process_node_stockproduct0
msgid "Product type is Stockable or Consumable."
-msgstr ""
+msgstr "Product type is Stockable or Consumable."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2125,7 +2220,7 @@ msgstr ""
#. module: mrp
#: field:mrp.product.produce,product_qty:0
msgid "Select Quantity"
-msgstr ""
+msgstr "Odaberi količinu"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.act_product_product_2_mrp_bom
@@ -2133,7 +2228,7 @@ msgstr ""
#: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action
#: field:product.product,bom_ids:0
msgid "Bill of Materials"
-msgstr ""
+msgstr "Sastavnica"
#. module: mrp
#: help:mrp.routing.workcenter,routing_id:0
@@ -2142,22 +2237,25 @@ msgid ""
"Routing is indicated then,the third tab of a production order (Work Centers) "
"will be automatically pre-completed."
msgstr ""
+"Routing indicates all the Work Centers used, for how long and/or cycles.If "
+"Routing is indicated then,the third tab of a production order (Work Centers) "
+"will be automatically pre-completed."
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_bom_revision
msgid "Bill of Material Revision"
-msgstr ""
+msgstr "Revizija sastavnice"
#. module: mrp
#: view:mrp.routing.workcenter:0
#: view:mrp.workcenter:0
msgid "General Information"
-msgstr ""
+msgstr "Opći podaci"
#. module: mrp
#: view:mrp.production:0
msgid "Productions"
-msgstr ""
+msgstr "Proizvodnja"
#. module: mrp
#: code:addons/mrp/report/price.py:194
@@ -2171,6 +2269,8 @@ msgid ""
"Description of the Work Center. Explain here what's a cycle according to "
"this Work Center."
msgstr ""
+"Description of the Work Center. Explain here what's a cycle according to "
+"this Work Center."
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_routing
@@ -2182,7 +2282,7 @@ msgstr ""
#: view:mrp.routing:0
#: model:process.node,name:mrp.process_node_routing0
msgid "Routing"
-msgstr ""
+msgstr "Usmjeravanje"
#. module: mrp
#: field:mrp.installer,mrp_operations:0
@@ -2192,12 +2292,12 @@ msgstr "Proizvodne Operacije"
#. module: mrp
#: field:mrp.production,date_planned:0
msgid "Scheduled date"
-msgstr ""
+msgstr "Zakazani datum"
#. module: mrp
#: constraint:stock.move:0
msgid "You must assign a production lot for this product"
-msgstr ""
+msgstr "Morate pridijeliti lot proizvodnje ovom proizvodu"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_property_action
@@ -2208,27 +2308,32 @@ msgid ""
"sales person creates a sales order, he can relate it to several properties "
"and OpenERP will automatically select the BoM to use according the the needs."
msgstr ""
+"The Properties in OpenERP are used to select the right bill of materials for "
+"manufacturing a product when you have different ways of building the same "
+"product. You can assign several properties to each Bill of Materials. When a "
+"sales person creates a sales order, he can relate it to several properties "
+"and OpenERP will automatically select the BoM to use according the the needs."
#. module: mrp
#: view:mrp.production.order:0
#: field:stock.move,production_id:0
msgid "Production"
-msgstr ""
+msgstr "Proizvodnja"
#. module: mrp
#: view:board.board:0
msgid "Procurements in Exception"
-msgstr ""
+msgstr "Nabave s iznimkama"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_minimumstockprocure0
msgid "'Minimum stock rule' material"
-msgstr ""
+msgstr "'Minimum stock rule' material"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_product_price
msgid "Product Price"
-msgstr ""
+msgstr "Cijena proizvoda"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_mrp_installer
@@ -2238,18 +2343,18 @@ msgstr ""
#. module: mrp
#: model:ir.model,name:mrp.model_stock_move_split
msgid "Split in Production lots"
-msgstr ""
+msgstr "Split in Production lots"
#. module: mrp
#: view:change.production.qty:0
msgid "Change Quantity"
-msgstr ""
+msgstr "Promjeni količinu"
#. module: mrp
#: view:change.production.qty:0
#: model:ir.actions.act_window,name:mrp.action_change_production_qty
msgid "Change Product Qty"
-msgstr ""
+msgstr "Promjeni kol. proizvoda"
#. module: mrp
#: view:mrp.bom.revision:0
@@ -2262,7 +2367,7 @@ msgstr ""
#: view:mrp.workcenter:0
#: field:mrp.workcenter,note:0
msgid "Description"
-msgstr ""
+msgstr "Opis"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2272,12 +2377,12 @@ msgstr ""
#. module: mrp
#: view:board.board:0
msgid "Manufacturing board"
-msgstr "Ploča proizvodnje"
+msgstr "Kokpit proizvodnje"
#. module: mrp
#: field:mrp.production,date_planned_end:0
msgid "Scheduled End Date"
-msgstr ""
+msgstr "Planirani datum završetka"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.action_report_workcenter_load_tree
@@ -2286,11 +2391,14 @@ msgid ""
"specified period. It is expressed in number of hours and machine related "
"cycles."
msgstr ""
+"Work Center Loads gives you a projection of work center loads over a "
+"specified period. It is expressed in number of hours and machine related "
+"cycles."
#. module: mrp
#: model:process.node,note:mrp.process_node_procureproducts0
msgid "The way to procurement depends on the product type."
-msgstr ""
+msgstr "Način nabave ovisi o vrsti proizvoda"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_manufacturing
@@ -2300,7 +2408,7 @@ msgstr "Proizvodnja"
#. module: mrp
#: view:board.board:0
msgid "Next Production Orders"
-msgstr ""
+msgstr "Next Production Orders"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2311,7 +2419,7 @@ msgstr ""
#: model:ir.actions.act_window,name:mrp.mrp_property_group_action
#: model:ir.ui.menu,name:mrp.menu_mrp_property_group_action
msgid "Property Groups"
-msgstr ""
+msgstr "Grupe svojstava"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2324,16 +2432,18 @@ msgid ""
"Depending on the chosen method to supply the stockable products, the "
"procurement order creates a RFQ, a production order, ... "
msgstr ""
+"Depending on the chosen method to supply the stockable products, the "
+"procurement order creates a RFQ, a production order, ... "
#. module: mrp
#: help:mrp.workcenter,time_stop:0
msgid "Time in hours for the cleaning."
-msgstr ""
+msgstr "Završno vrijeme u satima za čišćenje."
#. module: mrp
#: model:process.transition,name:mrp.process_transition_purchaseprocure0
msgid "Automatic RFQ"
-msgstr ""
+msgstr "Automatski ZZP (zahtjev za ponudom)"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_servicemto0
@@ -2341,6 +2451,8 @@ msgid ""
"If the service has a 'Produce' supply method, this creates a task in the "
"project management module of OpenERP."
msgstr ""
+"Ako je metoda nabave usluge 'Proizvedi' kreirati će zadatak u modulu "
+"upravljanja projektima."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_productionprocureproducts0
@@ -2349,6 +2461,9 @@ msgid ""
"production order creates as much procurement orders as components listed in "
"the BOM, through a run of the schedulers (MRP)."
msgstr ""
+"In order to supply raw material (to be purchased or produced), the "
+"production order creates as much procurement orders as components listed in "
+"the BOM, through a run of the schedulers (MRP)."
#. module: mrp
#: help:mrp.product_price,number:0
@@ -2356,11 +2471,13 @@ msgid ""
"Specify quantity of products to produce or buy. Report of Cost structure "
"will be displayed base on this quantity."
msgstr ""
+"Specify quantity of products to produce or buy. Report of Cost structure "
+"will be displayed base on this quantity."
#. module: mrp
#: selection:mrp.bom,method:0
msgid "On Stock"
-msgstr ""
+msgstr "Na skladištu"
#. module: mrp
#: field:mrp.bom,sequence:0
@@ -2368,17 +2485,17 @@ msgstr ""
#: field:mrp.production.workcenter.line,sequence:0
#: field:mrp.routing.workcenter,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Sekvenca"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_leaves_search_mrp
msgid "Resource Leaves"
-msgstr ""
+msgstr "Odsustva resursa"
#. module: mrp
#: help:mrp.bom,sequence:0
msgid "Gives the sequence order when displaying a list of bills of material."
-msgstr ""
+msgstr "Daje poredak u prikazu sastavnica."
#. module: mrp
#: view:mrp.production:0
@@ -2386,7 +2503,7 @@ msgstr ""
#: report:mrp.production.order:0
#: field:mrp.production.order,products_to_consume:0
msgid "Products to Consume"
-msgstr ""
+msgstr "Proizvodi za utrošiti"
#. module: mrp
#: view:mrp.production.order:0
diff --git a/addons/mrp/i18n/hu.po b/addons/mrp/i18n/hu.po
index 85e7187ff40..0a3432b2fc5 100644
--- a/addons/mrp/i18n/hu.po
+++ b/addons/mrp/i18n/hu.po
@@ -7,15 +7,15 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-02-09 14:35+0000\n"
+"PO-Revision-Date: 2011-12-06 11:04+0000\n"
"Last-Translator: NOVOTRADE RENDSZERHÁZ ( novotrade.hu ) "
"\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -32,26 +32,31 @@ msgid ""
"raw materials (stock decrease) and the production of the finished products "
"(stock increase) when the order is processed."
msgstr ""
+"A gyártási rendeléseket általában az OpenERP automatikusan javasolja "
+"anyagjegyzékek és beszerzési szabályok alapján, azonban lehetősége van "
+"manuálisan is felvinni gyártási rendeléseket. Az OpenERP kezeli a "
+"nyersanyagok fogyását (készlet csökkenése) és a kész termékek gyártását "
+"(készlet csökkenése), amikor a rendelést végrehajtja."
#. module: mrp
#: help:mrp.production,location_src_id:0
msgid "Location where the system will look for components."
-msgstr ""
+msgstr "A hozzávalókat ezen a helyen keresi majd a rendszer."
#. module: mrp
#: field:mrp.production,workcenter_lines:0
msgid "Work Centers Utilisation"
-msgstr ""
+msgstr "Munkaállomások használata"
#. module: mrp
#: view:mrp.routing.workcenter:0
msgid "Routing Work Centers"
-msgstr ""
+msgstr "Eljárás munkaállomásai"
#. module: mrp
#: model:ir.module.module,shortdesc:mrp.module_meta_information
msgid "Manufacturing Resource Planning"
-msgstr "Gyártási források tervezése"
+msgstr "Erőforrások tervezése"
#. module: mrp
#: report:mrp.production.order:0
@@ -88,12 +93,12 @@ msgstr "Óránkénti költség"
#: code:addons/mrp/report/price.py:130
#, python-format
msgid "Cost Price per Uom"
-msgstr "Önköltség"
+msgstr "Mértékenységenkénti költség"
#. module: mrp
#: view:mrp.production:0
msgid "Scrap Products"
-msgstr ""
+msgstr "Selejt termék"
#. module: mrp
#: view:mrp.production.order:0
@@ -105,22 +110,22 @@ msgstr "Nap"
#: model:ir.actions.act_window,name:mrp.mrp_routing_action
#: model:ir.ui.menu,name:mrp.menu_mrp_routing_action
msgid "Routings"
-msgstr ""
+msgstr "Eljárás"
#. module: mrp
#: field:mrp.workcenter,product_id:0
msgid "Work Center Product"
-msgstr ""
+msgstr "Munkaállomás-termék"
#. module: mrp
#: view:mrp.bom:0
msgid "Search Bill Of Material"
-msgstr ""
+msgstr "Anyagjegyzék keresése"
#. module: mrp
#: model:process.node,note:mrp.process_node_stockproduct1
msgid "For stockable products and consumables"
-msgstr ""
+msgstr "Raktározható és felhasználható termékekhez"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_stockproduction0
@@ -133,6 +138,8 @@ msgid ""
"Number of iterations this work center has to do in the specified operation "
"of the routing."
msgstr ""
+"Megadja, hogy az eljárás adott műveletnél ezt a munkaállomást hányszor kell "
+"igénybe venni."
#. module: mrp
#: view:mrp.bom:0
@@ -156,7 +163,7 @@ msgstr "Vásárolni"
#. module: mrp
#: view:mrp.production.order:0
msgid "Raw Material Location"
-msgstr ""
+msgstr "Alapanyagok helye"
#. module: mrp
#: help:mrp.installer,mrp_operations:0
@@ -164,26 +171,30 @@ msgid ""
"Enhances production orders with readiness states as well as the start date "
"and end date of execution of the order."
msgstr ""
+"Ellátja a gyártási rendeléseket a készültség állapotával és a rendelés "
+"végrehajtásának kezdési, illetve a befejezési idejével."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_purchaseprocure0
msgid "The system launches automatically a RFQ to the preferred supplier."
msgstr ""
+"A rendszer automatikusan kiküld egy ajánlatkérési felhívást a kiválasztott "
+"beszállítónak."
#. module: mrp
#: view:mrp.production:0
msgid "Products to Finish"
-msgstr ""
+msgstr "Befejezendő termékek"
#. module: mrp
#: selection:mrp.bom,method:0
msgid "Set / Pack"
-msgstr ""
+msgstr "Csomag"
#. module: mrp
#: field:mrp.installer,mrp_subproduct:0
msgid "MRP Subproducts"
-msgstr ""
+msgstr "MRP altermékek modul"
#. module: mrp
#: view:mrp.production:0
@@ -204,6 +215,8 @@ msgid ""
"In case the Supply method of the product is Produce, the system creates a "
"production order."
msgstr ""
+"Ha a termék ellátási módja \"Gyártás\", a rendszer gyártási rendelést hoz "
+"létre."
#. module: mrp
#: view:mrp.production:0
@@ -218,7 +231,7 @@ msgstr "ME"
#: field:mrp.production.order,product_qty:0
#: field:mrp.production.product.line,product_qty:0
msgid "Product Qty"
-msgstr "Termékmenny."
+msgstr "Termékmennyiség"
#. module: mrp
#: help:mrp.workcenter,product_id:0
@@ -227,22 +240,22 @@ msgid ""
"accounting."
msgstr ""
"Töltse ki ezt a terméket, hogy könnyen nyomon kövesse a gyártási költségeket "
-"a vezetői számvitelben."
+"az analitikus könyvelésben."
#. module: mrp
#: model:process.node,note:mrp.process_node_purchaseprocure0
msgid "For purchased material"
-msgstr ""
+msgstr "Vásárolt termékhez"
#. module: mrp
#: field:mrp.bom.revision,indice:0
msgid "Revision"
-msgstr "Revízió"
+msgstr "Felülvizsgálat"
#. module: mrp
#: model:ir.ui.menu,name:mrp.next_id_77
msgid "Reporting"
-msgstr "Jelentés"
+msgstr "Jelentéskészítés"
#. module: mrp
#: field:mrp.workcenter,costs_cycle_account_id:0
@@ -263,7 +276,7 @@ msgstr "["
#. module: mrp
#: model:process.transition,name:mrp.process_transition_procureserviceproduct0
msgid "Procurement of services"
-msgstr ""
+msgstr "Szolgáltatások beszerzése"
#. module: mrp
#: view:mrp.workcenter:0
@@ -278,7 +291,7 @@ msgstr "Célállomás helye"
#. module: mrp
#: view:mrp.installer:0
msgid "title"
-msgstr "Pozíció"
+msgstr "pozíció"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_bom
@@ -291,6 +304,9 @@ msgid ""
"The system waits for the products to be available in the stock. These "
"products are typically procured manually or through a minimum stock rule."
msgstr ""
+"A rendszer termékekre vár, hogy elérhetővé válljanak a raktárban. Ezeket a "
+"termékeket általában manuálisan kell beszerezni vagy minimális "
+"készletszabályok beállításával."
#. module: mrp
#: report:mrp.production.order:0
@@ -300,7 +316,7 @@ msgstr "Partner hiv."
#. module: mrp
#: selection:mrp.workcenter.load,measure_unit:0
msgid "Amount in hours"
-msgstr ""
+msgstr "Mennyiség órában"
#. module: mrp
#: field:mrp.production,product_lines:0
@@ -310,12 +326,12 @@ msgstr "Tervezett áruk"
#. module: mrp
#: selection:mrp.bom,type:0
msgid "Sets / Phantom"
-msgstr ""
+msgstr "Csomagok"
#. module: mrp
#: help:mrp.bom,position:0
msgid "Reference to a position in an external plan."
-msgstr ""
+msgstr "Hivatkozás egy külső területre."
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -326,6 +342,8 @@ msgstr "Augusztus"
#: constraint:stock.move:0
msgid "You try to assign a lot which is not from the same product"
msgstr ""
+"Egy olyan tételt próbál hozzárendelni, amely nem ugyanabból a termékfajtából "
+"való."
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production_order
@@ -340,7 +358,7 @@ msgstr "Június"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_product_produce
msgid "Product Produce"
-msgstr "Termék előállítása"
+msgstr "Termék gyártása"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -351,12 +369,12 @@ msgstr "Október"
#: code:addons/mrp/report/price.py:177
#, python-format
msgid "Components Cost of "
-msgstr ""
+msgstr "Hozzávalók költsége "
#. module: mrp
#: model:process.transition,name:mrp.process_transition_procurestockableproduct0
msgid "Procurement of stockable Product"
-msgstr ""
+msgstr "Raktározható termékek beszerzése"
#. module: mrp
#: view:mrp.bom:0
@@ -388,6 +406,8 @@ msgid ""
"The system creates an order (production or purchased) depending on the sold "
"quantity and the products parameters."
msgstr ""
+"A rendszer a termék tulajdonságai és az értékesített mennyiség alapján "
+"létrehoz egy - gyártási vagy beszerzési - rendelést."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_servicemts0
@@ -395,6 +415,8 @@ msgid ""
"This is used in case of a service without any impact in the system, a "
"training session for instance."
msgstr ""
+"Ezt használhatjuk olyan szolgálatásokra, amelyek semmilyen hatással "
+"sincsenek a rendszerre (például egy belső képzés)."
#. module: mrp
#: field:mrp.installer,mrp_repair:0
@@ -404,7 +426,7 @@ msgstr "Javítások"
#. module: mrp
#: field:mrp.installer,stock_location:0
msgid "Advanced Routes"
-msgstr ""
+msgstr "Előrehaladott eljárások"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_search_mrp
@@ -422,6 +444,8 @@ msgid ""
"Enables warranty and repair management (and their impact on stocks and "
"invoicing)."
msgstr ""
+"Lehetővé teszi a garancia- és szervízkezelést, és ezek hatását a "
+"raktározásra és a számlázásra."
#. module: mrp
#: field:mrp.production,date_planned_date:0
@@ -442,6 +466,9 @@ msgid ""
"needed.Set a location if you produce at a fixed location. This can be a "
"partner location if you subcontract the manufacturing operations."
msgstr ""
+"Hagyja üresen, ha a gyártást ugyanazon a helyen végzi, ahol a késztermékre "
+"szüksége van. Válasszon egy helyszínt, ha fix helyen gyárt. Ez lehet egy "
+"partner székhelye is, amennyiben a gyártási eljárást kiszervezi."
#. module: mrp
#: view:board.board:0
@@ -451,12 +478,12 @@ msgstr "Készletérték változása"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action2
msgid "Bill of Materials Structure"
-msgstr ""
+msgstr "Anyagjegyzék-struktúra"
#. module: mrp
#: model:process.node,note:mrp.process_node_serviceproduct0
msgid "Product type is service"
-msgstr "A termék típusa szolgáltatás."
+msgstr "A termék típusa szolgáltatás"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_property_group_action
@@ -464,16 +491,18 @@ msgid ""
"Define specific property groups that can be assigned to the properties of "
"your bill of materials."
msgstr ""
+"Adjon meg egyedi tulajdonság-csoportokat, amelyeket az anyagjegyzékek "
+"tulajdonságaihoz rendelhet."
#. module: mrp
#: model:process.transition,name:mrp.process_transition_bom0
msgid "Manufacturing decomposition"
-msgstr ""
+msgstr "Gyártás lebontása"
#. module: mrp
#: model:process.node,note:mrp.process_node_serviceproduct1
msgid "For Services."
-msgstr ""
+msgstr "Szolgáltatásokhoz."
#. module: mrp
#: field:mrp.bom.revision,date:0
@@ -487,8 +516,8 @@ msgid ""
"Complete this only if you want automatic analytic accounting entries on "
"production orders."
msgstr ""
-"Csak akkor töltse ki, ha automatikus gyűjtőkód tételeket akar a termelési "
-"utasítások alapján."
+"Csak akkor töltse ki, ha analitikus könyvelési tételek automatikus bevitelét "
+"szeretné a gyártási rendelések alapján."
#. module: mrp
#: field:mrp.production.workcenter.line,cycle:0
@@ -507,6 +536,8 @@ msgid ""
"The Bill of Material is linked to a routing, i.e. the succession of work "
"centers."
msgstr ""
+"Az anyagjegyzék egy gyártási eljáráshoz kapcsolódik, vagyis a munkaállomások "
+"sorozatához."
#. module: mrp
#: constraint:product.product:0
@@ -522,12 +553,12 @@ msgstr "Gyártási hely"
#. module: mrp
#: view:mrp.production:0
msgid "Change Qty"
-msgstr ""
+msgstr "Mennyiség változtatása"
#. module: mrp
#: view:mrp.production:0
msgid "Force Reservation"
-msgstr ""
+msgstr "Foglalás erőltetése"
#. module: mrp
#: field:mrp.bom.revision,author_id:0
@@ -542,12 +573,12 @@ msgstr "Készletérték"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_product_bom_structure
msgid "Product BoM Structure"
-msgstr ""
+msgstr "Termék anyagjegyzék-struktúrája"
#. module: mrp
#: view:mrp.production:0
msgid "Search Production"
-msgstr ""
+msgstr "Gyártás keresése"
#. module: mrp
#: code:addons/mrp/report/price.py:130
@@ -563,14 +594,14 @@ msgstr "Március"
#. module: mrp
#: field:mrp.bom,child_complete_ids:0
msgid "BoM Hierarchy"
-msgstr ""
+msgstr "Anyagjegyzék hierarchia"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.act_mrp_product_produce
#: view:mrp.product.produce:0
#: view:mrp.production:0
msgid "Produce"
-msgstr "Gyártás"
+msgstr "Gyártani"
#. module: mrp
#: help:mrp.workcenter,costs_cycle:0
@@ -582,17 +613,17 @@ msgstr ""
#: view:mrp.production.order:0
#: selection:mrp.production.order,state:0
msgid "Picking Exception"
-msgstr "Kiszedési kivétel"
+msgstr "Kiszedési hiba"
#. module: mrp
#: field:mrp.bom,bom_lines:0
msgid "BoM Lines"
-msgstr ""
+msgstr "Anyagjegyzék sorok"
#. module: mrp
#: field:mrp.workcenter,time_start:0
msgid "Time before prod."
-msgstr ""
+msgstr "Gyártás előkészületi idő"
#. module: mrp
#: help:mrp.routing,active:0
@@ -600,11 +631,13 @@ msgid ""
"If the active field is set to False, it will allow you to hide the routing "
"without removing it."
msgstr ""
+"Ha az aktív mezőt \"Hamis\"-ra állítja, akkor törlés nélkül el tudja rejteni "
+"a gyártási eljárást."
#. module: mrp
#: model:process.transition,name:mrp.process_transition_billofmaterialrouting0
msgid "Material Routing"
-msgstr ""
+msgstr "Termék útja"
#. module: mrp
#: view:mrp.production:0
@@ -612,31 +645,31 @@ msgstr ""
#: report:mrp.production.order:0
#: field:mrp.production.order,consumed_products:0
msgid "Consumed Products"
-msgstr ""
+msgstr "Felhasznált termékek"
#. module: mrp
#: constraint:mrp.bom:0
msgid "Error ! You can not create recursive BoM."
-msgstr ""
+msgstr "Hiba! Rekurzív anyagjegyzék nem hozható létre."
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_mrp_workcenter_load_wizard
#: model:ir.model,name:mrp.model_mrp_workcenter_load
#: model:ir.model,name:mrp.model_report_workcenter_load
msgid "Work Center Load"
-msgstr ""
+msgstr "Munkaállomás terheltsége"
#. module: mrp
#: code:addons/mrp/procurement.py:45
#, python-format
msgid "No BoM defined for this product !"
-msgstr ""
+msgstr "Az adott termékhez nincsen anyagjegyzék megadva!"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_bom_form_action2
#: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action2
msgid "Bill of Material Components"
-msgstr ""
+msgstr "Anyagjegyzék hozzávalói"
#. module: mrp
#: field:mrp.production.order,nbr:0
@@ -661,6 +694,10 @@ msgid ""
"operations and to plan future loads on work centers based on production "
"plannification."
msgstr ""
+"A késztermék létrehozásához szükséges műveletek (munkaállomások) listája. A "
+"gyártási eljárások fő funkciója a munkaállomások működési költségeinek "
+"számítása és a munkaállomások terheltségének tervezése a gyártási tervezésén "
+"keresztül."
#. module: mrp
#: help:mrp.workcenter,time_cycle:0
@@ -670,7 +707,7 @@ msgstr "Idő (órában), ami egy ciklus elvégzéséhez szükséges"
#. module: mrp
#: report:bom.structure:0
msgid "BOM Ref"
-msgstr ""
+msgstr "Anyagjegyzék hivatkozás"
#. module: mrp
#: view:mrp.production:0
@@ -683,7 +720,7 @@ msgstr "Gyártás alatt"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_property
msgid "Master Bill of Materials"
-msgstr ""
+msgstr "Fő anyagjegyzékek"
#. module: mrp
#: help:mrp.bom,product_uos:0
@@ -691,6 +728,8 @@ msgid ""
"Product UOS (Unit of Sale) is the unit of measurement for the invoicing and "
"promotion of stock."
msgstr ""
+"A termék eladási mértékegysége a számlázásban és a kiszállításban használt "
+"mértékegység."
#. module: mrp
#: view:mrp.product_price:0
@@ -715,6 +754,7 @@ msgstr "Összes költsége "
#: model:process.node,note:mrp.process_node_minimumstockrule0
msgid "Linked to the 'Minimum stock rule' supplying method."
msgstr ""
+"A \"minimális raktárkezelési szabály\" ellátási módszeréhez kapcsolódik."
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
@@ -722,12 +762,12 @@ msgid "Per month"
msgstr "Havonta"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
msgid "Couldn't find bill of material for product"
-msgstr ""
+msgstr "A termékhez nem található anyagjegyzék"
#. module: mrp
#: report:bom.structure:0
@@ -735,15 +775,15 @@ msgid "Product Name"
msgstr "Termék neve"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
-msgstr "Érvénytelen művelet !"
+msgstr "Érvénytelen művelet!"
#. module: mrp
#: help:mrp.bom,product_efficiency:0
msgid "A factor of 0.9 means a loss of 10% within the production process."
-msgstr ""
+msgstr "A 0,9-es érték 10%-os veszteséget jelent a gyártási folyamatban."
#. module: mrp
#: view:mrp.installer:0
@@ -751,6 +791,8 @@ msgid ""
"Add more functionalities to the core Manufacturing Application with the "
"following addons."
msgstr ""
+"Bővitse további funkciókkal az alap gyártási alkalmazást az alábbi addonok "
+"használatával."
#. module: mrp
#: report:mrp.production.order:0
@@ -771,7 +813,7 @@ msgstr "Beszerzési szabály"
#. module: mrp
#: help:mrp.workcenter,costs_hour:0
msgid "Specify Cost of Work center per hour."
-msgstr ""
+msgstr "Adja meg a munkaállomás egy órára eső költségét."
#. module: mrp
#: view:mrp.production:0
@@ -786,7 +828,7 @@ msgstr "Szeptember"
#. module: mrp
#: report:mrp.production.order:0
msgid "WorkCenter"
-msgstr ""
+msgstr "Munkaállomás"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_procureserviceproduct0
@@ -795,6 +837,9 @@ msgid ""
"order creates a RFQ for a subcontracting purchase order or waits until the "
"service is done (= the delivery of the products)."
msgstr ""
+"A szolgáltatásnál megadott ellátási módtól függően, a beszerzési rendelés "
+"vagy egy alvállalkozónak szóló ajánlatkérést hoz létre, vagy várakozik, míg "
+"a szolgáltatás (azaz a termék kiszállítása) be nem fejeződik."
#. module: mrp
#: selection:mrp.production,priority:0
@@ -815,7 +860,7 @@ msgstr "Gyártási rendelés"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_productionprocureproducts0
msgid "Procurement of raw material"
-msgstr ""
+msgstr "Alapanyag-beszerzés"
#. module: mrp
#: help:mrp.routing.workcenter,hour_nbr:0
@@ -823,6 +868,8 @@ msgid ""
"Time in hours for this work center to achieve the operation of the specified "
"routing."
msgstr ""
+"A megadott munkaállomásnak szükséges idő (órákban), amivel az eljárásban "
+"megadott műveletet el tudja végezni."
#. module: mrp
#: view:mrp.production:0
@@ -835,7 +882,7 @@ msgstr "Összes ciklus"
#: view:mrp.production.order:0
#: selection:mrp.production.order,state:0
msgid "Ready to Produce"
-msgstr ""
+msgstr "Gyártásra kész"
#. module: mrp
#: field:mrp.bom.revision,name:0
@@ -852,7 +899,7 @@ msgstr "Dátum"
#. module: mrp
#: field:mrp.bom,type:0
msgid "BoM Type"
-msgstr ""
+msgstr "Anyagjegyzék tipusa"
#. module: mrp
#: view:mrp.production.order:0
@@ -865,6 +912,7 @@ msgstr "Kiterjesztett szűrők…"
msgid ""
"Procurement '%s' has an exception: 'No BoM defined for this product !'"
msgstr ""
+"A %s beszerzés hibát jelzett: \"A termékhez nem található anyagjegyzék!\""
#. module: mrp
#: view:mrp.production.order:0
@@ -896,7 +944,7 @@ msgstr "Vezérlőpult"
#. module: mrp
#: view:board.board:0
msgid "Work Center Future Load"
-msgstr ""
+msgstr "Munkaállomások jövőbeli terheltsége"
#. module: mrp
#: model:process.node,name:mrp.process_node_stockproduct0
@@ -909,7 +957,7 @@ msgstr "Készletezhető termék"
#: code:addons/mrp/report/price.py:121
#, python-format
msgid "Work Center name"
-msgstr ""
+msgstr "Munkaállomás neve"
#. module: mrp
#: field:mrp.routing,code:0
@@ -924,18 +972,18 @@ msgstr "Órák száma"
#. module: mrp
#: field:mrp.installer,mrp_jit:0
msgid "Just In Time Scheduling"
-msgstr ""
+msgstr "Just In Time ütemezés"
#. module: mrp
#: view:mrp.property:0
#: view:mrp.property.group:0
msgid "Property Group"
-msgstr ""
+msgstr "Tulajdonságcsoport"
#. module: mrp
#: view:mrp.production:0
msgid "Qty"
-msgstr "Menny."
+msgstr "Mennyiség"
#. module: mrp
#: model:process.node,note:mrp.process_node_production0
@@ -954,6 +1002,8 @@ msgid ""
"Enables multiple product output from a single production order: without "
"this, a production order can have only one output product."
msgstr ""
+"Lehetővét teszi több termék kibocsátását egyetlen gyártási rendelésből. "
+"Enélkül a gyártási rendelés csak egy terméket bocsátana ki."
#. module: mrp
#: view:change.production.qty:0
@@ -982,6 +1032,8 @@ msgid ""
"If the service has a 'Buy' supply method, this creates a RFQ, a "
"subcontracting demand for instance."
msgstr ""
+"Ha a szolgáltatás ellátási módja \"Vásárlás\", akkor a rendszer egy "
+"ajánlatkérést hoz létre."
#. module: mrp
#: field:mrp.production,move_prod_id:0
@@ -996,18 +1048,20 @@ msgstr "Később"
#. module: mrp
#: model:process.node,name:mrp.process_node_servicemts0
msgid "Make to stock"
-msgstr "Készletre gyártás"
+msgstr "Beszerzés készletből"
#. module: mrp
#: help:mrp.routing.workcenter,sequence:0
msgid ""
"Gives the sequence order when displaying a list of routing work centers."
msgstr ""
+"Megadja a sorrendet, amikor az eljárásban lévő munkaállomások listáját "
+"kiállítjuk."
#. module: mrp
#: report:bom.structure:0
msgid "BOM Name"
-msgstr ""
+msgstr "Anyagjegyzék név"
#. module: mrp
#: view:mrp.production:0
@@ -1036,6 +1090,8 @@ msgid ""
"Manages product routes and paths within and between locations (e.g. "
"warehouses)."
msgstr ""
+"Kezeli a termékeljárásokat és a termékútvonalakat a helyeken és a helyek "
+"között (pl.: raktárak között)."
#. module: mrp
#: model:process.node,note:mrp.process_node_billofmaterial0
@@ -1054,7 +1110,7 @@ msgstr "Név"
#. module: mrp
#: view:mrp.installer:0
msgid "MRP Application Configuration"
-msgstr ""
+msgstr "Gyártási modul alkalmazás konfigurálás"
#. module: mrp
#: help:mrp.installer,mrp_jit:0
@@ -1065,6 +1121,11 @@ msgid ""
"avoids having to wait for the procurement scheduler to run or having to run "
"the procurement scheduler manually."
msgstr ""
+"Lehetővé teszi a Just in Time számításokat a beszerzési rendelésekben. \n"
+"\n"
+"Míg ez erőforrás igényesebb, mint az alapértelmezett beállítás, a Just in "
+"Time modul kikerüli azt, hogy a beszerzési ütemező futtatására várjunk, vagy "
+"hogy a beszerzési ütemezőt manuálisan futtassuk."
#. module: mrp
#: field:mrp.product.produce,mode:0
@@ -1079,7 +1140,7 @@ msgstr "]"
#. module: mrp
#: field:mrp.workcenter.load,measure_unit:0
msgid "Amount measuring unit"
-msgstr ""
+msgstr "Érték mértékegysége"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_production_action_planning
@@ -1091,11 +1152,18 @@ msgid ""
"materials have been defined, OpenERP is capable of automatically deciding on "
"the manufacturing route depending on the needs of the company."
msgstr ""
+"Gyártási rendelések meghatározzák azokat a műveleteket, amelyeket el kell "
+"végezni, illetve az alapanyag-felhasználást minden egyes gyártási fázisban. "
+"Használjon specifikációkat (anyagjegyzékek), hogy meghatározza az alapanyag-"
+"szükségletek és a késztermékek elkészítéséhez szükséges gyártási "
+"rendeléseket. Ha az anyagjegyzékeket egyszer már megadta, az OpenERP képes "
+"automatiklusan eldönteni, hogy melyik gyártási eljárást alkalmazza, függően "
+"a vállalat szükségleteitől."
#. module: mrp
#: constraint:mrp.production:0
msgid "Order quantity cannot be negative or zero !"
-msgstr "Rendelési mennyiség nem lehet negatív vagy nulla !"
+msgstr "Rendelési mennyiség nem lehet negatív vagy nulla!"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action3
@@ -1144,7 +1212,7 @@ msgstr ""
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action4
msgid "Manufacturing Orders Waiting Products"
-msgstr ""
+msgstr "Árura várakozó gyártási rendelések"
#. module: mrp
#: view:mrp.bom:0
@@ -1160,36 +1228,36 @@ msgstr "Csoportosítás..."
#: code:addons/mrp/report/price.py:121
#, python-format
msgid "Cycles Cost"
-msgstr "Ciklus költsége"
+msgstr "Ciklus költség"
#. module: mrp
#: selection:mrp.workcenter.load,measure_unit:0
msgid "Amount in cycles"
-msgstr ""
+msgstr "Érték ciklusokban"
#. module: mrp
#: field:mrp.production,location_dest_id:0
#: view:mrp.production.order:0
#: field:mrp.production.order,location_dest_id:0
msgid "Finished Products Location"
-msgstr ""
+msgstr "Késztermékek helye"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_pm_resources_config
msgid "Resources"
-msgstr "Források"
+msgstr "Erőforrások"
#. module: mrp
#: field:mrp.workcenter,costs_journal_id:0
msgid "Analytic Journal"
-msgstr "Gyűjtőnapló"
+msgstr "Analitikus napló"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_workcenter_action
#: model:ir.ui.menu,name:mrp.menu_view_resource_search_mrp
#: field:mrp.routing,workcenter_lines:0
msgid "Work Centers"
-msgstr ""
+msgstr "Munkaállomások"
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
@@ -1204,6 +1272,10 @@ msgid ""
"They are attached to bills of materials that will define the required raw "
"materials."
msgstr ""
+"A gyártási eljárások lehetővé teszik Önnek, hogy létrehozza és kezelje "
+"azokat a gyártási műveleteket, amelyeket a termék legyártásához követni kell "
+"a munkaállomásokon. Az eljárások az anyagjegyzékekhez kapcsolódnak, amelyek "
+"meghatározzák a szükséges alapanyagokat."
#. module: mrp
#: field:report.workcenter.load,hour:0
@@ -1213,7 +1285,7 @@ msgstr "Óra száma"
#. module: mrp
#: view:mrp.routing:0
msgid "Work Center Operations"
-msgstr ""
+msgstr "Munkaállomás műveletei"
#. module: mrp
#: view:mrp.routing:0
@@ -1237,24 +1309,24 @@ msgstr "Időegység kiválasztása"
#. module: mrp
#: view:report.workcenter.load:0
msgid "Work Center load"
-msgstr ""
+msgstr "Munkaállomás terheltsége"
#. module: mrp
#: help:mrp.production,location_dest_id:0
msgid "Location where the system will stock the finished products."
-msgstr ""
+msgstr "A késztermékek tárolásának helye."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
#. module: mrp
#: field:stock.change.standard.price,change_parent_price:0
msgid "Change Parent Price"
-msgstr ""
+msgstr "Fölérendelt ár megváltoztatása"
#. module: mrp
#: model:ir.model,name:mrp.model_stock_move
@@ -1268,6 +1340,9 @@ msgid ""
"maxi quantity. It's available in the Inventory management menu and "
"configured by product."
msgstr ""
+"A minimális készlet szabály egy automatikus beszerzési szabály, amely a "
+"minimum és maximum árumennyiségre épül. Elérhető a leltárkezelés menüben, "
+"illetve az egyes termékeknél állítható be."
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
@@ -1282,7 +1357,7 @@ msgstr "Felülvizsgálatok"
#. module: mrp
#: view:mrp.installer:0
msgid "Configure Your Manufacturing Resource Planning Application"
-msgstr ""
+msgstr "Állítsa be a gyártási modul alkalmazását."
#. module: mrp
#: field:mrp.production,priority:0
@@ -1301,38 +1376,38 @@ msgid "Month -1"
msgstr "Előző hónap"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
-msgstr ""
+msgstr "A %s gyártási rendelést a rendszer a következőre ütemezte: %s"
#. module: mrp
#: report:mrp.production.order:0
msgid "Production Order N° :"
-msgstr "Gyártási rendelés száma"
+msgstr "Gyártási rendelés száma:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
-msgstr ""
+msgstr "A %s gyártási rendelés gyártásra kész."
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production_product_line
msgid "Production Scheduled Product"
-msgstr ""
+msgstr "Gyártásra ütemezett termék"
#. module: mrp
#: help:res.company,manufacturing_lead:0
msgid "Security days for each manufacturing operation."
-msgstr ""
+msgstr "Minden gyártási művelet biztonsági ideje."
#. module: mrp
#: model:process.node,name:mrp.process_node_mts0
#: model:process.transition,name:mrp.process_transition_servicemts0
#: model:process.transition,name:mrp.process_transition_stockmts0
msgid "Make to Stock"
-msgstr "Készletre gyártás"
+msgstr "Beszerzés készletből"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -1348,6 +1423,12 @@ msgid ""
"product needs. You can either create a bill of materials to define specific "
"production steps or define a single multi-level bill of materials."
msgstr ""
+"A fő anyagjegyzékek lehetővé teszik Önnek, hogy létrehozza és kezelje a "
+"késztermék előállításához szükséges alapanyagok listáját. Az OpenERP "
+"használja ezeket az anyagjegyzékeket, hogy automatikusan javasoljon gyártási "
+"rendeléseket a termékszükségleteknek megfelelően. Létrehozhat "
+"anyagjegyzékeket, hogy meghatározzon speciális gyártási lépéseket vagy "
+"megadhat egy több szintű anyagjegyzék-struktúrát is."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_stockrfq0
@@ -1355,8 +1436,8 @@ msgid ""
"In case the Supply method of the product is Buy, the system creates a "
"purchase order."
msgstr ""
-"Ha a termék ellátási módszere vásárlás, a rendszer szállítói megrendelést "
-"hoz létre."
+"Ha a termék ellátási módszere \"Vásárlás\", a rendszer szállítói "
+"megrendelést hoz létre."
#. module: mrp
#: model:ir.model,name:mrp.model_procurement_order
@@ -1373,7 +1454,7 @@ msgstr "Termék költségszerkezete"
#: code:addons/mrp/report/price.py:130
#, python-format
msgid "Components suppliers"
-msgstr "Alkatrészek beszállítói"
+msgstr "Hozzávalók beszállítói"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_installer
@@ -1383,7 +1464,7 @@ msgstr "mrp.installer"
#. module: mrp
#: view:mrp.production:0
msgid "Production Work Centers"
-msgstr ""
+msgstr "Gyártási munkaállomások"
#. module: mrp
#: view:mrp.production.order:0
@@ -1400,12 +1481,12 @@ msgstr "Aktív ID nem található"
#. module: mrp
#: view:mrp.workcenter:0
msgid "Search for mrp workcenter"
-msgstr ""
+msgstr "Munkaállomás keresése"
#. module: mrp
#: view:mrp.bom:0
msgid "BoM Structure"
-msgstr ""
+msgstr "Anyagjegyzék struktúra"
#. module: mrp
#: field:mrp.production,date_start:0
@@ -1416,12 +1497,12 @@ msgstr "Kezdő dátum"
#. module: mrp
#: field:mrp.workcenter,costs_hour_account_id:0
msgid "Hour Account"
-msgstr "Óra gyűjtőkód"
+msgstr "Óra számla"
#. module: mrp
#: view:mrp.production:0
msgid "Destination Loc."
-msgstr ""
+msgstr "Célállomás helye"
#. module: mrp
#: field:mrp.production.order,product_id2:0
@@ -1442,13 +1523,13 @@ msgstr "aktív"
#. module: mrp
#: model:process.node,name:mrp.process_node_procureproducts0
msgid "Procure Products"
-msgstr ""
+msgstr "Termékek beszerzése"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_workcenter_load_tree
#: view:report.workcenter.load:0
msgid "Work Center Loads"
-msgstr ""
+msgstr "Munkaállomások terheltsége"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_property_action
@@ -1466,6 +1547,7 @@ msgstr "Tulajdonságok"
msgid ""
"Reference of the document that generated this production order request."
msgstr ""
+"A dokumentum hivatkozása hozta létre ezt a gyártási rendelési megbízást."
#. module: mrp
#: sql_constraint:mrp.bom:0
@@ -1474,6 +1556,9 @@ msgid ""
"You should install the mrp_subproduct module if you want to manage extra "
"products on BoMs !"
msgstr ""
+"Minden termékmennyiségnek pozitívnak kell lennie.\n"
+"Telepítse az altermékek modult, amennyiben több terméket is szeretnénk egy "
+"anyagjegyzékkel legyártani."
#. module: mrp
#: view:mrp.production:0
@@ -1483,12 +1568,12 @@ msgstr "Extra információ"
#. module: mrp
#: model:ir.model,name:mrp.model_change_production_qty
msgid "Change Quantity of Products"
-msgstr ""
+msgstr "Termékek mennyiségének megváltoztatása"
#. module: mrp
#: model:process.node,note:mrp.process_node_productionorder0
msgid "Drives the procurement orders for raw material."
-msgstr ""
+msgstr "Kezeli az alapanyagok beszerzési rendeléseit."
#. module: mrp
#: view:mrp.production.order:0
@@ -1503,7 +1588,7 @@ msgstr "Főkönyvi számla"
#. module: mrp
#: report:mrp.production.order:0
msgid "SO Number"
-msgstr ""
+msgstr "Értékesítési megbízás száma"
#. module: mrp
#: selection:mrp.production,state:0
@@ -1536,17 +1621,19 @@ msgid ""
"This will change the price of parent products also according to the BoM "
"structure specified for the product."
msgstr ""
+"Ez megváltoztatja a fölérendelt termékek árát is a termék anyagjegyzék-"
+"struktúrájának megfelelően."
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action2
msgid "Manufacturing Orders To Start"
-msgstr ""
+msgstr "Elkezdésre váró gyártási rendelések"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
-msgstr ""
+msgstr "A %s állapotban lévő gyártási rendelések nem törölhetőek!"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_workcenter
@@ -1555,12 +1642,12 @@ msgstr ""
#: view:mrp.workcenter:0
#: field:report.workcenter.load,workcenter_id:0
msgid "Work Center"
-msgstr ""
+msgstr "Munkaállomás"
#. module: mrp
#: field:mrp.workcenter,capacity_per_cycle:0
msgid "Capacity per Cycle"
-msgstr ""
+msgstr "Ciklusonkénti kapacitás"
#. module: mrp
#: model:ir.model,name:mrp.model_product_product
@@ -1585,7 +1672,7 @@ msgstr "Összes óra"
#: field:mrp.production,location_src_id:0
#: field:mrp.production.order,location_src_id:0
msgid "Raw Materials Location"
-msgstr ""
+msgstr "Alapanyagok helye"
#. module: mrp
#: view:mrp.product_price:0
@@ -1605,11 +1692,14 @@ msgid ""
"of one or more persons and/or machines that can be considered as a unit for "
"capacity and planning forecasting."
msgstr ""
+"A munkaállomások lehetővé teszik Önnek, hogy létrehozza és kezelje az egy "
+"vagy több személyből vagy gépből álló gyártási egységeket, amelyek a "
+"kapacitástervezés és -előrejelzés alapegységeit képezik."
#. module: mrp
#: view:mrp.production:0
msgid "Consume Products"
-msgstr ""
+msgstr "Termékek felhasználása"
#. module: mrp
#: field:mrp.bom,product_uom:0
@@ -1624,16 +1714,16 @@ msgstr "Termék ME"
#: model:process.transition,name:mrp.process_transition_servicemto0
#: model:process.transition,name:mrp.process_transition_stockproduct0
msgid "Make to Order"
-msgstr "Rendelésre gyártás"
+msgstr "Beszerzés megrendelésből"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_mrp_production_order
#: model:ir.ui.menu,name:mrp.menu_report_mrp_production_orders_tree
msgid "Production Analysis"
-msgstr "Gyártás elemzése"
+msgstr "Gyártáselemzés"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Másolás"
@@ -1647,18 +1737,20 @@ msgstr "Gyártási termékek"
#: field:mrp.production,date_finished:0
#: field:mrp.production.order,date_finished:0
msgid "End Date"
-msgstr "Befejezés dátuma"
+msgstr "Befejezési dátum"
#. module: mrp
#: field:mrp.workcenter,resource_id:0
msgid "Resource"
-msgstr "Forrás"
+msgstr "Erőforrás"
#. module: mrp
#: help:mrp.bom,date_start:0
#: help:mrp.bom,date_stop:0
msgid "Validity of this BoM or component. Keep empty if it's always valid."
msgstr ""
+"Az anyagjegyzék vagy hozzávaló érvényessége. Hagyja üresen, ha mindig "
+"érvényes."
#. module: mrp
#: field:mrp.production,product_uos:0
@@ -1684,21 +1776,25 @@ msgid ""
"operations and to plan future loads on work centers based on production "
"planning."
msgstr ""
+"A késztermék gyártásához szükséges műveletek listája (munkaállomások "
+"listája). Az eljárás főleg arra szolgál, hogy a műveletek alatt a "
+"munkaállomások költségei ki legyenek számítva, és hogy a munkaállomások "
+"jövőbeni terheltsége meg legyen tervezve a gyártási terv alapján."
#. module: mrp
#: view:change.production.qty:0
msgid "Approve"
-msgstr "Jóváhagy"
+msgstr "Jóváhagyás"
#. module: mrp
#: view:mrp.property.group:0
msgid "Properties categories"
-msgstr ""
+msgstr "Tulajdonság-kategóriák"
#. module: mrp
#: help:mrp.production.workcenter.line,sequence:0
msgid "Gives the sequence order when displaying a list of work orders."
-msgstr ""
+msgstr "Megadja a sorrendet, amikor a munka megbízások listáját kiállítjuk."
#. module: mrp
#: report:mrp.production.order:0
@@ -1714,7 +1810,7 @@ msgstr "Tervezett termékek"
#. module: mrp
#: view:mrp.production.lot.line:0
msgid "Production Products Consommation"
-msgstr ""
+msgstr "Gyártási termékek felhasználása"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action
@@ -1734,12 +1830,17 @@ msgid ""
"the quantity selected and it will finish the production order when total "
"ordered quantities are produced."
msgstr ""
+"A \"Csak felhasználás\" mód csak a kijelölt mennyiségű termékeket használja "
+"fel.\n"
+"A \"Felhasználás és gyártás\" mód a kijelölt mennyiségű termékeket "
+"használja fel és gyártja is, és csak akkor fejezi be a gyártási rendelést, "
+"amikor a teljes megrendelt mennyiség legyártásra került."
#. module: mrp
#: view:mrp.production:0
#: report:mrp.production.order:0
msgid "Work Orders"
-msgstr ""
+msgstr "Munka megbízások"
#. module: mrp
#: field:mrp.workcenter,costs_cycle:0
@@ -1761,13 +1862,13 @@ msgstr "Törölt"
#. module: mrp
#: view:mrp.production.order:0
msgid "BOM"
-msgstr ""
+msgstr "Anyagjegyzék"
#. module: mrp
#: help:mrp.bom,product_uom:0
msgid ""
"UoM (Unit of Measure) is the unit of measurement for the inventory control"
-msgstr ""
+msgstr "A mértékegység leltárellenőrzés mértékegysége."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_bom0
@@ -1776,6 +1877,9 @@ msgid ""
"are products themselves) can also have their own Bill of Material (multi-"
"level)."
msgstr ""
+"Az anyagjegyzék a termék szétbontása összetevőkre. Az összetevőknek, amelyek "
+"maguk is termékek, rendelkezhetnek saját anyagjegyzékkel (több szintű "
+"anyagjegyzék)."
#. module: mrp
#: field:mrp.bom,company_id:0
@@ -1828,7 +1932,7 @@ msgstr "Összetevők"
#: report:bom.structure:0
#: model:ir.actions.report.xml,name:mrp.report_bom_structure
msgid "BOM Structure"
-msgstr ""
+msgstr "Anyagjegyzék struktúra"
#. module: mrp
#: field:mrp.bom,date_stop:0
@@ -1843,7 +1947,7 @@ msgstr "Érvényesség kezdete"
#. module: mrp
#: selection:mrp.bom,type:0
msgid "Normal BoM"
-msgstr ""
+msgstr "Normál anyagjegyzék"
#. module: mrp
#: field:res.company,manufacturing_lead:0
@@ -1863,6 +1967,9 @@ msgid ""
"linked to manufacturing activities, receptions of products and delivery "
"orders."
msgstr ""
+"A heti készlet érték változtatása lehetővé teszi Önnek, hogy kövesse a "
+"gyártási tevékenységekhez, a termékek beérkezéséhez és a kiszállítási "
+"megbízásokhoz kapcsolódó készletérték fejlődését."
#. module: mrp
#: view:mrp.product.produce:0
@@ -1872,7 +1979,7 @@ msgstr "Megerősítés"
#. module: mrp
#: field:mrp.bom,product_efficiency:0
msgid "Manufacturing Efficiency"
-msgstr ""
+msgstr "Gyártási hatékonyság"
#. module: mrp
#: constraint:res.company:0
@@ -1885,17 +1992,19 @@ msgid ""
"If the active field is set to False, it will allow you to hide the bills of "
"material without removing it."
msgstr ""
+"Ha az aktív mező \"Hamis\"-ra van állítva, ez lehetővé teszi, hogy elrejtse "
+"az anyagjegyzékeket, anélkül, hogy törölné azokat."
#. module: mrp
#: field:mrp.bom,product_rounding:0
msgid "Product Rounding"
-msgstr ""
+msgstr "Termék kerekítése"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production_workcenter_line
#: field:mrp.production.workcenter.line,name:0
msgid "Work Order"
-msgstr ""
+msgstr "Munka megbízás"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.action_report_mrp_production_order
@@ -1903,16 +2012,18 @@ msgid ""
"This reporting allows you to analyse your manufacturing activities and "
"performance."
msgstr ""
+"A riport készítés lehetővé teszi Önnek, hogy elemezze a gyártási "
+"tevékenységét és teljesítményét."
#. module: mrp
#: selection:mrp.product.produce,mode:0
msgid "Consume Only"
-msgstr ""
+msgstr "Csak felhasználás"
#. module: mrp
#: view:mrp.production:0
msgid "Recreate Picking"
-msgstr ""
+msgstr "Kiszedés újrakészítése"
#. module: mrp
#: help:mrp.bom,type:0
@@ -1923,6 +2034,12 @@ msgid ""
"product, it will be sold and shipped as a set of components, instead of "
"being produced."
msgstr ""
+"Ha egy altermék több termékben is használatban van, hasznos lehet "
+"megcsinálni a saját anyagjegyzékét. Ha nem szeretne különböző gyártási "
+"rendeléseket erre az altermékre, akkor válassza a fantom anyagjegyzék "
+"beállítását, mint anyagjegyzék típust. Ha a fantom anyagjegyzék kiinduló "
+"termékként van használatban, akkor azt a rendszer összetevők egységeként "
+"értékesíti és szállítja, ahelyett, hogy gyártaná."
#. module: mrp
#: field:mrp.bom,method:0
@@ -1940,6 +2057,14 @@ msgid ""
" When the production gets started then the state is set to 'In Production'.\n"
" When the production is over, the state is set to 'Done'."
msgstr ""
+"Amikor a gyártási rendelés létrejön, a gyártás állapota \"Tervezet\" lesz.\n"
+"Amikor a rendelés megerősítésre kerül, a gyártás állapota \"Várakozás az "
+"árura\" lesz.\n"
+"Ha bármilyen hiba felmerül, a gyártás állapota \"Kiszedési hiba\" lesz. \n"
+"Ha a készlet elérhető, akkor a gyártás állapota \"Gyártásra kész\" lesz. \n"
+"Amikor a gyártás elkezdődik, akkor a gyártás állapota \"Gyártás alatt\" "
+"lesz.\n"
+"Amikor a gyártás befejeződik, a a gyártás állapota \"Kész\" lesz."
#. module: mrp
#: selection:mrp.bom,method:0
@@ -1950,12 +2075,12 @@ msgstr "Rendelésre"
#: model:ir.ui.menu,name:mrp.menu_mrp_configuration
#: view:res.company:0
msgid "Configuration"
-msgstr "Beállítások"
+msgstr "Beállítás"
#. module: mrp
#: field:mrp.workcenter,time_stop:0
msgid "Time after prod."
-msgstr ""
+msgstr "Gyártás utáni idő"
#. module: mrp
#: field:mrp.workcenter.load,time_unit:0
@@ -1965,7 +2090,7 @@ msgstr "Időszak típusa"
#. module: mrp
#: view:mrp.production:0
msgid "Total Qty"
-msgstr "Összmenny."
+msgstr "Összmennyiség"
#. module: mrp
#: field:mrp.routing.workcenter,hour_nbr:0
@@ -1975,7 +2100,7 @@ msgstr "Órák száma"
#. module: mrp
#: view:mrp.workcenter:0
msgid "Costing Information"
-msgstr ""
+msgstr "Költségszámítási információk"
#. module: mrp
#: model:process.node,name:mrp.process_node_purchaseprocure0
@@ -1985,27 +2110,27 @@ msgstr "Beszerzési megrendelések"
#. module: mrp
#: help:mrp.bom,product_rounding:0
msgid "Rounding applied on the product quantity."
-msgstr ""
+msgstr "A termékmennyiségen alkalmazott kerekítés."
#. module: mrp
#: model:process.node,note:mrp.process_node_stock0
msgid "Assignment from Production or Purchase Order."
-msgstr ""
+msgstr "Ellátás gyártási vagy beszerzési megrendelésből."
#. module: mrp
#: field:mrp.routing.workcenter,routing_id:0
msgid "Parent Routing"
-msgstr ""
+msgstr "Fölérendelt eljárás"
#. module: mrp
#: view:mrp.installer:0
msgid "Configure"
-msgstr "Beállítás"
+msgstr "Beállít"
#. module: mrp
#: help:mrp.workcenter,time_start:0
msgid "Time in hours for the setup."
-msgstr ""
+msgstr "A beállításhoz szükséges idő órákban megadva."
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2021,19 +2146,19 @@ msgstr "Kép"
#: field:mrp.bom.revision,bom_id:0
#: field:procurement.order,bom_id:0
msgid "BoM"
-msgstr ""
+msgstr "Anyagjegyzék"
#. module: mrp
#: model:ir.model,name:mrp.model_report_mrp_inout
#: view:report.mrp.inout:0
msgid "Stock value variation"
-msgstr ""
+msgstr "Készletérték változás"
#. module: mrp
#: model:process.node,note:mrp.process_node_mts0
#: model:process.node,note:mrp.process_node_servicemts0
msgid "Assignment from stock."
-msgstr ""
+msgstr "Ellátás raktárból"
#. module: mrp
#: selection:mrp.production,state:0
@@ -2045,13 +2170,13 @@ msgstr "Várakozás az árura"
#. module: mrp
#: field:mrp.bom.revision,last_indice:0
msgid "last indice"
-msgstr ""
+msgstr "utolsó jelzőszám"
#. module: mrp
#: field:mrp.bom,revision_ids:0
#: view:mrp.bom.revision:0
msgid "BoM Revisions"
-msgstr ""
+msgstr "Anyagjegyzék felülvizsgálatok"
#. module: mrp
#: selection:mrp.production,state:0
@@ -2091,7 +2216,7 @@ msgstr "Költségszerkezet"
#. module: mrp
#: selection:mrp.product.produce,mode:0
msgid "Consume & Produce"
-msgstr ""
+msgstr "Felhasználás és gyártás"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2101,7 +2226,7 @@ msgstr "November"
#. module: mrp
#: field:mrp.bom,bom_id:0
msgid "Parent BoM"
-msgstr ""
+msgstr "Fölérendelt anyagjegyzék"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_bom_form_action2
@@ -2110,6 +2235,9 @@ msgid ""
"master bills of materials. Use this menu to search in which BoM a specific "
"component is used."
msgstr ""
+"Az anyagjegyzék összetevők azok összetevők és altermékek, amelyek fő "
+"anyagjegyzékek létrehozására szolgálnak. Használja ezt a menüt annak "
+"megkeresésére, hogy egy speciális összetevőt mely anyagjegyzék használ."
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2119,10 +2247,10 @@ msgstr "Január"
#. module: mrp
#: model:process.node,note:mrp.process_node_stockproduct0
msgid "Product type is Stockable or Consumable."
-msgstr "A termék típusa készletezhető vagy felhasználható."
+msgstr "A termék típusa raktározható vagy felhasználható."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2140,7 +2268,7 @@ msgstr "Mennyiség kiválasztása"
#: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action
#: field:product.product,bom_ids:0
msgid "Bill of Materials"
-msgstr ""
+msgstr "Anyagjegyzékek"
#. module: mrp
#: help:mrp.routing.workcenter,routing_id:0
@@ -2153,7 +2281,7 @@ msgstr ""
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_bom_revision
msgid "Bill of Material Revision"
-msgstr ""
+msgstr "Anyagjegyzék felülvizsgálat"
#. module: mrp
#: view:mrp.routing.workcenter:0
@@ -2164,13 +2292,13 @@ msgstr "Általános információ"
#. module: mrp
#: view:mrp.production:0
msgid "Productions"
-msgstr "Gyártás"
+msgstr "Gyártások"
#. module: mrp
#: code:addons/mrp/report/price.py:194
#, python-format
msgid "Work Cost of "
-msgstr ""
+msgstr "Munkaköltsége "
#. module: mrp
#: help:mrp.workcenter,note:0
@@ -2189,7 +2317,7 @@ msgstr ""
#: view:mrp.routing:0
#: model:process.node,name:mrp.process_node_routing0
msgid "Routing"
-msgstr ""
+msgstr "Gyártási eljárás"
#. module: mrp
#: field:mrp.installer,mrp_operations:0
@@ -2204,7 +2332,7 @@ msgstr "Tervezett dátum"
#. module: mrp
#: constraint:stock.move:0
msgid "You must assign a production lot for this product"
-msgstr ""
+msgstr "Rendeljen hozzá egy gyártási tételt ehhez a termékhez!"
#. module: mrp
#: model:ir.actions.act_window,help:mrp.mrp_property_action
@@ -2215,6 +2343,12 @@ msgid ""
"sales person creates a sales order, he can relate it to several properties "
"and OpenERP will automatically select the BoM to use according the the needs."
msgstr ""
+"A Tulajdonságok az OpenERP-ben arra szolgál, hogy kiválassza a megfelelő "
+"anyagjegyzéket egy termék gyártásához, amikor különböző módokon is "
+"gyárthatja ugyanazt a terméket. Számos tulajdonságot hozzárendelhet minden "
+"egyes anyagjegyzékhez. Amikor egy értékesítő létrehoz egy értékesítési "
+"megbízást, összekapcsolhatja azt számos tulajdonsággal, és az OpenERP "
+"automatikusan kiválasztja a megfelelő anyagjegyzéket az igények alapján."
#. module: mrp
#: view:mrp.production.order:0
@@ -2225,12 +2359,12 @@ msgstr "Gyártás"
#. module: mrp
#: view:board.board:0
msgid "Procurements in Exception"
-msgstr ""
+msgstr "Hibás beszerzések"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_minimumstockprocure0
msgid "'Minimum stock rule' material"
-msgstr ""
+msgstr "\"Minimális készlet szabály\" tárgya"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_product_price
@@ -2240,7 +2374,7 @@ msgstr "Termék ára"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_mrp_installer
msgid "MRP Applications Configuration"
-msgstr ""
+msgstr "Gyártási modul alkalmazások beállítása"
#. module: mrp
#: model:ir.model,name:mrp.model_stock_move_split
@@ -2250,13 +2384,13 @@ msgstr "Gyártási tételek részekre osztása"
#. module: mrp
#: view:change.production.qty:0
msgid "Change Quantity"
-msgstr ""
+msgstr "Mennyiség változtatása"
#. module: mrp
#: view:change.production.qty:0
#: model:ir.actions.act_window,name:mrp.action_change_production_qty
msgid "Change Product Qty"
-msgstr ""
+msgstr "Mennyiség változtatása"
#. module: mrp
#: view:mrp.bom.revision:0
@@ -2279,7 +2413,7 @@ msgstr "Május"
#. module: mrp
#: view:board.board:0
msgid "Manufacturing board"
-msgstr ""
+msgstr "Gyártás áttekintő"
#. module: mrp
#: field:mrp.production,date_planned_end:0
@@ -2293,6 +2427,9 @@ msgid ""
"specified period. It is expressed in number of hours and machine related "
"cycles."
msgstr ""
+"A munkaállomások terheltsége menü ad egy előrejelzést a munkaállomások "
+"terheltségéről egy megadott időszakban. Ez óraszámokban és géphez kapcsolt "
+"ciklusokban kerül kifejezésre."
#. module: mrp
#: model:process.node,note:mrp.process_node_procureproducts0
@@ -2318,7 +2455,7 @@ msgstr "Február"
#: model:ir.actions.act_window,name:mrp.mrp_property_group_action
#: model:ir.ui.menu,name:mrp.menu_mrp_property_group_action
msgid "Property Groups"
-msgstr ""
+msgstr "Tulajdonság-csoportok"
#. module: mrp
#: selection:mrp.production.order,month:0
@@ -2331,16 +2468,19 @@ msgid ""
"Depending on the chosen method to supply the stockable products, the "
"procurement order creates a RFQ, a production order, ... "
msgstr ""
+"Függően a raktározható termékek ellátásra kiválasztott módszertől a "
+"beszerzési megrendelés létrehoz egy ajánlatkérést, egy gyártási "
+"rendelést,... "
#. module: mrp
#: help:mrp.workcenter,time_stop:0
msgid "Time in hours for the cleaning."
-msgstr ""
+msgstr "A tisztítás ideje (órákban)."
#. module: mrp
#: model:process.transition,name:mrp.process_transition_purchaseprocure0
msgid "Automatic RFQ"
-msgstr ""
+msgstr "Automatikus ajánlatkérés"
#. module: mrp
#: model:process.transition,note:mrp.process_transition_servicemto0
@@ -2348,6 +2488,8 @@ msgid ""
"If the service has a 'Produce' supply method, this creates a task in the "
"project management module of OpenERP."
msgstr ""
+"Ha a szolgáltatás ellátási módszere \"Gyártás\", a rendszer feladatokat hoz "
+"létre az OpenERP projektmenedzsment moduljában."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_productionprocureproducts0
@@ -2356,6 +2498,9 @@ msgid ""
"production order creates as much procurement orders as components listed in "
"the BOM, through a run of the schedulers (MRP)."
msgstr ""
+"Az alapanyagok ellátása érdekében (lehet beszerzés vagy gyártás útján), a "
+"gyártási rendelés létrehoz annyi további gyártási rendelést, amennyi "
+"összetevő az anyagjegyzékben van, az ütemező futtatásán keresztül."
#. module: mrp
#: help:mrp.product_price,number:0
@@ -2363,11 +2508,13 @@ msgid ""
"Specify quantity of products to produce or buy. Report of Cost structure "
"will be displayed base on this quantity."
msgstr ""
+"Speciális termékmennyiség gyártásra vagy vásárlásra. A költségstruktúra "
+"riport e mennyiség alapján lesz kiállítva."
#. module: mrp
#: selection:mrp.bom,method:0
msgid "On Stock"
-msgstr "Készletre"
+msgstr "Raktáron"
#. module: mrp
#: field:mrp.bom,sequence:0
@@ -2380,12 +2527,12 @@ msgstr "Sorszám"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_leaves_search_mrp
msgid "Resource Leaves"
-msgstr ""
+msgstr "Erőforrás leadás"
#. module: mrp
#: help:mrp.bom,sequence:0
msgid "Gives the sequence order when displaying a list of bills of material."
-msgstr ""
+msgstr "Megadja a sorrendet, amikor az anyagjegyzékek listáját kiállítjuk."
#. module: mrp
#: view:mrp.production:0
@@ -2400,3 +2547,116 @@ msgstr "Felhasználandó termékek"
#: field:mrp.production.order,year:0
msgid "Year"
msgstr "Év"
+
+#~ msgid "Specify Cost of Work center per cycle."
+#~ msgstr "Adja meg a munkaállomás egy ciklusra számított költségét."
+
+#~ msgid "Workcenter Usage"
+#~ msgstr "Munkaállomás kihasználtsága"
+
+#~ msgid ""
+#~ "Number of operations this work center can do in parallel. If this work "
+#~ "center represents a team of 5 workers, the capacity per cycle is 5."
+#~ msgstr ""
+#~ "Műveletek száma, amelyeket a megadott munkaállomás párhuzamosan tud végezni. "
+#~ "Ha ez a munkaállomás 5 munka munkavállalóból álló csoportot jelent, akkor a "
+#~ "ciklusonkénti kapacitás 5."
+
+#~ msgid ""
+#~ "\n"
+#~ " This is the base module to manage the manufacturing process in OpenERP.\n"
+#~ "\n"
+#~ " Features:\n"
+#~ " * Make to Stock / Make to Order (by line)\n"
+#~ " * Multi-level BoMs, no limit\n"
+#~ " * Multi-level routing, no limit\n"
+#~ " * Routing and work center integrated with analytic accounting\n"
+#~ " * Scheduler computation periodically / Just In Time module\n"
+#~ " * Multi-pos, multi-warehouse\n"
+#~ " * Different reordering policies\n"
+#~ " * Cost method by product: standard price, average price\n"
+#~ " * Easy analysis of troubles or needs\n"
+#~ " * Very flexible\n"
+#~ " * Allows to browse Bill of Materials in complete structure\n"
+#~ " that include child and phantom BoMs\n"
+#~ " It supports complete integration and planification of stockable goods,\n"
+#~ " consumable of services. Services are completely integrated with the "
+#~ "rest\n"
+#~ " of the software. For instance, you can set up a sub-contracting service\n"
+#~ " in a BoM to automatically purchase on order the assembly of your "
+#~ "production.\n"
+#~ "\n"
+#~ " Reports provided by this module:\n"
+#~ " * Bill of Material structure and components\n"
+#~ " * Load forecast on workcenters\n"
+#~ " * Print a production order\n"
+#~ " * Stock forecasts\n"
+#~ " Dashboard provided by this module::\n"
+#~ " * List of next production orders\n"
+#~ " * List of deliveries (out picking)\n"
+#~ " * Graph of work center load\n"
+#~ " * List of procurement in exception\n"
+#~ " "
+#~ msgstr ""
+#~ "\n"
+#~ " Ez az alapmodul az OpenERP-ben a gyártási folyamatok kezelésére. \n"
+#~ "\n"
+#~ " Funkciók:\n"
+#~ " * Beszerzés raktárból és beszerzés megrendelésből (soronként "
+#~ "különbözően)\n"
+#~ " * Többszintű anyagjegyzékek (nincs korlátozás)\n"
+#~ " * Többszintű eljárások (nincs korlátozás)\n"
+#~ " * Gyártási eljárás és munkaállomás integráció az analitikus "
+#~ "könyveléssel\n"
+#~ " * Ütemező számítások periódikusan / Just In Time modul\n"
+#~ " * Több értékesítési hely, több raktár kezelése\n"
+#~ " * Különböző újrarendező eljárások\n"
+#~ " * Különböző költségkalkulációk termékenként: elszámoló ár, átlagár\n"
+#~ " * Könnyen kezelhető szükséglet felmérés és hiba felmérés\n"
+#~ " * Nagyon rugalmas\n"
+#~ " * Lehetővé teszi, hogy az anyagjegyzékeket a teljes struktúrájukban "
+#~ "böngésszük,\n"
+#~ " amely magába foglalja az alárendelt és fölérendelt anyagjegyzékeket "
+#~ "is.\n"
+#~ " Támogatja a raktározható áruk és a fogyasztható szolgáltatások teljes "
+#~ "integrációját\n"
+#~ " és a velük való tervezést. A szolgáltatások nem teljesen integráltak\n"
+#~ " a szoftver többi részével. Létrehozhat például egy alárendelt "
+#~ "szolgáltatást \n"
+#~ " egy anyagjegyzékben, hogy automatikusan beszerezze rendelésre a "
+#~ "gyártásának tételeit.\n"
+#~ "\n"
+#~ " A modul által nyújtott riportok:\n"
+#~ " * Anyagjegyzék struktúra és összetevők\n"
+#~ " * Munkaállomások terheltségének előrejelzése\n"
+#~ " * Gyártási rendelés nyomtatása\n"
+#~ " * Raktár előrejelzések\n"
+#~ "\n"
+#~ " A modul által nyújtott vezérlőpultok:\n"
+#~ " * Következő gyártási rendelések listája\n"
+#~ " * Szállítások listája\n"
+#~ " * Grafikon a munkaállomás terheltségéről\n"
+#~ " * Beszerzési hibák listája\n"
+#~ " "
+
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Ez a belső kiszedési lista, ami a késztermékeket a termelés tervbe viszi"
+
+#~ msgid ""
+#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
+#~ "Routing is indicated then,the third tab of a production order (workcenters) "
+#~ "will be automatically pre-completed."
+#~ msgstr ""
+#~ "A gyártási eljárás jelzi, hogy az összes munkaállomás milyen hosszan és/vagy "
+#~ "hány ciklusra van használatban. Ha a gyártási eljárás be van kapcsolva, a "
+#~ "gyártási rendelés 3. füle (munkaállomások) automatikusan kitöltésre kerül."
+
+#~ msgid ""
+#~ "Description of the work center. Explain here what's a cycle according to "
+#~ "this work center."
+#~ msgstr ""
+#~ "Munkaállomás leírása. Elmagyarázásra kerül itt, hogy mit jelent egy ciklus a "
+#~ "munkaállomás összefüggésében."
diff --git a/addons/mrp/i18n/id.po b/addons/mrp/i18n/id.po
index f59cf77019d..7741a302045 100644
--- a/addons/mrp/i18n/id.po
+++ b/addons/mrp/i18n/id.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/it.po b/addons/mrp/i18n/it.po
index 3b238fffc78..8cddef0977b 100644
--- a/addons/mrp/i18n/it.po
+++ b/addons/mrp/i18n/it.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-17 09:33+0000\n"
+"PO-Revision-Date: 2011-12-06 10:31+0000\n"
"Last-Translator: Davide Corio - agilebg.com \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -763,7 +763,7 @@ msgid "Per month"
msgstr "Mensile"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -776,7 +776,7 @@ msgid "Product Name"
msgstr "Descrizione Prodotto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Azione non valida !"
@@ -1316,7 +1316,7 @@ msgstr "Ubicazione dove il sistema stoccherà i prodotti finiti"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Questa è la lista dei prelievi interni necessari per la pianificazione della "
@@ -1375,7 +1375,7 @@ msgid "Month -1"
msgstr "Mese -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "L'ordine di produzione '%s' è pianificato per il %s."
@@ -1386,7 +1386,7 @@ msgid "Production Order N° :"
msgstr "Ordine di produzione N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "L'ordine di produzione '%s' è pronto per essere eseguito."
@@ -1627,7 +1627,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Ordini di Produzione da Eseguire"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1721,7 +1721,7 @@ msgid "Production Analysis"
msgstr "Analisi della produzione"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copia"
@@ -2252,7 +2252,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Il tipo prodotto è Stoccabile o Consumabile"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3255,6 +3255,13 @@ msgstr "Anno"
#~ "Se questo centro di lavoro rappresenta un team di 5 operai, la capacità per "
#~ "ciclo sarà 5."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Questa è la lista dei prelievi interni necessari per la pianificazione della "
+#~ "produzione del prodotto finito"
+
#~ msgid ""
#~ "Description of the work center. Explain here what's a cycle according to "
#~ "this work center."
diff --git a/addons/mrp/i18n/ko.po b/addons/mrp/i18n/ko.po
index 3fbc4c82d4c..92e42f8f80d 100644
--- a/addons/mrp/i18n/ko.po
+++ b/addons/mrp/i18n/ko.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-11-27 12:18+0000\n"
+"PO-Revision-Date: 2011-12-06 11:08+0000\n"
"Last-Translator: qdp (OpenERP) \n"
"Language-Team: Korean \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -718,7 +718,7 @@ msgid "Per month"
msgstr "월별"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -731,7 +731,7 @@ msgid "Product Name"
msgstr "상품 이름"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "유효하지 않은 액션 !"
@@ -1243,7 +1243,7 @@ msgstr "완제품을 보관할 시스템의 위치"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1297,7 +1297,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1308,7 +1308,7 @@ msgid "Production Order N° :"
msgstr "생산 주문 번호:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1537,7 +1537,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1627,7 +1627,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2116,7 +2116,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/lt.po b/addons/mrp/i18n/lt.po
index 44665d98443..4c776d8c9fc 100644
--- a/addons/mrp/i18n/lt.po
+++ b/addons/mrp/i18n/lt.po
@@ -7,15 +7,15 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-07-20 22:46+0000\n"
+"PO-Revision-Date: 2011-12-06 10:26+0000\n"
"Last-Translator: Giedrius Slavinskas - inovera.lt "
"\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
"Language: lt\n"
#. module: mrp
@@ -722,7 +722,7 @@ msgid "Per month"
msgstr "Per mėnesį"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -735,7 +735,7 @@ msgid "Product Name"
msgstr "Produkto pavadinimas"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Neleistinas veiksmas!"
@@ -1247,7 +1247,7 @@ msgstr "Vieta, kurioje talpinami pabaigti produktai ."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1301,7 +1301,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1312,7 +1312,7 @@ msgid "Production Order N° :"
msgstr "Gamybos užsakymo Nr. :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1541,7 +1541,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1631,7 +1631,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2121,7 +2121,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/mrp.pot b/addons/mrp/i18n/mrp.pot
index 25a8bea531d..937fd9f45c4 100644
--- a/addons/mrp/i18n/mrp.pot
+++ b/addons/mrp/i18n/mrp.pot
@@ -1165,7 +1165,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
-msgid "This is the internal picking list that brings the finished product to the production plan"
+msgid "This is the Internal Picking List that brings the finished product to the production plan"
msgstr ""
#. module: mrp
diff --git a/addons/mrp/i18n/nb.po b/addons/mrp/i18n/nb.po
index 2bd9cc375b1..efa8612a315 100644
--- a/addons/mrp/i18n/nb.po
+++ b/addons/mrp/i18n/nb.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-30 22:16+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-12-06 11:04+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: Norwegian Bokmal \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -756,7 +756,7 @@ msgid "Per month"
msgstr "Per måned"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -769,7 +769,7 @@ msgid "Product Name"
msgstr "Produktnavn"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Ugyldig hendelse !"
@@ -1306,7 +1306,7 @@ msgstr "Lokasjon hvor systemet vil plassere de ferdige produktene."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Dette er den interne plukklisten som flytter det ferdige produktet til "
@@ -1364,7 +1364,7 @@ msgid "Month -1"
msgstr "Måned -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Produksjonsordren '%s' er planlagt for %s."
@@ -1375,7 +1375,7 @@ msgid "Production Order N° :"
msgstr "Produksjonsordre nr :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Produksjonsordre '%s' er klar for produksjon ."
@@ -1617,7 +1617,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Produksjonsordre å starte"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "Kan ikke slette Produksjonsordre(r) som er i %s Status!"
@@ -1710,7 +1710,7 @@ msgid "Production Analysis"
msgstr "Produktanalyser"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Kopier"
@@ -2211,7 +2211,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2574,3 +2574,10 @@ msgstr "År"
#~ " * Graf over arbeidssenter belastning\n"
#~ " * Liste over anskaffelser med unntak\n"
#~ " "
+
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Dette er den interne plukklisten som flytter det ferdige produktet til "
+#~ "produksjonsplanen"
diff --git a/addons/mrp/i18n/nl.po b/addons/mrp/i18n/nl.po
index a54013b441c..16f363355a5 100644
--- a/addons/mrp/i18n/nl.po
+++ b/addons/mrp/i18n/nl.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-11-27 12:23+0000\n"
+"PO-Revision-Date: 2011-12-06 11:07+0000\n"
"Last-Translator: qdp (OpenERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -720,7 +720,7 @@ msgid "Per month"
msgstr "Per maand"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -733,7 +733,7 @@ msgid "Product Name"
msgstr "Naam product"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Ongeldige actie!"
@@ -1245,7 +1245,7 @@ msgstr "Locatie waar de eindproducten opgeslagen worden"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1299,7 +1299,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1310,7 +1310,7 @@ msgid "Production Order N° :"
msgstr "Productie opdracht nr :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1539,7 +1539,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1629,7 +1629,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2120,7 +2120,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/nl_BE.po b/addons/mrp/i18n/nl_BE.po
index bf55c83626f..da909aadf80 100644
--- a/addons/mrp/i18n/nl_BE.po
+++ b/addons/mrp/i18n/nl_BE.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/pl.po b/addons/mrp/i18n/pl.po
index fd8dd6e2272..c9017dfec60 100644
--- a/addons/mrp/i18n/pl.po
+++ b/addons/mrp/i18n/pl.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-22 13:12+0000\n"
+"PO-Revision-Date: 2011-12-06 11:05+0000\n"
"Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -746,7 +746,7 @@ msgid "Per month"
msgstr "Na miesiąc"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -759,7 +759,7 @@ msgid "Product Name"
msgstr "Nazwa produktu"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Niedozwolona akcja !"
@@ -1280,7 +1280,7 @@ msgstr "Strefa, w której system umieści gotowe produkty."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"To jest wewnętrzne pobranie, które przenosi gotowe produkty do planu "
@@ -1339,7 +1339,7 @@ msgid "Month -1"
msgstr "Miesiąc -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Zamówienie produkcji '%s' zostało zaplanowane dla %s."
@@ -1350,7 +1350,7 @@ msgid "Production Order N° :"
msgstr "Nr zamówienia produkcji"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Zamówienie produkcji '%s' jest gotowe do produkcji."
@@ -1583,7 +1583,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Zamówienia produkcji do rozpoczęcia"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "Nie można usuwać zamówień produkcji, które są w stanie %s !"
@@ -1673,7 +1673,7 @@ msgid "Production Analysis"
msgstr "Analiza produkcji"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Kopiuj"
@@ -2164,7 +2164,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3149,6 +3149,13 @@ msgstr "Rok"
#~ msgid "Procure Stockable Product"
#~ msgstr "Zapotrzebowanie na produkty rejestrowane"
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "To jest wewnętrzne pobranie, które przenosi gotowe produkty do planu "
+#~ "produkcji"
+
#~ msgid "Workcenter Usage"
#~ msgstr "Użycie centrum roboczego"
diff --git a/addons/mrp/i18n/pt.po b/addons/mrp/i18n/pt.po
index 9574e9dc573..478295f6d66 100644
--- a/addons/mrp/i18n/pt.po
+++ b/addons/mrp/i18n/pt.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-11-23 11:53+0000\n"
-"Last-Translator: Daniel Reis \n"
+"PO-Revision-Date: 2011-12-06 10:51+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-24 05:00+0000\n"
-"X-Generator: Launchpad (build 14336)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -734,7 +734,7 @@ msgid "Per month"
msgstr "Por mês"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -747,7 +747,7 @@ msgid "Product Name"
msgstr "Nome de produção"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Acção inválida !"
@@ -1259,7 +1259,7 @@ msgstr "Locais onde o sistema vai armazenar os produtos acabados."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1313,7 +1313,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1324,7 +1324,7 @@ msgid "Production Order N° :"
msgstr "Nº de Ordem de Produção :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1553,7 +1553,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1643,7 +1643,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2132,7 +2132,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/pt_BR.po b/addons/mrp/i18n/pt_BR.po
index e55389cc1ec..9748020a3c2 100644
--- a/addons/mrp/i18n/pt_BR.po
+++ b/addons/mrp/i18n/pt_BR.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-03-07 18:35+0000\n"
+"PO-Revision-Date: 2011-12-06 10:51+0000\n"
"Last-Translator: Alexsandro Haag \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -758,7 +758,7 @@ msgid "Per month"
msgstr "Por mês"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -771,7 +771,7 @@ msgid "Product Name"
msgstr "Nome do Produto"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Ação inválida!"
@@ -1315,7 +1315,7 @@ msgstr "Local onde o sistema estocará os produtos acabados"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Esta é a Lista de Separação Interna que traz o produto acabado para o plano "
@@ -1375,7 +1375,7 @@ msgid "Month -1"
msgstr "Mês -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "A Ordem de Produção '%s' esta agendada para %s"
@@ -1386,7 +1386,7 @@ msgid "Production Order N° :"
msgstr "Ordem Produção N °:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "A Ordem de Produção '%s' está pronta para produzir."
@@ -1628,7 +1628,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Ordens de Produção para Iniciar"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1722,7 +1722,7 @@ msgid "Production Analysis"
msgstr "Análise de Produção"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiar"
@@ -2249,7 +2249,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Produto é Estocável ou Consumível."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3184,6 +3184,13 @@ msgstr "Ano"
#~ "Descrição do Centro de Trabalho. Explique aqui qual ciclo corresponde ao "
#~ "Centro de Trabalho."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Esta é a Lista de Separação Interna que traz o produto acabado para o plano "
+#~ "de produção"
+
#~ msgid ""
#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
#~ "Routing is indicated then,the third tab of a production order (workcenters) "
diff --git a/addons/mrp/i18n/ro.po b/addons/mrp/i18n/ro.po
index e8e13f497d1..e39c78fd393 100644
--- a/addons/mrp/i18n/ro.po
+++ b/addons/mrp/i18n/ro.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -756,7 +756,7 @@ msgid "Per month"
msgstr "Pe lună"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -769,7 +769,7 @@ msgid "Product Name"
msgstr "Nume produs"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Acţiune invalidă !"
@@ -1308,7 +1308,7 @@ msgstr "Locația în care sistemul va stoca produsele finite."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1365,7 +1365,7 @@ msgid "Month -1"
msgstr "Luna - 1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Comanda de producție '%s' este programată pentru %s."
@@ -1376,7 +1376,7 @@ msgid "Production Order N° :"
msgstr "Nr comandă producţie"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Comanda de producție '%s' este gata să producă."
@@ -1618,7 +1618,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Comenzi de producție gata de start"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1712,7 +1712,7 @@ msgid "Production Analysis"
msgstr "Analize producție"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Copiaţi"
@@ -2227,7 +2227,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Tipul produsului este stocabil sau consumabile."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/ru.po b/addons/mrp/i18n/ru.po
index 0c804f401be..8af7ec344ce 100644
--- a/addons/mrp/i18n/ru.po
+++ b/addons/mrp/i18n/ru.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-03-24 16:01+0000\n"
-"Last-Translator: Viktor Prokopiev \n"
+"PO-Revision-Date: 2011-12-06 10:16+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -745,7 +745,7 @@ msgid "Per month"
msgstr "В месяц"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -758,7 +758,7 @@ msgid "Product Name"
msgstr "Название продукции"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Неверное действие !"
@@ -1293,7 +1293,7 @@ msgstr "Местоположение, в которое помещаются г
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
"Это внутренняя комплектовочная ведомость, которая соотносит готовую "
@@ -1349,7 +1349,7 @@ msgid "Month -1"
msgstr "Месяц -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "Производственный заказ '%s' запланирован на %s."
@@ -1360,7 +1360,7 @@ msgid "Production Order N° :"
msgstr "Заказ на производство №"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "Производственный заказ '%s' готов для производства."
@@ -1592,7 +1592,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1684,7 +1684,7 @@ msgid "Production Analysis"
msgstr "Анализ производства"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Копировать"
@@ -2177,7 +2177,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Тип продукта — Складируемый или Потребляемый."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2941,6 +2941,13 @@ msgstr "Год"
#~ "Количество параллельных операций для этого рабочегоцентра. Если этот центр "
#~ "представлен 5-ю работниками - производительность за цикл равна 5."
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr ""
+#~ "Это внутренняя комплектовочная ведомость, которая соотносит готовую "
+#~ "продукцию к производственному плану"
+
#~ msgid "Human Resource"
#~ msgstr "Людские ресурсы"
diff --git a/addons/mrp/i18n/sk.po b/addons/mrp/i18n/sk.po
index c74a1d09c53..e62a78dff86 100644
--- a/addons/mrp/i18n/sk.po
+++ b/addons/mrp/i18n/sk.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/sl.po b/addons/mrp/i18n/sl.po
index 29d4f7054ae..25818e929aa 100644
--- a/addons/mrp/i18n/sl.po
+++ b/addons/mrp/i18n/sl.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/sq.po b/addons/mrp/i18n/sq.po
index b6dea6d1b6c..cc4573e644e 100644
--- a/addons/mrp/i18n/sq.po
+++ b/addons/mrp/i18n/sq.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:49+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/sr@latin.po b/addons/mrp/i18n/sr@latin.po
index 3fac861858b..1e5aba0e23f 100644
--- a/addons/mrp/i18n/sr@latin.po
+++ b/addons/mrp/i18n/sr@latin.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/sv.po b/addons/mrp/i18n/sv.po
index f9a8fa1318b..fd85b918c51 100644
--- a/addons/mrp/i18n/sv.po
+++ b/addons/mrp/i18n/sv.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.14\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-08-03 23:21+0000\n"
-"Last-Translator: Stefan Lind \n"
+"PO-Revision-Date: 2011-12-06 11:07+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -720,7 +720,7 @@ msgid "Per month"
msgstr "Per månad"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -733,7 +733,7 @@ msgid "Product Name"
msgstr "Produktnamn"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Invalid action !"
@@ -1245,7 +1245,7 @@ msgstr "Location where the system will stock the finished products."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1299,7 +1299,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1310,7 +1310,7 @@ msgid "Production Order N° :"
msgstr "Production Order N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1539,7 +1539,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1629,7 +1629,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2118,7 +2118,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/tlh.po b/addons/mrp/i18n/tlh.po
index fd83fcb2f40..bf42bdfa3fa 100644
--- a/addons/mrp/i18n/tlh.po
+++ b/addons/mrp/i18n/tlh.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/tr.po b/addons/mrp/i18n/tr.po
index 21e0a1a9dfc..8d567981684 100644
--- a/addons/mrp/i18n/tr.po
+++ b/addons/mrp/i18n/tr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-06-27 18:38+0000\n"
-"Last-Translator: Ayhan KIZILTAN \n"
+"PO-Revision-Date: 2011-12-06 10:17+0000\n"
+"Last-Translator: Fabien (Open ERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -754,7 +754,7 @@ msgid "Per month"
msgstr "Ay başına"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -767,7 +767,7 @@ msgid "Product Name"
msgstr "Stok Adı"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "Geçersiz eylem !"
@@ -1311,7 +1311,7 @@ msgstr "Sistemin bitmiş ürünleri stokladığı lokasyon."
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr "Bu, bitmiş ürünü üretim planına getiren dahili toplama listesidir"
@@ -1367,7 +1367,7 @@ msgid "Month -1"
msgstr "Ay -1"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "'%s' üretim emri %s için planlandı."
@@ -1378,7 +1378,7 @@ msgid "Production Order N° :"
msgstr "Üretim Emri N° :"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "'%s' üretim emri üretime hazırdır."
@@ -1618,7 +1618,7 @@ msgid "Manufacturing Orders To Start"
msgstr "Başlatılacak Üretim Emirleri"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "%s Durumundaki Üretim Emri/Emirleri silinemez!"
@@ -1711,7 +1711,7 @@ msgid "Production Analysis"
msgstr "Üretim Analizi"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "Kopyala"
@@ -2229,7 +2229,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "Ürün tipi Stoklanabilir veya Sarf Edilebilir'dir."
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -2994,6 +2994,11 @@ msgstr "Yıl"
#~ " * İstisnai satınalma listesi\n"
#~ " "
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr "Bu, bitmiş ürünü üretim planına getiren dahili toplama listesidir"
+
#~ msgid ""
#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
#~ "Routing is indicated then,the third tab of a production order (workcenters) "
diff --git a/addons/mrp/i18n/uk.po b/addons/mrp/i18n/uk.po
index 1d2995b8ad3..96133154ea3 100644
--- a/addons/mrp/i18n/uk.po
+++ b/addons/mrp/i18n/uk.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr "Назва Продукту"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/vi.po b/addons/mrp/i18n/vi.po
index 59662a9b576..bf8f8978a06 100644
--- a/addons/mrp/i18n/vi.po
+++ b/addons/mrp/i18n/vi.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -721,7 +721,7 @@ msgid "Per month"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -734,7 +734,7 @@ msgid "Product Name"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1246,7 +1246,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1300,7 +1300,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1311,7 +1311,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1540,7 +1540,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1630,7 +1630,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2119,7 +2119,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/zh_CN.po b/addons/mrp/i18n/zh_CN.po
index ebad1e0e44c..88629751eb7 100644
--- a/addons/mrp/i18n/zh_CN.po
+++ b/addons/mrp/i18n/zh_CN.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-07-02 15:27+0000\n"
+"PO-Revision-Date: 2011-12-06 10:16+0000\n"
"Last-Translator: Wei \"oldrev\" Li \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr "每月"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr "产品名称"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr "无效动作"
@@ -1245,7 +1245,7 @@ msgstr "系统存储成品的库位"
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr "这是一张移库单的编号,是把产成品从生产线上移动到库房里"
@@ -1299,7 +1299,7 @@ msgid "Month -1"
msgstr "上个月"
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr "生产订单 '%s' 已创建,要生产的是 %s"
@@ -1310,7 +1310,7 @@ msgid "Production Order N° :"
msgstr "生产单号:"
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr "生产订单 '%s' 已可以开始生产"
@@ -1543,7 +1543,7 @@ msgid "Manufacturing Orders To Start"
msgstr "未开始的生产订单"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr "不能删除状态是 %s 的生产订单"
@@ -1633,7 +1633,7 @@ msgid "Production Analysis"
msgstr "生产分析"
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr "副本"
@@ -2132,7 +2132,7 @@ msgid "Product type is Stockable or Consumable."
msgstr "产品类型是可库存或消耗品"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -3111,6 +3111,11 @@ msgstr "年"
#~ msgid "Workcenter Usage"
#~ msgstr "使用的工作中心"
+#~ msgid ""
+#~ "This is the internal picking list that brings the finished product to the "
+#~ "production plan"
+#~ msgstr "这是一张移库单的编号,是把产成品从生产线上移动到库房里"
+
#~ msgid ""
#~ "\n"
#~ " This is the base module to manage the manufacturing process in OpenERP.\n"
diff --git a/addons/mrp/i18n/zh_HK.po b/addons/mrp/i18n/zh_HK.po
index 5c395b63b99..484e6c7318c 100644
--- a/addons/mrp/i18n/zh_HK.po
+++ b/addons/mrp/i18n/zh_HK.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-11-27 13:27+0000\n"
+"PO-Revision-Date: 2011-12-06 10:26+0000\n"
"Last-Translator: qdp (OpenERP) \n"
"Language-Team: Chinese (Hong Kong) \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -716,7 +716,7 @@ msgid "Per month"
msgstr "每月"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -729,7 +729,7 @@ msgid "Product Name"
msgstr "貨品名稱"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1241,7 +1241,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1295,7 +1295,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1306,7 +1306,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1625,7 +1625,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/i18n/zh_TW.po b/addons/mrp/i18n/zh_TW.po
index 7afc22bac08..866cc587475 100644
--- a/addons/mrp/i18n/zh_TW.po
+++ b/addons/mrp/i18n/zh_TW.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-11-27 13:27+0000\n"
+"PO-Revision-Date: 2011-12-06 10:25+0000\n"
"Last-Translator: qdp (OpenERP) \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n"
+"X-Generator: Launchpad (build 14435)\n"
#. module: mrp
#: field:mrp.production,move_created_ids:0
@@ -715,7 +715,7 @@ msgid "Per month"
msgstr "每月"
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
@@ -728,7 +728,7 @@ msgid "Product Name"
msgstr "貨品名稱"
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Invalid action !"
msgstr ""
@@ -1240,7 +1240,7 @@ msgstr ""
#. module: mrp
#: help:mrp.production,picking_id:0
msgid ""
-"This is the internal picking list that brings the finished product to the "
+"This is the Internal Picking List that brings the finished product to the "
"production plan"
msgstr ""
@@ -1294,7 +1294,7 @@ msgid "Month -1"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:924
+#: code:addons/mrp/mrp.py:914
#, python-format
msgid "Manufacturing order '%s' is scheduled for the %s."
msgstr ""
@@ -1305,7 +1305,7 @@ msgid "Production Order N° :"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:640
+#: code:addons/mrp/mrp.py:630
#, python-format
msgid "Manufacturing order '%s' is ready to produce."
msgstr ""
@@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:495
+#: code:addons/mrp/mrp.py:491
#, python-format
msgid "Cannot delete Production Order(s) which are in %s State!"
msgstr ""
@@ -1624,7 +1624,7 @@ msgid "Production Analysis"
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:349
+#: code:addons/mrp/mrp.py:345
#, python-format
msgid "Copy"
msgstr ""
@@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable."
msgstr ""
#. module: mrp
-#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/mrp.py:591
#: code:addons/mrp/wizard/change_production_qty.py:77
#: code:addons/mrp/wizard/change_production_qty.py:82
#, python-format
diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py
index 356a762c0c5..dea664f6fd6 100644
--- a/addons/mrp/mrp.py
+++ b/addons/mrp/mrp.py
@@ -176,7 +176,7 @@ class mrp_bom(osv.osv):
@param arg: User defined argument
@return: Dictionary of values
"""
- res = dict(map(lambda x: (x,''), ids))
+ res = dict.fromkeys(ids, False)
for line in self.browse(cr, uid, ids, context=context):
if line.type == 'phantom' and not line.bom_id:
res[line.id] = 'set'
@@ -467,7 +467,7 @@ class mrp_production(osv.osv):
'bom_id': fields.many2one('mrp.bom', 'Bill of Material', domain=[('bom_id','=',False)], readonly=True, states={'draft':[('readonly',False)]}),
'routing_id': fields.many2one('mrp.routing', string='Routing', on_delete='set null', readonly=True, states={'draft':[('readonly',False)]}, help="The list of operations (list of work centers) to produce the finished product. The routing is mainly used to compute work center costs during operations and to plan future loads on work centers based on production plannification."),
'picking_id': fields.many2one('stock.picking', 'Picking list', readonly=True, ondelete="restrict",
- help="This is the internal picking list that brings the finished product to the production plan"),
+ help="This is the Internal Picking List that brings the finished product to the production plan"),
'move_prod_id': fields.many2one('stock.move', 'Move product', readonly=True),
'move_lines': fields.many2many('stock.move', 'mrp_production_move_ids', 'production_id', 'move_id', 'Products to Consume', domain=[('state','not in', ('done', 'cancel'))], states={'done':[('readonly',True)]}),
'move_lines2': fields.many2many('stock.move', 'mrp_production_move_ids', 'production_id', 'move_id', 'Consumed Products', domain=[('state','in', ('done', 'cancel'))]),
diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml
index dafe399b583..eb1070ac941 100644
--- a/addons/mrp/mrp_view.xml
+++ b/addons/mrp/mrp_view.xml
@@ -522,6 +522,7 @@
mrp.bom[('id','=',active_id)]tree
+ tree
@@ -776,7 +777,7 @@
-
+
@@ -972,7 +973,7 @@
-
+
-
+
-
- Work Center Loads
- report.workcenter.load
- form
- graph,tree
-
- Work Center Loads gives you a projection of work center loads over a specified period. It is expressed in number of hours and machine related cycles.
-
diff --git a/addons/mrp/security/ir.model.access.csv b/addons/mrp/security/ir.model.access.csv
index 1d93fb460b5..4289010d165 100644
--- a/addons/mrp/security/ir.model.access.csv
+++ b/addons/mrp/security/ir.model.access.csv
@@ -1,94 +1,83 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_mrp_workcenter","mrp.workcenter","model_mrp_workcenter","mrp.group_mrp_user",1,0,0,0
-"access_mrp_routing","mrp.routing","model_mrp_routing","mrp.group_mrp_user",1,0,0,0
-"access_mrp_routing_workcenter","mrp.routing.workcenter","model_mrp_routing_workcenter","mrp.group_mrp_user",1,0,0,0
-"access_mrp_bom","mrp.bom","model_mrp_bom","group_mrp_user",1,0,0,0
-"access_mrp_bom_revision","mrp.bom.revision","model_mrp_bom_revision","group_mrp_user",1,0,0,0
-"access_mrp_production","mrp.production user","model_mrp_production","mrp.group_mrp_user",1,1,1,1
-"access_mrp_production_salesman","mrp.production salesman","model_mrp_production","base.group_sale_salesman",1,1,1,0
-"access_mrp_production_product_line_salesman","mrp.production.product.line salesman","model_mrp_production_product_line","base.group_sale_salesman",1,0,1,0
-"access_mrp_production_workcenter_line_salesman","mrp.production.workcenter.line salesman","model_mrp_production_workcenter_line","base.group_sale_salesman",1,0,1,0
-"access_mrp_property_group","mrp.property.group","procurement.model_mrp_property_group","mrp.group_mrp_manager",1,1,1,1
-"access_mrp_property","mrp.property","procurement.model_mrp_property","mrp.group_mrp_manager",1,1,1,1
-"access_mrp_production_product_line","mrp.production.product.line","model_mrp_production_product_line","mrp.group_mrp_user",1,1,1,1
-"access_procurement","procurement.order","model_procurement_order","mrp.group_mrp_user",1,1,1,1
-"access_mrp_workcenter_manager","mrp.workcenter.manager","model_mrp_workcenter","mrp.group_mrp_manager",1,1,1,1
-"access_mrp_routing_manager","mrp.routing.manager","model_mrp_routing","mrp.group_mrp_manager",1,1,1,1
-"access_mrp_routing_workcenter_manager","mrp.routing.workcenter.manager","model_mrp_routing_workcenter","mrp.group_mrp_manager",1,1,1,1
-"access_mrp_bom_manager","mrp.bom.manager","model_mrp_bom","mrp.group_mrp_manager",1,1,1,1
-"access_mrp_bom_revision_manager","mrp.bom.revision.manager","model_mrp_bom_revision","mrp.group_mrp_manager",1,1,1,1
-"access_stock_location_mrp_worker","stock.location mrp_worker","stock.model_stock_location","mrp.group_mrp_user",1,0,0,0
-"access_stock_move_mrp_worker","stock.move mrp_worker","stock.model_stock_move","mrp.group_mrp_user",1,1,1,0
-"access_stock_picking_mrp_worker","stock.picking mrp_worker","stock.model_stock_picking","mrp.group_mrp_user",1,1,1,1
-"access_stock_warehouse","stock.warehouse mrp_worker","stock.model_stock_warehouse","mrp.group_mrp_user",1,0,0,0
-"access_account_analytic_journal_mrp_worker","account.analytic.journal mrp_worker","account.model_account_analytic_journal","mrp.group_mrp_user",1,0,0,0
-"access_account_account","account.account mrp_worker","account.model_account_account","mrp.group_mrp_user",1,0,0,0
-"access_purchase_order_mrp_worker","purchase.order mrp_worker","purchase.model_purchase_order","mrp.group_mrp_user",1,0,0,0
-"access_purchase_order_line_mrp_worker","purchase.order.line mrp_worker","purchase.model_purchase_order_line","mrp.group_mrp_user",1,0,0,0
-"access_hr_timesheet_group_mrp_worker","resource.calendar mrp_manager","resource.model_resource_calendar","mrp.group_mrp_manager",1,1,1,1
-"access_procurement_stock_worker","procurement.order stock_worker","model_procurement_order","stock.group_stock_user",1,1,1,1
-"access_procurement_user","procurement.order.user","model_procurement_order","base.group_user",1,1,1,1
-"access_mrp_production_stock_worker","mrp.production stock_worker","model_mrp_production","stock.group_stock_user",1,0,0,0
-"access_report_workcenter_load","report.workcenter.load","model_report_workcenter_load","mrp.group_mrp_manager",1,1,1,1
-"access_report_mrp_inout","report.mrp.inout","model_report_mrp_inout","mrp.group_mrp_manager",1,1,1,1
-"access_product_product_manager","product.product manager","product.model_product_product","mrp.group_mrp_manager",1,0,0,0
-"access_ir_property_manager","ir.property manager","base.model_ir_property","mrp.group_mrp_manager",1,1,1,1
-"access_account_sequence_fiscalyear","account.sequence.fiscalyear","account.model_account_sequence_fiscalyear","mrp.group_mrp_user",1,1,1,1
-"access_product_product_user","product.product user","product.model_product_product","mrp.group_mrp_user",1,0,0,0
-"access_product_template_user","product.template user","product.model_product_template","mrp.group_mrp_user",1,0,0,0
-"access_product_uom_user","product.uom user","product.model_product_uom","mrp.group_mrp_user",1,0,0,0
-"access_product_supplierinfo_user","product.supplierinfo user","product.model_product_supplierinfo","mrp.group_mrp_user",1,1,1,1
-"access_res_partner_address","res.partner.address","base.model_res_partner_address","mrp.group_mrp_user",1,0,0,0
-"access_stock_tracking","stock.tracking","stock.model_stock_tracking","mrp.group_mrp_user",1,1,1,0
-"access_res_partner","res.partner","base.model_res_partner","mrp.group_mrp_user",1,0,0,0
-"access_workcenter_user","mrp.production.workcenter.line.user","model_mrp_production_workcenter_line","mrp.group_mrp_user",1,1,1,1
-"access_resource_calendar_leaves_user","mrp.resource.calendar.leaves.user","resource.model_resource_calendar_leaves","mrp.group_mrp_user",1,1,1,1
-"access_resource_calendar_leaves_manager","mrp.resource.calendar.leaves.manager","resource.model_resource_calendar_leaves","mrp.group_mrp_manager",1,0,0,0
-"access_resource_calendar_attendance_manager","mrp.resource.calendar.attendance.manager","resource.model_resource_calendar_attendance","mrp.group_mrp_manager",1,1,1,1
-"access_product_puom_categ","product.uom.categ","product.model_product_uom_categ","mrp.group_mrp_user",1,0,0,0
-"access_resource_resource","resource.resource","resource.model_resource_resource","mrp.group_mrp_user",1,0,0,0
-"access_board_board_user","mrp.board.board","board.model_board_board","mrp.group_mrp_user",1,0,0,0
-"access_account_sequence_fiscalyear_manager","account.sequence.fiscalyear","account.model_account_sequence_fiscalyear","mrp.group_mrp_manager",1,0,0,0
-"access_product_template_manager","product.template mgr","product.model_product_template","mrp.group_mrp_manager",1,0,0,0
-"access_product_uom_manager","product.uom user","product.model_product_uom","mrp.group_mrp_manager",1,0,0,0
-"access_product_supplierinfo_manager","product.supplierinfo user","product.model_product_supplierinfo","mrp.group_mrp_manager",1,0,0,0
-"access_res_partner_address_manager","res.partner.address","base.model_res_partner_address","mrp.group_mrp_manager",1,0,0,0
-"access_stock_tracking_manager","stock.tracking","stock.model_stock_tracking","mrp.group_mrp_manager",1,0,0,0
-"access_res_partner_manager","res.partner","base.model_res_partner","mrp.group_mrp_manager",1,0,0,0
-"access_product_puom_categ_manager","product.uom.categ","product.model_product_uom_categ","mrp.group_mrp_manager",1,0,0,0
-"access_resource_resource_manager","resource.resource","resource.model_resource_resource","mrp.group_mrp_manager",1,0,0,0
-"access_board_board_manager","mrp.board.board","board.model_board_board","mrp.group_mrp_manager",1,0,0,0
-"access_mrp_production_manager","mrp.production manager","model_mrp_production","mrp.group_mrp_manager",1,0,0,0
-"access_procurement_manager","procurement.order","model_procurement_order","mrp.group_mrp_manager",1,0,0,0
-"access_workcenter_manager","mrp.production.workcenter.line","model_mrp_production_workcenter_line","mrp.group_mrp_manager",1,0,0,0
-"access_stock_move_mrp_manager","stock.move mrp_manager","stock.model_stock_move","mrp.group_mrp_manager",1,0,0,0
-"access_mrp_production_product_line_manager","mrp.production.product.line manager","model_mrp_production_product_line","mrp.group_mrp_manager",1,0,0,0
-"access_account_sequence_fiscalyear_system","account.sequence.fiscalyear.system","account.model_account_sequence_fiscalyear","mrp.group_mrp_manager",1,0,0,0
-"access_stock_production_lot_user","stock.production.lot","stock.model_stock_production_lot","mrp.group_mrp_user",1,1,1,1
-"access_stock_warehouse_orderpoint_manager","stock.warehouse.orderpoint","procurement.model_stock_warehouse_orderpoint","mrp.group_mrp_manager",1,0,0,0
-"access_stock_picking_mrp_manager","stock.picking mrp_manager","stock.model_stock_picking","mrp.group_mrp_manager",1,0,0,0
-"access_report_mrp_inout_user","report.mrp.inout user","model_report_mrp_inout","mrp.group_mrp_user",1,0,0,0
-"access_report_workcenter_load_user","report.workcenter.load.user","model_report_workcenter_load","mrp.group_mrp_user",1,0,0,0
-"access_mrp_bom_salesman","mrp.bom","model_mrp_bom","base.group_sale_salesman",1,0,0,0
-"access_mrp_bom_stockuser","mrp.bom","model_mrp_bom","stock.group_stock_user",1,0,0,0
-"access_product_uom_categ_mrp_manager","product.uom.categ mrp_manager","product.model_product_uom_categ","mrp.group_mrp_manager",1,1,1,1
-"access_product_uom_mrp_manager","product.uom mrp_manager","product.model_product_uom","mrp.group_mrp_manager",1,1,1,1
-"access_product_ul_mrp_manager","product.ul mrp_manager","product.model_product_ul","mrp.group_mrp_manager",1,1,1,1
-"access_product_category_mrp_manager","product.category mrp_manager","product.model_product_category","mrp.group_mrp_manager",1,1,1,1
-"access_product_template_mrp_manager","product.template mrp_manager","product.model_product_template","mrp.group_mrp_manager",1,1,1,1
-"access_product_product_mrp_manager","product.product mrp_manager","product.model_product_product","mrp.group_mrp_manager",1,1,1,1
-"access_product_packaging_mrp_manager","product.packaging mrp_manager","product.model_product_packaging","mrp.group_mrp_manager",1,1,1,1
-"access_product_supplierinfo_mrp_manager","product.supplierinfo mrp_manager","product.model_product_supplierinfo","mrp.group_mrp_manager",1,1,1,1
-"access_pricelist_partnerinfo_mrp_manager","pricelist.partnerinfo mrp_manager","product.model_pricelist_partnerinfo","mrp.group_mrp_manager",1,1,1,1
-"access_product_price_type_mrp_manager","product.price.type mrp_manager","product.model_product_price_type","mrp.group_mrp_manager",1,1,1,1
-"access_product_pricelist_type_mrp_manager","product.pricelist.type mrp_manager","product.model_product_pricelist_type","mrp.group_mrp_manager",1,1,1,1
-"access_product_pricelist_mrp_manager","product.pricelist mrp_manager","product.model_product_pricelist","mrp.group_mrp_manager",1,1,1,1
-"access_ir_property_group_product_mrp_manager","ir_property group_product_mrp_manager","base.model_ir_property","mrp.group_mrp_manager",1,1,1,1
-"access_product_group_res_partner_mrp_manager","res_partner group_mrp_manager","base.model_res_partner","mrp.group_mrp_manager",1,1,1,0
-"access_product_pricelist_version_mrp_manager","product.pricelist.version mrp_manager","product.model_product_pricelist_version","mrp.group_mrp_manager",1,1,1,1
-"access_product_pricelist_item_mrp_manager","product.pricelist.item mrp_manager","product.model_product_pricelist_item","mrp.group_mrp_manager",1,1,1,1
-"access_resource_calendar_manufacturinguser","resource.calendar manufacturing.user","resource.model_resource_calendar","mrp.group_mrp_user",1,0,0,0
-"access_account_account_mrp_manager","account.account mrp manager","account.model_account_account","mrp.group_mrp_manager",1,0,0,0
-"access_account_journal_mrp_manager","account.journal mrp manager","account.model_account_journal","mrp.group_mrp_manager",1,0,0,0
-"access_stock_location_mrp_manager","stock.location product mrp manager","stock.model_stock_location","mrp.group_mrp_manager",1,0,0,0
-"access_purchase_order_stock_user","purchase.order stock user","purchase.model_purchase_order","stock.group_stock_user",1,1,1,0
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_mrp_workcenter,mrp.workcenter,model_mrp_workcenter,mrp.group_mrp_user,1,0,0,0
+access_mrp_routing,mrp.routing,model_mrp_routing,mrp.group_mrp_user,1,0,0,0
+access_mrp_routing_workcenter,mrp.routing.workcenter,model_mrp_routing_workcenter,mrp.group_mrp_user,1,0,0,0
+access_mrp_bom,mrp.bom,model_mrp_bom,group_mrp_user,1,0,0,0
+access_mrp_bom_revision,mrp.bom.revision,model_mrp_bom_revision,group_mrp_user,1,0,0,0
+access_mrp_production,mrp.production user,model_mrp_production,mrp.group_mrp_user,1,1,1,1
+access_mrp_production_salesman,mrp.production salesman,model_mrp_production,base.group_sale_salesman,1,1,1,0
+access_mrp_production_product_line_salesman,mrp.production.product.line salesman,model_mrp_production_product_line,base.group_sale_salesman,1,0,1,0
+access_mrp_production_workcenter_line_salesman,mrp.production.workcenter.line salesman,model_mrp_production_workcenter_line,base.group_sale_salesman,1,0,1,0
+access_mrp_property_group,mrp.property.group,procurement.model_mrp_property_group,mrp.group_mrp_manager,1,1,1,1
+access_mrp_property,mrp.property,procurement.model_mrp_property,mrp.group_mrp_manager,1,1,1,1
+access_mrp_production_product_line,mrp.production.product.line,model_mrp_production_product_line,mrp.group_mrp_user,1,1,1,1
+access_procurement,procurement.order,model_procurement_order,mrp.group_mrp_user,1,1,1,1
+access_mrp_workcenter_manager,mrp.workcenter.manager,model_mrp_workcenter,mrp.group_mrp_manager,1,1,1,1
+access_mrp_routing_manager,mrp.routing.manager,model_mrp_routing,mrp.group_mrp_manager,1,1,1,1
+access_mrp_routing_workcenter_manager,mrp.routing.workcenter.manager,model_mrp_routing_workcenter,mrp.group_mrp_manager,1,1,1,1
+access_mrp_bom_manager,mrp.bom.manager,model_mrp_bom,mrp.group_mrp_manager,1,1,1,1
+access_mrp_bom_revision_manager,mrp.bom.revision.manager,model_mrp_bom_revision,mrp.group_mrp_manager,1,1,1,1
+access_stock_location_mrp_worker,stock.location mrp_worker,stock.model_stock_location,mrp.group_mrp_user,1,0,0,0
+access_stock_move_mrp_worker,stock.move mrp_worker,stock.model_stock_move,mrp.group_mrp_user,1,1,1,0
+access_stock_picking_mrp_worker,stock.picking mrp_worker,stock.model_stock_picking,mrp.group_mrp_user,1,1,1,1
+access_stock_warehouse,stock.warehouse mrp_worker,stock.model_stock_warehouse,mrp.group_mrp_user,1,0,0,0
+access_account_analytic_journal_mrp_worker,account.analytic.journal mrp_worker,account.model_account_analytic_journal,mrp.group_mrp_user,1,0,0,0
+access_account_account,account.account mrp_worker,account.model_account_account,mrp.group_mrp_user,1,0,0,0
+access_purchase_order_mrp_worker,purchase.order mrp_worker,purchase.model_purchase_order,mrp.group_mrp_user,1,0,0,0
+access_purchase_order_line_mrp_worker,purchase.order.line mrp_worker,purchase.model_purchase_order_line,mrp.group_mrp_user,1,0,0,0
+access_hr_timesheet_group_mrp_worker,resource.calendar mrp_manager,resource.model_resource_calendar,mrp.group_mrp_manager,1,1,1,1
+access_procurement_stock_worker,procurement.order stock_worker,model_procurement_order,stock.group_stock_user,1,1,1,1
+access_procurement_user,procurement.order.user,model_procurement_order,base.group_user,1,1,1,1
+access_mrp_production_stock_worker,mrp.production stock_worker,model_mrp_production,stock.group_stock_user,1,0,0,0
+access_report_workcenter_load,report.workcenter.load,model_report_workcenter_load,mrp.group_mrp_manager,1,1,1,1
+access_report_mrp_inout,report.mrp.inout,model_report_mrp_inout,mrp.group_mrp_manager,1,1,1,1
+access_ir_property_manager,ir.property manager,base.model_ir_property,mrp.group_mrp_manager,1,1,1,1
+access_account_sequence_fiscalyear,account.sequence.fiscalyear,account.model_account_sequence_fiscalyear,mrp.group_mrp_user,1,1,1,1
+access_product_product_user,product.product user,product.model_product_product,mrp.group_mrp_user,1,0,0,0
+access_product_template_user,product.template user,product.model_product_template,mrp.group_mrp_user,1,0,0,0
+access_product_uom_user,product.uom user,product.model_product_uom,mrp.group_mrp_user,1,0,0,0
+access_product_supplierinfo_user,product.supplierinfo user,product.model_product_supplierinfo,mrp.group_mrp_user,1,1,1,1
+access_res_partner_address,res.partner.address,base.model_res_partner_address,mrp.group_mrp_user,1,0,0,0
+access_stock_tracking,stock.tracking,stock.model_stock_tracking,mrp.group_mrp_user,1,1,1,0
+access_res_partner,res.partner,base.model_res_partner,mrp.group_mrp_user,1,0,0,0
+access_workcenter_user,mrp.production.workcenter.line.user,model_mrp_production_workcenter_line,mrp.group_mrp_user,1,1,1,1
+access_resource_calendar_leaves_user,mrp.resource.calendar.leaves.user,resource.model_resource_calendar_leaves,mrp.group_mrp_user,1,1,1,1
+access_resource_calendar_leaves_manager,mrp.resource.calendar.leaves.manager,resource.model_resource_calendar_leaves,mrp.group_mrp_manager,1,0,0,0
+access_resource_calendar_attendance_manager,mrp.resource.calendar.attendance.manager,resource.model_resource_calendar_attendance,mrp.group_mrp_manager,1,1,1,1
+access_product_puom_categ,product.uom.categ,product.model_product_uom_categ,mrp.group_mrp_user,1,0,0,0
+access_resource_resource,resource.resource,resource.model_resource_resource,mrp.group_mrp_user,1,0,0,0
+access_board_board_user,mrp.board.board,board.model_board_board,mrp.group_mrp_user,1,0,0,0
+access_account_sequence_fiscalyear_manager,account.sequence.fiscalyear,account.model_account_sequence_fiscalyear,mrp.group_mrp_manager,1,0,0,0
+access_product_supplierinfo_manager,product.supplierinfo user,product.model_product_supplierinfo,mrp.group_mrp_manager,1,0,0,0
+access_stock_tracking_manager,stock.tracking,stock.model_stock_tracking,mrp.group_mrp_manager,1,0,0,0
+access_mrp_production_manager,mrp.production manager,model_mrp_production,mrp.group_mrp_manager,1,0,0,0
+access_procurement_manager,procurement.order,model_procurement_order,mrp.group_mrp_manager,1,0,0,0
+access_workcenter_manager,mrp.production.workcenter.line,model_mrp_production_workcenter_line,mrp.group_mrp_manager,1,0,0,0
+access_stock_move_mrp_manager,stock.move mrp_manager,stock.model_stock_move,mrp.group_mrp_manager,1,0,0,0
+access_mrp_production_product_line_manager,mrp.production.product.line manager,model_mrp_production_product_line,mrp.group_mrp_manager,1,0,0,0
+access_account_sequence_fiscalyear_system,account.sequence.fiscalyear.system,account.model_account_sequence_fiscalyear,mrp.group_mrp_manager,1,0,0,0
+access_stock_production_lot_user,stock.production.lot,stock.model_stock_production_lot,mrp.group_mrp_user,1,1,1,1
+access_stock_warehouse_orderpoint_manager,stock.warehouse.orderpoint,procurement.model_stock_warehouse_orderpoint,mrp.group_mrp_manager,1,0,0,0
+access_stock_picking_mrp_manager,stock.picking mrp_manager,stock.model_stock_picking,mrp.group_mrp_manager,1,0,0,0
+access_report_mrp_inout_user,report.mrp.inout user,model_report_mrp_inout,mrp.group_mrp_user,1,0,0,0
+access_report_workcenter_load_user,report.workcenter.load.user,model_report_workcenter_load,mrp.group_mrp_user,1,0,0,0
+access_mrp_bom_salesman,mrp.bom,model_mrp_bom,base.group_sale_salesman,1,0,0,0
+access_mrp_bom_stockuser,mrp.bom,model_mrp_bom,stock.group_stock_user,1,0,0,0
+access_product_uom_categ_mrp_manager,product.uom.categ mrp_manager,product.model_product_uom_categ,mrp.group_mrp_manager,1,1,1,1
+access_product_uom_mrp_manager,product.uom mrp_manager,product.model_product_uom,mrp.group_mrp_manager,1,1,1,1
+access_product_ul_mrp_manager,product.ul mrp_manager,product.model_product_ul,mrp.group_mrp_manager,1,1,1,1
+access_product_category_mrp_manager,product.category mrp_manager,product.model_product_category,mrp.group_mrp_manager,1,1,1,1
+access_product_template_mrp_manager,product.template mrp_manager,product.model_product_template,mrp.group_mrp_manager,1,1,1,1
+access_product_product_mrp_manager,product.product mrp_manager,product.model_product_product,mrp.group_mrp_manager,1,1,1,1
+access_product_packaging_mrp_manager,product.packaging mrp_manager,product.model_product_packaging,mrp.group_mrp_manager,1,1,1,1
+access_pricelist_partnerinfo_mrp_manager,pricelist.partnerinfo mrp_manager,product.model_pricelist_partnerinfo,mrp.group_mrp_manager,1,1,1,1
+access_product_price_type_mrp_manager,product.price.type mrp_manager,product.model_product_price_type,mrp.group_mrp_manager,1,1,1,1
+access_product_pricelist_type_mrp_manager,product.pricelist.type mrp_manager,product.model_product_pricelist_type,mrp.group_mrp_manager,1,1,1,1
+access_product_pricelist_mrp_manager,product.pricelist mrp_manager,product.model_product_pricelist,mrp.group_mrp_manager,1,1,1,1
+access_ir_property_group_product_mrp_manager,ir_property group_product_mrp_manager,base.model_ir_property,mrp.group_mrp_manager,1,1,1,1
+access_product_group_res_partner_mrp_manager,res_partner group_mrp_manager,base.model_res_partner,mrp.group_mrp_manager,1,1,1,0
+access_product_pricelist_version_mrp_manager,product.pricelist.version mrp_manager,product.model_product_pricelist_version,mrp.group_mrp_manager,1,1,1,1
+access_product_pricelist_item_mrp_manager,product.pricelist.item mrp_manager,product.model_product_pricelist_item,mrp.group_mrp_manager,1,1,1,1
+access_resource_calendar_manufacturinguser,resource.calendar manufacturing.user,resource.model_resource_calendar,mrp.group_mrp_user,1,0,0,0
+access_account_journal_mrp_manager,account.journal mrp manager,account.model_account_journal,mrp.group_mrp_manager,1,0,0,0
+access_purchase_order_stock_user,purchase.order stock user,purchase.model_purchase_order,stock.group_stock_user,1,1,1,0
diff --git a/addons/mrp/security/mrp_security.xml b/addons/mrp/security/mrp_security.xml
index fb83f8c4a62..b4b79d6f606 100644
--- a/addons/mrp/security/mrp_security.xml
+++ b/addons/mrp/security/mrp_security.xml
@@ -3,10 +3,12 @@
- Manufacturing / User
+ User
+
- Manufacturing / Manager
+ Manager
+
diff --git a/addons/mrp/static/src/img/icon.png b/addons/mrp/static/src/img/icon.png
new file mode 100644
index 00000000000..600104af507
Binary files /dev/null and b/addons/mrp/static/src/img/icon.png differ
diff --git a/addons/mrp_jit/i18n/hr.po b/addons/mrp_jit/i18n/hr.po
index 6c845797ba4..9f965c216ea 100644
--- a/addons/mrp_jit/i18n/hr.po
+++ b/addons/mrp_jit/i18n/hr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2009-12-22 12:16+0000\n"
-"Last-Translator: Jožek Prikratki \n"
+"PO-Revision-Date: 2011-12-12 08:29+0000\n"
+"Last-Translator: Tomislav Bosnjakovic \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:40+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-13 05:01+0000\n"
+"X-Generator: Launchpad (build 14458)\n"
#. module: mrp_jit
#: model:ir.module.module,shortdesc:mrp_jit.module_meta_information
@@ -46,3 +46,22 @@ msgid ""
" \n"
" "
msgstr ""
+"\n"
+" Ovaj modul omogućuje Just in Time izračun naloga za nabavu.\n"
+"\n"
+" Ako instalirate ovaj modul nećete više morati pokretati normalni planer "
+"\n"
+" zahtjeva u nabavi (ali i dalje ćete morati pokrenuti planer pravila "
+"minimalne točke \n"
+" naručivanja, ili ga postaviti da se npr. pokreće dnevno)\n"
+" Svi zahtjevi za nabavom će se procesirati odmah, što može u nekim "
+"slučajevima\n"
+" utjecati na brzinu rada.\n"
+"\n"
+" Također može povećati veličinu vaših zaliha jer se artikli naručuju čim "
+"je to \n"
+" moguće i raspon vremena planiranja se više ne uzima u obzir.\n"
+" u tom slučaju ne možete koristiti prioritete kod različitih prijenosa.\n"
+" \n"
+" \n"
+" "
diff --git a/addons/mrp_operations/__openerp__.py b/addons/mrp_operations/__openerp__.py
index d965ca5160c..caa33cc6556 100644
--- a/addons/mrp_operations/__openerp__.py
+++ b/addons/mrp_operations/__openerp__.py
@@ -62,7 +62,8 @@ So that we can compare the theoretic delay and real delay.
'mrp_operations_view.xml',
'mrp_operations_report.xml',
'report/mrp_workorder_analysis_view.xml',
- 'process/mrp_operation_process.xml'
+ 'process/mrp_operation_process.xml',
+ 'mrp_operations_workflow_instance.xml'
],
'demo_xml': ['mrp_operation_data.xml'],
'test': ['test/mrp_operations.yml', 'test/mrp_operations_report.yml','test/mrp_operation_test.yml'],
diff --git a/addons/mrp_operations/i18n/hr.po b/addons/mrp_operations/i18n/hr.po
index e9745098516..7a6d5bd3c42 100644
--- a/addons/mrp_operations/i18n/hr.po
+++ b/addons/mrp_operations/i18n/hr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-03 16:58+0000\n"
-"PO-Revision-Date: 2010-10-15 09:07+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-12-12 10:24+0000\n"
+"Last-Translator: Tomislav Bosnjakovic \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:31+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-13 05:01+0000\n"
+"X-Generator: Launchpad (build 14458)\n"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_wc_action_form
@@ -23,17 +23,17 @@ msgstr ""
#: view:mrp.production.workcenter.line:0
#: view:mrp.workorder:0
msgid "Work Orders"
-msgstr ""
+msgstr "Radni nalozi"
#. module: mrp_operations
#: model:process.node,note:mrp_operations.process_node_canceloperation0
msgid "Cancel the operation."
-msgstr ""
+msgstr "Cancel the operation."
#. module: mrp_operations
#: model:ir.model,name:mrp_operations.model_mrp_operations_operation_code
msgid "mrp_operations.operation.code"
-msgstr ""
+msgstr "mrp_operations.operation.code"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:133
@@ -45,76 +45,76 @@ msgstr ""
#: view:mrp.production.workcenter.line:0
#: view:mrp.workorder:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupiraj po..."
#. module: mrp_operations
#: model:process.node,note:mrp_operations.process_node_workorder0
msgid "Information from the routing definition."
-msgstr ""
+msgstr "Information from the routing definition."
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "March"
-msgstr ""
+msgstr "Ožujak"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_wc_resource_planning
#: model:ir.ui.menu,name:mrp_operations.menu_mrp_production_wc_resource_planning
msgid "Work Centers"
-msgstr ""
+msgstr "Radni centri"
#. module: mrp_operations
#: view:mrp.production:0
#: view:mrp.production.workcenter.line:0
#: selection:mrp_operations.operation.code,start_stop:0
msgid "Resume"
-msgstr ""
+msgstr "Resume"
#. module: mrp_operations
#: report:mrp.code.barcode:0
msgid "("
-msgstr ""
+msgstr "("
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Product to Produce"
-msgstr ""
+msgstr "Product to Produce"
#. module: mrp_operations
#: view:mrp_operations.operation:0
msgid "Production Operation"
-msgstr ""
+msgstr "Production Operation"
#. module: mrp_operations
#: field:mrp.production,allow_reorder:0
msgid "Free Serialisation"
-msgstr ""
+msgstr "Free Serialisation"
#. module: mrp_operations
#: model:process.process,name:mrp_operations.process_process_mrpoperationprocess0
msgid "Mrp Operations"
-msgstr ""
+msgstr "Mrp operacije"
#. module: mrp_operations
#: view:mrp.workorder:0
#: field:mrp.workorder,day:0
msgid "Day"
-msgstr ""
+msgstr "Dan"
#. module: mrp_operations
#: model:process.node,name:mrp_operations.process_node_productionorder0
msgid "Production Order"
-msgstr ""
+msgstr "Production Order"
#. module: mrp_operations
#: selection:mrp.production.workcenter.line,production_state:0
msgid "Picking Exception"
-msgstr ""
+msgstr "Skladišna iznimka"
#. module: mrp_operations
#: model:process.transition,name:mrp_operations.process_transition_productionstart0
msgid "Creation of the work order"
-msgstr ""
+msgstr "Creation of the work order"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:463
@@ -132,7 +132,7 @@ msgstr ""
#. module: mrp_operations
#: model:process.transition,note:mrp_operations.process_transition_productionstart0
msgid "The work orders are created on the basis of the production order."
-msgstr ""
+msgstr "The work orders are created on the basis of the production order."
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:133
@@ -149,28 +149,28 @@ msgstr ""
#: selection:mrp.workorder,state:0
#: selection:mrp_operations.operation.code,start_stop:0
msgid "Cancelled"
-msgstr ""
+msgstr "Otkazani"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_wc_confirm_action
msgid "Confirmed Work Orders"
-msgstr ""
+msgstr "Potvrđeni radni nalozi"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_operation_action
#: view:mrp.production.workcenter.line:0
msgid "Operations"
-msgstr ""
+msgstr "Operations"
#. module: mrp_operations
#: model:ir.model,name:mrp_operations.model_stock_move
msgid "Stock Move"
-msgstr ""
+msgstr "Skladišni prijenosi"
#. module: mrp_operations
#: field:mrp.workorder,nbr:0
msgid "# of Lines"
-msgstr ""
+msgstr "# linija"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
@@ -178,7 +178,7 @@ msgstr ""
#: selection:mrp.production.workcenter.line,state:0
#: selection:mrp.workorder,state:0
msgid "Draft"
-msgstr ""
+msgstr "Nacrt"
#. module: mrp_operations
#: selection:mrp.production.workcenter.line,production_state:0
@@ -191,13 +191,13 @@ msgstr "U proizvodnji"
#: view:mrp.workorder:0
#: field:mrp.workorder,state:0
msgid "State"
-msgstr ""
+msgstr "Stanje"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.action_report_mrp_workorder
#: model:ir.model,name:mrp_operations.model_mrp_production_workcenter_line
msgid "Work Order"
-msgstr ""
+msgstr "Radni nalog"
#. module: mrp_operations
#: model:process.transition,note:mrp_operations.process_transition_workstartoperation0
@@ -205,11 +205,13 @@ msgid ""
"There is 1 work order per work center. The information about the number of "
"cycles or the cycle time."
msgstr ""
+"Tu je 1 radni nalog po radnom centru. Podaci o broju ciklusa ili vrijeme "
+"ciklusa."
#. module: mrp_operations
#: view:mrp.workorder:0
msgid "Month -1"
-msgstr ""
+msgstr "Month -1"
#. module: mrp_operations
#: help:mrp.production.workcenter.line,state:0
@@ -232,7 +234,7 @@ msgstr ""
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Planned Date"
-msgstr ""
+msgstr "Planiran datum"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:479
@@ -244,22 +246,22 @@ msgstr ""
#: view:mrp.workorder:0
#: field:mrp.workorder,product_qty:0
msgid "Product Qty"
-msgstr ""
+msgstr "Količina"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "July"
-msgstr ""
+msgstr "Srpanj"
#. module: mrp_operations
#: field:mrp_operations.operation.code,name:0
msgid "Operation Name"
-msgstr ""
+msgstr "Operation Name"
#. module: mrp_operations
#: field:mrp_operations.operation.code,start_stop:0
msgid "Status"
-msgstr ""
+msgstr "Status"
#. module: mrp_operations
#: model:ir.actions.act_window,help:mrp_operations.mrp_production_wc_action_planning
@@ -270,16 +272,20 @@ msgid ""
"different impacts on the costs of manufacturing and planning depending on "
"the available workload."
msgstr ""
+"Za proizvodnju ili sastavljanje proizvoda, i korištenje sirovina i gotovih "
+"proizvoda morate upravljatii proizvodnim operacijama. Proizvodne operacije "
+"često se nazivaju radnim nalozima. Različite operacije će imati različite "
+"utjecaje na troškove proizvodnje i planiranje, ovisno o raspoloživosti posla."
#. module: mrp_operations
#: field:mrp_operations.operation,order_date:0
msgid "Order Date"
-msgstr ""
+msgstr "Datum naloga"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_wc_draft_action
msgid "Future Work Orders"
-msgstr ""
+msgstr "Future Work Orders"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:459
@@ -292,50 +298,50 @@ msgstr ""
#. module: mrp_operations
#: model:process.node,name:mrp_operations.process_node_canceloperation0
msgid "Operation Cancelled"
-msgstr ""
+msgstr "Operation Cancelled"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "September"
-msgstr ""
+msgstr "Rujan"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "December"
-msgstr ""
+msgstr "Prosinac"
#. module: mrp_operations
#: view:mrp.workorder:0
#: field:mrp.workorder,month:0
msgid "Month"
-msgstr ""
+msgstr "Mjesec"
#. module: mrp_operations
#: selection:mrp.production.workcenter.line,production_state:0
msgid "Canceled"
-msgstr ""
+msgstr "Otkazano"
#. module: mrp_operations
#: model:ir.model,name:mrp_operations.model_mrp_operations_operation
msgid "mrp_operations.operation"
-msgstr ""
+msgstr "mrp_operations.operation"
#. module: mrp_operations
#: model:ir.model,name:mrp_operations.model_mrp_workorder
msgid "Work Order Report"
-msgstr ""
+msgstr "Work Order Report"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,date_start:0
#: field:mrp.production.workcenter.line,date_start_date:0
#: field:mrp_operations.operation,date_start:0
msgid "Start Date"
-msgstr ""
+msgstr "Početni datum"
#. module: mrp_operations
#: selection:mrp.production.workcenter.line,production_state:0
msgid "Waiting Goods"
-msgstr ""
+msgstr "Waiting Goods"
#. module: mrp_operations
#: view:mrp.production:0
@@ -351,53 +357,53 @@ msgstr "Pauza"
#: selection:mrp.production.workcenter.line,state:0
#: selection:mrp.workorder,state:0
msgid "In Progress"
-msgstr "U Tijeku"
+msgstr "In Progress"
#. module: mrp_operations
#: model:ir.model,name:mrp_operations.model_mrp_production
msgid "Manufacturing Order"
-msgstr ""
+msgstr "Nalog proizvodnje"
#. module: mrp_operations
#: view:mrp.production:0
#: view:mrp.production.workcenter.line:0
#: selection:mrp_operations.operation.code,start_stop:0
msgid "Start"
-msgstr ""
+msgstr "Start"
#. module: mrp_operations
#: view:mrp_operations.operation:0
msgid "Calendar View"
-msgstr ""
+msgstr "Calendar View"
#. module: mrp_operations
#: model:process.transition,note:mrp_operations.process_transition_startcanceloperation0
msgid ""
"When the operation needs to be cancelled, you can do it in the work order "
"form."
-msgstr ""
+msgstr "Operaciju je moguće otkazati na kartici radnog naloga."
#. module: mrp_operations
#: view:mrp.production:0
#: view:mrp.production.workcenter.line:0
msgid "Set Draft"
-msgstr ""
+msgstr "Set Draft"
#. module: mrp_operations
#: view:mrp.workorder:0
#: field:mrp.workorder,total_cycles:0
msgid "Total Cycles"
-msgstr ""
+msgstr "Ukupno ciklusa"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Pending"
-msgstr ""
+msgstr "Na čekanju"
#. module: mrp_operations
#: view:mrp_operations.operation.code:0
msgid "Production Operation Code"
-msgstr ""
+msgstr "Šifra operacije proizvodnje"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:467
@@ -408,12 +414,12 @@ msgstr ""
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "August"
-msgstr ""
+msgstr "Kolovoz"
#. module: mrp_operations
#: view:mrp.workorder:0
msgid "Started"
-msgstr ""
+msgstr "Započeto"
#. module: mrp_operations
#: model:ir.module.module,description:mrp_operations.module_meta_information
@@ -451,7 +457,7 @@ msgstr ""
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "June"
-msgstr ""
+msgstr "Lipanj"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:482
@@ -462,28 +468,28 @@ msgstr ""
#. module: mrp_operations
#: selection:mrp.production.workcenter.line,production_state:0
msgid "Ready to Produce"
-msgstr ""
+msgstr "Spremno za proizvodnju"
#. module: mrp_operations
#: field:stock.move,move_dest_id_lines:0
msgid "Children Moves"
-msgstr ""
+msgstr "Children Moves"
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_wc_action_planning
msgid "Work Orders Planning"
-msgstr ""
+msgstr "Work Orders Planning"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
#: field:mrp.workorder,date:0
msgid "Date"
-msgstr ""
+msgstr "Datum"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "November"
-msgstr ""
+msgstr "Studeni"
#. module: mrp_operations
#: help:mrp.production.workcenter.line,delay:0
@@ -493,22 +499,22 @@ msgstr ""
#. module: mrp_operations
#: view:mrp.workorder:0
msgid "Search"
-msgstr ""
+msgstr "Search"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "October"
-msgstr ""
+msgstr "Listopad"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "January"
-msgstr ""
+msgstr "Siječanj"
#. module: mrp_operations
#: model:process.node,note:mrp_operations.process_node_doneoperation0
msgid "Finish the operation."
-msgstr ""
+msgstr "Završi operacije."
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:452
@@ -519,7 +525,7 @@ msgstr ""
#. module: mrp_operations
#: model:process.node,note:mrp_operations.process_node_productionorder0
msgid "Information from the production order."
-msgstr ""
+msgstr "Information from the production order."
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:452
@@ -533,13 +539,13 @@ msgstr ""
#. module: mrp_operations
#: view:mrp.workorder:0
msgid "Current"
-msgstr ""
+msgstr "Trenutno"
#. module: mrp_operations
#: field:mrp_operations.operation,code_id:0
#: field:mrp_operations.operation.code,code:0
msgid "Code"
-msgstr ""
+msgstr "Šifra"
#. module: mrp_operations
#: code:addons/mrp_operations/mrp_operations.py:475
@@ -555,35 +561,35 @@ msgstr ""
#. module: mrp_operations
#: model:ir.actions.act_window,name:mrp_operations.mrp_production_code_action
msgid "Operation Codes"
-msgstr ""
+msgstr "Operation Codes"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,qty:0
msgid "Qty"
-msgstr ""
+msgstr "Kol."
#. module: mrp_operations
#: model:process.node,name:mrp_operations.process_node_doneoperation0
msgid "Operation Done"
-msgstr ""
+msgstr "Operacija izvršena"
#. module: mrp_operations
#: selection:mrp.production.workcenter.line,production_state:0
#: view:mrp.workorder:0
#: selection:mrp_operations.operation.code,start_stop:0
msgid "Done"
-msgstr ""
+msgstr "Izvršeno"
#. module: mrp_operations
#: model:ir.actions.report.xml,name:mrp_operations.report_code_barcode
msgid "Start/Stop Barcode"
-msgstr ""
+msgstr "Start/Stop Barcode"
#. module: mrp_operations
#: view:mrp.production:0
#: view:mrp.production.workcenter.line:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: mrp_operations
#: model:ir.actions.act_window,help:mrp_operations.mrp_production_wc_action_form
@@ -594,36 +600,41 @@ msgid ""
"latest operation of a manufacturing order, the MO is automatically done and "
"the related products are produced."
msgstr ""
+"Work Orders is the list of operations to be performed for each manufacturing "
+"order. Once you start the first work order of a manufacturing order, the "
+"manufacturing order is automatically marked as started. Once you finish the "
+"latest operation of a manufacturing order, the MO is automatically done and "
+"the related products are produced."
#. module: mrp_operations
#: model:process.node,name:mrp_operations.process_node_startoperation0
msgid "Start Operation"
-msgstr "pokreni operaciju"
+msgstr "Pokreni operaciju"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Information"
-msgstr "Obavijest"
+msgstr "Informacija"
#. module: mrp_operations
#: model:ir.actions.report.xml,name:mrp_operations.report_wc_barcode
msgid "Work Centers Barcode"
-msgstr ""
+msgstr "Work Centers Barcode"
#. module: mrp_operations
#: constraint:stock.move:0
msgid "You must assign a production lot for this product"
-msgstr ""
+msgstr "Morate pridijeliti lot proizvodnje ovom proizvodu"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Late"
-msgstr ""
+msgstr "Kasni"
#. module: mrp_operations
#: field:mrp.workorder,delay:0
msgid "Delay"
-msgstr ""
+msgstr "Kašnjenje"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
@@ -631,41 +642,41 @@ msgstr ""
#: field:mrp.workorder,production_id:0
#: field:mrp_operations.operation,production_id:0
msgid "Production"
-msgstr ""
+msgstr "Proizvodnja"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Search Work Orders"
-msgstr ""
+msgstr "Search Work Orders"
#. module: mrp_operations
#: field:mrp_operations.operation,workcenter_id:0
#: model:process.node,name:mrp_operations.process_node_workorder0
msgid "Work Center"
-msgstr ""
+msgstr "Radni centar"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Real"
-msgstr ""
+msgstr "Realan"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,date_planned:0
msgid "Scheduled Date"
-msgstr ""
+msgstr "Planirani datum"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,product:0
#: view:mrp.workorder:0
#: field:mrp.workorder,product_id:0
msgid "Product"
-msgstr ""
+msgstr "Proizvod"
#. module: mrp_operations
#: view:mrp.workorder:0
#: field:mrp.workorder,total_hours:0
msgid "Total Hours"
-msgstr ""
+msgstr "Uk. sati"
#. module: mrp_operations
#: help:mrp.production,allow_reorder:0
@@ -673,16 +684,18 @@ msgid ""
"Check this to be able to move independently all production orders, without "
"moving dependent ones."
msgstr ""
+"Provjerite mogućnost nezavisnog izvršavanja radnih naloga, bez izvršavanja "
+"ovisnih."
#. module: mrp_operations
#: report:mrp.code.barcode:0
msgid ")"
-msgstr ""
+msgstr ")"
#. module: mrp_operations
#: model:ir.ui.menu,name:mrp_operations.menu_report_mrp_workorders_tree
msgid "Work Order Analysis"
-msgstr ""
+msgstr "Work Order Analysis"
#. module: mrp_operations
#: view:mrp.production:0
@@ -690,59 +703,59 @@ msgstr ""
#: selection:mrp.production.workcenter.line,state:0
#: selection:mrp.workorder,state:0
msgid "Finished"
-msgstr ""
+msgstr "Dovršeno"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,uom:0
msgid "UOM"
-msgstr ""
+msgstr "JM"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Hours by Work Center"
-msgstr ""
+msgstr "Hours by Work Center"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,delay:0
msgid "Working Hours"
-msgstr ""
+msgstr "Radno vrijeme(od-do)"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,date_finished:0
#: field:mrp.production.workcenter.line,date_planned_end:0
#: field:mrp_operations.operation,date_finished:0
msgid "End Date"
-msgstr ""
+msgstr "Završni Datum"
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "February"
-msgstr ""
+msgstr "Veljača"
#. module: mrp_operations
#: model:process.transition,name:mrp_operations.process_transition_startcanceloperation0
msgid "Operation cancelled"
-msgstr ""
+msgstr "Operacija otkazana"
#. module: mrp_operations
#: model:process.node,note:mrp_operations.process_node_startoperation0
msgid "Start the operation."
-msgstr ""
+msgstr "Start the operation."
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "April"
-msgstr ""
+msgstr "Travanj"
#. module: mrp_operations
#: model:process.transition,name:mrp_operations.process_transition_startdoneoperation0
msgid "Operation done"
-msgstr ""
+msgstr "Operation done"
#. module: mrp_operations
#: view:mrp.workorder:0
msgid "#Line Orders"
-msgstr ""
+msgstr "#Line Orders"
#. module: mrp_operations
#: model:process.transition,note:mrp_operations.process_transition_startdoneoperation0
@@ -750,32 +763,34 @@ msgid ""
"When the operation is finished, the operator updates the system by finishing "
"the work order."
msgstr ""
+"When the operation is finished, the operator updates the system by finishing "
+"the work order."
#. module: mrp_operations
#: selection:mrp.workorder,month:0
msgid "May"
-msgstr ""
+msgstr "Svibanj"
#. module: mrp_operations
#: model:process.transition,name:mrp_operations.process_transition_workstartoperation0
msgid "Details of the work order"
-msgstr ""
+msgstr "Detalji radnog naloga"
#. module: mrp_operations
#: field:mrp.production.workcenter.line,production_state:0
msgid "Production State"
-msgstr ""
+msgstr "Stanje proizvodnje"
#. module: mrp_operations
#: view:mrp.workorder:0
#: field:mrp.workorder,year:0
msgid "Year"
-msgstr ""
+msgstr "Godina"
#. module: mrp_operations
#: view:mrp.production.workcenter.line:0
msgid "Duration"
-msgstr ""
+msgstr "Trajanje"
#. module: mrp_operations
#: constraint:mrp.production:0
@@ -785,7 +800,7 @@ msgstr ""
#. module: mrp_operations
#: constraint:stock.move:0
msgid "You try to assign a lot which is not from the same product"
-msgstr ""
+msgstr "Pokušavate pridružiti lot koji nije iz istog proizvoda"
#~ msgid ""
#~ "The Object name must start with x_ and not contain any special character !"
diff --git a/addons/mrp_operations/mrp_operations.py b/addons/mrp_operations/mrp_operations.py
index 7dc93731b03..e6f5aa00f28 100644
--- a/addons/mrp_operations/mrp_operations.py
+++ b/addons/mrp_operations/mrp_operations.py
@@ -86,10 +86,10 @@ class mrp_production_workcenter_line(osv.osv):
_order = "sequence, date_planned"
_columns = {
- 'state': fields.selection([('draft','Draft'),('startworking', 'In Progress'),('pause','Pause'),('cancel','Cancelled'),('done','Finished')],'State', readonly=True,
+ 'state': fields.selection([('draft','Draft'),('startworking', 'In Progress'),('pause','Pending'),('cancel','Cancelled'),('done','Finished')],'State', readonly=True,
help="* When a work order is created it is set in 'Draft' state.\n" \
"* When user sets work order in start mode that time it will be set in 'In Progress' state.\n" \
- "* When work order is in running mode, during that time if user wants to stop or to make changes in order then can set in 'Pause' state.\n" \
+ "* When work order is in running mode, during that time if user wants to stop or to make changes in order then can set in 'Pending' state.\n" \
"* When the user cancels the work order it will be set in 'Canceled' state.\n" \
"* When order is completely processed that time it is set in 'Finished' state."),
'date_start_date': fields.function(_get_date_date, string='Start Date', type='date'),
@@ -552,6 +552,13 @@ class mrp_operations_operation(osv.osv):
return super(mrp_operations_operation, self).create(cr, uid, vals, context=context)
+ def initialize_workflow_instance(self, cr, uid, context=None):
+ wf_service = netsvc.LocalService("workflow")
+ line_ids = self.pool.get('mrp.production.workcenter.line').search(cr, uid, [], context=context)
+ for line_id in line_ids:
+ wf_service.trg_create(uid, 'mrp.production.workcenter.line', line_id, cr)
+ return True
+
_columns={
'production_id':fields.many2one('mrp.production','Production',required=True),
'workcenter_id':fields.many2one('mrp.workcenter','Work Center',required=True),
diff --git a/addons/mrp_operations/mrp_operations_view.xml b/addons/mrp_operations/mrp_operations_view.xml
index 377a57d6121..e7decebbf4b 100644
--- a/addons/mrp_operations/mrp_operations_view.xml
+++ b/addons/mrp_operations/mrp_operations_view.xml
@@ -16,7 +16,7 @@
-
+
@@ -30,13 +30,12 @@
-
+
-
+
-
@@ -58,11 +57,9 @@
-
-
-
+
@@ -116,7 +113,7 @@
-
+
diff --git a/addons/mrp_operations/mrp_operations_workflow_instance.xml b/addons/mrp_operations/mrp_operations_workflow_instance.xml
new file mode 100644
index 00000000000..b8239c18ccf
--- /dev/null
+++ b/addons/mrp_operations/mrp_operations_workflow_instance.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/mrp_operations/security/ir.model.access.csv b/addons/mrp_operations/security/ir.model.access.csv
index c27d8fd66e5..54bfe482edb 100644
--- a/addons/mrp_operations/security/ir.model.access.csv
+++ b/addons/mrp_operations/security/ir.model.access.csv
@@ -1,10 +1,10 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_mrp_operations_operation_code","operations.operation.code","model_mrp_operations_operation_code","mrp.group_mrp_user",1,1,1,1
-"access_mrp_operations_operation_code_manager","operations.operation.code.manager","model_mrp_operations_operation_code","mrp.group_mrp_manager",1,0,0,0
-"access_mrp_operations_operation","operations.operation","model_mrp_operations_operation","mrp.group_mrp_user",1,1,1,1
-"access_mrp_operations_operation_manager","operations.operation.manager","model_mrp_operations_operation","mrp.group_mrp_manager",1,0,0,0
-"access_mrp_production_user","mrp_production_user","model_mrp_production","mrp.group_mrp_user",1,1,1,1
-"access_mrp_production_manager","mrp_production_manager","model_mrp_production","mrp.group_mrp_manager",1,0,0,0
-"access_mrp_production_workcenter_line","mrp.production.workcenter.line","mrp.model_mrp_production_workcenter_line","mrp.group_mrp_user",1,1,1,1
-"access_mrp_production_workcenter_line_manager","mrp.production.workcenter.line.manager","mrp.model_mrp_production_workcenter_line","mrp.group_mrp_manager",1,0,0,0
-"access_mrp_workorder_manager","mrp.workorder.manager","model_mrp_workorder","mrp.group_mrp_manager",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_mrp_operations_operation_code,operations.operation.code,model_mrp_operations_operation_code,mrp.group_mrp_user,1,1,1,1
+access_mrp_operations_operation_code_manager,operations.operation.code.manager,model_mrp_operations_operation_code,mrp.group_mrp_manager,1,0,0,0
+access_mrp_operations_operation,operations.operation,model_mrp_operations_operation,mrp.group_mrp_user,1,1,1,1
+access_mrp_operations_operation_manager,operations.operation.manager,model_mrp_operations_operation,mrp.group_mrp_manager,1,0,0,0
+access_mrp_production_user,mrp_production_user,model_mrp_production,mrp.group_mrp_user,1,1,1,1
+access_mrp_production_manager,mrp_production_manager,model_mrp_production,mrp.group_mrp_manager,1,0,0,0
+access_mrp_production_workcenter_line,mrp.production.workcenter.line,mrp.model_mrp_production_workcenter_line,mrp.group_mrp_user,1,1,1,1
+access_mrp_production_workcenter_line_manager,mrp.production.workcenter.line.manager,mrp.model_mrp_production_workcenter_line,mrp.group_mrp_manager,1,0,0,0
+access_mrp_workorder_manager,mrp.workorder.manager,model_mrp_workorder,mrp.group_mrp_manager,1,1,1,1
diff --git a/addons/mrp_repair/__openerp__.py b/addons/mrp_repair/__openerp__.py
index a1f060cf7c3..39f5a51e92c 100644
--- a/addons/mrp_repair/__openerp__.py
+++ b/addons/mrp_repair/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Repairs',
+ 'name': 'Repairs Management',
'version': '1.0',
'category': 'Manufacturing',
'description': """
diff --git a/addons/mrp_repair/i18n/hr.po b/addons/mrp_repair/i18n/hr.po
index f70205f2e7f..3a3a089e0bf 100644
--- a/addons/mrp_repair/i18n/hr.po
+++ b/addons/mrp_repair/i18n/hr.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2009-02-03 06:24+0000\n"
-"Last-Translator: <>\n"
+"PO-Revision-Date: 2011-12-12 12:24+0000\n"
+"Last-Translator: Tomislav Bosnjakovic \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:39+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-13 05:01+0000\n"
+"X-Generator: Launchpad (build 14458)\n"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Fees Line"
-msgstr ""
+msgstr "Fees Line"
#. module: mrp_repair
#: help:mrp.repair,state:0
@@ -35,11 +35,18 @@ msgid ""
"* The 'Done' state is set when repairing is completed. \n"
"* The 'Cancelled' state is used when user cancel repair order."
msgstr ""
+" * 'Nacrt' je početno stanje naloga. \n"
+"* 'Potvrđen' je slijedeće stanje \n"
+"* 'U tijeku' označava početak aktivnosti na popravku. \n"
+"* 'Za fakturiranje' stanje koje se koristi za generiranje računa prije ili "
+"poslije izvršenja naloga za popravak. \n"
+"* 'Izvršen' nalog za popravak je izvršen \n"
+"* 'Otkazan' nalog za popravak je otkazan."
#. module: mrp_repair
#: field:mrp.repair.line,move_id:0
msgid "Inventory Move"
-msgstr ""
+msgstr "Skladišni prijenos"
#. module: mrp_repair
#: model:ir.actions.act_window,help:mrp_repair.action_repair_order_tree
@@ -50,16 +57,21 @@ msgid ""
"date on the production lot in order to know if whether the repair should be "
"invoiced to the customer or not."
msgstr ""
+"Nalozi za popravak olakšavaju upravljanje post-prodajnim aktivnostima "
+"popravaka i servisa unutar i nakon jamstvenog roka. U nalogu za popravak "
+"navodite komponente koje treba odbaciti, dodati ili zamijeniti, bilježite "
+"vrijeme potrebno za popravak. Nalog koristi datume jamstva kako bi znao "
+"treba li fakturirati nalog kupcu ili ne."
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupiraj po..."
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Recreate Invoice"
-msgstr ""
+msgstr "Ponovo izradi račun"
#. module: mrp_repair
#: help:mrp.repair,deliver_bool:0
@@ -69,28 +81,32 @@ msgid ""
"that you can select the locations in the Info tab, if you have the extended "
"view."
msgstr ""
+"Check this box if you want to manage the delivery once the product is "
+"repaired. If cheked, it will create a picking with selected product. Note "
+"that you can select the locations in the Info tab, if you have the extended "
+"view."
#. module: mrp_repair
#: model:ir.actions.act_window,name:mrp_repair.action_cancel_repair
#: view:mrp.repair.cancel:0
msgid "Cancel Repair Order"
-msgstr ""
+msgstr "Otkaži nalog za popravak"
#. module: mrp_repair
#: field:mrp.repair.fee,to_invoice:0
#: field:mrp.repair.line,to_invoice:0
msgid "To Invoice"
-msgstr ""
+msgstr "Za fakturiranje"
#. module: mrp_repair
#: report:repair.order:0
msgid "Printing Date"
-msgstr ""
+msgstr "Printing Date"
#. module: mrp_repair
#: field:mrp.repair.make_invoice,group:0
msgid "Group by partner invoice address"
-msgstr ""
+msgstr "Grupiraj po adresi računa"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:430
@@ -101,45 +117,45 @@ msgstr ""
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Set to Draft"
-msgstr ""
+msgstr "Postavi na nacrt"
#. module: mrp_repair
#: selection:mrp.repair,state:0
msgid "Invoice Exception"
-msgstr ""
+msgstr "Iznimka računa"
#. module: mrp_repair
#: field:mrp.repair,address_id:0
msgid "Delivery Address"
-msgstr ""
+msgstr "Adresa dostave"
#. module: mrp_repair
#: model:ir.actions.act_window,name:mrp_repair.act_mrp_repair_invoice
#: model:ir.model,name:mrp_repair.model_mrp_repair_make_invoice
#: view:mrp.repair:0
msgid "Make Invoice"
-msgstr ""
+msgstr "Kreiraj račun"
#. module: mrp_repair
#: field:mrp.repair.fee,price_subtotal:0
#: field:mrp.repair.line,price_subtotal:0
msgid "Subtotal"
-msgstr ""
+msgstr "Podzbroj"
#. module: mrp_repair
#: report:repair.order:0
msgid "Invoice address :"
-msgstr ""
+msgstr "Adresa računa :"
#. module: mrp_repair
#: field:mrp.repair,guarantee_limit:0
msgid "Guarantee limit"
-msgstr ""
+msgstr "Limit jamstva"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Notes"
-msgstr ""
+msgstr "Bilješke"
#. module: mrp_repair
#: model:ir.module.module,description:mrp_repair.module_meta_information
@@ -160,12 +176,12 @@ msgstr ""
#: field:mrp.repair.fee,tax_id:0
#: field:mrp.repair.line,tax_id:0
msgid "Taxes"
-msgstr ""
+msgstr "Porezi"
#. module: mrp_repair
#: report:repair.order:0
msgid "Net Total :"
-msgstr ""
+msgstr "Net Total :"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:430
@@ -176,17 +192,17 @@ msgstr ""
#. module: mrp_repair
#: report:repair.order:0
msgid "VAT"
-msgstr ""
+msgstr "PDV"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Operations"
-msgstr ""
+msgstr "Operations"
#. module: mrp_repair
#: field:mrp.repair,move_id:0
msgid "Move"
-msgstr ""
+msgstr "Temeljnica"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:365
@@ -198,28 +214,28 @@ msgstr ""
#: model:ir.actions.act_window,name:mrp_repair.action_repair_order_tree
#: model:ir.ui.menu,name:mrp_repair.menu_repair_order
msgid "Repair Orders"
-msgstr ""
+msgstr "Nalozi za popravak"
#. module: mrp_repair
#: model:ir.actions.report.xml,name:mrp_repair.report_mrp_repair
msgid "Quotation / Order"
-msgstr ""
+msgstr "Ponuda / Nalog"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Extra Info"
-msgstr ""
+msgstr "Dodatni podaci"
#. module: mrp_repair
#: field:mrp.repair.fee,repair_id:0
#: field:mrp.repair.line,repair_id:0
msgid "Repair Order Reference"
-msgstr ""
+msgstr "Nalog za popravak br."
#. module: mrp_repair
#: selection:mrp.repair.line,state:0
msgid "Draft"
-msgstr ""
+msgstr "Nacrt"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:379
@@ -232,49 +248,49 @@ msgstr ""
#: selection:mrp.repair,state:0
#: selection:mrp.repair.line,state:0
msgid "Confirmed"
-msgstr ""
+msgstr "Potvrđeno"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Repairs order"
-msgstr ""
+msgstr "Nalozi za popravak"
#. module: mrp_repair
#: report:repair.order:0
msgid "Repair Order N° :"
-msgstr ""
+msgstr "Nalog za popravak N° :"
#. module: mrp_repair
#: field:mrp.repair,prodlot_id:0
#: field:mrp.repair.line,prodlot_id:0
#: report:repair.order:0
msgid "Lot Number"
-msgstr ""
+msgstr "Lot Number"
#. module: mrp_repair
#: field:mrp.repair,fees_lines:0
msgid "Fees Lines"
-msgstr ""
+msgstr "Fees Lines"
#. module: mrp_repair
#: field:mrp.repair.line,type:0
msgid "Type"
-msgstr ""
+msgstr "Vrsta"
#. module: mrp_repair
#: report:repair.order:0
msgid "Fees Line(s)"
-msgstr ""
+msgstr "Fees Line(s)"
#. module: mrp_repair
#: selection:mrp.repair,state:0
msgid "To be Invoiced"
-msgstr ""
+msgstr "Za fakturiranje"
#. module: mrp_repair
#: report:repair.order:0
msgid "Shipping address :"
-msgstr ""
+msgstr "Shipping address :"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:379
@@ -287,7 +303,7 @@ msgstr ""
#. module: mrp_repair
#: field:mrp.repair.line,product_uom_qty:0
msgid "Quantity (UoM)"
-msgstr ""
+msgstr "Količina (JM)"
#. module: mrp_repair
#: help:mrp.repair.line,state:0
@@ -300,11 +316,17 @@ msgid ""
" \n"
"* The 'Cancelled' state is set automatically when user cancel repair order."
msgstr ""
+" * Stanje 'Nacrt' se postavlja automatski prilikom upisa/inicijalnog "
+"kreiranja naloga za popravak. \n"
+"* Stanje 'Potvrđen' označava nalog koji treba izvršiti. \n"
+"* Izvršeni nalozi su u stanju 'Izvršen' . \n"
+"* Nalozi u stanju 'Otkazan' se neće izvršavati i ostaju u sistemu radi "
+"evidencije."
#. module: mrp_repair
#: report:repair.order:0
msgid "Total :"
-msgstr ""
+msgstr "Ukupno :"
#. module: mrp_repair
#: view:mrp.repair.cancel:0
@@ -312,17 +334,19 @@ msgid ""
"This operation will cancel the Repair process, but will not cancel it's "
"Invoice. Do you want to continue?"
msgstr ""
+"Ova operacija će otkazati proces popravka, ali neće otkazati pripadajući "
+"račun. Nastaviti?"
#. module: mrp_repair
#: field:mrp.repair,pricelist_id:0
msgid "Pricelist"
-msgstr ""
+msgstr "Pricelist"
#. module: mrp_repair
#: view:mrp.repair:0
#: field:mrp.repair,quotation_notes:0
msgid "Quotation Notes"
-msgstr ""
+msgstr "Quotation Notes"
#. module: mrp_repair
#: code:addons/mrp_repair/wizard/cancel_repair.py:49
@@ -333,34 +357,34 @@ msgstr ""
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Search Reair Orders"
-msgstr ""
+msgstr "Search Reair Orders"
#. module: mrp_repair
#: report:repair.order:0
msgid "(Add)"
-msgstr ""
+msgstr "(Add)"
#. module: mrp_repair
#: model:ir.model,name:mrp_repair.model_mrp_repair_line
#: view:mrp.repair:0
msgid "Repair Line"
-msgstr ""
+msgstr "Stavka popravka"
#. module: mrp_repair
#: view:mrp.repair:0
#: field:mrp.repair,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: mrp_repair
#: field:mrp.repair,invoice_method:0
msgid "Invoice Method"
-msgstr ""
+msgstr "Metoda računa"
#. module: mrp_repair
#: field:mrp.repair,repaired:0
msgid "Repaired"
-msgstr ""
+msgstr "Popravljeno"
#. module: mrp_repair
#: model:ir.module.module,shortdesc:mrp_repair.module_meta_information
@@ -371,145 +395,145 @@ msgstr ""
#: field:mrp.repair.fee,invoice_line_id:0
#: field:mrp.repair.line,invoice_line_id:0
msgid "Invoice Line"
-msgstr ""
+msgstr "Stavka računa"
#. module: mrp_repair
#: selection:mrp.repair.line,state:0
msgid "Canceled"
-msgstr ""
+msgstr "Otkazano"
#. module: mrp_repair
#: selection:mrp.repair,invoice_method:0
msgid "Before Repair"
-msgstr ""
+msgstr "Prije popravka"
#. module: mrp_repair
#: field:mrp.repair,location_id:0
msgid "Current Location"
-msgstr ""
+msgstr "Trenutna lokacija"
#. module: mrp_repair
#: view:mrp.repair.cancel:0
msgid "Yes"
-msgstr ""
+msgstr "Da"
#. module: mrp_repair
#: field:mrp.repair,invoiced:0
#: field:mrp.repair.fee,invoiced:0
#: field:mrp.repair.line,invoiced:0
msgid "Invoiced"
-msgstr ""
+msgstr "Fakturirano"
#. module: mrp_repair
#: view:mrp.repair.cancel:0
msgid "No"
-msgstr ""
+msgstr "Ne"
#. module: mrp_repair
#: view:mrp.repair.make_invoice:0
msgid "Create invoices"
-msgstr ""
+msgstr "Kreiraj račune"
#. module: mrp_repair
#: report:repair.order:0
msgid "(Remove)"
-msgstr ""
+msgstr "(Remove)"
#. module: mrp_repair
#: selection:mrp.repair.line,type:0
msgid "Add"
-msgstr ""
+msgstr "Dodaj"
#. module: mrp_repair
#: view:mrp.repair.make_invoice:0
msgid "Do you really want to create the invoice(s) ?"
-msgstr ""
+msgstr "Kreirati račun(e) ?"
#. module: mrp_repair
#: field:mrp.repair,name:0
msgid "Repair Reference"
-msgstr ""
+msgstr "Popravak br."
#. module: mrp_repair
#: model:ir.model,name:mrp_repair.model_mrp_repair
msgid "Repair Order"
-msgstr ""
+msgstr "Nalog za popravak"
#. module: mrp_repair
#: selection:mrp.repair,state:0
msgid "Under Repair"
-msgstr ""
+msgstr "U popravku"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Ready To Repair"
-msgstr ""
+msgstr "Spremno za popravak"
#. module: mrp_repair
#: field:mrp.repair,amount_untaxed:0
msgid "Untaxed Amount"
-msgstr ""
+msgstr "Osnovica"
#. module: mrp_repair
#: report:repair.order:0
msgid "Guarantee Limit"
-msgstr ""
+msgstr "Guarantee Limit"
#. module: mrp_repair
#: field:mrp.repair,default_address_id:0
msgid "unknown"
-msgstr ""
+msgstr "nepoznato"
#. module: mrp_repair
#: field:mrp.repair,product_id:0
#: report:repair.order:0
msgid "Product to Repair"
-msgstr ""
+msgstr "Proizvodi za popravak"
#. module: mrp_repair
#: report:repair.order:0
msgid "N° :"
-msgstr ""
+msgstr "N° :"
#. module: mrp_repair
#: help:mrp.repair,pricelist_id:0
msgid "The pricelist comes from the selected partner, by default."
-msgstr ""
+msgstr "Cjenik odabranog partnera."
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Date"
-msgstr ""
+msgstr "Datum"
#. module: mrp_repair
#: model:ir.model,name:mrp_repair.model_mrp_repair_fee
msgid "Repair Fees Line"
-msgstr ""
+msgstr "Stavka naknade popravka"
#. module: mrp_repair
#: selection:mrp.repair,state:0
msgid "Quotation"
-msgstr ""
+msgstr "Quotation"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Compute"
-msgstr ""
+msgstr "Izračunaj"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Confirm Repair"
-msgstr ""
+msgstr "Potvrdi popravak"
#. module: mrp_repair
#: report:repair.order:0
msgid "Repair Quotation"
-msgstr ""
+msgstr "Ponuda za popravak"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "End Repair"
-msgstr ""
+msgstr "Završi popravak"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:408
@@ -521,43 +545,43 @@ msgstr ""
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Quotations"
-msgstr ""
+msgstr "Ponude"
#. module: mrp_repair
#: field:mrp.repair.fee,product_uom_qty:0
#: report:repair.order:0
msgid "Quantity"
-msgstr ""
+msgstr "Količina"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Start Repair"
-msgstr ""
+msgstr "Pokreni popravak"
#. module: mrp_repair
#: view:mrp.repair:0
#: field:mrp.repair,state:0
#: field:mrp.repair.line,state:0
msgid "State"
-msgstr ""
+msgstr "Stanje"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Qty"
-msgstr ""
+msgstr "Kol."
#. module: mrp_repair
#: field:mrp.repair.fee,price_unit:0
#: field:mrp.repair.line,price_unit:0
#: report:repair.order:0
msgid "Unit Price"
-msgstr ""
+msgstr "Jedinična cijena"
#. module: mrp_repair
#: selection:mrp.repair,state:0
#: selection:mrp.repair.line,state:0
msgid "Done"
-msgstr ""
+msgstr "Izvršeno"
#. module: mrp_repair
#: help:mrp.repair,guarantee_limit:0
@@ -567,42 +591,46 @@ msgid ""
"operation and fee you will add will be set as 'not to invoiced' by default. "
"Note that you can change manually afterwards."
msgstr ""
+"Jamstveni limit se računa kao: datum zadnjeg prijenosa + jamstvo definirano "
+"na proizvodu. Ako je trenutni datum unutar jamstva svaka operacija i naknada "
+"koju dodate biti će označena sa 'nije za fakturiranje'. Naravno, to možete "
+"ručno promijeniti prema potrebi."
#. module: mrp_repair
#: field:mrp.repair,invoice_id:0
msgid "Invoice"
-msgstr ""
+msgstr "Račun"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Fees"
-msgstr ""
+msgstr "Fees"
#. module: mrp_repair
#: selection:mrp.repair,state:0
#: view:mrp.repair.make_invoice:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: mrp_repair
#: field:mrp.repair.line,location_dest_id:0
msgid "Dest. Location"
-msgstr ""
+msgstr "Lokacija isporuke"
#. module: mrp_repair
#: report:repair.order:0
msgid "Operation Line(s)"
-msgstr ""
+msgstr "Stavka(e) operacije"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "History"
-msgstr ""
+msgstr "Povijest"
#. module: mrp_repair
#: field:mrp.repair,location_dest_id:0
msgid "Delivery Location"
-msgstr ""
+msgstr "Lokacija isporuke"
#. module: mrp_repair
#: help:mrp.repair,invoice_method:0
@@ -611,71 +639,73 @@ msgid ""
"selected is different from 'No Invoice', it also allow you to select the "
"pricelist and invoicing address."
msgstr ""
+"Ako odaberete različito od 'Ne fakturirati', možete odabrati cjenik i adresu "
+"računa."
#. module: mrp_repair
#: view:mrp.repair.make_invoice:0
msgid "Create Invoice"
-msgstr ""
+msgstr "Kreiraj račun"
#. module: mrp_repair
#: field:mrp.repair.fee,name:0
#: field:mrp.repair.line,name:0
#: report:repair.order:0
msgid "Description"
-msgstr ""
+msgstr "Opis"
#. module: mrp_repair
#: field:mrp.repair,operations:0
msgid "Operation Lines"
-msgstr ""
+msgstr "Stavke operacije"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "invoiced"
-msgstr ""
+msgstr "fakturirano"
#. module: mrp_repair
#: view:mrp.repair:0
#: field:mrp.repair.fee,product_id:0
#: field:mrp.repair.line,product_id:0
msgid "Product"
-msgstr ""
+msgstr "Proizvod"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Invoice Corrected"
-msgstr ""
+msgstr "Račun korigiran"
#. module: mrp_repair
#: report:repair.order:0
msgid "Price"
-msgstr ""
+msgstr "Cijena"
#. module: mrp_repair
#: field:mrp.repair,deliver_bool:0
msgid "Deliver"
-msgstr ""
+msgstr "Isporuči"
#. module: mrp_repair
#: view:mrp.repair:0
#: field:mrp.repair,internal_notes:0
msgid "Internal Notes"
-msgstr ""
+msgstr "Interne bilješke"
#. module: mrp_repair
#: report:repair.order:0
msgid "Taxes:"
-msgstr ""
+msgstr "Porezi:"
#. module: mrp_repair
#: field:mrp.repair,picking_id:0
msgid "Picking"
-msgstr ""
+msgstr "Skladišnice"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Untaxed amount"
-msgstr ""
+msgstr "Iznos bez poreza"
#. module: mrp_repair
#: code:addons/mrp_repair/wizard/cancel_repair.py:41
@@ -692,75 +722,75 @@ msgstr ""
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Total amount"
-msgstr ""
+msgstr "Ukupni iznos"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "UoM"
-msgstr ""
+msgstr "JM"
#. module: mrp_repair
#: selection:mrp.repair.line,type:0
msgid "Remove"
-msgstr ""
+msgstr "Remove"
#. module: mrp_repair
#: field:mrp.repair.fee,product_uom:0
#: field:mrp.repair.line,product_uom:0
msgid "Product UoM"
-msgstr ""
+msgstr "JM Proizvoda"
#. module: mrp_repair
#: field:mrp.repair,partner_invoice_id:0
msgid "Invoicing Address"
-msgstr ""
+msgstr "Adresa za račun"
#. module: mrp_repair
#: selection:mrp.repair,invoice_method:0
msgid "After Repair"
-msgstr ""
+msgstr "Poslije popravka"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "Invoicing"
-msgstr ""
+msgstr "Fakturiranje"
#. module: mrp_repair
#: field:mrp.repair.line,location_id:0
msgid "Source Location"
-msgstr ""
+msgstr "Izvorna lokacija"
#. module: mrp_repair
#: model:ir.model,name:mrp_repair.model_mrp_repair_cancel
#: view:mrp.repair:0
msgid "Cancel Repair"
-msgstr ""
+msgstr "Otkaži popravak"
#. module: mrp_repair
#: selection:mrp.repair,invoice_method:0
msgid "No Invoice"
-msgstr ""
+msgstr "Nema računa"
#. module: mrp_repair
#: view:mrp.repair:0
msgid "States"
-msgstr ""
+msgstr "Stanja"
#. module: mrp_repair
#: help:mrp.repair,partner_id:0
msgid ""
"This field allow you to choose the parner that will be invoiced and delivered"
-msgstr ""
+msgstr "Odaberite partnera isporuke i računa"
#. module: mrp_repair
#: field:mrp.repair,amount_total:0
msgid "Total"
-msgstr ""
+msgstr "Ukupno"
#. module: mrp_repair
#: selection:mrp.repair,state:0
msgid "Ready to Repair"
-msgstr ""
+msgstr "Spremno za popravak"
#. module: mrp_repair
#: code:addons/mrp_repair/mrp_repair.py:365
diff --git a/addons/mrp_repair/report/order.rml b/addons/mrp_repair/report/order.rml
index b72f3d7a130..ecec220edbb 100644
--- a/addons/mrp_repair/report/order.rml
+++ b/addons/mrp_repair/report/order.rml
@@ -189,21 +189,13 @@
Shipping address :[[ o.partner_id.name ]]
- [[ o.address_id.street ]]
- [[ o.address_id.street2 or removeParentNode('para') ]]
- [[ o.address_id.city or '' ]] [[ o.address_id.zip or '' ]]
- [[ (o.address_id.state_id and o.address_id.state_id.name) or removeParentNode('para') ]]
- [[ o.address_id.country_id and o.address_id.country_id.name or '' ]]
+ [[ o.address_id and display_address(o.address_id) ]] Invoice address :[[ o.partner_id and o.partner_id.property_payment_term.name ]]
- [[ o.partner_invoice_id.street ]]
- [[ o.partner_invoice_id.street2 or removeParentNode('para') ]]
- [[ o.partner_invoice_id.zip or '' ]] [[ o.partner_invoice_id.city or '' ]]
- [[ (o.partner_invoice_id.state_id and o.partner_invoice_id.state_id.name) or removeParentNode('para') ]]
- [[ o.partner_invoice_id.country_id and o.partner_invoice_id.country_id.name or '' ]]
+ [[ o.partner_invoice_id and display_address(o.partner_invoice_id) ]]
- Point of Sale
+ PoS Ordersir.actions.act_windowpos.orderform
-
+ tree,form
+ []
@@ -154,10 +155,10 @@
-
+
-
+
Sale lines
@@ -580,6 +581,19 @@
[('date_order','like',time.strftime('%Y-%m'))]
+
+ product.normal.pos.form.inherit
+ product.product
+ form
+
+
+
+
+
+
+
+
+
product.normal.form.inheritproduct.product
@@ -599,68 +613,24 @@
pos.category.treepos.categorytree
- child_id
+
-
+
- Products by POS-Category
+ PoS Categoriesir.actions.act_windowpos.category
- [('parent_id','=',False)]
- tree
-
- Here is a list of all your products classified by POS category. You can click a category to get the list of all products linked to this category or to a child of this category.
+ form
+ tree,form
+
-
- product.normal.form.inherit
- product.product
- form
-
-