diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index 81d09b30ae9..e01dbc70f07 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,8 @@ module named account_voucher.
'account_invoice_view.xml',
'partner_view.xml',
'data/account_data.xml',
+ 'data/data_financial_report.xml',
+ 'data/data_account_type.xml',
'account_invoice_workflow.xml',
'project/project_view.xml',
'project/project_report.xml',
@@ -121,10 +123,9 @@ module named account_voucher.
'ir_sequence_view.xml',
'company_view.xml',
'board_account_view.xml',
- "wizard/account_report_profit_loss_view.xml",
- "wizard/account_report_balance_sheet_view.xml",
"edi/invoice_action_data.xml",
"account_bank_view.xml",
+ "account_pre_install.yml"
],
'demo_xml': [
'demo/account_demo.xml',
@@ -140,7 +141,6 @@ module named account_voucher.
'test/account_change_currency.yml',
'test/chart_of_account.yml',
'test/account_period_close.yml',
- 'test/account_fiscalyear_close_state.yml',
'test/account_use_model.yml',
'test/account_validate_account_move.yml',
'test/account_fiscalyear_close.yml',
@@ -148,6 +148,7 @@ module named account_voucher.
'test/account_cash_statement.yml',
'test/test_edi_invoice.yml',
'test/account_report.yml',
+ 'test/account_fiscalyear_close_state.yml', #last test, as it will definitively close the demo fiscalyear
],
'installable': True,
'active': False,
diff --git a/addons/account/account.py b/addons/account/account.py
index c8895fa6946..83838f5f545 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -130,8 +130,45 @@ account_payment_term_line()
class account_account_type(osv.osv):
_name = "account.account.type"
_description = "Account Type"
+
+ def _get_current_report_type(self, cr, uid, ids, name, arg, context=None):
+ obj_data = self.pool.get('ir.model.data')
+ obj_financial_report = self.pool.get('account.financial.report')
+ res = {}
+ financial_report_ref = {
+ 'asset': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_assets0')[1], context=context),
+ 'liability': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_liability0')[1], context=context),
+ 'income': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_income0')[1], context=context),
+ 'expense': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_expense0')[1], context=context),
+ }
+ for record in self.browse(cr, uid, ids, context=context):
+ res[record.id] = 'none'
+ for key, financial_report in financial_report_ref.items():
+ list_ids = [x.id for x in financial_report.account_type_ids]
+ if record.id in list_ids:
+ res[record.id] = key
+ return res
+
+ def _save_report_type(self, cr, uid, account_type_id, field_name, field_value, arg, context=None):
+ obj_data = self.pool.get('ir.model.data')
+ obj_financial_report = self.pool.get('account.financial.report')
+ #unlink if it exists somewhere in the financial reports related to BS or PL
+ financial_report_ref = {
+ 'asset': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_assets0')[1], context=context),
+ 'liability': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_liability0')[1], context=context),
+ 'income': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_income0')[1], context=context),
+ 'expense': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_expense0')[1], context=context),
+ }
+ for key, financial_report in financial_report_ref.items():
+ list_ids = [x.id for x in financial_report.account_type_ids]
+ if account_type_id in list_ids:
+ obj_financial_report.write(cr, uid, [financial_report.id], {'account_type_ids': [(3, account_type_id)]})
+ #write it in the good place
+ if field_value != 'none':
+ return obj_financial_report.write(cr, uid, [financial_report_ref[field_value].id], {'account_type_ids': [(4, account_type_id)]})
+
_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.
@@ -139,19 +176,16 @@ class account_account_type(osv.osv):
'Balance' will generally be used for cash accounts.
'Detail' will copy each existing journal item of the previous year, even the reconciled ones.
'Unreconciled' will copy only the journal items that were unreconciled on the first day of the new fiscal year."""),
- 'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
- 'report_type':fields.selection([
- ('none','/'),
- ('income','Profit & Loss (Income Accounts)'),
- ('expense','Profit & Loss (Expense Accounts)'),
- ('asset','Balance Sheet (Asset Accounts)'),
- ('liability','Balance Sheet (Liability Accounts)')
- ],'P&L / BS Category', select=True, readonly=False, help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
+ 'report_type': fields.function(_get_current_report_type, fnct_inv=_save_report_type, type='selection', string='P&L / BS Category',
+ selection= [('none','/'),
+ ('income', _('Profit & Loss (Income account)')),
+ ('expense', _('Profit & Loss (Expense account)')),
+ ('asset', _('Balance Sheet (Asset account)')),
+ ('liability', _('Balance Sheet (Liability account)'))], help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
'note': fields.text('Description'),
}
_defaults = {
'close_method': 'none',
- 'sign': 1,
'report_type': 'none',
}
_order = "code"
@@ -422,6 +456,7 @@ class account_account(osv.osv):
'user_type': fields.many2one('account.account.type', 'Account Type', required=True,
help="Account Type is used for information purpose, to generate "
"country-specific legal reports, and set the rules to close a fiscal year and generate opening entries."),
+ 'financial_report_ids': fields.many2many('account.financial.report', 'account_account_financial_report', 'account_id', 'report_line_id', 'Financial Reports'),
'parent_id': fields.many2one('account.account', 'Parent', ondelete='cascade', domain=[('type','=','view')]),
'child_parent_ids': fields.one2many('account.account','parent_id','Children'),
'child_consol_ids': fields.many2many('account.account', 'account_account_consol_rel', 'child_id', 'parent_id', 'Consolidated Children'),
@@ -771,7 +806,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 +826,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
@@ -859,21 +898,8 @@ class account_fiscalyear(osv.osv):
'state': 'draft',
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
- _order = "date_start"
+ _order = "date_start, id"
- def _check_fiscal_year(self, cr, uid, ids, context=None):
- current_fiscal_yr = self.browse(cr, uid, ids, context=context)[0]
- obj_fiscal_ids = self.search(cr, uid, [('company_id', '=', current_fiscal_yr.company_id.id)], context=context)
- obj_fiscal_ids.remove(ids[0])
- data_fiscal_yr = self.browse(cr, uid, obj_fiscal_ids, context=context)
-
- for old_fy in data_fiscal_yr:
- if old_fy.company_id.id == current_fiscal_yr['company_id'].id:
- # Condition to check if the current fiscal year falls in between any previously defined fiscal year
- if old_fy.date_start <= current_fiscal_yr['date_start'] <= old_fy.date_stop or \
- old_fy.date_start <= current_fiscal_yr['date_stop'] <= old_fy.date_stop:
- return False
- return True
def _check_duration(self, cr, uid, ids, context=None):
obj_fy = self.browse(cr, uid, ids[0], context=context)
@@ -882,8 +908,7 @@ class account_fiscalyear(osv.osv):
return True
_constraints = [
- (_check_duration, 'Error! The start date of the fiscal year must be before his end date.', ['date_start','date_stop']),
- (_check_fiscal_year, 'Error! You can not define overlapping fiscal years for the same company.',['date_start', 'date_stop'])
+ (_check_duration, 'Error! The start date of the fiscal year must be before his end date.', ['date_start','date_stop'])
]
def create_period3(self, cr, uid, ids, context=None):
@@ -894,7 +919,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,
@@ -918,6 +943,10 @@ class account_fiscalyear(osv.osv):
return True
def find(self, cr, uid, dt=None, exception=True, context=None):
+ res = self.finds(cr, uid, dt, exception, context=context)
+ return res and res[0] or False
+
+ def finds(self, cr, uid, dt=None, exception=True, context=None):
if context is None: context = {}
if not dt:
dt = time.strftime('%Y-%m-%d')
@@ -932,8 +961,8 @@ class account_fiscalyear(osv.osv):
if exception:
raise osv.except_osv(_('Error !'), _('No fiscal year defined for this date !\nPlease create one.'))
else:
- return False
- return ids[0]
+ return []
+ return ids
def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80):
if args is None:
@@ -1233,7 +1262,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),
@@ -1696,13 +1725,15 @@ class account_tax_code(osv.osv):
if context.get('state', 'all') == 'all':
move_state = ('draft', 'posted', )
if context.get('fiscalyear_id', False):
- fiscalyear_id = context['fiscalyear_id']
+ fiscalyear_id = [context['fiscalyear_id']]
else:
- fiscalyear_id = self.pool.get('account.fiscalyear').find(cr, uid, exception=False)
+ fiscalyear_id = self.pool.get('account.fiscalyear').finds(cr, uid, exception=False)
where = ''
where_params = ()
if fiscalyear_id:
- pids = map(lambda x: str(x.id), self.pool.get('account.fiscalyear').browse(cr, uid, fiscalyear_id).period_ids)
+ pids = []
+ for fy in fiscalyear_id:
+ pids += map(lambda x: str(x.id), self.pool.get('account.fiscalyear').browse(cr, uid, fy).period_ids)
if pids:
where = ' AND line.period_id IN %s AND move.state IN %s '
where_params = (tuple(pids), move_state)
@@ -2428,6 +2459,7 @@ class account_account_template(osv.osv):
'user_type': fields.many2one('account.account.type', 'Account Type', required=True,
help="These types are defined according to your country. The type contains more information "\
"about the account and its specificities."),
+ 'financial_report_ids': fields.many2many('account.financial.report', 'account_template_financial_report', 'account_template_id', 'report_line_id', 'Financial Reports'),
'reconcile': fields.boolean('Allow Reconciliation', help="Check this option if you want the user to reconcile entries in this account."),
'shortcut': fields.char('Shortcut', size=12),
'note': fields.text('Note'),
@@ -2435,6 +2467,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 = {
@@ -2471,6 +2504,60 @@ 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,
+ 'financial_report_ids': account_template.financial_report_ids and [(6,0,[x.id for x in account_template.financial_report_ids])] or False,
+ '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):
@@ -2548,6 +2635,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 []
@@ -2571,19 +2693,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()
@@ -2661,6 +2793,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
@@ -2677,6 +2864,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):
@@ -2730,6 +2949,7 @@ class account_financial_report(osv.osv):
return res
def _get_balance(self, cr, uid, ids, name, args, context=None):
+ account_obj = self.pool.get('account.account')
res = {}
res_all = {}
for report in self.browse(cr, uid, ids, context=context):
@@ -2740,6 +2960,12 @@ class account_financial_report(osv.osv):
# it's the sum of balance of the linked accounts
for a in report.account_ids:
balance += a.balance
+ elif report.type == 'account_type':
+ # it's the sum of balance of the leaf accounts with such an account type
+ report_types = [x.id for x in report.account_type_ids]
+ account_ids = account_obj.search(cr, uid, [('user_type','in', report_types), ('type','!=','view')], context=context)
+ for a in account_obj.browse(cr, uid, account_ids, context=context):
+ balance += a.balance
elif report.type == 'account_report' and report.account_report_id:
# it's the amount of the linked report
res2 = self._get_balance(cr, uid, [report.account_report_id.id], 'balance', False, context=context)
@@ -2762,7 +2988,6 @@ class account_financial_report(osv.osv):
'parent_id': fields.many2one('account.financial.report', 'Parent'),
'children_ids': fields.one2many('account.financial.report', 'parent_id', 'Account Report'),
'sequence': fields.integer('Sequence'),
- 'note': fields.text('Notes'),
'balance': fields.function(_get_balance, 'Balance'),
'level': fields.function(_get_level, string='Level', store=True, type='integer'),
'type': fields.selection([
@@ -2772,13 +2997,20 @@ class account_financial_report(osv.osv):
('account_report','Report Value'),
],'Type'),
'account_ids': fields.many2many('account.account', 'account_account_financial_report', 'report_line_id', 'account_id', 'Accounts'),
- 'display_detail': fields.boolean('Display details', help='Display every account with its balance instead of the sum.'),
+ 'display_detail': fields.selection([
+ ('no_detail','No detail'),
+ ('detail_flat','Display children flat'),
+ ('detail_with_hierarchy','Display children with hierarchy')
+ ], 'Display details'),
'account_report_id': fields.many2one('account.financial.report', 'Report Value'),
'account_type_ids': fields.many2many('account.account.type', 'account_account_financial_report_type', 'report_id', 'account_type_id', 'Account Types'),
+ 'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
}
_defaults = {
'type': 'sum',
+ 'display_detail': 'detail_flat',
+ 'sign': 1,
}
account_financial_report()
@@ -2811,66 +3043,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()]
@@ -2880,305 +3110,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'),
@@ -3188,61 +3231,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 {'type' : 'ir.actions.act_window_close'}
+
+ 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 acf070a3ad7..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
@@ -108,3 +107,5 @@ class bank(osv.osv):
self.write(cr, uid, [bank.id], {'journal_id': journal_id}, context=context)
return True
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py
index 57472e228ef..53195c345f9 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):
@@ -127,7 +127,7 @@ class account_bank_statement(osv.osv):
_name = "account.bank.statement"
_description = "Bank Statement"
_columns = {
- 'name': fields.char('Name', size=64, required=True, states={'draft': [('readonly', False)]}, readonly=True, help='if you give the Name other then /, its created Accounting Entries Move will be with same name as statement name. This allows the statement entries to have the same references than the statement itself'), # readonly for account_cash_statement
+ 'name': fields.char('Name', size=64, required=True, states={'draft': [('readonly', False)]}, readonly=True, help='If you enter a statement name other than /, its created accounting entries move name will be the statement name appended with /1, /2, /3, etc. This allows statement entries to have a reference to the bank statement they appeared on.'), # readonly for account_cash_statement
'date': fields.date('Date', required=True, states={'confirm': [('readonly', True)]}),
'journal_id': fields.many2one('account.journal', 'Journal', required=True,
readonly=True, states={'draft':[('readonly',False)]}),
diff --git a/addons/account/account_installer.xml b/addons/account/account_installer.xml
index 230078c4e33..430d65e0bf9 100644
--- a/addons/account/account_installer.xml
+++ b/addons/account/account_installer.xml
@@ -25,7 +25,7 @@
-
+
@@ -34,10 +34,6 @@
-
-
-
-
@@ -57,7 +53,7 @@
Accounting5
-
+
diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py
index 27881bf1280..6fcc211bd84 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,11 +257,11 @@ 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'),
- 'residual': fields.function(_amount_residual, digits_compute=dp.get_precision('Account'), string='Residual',
+ 'residual': fields.function(_amount_residual, digits_compute=dp.get_precision('Account'), string='To Pay',
store={
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, ['invoice_line','move_id'], 50),
'account.invoice.tax': (_get_invoice_tax, None, 50),
@@ -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 54a60ee1b57..55d27e2e842 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -120,7 +120,7 @@
-
+
@@ -269,15 +269,13 @@
-
-
-
+
+
+
+
-
-
-
@@ -362,13 +360,13 @@
-
+
-
+
-
-
@@ -432,7 +430,7 @@
tree,form,calendar,graph[('type','=','out_invoice')]
- {'type':'out_invoice', 'journal_type': 'sale'}
+ {'default_type':'out_invoice', 'type':'out_invoice', 'journal_type': 'sale'}With Customer Invoices you can create and manage sales invoices issued to your customers. OpenERP can also generate draft invoices automatically from sales orders or deliveries. You should only confirm them before sending them to your customers.
@@ -460,7 +458,7 @@
tree,form,calendar,graph[('type','=','in_invoice')]
- {'type':'in_invoice', 'journal_type': 'purchase'}
+ {'default_type': 'in_invoice', 'type': 'in_invoice', 'journal_type': 'purchase'}With Supplier Invoices you can enter and manage invoices issued by your suppliers. OpenERP can also generate draft invoices automatically from purchase orders or receipts. This way, you can control the invoice from your supplier according to what you purchased or received.
@@ -473,7 +471,7 @@
tree,form,calendar,graph[('type','=','out_refund')]
- {'type':'out_refund', 'journal_type': 'sale_refund'}
+ {'default_type':'out_refund', 'type':'out_refund', 'journal_type': 'sale_refund'}With Customer Refunds you can manage the credit notes for your customers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form.
@@ -499,7 +497,7 @@
tree,form,calendar,graph[('type','=','in_refund')]
- {'type':'in_refund', 'journal_type': 'purchase_refund'}
+ {'default_type': 'in_refund', 'type': 'in_refund', 'journal_type': 'purchase_refund'}With Supplier Refunds you can manage the credit notes you receive from your suppliers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form.
diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py
index 55e154eed6d..e54024a6dcb 100644
--- a/addons/account/account_move_line.py
+++ b/addons/account/account_move_line.py
@@ -581,14 +581,14 @@ class account_move_line(osv.osv):
lines = self.browse(cr, uid, ids, context=context)
for l in lines:
if l.account_id.type == 'view':
- return False
+ raise osv.except_osv(_('Error :'), _('You can not create move line on view account %s %s') % (l.account_id.code, l.account_id.name))
return True
def _check_no_closed(self, cr, uid, ids, context=None):
lines = self.browse(cr, uid, ids, context=context)
for l in lines:
if l.account_id.type == 'closed':
- return False
+ raise osv.except_osv(_('Error :'), _('You can not create move line on closed account %s %s') % (l.account_id.code, l.account_id.name))
return True
def _check_company_id(self, cr, uid, ids, context=None):
@@ -1249,6 +1249,8 @@ class account_move_line(osv.osv):
if len(period_candidate_ids) != 1:
raise osv.except_osv(_('Encoding error'), _('No period found or period given is ambigous.'))
context['period_id'] = period_candidate_ids[0][0]
+ if not context.get('journal_id', False) and context.get('search_default_journal_id', False):
+ context['journal_id'] = context.get('search_default_journal_id')
self._update_journal_check(cr, uid, context['journal_id'], context['period_id'], context)
move_id = vals.get('move_id', False)
journal = journal_obj.browse(cr, uid, context['journal_id'], context=context)
diff --git a/addons/account/account_pre_install.yml b/addons/account/account_pre_install.yml
new file mode 100644
index 00000000000..13adbe8108f
--- /dev/null
+++ b/addons/account/account_pre_install.yml
@@ -0,0 +1,22 @@
+-
+ I configure automatically if the country is set on the company, mainly for online offers.
+-
+ !python {model: account.installer}: |
+ modules = self.pool.get('ir.module.module')
+ wizards = self.pool.get('ir.actions.todo')
+ wiz = wizards.browse(cr, uid, ref('account.account_configuration_installer_todo'))
+ part = self.pool.get('res.partner').browse(cr, uid, ref('base.main_partner'))
+ # if we know the country and the wizard has not yet been executed, we do it
+ if (part.country.id) and (wiz.state=='open'):
+ mod = 'l10n_'+part.country.code.lower()
+ ids = modules.search(cr, uid, [ ('name','=',mod) ], context=context)
+ if ids:
+ wizards.write(cr, uid, [ref('account.account_configuration_installer_todo')], {
+ 'state': 'done'
+ })
+ wiz_id = self.create(cr, uid, {
+ 'charts': mod
+ })
+ self.execute_simple(cr, uid, [wiz_id])
+ modules.state_update(cr, uid, ids,
+ 'to install', ['uninstalled'], context=context)
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 1d336dda460..9ae59f62456 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -171,8 +171,8 @@
-
-
+
+
@@ -303,6 +303,9 @@
+
+
+
@@ -326,6 +329,7 @@
@@ -786,7 +790,6 @@
-
@@ -1583,7 +1586,12 @@
context="{'search_default_account_id':[active_id], 'search_default_unreconciled':1, 'default_account_id': active_id}"
src_model="account.account"/>
-
+
+
+
@@ -2258,7 +2278,9 @@
-
+
+
+
@@ -2425,10 +2447,13 @@
-
-
-
-
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
@@ -2767,9 +2799,6 @@ action = pool.get('res.config').next(cr, uid, [], context)
-
-
-
diff --git a/addons/account/board_account_view.xml b/addons/account/board_account_view.xml
index a39892c84d8..ffd2811cba7 100644
--- a/addons/account/board_account_view.xml
+++ b/addons/account/board_account_view.xml
@@ -30,6 +30,7 @@
formgraph,tree[('type','=','liquidity')]
+ {'default_type': 'liquidity'}
@@ -40,12 +41,11 @@
diff --git a/addons/account/configurable_account_chart.xml b/addons/account/configurable_account_chart.xml
index 0ac7a51405d..fa0aa3459dd 100644
--- a/addons/account/configurable_account_chart.xml
+++ b/addons/account/configurable_account_chart.xml
@@ -1,26 +1,6 @@
-
- Receivable
- receivable
- income
- unreconciled
-
-
-
- Payable
- payable
- expense
- unreconciled
-
-
-
- View
- view
- none
-
-
Income Viewview
@@ -41,78 +21,32 @@
liabilityliability
-
-
- Income
- income
- income
- none
-
-
-
- Expense
- expense
- expense
- none
-
-
Taxtax
- expenseunreconciled
+ expense
-
-
- Cash
- cash
- asset
- balance
-
-
-
- Liability
- liability
- liability
- balance
-
-
-
- Asset
- asset
- asset
- balance
-
-
Equityequity
+ balanceliability
- balance
-
-
- Bank
- bank
- asset
- balance
-
-
+ Checkcheck
- assetbalance
+ asset
-
-
0Configurable Account Chartview
-
+
@@ -122,7 +56,7 @@
Balance Sheetview
-
+
@@ -162,7 +96,7 @@
Purchased Stocksother
-
+
@@ -171,7 +105,7 @@
receivable
-
+
@@ -179,7 +113,7 @@
Tax Paidother
-
+
@@ -195,7 +129,7 @@
Opening Income Accountother
-
+
@@ -212,7 +146,7 @@
payable
-
+
@@ -220,7 +154,7 @@
Tax Receivedother
-
+
@@ -229,7 +163,7 @@
other
-
+
@@ -237,7 +171,7 @@
Opening Expense Accountother
-
+
@@ -247,7 +181,7 @@
Profit and Lossview
-
+
@@ -263,7 +197,7 @@
Product Salesother
-
+
@@ -279,7 +213,7 @@
Cost of Goods Soldother
-
+
@@ -295,7 +229,7 @@
Expensesother
-
+
@@ -303,7 +237,7 @@
Salary Expensesother
-
+
diff --git a/addons/account/data/data_account_type.xml b/addons/account/data/data_account_type.xml
new file mode 100644
index 00000000000..590357ef080
--- /dev/null
+++ b/addons/account/data/data_account_type.xml
@@ -0,0 +1,55 @@
+
+
+
+
+ View
+ view
+ none
+
+
+ Receivable
+ receivable
+ unreconciled
+
+
+ Payable
+ payable
+ unreconciled
+
+
+ Bank
+ bank
+ balance
+
+
+ Cash
+ cash
+ balance
+
+
+ Asset
+ asset
+ balance
+ asset
+
+
+ Liability
+ liability
+ balance
+ liability
+
+
+ Income
+ income
+ none
+ income
+
+
+ Expense
+ expense
+ none
+ expense
+
+
+
+
diff --git a/addons/account/data/data_financial_report.xml b/addons/account/data/data_financial_report.xml
new file mode 100644
index 00000000000..18624f94749
--- /dev/null
+++ b/addons/account/data/data_financial_report.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+ Balance Sheet
+ sum
+
+
+ Assets
+
+ detail_with_hierarchy
+ account_type
+
+
+ Liability
+
+ detail_with_hierarchy
+ account_type
+
+
+
+ Profit and Loss
+ sum
+
+
+ Income
+
+ detail_with_hierarchy
+ account_type
+
+
+ Expense
+
+ detail_with_hierarchy
+ account_type
+
+
+
+
+
diff --git a/addons/account/demo/account_demo.xml b/addons/account/demo/account_demo.xml
index 566185c70c3..0bbfa71af62 100644
--- a/addons/account/demo/account_demo.xml
+++ b/addons/account/demo/account_demo.xml
@@ -7,7 +7,7 @@
-->
-
+
@@ -20,7 +20,7 @@
-
+
@@ -29,7 +29,7 @@
-
+
@@ -38,7 +38,7 @@
-
+
@@ -47,7 +47,7 @@
-
+
@@ -56,7 +56,7 @@
-
+
@@ -65,7 +65,7 @@
-
+
@@ -74,7 +74,7 @@
-
+
@@ -83,7 +83,7 @@
-
+
@@ -92,7 +92,7 @@
-
+
@@ -101,7 +101,7 @@
-
+
@@ -110,7 +110,7 @@
-
+
@@ -119,7 +119,7 @@
-
+
@@ -129,6 +129,6 @@
-
+
diff --git a/addons/account/demo/account_minimal.xml b/addons/account/demo/account_minimal.xml
index 50b597c8e49..baa94450f02 100644
--- a/addons/account/demo/account_minimal.xml
+++ b/addons/account/demo/account_minimal.xml
@@ -5,58 +5,11 @@
Account Type
-->
-
- View
- view
- none
-
-
- Asset
- asset
- asset
- balance
-
-
- Receivable
- receivable
- asset
- unreconciled
-
-
- Liability
- liability
- liability
- balance
-
-
- Payable
- payable
- liability
- unreconciled
-
-
- Income
- income
- income
- none
-
-
- Expense
- expense
- expense
- none
- Equityequity
+ balanceliability
- balance
-
-
- Cash
- cash
- asset
- balance
@@ -78,14 +31,14 @@
Balance Sheet - (test)view
-
+ Assets - (test)X10view
-
+
@@ -95,7 +48,7 @@
Fixed Assets - (test)view
-
+
@@ -103,7 +56,7 @@
Fixed Asset Account - (test)other
-
+
@@ -111,7 +64,7 @@
Net Current Assets - (test)view
-
+
@@ -119,7 +72,7 @@
Current Assets - (test)view
-
+
@@ -127,7 +80,7 @@
Purchased Stocks - (test)other
-
+
@@ -136,7 +89,7 @@
receivable
-
+
@@ -144,7 +97,7 @@
Output VAT - (test)other
-
+
@@ -152,7 +105,7 @@
Bank Current Account - (test)liquidity
-
+
@@ -160,7 +113,7 @@
Cash - (test)liquidity
-
+
@@ -168,14 +121,14 @@
Opening Income - (test)other
-
+ Liabilities - (test)X11view
-
+
@@ -185,7 +138,7 @@
Current Liabilities - (test)view
-
+
@@ -194,7 +147,7 @@
payable
-
+
@@ -202,7 +155,7 @@
Input VAT - (test)other
-
+
@@ -210,7 +163,7 @@
Reserve and Profit/Loss - (test)other
-
+
@@ -218,7 +171,7 @@
Opening Expense - (test)other
-
+
@@ -228,14 +181,14 @@
Profit and Loss - (test)view
-
+ Income - (test)X20view
-
+
@@ -244,7 +197,7 @@
Foreign Exchange Gain - (test)X201other
-
+
@@ -254,7 +207,7 @@
Revenue - (test)view
-
+
@@ -262,14 +215,14 @@
Product Sales - (test)other
-
+ Expense - (test)X21view
-
+
@@ -280,7 +233,7 @@
Cost of Sales - (test)view
-
+
@@ -288,7 +241,7 @@
Cost of Goods Sold - (test)other
-
+
@@ -296,7 +249,7 @@
Overheads - (test)view
-
+
@@ -304,14 +257,14 @@
Expenses - (test)other
-
+ Foreign Exchange Loss - (test)X2111other
-
+
@@ -321,7 +274,7 @@
Salary Expenses - (test)other
-
+
diff --git a/addons/account/edi/__init__.py b/addons/account/edi/__init__.py
index d86e8a91bf3..a5bf0bbfa2d 100644
--- a/addons/account/edi/__init__.py
+++ b/addons/account/edi/__init__.py
@@ -20,3 +20,5 @@
##############################################################################
import invoice
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/edi/invoice.py b/addons/account/edi/invoice.py
index 061bf8ee97d..d36e9163ba9 100644
--- a/addons/account/edi/invoice.py
+++ b/addons/account/edi/invoice.py
@@ -271,3 +271,5 @@ class account_invoice_tax(osv.osv, EDIMixin):
_inherit = "account.invoice.tax"
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/i18n/ar.po b/addons/account/i18n/ar.po
index 3b5edf1e87d..bbd4189dc8a 100644
--- a/addons/account/i18n/ar.po
+++ b/addons/account/i18n/ar.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: 2011-11-15 03:49+0000\n"
+"PO-Revision-Date: 2011-12-08 16:20+0000\n"
"Last-Translator: kifcaliph \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-16 05:21+0000\n"
-"X-Generator: Launchpad (build 14291)\n"
+"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
@@ -24,7 +24,7 @@ msgstr "نظام الدفع"
#. module: account
#: view:account.journal:0
msgid "Other Configuration"
-msgstr "تعديلات أخرى"
+msgstr "إعدادات أخرى"
#. module: account
#: code:addons/account/wizard/account_open_closed_fiscalyear.py:40
@@ -152,7 +152,7 @@ msgstr "الاصل"
#: view:account.move.line.reconcile:0
#: view:account.move.line.reconcile.writeoff:0
msgid "Reconcile"
-msgstr "توافق"
+msgstr "تسوية"
#. module: account
#: field:account.bank.statement.line,ref:0
@@ -193,7 +193,7 @@ msgstr "مصدر الحساب"
#. module: account
#: model:ir.actions.act_window,name:account.act_acc_analytic_acc_5_report_hr_timesheet_invoice_journal
msgid "All Analytic Entries"
-msgstr "كل السندات التحليلية"
+msgstr "كل القيود التحليلية"
#. module: account
#: model:ir.actions.act_window,name:account.action_view_created_invoice_dashboard
@@ -209,7 +209,7 @@ msgstr "سالب"
#: code:addons/account/wizard/account_move_journal.py:95
#, python-format
msgid "Journal: %s"
-msgstr "سجل : %s"
+msgstr "يومية: %s"
#. module: account
#: help:account.analytic.journal,type:0
@@ -230,7 +230,7 @@ msgstr "قوالب الضريبة"
#. module: account
#: model:ir.model,name:account.model_account_tax
msgid "account.tax"
-msgstr "حساب.ضريبة"
+msgstr "account.tax"
#. module: account
#: code:addons/account/account.py:901
@@ -607,6 +607,8 @@ msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disable"
msgstr ""
+"إذا قمت إلغاء تسوية العمليات، عليك أيضاً التحقق من كل الإجراءات المتعلقة لكل "
+"هذه المعاملات لأنهم لن يتم إيقافها"
#. module: account
#: view:analytic.entries.report:0
@@ -631,12 +633,12 @@ msgstr "سجل مركزي"
#. module: account
#: sql_constraint:account.sequence.fiscalyear:0
msgid "Main Sequence must be different from current !"
-msgstr ""
+msgstr "المسلسل الرئيسي لابد أن يختلف من الحالي !"
#. module: account
#: field:account.invoice.tax,tax_amount:0
msgid "Tax Code Amount"
-msgstr ""
+msgstr "مبلغ رمز الضريبة"
#. module: account
#: code:addons/account/account.py:2779
@@ -648,7 +650,7 @@ msgstr ""
#. module: account
#: help:account.bank.statement,balance_end_real:0
msgid "closing balance entered by the cashbox verifier"
-msgstr ""
+msgstr "رصيد الإغلاق من محقق النقدية"
#. module: account
#: view:account.period:0
@@ -659,7 +661,7 @@ msgstr "اقفال الفترة"
#. module: account
#: model:ir.model,name:account.model_account_common_partner_report
msgid "Account Common Partner Report"
-msgstr ""
+msgstr "تقرير الحساب المشترك للشريك"
#. module: account
#: field:account.fiscalyear.close,period_id:0
@@ -688,7 +690,7 @@ msgstr "الشركة يجب ان تكون واحدة لجميع المدخلات
#: model:ir.actions.act_window,name:account.action_aged_receivable
#, python-format
msgid "Receivable Accounts"
-msgstr "حسابات القبض"
+msgstr "حسابات مدينة"
#. module: account
#: model:ir.model,name:account.model_account_report_general_ledger
@@ -756,7 +758,7 @@ msgstr "نوع"
#. module: account
#: model:ir.model,name:account.model_account_subscription_line
msgid "Account Subscription Line"
-msgstr ""
+msgstr "خط إشتراك الحساب"
#. module: account
#: help:account.invoice,reference:0
@@ -818,6 +820,8 @@ msgid ""
"Can not %s invoice which is already reconciled, invoice should be "
"unreconciled first. You can only Refund this invoice"
msgstr ""
+"لا يمكن لفاتورة %s حيث تمت تسويتها، يجب إلغاء التسوية أولاً. يمكنك رد "
+"الفاتورة فقط."
#. module: account
#: model:ir.actions.act_window,name:account.action_subscription_form_new
@@ -840,7 +844,7 @@ msgstr "الشريك التالي للموازنة"
msgid ""
"You can not do this modification on a confirmed entry ! Please note that you "
"can just change some non important fields !"
-msgstr ""
+msgstr "لا يمكنك التعديلات لقيد مؤكد ! يمكنك تحرير بعض الحقول غير المهمة فقط"
#. module: account
#: view:account.invoice.report:0
@@ -904,7 +908,7 @@ msgstr "مرشحات مفصلة..."
#. module: account
#: model:ir.ui.menu,name:account.menu_account_central_journal
msgid "Centralizing Journal"
-msgstr "مركزية السجل"
+msgstr "مركزية اليومية"
#. module: account
#: selection:account.journal,type:0
@@ -937,7 +941,7 @@ msgstr "مشتريات"
#. module: account
#: field:account.model,lines_id:0
msgid "Model Entries"
-msgstr ""
+msgstr "نموذج للقيود"
#. module: account
#: field:account.account,code:0
@@ -985,7 +989,7 @@ msgstr "اسم الحساب"
#: field:account.chart.template,property_reserve_and_surplus_account:0
#: field:res.company,property_reserve_and_surplus_account:0
msgid "Reserve and Profit/Loss Account"
-msgstr ""
+msgstr "حساب الإحتياطي و الربح و الخسارة"
#. module: account
#: field:report.account.receivable,name:0
@@ -1020,7 +1024,7 @@ msgstr ""
#. module: account
#: view:account.tax:0
msgid "Applicability Options"
-msgstr ""
+msgstr "خيارات التطابق"
#. module: account
#: report:account.partner.balance:0
@@ -1080,7 +1084,7 @@ msgstr ""
#. module: account
#: selection:account.move.line,centralisation:0
msgid "Credit Centralisation"
-msgstr ""
+msgstr "مركزية الدين"
#. module: account
#: model:ir.actions.act_window,help:account.action_invoice_tree2
@@ -1112,12 +1116,12 @@ msgstr "رمز الضرائب"
#. module: account
#: field:account.account,currency_mode:0
msgid "Outgoing Currencies Rate"
-msgstr ""
+msgstr "معدل العملات الصادرة"
#. module: account
#: help:account.move.line,move_id:0
msgid "The move of this entry line."
-msgstr ""
+msgstr "الحركة لخط هذا القيد"
#. module: account
#: field:account.move.line.reconcile,trans_nbr:0
@@ -1143,7 +1147,7 @@ msgstr "لا يمكنك تعديل/مسح يومية بقيود لهذه الف
#: help:account.invoice,origin:0
#: help:account.invoice.line,origin:0
msgid "Reference of the document that produced this invoice."
-msgstr ""
+msgstr "مرجع المستند لهذه الفاتورة"
#. module: account
#: view:account.analytic.line:0
@@ -1253,7 +1257,7 @@ msgstr "رصيد أول المدة"
#. module: account
#: view:account.invoice:0
msgid "Reset to Draft"
-msgstr ""
+msgstr "إعادة التعيين لمسودة"
#. module: account
#: view:wizard.multi.charts.accounts:0
@@ -1335,7 +1339,7 @@ msgstr "بحث الضرائب"
#. module: account
#: model:ir.model,name:account.model_account_analytic_cost_ledger
msgid "Account Analytic Cost Ledger"
-msgstr ""
+msgstr "حساب تحليل تكاليف الأستاذ"
#. module: account
#: view:account.model:0
@@ -1429,7 +1433,7 @@ msgstr "المحاسبة الإنجليزية"
#: selection:account.fiscalyear,state:0
#: selection:account.period,state:0
msgid "Closed"
-msgstr ""
+msgstr "مغلق"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_recurrent_entries
@@ -1485,7 +1489,7 @@ msgstr "ذهاب للشريك التالي"
#. module: account
#: view:account.bank.statement:0
msgid "Search Bank Statements"
-msgstr "بحث كشوف حسابات المصرف"
+msgstr "بحث كشوف حساب المصرف"
#. module: account
#: sql_constraint:account.model.line:0
@@ -1498,7 +1502,7 @@ msgstr ""
#: view:account.chart.template:0
#: field:account.chart.template,property_account_payable:0
msgid "Payable Account"
-msgstr "حساب الدائن"
+msgstr "حساب الدائنون"
#. module: account
#: field:account.tax,account_paid_id:0
@@ -1510,7 +1514,7 @@ msgstr ""
#: view:account.bank.statement:0
#: field:account.bank.statement,line_ids:0
msgid "Statement lines"
-msgstr ""
+msgstr "سطور القائمة"
#. module: account
#: model:ir.actions.act_window,help:account.action_bank_statement_tree
@@ -1554,7 +1558,7 @@ msgstr "فاتورة"
#: model:process.node,note:account.process_node_analytic0
#: model:process.node,note:account.process_node_analyticcost0
msgid "Analytic costs to invoice"
-msgstr "تحليل التكاليف للفاتورة"
+msgstr "تكاليف تحليلية للفاتورة"
#. module: account
#: view:ir.sequence:0
@@ -1564,7 +1568,7 @@ msgstr "مسلسل السنة المالية"
#. module: account
#: field:wizard.multi.charts.accounts,seq_journal:0
msgid "Separated Journal Sequences"
-msgstr ""
+msgstr "مسلسلات اليومية منفصلة"
#. module: account
#: field:account.bank.statement,user_id:0
@@ -1597,28 +1601,28 @@ msgstr "الفواتير"
#. module: account
#: field:account.chart.template,tax_code_root_id:0
msgid "Root Tax Code"
-msgstr ""
+msgstr "رمز الضريبة الرئيسي"
#. module: account
#: field:account.partner.ledger,initial_balance:0
#: field:account.report.general.ledger,initial_balance:0
msgid "Include initial balances"
-msgstr ""
+msgstr "ضم الأرصدة المبدئية"
#. module: account
#: field:account.tax.code,sum:0
msgid "Year Sum"
-msgstr ""
+msgstr "جمع السنة"
#. module: account
#: model:ir.actions.report.xml,name:account.report_account_voucher_new
msgid "Print Voucher"
-msgstr ""
+msgstr "طباعة الوثيقة"
#. module: account
#: view:account.change.currency:0
msgid "This wizard will change the currency of the invoice"
-msgstr ""
+msgstr "هذا المعالج لتغيير العملة للفاتورة"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_chart
@@ -1631,13 +1635,13 @@ msgstr ""
#. module: account
#: constraint:account.fiscalyear:0
msgid "Error! You cannot define overlapping fiscal years"
-msgstr ""
+msgstr "خطأ! لا يمكنك تعريف سنوات مالية متداخلة"
#. module: account
#: code:addons/account/account_move_line.py:808
#, python-format
msgid "The account is not defined to be reconciled !"
-msgstr ""
+msgstr "لم يعرف الحساب لتسويته !"
#. module: account
#: field:account.cashbox.line,pieces:0
@@ -1649,17 +1653,17 @@ msgstr "قيم"
msgid ""
"If the active field is set to False, it will allow you to hide the journal "
"period without removing it."
-msgstr ""
+msgstr "إذا كان الحقل"
#. module: account
#: view:res.partner:0
msgid "Supplier Debit"
-msgstr ""
+msgstr "مورد مدين"
#. module: account
#: help:account.model.line,quantity:0
msgid "The optional quantity on entries"
-msgstr ""
+msgstr "الكمية الإختيارية علي القيود"
#. module: account
#: model:ir.actions.act_window,name:account.act_account_partner_account_move_all
@@ -1675,7 +1679,7 @@ msgstr "يجب إعطاء حساب لقيود الإعدام !"
#. module: account
#: model:ir.model,name:account.model_account_common_journal_report
msgid "Account Common Journal Report"
-msgstr ""
+msgstr "تقرير حساب اليومية المشترك"
#. module: account
#: selection:account.partner.balance,display_partner:0
@@ -1685,7 +1689,7 @@ msgstr "كل الشركاء"
#. module: account
#: report:account.move.voucher:0
msgid "Ref. :"
-msgstr ""
+msgstr "مرجع:"
#. module: account
#: view:account.analytic.chart:0
@@ -1706,7 +1710,7 @@ msgstr "مرجع العميل"
#: code:addons/account/account_cash_statement.py:328
#, python-format
msgid "User %s does not have rights to access %s journal !"
-msgstr ""
+msgstr "المستخدم %s ليس لديه صلاحيات الكتابة و التحرير ليومية %s!"
#. module: account
#: help:account.period,special:0
@@ -1716,18 +1720,18 @@ msgstr "هذه الفترات يمكن أن تتداخل."
#. module: account
#: model:process.node,name:account.process_node_draftstatement0
msgid "Draft statement"
-msgstr ""
+msgstr "قائمة مؤقتة"
#. module: account
#: view:account.tax:0
msgid "Tax Declaration: Credit Notes"
-msgstr ""
+msgstr "الإعلان الضريبي: الأوراق الدائنة"
#. module: account
#: code:addons/account/account.py:499
#, python-format
msgid "You cannot deactivate an account that contains account moves."
-msgstr ""
+msgstr "لا يمكنك إلغاء نشاط حساب إذا كان يحتوي علي حركات حساب."
#. module: account
#: field:account.move.line.reconcile,credit:0
@@ -1756,7 +1760,7 @@ msgstr "حساب الإحتياطي و الأرباح و الخسائر"
#. module: account
#: sql_constraint:account.move.line:0
msgid "Wrong credit or debit value in accounting entry !"
-msgstr ""
+msgstr "قيمة دائنة أو مدينة خاطئة في القيد المحاسبي !"
#. module: account
#: view:account.invoice.report:0
@@ -1794,7 +1798,7 @@ msgstr "قيد يومية"
#. module: account
#: view:account.tax:0
msgid "Tax Declaration: Invoices"
-msgstr ""
+msgstr "الإعلان الضريبي: الفواتير"
#. module: account
#: field:account.cashbox.line,subtotal:0
@@ -1852,7 +1856,7 @@ msgstr "حساب الإحتياطي و الأرباح و الخسائر"
#. module: account
#: help:account.bank.statement,balance_end:0
msgid "Closing balance based on Starting Balance and Cash Transactions"
-msgstr ""
+msgstr "رصيد الإغلاق بناءاً علي رصيد أول المدة و معاملات النقدية"
#. module: account
#: model:process.node,note:account.process_node_reconciliation0
@@ -1937,7 +1941,7 @@ msgstr "إلغاء تسوية القيود"
#. module: account
#: field:account.move.reconcile,line_partial_ids:0
msgid "Partial Entry lines"
-msgstr ""
+msgstr "سطور لقيود جزئية"
#. module: account
#: view:account.fiscalyear:0
@@ -2287,7 +2291,7 @@ msgstr "تمركز المدين"
#: view:account.invoice.confirm:0
#: model:ir.actions.act_window,name:account.action_account_invoice_confirm
msgid "Confirm Draft Invoices"
-msgstr ""
+msgstr "تأكيد الفواتير المسودة"
#. module: account
#: field:account.entries.report,day:0
@@ -2481,7 +2485,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_bank_statement_tree
#: model:ir.ui.menu,name:account.menu_bank_statement_tree
msgid "Bank Statements"
-msgstr "كشوف حسابات البنك"
+msgstr "كشوف حساب البنك"
#. module: account
#: selection:account.tax.template,applicable_type:0
@@ -2571,7 +2575,7 @@ msgstr ""
#: code:addons/account/wizard/account_use_model.py:81
#, python-format
msgid "You have to define an analytic journal on the '%s' journal!"
-msgstr ""
+msgstr "عليك بتعريف يومية تحليلية في يومية '%s' !"
#. module: account
#: view:account.invoice.tax:0
@@ -2618,7 +2622,7 @@ msgstr ""
#. module: account
#: report:account.move.voucher:0
msgid "Number:"
-msgstr ""
+msgstr "رقم:"
#. module: account
#: selection:account.print.journal,sort_selection:0
@@ -2672,7 +2676,7 @@ msgstr ""
#. module: account
#: field:account.invoice.tax,base_amount:0
msgid "Base Code Amount"
-msgstr ""
+msgstr "مبلغ الرمز الرئيسي"
#. module: account
#: field:wizard.multi.charts.accounts,sale_tax:0
@@ -2756,7 +2760,7 @@ msgstr ""
#. module: account
#: help:account.journal,user_id:0
msgid "The user responsible for this journal"
-msgstr ""
+msgstr "الشخص المسؤول لهذه اليومية"
#. module: account
#: view:account.period:0
@@ -2801,12 +2805,12 @@ msgstr ""
#. module: account
#: help:wizard.multi.charts.accounts,code_digits:0
msgid "No. of Digits to use for account code"
-msgstr ""
+msgstr "أعداد الوحدة لرمز الحساب"
#. module: account
#: field:account.payment.term.line,name:0
msgid "Line Name"
-msgstr ""
+msgstr "اسم الخط"
#. module: account
#: view:account.fiscalyear:0
@@ -2863,7 +2867,7 @@ msgstr ""
#. module: account
#: field:account.move.line,analytic_lines:0
msgid "Analytic lines"
-msgstr ""
+msgstr "سطور تحليلية"
#. module: account
#: model:process.node,name:account.process_node_electronicfile0
@@ -2873,12 +2877,12 @@ msgstr "ملف إالكتروني"
#. module: account
#: view:res.partner:0
msgid "Customer Credit"
-msgstr ""
+msgstr "دين العميل"
#. module: account
#: model:ir.model,name:account.model_account_tax_code_template
msgid "Tax Code Template"
-msgstr ""
+msgstr "قالب رمز الضريبة"
#. module: account
#: view:account.subscription:0
@@ -2898,7 +2902,7 @@ msgstr ""
#. module: account
#: view:account.tax.template:0
msgid "Tax Declaration"
-msgstr ""
+msgstr "الإعلان الضريبي"
#. module: account
#: help:account.account,currency_id:0
@@ -2928,7 +2932,7 @@ msgstr "إنشاء شجرة حسابات من قالب"
#. module: account
#: model:ir.model,name:account.model_account_unreconcile_reconcile
msgid "Account Unreconcile Reconcile"
-msgstr ""
+msgstr "حساب التسوية / إلغاءها"
#. module: account
#: help:account.account.type,close_method:0
@@ -3000,7 +3004,7 @@ msgstr "الشركاء الباقيين"
#: view:account.subscription:0
#: field:account.subscription,lines_id:0
msgid "Subscription Lines"
-msgstr ""
+msgstr "خطوط الإشتراك"
#. module: account
#: selection:account.analytic.journal,type:0
@@ -3019,7 +3023,7 @@ msgstr "شراء"
#: model:ir.actions.act_window,name:account.action_account_installer
#: view:wizard.multi.charts.accounts:0
msgid "Accounting Application Configuration"
-msgstr ""
+msgstr "إعداد برنامج المحاسبة"
#. module: account
#: model:ir.actions.act_window,name:account.open_board_account
@@ -3065,7 +3069,7 @@ msgstr ""
#. module: account
#: report:account.move.voucher:0
msgid "Journal:"
-msgstr ""
+msgstr "يومية:"
#. module: account
#: view:account.bank.statement:0
@@ -3117,7 +3121,7 @@ msgstr "سنة"
#. module: account
#: report:account.move.voucher:0
msgid "Authorised Signatory"
-msgstr ""
+msgstr "إمضاء المسؤول"
#. module: account
#: view:validate.account.move.lines:0
@@ -3147,7 +3151,7 @@ msgstr "تحويلات"
#. module: account
#: view:account.payment.term.line:0
msgid " value amount: n.a"
-msgstr ""
+msgstr " قيمة المبلغ: غير متاحة"
#. module: account
#: view:account.chart:0
@@ -3236,7 +3240,7 @@ msgstr "إنشاء حساب"
#. module: account
#: model:ir.model,name:account.model_report_account_type_sales
msgid "Report of the Sales by Account Type"
-msgstr ""
+msgstr "تقرير المبيعات حسب نوع الحساب"
#. module: account
#: selection:account.account.type,close_method:0
@@ -3274,7 +3278,7 @@ msgstr "شجرة الحسابات"
#. module: account
#: view:account.tax.chart:0
msgid "(If you do not select period it will take all open periods)"
-msgstr ""
+msgstr "( إذا لم تختار فترة فسيتم أخذ كل الفترات المفتوحة )"
#. module: account
#: field:account.journal,centralisation:0
@@ -3441,7 +3445,7 @@ msgstr "الكمية"
#. module: account
#: field:account.invoice.report,address_contact_id:0
msgid "Contact Address Name"
-msgstr ""
+msgstr "اسم عنوان جهة الإتصال"
#. module: account
#: field:account.move.line,blocked:0
@@ -3451,7 +3455,7 @@ msgstr "تقاضي"
#. module: account
#: view:account.analytic.line:0
msgid "Search Analytic Lines"
-msgstr ""
+msgstr "بحث الخطوط التحليلية"
#. module: account
#: field:res.partner,property_account_payable:0
@@ -3548,7 +3552,7 @@ msgstr "اسم"
#. module: account
#: model:ir.model,name:account.model_account_aged_trial_balance
msgid "Account Aged Trial balance Report"
-msgstr ""
+msgstr "ميزان المراجعة للحسابات المعمرة"
#. module: account
#: field:account.move.line,date:0
@@ -3990,7 +3994,7 @@ msgstr "إحصائيات الفواتير"
#. module: account
#: model:process.transition,note:account.process_transition_paymentorderreconcilation0
msgid "Bank statements are entered in the system."
-msgstr ""
+msgstr "كشوف حسابات البنك تم إدخالها في النظام."
#. module: account
#: code:addons/account/wizard/account_reconcile.py:133
@@ -4034,7 +4038,7 @@ msgstr "طباعة الفاتورة"
#. module: account
#: view:account.tax.template:0
msgid "Credit Notes"
-msgstr ""
+msgstr "أوراق دائنة"
#. module: account
#: code:addons/account/account.py:2067
@@ -4136,7 +4140,7 @@ msgstr ""
#. module: account
#: help:account.partner.ledger,reconcil:0
msgid "Consider reconciled entries"
-msgstr ""
+msgstr "نظر القيود المسواه"
#. module: account
#: model:ir.actions.act_window,name:account.action_validate_account_move_line
@@ -4162,7 +4166,7 @@ msgstr ""
#: constraint:account.account:0
#: constraint:account.tax.code:0
msgid "Error ! You can not create recursive accounts."
-msgstr ""
+msgstr "خطأ ! لا يمكن إنشاء حسابات تكرارية."
#. module: account
#: constraint:account.account:0
@@ -4213,7 +4217,7 @@ msgstr ""
#: code:addons/account/invoice.py:73
#, python-format
msgid "You must define an analytic journal of type '%s' !"
-msgstr ""
+msgstr "عليك بتعريف يومية تحليلية في يومية '%s' !"
#. module: account
#: code:addons/account/account.py:1397
@@ -4245,7 +4249,7 @@ msgstr ""
#. module: account
#: report:account.account.balance.landscape:0
msgid "Account Balance -"
-msgstr ""
+msgstr "رصيد الحساب -"
#. module: account
#: field:account.automatic.reconcile,date1:0
@@ -4344,7 +4348,7 @@ msgstr ""
#. module: account
#: model:process.transition,note:account.process_transition_suppliercustomerinvoice0
msgid "Draft invoices are validated. "
-msgstr ""
+msgstr "تم التحقق للفواتير المؤقتة. "
#. module: account
#: view:account.bank.statement:0
@@ -4385,7 +4389,7 @@ msgstr "عناصر اليومية"
#. module: account
#: selection:account.account.type,report_type:0
msgid "Balance Sheet (Asset Accounts)"
-msgstr ""
+msgstr "الميزانية العمومية (حسابات الأصول)"
#. module: account
#: report:account.tax.code.entries:0
@@ -4416,7 +4420,7 @@ msgstr ""
#: code:addons/account/wizard/account_report_common.py:126
#, python-format
msgid "Error"
-msgstr ""
+msgstr "خطأ"
#. module: account
#: field:account.analytic.Journal.report,date2:0
@@ -4510,7 +4514,7 @@ msgstr ""
#: code:addons/account/account.py:940
#, python-format
msgid "Start period should be smaller then End period"
-msgstr ""
+msgstr "بداية الفترة يجب أن تكون أقل من نهاية الفترة"
#. module: account
#: selection:account.automatic.reconcile,power:0
@@ -4629,7 +4633,7 @@ msgstr ""
#: code:addons/account/account.py:1167
#, python-format
msgid "Integrity Error !"
-msgstr ""
+msgstr "خطأ بالسلامة !"
#. module: account
#: field:account.tax.template,description:0
@@ -4815,18 +4819,18 @@ msgstr ""
#. module: account
#: view:account.move.line:0
msgid "Debit/Credit"
-msgstr ""
+msgstr "مدين / دائن"
#. module: account
#: view:report.hr.timesheet.invoice.journal:0
msgid "Analytic Entries Stats"
-msgstr ""
+msgstr "إحصائيات القيود التحليلية"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_tax_code_template_form
#: model:ir.ui.menu,name:account.menu_action_account_tax_code_template_form
msgid "Tax Code Templates"
-msgstr ""
+msgstr "قوالب رمز الضريبة"
#. module: account
#: model:ir.model,name:account.model_account_installer
@@ -4939,7 +4943,7 @@ msgstr ""
#: code:addons/account/wizard/account_move_journal.py:63
#, python-format
msgid "Configuration Error !"
-msgstr ""
+msgstr "خطأ في الإعدادات!"
#. module: account
#: help:account.partner.reconcile.process,to_reconcile:0
@@ -4952,12 +4956,12 @@ msgstr ""
#. module: account
#: view:account.subscription.line:0
msgid "Subscription lines"
-msgstr ""
+msgstr "خطوط الإشتراك"
#. module: account
#: field:account.entries.report,quantity:0
msgid "Products Quantity"
-msgstr ""
+msgstr "كمية المنتجات"
#. module: account
#: view:account.entries.report:0
@@ -4966,14 +4970,14 @@ msgstr ""
#: selection:account.move,state:0
#: view:account.move.line:0
msgid "Unposted"
-msgstr ""
+msgstr "غير مرحله"
#. module: account
#: view:account.change.currency:0
#: model:ir.actions.act_window,name:account.action_account_change_currency
#: model:ir.model,name:account.model_account_change_currency
msgid "Change Currency"
-msgstr ""
+msgstr "تغيير العملة"
#. module: account
#: model:process.node,note:account.process_node_accountingentries0
@@ -4984,7 +4988,7 @@ msgstr ""
#. module: account
#: view:account.invoice:0
msgid "Payment Date"
-msgstr ""
+msgstr "تاريخ الدفع"
#. module: account
#: selection:account.automatic.reconcile,power:0
@@ -4997,7 +5001,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_analytic_open
#: model:ir.ui.menu,name:account.account_analytic_def_account
msgid "Analytic Accounts"
-msgstr ""
+msgstr "حسابات تحليلية"
#. module: account
#: help:account.account.type,report_type:0
@@ -5024,7 +5028,7 @@ msgstr ""
#: field:account.model.line,amount_currency:0
#: field:account.move.line,amount_currency:0
msgid "Amount Currency"
-msgstr ""
+msgstr "مبلغ العملة"
#. module: account
#: code:addons/account/wizard/account_validate_account_move.py:39
@@ -5057,7 +5061,7 @@ msgstr ""
#. module: account
#: view:account.move.line:0
msgid "Number (Move)"
-msgstr ""
+msgstr "رقم (حركة)"
#. module: account
#: view:account.invoice.refund:0
@@ -5108,7 +5112,7 @@ msgstr ""
#: field:account.print.journal,amount_currency:0
#: field:account.report.general.ledger,amount_currency:0
msgid "With Currency"
-msgstr ""
+msgstr "مع العملة"
#. module: account
#: view:account.bank.statement:0
@@ -5134,7 +5138,7 @@ msgstr ""
#. module: account
#: view:board.board:0
msgid "Aged Receivables"
-msgstr ""
+msgstr "الديون المشكوك في تحصيلها"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_automatic_reconcile
@@ -5186,7 +5190,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_analytic_journal_form
#: model:ir.ui.menu,name:account.account_def_analytic_journal
msgid "Analytic Journals"
-msgstr ""
+msgstr "يوميات تحليلية"
#. module: account
#: field:account.account,child_id:0
@@ -5203,12 +5207,12 @@ msgstr ""
#. module: account
#: field:res.partner,debit:0
msgid "Total Payable"
-msgstr ""
+msgstr "إجمالي مستحق الدفع"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_account_line_extended_form
msgid "account.analytic.line.extended"
-msgstr ""
+msgstr "account.analytic.line.extended"
#. module: account
#: selection:account.bank.statement.line,type:0
@@ -5269,7 +5273,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_state_open
#: model:ir.model,name:account.model_account_state_open
msgid "Account State Open"
-msgstr ""
+msgstr "فتح حالة الحساب"
#. module: account
#: report:account.analytic.account.quantity_cost_ledger:0
@@ -5323,7 +5327,7 @@ msgstr ""
#: field:report.account.sales,period_id:0
#: field:report.account_type.sales,period_id:0
msgid "Force Period"
-msgstr ""
+msgstr "قوة الفترة"
#. module: account
#: view:account.invoice.report:0
@@ -5335,7 +5339,7 @@ msgstr ""
#: code:addons/account/wizard/account_change_currency.py:60
#, python-format
msgid "New currency is not confirured properly !"
-msgstr ""
+msgstr "العملة الجديدة لم يتم ضبطها بشكل صحيح !"
#. module: account
#: field:account.aged.trial.balance,filter:0
@@ -5354,7 +5358,7 @@ msgstr ""
#: field:account.report.general.ledger,filter:0
#: field:account.vat.declaration,filter:0
msgid "Filter by"
-msgstr ""
+msgstr "ترشيح بـ"
#. module: account
#: code:addons/account/account_move_line.py:1131
@@ -5379,7 +5383,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_general_journal
#: model:ir.model,name:account.model_account_general_journal
msgid "Account General Journal"
-msgstr ""
+msgstr "حساب اليومية العامة"
#. module: account
#: code:addons/account/report/common_report_header.py:100
@@ -5403,7 +5407,7 @@ msgstr ""
#. module: account
#: field:account.payment.term.line,days:0
msgid "Number of Days"
-msgstr ""
+msgstr "عدد الأيام"
#. module: account
#: selection:account.automatic.reconcile,power:0
@@ -5437,7 +5441,7 @@ msgstr ""
#: report:account.analytic.account.cost_ledger:0
#: report:account.analytic.account.quantity_cost_ledger:0
msgid "Printing date"
-msgstr ""
+msgstr "تاريخ الطباعة"
#. module: account
#: selection:account.account.type,close_method:0
@@ -5455,7 +5459,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_invoice_tree3
#: model:ir.ui.menu,name:account.menu_action_invoice_tree3
msgid "Customer Refunds"
-msgstr ""
+msgstr "رد للعملاء"
#. module: account
#: view:account.payment.term.line:0
@@ -5465,7 +5469,7 @@ msgstr ""
#. module: account
#: field:account.journal.period,name:0
msgid "Journal-Period Name"
-msgstr ""
+msgstr "اسم الفترة لليومية"
#. module: account
#: field:account.invoice.tax,factor_base:0
@@ -5501,7 +5505,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_analytic_entries_report
#: model:ir.ui.menu,name:account.menu_action_analytic_entries_report
msgid "Analytic Entries Analysis"
-msgstr ""
+msgstr "تحليل القيود التحليلية"
#. module: account
#: selection:account.aged.trial.balance,direction_selection:0
@@ -5511,7 +5515,7 @@ msgstr ""
#. module: account
#: view:account.analytic.line:0
msgid "Analytic Entry"
-msgstr ""
+msgstr "قيد تحليلي"
#. module: account
#: view:res.company:0
@@ -5738,7 +5742,7 @@ msgstr ""
#. module: account
#: field:account.journal,default_credit_account_id:0
msgid "Default Credit Account"
-msgstr ""
+msgstr "حساب الدائنون الإفتراضي"
#. module: account
#: view:account.installer:0
@@ -5748,7 +5752,7 @@ msgstr ""
#. module: account
#: view:account.payment.term.line:0
msgid " number of days: 30"
-msgstr ""
+msgstr " عدد الأيام: 30"
#. module: account
#: help:account.analytic.line,currency_id:0
@@ -5793,18 +5797,18 @@ msgstr ""
#. module: account
#: view:project.account.analytic.line:0
msgid "View Account Analytic Lines"
-msgstr ""
+msgstr "عرض خطوط الحساب التحليلي"
#. module: account
#: selection:account.account.type,report_type:0
msgid "Balance Sheet (Liability Accounts)"
-msgstr ""
+msgstr "الميزانية (لحسابات الأصول)"
#. module: account
#: field:account.invoice,internal_number:0
#: field:report.invoice.created,number:0
msgid "Invoice Number"
-msgstr ""
+msgstr "رقم الفاتورة"
#. module: account
#: help:account.tax,include_base_amount:0
@@ -5822,7 +5826,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_analytic_invert_balance
#: model:ir.actions.report.xml,name:account.account_analytic_account_inverted_balance
msgid "Inverted Analytic Balance"
-msgstr ""
+msgstr "الرصيد التحليلي المعكوس"
#. module: account
#: field:account.tax.template,applicable_type:0
@@ -5854,7 +5858,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_analytic_journal_open_form
#: model:ir.ui.menu,name:account.account_analytic_journal_entries
msgid "Analytic Journal Items"
-msgstr ""
+msgstr "عناصر اليومية التحليلية"
#. module: account
#: view:account.fiscalyear.close:0
@@ -5900,7 +5904,7 @@ msgstr ""
#: code:addons/account/wizard/account_report_aged_partner_balance.py:57
#, python-format
msgid "Enter a Start date !"
-msgstr ""
+msgstr "أدخل تاريخ البدء !"
#. module: account
#: report:account.invoice:0
@@ -5918,7 +5922,7 @@ msgstr ""
#. module: account
#: field:account.bank.statement,move_line_ids:0
msgid "Entry lines"
-msgstr ""
+msgstr "سطور القيود"
#. module: account
#: field:account.move.line,centralisation:0
@@ -5988,7 +5992,7 @@ msgstr ""
#: model:ir.actions.report.xml,name:account.analytic_journal_print
#: model:ir.model,name:account.model_account_analytic_journal
msgid "Analytic Journal"
-msgstr ""
+msgstr "يومية تحليلية"
#. module: account
#: view:account.entries.report:0
@@ -6037,7 +6041,7 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_analytic_entries_report
msgid "Analytic Entries Statistics"
-msgstr ""
+msgstr "إحصائيات القيود التحليلية"
#. module: account
#: code:addons/account/account_analytic_line.py:143
@@ -6049,7 +6053,7 @@ msgstr ""
#. module: account
#: view:account.use.model:0
msgid "Create manual recurring entries in a chosen journal."
-msgstr ""
+msgstr "إنشاء قيد يومية تكرارية يدوياً في يومية مختارة."
#. module: account
#: code:addons/account/account.py:1393
@@ -6087,7 +6091,7 @@ msgstr ""
#: code:addons/account/account_move_line.py:1003
#, python-format
msgid "Total debit"
-msgstr ""
+msgstr "إجمالي الخصم"
#. module: account
#: code:addons/account/account_move_line.py:781
@@ -6193,7 +6197,7 @@ msgstr ""
#. module: account
#: selection:account.journal.period,state:0
msgid "Printed"
-msgstr ""
+msgstr "مطبوع"
#. module: account
#: view:account.analytic.line:0
@@ -6290,7 +6294,7 @@ msgstr ""
#: code:addons/account/wizard/account_change_currency.py:65
#, python-format
msgid "Currnt currency is not confirured properly !"
-msgstr ""
+msgstr "العملة الجديدة لم يتم ضبطها بشكل صحيح !"
#. module: account
#: model:ir.model,name:account.model_account_move_reconcile
@@ -6310,7 +6314,7 @@ msgstr ""
#: model:ir.actions.report.xml,name:account.account_general_ledger
#: model:ir.ui.menu,name:account.menu_general_ledger
msgid "General Ledger"
-msgstr ""
+msgstr "الأستاذ العام"
#. module: account
#: model:process.transition,note:account.process_transition_paymentorderbank0
@@ -6358,7 +6362,7 @@ msgstr ""
#: report:account.invoice:0
#: report:account.partner.balance:0
msgid "Total:"
-msgstr ""
+msgstr "الإجمالي:"
#. module: account
#: code:addons/account/account.py:2050
@@ -6401,7 +6405,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_invoice_tree1
#: model:ir.ui.menu,name:account.menu_action_invoice_tree1
msgid "Customer Invoices"
-msgstr "فواتير العميل"
+msgstr "فواتير العملاء"
#. module: account
#: field:account.move.line.reconcile,writeoff:0
@@ -6411,7 +6415,7 @@ msgstr ""
#. module: account
#: view:account.analytic.line:0
msgid "Sales"
-msgstr ""
+msgstr "المبيعات"
#. module: account
#: view:account.journal.column:0
@@ -6430,7 +6434,7 @@ msgstr ""
#. module: account
#: model:process.transition,note:account.process_transition_invoicemanually0
msgid "A statement with manual entries becomes a draft statement."
-msgstr ""
+msgstr "القائمة ذات القيود اليدوية تصبح مؤقتة."
#. module: account
#: view:account.aged.trial.balance:0
@@ -6460,7 +6464,7 @@ msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.act_account_acount_move_line_open_unreconciled
msgid "Unreconciled Entries"
-msgstr ""
+msgstr "قيود غير مسواه"
#. module: account
#: model:ir.ui.menu,name:account.menu_menu_Bank_process
@@ -6491,7 +6495,7 @@ msgstr ""
#: view:analytic.entries.report:0
#: field:analytic.entries.report,product_uom_id:0
msgid "Product UOM"
-msgstr ""
+msgstr "وحدة قياس المنتج"
#. module: account
#: model:ir.actions.act_window,help:account.action_view_bank_statement_tree
@@ -6528,7 +6532,7 @@ msgstr ""
#: view:account.move:0
#: view:account.move.line:0
msgid "Analytic Lines"
-msgstr ""
+msgstr "سطور تحليلية"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_analytic_account_tree2
@@ -6579,7 +6583,7 @@ msgstr ""
#. module: account
#: field:account.account.template,parent_id:0
msgid "Parent Account Template"
-msgstr ""
+msgstr "قالب حساب رئيسي"
#. module: account
#: view:account.bank.statement:0
@@ -6638,7 +6642,7 @@ msgstr ""
#. module: account
#: help:res.partner,credit:0
msgid "Total amount this customer owes you."
-msgstr ""
+msgstr "إجمالي المبلغ المدين لهذا العميل لك."
#. module: account
#: model:ir.model,name:account.model_ir_sequence
@@ -6660,12 +6664,12 @@ msgstr ""
#: code:addons/account/report/account_partner_balance.py:115
#, python-format
msgid "Unknown Partner"
-msgstr ""
+msgstr "شريك مجهول"
#. module: account
#: view:account.bank.statement:0
msgid "Opening Balance"
-msgstr ""
+msgstr "رصيد أول المدة"
#. module: account
#: help:account.journal,centralisation:0
@@ -6678,7 +6682,7 @@ msgstr ""
#. module: account
#: field:account.bank.statement,closing_date:0
msgid "Closed On"
-msgstr ""
+msgstr "إقفال يوم"
#. module: account
#: model:ir.model,name:account.model_account_bank_statement_line
@@ -6875,7 +6879,7 @@ msgstr ""
#. module: account
#: view:account.move.line:0
msgid "Optional Information"
-msgstr ""
+msgstr "معلومات خيارية"
#. module: account
#: view:account.analytic.line:0
@@ -6914,13 +6918,13 @@ msgstr ""
#: code:addons/account/installer.py:432
#, python-format
msgid "Sales Journal"
-msgstr ""
+msgstr "يومية المبيعات"
#. module: account
#: code:addons/account/wizard/account_move_journal.py:104
#, python-format
msgid "Open Journal Items !"
-msgstr ""
+msgstr "فتح عناصر اليومية !"
#. module: account
#: model:ir.model,name:account.model_account_invoice_tax
@@ -6937,7 +6941,7 @@ msgstr ""
#: view:product.product:0
#: view:product.template:0
msgid "Sales Properties"
-msgstr ""
+msgstr "خصائص المبيعات"
#. module: account
#: model:ir.ui.menu,name:account.menu_manual_reconcile
@@ -6947,7 +6951,7 @@ msgstr ""
#. module: account
#: report:account.overdue:0
msgid "Total amount due:"
-msgstr ""
+msgstr "إجمالي المبلغ المستحق:"
#. module: account
#: field:account.analytic.chart,to_date:0
@@ -6986,7 +6990,7 @@ msgstr ""
#: code:addons/account/report/account_partner_balance.py:304
#, python-format
msgid "Payable Accounts"
-msgstr ""
+msgstr "حسابات الدائنون"
#. module: account
#: model:ir.model,name:account.model_account_chart_template
@@ -7044,7 +7048,7 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_bs_report
msgid "Account Balance Sheet Report"
-msgstr ""
+msgstr "تقرير الميزانية للحسابات"
#. module: account
#: help:account.tax,price_include:0
@@ -7062,7 +7066,7 @@ msgstr ""
#. module: account
#: view:report.account_type.sales:0
msgid "Sales by Account type"
-msgstr ""
+msgstr "المبيعات حسب نوع الحساب"
#. module: account
#: help:account.invoice,move_id:0
@@ -7087,7 +7091,7 @@ msgstr ""
#. module: account
#: view:account.payment.term.line:0
msgid " number of days: 14"
-msgstr ""
+msgstr " عدد الأيام: 14"
#. module: account
#: view:analytic.entries.report:0
@@ -7108,7 +7112,7 @@ msgstr "أصل"
#. module: account
#: field:account.installer.modules,account_analytic_plans:0
msgid "Multiple Analytic Plans"
-msgstr ""
+msgstr "خطط تحليلية متعددة"
#. module: account
#: help:account.payment.term.line,days2:0
@@ -7178,7 +7182,7 @@ msgstr ""
#: code:addons/account/invoice.py:720
#, python-format
msgid "Warning !"
-msgstr ""
+msgstr "تحذير !"
#. module: account
#: field:account.entries.report,move_line_state:0
@@ -7195,7 +7199,7 @@ msgstr ""
#: view:account.subscription.generate:0
#: model:ir.model,name:account.model_account_subscription_generate
msgid "Subscription Compute"
-msgstr ""
+msgstr "حساب الإشتراك"
#. module: account
#: report:account.move.voucher:0
@@ -7229,7 +7233,7 @@ msgstr ""
#. module: account
#: help:account.change.currency,currency_id:0
msgid "Select a currency to apply on the invoice"
-msgstr ""
+msgstr "اختر عملة للفاتورة"
#. module: account
#: code:addons/account/wizard/account_invoice_refund.py:100
@@ -7241,7 +7245,7 @@ msgstr ""
#: code:addons/account/invoice.py:787
#, python-format
msgid "No Invoice Lines !"
-msgstr ""
+msgstr "لا سطور للفاتورة !"
#. module: account
#: view:account.bank.statement:0
@@ -7261,7 +7265,7 @@ msgstr ""
#: field:account.subscription,state:0
#: field:report.invoice.created,state:0
msgid "State"
-msgstr ""
+msgstr "الحالة"
#. module: account
#: help:account.open.closed.fiscalyear,fyear_id:0
@@ -7324,7 +7328,7 @@ msgstr ""
#. module: account
#: report:account.analytic.account.inverted.balance:0
msgid "Inverted Analytic Balance -"
-msgstr ""
+msgstr "رصيد تحليلي معكوس -"
#. module: account
#: view:account.move.bank.reconcile:0
@@ -7357,7 +7361,7 @@ msgstr ""
#: view:account.invoice:0
#: field:account.invoice,comment:0
msgid "Additional Information"
-msgstr ""
+msgstr "معلومات أضافية"
#. module: account
#: view:account.installer:0
@@ -7368,7 +7372,7 @@ msgstr ""
#: view:account.invoice.report:0
#: field:account.invoice.report,residual:0
msgid "Total Residual"
-msgstr ""
+msgstr "إجمالي المتبقي"
#. module: account
#: model:process.node,note:account.process_node_invoiceinvoice0
@@ -7480,7 +7484,7 @@ msgstr ""
#. module: account
#: report:account.invoice:0
msgid "Net Total:"
-msgstr ""
+msgstr "صافي الإجمالي:"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_generic_reporting
@@ -7553,7 +7557,7 @@ msgstr ""
#. module: account
#: field:account.account,company_currency_id:0
msgid "Company Currency"
-msgstr ""
+msgstr "عملة الشركة"
#. module: account
#: model:process.node,name:account.process_node_paymententries0
@@ -7585,12 +7589,12 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_analytic_inverted_balance
msgid "Account Analytic Inverted Balance"
-msgstr ""
+msgstr "رصيد للحساب التحليلي المعكوس"
#. module: account
#: model:ir.model,name:account.model_account_common_report
msgid "Account Common Report"
-msgstr ""
+msgstr "تقرير مشترك للحساب"
#. module: account
#: model:process.transition,name:account.process_transition_filestatement0
@@ -7612,13 +7616,13 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_type_form
#: model:ir.ui.menu,name:account.menu_action_account_type_form
msgid "Account Types"
-msgstr ""
+msgstr "أنواع الحساب"
#. module: account
#: code:addons/account/invoice.py:897
#, python-format
msgid "Cannot create invoice move on centralised journal"
-msgstr ""
+msgstr "لا يمكن إنشاء حركة فاتورة حيث اليومية مركزية"
#. module: account
#: field:account.account.type,report_type:0
@@ -7643,17 +7647,17 @@ msgstr ""
#: view:account.chart.template:0
#: field:account.chart.template,property_account_receivable:0
msgid "Receivable Account"
-msgstr ""
+msgstr "حساب المدينون"
#. module: account
#: view:account.bank.statement:0
msgid "CashBox Balance"
-msgstr ""
+msgstr "رصيد صندوق النقدية"
#. module: account
#: model:ir.model,name:account.model_account_fiscalyear_close_state
msgid "Fiscalyear Close state"
-msgstr ""
+msgstr "حالة إغلاق السنة المالية"
#. module: account
#: field:account.invoice.refund,journal_id:0
@@ -7673,7 +7677,7 @@ msgstr ""
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "Filter By"
-msgstr ""
+msgstr "ترشيح بـ"
#. module: account
#: model:ir.actions.act_window,help:account.action_invoice_tree1
@@ -7689,7 +7693,7 @@ msgstr ""
#: view:board.board:0
#: model:ir.actions.act_window,name:account.action_company_analysis_tree
msgid "Company Analysis"
-msgstr ""
+msgstr "تحليل الشركة"
#. module: account
#: help:account.invoice,account_id:0
@@ -7706,14 +7710,14 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_payment_term_line
msgid "Payment Term Line"
-msgstr ""
+msgstr "سطر شروط السداد"
#. module: account
#: code:addons/account/account.py:2794
#: code:addons/account/installer.py:452
#, python-format
msgid "Purchase Journal"
-msgstr ""
+msgstr "يومية المشتريات"
#. module: account
#: view:account.invoice.refund:0
@@ -7723,17 +7727,17 @@ msgstr ""
#. module: account
#: field:account.invoice.line,price_subtotal:0
msgid "Subtotal"
-msgstr ""
+msgstr "المجموع الفرعي"
#. module: account
#: view:account.vat.declaration:0
msgid "Print Tax Statement"
-msgstr ""
+msgstr "طباعة كشف الضريبة"
#. module: account
#: view:account.model.line:0
msgid "Journal Entry Model Line"
-msgstr ""
+msgstr "خط نموذج قيد اليومية"
#. module: account
#: view:account.invoice:0
@@ -7742,7 +7746,7 @@ msgstr ""
#: field:account.invoice.report,date_due:0
#: field:report.invoice.created,date_due:0
msgid "Due Date"
-msgstr ""
+msgstr "تاريخ الإستحقاق"
#. module: account
#: model:ir.ui.menu,name:account.menu_account_supplier
@@ -7759,12 +7763,12 @@ msgstr ""
#. module: account
#: view:account.journal:0
msgid "Accounts Type Allowed (empty for no control)"
-msgstr ""
+msgstr "أنواع الحسابات المسموحة (فارغ للغير رقابية)"
#. module: account
#: view:res.partner:0
msgid "Supplier Accounting Properties"
-msgstr ""
+msgstr "خصائص محاسبة المورد"
#. module: account
#: help:account.move.line,amount_residual:0
@@ -7776,23 +7780,23 @@ msgstr ""
#. module: account
#: view:account.payment.term.line:0
msgid " valuation: balance"
-msgstr ""
+msgstr " التقييم: رصيد"
#. module: account
#: view:account.tax.code:0
msgid "Statistics"
-msgstr ""
+msgstr "إحصائيات"
#. module: account
#: field:account.analytic.chart,from_date:0
#: field:project.account.analytic.line,from_date:0
msgid "From"
-msgstr ""
+msgstr "من"
#. module: account
#: model:ir.model,name:account.model_account_fiscalyear_close
msgid "Fiscalyear Close"
-msgstr ""
+msgstr "إغلاق السنة المالية"
#. module: account
#: sql_constraint:account.account:0
@@ -7802,18 +7806,18 @@ msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened
msgid "Unpaid Invoices"
-msgstr ""
+msgstr "فواتير غير مدفوعة"
#. module: account
#: field:account.move.line.reconcile,debit:0
msgid "Debit amount"
-msgstr ""
+msgstr "المبلغ المدين"
#. module: account
#: view:board.board:0
#: model:ir.actions.act_window,name:account.action_treasory_graph
msgid "Treasury"
-msgstr ""
+msgstr "الخزينة"
#. module: account
#: view:account.aged.trial.balance:0
@@ -7824,7 +7828,7 @@ msgstr ""
#: view:account.analytic.inverted.balance:0
#: view:account.common.report:0
msgid "Print"
-msgstr ""
+msgstr "طباعة"
#. module: account
#: view:account.journal:0
@@ -7836,30 +7840,30 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_analytic_chart
#: model:ir.ui.menu,name:account.menu_action_analytic_account_tree2
msgid "Chart of Analytic Accounts"
-msgstr ""
+msgstr "شجرة الحسابات التحليلية"
#. module: account
#: model:ir.ui.menu,name:account.menu_configuration_misc
msgid "Miscellaneous"
-msgstr ""
+msgstr "متفرقات"
#. module: account
#: help:res.partner,debit:0
msgid "Total amount you have to pay to this supplier."
-msgstr ""
+msgstr "إجمالي المبلغ الواجب دفعه لهذا المورد."
#. module: account
#: model:process.node,name:account.process_node_analytic0
#: model:process.node,name:account.process_node_analyticcost0
msgid "Analytic Costs"
-msgstr ""
+msgstr "تكاليف تحليلية"
#. module: account
#: field:account.analytic.journal,name:0
#: report:account.general.journal:0
#: field:account.journal,name:0
msgid "Journal Name"
-msgstr ""
+msgstr "اسم اليومية"
#. module: account
#: help:account.invoice,internal_number:0
@@ -7880,12 +7884,12 @@ msgstr ""
#: code:addons/account/account_move_line.py:1214
#, python-format
msgid "Bad account!"
-msgstr ""
+msgstr "حساب سئ!"
#. module: account
#: help:account.chart,fiscalyear:0
msgid "Keep empty for all open fiscal years"
-msgstr ""
+msgstr "اتركه فارغ لكل السنوات المالية المفتوحة"
#. module: account
#: code:addons/account/account_move_line.py:1056
@@ -7926,13 +7930,13 @@ msgstr ""
#: field:report.account_type.sales,currency_id:0
#: field:report.invoice.created,currency_id:0
msgid "Currency"
-msgstr ""
+msgstr "عملة"
#. module: account
#: help:account.bank.statement.line,sequence:0
msgid ""
"Gives the sequence order when displaying a list of bank statement lines."
-msgstr ""
+msgstr "يعطيك ترتيب المسلسل حين يعرض قائمة لسطور كشف حساب البنك"
#. module: account
#: model:process.transition,note:account.process_transition_validentries0
@@ -7954,12 +7958,12 @@ msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.act_account_acount_move_line_reconcile_open
msgid "Reconciled entries"
-msgstr ""
+msgstr "قيود مسواه"
#. module: account
#: field:account.invoice,address_contact_id:0
msgid "Contact Address"
-msgstr ""
+msgstr "عنوان جهة الإتصال"
#. module: account
#: help:account.invoice,state:0
@@ -7977,34 +7981,34 @@ msgstr ""
#. module: account
#: field:account.invoice.refund,period:0
msgid "Force period"
-msgstr ""
+msgstr "قوة الفترة"
#. module: account
#: model:ir.model,name:account.model_account_partner_balance
msgid "Print Account Partner Balance"
-msgstr ""
+msgstr "طباعة رصيد حساب الشريك"
#. module: account
#: field:res.partner,contract_ids:0
msgid "Contracts"
-msgstr ""
+msgstr "عقود"
#. module: account
#: field:account.cashbox.line,ending_id:0
#: field:account.cashbox.line,starting_id:0
#: field:account.entries.report,reconcile_id:0
msgid "unknown"
-msgstr ""
+msgstr "مجهول"
#. module: account
#: field:account.fiscalyear.close,journal_id:0
msgid "Opening Entries Journal"
-msgstr ""
+msgstr "يومية القيود الإفتتاحية"
#. module: account
#: model:process.transition,note:account.process_transition_customerinvoice0
msgid "Draft invoices are checked, validated and printed."
-msgstr ""
+msgstr "تم التعليم و التحقق و طباعة الفواتير المؤقتة"
#. module: account
#: help:account.chart.template,property_reserve_and_surplus_account:0
@@ -8017,12 +8021,12 @@ msgstr ""
#. module: account
#: field:account.invoice,reference_type:0
msgid "Reference Type"
-msgstr ""
+msgstr "نوع المرجع"
#. module: account
#: view:account.analytic.cost.ledger.journal.report:0
msgid "Cost Ledger for period"
-msgstr ""
+msgstr "أستاذ التكاليف لفترة"
#. module: account
#: help:account.tax,child_depend:0
@@ -8035,12 +8039,12 @@ msgstr ""
#. module: account
#: selection:account.tax,applicable_type:0
msgid "Given by Python Code"
-msgstr ""
+msgstr "معطي بلغة البايثون"
#. module: account
#: field:account.analytic.journal,code:0
msgid "Journal Code"
-msgstr ""
+msgstr "رمز اليومية"
#. module: account
#: help:account.tax.code,sign:0
@@ -8055,19 +8059,19 @@ msgstr ""
#: field:account.move.line,amount_residual:0
#: field:account.move.line,amount_residual_currency:0
msgid "Residual Amount"
-msgstr ""
+msgstr "المبلغ المتبقي"
#. module: account
#: field:account.invoice,move_lines:0
#: field:account.move.reconcile,line_id:0
msgid "Entry Lines"
-msgstr ""
+msgstr "سطور القيود"
#. module: account
#: model:ir.actions.act_window,name:account.action_open_journal_button
#: model:ir.actions.act_window,name:account.action_validate_account_move
msgid "Open Journal"
-msgstr ""
+msgstr "فتح اليومية"
#. module: account
#: report:account.analytic.account.journal:0
@@ -8079,14 +8083,14 @@ msgstr ""
#: report:account.analytic.account.journal:0
#: report:account.analytic.account.quantity_cost_ledger:0
msgid "Period from"
-msgstr ""
+msgstr "من الفترة"
#. module: account
#: code:addons/account/account.py:2817
#: code:addons/account/installer.py:476
#, python-format
msgid "Sales Refund Journal"
-msgstr ""
+msgstr "يومية رد المبيعات"
#. module: account
#: code:addons/account/account.py:927
@@ -8101,12 +8105,12 @@ msgstr ""
#: view:account.move.line:0
#: view:account.payment.term:0
msgid "Information"
-msgstr ""
+msgstr "معلومات"
#. module: account
#: model:process.node,note:account.process_node_bankstatement0
msgid "Registered payment"
-msgstr ""
+msgstr "دفع مسجل"
#. module: account
#: view:account.fiscalyear.close.state:0
@@ -8116,7 +8120,7 @@ msgstr ""
#. module: account
#: view:account.analytic.line:0
msgid "Product Information"
-msgstr ""
+msgstr "معلومات المنتج"
#. module: account
#: report:account.analytic.account.journal:0
@@ -8124,34 +8128,34 @@ msgstr ""
#: view:account.move.line:0
#: model:ir.ui.menu,name:account.next_id_40
msgid "Analytic"
-msgstr ""
+msgstr "تحليلي"
#. module: account
#: model:process.node,name:account.process_node_invoiceinvoice0
#: model:process.node,name:account.process_node_supplierinvoiceinvoice0
msgid "Create Invoice"
-msgstr ""
+msgstr "إنشاء فاتورة"
#. module: account
#: field:account.installer,purchase_tax:0
msgid "Purchase Tax(%)"
-msgstr ""
+msgstr "ضريبة المشتريات (%)"
#. module: account
#: code:addons/account/invoice.py:787
#, python-format
msgid "Please create some invoice lines."
-msgstr ""
+msgstr "قم بإنشاء سطور للفاتورة."
#. module: account
#: report:account.overdue:0
msgid "Dear Sir/Madam,"
-msgstr ""
+msgstr "عزيزي سيدي / سيدتي،"
#. module: account
#: view:account.installer.modules:0
msgid "Configure Your Accounting Application"
-msgstr ""
+msgstr "إعداد التطبيق المحاسبي الخاص بك"
#. module: account
#: code:addons/account/account.py:2820
@@ -8180,12 +8184,12 @@ msgstr ""
#: field:account.period,date_stop:0
#: model:ir.ui.menu,name:account.menu_account_end_year_treatments
msgid "End of Period"
-msgstr ""
+msgstr "نهاية الفترة"
#. module: account
#: field:account.installer.modules,account_followup:0
msgid "Followups Management"
-msgstr ""
+msgstr "إدارة المتابعة"
#. module: account
#: report:account.account.balance:0
@@ -8203,7 +8207,7 @@ msgstr ""
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "Start Period"
-msgstr ""
+msgstr "بداية الفترة"
#. module: account
#: code:addons/account/account.py:2333
@@ -8214,12 +8218,12 @@ msgstr ""
#. module: account
#: field:account.aged.trial.balance,direction_selection:0
msgid "Analysis Direction"
-msgstr ""
+msgstr "إتجاه التحليل"
#. module: account
#: field:res.partner,ref_companies:0
msgid "Companies that refers to partner"
-msgstr ""
+msgstr "شركات تشير إلي شركاء"
#. module: account
#: view:account.journal:0
@@ -8228,14 +8232,14 @@ msgstr ""
#: field:account.journal.view,name:0
#: model:ir.model,name:account.model_account_journal_view
msgid "Journal View"
-msgstr ""
+msgstr "عرض اليومية"
#. module: account
#: view:account.move.line:0
#: code:addons/account/account_move_line.py:1006
#, python-format
msgid "Total credit"
-msgstr ""
+msgstr "إجمالي الإئتمان"
#. module: account
#: model:process.transition,note:account.process_transition_suppliervalidentries0
@@ -8253,17 +8257,17 @@ msgstr ""
#. module: account
#: report:account.overdue:0
msgid "Best regards."
-msgstr ""
+msgstr "مع خالص التحيات."
#. module: account
#: view:account.invoice:0
msgid "Unpaid"
-msgstr ""
+msgstr "غير مدفوعة"
#. module: account
#: report:account.overdue:0
msgid "Document: Customer account statement"
-msgstr ""
+msgstr "مستند: كشف حساب عميل"
#. module: account
#: constraint:account.move.line:0
@@ -8274,7 +8278,7 @@ msgstr ""
#: code:addons/account/wizard/account_change_currency.py:71
#, python-format
msgid "Current currency is not confirured properly !"
-msgstr ""
+msgstr "العملة الجديدة لم يتم ضبطها بشكل صحيح !"
#. module: account
#: model:ir.actions.act_window,help:account.action_invoice_tree4
@@ -8288,23 +8292,23 @@ msgstr ""
#. module: account
#: view:account.account.template:0
msgid "Receivale Accounts"
-msgstr ""
+msgstr "حسابات المدينون"
#. module: account
#: report:account.move.voucher:0
msgid "Particulars"
-msgstr ""
+msgstr "أفراد"
#. module: account
#: selection:account.account.type,report_type:0
msgid "Profit & Loss (Income Accounts)"
-msgstr ""
+msgstr "الأرباح و الخسائر (حسابات الدخل)"
#. module: account
#: view:account.tax:0
#: view:account.tax.template:0
msgid "Keep empty to use the income account"
-msgstr ""
+msgstr "لإستخدام حساب الدخل اتركه فارغ"
#. module: account
#: field:account.account,balance:0
@@ -8334,12 +8338,12 @@ msgstr ""
#: field:report.account.receivable,balance:0
#: field:report.aged.receivable,balance:0
msgid "Balance"
-msgstr ""
+msgstr "الرصيد"
#. module: account
#: model:process.node,note:account.process_node_supplierbankstatement0
msgid "Manually or automatically entered in the system"
-msgstr ""
+msgstr "تم إدخاله يدوي أو تلقائي في النظام"
#. module: account
#: report:account.account.balance:0
@@ -8353,22 +8357,22 @@ msgstr ""
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "Display Account"
-msgstr ""
+msgstr "عرض الحساب"
#. module: account
#: report:account.tax.code.entries:0
msgid "("
-msgstr ""
+msgstr "("
#. module: account
#: selection:account.invoice.refund,filter_refund:0
msgid "Modify"
-msgstr ""
+msgstr "تعديل"
#. module: account
#: view:account.account.type:0
msgid "Closing Method"
-msgstr ""
+msgstr "إسلوب الإغلاق"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_partner_balance
@@ -8382,25 +8386,25 @@ msgstr ""
#: selection:account.account.template,type:0
#: selection:account.entries.report,type:0
msgid "Payable"
-msgstr ""
+msgstr "مدفوعات"
#. module: account
#: view:report.account.sales:0
#: view:report.account_type.sales:0
#: view:report.hr.timesheet.invoice.journal:0
msgid "This Year"
-msgstr ""
+msgstr "هذا العام"
#. module: account
#: view:board.board:0
msgid "Account Board"
-msgstr ""
+msgstr "لوحة الحسابات"
#. module: account
#: view:account.model:0
#: field:account.model,legend:0
msgid "Legend"
-msgstr ""
+msgstr "الدليل"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_moves_sale
@@ -8416,23 +8420,23 @@ msgstr ""
#: code:addons/account/account_bank_statement.py:391
#, python-format
msgid "Cannot delete bank statement(s) which are already confirmed !"
-msgstr ""
+msgstr "لا يمكن حذف هذا كشف / كشوف حساب البنك التي تم تأكيدها"
#. module: account
#: code:addons/account/wizard/account_automatic_reconcile.py:152
#, python-format
msgid "You must select accounts to reconcile"
-msgstr ""
+msgstr "يجب إختيار الحسابات للتسوية"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_receivable_graph
msgid "Balance by Type of Account"
-msgstr ""
+msgstr "الرصيد حسب نوع الحساب"
#. module: account
#: model:process.transition,note:account.process_transition_entriesreconcile0
msgid "Accounting entries are the first input of the reconciliation."
-msgstr ""
+msgstr "قيود المحاسبة هي أول المدخلات للتسوية."
#. module: account
#: model:ir.actions.act_window,help:account.action_account_period_form
@@ -8448,7 +8452,7 @@ msgstr ""
#. module: account
#: report:account.move.voucher:0
msgid "Receiver's Signature"
-msgstr ""
+msgstr "إمضاء المستلم"
#. module: account
#: report:account.general.ledger:0
@@ -8456,13 +8460,13 @@ msgstr ""
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
msgid "Filters By"
-msgstr ""
+msgstr "ترشيح بـ"
#. module: account
#: model:process.node,note:account.process_node_manually0
#: model:process.transition,name:account.process_transition_invoicemanually0
msgid "Manual entry"
-msgstr ""
+msgstr "قيد يدوي"
#. module: account
#: report:account.general.ledger:0
@@ -8470,7 +8474,7 @@ msgstr ""
#: field:account.move.line,move_id:0
#: field:analytic.entries.report,move_id:0
msgid "Move"
-msgstr ""
+msgstr "نقل"
#. module: account
#: code:addons/account/account_move_line.py:1128
@@ -8486,7 +8490,7 @@ msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_bank_statement
msgid "Bank statements"
-msgstr ""
+msgstr "كشوف حساب البنك"
#. module: account
#: help:account.addtmpl.wizard,cparent_id:0
@@ -8497,7 +8501,7 @@ msgstr ""
#. module: account
#: selection:account.model.line,date_maturity:0
msgid "Date of the day"
-msgstr ""
+msgstr "تاريخ اليوم"
#. module: account
#: code:addons/account/wizard/account_move_bank_reconcile.py:49
@@ -8510,18 +8514,18 @@ msgstr ""
#. module: account
#: view:account.move.line.reconcile:0
msgid "Reconciliation transactions"
-msgstr ""
+msgstr "معاملات التسوية"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_common_menu
msgid "Common Report"
-msgstr ""
+msgstr "تقرير مشترك"
#. module: account
#: view:account.account:0
#: field:account.account,child_consol_ids:0
msgid "Consolidated Children"
-msgstr ""
+msgstr "فرعي موحد"
#. module: account
#: code:addons/account/wizard/account_fiscalyear_close.py:82
@@ -8536,7 +8540,7 @@ msgstr ""
#: model:process.transition,name:account.process_transition_paymentorderbank0
#: model:process.transition,name:account.process_transition_paymentreconcile0
msgid "Payment entries"
-msgstr ""
+msgstr "قيود المدفوعات"
#. module: account
#: selection:account.entries.report,month:0
@@ -8545,22 +8549,22 @@ msgstr ""
#: selection:report.account.sales,month:0
#: selection:report.account_type.sales,month:0
msgid "July"
-msgstr ""
+msgstr "يوليو/تموز"
#. module: account
#: view:account.account:0
msgid "Chart of accounts"
-msgstr ""
+msgstr "شجرة الحسابات"
#. module: account
#: field:account.subscription.line,subscription_id:0
msgid "Subscription"
-msgstr ""
+msgstr "الإشتراك"
#. module: account
#: model:ir.model,name:account.model_account_analytic_balance
msgid "Account Analytic Balance"
-msgstr ""
+msgstr "رصيد الحساب التحليلي"
#. module: account
#: report:account.account.balance:0
@@ -8578,7 +8582,7 @@ msgstr ""
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "End Period"
-msgstr ""
+msgstr "نهاية الفترة"
#. module: account
#: field:account.aged.trial.balance,chart_account_id:0
@@ -8597,22 +8601,22 @@ msgstr ""
#: field:account.report.general.ledger,chart_account_id:0
#: field:account.vat.declaration,chart_account_id:0
msgid "Chart of account"
-msgstr ""
+msgstr "شجرة الحساب"
#. module: account
#: field:account.move.line,date_maturity:0
msgid "Due date"
-msgstr ""
+msgstr "تاريخ الإستحقاق"
#. module: account
#: view:account.move.journal:0
msgid "Standard entries"
-msgstr ""
+msgstr "القيود المعيارية"
#. module: account
#: model:ir.model,name:account.model_account_subscription
msgid "Account Subscription"
-msgstr ""
+msgstr "إشتراك الحساب"
#. module: account
#: code:addons/account/invoice.py:717
@@ -8625,7 +8629,7 @@ msgstr ""
#. module: account
#: view:account.subscription:0
msgid "Entry Subscription"
-msgstr ""
+msgstr "إشتراك القيد"
#. module: account
#: report:account.account.balance:0
@@ -8655,30 +8659,30 @@ msgstr ""
#: report:account.third_party_ledger_other:0
#: field:account.vat.declaration,date_from:0
msgid "Start Date"
-msgstr ""
+msgstr "تاريخ البدء"
#. module: account
#: model:process.node,name:account.process_node_supplierdraftinvoices0
msgid "Draft Invoices"
-msgstr ""
+msgstr "فواتير مؤقتة"
#. module: account
#: selection:account.account.type,close_method:0
#: view:account.entries.report:0
#: view:account.move.line:0
msgid "Unreconciled"
-msgstr ""
+msgstr "غير مسوي"
#. module: account
#: code:addons/account/invoice.py:804
#, python-format
msgid "Bad total !"
-msgstr ""
+msgstr "إجمالي سئ!"
#. module: account
#: field:account.journal,sequence_id:0
msgid "Entry Sequence"
-msgstr ""
+msgstr "مسلسل القيد"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_period_tree
@@ -8695,28 +8699,28 @@ msgstr ""
#. module: account
#: view:account.analytic.account:0
msgid "Pending"
-msgstr ""
+msgstr "معلّق"
#. module: account
#: model:process.transition,name:account.process_transition_analyticinvoice0
#: model:process.transition,name:account.process_transition_supplieranalyticcost0
msgid "From analytic accounts"
-msgstr ""
+msgstr "من الحسابات التحليلية"
#. module: account
#: field:account.installer.modules,account_payment:0
msgid "Suppliers Payment Management"
-msgstr ""
+msgstr "إدارة مدفوعات الموردين"
#. module: account
#: field:account.period,name:0
msgid "Period Name"
-msgstr ""
+msgstr "اسم الفترة"
#. module: account
#: report:account.analytic.account.quantity_cost_ledger:0
msgid "Code/Date"
-msgstr ""
+msgstr "رمز / تاريخ"
#. module: account
#: field:account.account,active:0
@@ -8725,13 +8729,13 @@ msgstr ""
#: field:account.payment.term,active:0
#: field:account.tax,active:0
msgid "Active"
-msgstr ""
+msgstr "نشِط"
#. module: account
#: code:addons/account/invoice.py:354
#, python-format
msgid "Unknown Error"
-msgstr ""
+msgstr "خطأ غير معروف"
#. module: account
#: code:addons/account/account.py:1167
@@ -8752,19 +8756,19 @@ msgstr ""
#. module: account
#: field:account.period,special:0
msgid "Opening/Closing Period"
-msgstr ""
+msgstr "فتح / إغلاق الفترة"
#. module: account
#: field:account.account,currency_id:0
#: field:account.account.template,currency_id:0
#: field:account.bank.accounts.wizard,currency_id:0
msgid "Secondary Currency"
-msgstr ""
+msgstr "عملة ثانية"
#. module: account
#: model:ir.model,name:account.model_validate_account_move
msgid "Validate Account Move"
-msgstr ""
+msgstr "التحقق من حركة الحساب"
#. module: account
#: field:account.account,credit:0
@@ -8789,7 +8793,7 @@ msgstr ""
#: report:account.vat.declaration:0
#: field:report.account.receivable,credit:0
msgid "Credit"
-msgstr ""
+msgstr "دائن"
#. module: account
#: help:account.invoice.refund,journal_id:0
@@ -8802,18 +8806,18 @@ msgstr ""
#. module: account
#: report:account.move.voucher:0
msgid "Through :"
-msgstr ""
+msgstr "خلال :"
#. module: account
#: view:account.general.journal:0
#: model:ir.ui.menu,name:account.menu_account_general_journal
msgid "General Journals"
-msgstr ""
+msgstr "اليوميات العامة"
#. module: account
#: view:account.model:0
msgid "Journal Entry Model"
-msgstr ""
+msgstr "نموذج قيد اليومية"
#. module: account
#: code:addons/account/wizard/account_use_model.py:44
@@ -8829,7 +8833,7 @@ msgstr ""
#: field:account.invoice,number:0
#: field:account.move,name:0
msgid "Number"
-msgstr ""
+msgstr "رقم"
#. module: account
#: report:account.analytic.account.journal:0
@@ -8837,7 +8841,7 @@ msgstr ""
#: selection:account.bank.statement.line,type:0
#: selection:account.journal,type:0
msgid "General"
-msgstr ""
+msgstr "عام"
#. module: account
#: selection:account.aged.trial.balance,filter:0
@@ -8880,12 +8884,12 @@ msgstr ""
#: model:ir.ui.menu,name:account.next_id_23
#, python-format
msgid "Periods"
-msgstr ""
+msgstr "فترات"
#. module: account
#: field:account.invoice.report,currency_rate:0
msgid "Currency Rate"
-msgstr ""
+msgstr "معدل العملة"
#. module: account
#: help:account.payment.term.line,value_amount:0
@@ -8899,12 +8903,12 @@ msgstr ""
#: selection:report.account.sales,month:0
#: selection:report.account_type.sales,month:0
msgid "April"
-msgstr ""
+msgstr "أبريل/ نيسان"
#. module: account
#: view:account.move.line.reconcile.select:0
msgid "Open for Reconciliation"
-msgstr ""
+msgstr "مفتوح للتسوية"
#. module: account
#: field:account.account,parent_left:0
@@ -8927,13 +8931,13 @@ msgstr ""
#. module: account
#: field:account.installer,sale_tax:0
msgid "Sale Tax(%)"
-msgstr ""
+msgstr "ضريبة المبيعات (%)"
#. module: account
#: model:ir.actions.act_window,name:account.action_invoice_tree2
#: model:ir.ui.menu,name:account.menu_action_invoice_tree2
msgid "Supplier Invoices"
-msgstr "فواتير الموردون"
+msgstr "فواتير الموردين"
#. module: account
#: view:account.analytic.line:0
@@ -8949,7 +8953,7 @@ msgstr "فواتير الموردون"
#: field:report.account.sales,product_id:0
#: field:report.account_type.sales,product_id:0
msgid "Product"
-msgstr ""
+msgstr "منتج"
#. module: account
#: model:ir.actions.act_window,help:account.action_validate_account_move
@@ -8962,17 +8966,17 @@ msgstr ""
#. module: account
#: report:account.tax.code.entries:0
msgid ")"
-msgstr ""
+msgstr ")"
#. module: account
#: model:ir.model,name:account.model_account_period
msgid "Account period"
-msgstr ""
+msgstr "فترة الحساب"
#. module: account
#: view:account.subscription:0
msgid "Remove Lines"
-msgstr ""
+msgstr "إزالة الخطوط"
#. module: account
#: view:account.report.general.ledger:0
@@ -8986,7 +8990,7 @@ msgstr ""
#: selection:account.account.template,type:0
#: selection:account.entries.report,type:0
msgid "Regular"
-msgstr ""
+msgstr "عادي"
#. module: account
#: view:account.account:0
@@ -8995,7 +8999,7 @@ msgstr ""
#: field:account.account.template,type:0
#: field:account.entries.report,type:0
msgid "Internal Type"
-msgstr ""
+msgstr "النوع الداخلي"
#. module: account
#: report:account.move.voucher:0
@@ -9005,14 +9009,14 @@ msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.action_subscription_form_running
msgid "Running Subscriptions"
-msgstr ""
+msgstr "إدارة الإشتراكات"
#. module: account
#: view:report.account.sales:0
#: view:report.account_type.sales:0
#: view:report.hr.timesheet.invoice.journal:0
msgid "This Month"
-msgstr ""
+msgstr "هذا الشهر"
#. module: account
#: view:account.analytic.Journal.report:0
@@ -9021,7 +9025,7 @@ msgstr ""
#: view:account.analytic.inverted.balance:0
#: model:ir.actions.act_window,name:account.action_account_partner_ledger
msgid "Select Period"
-msgstr ""
+msgstr "اختر فترة"
#. module: account
#: view:account.entries.report:0
@@ -9031,7 +9035,7 @@ msgstr ""
#: view:account.move.line:0
#: report:account.move.voucher:0
msgid "Posted"
-msgstr ""
+msgstr "مرحَلة"
#. module: account
#: report:account.account.balance:0
@@ -9060,24 +9064,24 @@ msgstr ""
#: report:account.third_party_ledger_other:0
#: field:account.vat.declaration,date_to:0
msgid "End Date"
-msgstr ""
+msgstr "تاريخ الإنتهاء"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_open_closed_fiscalyear
#: model:ir.ui.menu,name:account.menu_wizard_account_open_closed_fiscalyear
msgid "Cancel Opening Entries"
-msgstr ""
+msgstr "إلغاء القيود المفتوحة"
#. module: account
#: field:account.payment.term.line,days2:0
msgid "Day of the Month"
-msgstr ""
+msgstr "يوم من الشهر"
#. module: account
#: field:account.fiscal.position.tax,tax_src_id:0
#: field:account.fiscal.position.tax.template,tax_src_id:0
msgid "Tax Source"
-msgstr ""
+msgstr "مصدر الضريبة"
#. module: account
#: report:account.balancesheet:0
@@ -9085,23 +9089,23 @@ msgstr ""
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "Net Profit"
-msgstr ""
+msgstr "صافي الربح"
#. module: account
#: view:ir.sequence:0
msgid "Fiscal Year Sequences"
-msgstr ""
+msgstr "مسلسل السنوات المالية"
#. module: account
#: help:account.model,name:0
msgid "This is a model for recurring accounting entries"
-msgstr ""
+msgstr "هذا نموذج لقيود حسابات تكرارية"
#. module: account
#: code:addons/account/account_analytic_line.py:100
#, python-format
msgid "There is no income account defined for this product: \"%s\" (id:%d)"
-msgstr ""
+msgstr "لا يوجد حساب دخل معرّف لهذا المنتج: \"%s\" (id:%d)"
#. module: account
#: report:account.general.ledger:0
@@ -9113,7 +9117,7 @@ msgstr ""
#. module: account
#: view:account.payment.term.line:0
msgid " value amount: 0.02"
-msgstr ""
+msgstr " قيمة المبلغ: 0.02"
#. module: account
#: view:account.fiscalyear:0
@@ -9135,13 +9139,13 @@ msgstr ""
#: field:report.account_type.sales,amount_total:0
#: field:report.invoice.created,amount_total:0
msgid "Total"
-msgstr ""
+msgstr "الإجمالي"
#. module: account
#: code:addons/account/wizard/account_move_journal.py:97
#, python-format
msgid "Journal: All"
-msgstr ""
+msgstr "اليومية: الكل"
#. module: account
#: field:account.account,company_id:0
@@ -9171,22 +9175,22 @@ msgstr ""
#: field:analytic.entries.report,company_id:0
#: field:wizard.multi.charts.accounts,company_id:0
msgid "Company"
-msgstr ""
+msgstr "شركة"
#. module: account
#: model:ir.ui.menu,name:account.menu_action_subscription_form
msgid "Define Recurring Entries"
-msgstr ""
+msgstr "تعريف قيود تكرارية"
#. module: account
#: field:account.entries.report,date_maturity:0
msgid "Date Maturity"
-msgstr ""
+msgstr "تاريخ الإستحقاق"
#. module: account
#: help:account.bank.statement,total_entry_encoding:0
msgid "Total cash transactions"
-msgstr ""
+msgstr "إجمالي معاملات النقدية"
#. module: account
#: help:account.partner.reconcile.process,today_reconciled:0
@@ -9199,7 +9203,7 @@ msgstr ""
#. module: account
#: view:account.fiscalyear:0
msgid "Create Monthly Periods"
-msgstr ""
+msgstr "إنشاء فترات شهرية"
#. module: account
#: field:account.tax.code.template,sign:0
@@ -9209,12 +9213,12 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_balance_report
msgid "Trial Balance Report"
-msgstr ""
+msgstr "تقرير ميزان المراجعة"
#. module: account
#: model:ir.actions.act_window,name:account.action_bank_statement_draft_tree
msgid "Draft statements"
-msgstr ""
+msgstr "قوائم مؤقتة"
#. module: account
#: model:process.transition,note:account.process_transition_statemententries0
@@ -9225,7 +9229,7 @@ msgstr ""
#. module: account
#: view:account.invoice:0
msgid "Invoice lines"
-msgstr ""
+msgstr "سطور الفاتورة"
#. module: account
#: field:account.aged.trial.balance,period_to:0
@@ -9245,7 +9249,7 @@ msgstr ""
#: field:account.report.general.ledger,period_to:0
#: field:account.vat.declaration,period_to:0
msgid "End period"
-msgstr ""
+msgstr "نهاية الفترة"
#. module: account
#: code:addons/account/account_move_line.py:738
@@ -9258,7 +9262,7 @@ msgstr ""
#: code:addons/account/wizard/account_validate_account_move.py:61
#, python-format
msgid "Warning"
-msgstr ""
+msgstr "تحذير"
#. module: account
#: help:product.category,property_account_expense_categ:0
@@ -9271,7 +9275,7 @@ msgstr ""
#. module: account
#: report:account.move.voucher:0
msgid "On Account of :"
-msgstr ""
+msgstr "علي حساب الـ"
#. module: account
#: view:account.automatic.reconcile:0
@@ -9282,17 +9286,17 @@ msgstr "حركة الإعدام"
#. module: account
#: model:process.node,note:account.process_node_paidinvoice0
msgid "Invoice's state is Done"
-msgstr ""
+msgstr "حالة الفاتورة تمت"
#. module: account
#: model:ir.model,name:account.model_report_account_sales
msgid "Report of the Sales by Account"
-msgstr ""
+msgstr "تقرير المبيعات بالحساب"
#. module: account
#: model:ir.model,name:account.model_account_fiscal_position_account
msgid "Accounts Fiscal Position"
-msgstr ""
+msgstr "المركز السنوي للحسابات"
#. module: account
#: report:account.invoice:0
@@ -9302,7 +9306,7 @@ msgstr ""
#: model:process.process,name:account.process_process_supplierinvoiceprocess0
#: selection:report.invoice.created,type:0
msgid "Supplier Invoice"
-msgstr ""
+msgstr "فاتورة المورد"
#. module: account
#: field:account.account,debit:0
@@ -9327,12 +9331,12 @@ msgstr ""
#: report:account.vat.declaration:0
#: field:report.account.receivable,debit:0
msgid "Debit"
-msgstr ""
+msgstr "مدين"
#. module: account
#: field:account.invoice,invoice_line:0
msgid "Invoice Lines"
-msgstr ""
+msgstr "سطور الفاتورة"
#. module: account
#: constraint:account.account.template:0
@@ -9350,28 +9354,28 @@ msgstr ""
#. module: account
#: view:account.subscription:0
msgid "Recurring"
-msgstr ""
+msgstr "متكرّر"
#. module: account
#: code:addons/account/account_move_line.py:805
#, python-format
msgid "Entry is already reconciled"
-msgstr ""
+msgstr "قيد اليومية مسوي بالفعل"
#. module: account
#: model:ir.model,name:account.model_report_account_receivable
msgid "Receivable accounts"
-msgstr ""
+msgstr "حسابات مدينة"
#. module: account
#: selection:account.model.line,date_maturity:0
msgid "Partner Payment Term"
-msgstr ""
+msgstr "شروط السداد للشريك"
#. module: account
#: field:temp.range,name:0
msgid "Range"
-msgstr ""
+msgstr "مدى"
#. module: account
#: code:addons/account/account_move_line.py:1246
@@ -9400,22 +9404,22 @@ msgstr ""
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "With movements"
-msgstr ""
+msgstr "مع حركات"
#. module: account
#: view:account.analytic.account:0
msgid "Account Data"
-msgstr ""
+msgstr "بيانات الحساب"
#. module: account
#: view:account.tax.code.template:0
msgid "Account Tax Code Template"
-msgstr ""
+msgstr "قالب حساب رمز الضريبة"
#. module: account
#: model:process.node,name:account.process_node_manually0
msgid "Manually"
-msgstr ""
+msgstr "يدوي"
#. module: account
#: selection:account.entries.report,month:0
@@ -9424,13 +9428,13 @@ msgstr ""
#: selection:report.account.sales,month:0
#: selection:report.account_type.sales,month:0
msgid "December"
-msgstr ""
+msgstr "ديسمبر/ كانون الأول"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_journal_tree
#: model:ir.ui.menu,name:account.account_analytic_journal_print
msgid "Print Analytic Journals"
-msgstr ""
+msgstr "طباعة اليوميات التحليلية"
#. module: account
#: view:account.analytic.line:0
@@ -9441,18 +9445,18 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_aged_receivable_graph
#: view:report.aged.receivable:0
msgid "Aged Receivable"
-msgstr ""
+msgstr "الدين المشكوك في تحصيله"
#. module: account
#: field:account.tax,applicable_type:0
msgid "Applicability"
-msgstr ""
+msgstr "تطابق"
#. module: account
#: code:addons/account/wizard/account_move_journal.py:165
#, python-format
msgid "This period is already closed !"
-msgstr ""
+msgstr "هذه الفترة مغلقة !"
#. module: account
#: help:account.move.line,currency_id:0
@@ -9468,12 +9472,12 @@ msgstr ""
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_periodical_processing_billing
msgid "Billing"
-msgstr ""
+msgstr "عمليات الفواتير"
#. module: account
#: view:account.account:0
msgid "Parent Account"
-msgstr ""
+msgstr "حساب رئيسي"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_journal_form
@@ -9489,24 +9493,24 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_analytic_chart
msgid "Account Analytic Chart"
-msgstr ""
+msgstr "حساب مخطط تحليلي"
#. module: account
#: help:account.invoice,residual:0
msgid "Remaining amount due."
-msgstr ""
+msgstr "المبلغ المتبقي المستحق"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_statistic_report_statement
msgid "Statistic Reports"
-msgstr ""
+msgstr "تقارير إحصائية"
#. module: account
#: field:account.installer,progress:0
#: field:account.installer.modules,progress:0
#: field:wizard.multi.charts.accounts,progress:0
msgid "Configuration Progress"
-msgstr ""
+msgstr "سير الإعدادات"
#. module: account
#: view:account.fiscal.position.template:0
@@ -9517,7 +9521,7 @@ msgstr ""
#: code:addons/account/invoice.py:346
#, python-format
msgid "Invoice '%s' is waiting for validation."
-msgstr ""
+msgstr "الفاتورة '%s' منتظرة للتحقق."
#. module: account
#: selection:account.entries.report,month:0
@@ -9526,12 +9530,12 @@ msgstr ""
#: selection:report.account.sales,month:0
#: selection:report.account_type.sales,month:0
msgid "November"
-msgstr ""
+msgstr "نوفمبر/تشرين الثاني"
#. module: account
#: model:ir.model,name:account.model_account_installer_modules
msgid "account.installer.modules"
-msgstr ""
+msgstr "account.installer.modules"
#. module: account
#: help:account.invoice.line,account_id:0
@@ -9542,23 +9546,23 @@ msgstr ""
#: code:addons/account/account_move_line.py:1117
#, python-format
msgid "The date of your Journal Entry is not in the defined period!"
-msgstr ""
+msgstr "تاريخ قيد اليومية غير موجود بالفترة المعرفة!"
#. module: account
#: field:account.subscription,period_total:0
msgid "Number of Periods"
-msgstr ""
+msgstr "عدد الفترات"
#. module: account
#: report:account.general.journal:0
#: model:ir.actions.report.xml,name:account.account_general_journal
msgid "General Journal"
-msgstr ""
+msgstr "اليومية العامة"
#. module: account
#: view:account.invoice:0
msgid "Search Invoice"
-msgstr ""
+msgstr "بحث الفواتير"
#. module: account
#: report:account.invoice:0
@@ -9597,7 +9601,7 @@ msgstr "مستندات المحاسبة"
#. module: account
#: model:ir.model,name:account.model_validate_account_move_lines
msgid "Validate Account Move Lines"
-msgstr ""
+msgstr "خطوط التحقق من حركة الحساب"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_cost_ledger_journal
@@ -9857,10 +9861,6 @@ msgstr "خصوم"
#~ msgid "Move line select"
#~ msgstr "تحريك السطر المختار"
-#, python-format
-#~ msgid "The statement balance is incorrect !\n"
-#~ msgstr "رصيد الكشف خطأ\n"
-
#~ msgid "Balance:"
#~ msgstr "الرصيد:"
@@ -9870,3 +9870,10 @@ msgstr "خصوم"
#~ msgid "Balance Sheet (Assets Accounts)"
#~ msgstr "الميزانية العمومية (حسابات الأصول)"
+
+#, python-format
+#~ msgid "The statement balance is incorrect !\n"
+#~ msgstr "رصيد الكشف خاطئ !\n"
+
+#~ msgid "Chart of Account"
+#~ msgstr "شجرة الحساب"
diff --git a/addons/account/i18n/fr.po b/addons/account/i18n/fr.po
index 18f558872bb..62cbf363e3a 100644
--- a/addons/account/i18n/fr.po
+++ b/addons/account/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:14+0000\n"
-"PO-Revision-Date: 2011-11-07 12:53+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-11-25 15:24+0000\n"
+"Last-Translator: Numérigraphe \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-08 05:42+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-11-26 05:50+0000\n"
+"X-Generator: Launchpad (build 14381)\n"
#. module: account
#: code:addons/account/account.py:1291
@@ -584,8 +584,6 @@ msgstr ""
#: field:account.move.bank.reconcile,journal_id:0
#: view:account.move.line:0
#: field:account.move.line,journal_id:0
-#: report:account.third_party_ledger:0
-#: report:account.third_party_ledger_other:0
#: code:addons/account/account_move_line.py:983
#: view:analytic.entries.report:0
#: field:analytic.entries.report,journal_id:0
@@ -968,7 +966,6 @@ msgstr "Créer des périodes trimestrielles"
#. module: account
#: report:account.overdue:0
-#: report:account.aged_trial_balance:0
msgid "Due"
msgstr "Due"
@@ -1063,10 +1060,6 @@ msgstr "Modèle d'écritures"
#: field:account.journal,code:0
#: report:account.partner.balance:0
#: field:account.period,code:0
-#: report:account.balancesheet.horizontal:0
-#: report:account.balancesheet:0
-#: report:pl.account.horizontal:0
-#: report:pl.account:0
msgid "Code"
msgstr "Code"
@@ -1396,7 +1389,6 @@ msgstr "Analyse des écritures comptables"
#. module: account
#: model:ir.actions.act_window,name:account.action_partner_all
#: model:ir.ui.menu,name:account.next_id_22
-#: report:account.aged_trial_balance:0
msgid "Partners"
msgstr "Partenaires"
@@ -2196,7 +2188,7 @@ msgstr ""
#. module: account
#: view:account.chart.template:0
-msgid "Search Chart of Accounts Templates"
+msgid "Search Chart of Account Templates"
msgstr "Chercher un modèle de plan comptable"
#. module: account
@@ -2305,11 +2297,6 @@ msgstr "Modèle de produit"
#: report:account.third_party_ledger_other:0
#: report:account.vat.declaration:0
#: model:ir.model,name:account.model_account_fiscalyear
-#: report:account.balancesheet.horizontal:0
-#: report:account.balancesheet:0
-#: report:pl.account.horizontal:0
-#: report:pl.account:0
-#: report:account.aged_trial_balance:0
msgid "Fiscal Year"
msgstr "Exercice comptable"
@@ -3187,9 +3174,7 @@ msgstr "Laisser vide pour utiliser le compte de dépense"
#: field:account.common.report,journal_ids:0
#: report:account.general.journal:0
#: field:account.general.journal,journal_ids:0
-#: report:account.general.ledger_landscape:0
#: view:account.journal.period:0
-#: report:account.partner.balance:0
#: field:account.partner.balance,journal_ids:0
#: field:account.partner.ledger,journal_ids:0
#: field:account.pl.report,journal_ids:0
@@ -3550,7 +3535,6 @@ msgstr ""
#: field:account.entries.report,date:0
#: selection:account.general.journal,filter:0
#: report:account.general.ledger:0
-#: report:account.general.ledger_landscape:0
#: field:account.invoice.report,date:0
#: report:account.journal.period.print:0
#: view:account.move:0
@@ -4852,7 +4836,6 @@ msgstr "Balance Analytique -"
#: report:account.general.ledger_landscape:0
#: report:pl.account:0
#: report:pl.account.horizontal:0
-#: report:account.aged_trial_balance:0
msgid "Target Moves"
msgstr "Mouvements Cibles"
@@ -5521,7 +5504,7 @@ msgstr "Ajustement"
#. module: account
#: field:res.partner,debit:0
msgid "Total Payable"
-msgstr "Montant à payer"
+msgstr "Total à payer"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_account_line_extended_form
@@ -5687,16 +5670,6 @@ msgstr "La nouvelle devise n'est pas correctement paramétrée !"
#: field:account.print.journal,filter:0
#: field:account.report.general.ledger,filter:0
#: field:account.vat.declaration,filter:0
-#: field:account.account.balance,filter:0
-#: field:account.central.journal,filter:0
-#: field:account.general.journal,filter:0
-#: field:account.partner.balance,filter:0
-#: field:account.balancesheet,filter:0
-#: field:account.balancesheet.horizontal,filter:0
-#: field:account.general.ledger,filter:0
-#: field:account.general.ledger_landscape,filter:0
-#: field:pl.account,filter:0
-#: field:pl.account.horizontal,filter:0
msgid "Filter by"
msgstr "Filtrer par"
@@ -6569,7 +6542,6 @@ msgstr " valorisation : pourcentage"
#: code:addons/account/invoice.py:1008
#: code:addons/account/wizard/account_invoice_refund.py:100
#: code:addons/account/wizard/account_invoice_refund.py:102
-#: code:addons/account/wizard/account_open_closed_fiscalyear.py:40
#: code:addons/account/wizard/account_use_model.py:44
#, python-format
msgid "Error !"
@@ -6712,7 +6684,6 @@ msgstr "Position fiscale des taxes"
#: view:account.report.general.ledger:0
#: model:ir.actions.act_window,name:account.action_account_general_ledger_menu
#: model:ir.actions.report.xml,name:account.account_general_ledger
-#: model:ir.actions.report.xml,name:account.account_general_ledger_landscape
#: model:ir.ui.menu,name:account.menu_general_ledger
msgid "General Ledger"
msgstr "Grand livre"
@@ -6748,8 +6719,8 @@ msgid ""
"Account Voucher module includes all the basic requirements of Voucher "
"Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... "
msgstr ""
-"Le module Chèques comprend toutes les fonctionnalités de base pour la "
-"Banque, la trésorerie, les ventes, les achats, les frais, etc. "
+"Le module \"Justificatifs\" comprend toutes les fonctionnalités de base pour "
+"la Banque, la trésorerie, les ventes, les achats, les frais, etc. "
#. module: account
#: view:account.chart.template:0
@@ -6768,8 +6739,6 @@ msgstr "Plan de taxes comptables"
#: report:account.general.journal:0
#: report:account.invoice:0
#: report:account.partner.balance:0
-#: report:pl.account.horizontal:0
-#: report:pl.account:0
msgid "Total:"
msgstr "Total :"
@@ -6979,7 +6948,7 @@ msgstr "Lignes analytiques"
#: model:ir.actions.act_window,help:account.action_account_analytic_account_tree2
msgid ""
"The normal chart of accounts has a structure defined by the legal "
-"requirement of the country. The analytic chart of accounts structure should "
+"requirement of the country. The analytic chart of account structure should "
"reflect your own business needs in term of costs/revenues reporting. They "
"are usually structured by contracts, projects, products or departements. "
"Most of the OpenERP operations (invoices, timesheets, expenses, etc) "
@@ -7384,7 +7353,6 @@ msgstr "Information optionnelle"
#. module: account
#: view:account.analytic.line:0
-#: field:account.bank.statement,user_id:0
#: view:account.journal:0
#: field:account.journal,user_id:0
#: view:analytic.entries.report:0
@@ -7981,7 +7949,6 @@ msgstr "Gestion de la comptabilité et des finances"
#: view:account.entries.report:0
#: field:account.entries.report,period_id:0
#: view:account.fiscalyear:0
-#: report:account.general.ledger_landscape:0
#: view:account.invoice:0
#: view:account.invoice.report:0
#: field:account.journal.period,period_id:0
@@ -8102,21 +8069,6 @@ msgstr "Tél. :"
msgid "Company Currency"
msgstr "Devise société"
-#. module: account
-#: report:account.account.balance:0
-#: report:account.partner.balance:0
-#: report:account.third_party_ledger:0
-#: report:account.third_party_ledger_other:0
-#: report:account.balancesheet:0
-#: report:account.balancesheet.horizontal:0
-#: report:account.general.ledger:0
-#: report:account.general.ledger_landscape:0
-#: report:pl.account:0
-#: report:pl.account.horizontal:0
-#: report:account.aged_trial_balance:0
-msgid "Chart of Accounts"
-msgstr "Plan comptable"
-
#. module: account
#: model:process.node,name:account.process_node_paymententries0
#: model:process.transition,name:account.process_transition_reconcilepaid0
@@ -8233,7 +8185,6 @@ msgstr "Journal d'avoirs"
#: report:account.account.balance:0
#: report:account.central.journal:0
#: report:account.general.journal:0
-#: report:account.general.ledger_landscape:0
#: report:account.partner.balance:0
#: report:account.balancesheet:0
#: report:account.balancesheet.horizontal:0
@@ -8298,7 +8249,7 @@ msgstr ""
#. module: account
#: field:account.invoice.line,price_subtotal:0
msgid "Subtotal"
-msgstr "Sous total"
+msgstr "Sous-total"
#. module: account
#: view:account.vat.declaration:0
@@ -8319,12 +8270,6 @@ msgstr "Modèle de pièce comptable"
msgid "Due Date"
msgstr "Date d'échéance"
-#. module: account
-#: view:account.print.invoice:0
-#: field:account.print.invoice,date_due:0
-msgid "Due Date"
-msgstr "Echéance"
-
#. module: account
#: model:ir.ui.menu,name:account.menu_account_supplier
#: model:ir.ui.menu,name:account.menu_finance_payables
@@ -8461,8 +8406,6 @@ msgid ""
"The amount of the voucher must be the same amount as the one on the "
"statement line"
msgstr ""
-"Le montant du justificatif doit être identique à celui de la ligne le "
-"concernant"
#. module: account
#: code:addons/account/account_move_line.py:1131
@@ -8838,7 +8781,6 @@ msgstr "Impossible de trouver le code parent pour le compte modèle !"
#. module: account
#: field:account.aged.trial.balance,direction_selection:0
-#: report:account.aged_trial_balance:0
msgid "Analysis Direction"
msgstr "Direction d'Analyse"
@@ -8969,10 +8911,6 @@ msgstr "Laisser vide pour utiliser le compte de revenu"
#: report:account.third_party_ledger_other:0
#: field:report.account.receivable,balance:0
#: field:report.aged.receivable,balance:0
-#: report:account.balancesheet.horizontal:0
-#: report:account.balancesheet:0
-#: report:pl.account.horizontal:0
-#: report:pl.account:0
msgid "Balance"
msgstr "Balance"
@@ -9024,7 +8962,7 @@ msgstr ""
#: selection:account.account.template,type:0
#: selection:account.entries.report,type:0
msgid "Payable"
-msgstr "Débiteurs"
+msgstr "Payable"
#. module: account
#: view:report.account.sales:0
@@ -9123,7 +9061,6 @@ msgstr "Saisie manuelle"
#. module: account
#: report:account.general.ledger:0
-#: report:account.general.ledger_landscape:0
#: report:account.journal.period.print:0
#: field:account.move.line,move_id:0
#: field:analytic.entries.report,move_id:0
@@ -9203,7 +9140,7 @@ msgstr "Juillet"
#. module: account
#: view:account.account:0
-msgid "Chart of Accounts"
+msgid "Chart of accounts"
msgstr "Plan comptable"
#. module: account
@@ -9250,7 +9187,7 @@ msgstr "Période de fin"
#: field:account.print.journal,chart_account_id:0
#: field:account.report.general.ledger,chart_account_id:0
#: field:account.vat.declaration,chart_account_id:0
-msgid "Chart of Accounts"
+msgid "Chart of account"
msgstr "Plan comptable"
#. module: account
@@ -9298,7 +9235,6 @@ msgstr "Écriture d'abonnement"
#: report:account.general.journal:0
#: field:account.general.journal,date_from:0
#: report:account.general.ledger:0
-#: report:account.general.ledger_landscape:0
#: field:account.installer,date_start:0
#: report:account.journal.period.print:0
#: report:account.partner.balance:0
@@ -9311,7 +9247,6 @@ msgstr "Écriture d'abonnement"
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
#: field:account.vat.declaration,date_from:0
-#: report:account.aged_trial_balance:0
msgid "Start Date"
msgstr "Date de début"
@@ -9508,7 +9443,7 @@ msgstr ""
#: field:account.invoice,number:0
#: field:account.move,name:0
msgid "Number"
-msgstr "Nombre"
+msgstr "Numéro"
#. module: account
#: report:account.analytic.account.journal:0
@@ -9736,7 +9671,6 @@ msgstr "Validé"
#: report:account.general.journal:0
#: field:account.general.journal,date_to:0
#: report:account.general.ledger:0
-#: report:account.general.ledger_landscape:0
#: field:account.installer,date_stop:0
#: report:account.journal.period.print:0
#: report:account.partner.balance:0
@@ -9824,7 +9758,6 @@ msgstr "États"
#: field:report.account.sales,amount_total:0
#: field:report.account_type.sales,amount_total:0
#: field:report.invoice.created,amount_total:0
-#: report:account.aged_trial_balance:0
msgid "Total"
msgstr "Total"
@@ -10259,7 +10192,7 @@ msgstr "La date de la pièce comptable n'est pas dans la période définie."
#. module: account
#: field:account.subscription,period_total:0
msgid "Number of Periods"
-msgstr "Nombre de Périodes"
+msgstr "Nombre de périodes"
#. module: account
#: report:account.general.journal:0
@@ -10355,7 +10288,6 @@ msgstr "account.addtmpl.wizard"
#: field:account.partner.ledger,result_selection:0
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
-#: report:account.aged_trial_balance:0
msgid "Partner's"
msgstr "Du partenaire"
@@ -10507,18 +10439,6 @@ msgstr "Actif"
msgid "Liabilities"
msgstr "Passif"
-#. module: account
-#: report:pl.account:0
-#: report:pl.account.horizontal:0
-msgid "Expenses"
-msgstr "Charges"
-
-#. module: account
-#: report:pl.account:0
-#: report:pl.account.horizontal:0
-msgid "Income"
-msgstr "Produits"
-
#~ msgid "Aged Trial Balance"
#~ msgstr "Balance Agée"
@@ -10757,6 +10677,9 @@ msgstr "Produits"
#~ msgid "Close states"
#~ msgstr "Clôturer l'état"
+#~ msgid "Income"
+#~ msgstr "Produits"
+
#~ msgid "Print General Journal"
#~ msgstr "Imprimer le journal général"
@@ -11822,7 +11745,7 @@ msgstr "Produits"
#~ msgid "Balance Sheet (Assets Accounts)"
#~ msgstr "Bilan (comptes d'actif)"
-#~ msgid "Chart of Accounts"
+#~ msgid "Chart of Account"
#~ msgstr "Plan comptable"
#~ msgid "Balance:"
diff --git a/addons/account/i18n/hr.po b/addons/account/i18n/hr.po
index 9ff165ef150..5f6c47d7d0b 100644
--- a/addons/account/i18n/hr.po
+++ b/addons/account/i18n/hr.po
@@ -7,19 +7,19 @@ 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: 2011-11-07 12:52+0000\n"
+"PO-Revision-Date: 2011-12-08 15:12+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-08 05:45+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
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
msgid "System payment"
-msgstr "Poredak plaćanja"
+msgstr "System payment"
#. module: account
#: view:account.journal:0
@@ -39,12 +39,13 @@ msgid ""
"You cannot remove/deactivate an account which is set as a property to any "
"Partner."
msgstr ""
-"Ne možete obrisati/deaktivirati konto koji se koristi kao obilježje partnera."
+"Konto se koristi kao obilježje partnera, te se ne može brisati ili "
+"deaktivirati."
#. module: account
#: view:account.move.reconcile:0
msgid "Journal Entry Reconcile"
-msgstr "Zatvaranje stavke dnevnika"
+msgstr "Zatvaranje stavke dnevnika(IOS)"
#. module: account
#: field:account.installer.modules,account_voucher:0
@@ -69,7 +70,7 @@ msgstr "Ostatak"
#: code:addons/account/invoice.py:785
#, python-format
msgid "Please define sequence on invoice journal"
-msgstr "Definirajte brojač na dnevniku računa"
+msgstr "Definirajte brojčanu seriju na dnevniku računa"
#. module: account
#: constraint:account.period:0
@@ -126,6 +127,8 @@ msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disabled"
msgstr ""
+"Ako otvarate stavke, morate provjeriti/provesti i sve ostale vezane akcije i "
+"stanja."
#. module: account
#: report:account.tax.code.entries:0
@@ -152,7 +155,7 @@ msgstr "Izvor"
#: view:account.move.line.reconcile:0
#: view:account.move.line.reconcile.writeoff:0
msgid "Reconcile"
-msgstr "Zatvaranje"
+msgstr "Zatvaranje IOS-a"
#. module: account
#: field:account.bank.statement.line,ref:0
@@ -216,8 +219,8 @@ msgid ""
"invoice) to create analytic entries, OpenERP will look for a matching "
"journal of the same type."
msgstr ""
-"Tip analitičkog dnevnika. Kada je potrebno kreirati analitičke stavke "
-"koristit će se dnevnik odgovarajućeg tipa."
+"Tip analitičkog dnevnika. Kod kreiranja analitičkih knjiženja koristi se "
+"ovdje definirani analitički dnevnik odgovarajućeg tipa."
#. module: account
#: model:ir.actions.act_window,name:account.action_account_tax_template_form
@@ -269,12 +272,12 @@ msgstr "Račun '%s' je djelomično plaćen: %s%s od %s%s (%s%s preostalo)"
#. module: account
#: model:process.transition,note:account.process_transition_supplierentriesreconcile0
msgid "Accounting entries are an input of the reconciliation."
-msgstr ""
+msgstr "Accounting entries are an input of the reconciliation."
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_management_belgian_reports
msgid "Belgian Reports"
-msgstr ""
+msgstr "Belgian Reports"
#. module: account
#: code:addons/account/account_move_line.py:1176
@@ -307,7 +310,7 @@ msgstr "Dozvoli otpis"
#. module: account
#: view:account.analytic.chart:0
msgid "Select the Period for Analysis"
-msgstr "Odaberite period analize"
+msgstr "Odaberite razdoblje analize"
#. module: account
#: view:account.move.line:0
@@ -318,7 +321,7 @@ msgstr "St."
#: code:addons/account/invoice.py:529
#, python-format
msgid "Invoice line account company does not match with invoice company."
-msgstr "Konto na retku računa ne pripada tvrtci sa zaglavlja računa."
+msgstr "Konto na stavci računa ne pripada organizaciji sa zaglavlja računa."
#. module: account
#: field:account.journal.column,field:0
@@ -330,7 +333,8 @@ msgstr "Naziv polja"
msgid ""
"Installs localized accounting charts to match as closely as possible the "
"accounting needs of your company based on your country."
-msgstr "Instalira lokalizirani kontni plan prema potrebama vaše kompanije."
+msgstr ""
+"Instalira lokalizirani kontni plan prema potrebama vaše organizacije."
#. module: account
#: code:addons/account/wizard/account_move_journal.py:63
@@ -341,17 +345,21 @@ msgid ""
"You can create one in the menu: \n"
"Configuration/Financial Accounting/Accounts/Journals."
msgstr ""
+"Can't find any account journal of %s type for this company.\n"
+"\n"
+"You can create one in the menu: \n"
+"Configuration/Financial Accounting/Accounts/Journals."
#. module: account
#: model:ir.model,name:account.model_account_unreconcile
msgid "Account Unreconcile"
-msgstr ""
+msgstr "Account Unreconcile"
#. module: account
#: view:product.product:0
#: view:product.template:0
msgid "Purchase Properties"
-msgstr "Nabava"
+msgstr "Svojstva nabave"
#. module: account
#: view:account.installer:0
@@ -375,11 +383,14 @@ msgid ""
"OpenERP. Journal items are created by OpenERP if you use Bank Statements, "
"Cash Registers, or Customer/Supplier payments."
msgstr ""
+"This view is used by accountants in order to record entries massively in "
+"OpenERP. Journal items are created by OpenERP if you use Bank Statements, "
+"Cash Registers, or Customer/Supplier payments."
#. module: account
#: model:ir.model,name:account.model_account_tax_template
msgid "account.tax.template"
-msgstr "account.tax.template"
+msgstr "račun.porez.predložak"
#. module: account
#: model:ir.model,name:account.model_account_bank_accounts_wizard
@@ -395,7 +406,7 @@ msgstr "Datum kreiranja"
#. module: account
#: selection:account.journal,type:0
msgid "Purchase Refund"
-msgstr "Povrat nabave"
+msgstr "Odobrenja nabave"
#. module: account
#: selection:account.journal,type:0
@@ -418,6 +429,8 @@ msgid ""
"This field contains the informatin related to the numbering of the journal "
"entries of this journal."
msgstr ""
+"Brojčana serija koja će se koristiti za odbrojavanje dokumenata ovog "
+"dnevnika."
#. module: account
#: field:account.journal,default_debit_account_id:0
@@ -437,7 +450,7 @@ msgstr "Pozitivan"
#. module: account
#: view:account.move.line.unreconcile.select:0
msgid "Open For Unreconciliation"
-msgstr "Otvoreno za otvaranje"
+msgstr "Otvori za otvaranje IOS-a"
#. module: account
#: field:account.fiscal.position.template,chart_template_id:0
@@ -449,7 +462,7 @@ msgstr "Predložak kontnog plana"
#. module: account
#: help:account.model.line,amount_currency:0
msgid "The amount expressed in an optional other currency."
-msgstr "Iznos je predstavljen opciono u drugoj valuti"
+msgstr "Iznos u drugoj valuti"
#. module: account
#: help:account.journal.period,state:0
@@ -458,6 +471,9 @@ msgid ""
"it comes to 'Printed' state. When all transactions are done, it comes in "
"'Done' state."
msgstr ""
+"When journal period is created. The state is 'Draft'. If a report is printed "
+"it comes to 'Printed' state. When all transactions are done, it comes in "
+"'Done' state."
#. module: account
#: model:ir.actions.act_window,help:account.action_account_tax_chart
@@ -467,6 +483,10 @@ msgid ""
"amount of each area of the tax declaration for your country. It’s presented "
"in a hierarchical structure, which can be modified to fit your needs."
msgstr ""
+"Stablo poreza prikazuje strukturu poreznih grupa sa vrijednostima osnovica i "
+"poreza. Jedno stablo sadrži strukturu osnovica i poreza za prijavu PDV-a, a "
+"druga možete prilagođavati vašim potrebama i prikazivati druge poreze, "
+"trošarine ili npr. ugovorene provizije prodavačima."
#. module: account
#: view:account.analytic.line:0
@@ -503,7 +523,7 @@ msgstr "Dnevnik"
#. module: account
#: model:ir.model,name:account.model_account_invoice_confirm
msgid "Confirm the selected invoices"
-msgstr "Potvrda odabranih računa"
+msgstr "Potvrdi odabrane račune"
#. module: account
#: field:account.addtmpl.wizard,cparent_id:0
@@ -542,12 +562,12 @@ msgstr "Porezi nabave"
#. module: account
#: model:ir.model,name:account.model_account_invoice_refund
msgid "Invoice Refund"
-msgstr "Povrat računa"
+msgstr "Računi odobrenja"
#. module: account
#: report:account.overdue:0
msgid "Li."
-msgstr ""
+msgstr "Li."
#. module: account
#: field:account.automatic.reconcile,unreconciled:0
@@ -616,7 +636,7 @@ msgstr " 30 Dana "
#. module: account
#: field:ir.sequence,fiscal_ids:0
msgid "Sequences"
-msgstr "Sekvence"
+msgstr "Brojčane serije"
#. module: account
#: view:account.fiscal.position.template:0
@@ -626,17 +646,17 @@ msgstr "Mapiranje poreza"
#. module: account
#: report:account.central.journal:0
msgid "Centralized Journal"
-msgstr ""
+msgstr "Centralized Journal"
#. module: account
#: sql_constraint:account.sequence.fiscalyear:0
msgid "Main Sequence must be different from current !"
-msgstr ""
+msgstr "Glavna serija mora biti različita od trenutne !"
#. module: account
#: field:account.invoice.tax,tax_amount:0
msgid "Tax Code Amount"
-msgstr "Iznos poreza"
+msgstr "Iznos porezne grupe"
#. module: account
#: code:addons/account/account.py:2779
@@ -648,18 +668,18 @@ msgstr "IRA"
#. module: account
#: help:account.bank.statement,balance_end_real:0
msgid "closing balance entered by the cashbox verifier"
-msgstr ""
+msgstr "closing balance entered by the cashbox verifier"
#. module: account
#: view:account.period:0
#: view:account.period.close:0
msgid "Close Period"
-msgstr "Zatvori period"
+msgstr "Zatvori razdoblje"
#. module: account
#: model:ir.model,name:account.model_account_common_partner_report
msgid "Account Common Partner Report"
-msgstr ""
+msgstr "Račun Zajednički Partner Izvješće"
#. module: account
#: field:account.fiscalyear.close,period_id:0
@@ -676,7 +696,7 @@ msgstr "Period dnevnika"
#: code:addons/account/account_move_line.py:776
#, python-format
msgid "To reconcile the entries company should be the same for all entries"
-msgstr "Sve stavke zatvaranja moraju biti iz iste trvtke"
+msgstr "Sve stavke zatvaranja moraju biti iz iste organizacije"
#. module: account
#: view:account.account:0
@@ -713,7 +733,7 @@ msgstr "Čekovi"
#. module: account
#: field:account.partner.reconcile.process,today_reconciled:0
msgid "Partners Reconciled Today"
-msgstr "Danas zatvoreni partneri"
+msgstr "Danas zatvoreni partneri (IOS-i)"
#. module: account
#: selection:account.payment.term.line,value:0
@@ -737,7 +757,7 @@ msgstr "Analitičke stavke"
#: code:addons/account/wizard/account_change_currency.py:39
#, python-format
msgid "You can only change currency for Draft Invoice !"
-msgstr ""
+msgstr "Valuta se može mijenjati samo na računima u stanju 'Nacrt'!"
#. module: account
#: view:account.analytic.journal:0
@@ -751,7 +771,7 @@ msgstr ""
#: field:account.move.reconcile,type:0
#: field:report.invoice.created,type:0
msgid "Type"
-msgstr "Tip"
+msgstr "Vrsta"
#. module: account
#: model:ir.model,name:account.model_account_subscription_line
@@ -761,7 +781,7 @@ msgstr "Retci knjiženja pretplate"
#. module: account
#: help:account.invoice,reference:0
msgid "The partner reference of this invoice."
-msgstr "Vezna oznaka partnera za ovaj račun(poziv na broj)."
+msgstr "Poziv na broj."
#. module: account
#: view:account.move.line.unreconcile.select:0
@@ -769,7 +789,7 @@ msgstr "Vezna oznaka partnera za ovaj račun(poziv na broj)."
#: view:account.unreconcile.reconcile:0
#: model:ir.model,name:account.model_account_move_line_unreconcile_select
msgid "Unreconciliation"
-msgstr "Poništavanje zatvaranja"
+msgstr "Poništavanje zatvaranja IOS-a"
#. module: account
#: model:ir.model,name:account.model_account_analytic_Journal_report
@@ -789,7 +809,7 @@ msgstr "Izračun valute plaćanja"
#. module: account
#: report:account.analytic.account.quantity_cost_ledger:0
msgid "J.C./Move name"
-msgstr ""
+msgstr "J.C./Move name"
#. module: account
#: selection:account.entries.report,month:0
@@ -809,7 +829,7 @@ msgstr "dana"
#: help:account.account.template,nocreate:0
msgid ""
"If checked, the new chart of accounts will not contain this by default."
-msgstr ""
+msgstr "Ako je označeno, novi računski plan neće sadržavati ove po defaultu."
#. module: account
#: code:addons/account/wizard/account_invoice_refund.py:102
@@ -908,12 +928,12 @@ msgstr "Prošireni filtri..."
#. module: account
#: model:ir.ui.menu,name:account.menu_account_central_journal
msgid "Centralizing Journal"
-msgstr ""
+msgstr "Centralizirani dnevnik"
#. module: account
#: selection:account.journal,type:0
msgid "Sale Refund"
-msgstr "Povrat prodaje"
+msgstr "Odobrenje kupcu"
#. module: account
#: model:process.node,note:account.process_node_accountingstatemententries0
@@ -936,7 +956,7 @@ msgstr "Porez ili osnovica poreza ovisno o poreznoj grupi."
#. module: account
#: view:account.analytic.line:0
msgid "Purchases"
-msgstr "Nabave"
+msgstr "Nabava"
#. module: account
#: field:account.model,lines_id:0
@@ -1001,7 +1021,7 @@ msgstr "Tjedan"
#: field:account.pl.report,display_type:0
#: field:account.report.general.ledger,landscape:0
msgid "Landscape Mode"
-msgstr "Prosireni način"
+msgstr "Položeno (Landscape)"
#. module: account
#: view:board.board:0
@@ -1020,6 +1040,8 @@ msgid ""
"These types are defined according to your country. The type contains more "
"information about the account and its specificities."
msgstr ""
+"These types are defined according to your country. The type contains more "
+"information about the account and its specificities."
#. module: account
#: view:account.tax:0
@@ -1079,7 +1101,7 @@ msgstr "Potvrdi izvod"
#: field:account.fiscal.position.tax,tax_dest_id:0
#: field:account.fiscal.position.tax.template,tax_dest_id:0
msgid "Replacement Tax"
-msgstr "Promenljiv porez"
+msgstr "Zamjenski porez"
#. module: account
#: selection:account.move.line,centralisation:0
@@ -1094,11 +1116,15 @@ msgid ""
"purchase orders or receipts. This way, you can control the invoice from your "
"supplier according to what you purchased or received."
msgstr ""
+"With Supplier Invoices you can enter and manage invoices issued by your "
+"suppliers. OpenERP can also generate draft invoices automatically from "
+"purchase orders or receipts. This way, you can control the invoice from your "
+"supplier according to what you purchased or received."
#. module: account
#: view:account.invoice.cancel:0
msgid "Cancel Invoices"
-msgstr ""
+msgstr "Otkaži račune"
#. module: account
#: view:account.unreconcile.reconcile:0
@@ -1111,7 +1137,7 @@ msgstr "Transakcije poništavanja zatvaranja"
#: field:account.tax.template,tax_code_id:0
#: model:ir.model,name:account.model_account_tax_code
msgid "Tax Code"
-msgstr "Šifra poreza"
+msgstr "Porezna grupa"
#. module: account
#: field:account.account,currency_mode:0
@@ -1126,7 +1152,7 @@ msgstr "Temeljnica"
#. module: account
#: field:account.move.line.reconcile,trans_nbr:0
msgid "# of Transaction"
-msgstr "Broj transakcija"
+msgstr "# transakcija"
#. module: account
#: report:account.general.ledger:0
@@ -1147,7 +1173,7 @@ msgstr "Ne možete mjenjati/brisati dnevnike sa stavkama za ovo razdoblje!"
#: help:account.invoice,origin:0
#: help:account.invoice.line,origin:0
msgid "Reference of the document that produced this invoice."
-msgstr "Vezna oznaka dokumenta koji je stvorio ovaj račun."
+msgstr "Oznaka izvornog dokumenta koji je kreirao ovaj račun."
#. module: account
#: view:account.analytic.line:0
@@ -1185,7 +1211,7 @@ msgstr "Konto"
#. module: account
#: field:account.tax,include_base_amount:0
msgid "Included in base amount"
-msgstr "Uključeno u iznos osnovice"
+msgstr "Uključeno u osnovicu"
#. module: account
#: view:account.entries.report:0
@@ -1257,7 +1283,7 @@ msgstr "Početni saldo"
#. module: account
#: view:account.invoice:0
msgid "Reset to Draft"
-msgstr "Vrati u pripremu"
+msgstr "Vrati u nacrt"
#. module: account
#: view:wizard.multi.charts.accounts:0
@@ -1309,7 +1335,7 @@ msgstr "Glavni dnevnik"
#: code:addons/account/account_move_line.py:1271
#, python-format
msgid "You can not use this general account in this journal !"
-msgstr "Ne možete koristiti odabrani opći konto u ovon dnevniku!"
+msgstr "Ne možete koristiti odabrani opći konto u ovom dnevniku!"
#. module: account
#: selection:account.balance.report,display_account:0
@@ -1339,7 +1365,7 @@ msgstr "Traži poreze"
#. module: account
#: model:ir.model,name:account.model_account_analytic_cost_ledger
msgid "Account Analytic Cost Ledger"
-msgstr ""
+msgstr "Account Analytic Cost Ledger"
#. module: account
#: view:account.model:0
@@ -1359,7 +1385,7 @@ msgstr "Maksimalni iznos otpisa"
#. module: account
#: view:account.invoice:0
msgid "Compute Taxes"
-msgstr "Izračunaj poreze"
+msgstr "Iz_računaj poreze"
#. module: account
#: field:wizard.multi.charts.accounts,code_digits:0
@@ -1369,7 +1395,7 @@ msgstr "Broj znamenki"
#. module: account
#: field:account.journal,entry_posted:0
msgid "Skip 'Draft' State for Manual Entries"
-msgstr "Preskoči stanje 'Priprema' za ručni upis"
+msgstr "Preskoči stanje 'Nacrt' za ručni upis"
#. module: account
#: view:account.invoice.report:0
@@ -1385,6 +1411,9 @@ msgid ""
"entry per accounting document: invoice, refund, supplier payment, bank "
"statements, etc."
msgstr ""
+"Temeljnica sadrži više knjigovodstvenih stavaka od kojih je svaka dugovna "
+"ili potražna transakcija. OpenERP automatski kreira jednu temeljnicu za "
+"jedan knjigovodstveni dokument: račun, plaćanje, izvod, itd."
#. module: account
#: view:account.entries.report:0
@@ -1406,7 +1435,7 @@ msgstr "Povrat dobavljaču"
#: view:account.payment.term.line:0
msgid ""
"Example: at 14 net days 2 percents, remaining amount at 30 days end of month."
-msgstr ""
+msgstr "Primjer: za 14 dana 2%, ostatak za 30 dana ili do kraja mjeseca."
#. module: account
#: code:addons/account/invoice.py:815
@@ -1416,6 +1445,8 @@ msgid ""
"The payment term defined gives a computed amount greater than the total "
"invoiced amount."
msgstr ""
+"Račun nije kreiran !\n"
+"Uvjeti plaćanja daju iznos veći od ukupnog iznosa računa."
#. module: account
#: field:account.installer.modules,account_anglo_saxon:0
@@ -1477,7 +1508,7 @@ msgstr "Grupe"
#: field:account.invoice,amount_untaxed:0
#: field:report.invoice.created,amount_untaxed:0
msgid "Untaxed"
-msgstr "Bez poreza"
+msgstr "Osnovica"
#. module: account
#: view:account.partner.reconcile.process:0
@@ -1494,6 +1525,8 @@ msgstr "Traži izvode banke"
msgid ""
"Wrong credit or debit value in model (Credit + Debit Must Be greater \"0\")!"
msgstr ""
+"Pogrešno kreditna ili debitna vrijednost u modelu (Kreditna + debitna mora "
+"biti veći \"0 \")!"
#. module: account
#: view:account.chart.template:0
@@ -1505,7 +1538,7 @@ msgstr "Konto obveza"
#: field:account.tax,account_paid_id:0
#: field:account.tax.template,account_paid_id:0
msgid "Refund Tax Account"
-msgstr "Konto povrata poreza"
+msgstr "Konto poreza za odobrenja"
#. module: account
#: view:account.bank.statement:0
@@ -1523,6 +1556,12 @@ msgid ""
"the Payment column of a line, you can press F1 to open the reconciliation "
"form."
msgstr ""
+"A bank statement is a summary of all financial transactions occurring over a "
+"given period of time on a deposit account, a credit card or any other type "
+"of financial account. The starting balance will be proposed automatically "
+"and the closing balance is to be found on your statement. When you are in "
+"the Payment column of a line, you can press F1 to open the reconciliation "
+"form."
#. module: account
#: report:account.analytic.account.cost_ledger:0
@@ -1565,7 +1604,7 @@ msgstr "Brojač fiskalne godine"
#. module: account
#: field:wizard.multi.charts.accounts,seq_journal:0
msgid "Separated Journal Sequences"
-msgstr "Odvojene sekvence dnevnika"
+msgstr "Odvojeni brojači dnevnika"
#. module: account
#: field:account.bank.statement,user_id:0
@@ -1589,6 +1628,8 @@ msgid ""
"Cancel Invoice: Creates the refund invoice, validate and reconcile it to "
"cancel the current invoice."
msgstr ""
+"Storniraj račun: Kreira storno računa, potvrđuje ga i zatvara sa ovim "
+"računom."
#. module: account
#: model:ir.ui.menu,name:account.periodical_processing_invoicing
@@ -1598,7 +1639,7 @@ msgstr "Fakturiranje"
#. module: account
#: field:account.chart.template,tax_code_root_id:0
msgid "Root Tax Code"
-msgstr "Šifra korijenskog poreza"
+msgstr "Korijenska porezna grupa"
#. module: account
#: field:account.partner.ledger,initial_balance:0
@@ -1619,7 +1660,7 @@ msgstr "Ispiši potvrdu"
#. module: account
#: view:account.change.currency:0
msgid "This wizard will change the currency of the invoice"
-msgstr "Čarobnjak za promjenu valute računa"
+msgstr "Asistent za promjenu valute računa"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_chart
@@ -1628,6 +1669,8 @@ msgid ""
"Have a complete tree view of all journal items per account code by clicking "
"on an account."
msgstr ""
+"Prikaži kontni plan poduzeća za fiskalnu godinu sa filterom razdoblja. "
+"Mogućnost podpregleda stavaka temeljnice po broju konta, kliknuti na konto."
#. module: account
#: constraint:account.fiscalyear:0
@@ -1638,7 +1681,7 @@ msgstr "Greška! Fiskalne godine se ne smiju preklapati"
#: code:addons/account/account_move_line.py:808
#, python-format
msgid "The account is not defined to be reconciled !"
-msgstr ""
+msgstr "Nije zadano zatvaranje IOS-a na ovom kontu !"
#. module: account
#: field:account.cashbox.line,pieces:0
@@ -1651,6 +1694,8 @@ msgid ""
"If the active field is set to False, it will allow you to hide the journal "
"period without removing it."
msgstr ""
+"If the active field is set to False, it will allow you to hide the journal "
+"period without removing it."
#. module: account
#: view:res.partner:0
@@ -1660,7 +1705,7 @@ msgstr "Dugovanje dobavljaču"
#. module: account
#: help:account.model.line,quantity:0
msgid "The optional quantity on entries"
-msgstr ""
+msgstr "The optional quantity on entries"
#. module: account
#: model:ir.actions.act_window,name:account.act_account_partner_account_move_all
@@ -1676,7 +1721,7 @@ msgstr "Morate navesti konto za stavku otpisa!"
#. module: account
#: model:ir.model,name:account.model_account_common_journal_report
msgid "Account Common Journal Report"
-msgstr ""
+msgstr "Izvješče konta opće temeljnice"
#. module: account
#: selection:account.partner.balance,display_partner:0
@@ -1722,13 +1767,13 @@ msgstr "Izvod u pripremi"
#. module: account
#: view:account.tax:0
msgid "Tax Declaration: Credit Notes"
-msgstr ""
+msgstr "Porezna prijava: Odobrenja"
#. module: account
#: code:addons/account/account.py:499
#, python-format
msgid "You cannot deactivate an account that contains account moves."
-msgstr ""
+msgstr "Ne možete deaktivirati račun koji sadrži stavke prometa."
#. module: account
#: field:account.move.line.reconcile,credit:0
@@ -1738,7 +1783,7 @@ msgstr "Potražni iznos"
#. module: account
#: 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
#: code:addons/account/account.py:519
@@ -1747,6 +1792,8 @@ msgid ""
"You cannot change the type of account from 'Closed' to any other type which "
"contains account entries!"
msgstr ""
+"You cannot change the type of account from 'Closed' to any other type which "
+"contains account entries!"
#. module: account
#: view:res.company:0
@@ -1756,14 +1803,14 @@ msgstr "Konto dobiti/gubitka i rezerve"
#. module: account
#: 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
#: view:account.invoice.report:0
#: model:ir.actions.act_window,name:account.action_account_invoice_report_all
#: model:ir.ui.menu,name:account.menu_action_account_invoice_report_all
msgid "Invoices Analysis"
-msgstr "analiza računa"
+msgstr "Analiza računa"
#. module: account
#: model:ir.model,name:account.model_account_period_close
@@ -1783,7 +1830,7 @@ msgstr "Stavke"
#. module: account
#: report:account.tax.code.entries:0
msgid "A/c Code"
-msgstr ""
+msgstr "A/c Code"
#. module: account
#: field:account.invoice,move_id:0
@@ -1794,7 +1841,7 @@ msgstr "Temeljnica"
#. module: account
#: view:account.tax:0
msgid "Tax Declaration: Invoices"
-msgstr "Porezna prijava"
+msgstr "Porezne grupe računa"
#. module: account
#: field:account.cashbox.line,subtotal:0
@@ -1809,7 +1856,7 @@ msgstr "Analiza blagajne"
#. module: account
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
-msgstr "Greška! Ne možete stvoriti rekurzivne tvrtke."
+msgstr "Pogreška! Ne možete kreirati rekurzivne organizacije."
#. module: account
#: view:account.analytic.account:0
@@ -1858,7 +1905,7 @@ msgstr "Završni saldo na temelju početnog stanja i transakcija"
#: model:process.node,note:account.process_node_reconciliation0
#: model:process.node,note:account.process_node_supplierreconciliation0
msgid "Comparison between accounting and payment entries"
-msgstr "Usporedba Cesti Cesti između knjiženja i plaćanja"
+msgstr "Usporedba stavki knjiženja i plaćanja"
#. module: account
#: view:account.tax:0
@@ -1882,6 +1929,8 @@ msgid ""
"It adds the currency column if the currency is different then the company "
"currency"
msgstr ""
+"It adds the currency column if the currency is different then the company "
+"currency"
#. module: account
#: help:account.journal,allow_date:0
@@ -1911,7 +1960,7 @@ msgstr "Otkazan"
#: view:account.invoice:0
#: view:report.invoice.created:0
msgid "Untaxed Amount"
-msgstr "Iznos bez poreza"
+msgstr "Osnovica"
#. module: account
#: help:account.tax,active:0
@@ -1927,13 +1976,16 @@ msgid ""
"be with same name as statement name. This allows the statement entries to "
"have the same references than the statement itself"
msgstr ""
+"if you give the Name other then /, its created Accounting Entries Move will "
+"be with same name as statement name. This allows the statement entries to "
+"have the same references than the statement itself"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_unreconcile
#: model:ir.actions.act_window,name:account.action_account_unreconcile_reconcile
#: model:ir.actions.act_window,name:account.action_account_unreconcile_select
msgid "Unreconcile Entries"
-msgstr "Poništi zatvaranje stavki"
+msgstr "Otvori stavke"
#. module: account
#: field:account.move.reconcile,line_partial_ids:0
@@ -1949,7 +2001,7 @@ msgstr "Fiskalna godina"
#: view:account.journal.select:0
#: view:project.account.analytic.line:0
msgid "Open Entries"
-msgstr "Otvori stavke"
+msgstr "Prikaži stavke"
#. module: account
#: field:account.automatic.reconcile,account_ids:0
@@ -1996,6 +2048,8 @@ msgid ""
"Invalid period ! Some periods overlap or the date period is not in the scope "
"of the fiscal year. "
msgstr ""
+"Neispravano razdoblje! Neki od razdoblja se preklapaju ili datum razdoblja "
+"nije u okviru fiskalne godine. "
#. module: account
#: selection:account.invoice,state:0
@@ -2018,8 +2072,8 @@ msgid ""
"There is no default default debit account defined \n"
"on journal \"%s\""
msgstr ""
-"Nije definiran zadani dugovni konto \n"
-"za dnevnikl \"%s\""
+"Nije definiran uobičajeni dugovni konto \n"
+"za dnevnik \"%s\""
#. module: account
#: help:account.account,type:0
@@ -2032,10 +2086,15 @@ msgid ""
"partners accounts (for debit/credit computations), closed for depreciated "
"accounts."
msgstr ""
+"This type is used to differentiate types with special effects in OpenERP: "
+"view can not have entries, consolidation are accounts that can have children "
+"accounts for multi-company consolidations, payable/receivable are for "
+"partners accounts (for debit/credit computations), closed for depreciated "
+"accounts."
#. module: account
#: view:account.chart.template:0
-msgid "Search Chart of Accounts Templates"
+msgid "Search Chart of Account Templates"
msgstr "Traži predloške kontnog plana"
#. module: account
@@ -2045,6 +2104,9 @@ msgid ""
"certified Chart of Accounts exists for your specified country, a generic one "
"can be installed and will be selected by default."
msgstr ""
+"The default Chart of Accounts is matching your country selection. If no "
+"certified Chart of Accounts exists for your specified country, a generic one "
+"can be installed and will be selected by default."
#. module: account
#: view:account.account.type:0
@@ -2070,7 +2132,7 @@ msgstr "Opis"
#: code:addons/account/installer.py:498
#, python-format
msgid "ECNJ"
-msgstr ""
+msgstr "ECNJ"
#. module: account
#: view:account.subscription:0
@@ -2089,7 +2151,7 @@ msgstr "Konto prihoda"
#: code:addons/account/invoice.py:352
#, python-format
msgid "There is no Accounting Journal of type Sale/Purchase defined!"
-msgstr ""
+msgstr "Nije definiran dnevnik tipa Prodaja/Nabava!"
#. module: account
#: view:product.category:0
@@ -2102,7 +2164,7 @@ msgstr "Računovodstveni podaci"
#: report:account.general.ledger:0
#: report:account.general.ledger_landscape:0
msgid "Entries Sorted By"
-msgstr "Stavke poredane po"
+msgstr "Entries Sorted By"
#. module: account
#: field:account.change.currency,currency_id:0
@@ -2112,7 +2174,7 @@ msgstr "Promjeni u"
#. module: account
#: view:account.entries.report:0
msgid "# of Products Qty "
-msgstr ""
+msgstr "# količine proizvoda "
#. module: account
#: model:ir.model,name:account.model_product_template
@@ -2166,12 +2228,12 @@ msgstr "Ostavite prazno za sve otvorene fiskalne godine"
#. module: account
#: model:ir.model,name:account.model_account_move
msgid "Account Entry"
-msgstr "Stavka knjiženja"
+msgstr "Temeljnica"
#. module: account
#: field:account.sequence.fiscalyear,sequence_main_id:0
msgid "Main Sequence"
-msgstr "Glavna sekvenca"
+msgstr "Glavna br. serija"
#. module: account
#: field:account.invoice,payment_term:0
@@ -2220,7 +2282,7 @@ msgstr "Otvoreno"
#: model:process.node,note:account.process_node_draftinvoices0
#: model:process.node,note:account.process_node_supplierdraftinvoices0
msgid "Draft state of an invoice"
-msgstr "Stanje računa 'U pripremi'"
+msgstr "Stanje računa 'Nacrt'"
#. module: account
#: help:account.account,reconcile:0
@@ -2238,7 +2300,7 @@ msgstr "Zatvaranje salda konti"
#: field:account.tax,tax_code_id:0
#: view:account.tax.code:0
msgid "Account Tax Code"
-msgstr "Šifra PDV obrasca"
+msgstr "Porezna grupa za porez"
#. module: account
#: code:addons/account/invoice.py:545
@@ -2249,12 +2311,16 @@ msgid ""
"You can create one in the menu: \n"
"Configuration\\Financial Accounting\\Accounts\\Journals."
msgstr ""
+"Can't find any account journal of %s type for this company.\n"
+"\n"
+"You can create one in the menu: \n"
+"Configuration\\Financial Accounting\\Accounts\\Journals."
#. module: account
#: field:account.invoice.tax,base_code_id:0
#: field:account.tax.template,base_code_id:0
msgid "Base Code"
-msgstr "Osnovna Šifra"
+msgstr "Grupa osnovice"
#. module: account
#: help:account.invoice.tax,sequence:0
@@ -2267,7 +2333,7 @@ msgstr "Određuje poredak u popisu poreza na računu."
#: field:account.tax.template,base_sign:0
#: field:account.tax.template,ref_base_sign:0
msgid "Base Code Sign"
-msgstr "Predznak šifre osnovice"
+msgstr "Koef. osnovice"
#. module: account
#: view:account.vat.declaration:0
@@ -2279,6 +2345,12 @@ msgid ""
"useful because it enables you to preview at any time the tax that you owe at "
"the start and end of the month or quarter."
msgstr ""
+"This menu prints a VAT declaration based on invoices or payments. Select one "
+"or several periods of the fiscal year. The information required for a tax "
+"declaration is automatically generated by OpenERP from invoices (or "
+"payments, in some countries). This data is updated in real time. That’s very "
+"useful because it enables you to preview at any time the tax that you owe at "
+"the start and end of the month or quarter."
#. module: account
#: selection:account.move.line,centralisation:0
@@ -2289,7 +2361,7 @@ msgstr "Centralizacija Dugovanja"
#: view:account.invoice.confirm:0
#: model:ir.actions.act_window,name:account.action_account_invoice_confirm
msgid "Confirm Draft Invoices"
-msgstr "Porvrdite pripremljene račune"
+msgstr "Potvrdi nacrte račune"
#. module: account
#: field:account.entries.report,day:0
@@ -2356,18 +2428,21 @@ msgstr "Opis knjiženja"
msgid ""
"The fiscal position will determine taxes and the accounts used for the "
"partner."
-msgstr "Fiskalna pozicija određuje poreze i konta za partnera."
+msgstr ""
+"Fiskalna pozicija određuje/mjenja poreze i konta za partnera kad se "
+"razlikuju od zadanih poreza i konta proizvoda."
#. module: account
#: view:account.print.journal:0
msgid ""
"This report gives you an overview of the situation of a specific journal"
msgstr ""
+"This report gives you an overview of the situation of a specific journal"
#. module: account
#: constraint:product.category:0
msgid "Error ! You can not create recursive categories."
-msgstr "Greška! Ne možete stvoriti rekurzivne kategorije."
+msgstr "Greška ! Ne možete stvoriti rekurzivne grupe."
#. module: account
#: report:account.invoice:0
@@ -2423,6 +2498,8 @@ msgid ""
"You cannot modify company of this journal as its related record exist in "
"Entry Lines"
msgstr ""
+"You cannot modify company of this journal as its related record exist in "
+"Entry Lines"
#. module: account
#: report:account.journal.period.print:0
@@ -2469,7 +2546,7 @@ msgstr "Odaberite ili poreznu grupu poreza ili poreznu grupu osnovice."
#. module: account
#: model:ir.ui.menu,name:account.menu_automatic_reconcile
msgid "Automatic Reconciliation"
-msgstr "Automatsko zatvaranje"
+msgstr "Automatsko zatvaranje IOS-a"
#. module: account
#: field:account.invoice,reconciled:0
@@ -2480,7 +2557,7 @@ msgstr "Plaćeno/Usklađeno"
#: field:account.tax,ref_base_code_id:0
#: field:account.tax.template,ref_base_code_id:0
msgid "Refund Base Code"
-msgstr "Šifra osnovice povrata"
+msgstr "Porezna grupa za osnovicu"
#. module: account
#: model:ir.actions.act_window,name:account.action_bank_statement_periodic_tree
@@ -2514,13 +2591,15 @@ msgid ""
"Automatically generate entries based on what has been entered in the system "
"before a specific date."
msgstr ""
+"Automatically generate entries based on what has been entered in the system "
+"before a specific date."
#. module: account
#: view:account.aged.trial.balance:0
#: model:ir.actions.act_window,name:account.action_account_aged_balance_view
#: model:ir.ui.menu,name:account.menu_aged_trial_balance
msgid "Aged Partner Balance"
-msgstr "Struktura potraživanja/obveza partnera"
+msgstr "Struktura IOS-a partnera"
#. module: account
#: model:process.transition,name:account.process_transition_entriesreconcile0
@@ -2542,12 +2621,17 @@ msgid ""
"Note that journal entries that are automatically created by the system are "
"always skipping that state."
msgstr ""
+"Check this box if you don't want new journal entries to pass through the "
+"'draft' state and instead goes directly to the 'posted state' without any "
+"manual validation. \n"
+"Note that journal entries that are automatically created by the system are "
+"always skipping that state."
#. module: account
#: model:ir.actions.server,name:account.ir_actions_server_action_wizard_multi_chart
#: model:ir.ui.menu,name:account.menu_act_ir_actions_bleble
msgid "New Company Financial Setting"
-msgstr ""
+msgstr "Financijske postavke nove organizacije"
#. module: account
#: model:ir.actions.act_window,name:account.action_report_account_sales_tree_all
@@ -2559,7 +2643,7 @@ msgstr "Prodaje po kontu"
#. module: account
#: view:account.use.model:0
msgid "This wizard will create recurring accounting entries"
-msgstr ""
+msgstr "Asistent za kreiranje ponavljajućih temeljnica"
#. module: account
#: code:addons/account/account.py:1181
@@ -2582,7 +2666,7 @@ msgstr "Morate definirati analitički dnevnik na dnevniku '%s' !"
#: model:ir.actions.act_window,name:account.action_tax_code_list
#: model:ir.ui.menu,name:account.menu_action_tax_code_list
msgid "Tax codes"
-msgstr "Šifre poreza"
+msgstr "Porezne grupe"
#. module: account
#: model:ir.ui.menu,name:account.menu_account_customer
@@ -2617,7 +2701,7 @@ msgstr ""
#. module: account
#: model:process.transition,note:account.process_transition_paymentreconcile0
msgid "Payment entries are the second input of the reconciliation."
-msgstr ""
+msgstr "Payment entries are the second input of the reconciliation."
#. module: account
#: report:account.move.voucher:0
@@ -2644,6 +2728,8 @@ msgid ""
"The optional quantity expressed by this line, eg: number of product sold. "
"The quantity is not a legal requirement but is very useful for some reports."
msgstr ""
+"The optional quantity expressed by this line, eg: number of product sold. "
+"The quantity is not a legal requirement but is very useful for some reports."
#. module: account
#: view:account.payment.term.line:0
@@ -2660,28 +2746,29 @@ msgstr "Obavezno"
#: field:product.category,property_account_expense_categ:0
#: field:product.template,property_account_expense:0
msgid "Expense Account"
-msgstr "Konto rashoda"
+msgstr "Konto troška"
#. module: account
#: help:account.invoice,period_id:0
msgid "Keep empty to use the period of the validation(invoice) date."
-msgstr "Ostavite prazno"
+msgstr "Prazno za datum potvrde."
#. module: account
#: help:account.bank.statement,account_id:0
msgid ""
"used in statement reconciliation domain, but shouldn't be used elswhere."
msgstr ""
+"used in statement reconciliation domain, but shouldn't be used elswhere."
#. module: account
#: field:account.invoice.tax,base_amount:0
msgid "Base Code Amount"
-msgstr "Iznos osnvice"
+msgstr "Iznos osnovice"
#. module: account
#: field:wizard.multi.charts.accounts,sale_tax:0
msgid "Default Sale Tax"
-msgstr "Zadani porez prodaje"
+msgstr "Uobičajeni porezi prodaje"
#. module: account
#: help:account.model.line,date_maturity:0
@@ -2690,6 +2777,8 @@ msgid ""
"between the creation date or the creation date of the entries plus the "
"partner payment terms."
msgstr ""
+"Datum dospijeća generiranih stavaka modelal. Možete birati između datuma "
+"izrade ili datum izrade/unosa plus uvjeta plaćanja partnera."
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_accounting
@@ -2725,6 +2814,8 @@ msgid ""
"It adds initial balance row on report which display previous sum amount of "
"debit/credit/balance"
msgstr ""
+"It adds initial balance row on report which display previous sum amount of "
+"debit/credit/balance"
#. module: account
#: view:account.analytic.line:0
@@ -2785,7 +2876,7 @@ msgstr "Uk. transakcije"
#. module: account
#: view:res.partner:0
msgid "Bank account"
-msgstr "Konto banke"
+msgstr "Bankovni račun"
#. module: account
#: field:account.chart.template,tax_template_ids:0
@@ -2801,6 +2892,11 @@ msgid ""
"software system you may have to use the rate at date. Incoming transactions "
"always use the rate at date."
msgstr ""
+"This will select how the current currency rate for outgoing transactions is "
+"computed. In most countries the legal method is \"average\" but only a few "
+"software systems are able to manage this. So if you import from another "
+"software system you may have to use the rate at date. Incoming transactions "
+"always use the rate at date."
#. module: account
#: help:wizard.multi.charts.accounts,code_digits:0
@@ -2810,7 +2906,7 @@ msgstr "Broj znamenki za upotrebu u šifri konta"
#. module: account
#: field:account.payment.term.line,name:0
msgid "Line Name"
-msgstr "Naziv redka"
+msgstr "Naziv stavke"
#. module: account
#: view:account.fiscalyear:0
@@ -2877,7 +2973,7 @@ msgstr "Elektronska datoteka"
#. module: account
#: view:res.partner:0
msgid "Customer Credit"
-msgstr "Potraživanja kupca"
+msgstr "Potraživanja od kupca"
#. module: account
#: model:ir.model,name:account.model_account_tax_code_template
@@ -2897,7 +2993,7 @@ msgstr "Saldo konti partnera"
#. module: account
#: help:account.journal.column,sequence:0
msgid "Gives the sequence order to journal column."
-msgstr ""
+msgstr "Gives the sequence order to journal column."
#. module: account
#: view:account.tax.template:0
@@ -2909,7 +3005,7 @@ msgstr "Prijava poreza"
#: help:account.account.template,currency_id:0
#: help:account.bank.accounts.wizard,currency_id:0
msgid "Forces all moves for this account to have this secondary currency."
-msgstr ""
+msgstr "Forces all moves for this account to have this secondary currency."
#. module: account
#: model:ir.actions.act_window,help:account.action_validate_account_move_line
@@ -2917,6 +3013,8 @@ msgid ""
"This wizard will validate all journal entries of a particular journal and "
"period. Once journal entries are validated, you can not update them anymore."
msgstr ""
+"Ovaj asistent će knjižiti sve neknjižene stavke odabranog dnevnika za "
+"odabrani period."
#. module: account
#: model:ir.actions.act_window,name:account.action_account_chart_template_form
@@ -2932,7 +3030,7 @@ msgstr "Generiraj kontni plan iz predloška"
#. module: account
#: model:ir.model,name:account.model_account_unreconcile_reconcile
msgid "Account Unreconcile Reconcile"
-msgstr ""
+msgstr "Račun Neusklađen Usklađen"
#. module: account
#: help:account.account.type,close_method:0
@@ -2947,6 +3045,13 @@ msgid ""
" 'Unreconciled' will copy only the journal items that were unreconciled on "
"the first day of the new fiscal year."
msgstr ""
+"Postavite metodu knjiženja kod zatvaranja konta na kraju godine.\n"
+"Sva konta ovog tipa će se zatvarati prema odabranoj metodi.\n"
+"\n"
+" 'Ništa' - neće generirati stavke.\n"
+" 'Saldo' - koristi se uglavnom za konta banke i blagajne.\n"
+" 'Stavke' - sve stavke se prenose u novu godinu(i zatvorene).\n"
+" 'Otvorene stavke' - prenose se otvorene stavke (konta kupaca i dobavljača)."
#. module: account
#: view:account.tax:0
@@ -3023,7 +3128,7 @@ msgstr "Nabava"
#: model:ir.actions.act_window,name:account.action_account_installer
#: view:wizard.multi.charts.accounts:0
msgid "Accounting Application Configuration"
-msgstr ""
+msgstr "Accounting Application Configuration"
#. module: account
#: model:ir.actions.act_window,name:account.open_board_account
@@ -3065,6 +3170,8 @@ msgid ""
"The amount expressed in the related account currency if not equal to the "
"company one."
msgstr ""
+"The amount expressed in the related account currency if not equal to the "
+"company one."
#. module: account
#: report:account.move.voucher:0
@@ -3111,12 +3218,12 @@ msgstr "Traži dnevnik"
#. module: account
#: model:ir.actions.act_window,name:account.action_invoice_tree_pending_invoice
msgid "Pending Invoice"
-msgstr ""
+msgstr "Pending Invoice"
#. module: account
#: selection:account.subscription,period_type:0
msgid "year"
-msgstr "godina"
+msgstr "year"
#. module: account
#: report:account.move.voucher:0
@@ -3129,6 +3236,8 @@ msgid ""
"All selected journal entries will be validated and posted. It means you "
"won't be able to modify their accounting fields anymore."
msgstr ""
+"Sve odabrane stavke dnevnika će biti potvrđena i objavljena. To znači da "
+"nećete moći modificirati svoje računovodstvene polja više."
#. module: account
#: code:addons/account/invoice.py:370
@@ -3149,7 +3258,7 @@ msgstr "Prijenosi"
#. module: account
#: view:account.payment.term.line:0
msgid " value amount: n.a"
-msgstr ""
+msgstr " vrijednost iznos: n.a"
#. module: account
#: view:account.chart:0
@@ -3181,7 +3290,7 @@ msgstr "Naziv pozicije PDV obrasca"
#: report:account.invoice:0
#: model:process.node,name:account.process_node_draftinvoices0
msgid "Draft Invoice"
-msgstr "Neodobreni računi"
+msgstr "Nacrt računa"
#. module: account
#: code:addons/account/wizard/account_invoice_state.py:68
@@ -3190,6 +3299,8 @@ msgid ""
"Selected Invoice(s) cannot be cancelled as they are already in 'Cancelled' "
"or 'Done' state!"
msgstr ""
+"Odabrani račun(i) se ne mogu otkazati jer su u stanju 'Otkazan' ili "
+"'Izvršen'!"
#. module: account
#: code:addons/account/account.py:522
@@ -3198,6 +3309,8 @@ msgid ""
"You cannot change the type of account from '%s' to '%s' type as it contains "
"account entries!"
msgstr ""
+"You cannot change the type of account from '%s' to '%s' type as it contains "
+"account entries!"
#. module: account
#: report:account.general.ledger:0
@@ -3213,13 +3326,13 @@ msgstr "Podaci računa"
#. module: account
#: field:account.invoice.report,state:0
msgid "Invoice State"
-msgstr "Stanje fakture"
+msgstr "Stanje računa"
#. module: account
#: view:account.invoice.report:0
#: field:account.invoice.report,categ_id:0
msgid "Category of Product"
-msgstr "Kategorija proizvoda"
+msgstr "Grupa proizvoda"
#. module: account
#: view:account.move:0
@@ -3238,7 +3351,7 @@ msgstr "Kreiraj konto"
#. module: account
#: model:ir.model,name:account.model_report_account_type_sales
msgid "Report of the Sales by Account Type"
-msgstr ""
+msgstr "Izvještaj o prodaji po vrsti konta"
#. module: account
#: selection:account.account.type,close_method:0
@@ -3248,7 +3361,7 @@ msgstr "Detalji"
#. module: account
#: field:account.installer,bank_accounts_id:0
msgid "Your Bank and Cash Accounts"
-msgstr ""
+msgstr "Your Bank and Cash Accounts"
#. module: account
#: report:account.invoice:0
@@ -3271,12 +3384,12 @@ msgstr "PDV :"
#: report:pl.account:0
#: report:pl.account.horizontal:0
msgid "Chart of Accounts"
-msgstr "Kontni plan"
+msgstr "Chart of Accounts"
#. module: account
#: view:account.tax.chart:0
msgid "(If you do not select period it will take all open periods)"
-msgstr ""
+msgstr "(prazno - sva otvorena razdoblja)"
#. module: account
#: field:account.journal,centralisation:0
@@ -3286,7 +3399,7 @@ msgstr "Centralizirana stavka zatvaranja"
#. module: account
#: model:ir.model,name:account.model_account_partner_reconcile_process
msgid "Reconcilation Process partner by partner"
-msgstr ""
+msgstr "Reconcilation Process partner by partner"
#. module: account
#: selection:account.automatic.reconcile,power:0
@@ -3343,13 +3456,14 @@ msgstr "Datum"
#: view:account.unreconcile:0
#: view:account.unreconcile.reconcile:0
msgid "Unreconcile"
-msgstr "Poništi zatvaranje"
+msgstr "Otvori stavke"
#. module: account
#: code:addons/account/wizard/account_fiscalyear_close.py:79
#, python-format
msgid "The journal must have default credit and debit account"
-msgstr "Dnevnik mora imati zadani potražni i dugovni konto."
+msgstr ""
+"Dnevnik mora imati zadani dugovni i potražni konto radi protu knjiženja."
#. module: account
#: view:account.chart.template:0
@@ -3364,6 +3478,9 @@ msgid ""
"based on partner payment term!\n"
"Please define partner on it!"
msgstr ""
+"Maturity date of entry line generated by model line '%s' of model '%s' is "
+"based on partner payment term!\n"
+"Please define partner on it!"
#. module: account
#: code:addons/account/account_move_line.py:810
@@ -3378,6 +3495,8 @@ msgid ""
"You cannot validate a Journal Entry unless all journal items are in same "
"chart of accounts !"
msgstr ""
+"Nije dozvoljeno potvrđivanje temeljnice na kojoj stavke pripadaju različitim "
+"kontnim planovima!"
#. module: account
#: view:account.tax:0
@@ -3432,7 +3551,7 @@ msgstr ""
#: view:account.tax:0
#: view:account.tax.template:0
msgid "Applicable Code (if type=code)"
-msgstr "Primjenjeni kod (ako je tip=Python kod)"
+msgstr "Primjenjeni kod (ako je Python kod)"
#. module: account
#: view:account.invoice.report:0
@@ -3477,12 +3596,12 @@ msgstr "Nalog za plaćanje"
msgid ""
"Check this option if you want the user to reconcile entries in this account."
msgstr ""
-"Cekirajte ovde da omogućuite korisniku zatvaranje stavaka za ovaj konto."
+"Odaberite ako želite omogućiti zatvaranje stavaka (IOS) za ovaj konto."
#. module: account
#: model:ir.actions.report.xml,name:account.account_account_balance_landscape
msgid "Account balance"
-msgstr "Saldo računa"
+msgstr "Saldo konta"
#. module: account
#: report:account.invoice:0
@@ -3519,17 +3638,17 @@ msgstr "Odabrali ste jedinicu mjere koja nije kompatibilna s proizvodom."
msgid ""
"The Payment Term of Supplier does not have Payment Term Lines(Computation) "
"defined !"
-msgstr ""
+msgstr "Uvjet plaćanja dobavljača nema definirane stavke plaćanja!"
#. module: account
#: view:account.state.open:0
msgid "Open Invoice"
-msgstr "otvoreni računi"
+msgstr "Otvori račun"
#. module: account
#: field:account.invoice.tax,factor_tax:0
msgid "Multipication factor Tax code"
-msgstr ""
+msgstr "Koeficijent porezne grupe"
#. module: account
#: view:account.fiscal.position:0
@@ -3552,7 +3671,7 @@ msgstr "Naziv"
#. module: account
#: model:ir.model,name:account.model_account_aged_trial_balance
msgid "Account Aged Trial balance Report"
-msgstr ""
+msgstr "Bruto bilanca (Aged Trial balance)"
#. module: account
#: field:account.move.line,date:0
@@ -3589,11 +3708,13 @@ msgid ""
"Print Report with the currency column if the currency is different then the "
"company currency"
msgstr ""
+"Print Report with the currency column if the currency is different then the "
+"company currency"
#. module: account
#: view:account.analytic.line:0
msgid "General Accounting"
-msgstr ""
+msgstr "Glavna knjiga"
#. module: account
#: report:account.overdue:0
@@ -3608,6 +3729,10 @@ msgid ""
"debit/credit accounts, of type 'situation' and with a centralized "
"counterpart."
msgstr ""
+"Najbolja praksa je definirati dnevnik(e) na kojima se knjiže početna stanja "
+"svih poslovnih godina. Za ove dnevnike treba definirati dugovni i potražni "
+"konto protustavki, a vrsta dnevnika mora biti 'Početno stanje' sa "
+"centraliziranom(jednom) protustavkom."
#. module: account
#: view:account.installer:0
@@ -3621,12 +3746,12 @@ msgstr "naslov"
#: view:account.period:0
#: view:account.subscription:0
msgid "Set to Draft"
-msgstr "Postavi na neodobreno"
+msgstr "Postavi na nacrt"
#. module: account
#: model:ir.actions.act_window,name:account.action_subscription_form
msgid "Recurring Lines"
-msgstr "Ponavljajuće linije"
+msgstr "Ponavljajuće stavke"
#. module: account
#: field:account.partner.balance,display_partner:0
@@ -3642,6 +3767,7 @@ msgstr "Potvrdi"
#: sql_constraint:account.model.line:0
msgid "Wrong credit or debit value in model (Credit Or Debit Must Be \"0\")!"
msgstr ""
+"Wrong credit or debit value in model (Credit Or Debit Must Be \"0\")!"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_invoice_report_all
@@ -3650,6 +3776,8 @@ msgid ""
"customer as well as payment delays. The tool search can also be used to "
"personalise your Invoices reports and so, match this analysis to your needs."
msgstr ""
+"Pregled fakturiranih iznosa i kašnjenja plaćanja. Za prilagodbu izvještaja "
+"vašim potrebama koristite funkcionalnosti traženja i grupiranja."
#. module: account
#: view:account.invoice.confirm:0
@@ -3734,7 +3862,7 @@ msgstr "Traži predloške poreza"
#. module: account
#: model:ir.ui.menu,name:account.periodical_processing_journal_entries_validation
msgid "Draft Entries"
-msgstr "U pripremi"
+msgstr "Stavke u stanju \"Nacrt\""
#. module: account
#: field:account.account,shortcut:0
@@ -3768,7 +3896,7 @@ msgstr "Bilanca"
#. module: account
#: model:ir.model,name:account.model_account_invoice_cancel
msgid "Cancel the Selected Invoices"
-msgstr ""
+msgstr "Otkaži odabrane račune"
#. module: account
#: help:product.category,property_account_income_categ:0
@@ -3789,6 +3917,8 @@ msgid ""
"Analytic costs (timesheets, some purchased products, ...) come from analytic "
"accounts. These generate draft supplier invoices."
msgstr ""
+"Analitički troškovi (ev. rada, nabava, ...) dolaze sa analitičkih konta. Oni "
+"mogu kreirati nacrte ulaznih računa."
#. module: account
#: view:account.bank.statement:0
@@ -3810,7 +3940,7 @@ msgstr "Tip konta"
#: code:addons/account/invoice.py:714
#, python-format
msgid "Global taxes defined, but are not in invoice lines !"
-msgstr ""
+msgstr "Na stavkama računa nema definiranih poreza!"
#. module: account
#: field:account.entries.report,month:0
@@ -3837,7 +3967,7 @@ msgstr "Bilješka"
#. module: account
#: view:account.analytic.account:0
msgid "Overdue Account"
-msgstr ""
+msgstr "Konto duga"
#. module: account
#: selection:account.invoice,state:0
@@ -3864,6 +3994,9 @@ msgid ""
"the system on document validation (invoices, bank statements...) and will be "
"created in 'Posted' state."
msgstr ""
+"Ručno upisane temeljnice su obično u stanju \"Neažurno\". Ovdje možete "
+"zadati opciju preskakanja ovog stanja za pojedini dnevnik. Tada će upisane "
+"stavke odmah biti u stanju \"Ažurno\"."
#. module: account
#: code:addons/account/account_analytic_line.py:91
@@ -3924,7 +4057,7 @@ msgstr "Raspon Mjeseci"
#. module: account
#: help:account.analytic.balance,empty_acc:0
msgid "Check if you want to display Accounts with 0 balance too."
-msgstr ""
+msgstr "Check if you want to display Accounts with 0 balance too."
#. module: account
#: view:account.tax:0
@@ -3934,7 +4067,7 @@ msgstr "Kod izračuna"
#. module: account
#: view:account.account.template:0
msgid "Default taxes"
-msgstr "Zadani porezi"
+msgstr "Uobičajeni porezi"
#. module: account
#: code:addons/account/invoice.py:88
@@ -3953,6 +4086,8 @@ msgid ""
"When new move line is created the state will be 'Draft'.\n"
"* When all the payments are done it will be in 'Valid' state."
msgstr ""
+"Nakon upisa stanje stavke je 'Nacrt'.\n"
+"* Nakon plaćanja stanje postaje 'Ispravan'."
#. module: account
#: field:account.journal,view_id:0
@@ -3962,7 +4097,7 @@ msgstr "Način prikaza"
#. module: account
#: model:process.node,note:account.process_node_importinvoice0
msgid "Statement from invoice or payment"
-msgstr ""
+msgstr "Izvod iz računa ili plaćanja"
#. module: account
#: view:account.payment.term.line:0
@@ -3984,7 +4119,7 @@ msgstr "Naziv konta"
#. module: account
#: help:account.fiscalyear.close,report_name:0
msgid "Give name of the new entries"
-msgstr ""
+msgstr "Give name of the new entries"
#. module: account
#: model:ir.model,name:account.model_account_invoice_report
@@ -3994,13 +4129,13 @@ msgstr "Statistike računa"
#. module: account
#: model:process.transition,note:account.process_transition_paymentorderreconcilation0
msgid "Bank statements are entered in the system."
-msgstr ""
+msgstr "Bank statements are entered in the system."
#. module: account
#: code:addons/account/wizard/account_reconcile.py:133
#, python-format
msgid "Reconcile Writeoff"
-msgstr ""
+msgstr "Otpis"
#. module: account
#: field:account.model.line,date_maturity:0
@@ -4038,7 +4173,7 @@ msgstr "Ispiši račun"
#. module: account
#: view:account.tax.template:0
msgid "Credit Notes"
-msgstr "Knjižna odobrenja"
+msgstr "Odobrenja"
#. module: account
#: code:addons/account/account.py:2067
@@ -4050,7 +4185,7 @@ msgstr "Nema odgovarajućih perioda."
#. module: account
#: report:account.tax.code.entries:0
msgid "Voucher No"
-msgstr "Potvrda br."
+msgstr "Vaučer br."
#. module: account
#: view:wizard.multi.charts.accounts:0
@@ -4060,7 +4195,7 @@ msgstr "res_config_contents"
#. module: account
#: view:account.unreconcile:0
msgid "Unreconciliate transactions"
-msgstr ""
+msgstr "Unreconciliate transactions"
#. module: account
#: view:account.use.model:0
@@ -4070,7 +4205,7 @@ msgstr "Stvori stavke iz modela"
#. module: account
#: field:account.account.template,reconcile:0
msgid "Allow Reconciliation"
-msgstr "Dozvoli zatvaranje"
+msgstr "Allow Reconciliation"
#. module: account
#: view:account.analytic.account:0
@@ -4095,7 +4230,7 @@ msgstr "Porez uključen u cijenu"
#. module: account
#: model:ir.model,name:account.model_account_analytic_cost_ledger_journal_report
msgid "Account Analytic Cost Ledger For Journal Report"
-msgstr ""
+msgstr "Account Analytic Cost Ledger For Journal Report"
#. module: account
#: model:ir.actions.act_window,name:account.action_model_form
@@ -4137,12 +4272,12 @@ msgstr "Kontrola po vrsti kona"
#. module: account
#: help:account.journal,default_credit_account_id:0
msgid "It acts as a default account for credit amount"
-msgstr "Zadani konto za potražni iznos"
+msgstr "Uobičajeni potražni konto"
#. module: account
#: help:account.partner.ledger,reconcil:0
msgid "Consider reconciled entries"
-msgstr ""
+msgstr "Consider reconciled entries"
#. module: account
#: model:ir.actions.act_window,name:account.action_validate_account_move_line
@@ -4150,19 +4285,19 @@ msgstr ""
#: view:validate.account.move:0
#: view:validate.account.move.lines:0
msgid "Post Journal Entries"
-msgstr "Proknjiži stavke"
+msgstr "Knjiži temeljnicu"
#. module: account
#: selection:account.invoice,state:0
#: selection:account.invoice.report,state:0
#: selection:report.invoice.created,state:0
msgid "Cancelled"
-msgstr "Poništeno"
+msgstr "Otkazani"
#. module: account
#: help:account.bank.statement,balance_end_cash:0
msgid "Closing balance based on cashBox"
-msgstr ""
+msgstr "Završno stanje blagajne"
#. module: account
#: constraint:account.account:0
@@ -4213,7 +4348,7 @@ msgstr "Potvrđeno"
#. module: account
#: report:account.invoice:0
msgid "Cancelled Invoice"
-msgstr "Poništeni račun"
+msgstr "Otkazani račun"
#. module: account
#: code:addons/account/invoice.py:73
@@ -4229,6 +4364,9 @@ msgid ""
"the account \"%s - %s\". Clear the secondary currency field of the account "
"definition if you want to accept all currencies."
msgstr ""
+"Couldn't create move with currency different from the secondary currency of "
+"the account \"%s - %s\". Clear the secondary currency field of the account "
+"definition if you want to accept all currencies."
#. module: account
#: field:account.invoice.refund,date:0
@@ -4239,14 +4377,14 @@ msgstr "Datum postupka"
#: field:account.tax,ref_tax_code_id:0
#: field:account.tax.template,ref_tax_code_id:0
msgid "Refund Tax Code"
-msgstr "Porezna grupa povrata"
+msgstr "Porezna grupa odobrenja"
#. module: account
#: view:validate.account.move:0
msgid ""
"All draft account entries in this journal and period will be validated. It "
"means you won't be able to modify their accounting fields anymore."
-msgstr ""
+msgstr "Potvrđivanje svih nacrta knjiženja za odabrani dnevnik i period."
#. module: account
#: report:account.account.balance.landscape:0
@@ -4293,8 +4431,8 @@ msgid ""
"Please verify the price of the invoice !\n"
"The real total does not match the computed total."
msgstr ""
-"Molimo provjerite cijene na računu!\n"
-"Stvarna ukupna vrijednost se ne slaže sa izračunatom vrijednošću."
+"Molimo provjerite iznose na računu!\n"
+"Ukupna vrijednost se ne slaže sa izračunatom vrijednošću."
#. module: account
#: view:account.invoice:0
@@ -4322,7 +4460,7 @@ msgstr "Ne"
#. module: account
#: help:account.invoice.tax,tax_code_id:0
msgid "The tax basis of the tax declaration."
-msgstr ""
+msgstr "Osnovica za poreznu prijavu."
#. module: account
#: view:account.addtmpl.wizard:0
@@ -4352,7 +4490,7 @@ msgstr "Bankovni izvod korišten za zatvaranje banke"
#. module: account
#: model:process.transition,note:account.process_transition_suppliercustomerinvoice0
msgid "Draft invoices are validated. "
-msgstr ""
+msgstr "Nacrti računa su potvrđeni. "
#. module: account
#: view:account.bank.statement:0
@@ -4388,7 +4526,7 @@ msgstr "Porez se primjenjuje"
#: model:ir.ui.menu,name:account.menu_eaction_account_moves_sale
#, python-format
msgid "Journal Items"
-msgstr "Stavke dnevnika"
+msgstr "Stavke glavne knjige"
#. module: account
#: selection:account.account.type,report_type:0
@@ -4398,7 +4536,7 @@ msgstr "Bilanca (konta imovine)"
#. module: account
#: report:account.tax.code.entries:0
msgid "Third Party (Country)"
-msgstr ""
+msgstr "Third Party (Country)"
#. module: account
#: code:addons/account/account.py:938
@@ -4452,11 +4590,13 @@ msgid ""
"To print an analytics (or costs) journal for a given period. The report give "
"code, move name, account number, general amount and analytic amount."
msgstr ""
+"Ispis analitičkog dnevnika za razdoblje. Ispisuje se šifra, naziv stavke, "
+"konto, iznos glavne knjige i analitički iznos."
#. module: account
#: help:account.journal,refund_journal:0
msgid "Fill this if the journal is to be used for refunds of invoices."
-msgstr ""
+msgstr "Fill this if the journal is to be used for refunds of invoices."
#. module: account
#: view:account.fiscalyear.close:0
@@ -4503,6 +4643,8 @@ msgid ""
"You should set the journal to allow cancelling entries if you want to do "
"that."
msgstr ""
+"Nije dozvoljeno mijenjati knjižene stavke ovog dnevnikal !\n"
+"Ako to ipak želite dozvoliti promijenite postavke ovog dnevnika."
#. module: account
#: model:ir.ui.menu,name:account.account_template_folder
@@ -4518,7 +4660,7 @@ msgstr "Podređeni porezi"
#: code:addons/account/account.py:940
#, python-format
msgid "Start period should be smaller then End period"
-msgstr ""
+msgstr "Start period should be smaller then End period"
#. module: account
#: selection:account.automatic.reconcile,power:0
@@ -4610,7 +4752,7 @@ msgstr "Naziv stupca"
#: view:account.general.journal:0
msgid ""
"This report gives you an overview of the situation of your general journals"
-msgstr ""
+msgstr "Ovo izvješće daje pregled stanja vaše opće temeljnice"
#. module: account
#: field:account.entries.report,year:0
@@ -4688,7 +4830,7 @@ msgstr "Bilanca stanja"
#. module: account
#: model:ir.ui.menu,name:account.final_accounting_reports
msgid "Accounting Reports"
-msgstr "Izvješća"
+msgstr "Računovodstvena izvješća"
#. module: account
#: field:account.move,line_id:0
@@ -4713,7 +4855,7 @@ msgstr "JM"
#: code:addons/account/wizard/account_invoice_refund.py:138
#, python-format
msgid "No Period found on Invoice!"
-msgstr ""
+msgstr "Nije pronađeno razdoblje na računu!"
#. module: account
#: view:account.tax.template:0
@@ -4750,7 +4892,7 @@ msgstr "Iznos"
#: code:addons/account/wizard/account_fiscalyear_close.py:41
#, python-format
msgid "End of Fiscal Year Entry"
-msgstr "Knjiženja zatvaranja fiskalne godine"
+msgstr "Temeljnice zatvaranja fiskalne godine"
#. module: account
#: model:process.transition,name:account.process_transition_customerinvoice0
@@ -4768,6 +4910,8 @@ msgid ""
"The Journal Entry of the invoice have been totally reconciled with one or "
"several Journal Entries of payment."
msgstr ""
+"Stavka računa (potraživanje ili dugovanje) je kompletno zatvorena s jednom "
+"ili više stavaka plaćanja."
#. module: account
#: field:account.tax,child_depend:0
@@ -4791,7 +4935,7 @@ msgstr "Nije nađen period"
#. module: account
#: field:account.journal,update_posted:0
msgid "Allow Cancelling Entries"
-msgstr "Dozvoli storniranje stavki"
+msgstr "Dozvoli odažuriranje knjiženja"
#. module: account
#: field:account.tax.code,sign:0
@@ -4872,7 +5016,7 @@ msgstr "Kontrole unosa"
#: view:account.analytic.chart:0
#: view:project.account.analytic.line:0
msgid "(Keep empty to open the current situation)"
-msgstr "(Zadržite prazno da biste otvorili trenutno stanje)"
+msgstr "(prazno za trenutno stanje)"
#. module: account
#: field:account.analytic.Journal.report,date1:0
@@ -4896,7 +5040,7 @@ msgstr ""
#. module: account
#: model:ir.model,name:account.model_account_common_account_report
msgid "Account Common Account Report"
-msgstr ""
+msgstr "Account Common Account Report"
#. module: account
#: field:account.bank.statement.line,name:0
@@ -4913,14 +5057,14 @@ msgstr "Analitičko računovodstvo"
#: selection:account.invoice.report,type:0
#: selection:report.invoice.created,type:0
msgid "Customer Refund"
-msgstr "Povrat novca kupcu"
+msgstr "Odobrenje kupcu"
#. module: account
#: view:account.account:0
#: field:account.account,tax_ids:0
#: field:account.account.template,tax_ids:0
msgid "Default Taxes"
-msgstr "Zadani porezi"
+msgstr "Uobičajeni porezi"
#. module: account
#: field:account.tax,ref_tax_sign:0
@@ -4928,7 +5072,7 @@ msgstr "Zadani porezi"
#: field:account.tax.template,ref_tax_sign:0
#: field:account.tax.template,tax_sign:0
msgid "Tax Code Sign"
-msgstr "Predznak u PDV obrascu"
+msgstr "Koef. poreza"
#. module: account
#: model:ir.model,name:account.model_report_invoice_created
@@ -4960,6 +5104,9 @@ msgid ""
"something to reconcile or not. This figure already count the current partner "
"as reconciled."
msgstr ""
+"This is the remaining partners for who you should check if there is "
+"something to reconcile or not. This figure already count the current partner "
+"as reconciled."
#. module: account
#: view:account.subscription.line:0
@@ -4991,7 +5138,7 @@ msgstr "Promjeni valutu"
#: model:process.node,note:account.process_node_accountingentries0
#: model:process.node,note:account.process_node_supplieraccountingentries0
msgid "Accounting entries."
-msgstr ""
+msgstr "Accounting entries."
#. module: account
#: view:account.invoice:0
@@ -5017,6 +5164,8 @@ msgid ""
"According value related accounts will be display on respective reports "
"(Balance Sheet Profit & Loss Account)"
msgstr ""
+"Prema iznosu na koji se račun odnosi biti će prikazan na odgovarajućim "
+"izvješćima (Bilanca, Račun dobiti i gubitka)"
#. module: account
#: field:account.report.general.ledger,sortby:0
@@ -5030,6 +5179,8 @@ msgid ""
"There is no default default credit account defined \n"
"on journal \"%s\""
msgstr ""
+"Nije definiran uobičajeni potražni konto za\n"
+"dnevnik \"%s\""
#. module: account
#: field:account.entries.report,amount_currency:0
@@ -5045,7 +5196,7 @@ msgid ""
"Specified Journal does not have any account move entries in draft state for "
"this period"
msgstr ""
-"Navedeni dnevnik nema niti jednu stavku u stanju pripreme za ovo razdoblje"
+"Navedeni dnevnik nema niti jednu stavku u stanju \"Nacrt\" za ovo razdoblje"
#. module: account
#: model:ir.actions.act_window,name:account.action_view_move_line
@@ -5083,6 +5234,8 @@ msgid ""
"Number of partial amounts that can be combined to find a balance point can "
"be chosen as the power of the automatic reconciliation"
msgstr ""
+"Višekratnik automatskog zatvaranja je broj pojedinačnih iznosa koji će se "
+"kombinirati kod traženja odgovarajućeg iznosa"
#. module: account
#: help:account.payment.term.line,sequence:0
@@ -5114,6 +5267,9 @@ msgid ""
"impossible any new entry record. Close a fiscal year when you need to "
"finalize your end of year results definitive "
msgstr ""
+"Nakon knjiženja svih transakcije jedne poslovne godine, ovdje možete "
+"zatvoriti i zaključati poslovnu godinu. Zatvaranje će zatvoriti sve "
+"eventualno otvorene periode te godine i onemogućiti upis podataka. "
#. module: account
#: field:account.central.journal,amount_currency:0
@@ -5154,7 +5310,7 @@ msgstr "Dospjela potraživanja"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_automatic_reconcile
msgid "Account Automatic Reconcile"
-msgstr "Automatsko zatvaranje"
+msgstr "Automatsko zatvaranje IOS-a"
#. module: account
#: view:account.move:0
@@ -5190,6 +5346,8 @@ msgid ""
"This module will support the Anglo-Saxons accounting methodology by changing "
"the accounting logic with stock transactions."
msgstr ""
+"This module will support the Anglo-Saxons accounting methodology by changing "
+"the accounting logic with stock transactions."
#. module: account
#: field:report.invoice.created,create_date:0
@@ -5259,6 +5417,8 @@ msgid ""
"Streamlines invoice payment and creates hooks to plug automated payment "
"systems in."
msgstr ""
+"Streamlines invoice payment and creates hooks to plug automated payment "
+"systems in."
#. module: account
#: field:account.payment.term.line,value:0
@@ -5308,6 +5468,9 @@ msgid ""
"document shows your debit and credit taking in consideration some criteria "
"you can choose by using the search tool."
msgstr ""
+"From this view, have an analysis of your different financial accounts. The "
+"document shows your debit and credit taking in consideration some criteria "
+"you can choose by using the search tool."
#. module: account
#: model:ir.actions.act_window,help:account.action_tax_code_list
@@ -5316,6 +5479,11 @@ msgid ""
"OpenERP allows you to define the tax structure and manage it from this menu. "
"You can define both numeric and alphanumeric tax codes."
msgstr ""
+"Definicija poreznih grupa ovisi o poreznim prijavama i poreznim izvještajima "
+"pojedine zemlje. Za svako polje porezne prijave potrebno je definirati jednu "
+"poreznu grupu, te dodatne grupe za stupce u knjigama URA/IRA kojih nema u "
+"poreznoj prijavi. Osim PDV-a porezne grupe je uputno kreirati i za ostale "
+"poreze npr. Porez na potrošnju ili razne trošarine koje ste obavezni plaćati."
#. module: account
#: help:account.partner.reconcile.process,progress:0
@@ -5323,6 +5491,8 @@ msgid ""
"Shows you the progress made today on the reconciliation process. Given by \n"
"Partners Reconciled Today \\ (Remaining Partners + Partners Reconciled Today)"
msgstr ""
+"Shows you the progress made today on the reconciliation process. Given by \n"
+"Partners Reconciled Today \\ (Remaining Partners + Partners Reconciled Today)"
#. module: account
#: help:account.payment.term.line,value:0
@@ -5331,6 +5501,8 @@ msgid ""
"that you should have your last line with the type 'Balance' to ensure that "
"the whole amount will be threated."
msgstr ""
+"Odaberite način izračuna ove stavke plaćanja. Dobra je praksa navesti "
+"posljednji redak tipa 'Saldo' kako bi se izračunao kompletan iznos."
#. module: account
#: field:account.invoice,period_id:0
@@ -5350,7 +5522,7 @@ msgstr "# linija"
#: code:addons/account/wizard/account_change_currency.py:60
#, python-format
msgid "New currency is not confirured properly !"
-msgstr ""
+msgstr "New currency is not confirured properly !"
#. module: account
#: field:account.aged.trial.balance,filter:0
@@ -5382,7 +5554,7 @@ msgstr "Ne mozete koristiti neaktivan konto!"
#: code:addons/account/account_move_line.py:803
#, python-format
msgid "Entries are not of the same account or already reconciled ! "
-msgstr "Stavke nisu istog konta ili su već usklađene ! "
+msgstr "Stavke nisu istog konta ili su već zatvorene! "
#. module: account
#: field:account.tax,account_collected_id:0
@@ -5470,7 +5642,7 @@ msgstr " 365 dana "
#: model:ir.actions.act_window,name:account.action_invoice_tree3
#: model:ir.ui.menu,name:account.menu_action_invoice_tree3
msgid "Customer Refunds"
-msgstr "Povrati od kupca"
+msgstr "Odobrenja kupcima"
#. module: account
#: view:account.payment.term.line:0
@@ -5496,7 +5668,7 @@ msgstr "nije implementirano"
#. module: account
#: help:account.journal,company_id:0
msgid "Company related to this journal"
-msgstr "Tvrtka za koju se vodi ovaj dnevnik"
+msgstr "Organizacija za koju se vodi ovaj dnevnik"
#. module: account
#: code:addons/account/wizard/account_invoice_state.py:44
@@ -5505,6 +5677,8 @@ msgid ""
"Selected Invoice(s) cannot be confirmed as they are not in 'Draft' or 'Pro-"
"Forma' state!"
msgstr ""
+"Ne mogu se potvrditi odabrani računi jer nisu svi u stanju 'Nacrt' ili 'Pro-"
+"Forma'!"
#. module: account
#: report:account.invoice:0
@@ -5542,6 +5716,11 @@ msgid ""
"line of the expense account. OpenERP will propose to you automatically the "
"Tax related to this account and the counterpart \"Account Payable\"."
msgstr ""
+"Ovu karticu koriste knjigovođe za ručni upis knjiženja u OpenERP. Ako želite "
+"upisati ulazni račun dobavljača, najprije upišite stavku troška, a program "
+"će automatski ponuditi slijedeću stavku(e) poreza prema definiranim porezima "
+"na kontu troška, a zatim i stavku ukupnog potraživanja dobavljača na kontu "
+"potraživanja partnera."
#. module: account
#: field:account.entries.report,date_created:0
@@ -5559,11 +5738,12 @@ msgid ""
"The code will be used to generate the numbers of the journal entries of this "
"journal."
msgstr ""
+"Ova šifra će se koristiti kao prefiks opisa/broja u stavkama knjiženja."
#. module: account
#: view:account.invoice:0
msgid "(keep empty to use the current period)"
-msgstr "(ostaviti prazno ako želite koristiti tekuće razdoblje)"
+msgstr "(ostaviti prazno za trenutno razdoblje)"
#. module: account
#: model:process.transition,note:account.process_transition_supplierreconcilepaid0
@@ -5571,6 +5751,7 @@ msgid ""
"As soon as the reconciliation is done, the invoice's state turns to “done” "
"(i.e. paid) in the system."
msgstr ""
+"Čim je obavljeno zatvaranje, stanje računa prelazi u \"izvršen\" (plaćen)."
#. module: account
#: code:addons/account/invoice.py:997
@@ -5587,7 +5768,7 @@ msgstr "Korijensko konto"
#. module: account
#: field:res.partner,last_reconciliation_date:0
msgid "Latest Reconciliation Date"
-msgstr ""
+msgstr "Zadnje zatvaranje IOS-a"
#. module: account
#: model:ir.model,name:account.model_account_analytic_line
@@ -5613,7 +5794,7 @@ msgstr "Postavke izvještaja"
#. module: account
#: 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
#: field:account.tax,type:0
@@ -5635,7 +5816,7 @@ msgstr "Prijava poreza"
#. module: account
#: model:ir.model,name:account.model_res_company
msgid "Companies"
-msgstr "Tvrtke"
+msgstr "Organizacije"
#. module: account
#: code:addons/account/account.py:532
@@ -5644,6 +5825,8 @@ msgid ""
"You cannot modify Company of account as its related record exist in Entry "
"Lines"
msgstr ""
+"You cannot modify Company of account as its related record exist in Entry "
+"Lines"
#. module: account
#: help:account.fiscalyear.close.state,fy_id:0
@@ -5653,7 +5836,7 @@ msgstr "Odaberite fiskalnu godinu za zatvaranje"
#. module: account
#: help:account.chart.template,tax_template_ids:0
msgid "List of all the taxes that have to be installed by the wizard"
-msgstr "Popis svih poreza koji trebaju biti instalirani od strane čarobnjaka"
+msgstr "Popis svih poreza koje asistent treba instalirati"
#. module: account
#: model:ir.actions.report.xml,name:account.account_intracom
@@ -5768,7 +5951,7 @@ msgstr " broj dana: 30"
#. module: account
#: help:account.analytic.line,currency_id:0
msgid "The related account currency if not equal to the company one."
-msgstr ""
+msgstr "The related account currency if not equal to the company one."
#. module: account
#: view:account.analytic.account:0
@@ -5849,7 +6032,7 @@ msgstr "Primjenjivi tip"
#: field:account.invoice,reference:0
#: field:account.invoice.line,invoice_id:0
msgid "Invoice Reference"
-msgstr "Vezna oznaka računa"
+msgstr "Poziv na br."
#. module: account
#: help:account.tax.template,sequence:0
@@ -5874,7 +6057,7 @@ msgstr "Likvidnost"
#: model:ir.actions.act_window,name:account.action_account_analytic_journal_open_form
#: model:ir.ui.menu,name:account.account_analytic_journal_entries
msgid "Analytic Journal Items"
-msgstr ""
+msgstr "Stavke analitičkog dnevnika"
#. module: account
#: view:account.fiscalyear.close:0
@@ -5883,6 +6066,8 @@ msgid ""
"year. Note that you can run this wizard many times for the same fiscal year: "
"it will simply replace the old opening entries with the new ones."
msgstr ""
+"Ovaj asistent će kreirati temeljnicu početnog stanja u novoj godini. "
+"Najprije će obrisati postojeće knjiženje početnog stanja i kreirati novo."
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_bank_and_cash
@@ -5897,16 +6082,20 @@ msgid ""
"the tool search to analyse information about analytic entries generated in "
"the system."
msgstr ""
+"From this view, have an analysis of your different analytic entries "
+"following the analytic account you defined matching your business need. Use "
+"the tool search to analyse information about analytic entries generated in "
+"the system."
#. module: account
#: sql_constraint:account.journal:0
msgid "The name of the journal must be unique per company !"
-msgstr ""
+msgstr "Naziv dnevnika mora biti jedinstven za jednu organizaciju!"
#. module: account
#: field:account.account.template,nocreate:0
msgid "Optional create"
-msgstr ""
+msgstr "Opcionalno kreiranje"
#. module: account
#: code:addons/account/invoice.py:406
@@ -5914,7 +6103,7 @@ msgstr ""
#: code:addons/account/invoice.py:1348
#, python-format
msgid "Can not find account chart for this company, Please Create account."
-msgstr ""
+msgstr "Can not find account chart for this company, Please Create account."
#. module: account
#: code:addons/account/wizard/account_report_aged_partner_balance.py:57
@@ -5933,7 +6122,7 @@ msgstr "Povrat URA"
#. module: account
#: model:ir.ui.menu,name:account.menu_dashboard_acc
msgid "Dashboard"
-msgstr "Kontrolna ploča"
+msgstr "Kokpit"
#. module: account
#: field:account.bank.statement,move_line_ids:0
@@ -6031,7 +6220,7 @@ msgstr "Naziv modela"
#. module: account
#: field:account.chart.template,property_account_expense_categ:0
msgid "Expense Category Account"
-msgstr "Konto kategorije troška"
+msgstr "Konto troška"
#. module: account
#: view:account.bank.statement:0
@@ -6071,7 +6260,7 @@ msgstr "Stavke: "
#. module: account
#: view:account.use.model:0
msgid "Create manual recurring entries in a chosen journal."
-msgstr ""
+msgstr "Ručno kreiraj ponavljajuće temeljnice za odabrani dnevnik."
#. module: account
#: code:addons/account/account.py:1393
@@ -6090,6 +6279,13 @@ msgid ""
"account. From this view, you can create and manage the account types you "
"need for your company."
msgstr ""
+"An account type is used to determine how an account is used in each journal. "
+"The deferral method of an account type determines the process for the annual "
+"closing. Reports such as the Balance Sheet and the Profit and Loss report "
+"use the category (profit/loss or balance sheet). For example, the account "
+"type could be linked to an asset account, expense account or payable "
+"account. From this view, you can create and manage the account types you "
+"need for your company."
#. module: account
#: model:ir.actions.act_window,help:account.action_account_bank_reconcile_tree
@@ -6098,11 +6294,14 @@ msgid ""
"corresponds with the entries (or records) of that account in your accounting "
"system."
msgstr ""
+"Bank Reconciliation consists of verifying that your bank statement "
+"corresponds with the entries (or records) of that account in your accounting "
+"system."
#. module: account
#: model:process.node,note:account.process_node_draftstatement0
msgid "State is draft"
-msgstr "Stanje je 'U pripremi'"
+msgstr "Stanje je 'Nacrt'"
#. module: account
#: view:account.move.line:0
@@ -6134,6 +6333,8 @@ msgid ""
"This account will be used instead of the default one as the receivable "
"account for the current partner"
msgstr ""
+"Konto potraživanja od kupaca za ovog partnera, ako je različit od "
+"uobičajenog (12...)"
#. module: account
#: field:account.tax,python_applicable:0
@@ -6152,6 +6353,7 @@ msgstr "Python kod"
msgid ""
"Please define the Reserve and Profit/Loss account for current user company !"
msgstr ""
+"Please define the Reserve and Profit/Loss account for current user company !"
#. module: account
#: help:account.journal,update_posted:0
@@ -6159,6 +6361,8 @@ msgid ""
"Check this box if you want to allow the cancellation the entries related to "
"this journal or of the invoice related to this journal"
msgstr ""
+"Označite ako želite dopustiti naknadno otkazivanje proknjiženih (potvrđenih) "
+"temeljnica ili računa ovog dnevnika."
#. module: account
#: view:account.fiscalyear.close:0
@@ -6236,6 +6440,10 @@ msgid ""
"reconcile in a series of accounts. It finds entries for each partner where "
"the amounts correspond."
msgstr ""
+"Račun je plaćen kada su sve njegove stavke dugovanja kupca (ili potraživanja "
+"dobavljača) zatvorene kontra stavkama, najčešće plaćanjima banke, blagajne "
+"ili sl. Funkcija automatskog zatvaranja za svakog partnera pronalazi stavke "
+"odgovarajućeg iznosa."
#. module: account
#: view:account.move:0
@@ -6250,7 +6458,7 @@ msgstr "Za provjeru"
#: model:ir.ui.menu,name:account.menu_action_move_journal_line_form
#: model:ir.ui.menu,name:account.menu_finance_entries
msgid "Journal Entries"
-msgstr "Stavke dnevnika"
+msgstr "Stavke"
#. module: account
#: help:account.partner.ledger,page_split:0
@@ -6264,6 +6472,8 @@ msgid ""
"This report is an analysis done by a partner. It is a PDF report containing "
"one line per partner representing the cumulative credit balance"
msgstr ""
+"This report is an analysis done by a partner. It is a PDF report containing "
+"one line per partner representing the cumulative credit balance"
#. module: account
#: code:addons/account/wizard/account_validate_account_move.py:61
@@ -6271,6 +6481,7 @@ msgstr ""
msgid ""
"Selected Entry Lines does not have any account move enties in draft state"
msgstr ""
+"Selected Entry Lines does not have any account move enties in draft state"
#. module: account
#: selection:account.aged.trial.balance,target_move:0
@@ -6302,8 +6513,8 @@ msgstr "Sve stavke"
msgid ""
"Error: The default UOM and the purchase UOM must be in the same category."
msgstr ""
-"Greška: Zadana jedinica mjere i kupovna jedinica mjere moraju biti u istoj "
-"kategoriji."
+"Greška: Zadana jedinica mjere i jedinica mjere nabave moraju biti iz iste "
+"kategorije jedinica mjera."
#. module: account
#: view:account.journal.select:0
@@ -6314,7 +6525,7 @@ msgstr "Odabir dnevnika"
#: code:addons/account/wizard/account_change_currency.py:65
#, python-format
msgid "Currnt currency is not confirured properly !"
-msgstr ""
+msgstr "Currnt currency is not confirured properly !"
#. module: account
#: model:ir.model,name:account.model_account_move_reconcile
@@ -6339,7 +6550,7 @@ msgstr "Glavna knjiga"
#. module: account
#: model:process.transition,note:account.process_transition_paymentorderbank0
msgid "The payment order is sent to the bank."
-msgstr ""
+msgstr "Nalog za plaćanje je poslan u banku."
#. module: account
#: view:account.balance.report:0
@@ -6349,6 +6560,9 @@ msgid ""
"allowing you to quickly check the balance of each of your accounts in a "
"single report"
msgstr ""
+"This report allows you to print or generate a pdf of your trial balance "
+"allowing you to quickly check the balance of each of your accounts in a "
+"single report"
#. module: account
#: help:account.move,to_check:0
@@ -6356,6 +6570,8 @@ msgid ""
"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."
msgstr ""
+"Označite \"za provjeru\" kada niste sigurni da li je knjiženje ispravno i "
+"kada je potrebno ekspertno mišljenje."
#. module: account
#: help:account.installer.modules,account_voucher:0
@@ -6363,6 +6579,8 @@ msgid ""
"Account Voucher module includes all the basic requirements of Voucher "
"Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... "
msgstr ""
+"Account Voucher module includes all the basic requirements of Voucher "
+"Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... "
#. module: account
#: view:account.chart.template:0
@@ -6397,6 +6615,13 @@ msgid ""
"\n"
"e.g. My model on %(date)s"
msgstr ""
+"Možete navesti godinu, mjesec i dan u nazivu modela pomoću ovih oznaka:\n"
+"\n"
+"%(year)s: za godinu \n"
+"%(month)s: za mjesec \n"
+"%(date)s: tenutni datum\n"
+"\n"
+"npr. Knjiženje troškova plaće za %(month)s"
#. module: account
#: model:ir.actions.act_window,name:account.action_aged_income
@@ -6406,7 +6631,7 @@ msgstr "Konta prihoda"
#. module: account
#: help:report.invoice.created,origin:0
msgid "Reference of the document that generated this invoice report."
-msgstr ""
+msgstr "Oznaka dokumenta koji je kreirao ovaj račun."
#. module: account
#: field:account.tax.code,child_ids:0
@@ -6425,7 +6650,7 @@ msgstr "Nedovoljni Podaci!"
#: model:ir.actions.act_window,name:account.action_invoice_tree1
#: model:ir.ui.menu,name:account.menu_action_invoice_tree1
msgid "Customer Invoices"
-msgstr "Računi kupca"
+msgstr "Izlazni računi"
#. module: account
#: field:account.move.line.reconcile,writeoff:0
@@ -6435,7 +6660,7 @@ msgstr "Iznos otpisa"
#. module: account
#: view:account.analytic.line:0
msgid "Sales"
-msgstr "Prodaje"
+msgstr "Prodaja"
#. module: account
#: view:account.journal.column:0
@@ -6449,12 +6674,12 @@ msgstr "Stupac dnevnika"
#: selection:account.subscription,state:0
#: selection:report.invoice.created,state:0
msgid "Done"
-msgstr "Gotovo"
+msgstr "Izvršeno"
#. module: account
#: model:process.transition,note:account.process_transition_invoicemanually0
msgid "A statement with manual entries becomes a draft statement."
-msgstr ""
+msgstr "A statement with manual entries becomes a draft statement."
#. module: account
#: view:account.aged.trial.balance:0
@@ -6466,6 +6691,11 @@ msgid ""
"you request an interval of 30 days OpenERP generates an analysis of "
"creditors for the past month, past two months, and so on. "
msgstr ""
+"Struktura dospjelih dugovanja/potraživanja partnera je detaljniji izvještaj "
+"o dugovanjima/potraživanjima u intervalima. Za zadani period i broj dana "
+"intervala analize OpenERP izračunava tablicu dugovanja po intervalu. Ako "
+"zadate interval od 30 dana analiza će pokazati dugovanja do 30, 30 do 60, 60 "
+"do 90 dana i tako dalje. "
#. module: account
#: field:account.invoice,origin:0
@@ -6480,11 +6710,13 @@ msgid ""
"reports, so that you can see positive figures instead of negative ones in "
"expenses accounts."
msgstr ""
+"Omogućuje promjenu predznaka salda u izvještajima tako da se mogu prikazati "
+"pozitivni iznosi umjesto negativnih (duguje-potražuje)*predznak."
#. module: account
#: model:ir.actions.act_window,name:account.act_account_acount_move_line_open_unreconciled
msgid "Unreconciled Entries"
-msgstr "Otvorene stavke"
+msgstr "Otvorene stavke IOS-i"
#. module: account
#: model:ir.ui.menu,name:account.menu_menu_Bank_process
@@ -6511,6 +6743,10 @@ msgid ""
"an agreement with a customer or a supplier. With Define Recurring Entries, "
"you can create such entries to automate the postings in the system."
msgstr ""
+"A recurring entry is a miscellaneous entry that occurs on a recurrent basis "
+"from a specific date, i.e. corresponding to the signature of a contract or "
+"an agreement with a customer or a supplier. With Define Recurring Entries, "
+"you can create such entries to automate the postings in the system."
#. module: account
#: field:account.entries.report,product_uom_id:0
@@ -6527,6 +6763,10 @@ msgid ""
"basis. You can enter the coins that are in your cash box, and then post "
"entries when money comes in or goes out of the cash box."
msgstr ""
+"A Cash Register allows you to manage cash entries in your cash journals. "
+"This feature provides an easy way to follow up cash payments on a daily "
+"basis. You can enter the coins that are in your cash box, and then post "
+"entries when money comes in or goes out of the cash box."
#. module: account
#: selection:account.automatic.reconcile,power:0
@@ -6539,6 +6779,7 @@ msgid ""
"This date will be used as the invoice date for Refund Invoice and Period "
"will be chosen accordingly!"
msgstr ""
+"Datum računa za odobrenje, a fiskalni period će se odrediti automatski!"
#. module: account
#: field:account.aged.trial.balance,period_length:0
@@ -6560,18 +6801,26 @@ msgstr "Retci analitike"
#: model:ir.actions.act_window,help:account.action_account_analytic_account_tree2
msgid ""
"The normal chart of accounts has a structure defined by the legal "
-"requirement of the country. The analytic chart of accounts structure should "
+"requirement of the country. The analytic chart of account structure should "
"reflect your own business needs in term of costs/revenues reporting. They "
"are usually structured by contracts, projects, products or departements. "
"Most of the OpenERP operations (invoices, timesheets, expenses, etc) "
"generate analytic entries on the related account."
msgstr ""
+"Struktura kontnog plana glavne knjige zadana je zakonskim odredbama države u "
+"kojoj poslujemo.\n"
+"Struktura analitičkih kontnih planova bi trebala odražavati specifičnosti "
+"Vašeg poslovanja u pogledu izvještavanja o troškovima i prihodima. \n"
+"Uobičajeno je otvaranje troškovnih/upravljačkih analitičkih planova po "
+"odjelima, projektima, ugovorima, linijama proizvoda i slično.Većina "
+"aktivnosti u OpenERP-u (računi, ev.rada, troškovi radnika, itd) usput "
+"generiraju analitička knjiženja na relevantna analitička konta."
#. module: account
#: field:account.analytic.journal,line_ids:0
#: field:account.tax.code,line_ids:0
msgid "Lines"
-msgstr "Retci"
+msgstr "Stavke"
#. module: account
#: code:addons/account/invoice.py:521
@@ -6579,7 +6828,7 @@ msgstr "Retci"
msgid ""
"Can not find account chart for this company in invoice line account, Please "
"Create account."
-msgstr ""
+msgstr "Nedostaje kontni plan za ovu organizaciju. Kreirajte konta."
#. module: account
#: view:account.tax.template:0
@@ -6589,7 +6838,7 @@ msgstr "Predlošci poreza"
#. module: account
#: view:account.journal.select:0
msgid "Are you sure you want to open Journal Entries?"
-msgstr ""
+msgstr "Potvrdite otvaranje stavki."
#. module: account
#: view:account.state.open:0
@@ -6618,7 +6867,7 @@ msgstr "Izvod"
#. module: account
#: help:account.journal,default_debit_account_id:0
msgid "It acts as a default account for debit amount"
-msgstr ""
+msgstr "Uobičajeni konto za dugovni iznos"
#. module: account
#: model:ir.module.module,description:account.module_meta_information
@@ -6644,6 +6893,33 @@ msgid ""
"module named account_voucher.\n"
" "
msgstr ""
+"Accounting and Financial Management.\n"
+"====================================\n"
+"\n"
+"Financial and accounting module that covers:\n"
+"--------------------------------------------\n"
+"General accountings\n"
+"Cost / Analytic accounting\n"
+"Third party accounting\n"
+"Taxes management\n"
+"Budgets\n"
+"Customer and Supplier Invoices\n"
+"Bank statements\n"
+"Reconciliation process by partner\n"
+"\n"
+"Creates a dashboard for accountants that includes:\n"
+"--------------------------------------------------\n"
+"* List of Customer Invoice to Approve\n"
+"* Company Analysis\n"
+"* Graph of Aged Receivables\n"
+"* Graph of Treasury\n"
+"\n"
+"The processes like maintaining of general ledger is done through the defined "
+"financial Journals (entry move line or\n"
+"grouping is maintained through journal) for a particular financial year and "
+"for preparation of vouchers there is a\n"
+"module named account_voucher.\n"
+" "
#. module: account
#: model:ir.actions.act_window,help:account.action_account_journal_period_tree
@@ -6651,6 +6927,8 @@ msgid ""
"You can search for individual account entries through useful information. To "
"search for account entries, open a journal, then select a record line."
msgstr ""
+"You can search for individual account entries through useful information. To "
+"search for account entries, open a journal, then select a record line."
#. module: account
#: report:account.invoice:0
@@ -6669,7 +6947,7 @@ msgstr "Ukupan iznos dugovanja kupca"
#. module: account
#: model:ir.model,name:account.model_ir_sequence
msgid "ir.sequence"
-msgstr "ir.sequence"
+msgstr "ir.slijed"
#. module: account
#: field:account.journal.period,icon:0
@@ -6700,6 +6978,9 @@ msgid ""
"new counterpart but will share the same counterpart. This is used in fiscal "
"year closing."
msgstr ""
+"Označite ako ne želite da se kod knjiženja ovog dnevnika za svaku stavku "
+"stvara protustavka, već se kreira jedna protustavka za cijelu temeljnicu. "
+"Primjer: završna knjiženja kod zatvaranja poslovne godine."
#. module: account
#: field:account.bank.statement,closing_date:0
@@ -6732,6 +7013,8 @@ msgid ""
"Bank Account Number, Company bank account if Invoice is customer or supplier "
"refund, otherwise Partner bank account number."
msgstr ""
+"Broj računa banke, naš žiro rn. ako se radi o izlaznom računu ili odobrenju "
+"dobavljača, inače broj računa partnera."
#. module: account
#: help:account.tax,domain:0
@@ -6747,7 +7030,7 @@ msgstr ""
#: code:addons/account/account.py:938
#, python-format
msgid "You should have chosen periods that belongs to the same company"
-msgstr ""
+msgstr "You should have chosen periods that belongs to the same company"
#. module: account
#: field:account.fiscalyear.close,report_name:0
@@ -6767,7 +7050,7 @@ msgstr "Izvještavanje"
#. module: account
#: sql_constraint:account.journal:0
msgid "The code of the journal must be unique per company !"
-msgstr ""
+msgstr "Šifra dnevnika mora biti jedinstvena (za organizaciju) !"
#. module: account
#: field:account.bank.statement,ending_details_ids:0
@@ -6792,6 +7075,8 @@ msgid ""
"the system to go through the reconciliation process, based on the latest day "
"it have been reconciled."
msgstr ""
+"Pokazuje slijedećeg partnera u procesu zatvaranja IOS-a, a prema zadnjem "
+"danu zatvaranja IOS-a."
#. module: account
#: field:account.move.line.reconcile.writeoff,comment:0
@@ -6817,6 +7102,10 @@ msgid ""
"line of the expense account, OpenERP will propose to you automatically the "
"Tax related to this account and the counter-part \"Account Payable\"."
msgstr ""
+"Kartica za ručni upis knjiženja u OpenERP. Ako želite upisati ulazni račun, "
+"najprije upišite stavku troška, a program će automatski ponuditi slijedeću "
+"stavku(e) poreza prema definiranim porezima na kontu troška, a zatim i "
+"stavku ukupnog potraživanja dobavljača na kontu potraživanja partnera."
#. module: account
#: help:res.company,property_reserve_and_surplus_account:0
@@ -6825,13 +7114,16 @@ msgid ""
"will be added, Loss : Amount will be deducted.), Which is calculated from "
"Profit & Loss Report"
msgstr ""
+"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 "
+"Profit & Loss Report"
#. module: account
#: view:account.invoice.line:0
#: field:account.invoice.tax,invoice_id:0
#: model:ir.model,name:account.model_account_invoice_line
msgid "Invoice Line"
-msgstr "Redak računa"
+msgstr "Stavka računa"
#. module: account
#: field:account.balance.report,display_account:0
@@ -6861,7 +7153,7 @@ msgstr " dan u mjesecu= -1"
#. module: account
#: constraint:res.partner:0
msgid "Error ! You can not create recursive associated members."
-msgstr "Greška ! Ne možete kreirati rekurzivno pridružene članove."
+msgstr "Greška ! Ne možete kreirati rekurzivne pridružene članove."
#. module: account
#: help:account.journal,type:0
@@ -6873,13 +7165,19 @@ msgid ""
"Situation' to be used at the time of new fiscal year creation or end of year "
"entries generation."
msgstr ""
+"Select 'Sale' for Sale journal to be used at the time of making invoice. "
+"Select 'Purchase' for Purchase Journal to be used at the time of approving "
+"purchase order. Select 'Cash' to be used at the time of making payment. "
+"Select 'General' for miscellaneous operations. Select 'Opening/Closing "
+"Situation' to be used at the time of new fiscal year creation or end of year "
+"entries generation."
#. module: account
#: report:account.invoice:0
#: view:account.invoice:0
#: report:account.move.voucher:0
msgid "PRO-FORMA"
-msgstr "Predračun"
+msgstr "Pro-forma"
#. module: account
#: help:account.installer.modules,account_followup:0
@@ -6887,6 +7185,8 @@ msgid ""
"Helps you generate reminder letters for unpaid invoices, including multiple "
"levels of reminding and customized per-partner policies."
msgstr ""
+"Helps you generate reminder letters for unpaid invoices, including multiple "
+"levels of reminding and customized per-partner policies."
#. module: account
#: selection:account.entries.report,move_line_state:0
@@ -6930,6 +7230,7 @@ msgid ""
"This field is used for payable and receivable journal entries. You can put "
"the limit date for the payment of this line."
msgstr ""
+"Koristi se za salda konti kupaca i dobavljača. Upišite datum valute plaćanja."
#. module: account
#: code:addons/account/account_move_line.py:1271
@@ -6948,12 +7249,12 @@ msgstr "Dnevnik prodaje"
#: code:addons/account/wizard/account_move_journal.py:104
#, python-format
msgid "Open Journal Items !"
-msgstr "Otvori stavke dnevnika"
+msgstr "Prikaži stavke!"
#. module: account
#: model:ir.model,name:account.model_account_invoice_tax
msgid "Invoice Tax"
-msgstr "Porezi tačuna"
+msgstr "Porezi računa"
#. module: account
#: code:addons/account/account_move_line.py:1246
@@ -6993,7 +7294,7 @@ msgstr "Fiskalna godina za zatvaranje"
#: view:account.invoice.cancel:0
#: model:ir.actions.act_window,name:account.action_account_invoice_cancel
msgid "Cancel Selected Invoices"
-msgstr "Poništi odabrane račune"
+msgstr "Otkaži odabrane račune"
#. module: account
#: selection:account.entries.report,month:0
@@ -7030,7 +7331,7 @@ msgstr "Šifra"
#. module: account
#: view:validate.account.move:0
msgid "Post Journal Entries of a Journal"
-msgstr "Proknjiži"
+msgstr "Knjiženje temeljnica dnevnika"
#. module: account
#: view:product.product:0
@@ -7049,7 +7350,7 @@ msgstr "Gotovina"
#: field:account.fiscal.position.account,account_dest_id:0
#: field:account.fiscal.position.account.template,account_dest_id:0
msgid "Account Destination"
-msgstr "Ciljni račun"
+msgstr "Ciljni konto"
#. module: account
#: model:process.node,note:account.process_node_supplierpaymentorder0
@@ -7080,7 +7381,7 @@ msgstr "Bilanca"
msgid ""
"Check this if the price you use on the product and invoices includes this "
"tax."
-msgstr "Označite ovu kućicu ako cena proizvoda i racuna sadrze ovaj porez"
+msgstr "Cijena na proizvodu i računu sadrži ovaj porez."
#. module: account
#: view:account.state.open:0
@@ -7111,6 +7412,11 @@ msgid ""
"in which they will appear. Then you can create a new journal and link your "
"view to it."
msgstr ""
+"Here you can customize an existing journal view or create a new view. "
+"Journal views determine the way you can record entries in your journal. "
+"Select the fields you want to appear in a journal and determine the sequence "
+"in which they will appear. Then you can create a new journal and link your "
+"view to it."
#. module: account
#: view:account.payment.term.line:0
@@ -7166,6 +7472,9 @@ msgid ""
"to the higher ones. The order is important if you have a tax with several "
"tax children. In this case, the evaluation order is important."
msgstr ""
+"The sequence field is used to order the tax lines from the lowest sequences "
+"to the higher ones. The order is important if you have a tax with several "
+"tax children. In this case, the evaluation order is important."
#. module: account
#: model:ir.model,name:account.model_account_cashbox_line
@@ -7217,7 +7526,7 @@ msgstr "Stanje stavke"
#: model:ir.model,name:account.model_account_move_line_reconcile
#: model:ir.model,name:account.model_account_move_line_reconcile_writeoff
msgid "Account move line reconcile"
-msgstr ""
+msgstr "Account move line reconcile"
#. module: account
#: view:account.subscription.generate:0
@@ -7257,13 +7566,13 @@ msgstr "Partner"
#. module: account
#: help:account.change.currency,currency_id:0
msgid "Select a currency to apply on the invoice"
-msgstr ""
+msgstr "Odaberite valutu računa"
#. module: account
#: code:addons/account/wizard/account_invoice_refund.py:100
#, python-format
msgid "Can not %s draft/proforma/cancel invoice."
-msgstr ""
+msgstr "Nije moguće %s račun u stanju nacrt/proforma/otkazan."
#. module: account
#: code:addons/account/invoice.py:787
@@ -7297,6 +7606,8 @@ msgid ""
"Select Fiscal Year which you want to remove entries for its End of year "
"entries journal"
msgstr ""
+"Select Fiscal Year which you want to remove entries for its End of year "
+"entries journal"
#. module: account
#: field:account.tax.template,type_tax_use:0
@@ -7307,7 +7618,7 @@ msgstr "Primjena poreza za"
#: code:addons/account/account_bank_statement.py:346
#, python-format
msgid "The account entries lines are not in valid state."
-msgstr ""
+msgstr "The account entries lines are not in valid state."
#. module: account
#: field:account.account.type,close_method:0
@@ -7323,7 +7634,7 @@ msgstr "Račun '%s' je plaćen."
#. module: account
#: model:process.node,note:account.process_node_electronicfile0
msgid "Automatic entry"
-msgstr ""
+msgstr "Automatski upis"
#. module: account
#: constraint:account.tax.code.template:0
@@ -7341,8 +7652,8 @@ msgid ""
"If this box is checked, the system will try to group the accounting lines "
"when generating them from invoices."
msgstr ""
-"Ako je cekirano, sistem ce probati da grupise konta prilikom generisanja iz "
-"racuna."
+"Grupiranje istovrsnih redova računa u jednu stavku knjiženja (ako je isti "
+"konto, strana, porez ...)"
#. module: account
#: help:account.period,state:0
@@ -7350,6 +7661,8 @@ msgid ""
"When monthly periods are created. The state is 'Draft'. At the end of "
"monthly period it is in 'Done' state."
msgstr ""
+"When monthly periods are created. The state is 'Draft'. At the end of "
+"monthly period it is in 'Done' state."
#. module: account
#: report:account.analytic.account.inverted.balance:0
@@ -7413,11 +7726,14 @@ msgid ""
"will see the taxes with codes related to your legal statement according to "
"your country."
msgstr ""
+"The chart of taxes is used to generate your periodical tax statement. You "
+"will see the taxes with codes related to your legal statement according to "
+"your country."
#. module: account
#: view:account.installer.modules:0
msgid "Add extra Accounting functionalities to the ones already installed."
-msgstr ""
+msgstr "Add extra Accounting functionalities to the ones already installed."
#. module: account
#: report:account.analytic.account.cost_ledger:0
@@ -7447,7 +7763,7 @@ msgstr "Izaberite fiskalnu godinu"
#: code:addons/account/installer.py:495
#, python-format
msgid "Purchase Refund Journal"
-msgstr "Dnevnik povrata nabave"
+msgstr "Dnevnik odobrenja dobavljača"
#. module: account
#: help:account.tax.template,amount:0
@@ -7466,6 +7782,8 @@ msgid ""
"Modify Invoice: Cancels the current invoice and creates a new copy of it "
"ready for editing."
msgstr ""
+"Promjeni račun: Kreira storno/odobrenje cijelog računa, zatvara ga i kreira "
+"novu kopiju spremnu za izmjene."
#. module: account
#: model:ir.module.module,shortdesc:account.module_meta_information
@@ -7528,7 +7846,7 @@ msgstr "Dnevnik otpisa"
msgid ""
"This payment term will be used instead of the default one for the current "
"partner"
-msgstr "Ovi uvjeti plaćanja će se koristiti za ovog partnera."
+msgstr "Ovaj uvjet plaćanja će se koristiti kao uobičajeni za ovog partnera."
#. module: account
#: view:account.tax.template:0
@@ -7538,7 +7856,7 @@ msgstr "Kod za izračun cijena sa uključenim porezima"
#. module: account
#: field:account.chart.template,property_account_income_categ:0
msgid "Income Category Account"
-msgstr "Konto prihoda"
+msgstr "Zadani konto prihoda za grupu proizvoda"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_fiscal_position_template_form
@@ -7564,6 +7882,10 @@ msgid ""
"can easily generate refunds and reconcile them directly from the invoice "
"form."
msgstr ""
+"With Customer Refunds you can manage the credit notes for your customers. A "
+"refund is a document that credits an invoice completely or partially. You "
+"can easily generate refunds and reconcile them directly from the invoice "
+"form."
#. module: account
#: model:ir.actions.act_window,help:account.action_account_vat_declaration
@@ -7575,6 +7897,12 @@ msgid ""
"useful because it enables you to preview at any time the tax that you owe at "
"the start and end of the month or quarter."
msgstr ""
+"This menu print a VAT declaration based on invoices or payments. You can "
+"select one or several periods of the fiscal year. Information required for a "
+"tax declaration is automatically generated by OpenERP from invoices (or "
+"payments, in some countries). This data is updated in real time. That’s very "
+"useful because it enables you to preview at any time the tax that you owe at "
+"the start and end of the month or quarter."
#. module: account
#: report:account.invoice:0
@@ -7584,7 +7912,7 @@ msgstr "Tel.:"
#. module: account
#: field:account.account,company_currency_id:0
msgid "Company Currency"
-msgstr "Valuta tvrtke"
+msgstr "Valuta organizacije"
#. module: account
#: model:process.node,name:account.process_node_paymententries0
@@ -7599,6 +7927,9 @@ msgid ""
"added, Loss: Amount will be duducted), which is calculated from Profilt & "
"Loss Report"
msgstr ""
+"This Account is used for transfering Profit/Loss (Profit: Amount will be "
+"added, Loss: Amount will be duducted), which is calculated from Profilt & "
+"Loss Report"
#. module: account
#: help:account.move.line,blocked:0
@@ -7606,6 +7937,8 @@ msgid ""
"You can check this box to mark this journal item as a litigation with the "
"associated partner"
msgstr ""
+"Možete provjeriti ovaj okvir kako bi obilježili stavku temeljnice kao "
+"poveznicu s pripadajućim partnerom."
#. module: account
#: field:account.move.line,reconcile_partial_id:0
@@ -7616,17 +7949,17 @@ msgstr "Djelomično zatvaranje"
#. module: account
#: model:ir.model,name:account.model_account_analytic_inverted_balance
msgid "Account Analytic Inverted Balance"
-msgstr ""
+msgstr "Account Analytic Inverted Balance"
#. module: account
#: model:ir.model,name:account.model_account_common_report
msgid "Account Common Report"
-msgstr ""
+msgstr "Računovodstveni izvještaji"
#. module: account
#: model:process.transition,name:account.process_transition_filestatement0
msgid "Automatic import of the bank sta"
-msgstr ""
+msgstr "Automatski uvoz bankovnih izvoda"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_journal_view
@@ -7637,19 +7970,19 @@ msgstr "Pogledi dnevnika"
#. module: account
#: model:ir.model,name:account.model_account_move_bank_reconcile
msgid "Move bank reconcile"
-msgstr ""
+msgstr "Move bank reconcile"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_type_form
#: model:ir.ui.menu,name:account.menu_action_account_type_form
msgid "Account Types"
-msgstr "Tipovi konta"
+msgstr "Account Types"
#. module: account
#: code:addons/account/invoice.py:897
#, python-format
msgid "Cannot create invoice move on centralised journal"
-msgstr ""
+msgstr "Cannot create invoice move on centralised journal"
#. module: account
#: field:account.account.type,report_type:0
@@ -7684,7 +8017,7 @@ msgstr "Saldo blagajne"
#. module: account
#: model:ir.model,name:account.model_account_fiscalyear_close_state
msgid "Fiscalyear Close state"
-msgstr ""
+msgstr "Fiscalyear Close state"
#. module: account
#: field:account.invoice.refund,journal_id:0
@@ -7714,18 +8047,22 @@ msgid ""
"sales orders or deliveries. You should only confirm them before sending them "
"to your customers."
msgstr ""
+"Izlazni računi koje izdajete Vašim kupcima. OpenERP obično kreira račune "
+"automatski iz prodajnih naloga ili otpremnica. Vi ih trebate provjeriti i "
+"potvrditi prije slanja kupcima. Potvrdom se generira broj računa i "
+"automatsko knjiženje dokumenta."
#. module: account
#: view:account.entries.report:0
#: view:board.board:0
#: model:ir.actions.act_window,name:account.action_company_analysis_tree
msgid "Company Analysis"
-msgstr "Analiza tvrtke"
+msgstr "Analiza organizacije"
#. module: account
#: help:account.invoice,account_id:0
msgid "The partner account used for this invoice."
-msgstr "Konto partnera za ovu fakturu"
+msgstr "Konto partnera za ovaj račun"
#. module: account
#: field:account.tax.code,parent_id:0
@@ -7750,6 +8087,7 @@ msgstr "Dnevnik URA"
#: view:account.invoice.refund:0
msgid "Refund Invoice: Creates the refund invoice, ready for editing."
msgstr ""
+"Račun odobrenja: Kreira nacrt računa odobrenja, spremnog za promjene."
#. module: account
#: field:account.invoice.line,price_subtotal:0
@@ -7759,12 +8097,12 @@ msgstr "Podzbroj"
#. module: account
#: view:account.vat.declaration:0
msgid "Print Tax Statement"
-msgstr ""
+msgstr "Ispis porezne izjave"
#. module: account
#: view:account.model.line:0
msgid "Journal Entry Model Line"
-msgstr ""
+msgstr "Stavka modela temeljnice"
#. module: account
#: view:account.invoice:0
@@ -7786,6 +8124,7 @@ msgstr "Dobavljači"
msgid ""
"You cannot create more than one move per period on centralized journal"
msgstr ""
+"You cannot create more than one move per period on centralized journal"
#. module: account
#: view:account.journal:0
@@ -7795,14 +8134,14 @@ msgstr "Dozvoljene vrste konta (prazno za bez kontrole)"
#. module: account
#: view:res.partner:0
msgid "Supplier Accounting Properties"
-msgstr "Svojstva računovodstva dobavljača"
+msgstr "SK Dobavljača"
#. module: account
#: help:account.move.line,amount_residual:0
msgid ""
"The residual amount on a receivable or payable of a journal entry expressed "
"in the company currency."
-msgstr ""
+msgstr "Ostatak iznosa dugovanja ili potraživanja u valuti organizacije."
#. module: account
#: view:account.payment.term.line:0
@@ -7828,7 +8167,7 @@ msgstr "Fiskalna godina zatvorena"
#. module: account
#: sql_constraint:account.account:0
msgid "The code of the account must be unique per company !"
-msgstr ""
+msgstr "Šifra konta mora biti jedinstvena za jednu organizaciju !"
#. module: account
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened
@@ -7905,7 +8244,7 @@ msgstr ""
msgid ""
"The amount of the voucher must be the same amount as the one on the "
"statement line"
-msgstr ""
+msgstr "Iznos vaučera mora biti jednak iznosu stavke izvoda banke/blagajne."
#. module: account
#: code:addons/account/account_move_line.py:1131
@@ -7923,14 +8262,14 @@ msgstr "Prazno za sve otvorene fiskalne godine"
#: code:addons/account/account_move_line.py:1056
#, python-format
msgid "The account move (%s) for centralisation has been confirmed!"
-msgstr ""
+msgstr "The account move (%s) for centralisation has been confirmed!"
#. module: account
#: help:account.move.line,amount_currency:0
msgid ""
"The amount expressed in an optional other currency if it is a multi-currency "
"entry."
-msgstr ""
+msgstr "Iznos u drugoj valuti ."
#. module: account
#: view:account.account:0
@@ -7965,11 +8304,12 @@ msgstr "Valuta"
msgid ""
"Gives the sequence order when displaying a list of bank statement lines."
msgstr ""
+"Gives the sequence order when displaying a list of bank statement lines."
#. module: account
#: model:process.transition,note:account.process_transition_validentries0
msgid "Accountant validates the accounting entries coming from the invoice."
-msgstr ""
+msgstr "Knjigovođa potvrđuje temeljnicu nastalu potvrdom računa."
#. module: account
#: model:ir.actions.act_window,help:account.action_account_fiscalyear_form
@@ -7982,6 +8322,13 @@ msgid ""
"would be referred to as FY 2011. You are not obliged to follow the actual "
"calendar year."
msgstr ""
+"Definirajte financijsku godinu poduzeća u skladu s vašim potrebama. "
+"Financijska godina je razdoblje na temelju kojeg su postavljeni računi "
+"poduzeća (najčešće 12 mjeseci) .Financijska godina obično nazivaju prema "
+"datum u kojem ista završava. Na primjer, ako tvrtka je financijskoj godini "
+"završava 30. studenoga 2011, sve između 1 prosinca 2010 i 30. studeni 2011 "
+"odnositi će se kao FG 2011. Niste dužni slijediti stvarei kalendarske "
+"godine."
#. module: account
#: model:ir.actions.act_window,name:account.act_account_acount_move_line_reconcile_open
@@ -8005,6 +8352,15 @@ msgid ""
"* The 'Paid' state is set automatically when invoice is paid. \n"
"* The 'Cancelled' state is used when user cancel invoice."
msgstr ""
+" * 'Nacrt' - upis računa je u tijeku, račun još nije potvrđen. \n"
+"* 'Pro-forma' - račun još nije pravovaljan - nije mu dodijeljen broj računa. "
+" \n"
+"* 'Otvoren' - broj računa je dodijeljen, račun je s tim brojem knjižen i "
+"ostaje otvoren dok se ne plati. \n"
+"* 'Plaćen' - stanje se automatski postavlja zatvaranjem svih IOS-a ovog "
+"računa. \n"
+"* 'Otkazan' - račun je iz nekog razloga otkazan i ostaje u sistemu radi "
+"evidencije."
#. module: account
#: field:account.invoice.refund,period:0
@@ -8014,7 +8370,7 @@ msgstr "Forsiraj period"
#. module: account
#: model:ir.model,name:account.model_account_partner_balance
msgid "Print Account Partner Balance"
-msgstr ""
+msgstr "Print Account Partner Balance"
#. module: account
#: field:res.partner,contract_ids:0
@@ -8036,7 +8392,7 @@ msgstr "Dnevnik početnog stanja"
#. module: account
#: model:process.transition,note:account.process_transition_customerinvoice0
msgid "Draft invoices are checked, validated and printed."
-msgstr ""
+msgstr "Nacrti računa se provjeravaju, potvrđuju i ispisuju."
#. module: account
#: help:account.chart.template,property_reserve_and_surplus_account:0
@@ -8045,6 +8401,9 @@ msgid ""
"will be added, Loss: Amount will be deducted.), Which is calculated from "
"Profilt & Loss Report"
msgstr ""
+"Ovaj račun se koristi za prijenos Dobiti / gubitka (ako je Profit: Iznos će "
+"biti dodan, gubitak: Iznos će biti odbijen.),Izračunava se iz Izvješća o "
+"dobiti / gubitku"
#. module: account
#: field:account.invoice,reference_type:0
@@ -8083,6 +8442,8 @@ msgid ""
"the amount of this case into its parent. For example, set 1/-1 if you want "
"to add/substract it."
msgstr ""
+"Koeficijent zbrajanja na nadređenu grupu. Npr. 1/-1 za zbrajanje/oduzimanje "
+"ili 0 za izostavljanje."
#. module: account
#: view:account.invoice:0
@@ -8106,7 +8467,7 @@ msgstr "Otvori dnevnik"
#. module: account
#: report:account.analytic.account.journal:0
msgid "KI"
-msgstr ""
+msgstr "KI"
#. module: account
#: report:account.analytic.account.cost_ledger:0
@@ -8120,7 +8481,7 @@ msgstr "Od perioda"
#: code:addons/account/installer.py:476
#, python-format
msgid "Sales Refund Journal"
-msgstr "Dnevnik povrata IRA"
+msgstr "Dnevnik odobrenja kupcima"
#. module: account
#: code:addons/account/account.py:927
@@ -8129,6 +8490,8 @@ msgid ""
"You cannot modify company of this period as its related record exist in "
"Entry Lines"
msgstr ""
+"You cannot modify company of this period as its related record exist in "
+"Entry Lines"
#. module: account
#: view:account.move:0
@@ -8145,7 +8508,7 @@ msgstr "Registrirana plaćanja"
#. module: account
#: view:account.fiscalyear.close.state:0
msgid "Close states of Fiscal year and periods"
-msgstr ""
+msgstr "Close states of Fiscal year and periods"
#. module: account
#: view:account.analytic.line:0
@@ -8164,7 +8527,7 @@ msgstr "Analitika"
#: model:process.node,name:account.process_node_invoiceinvoice0
#: model:process.node,name:account.process_node_supplierinvoiceinvoice0
msgid "Create Invoice"
-msgstr "Stvori račun"
+msgstr "Kreiraj račun"
#. module: account
#: field:account.installer,purchase_tax:0
@@ -8192,7 +8555,7 @@ msgstr "Postavke Vaše računovodstvene aplikacije"
#: code:addons/account/installer.py:479
#, python-format
msgid "SCNJ"
-msgstr ""
+msgstr "SCNJ"
#. module: account
#: model:process.transition,note:account.process_transition_analyticinvoice0
@@ -8200,6 +8563,8 @@ msgid ""
"Analytic costs (timesheets, some purchased products, ...) come from analytic "
"accounts. These generate draft invoices."
msgstr ""
+"Analitički troškovi (ev. rada, nabava, ...) dolaze sa analitičkih "
+"konta(računa). Oni mogu kreirati nacrte računa."
#. module: account
#: help:account.journal,view_id:0
@@ -8209,6 +8574,10 @@ msgid ""
"in which order. You can create your own view for a faster encoding in each "
"journal."
msgstr ""
+"Gives the view used when writing or browsing entries in this journal. The "
+"view tells OpenERP which fields should be visible, required or readonly and "
+"in which order. You can create your own view for a faster encoding in each "
+"journal."
#. module: account
#: field:account.period,date_stop:0
@@ -8243,7 +8612,7 @@ msgstr "Od perioda"
#: code:addons/account/account.py:2333
#, python-format
msgid "Cannot locate parent code for template account!"
-msgstr ""
+msgstr "Cannot locate parent code for template account!"
#. module: account
#: field:account.aged.trial.balance,direction_selection:0
@@ -8274,7 +8643,7 @@ msgstr "Ukupno potražuje"
#. module: account
#: model:process.transition,note:account.process_transition_suppliervalidentries0
msgid "Accountant validates the accounting entries coming from the invoice. "
-msgstr ""
+msgstr "Knjigovođa potvrđuje temeljnicu nastalu potvrdom računa. "
#. module: account
#: code:addons/account/invoice.py:1008
@@ -8283,6 +8652,7 @@ msgid ""
"You cannot cancel the Invoice which is Partially Paid! You need to "
"unreconcile concerned payment entries!"
msgstr ""
+"Ne možete otkazati račun koji je djelomično plaćen, dok ne otvorite stavke!"
#. module: account
#: report:account.overdue:0
@@ -8308,7 +8678,7 @@ msgstr "Ne može se knjižiti na sintetički konto."
#: code:addons/account/wizard/account_change_currency.py:71
#, python-format
msgid "Current currency is not confirured properly !"
-msgstr ""
+msgstr "Current currency is not confirured properly !"
#. module: account
#: model:ir.actions.act_window,help:account.action_invoice_tree4
@@ -8318,6 +8688,10 @@ msgid ""
"partially. You can easily generate refunds and reconcile them directly from "
"the invoice form."
msgstr ""
+"With Supplier Refunds you can manage the credit notes you receive from your "
+"suppliers. A refund is a document that credits an invoice completely or "
+"partially. You can easily generate refunds and reconcile them directly from "
+"the invoice form."
#. module: account
#: view:account.account.template:0
@@ -8338,7 +8712,7 @@ msgstr "RDG (konta prihoda)"
#: view:account.tax:0
#: view:account.tax.template:0
msgid "Keep empty to use the income account"
-msgstr "Ostavite prazno za koto prihoda"
+msgstr "Ostavite prazno za konto prihoda"
#. module: account
#: field:account.account,balance:0
@@ -8373,7 +8747,7 @@ msgstr "Saldo"
#. module: account
#: model:process.node,note:account.process_node_supplierbankstatement0
msgid "Manually or automatically entered in the system"
-msgstr ""
+msgstr "Manually or automatically entered in the system"
#. module: account
#: report:account.account.balance:0
@@ -8410,6 +8784,8 @@ msgid ""
"This report is analysis by partner. It is a PDF report containing one line "
"per partner representing the cumulative credit balance."
msgstr ""
+"This report is analysis by partner. It is a PDF report containing one line "
+"per partner representing the cumulative credit balance."
#. module: account
#: selection:account.account,type:0
@@ -8445,18 +8821,24 @@ msgid ""
"the income account. OpenERP will propose to you automatically the Tax "
"related to this account and the counter-part \"Account receivable\"."
msgstr ""
+"Kartica za ručni upis knjiženja u OpenERP. Ako želite knjižiti izlazni račun "
+"kupcu, odaberite dnevnik (vrsta dnevnika - izlazni računi) i fiskalni "
+"period. Najprije upišite stavku prihoda, a program će automatski ponuditi "
+"slijedeću stavku(e) poreza prema definiranim porezima na kontu troška, a "
+"zatim i stavku ukupnog dugovanja kupca na konto dugovanja sa kartice "
+"partnera."
#. module: account
#: code:addons/account/account_bank_statement.py:391
#, python-format
msgid "Cannot delete bank statement(s) which are already confirmed !"
-msgstr ""
+msgstr "Ne možete obrisati bankovni izvod koji je prethodno potvrđen !"
#. module: account
#: code:addons/account/wizard/account_automatic_reconcile.py:152
#, python-format
msgid "You must select accounts to reconcile"
-msgstr ""
+msgstr "Morate odabrati konta za zatvaranje"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_receivable_graph
@@ -8466,7 +8848,7 @@ msgstr "Saldo po vrsti konta"
#. module: account
#: model:process.transition,note:account.process_transition_entriesreconcile0
msgid "Accounting entries are the first input of the reconciliation."
-msgstr ""
+msgstr "Accounting entries are the first input of the reconciliation."
#. module: account
#: model:ir.actions.act_window,help:account.action_account_period_form
@@ -8478,6 +8860,11 @@ msgid ""
"closed or left open depending on your company's activities over a specific "
"period."
msgstr ""
+"Ovdje se definiraju fiskalni periodi. Ovi knjigovodstveni periodi bi trebali "
+"odgovarati periodima po kojima vaša organizacija ima obvezu prijave poreza "
+"na dodanu vrijednost. Najčešće se radi o mjesečnim ili tromjesečnim "
+"razdobljima. Zatvaranje perioda zabranjuje daljnja knjiženja za taj period. "
+"Preporuča se zatvaranje perioda nakon predaje porezne prijave."
#. module: account
#: report:account.move.voucher:0
@@ -8510,12 +8897,12 @@ msgstr "Temeljnica"
#: code:addons/account/account_move_line.py:1128
#, python-format
msgid "You can not change the tax, you should remove and recreate lines !"
-msgstr ""
+msgstr "You can not change the tax, you should remove and recreate lines !"
#. module: account
#: report:account.central.journal:0
msgid "A/C No."
-msgstr ""
+msgstr "A/C No."
#. module: account
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_bank_statement
@@ -8527,11 +8914,12 @@ msgstr "Bankovni izvodi"
msgid ""
"Creates an account with the selected template under this existing parent."
msgstr ""
+"Creates an account with the selected template under this existing parent."
#. module: account
#: selection:account.model.line,date_maturity:0
msgid "Date of the day"
-msgstr ""
+msgstr "Date of the day"
#. module: account
#: code:addons/account/wizard/account_move_bank_reconcile.py:49
@@ -8551,7 +8939,7 @@ msgstr "Transakcije zatvaranja"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_common_menu
msgid "Common Report"
-msgstr ""
+msgstr "Izvještaji"
#. module: account
#: view:account.account:0
@@ -8566,6 +8954,8 @@ msgid ""
"The journal must have centralised counterpart without the Skipping draft "
"state option checked!"
msgstr ""
+"The journal must have centralised counterpart without the Skipping draft "
+"state option checked!"
#. module: account
#: model:process.node,note:account.process_node_paymententries0
@@ -8585,7 +8975,7 @@ msgstr "Srpanj"
#. module: account
#: view:account.account:0
-msgid "Chart of Accounts"
+msgid "Chart of accounts"
msgstr "Kontni plan"
#. module: account
@@ -8632,7 +9022,7 @@ msgstr "Do perioda"
#: field:account.print.journal,chart_account_id:0
#: field:account.report.general.ledger,chart_account_id:0
#: field:account.vat.declaration,chart_account_id:0
-msgid "Chart of Accounts"
+msgid "Chart of account"
msgstr "Kontni plan"
#. module: account
@@ -8648,7 +9038,7 @@ msgstr "Standardne stavke"
#. module: account
#: model:ir.model,name:account.model_account_subscription
msgid "Account Subscription"
-msgstr ""
+msgstr "Pretplata"
#. module: account
#: code:addons/account/invoice.py:717
@@ -8698,7 +9088,7 @@ msgstr "Početni datum"
#. module: account
#: model:process.node,name:account.process_node_supplierdraftinvoices0
msgid "Draft Invoices"
-msgstr "Neodobreni računi"
+msgstr "Nacrti računa"
#. module: account
#: selection:account.account.type,close_method:0
@@ -8716,7 +9106,7 @@ msgstr "Pogrešan ukupni iznos !"
#. module: account
#: field:account.journal,sequence_id:0
msgid "Entry Sequence"
-msgstr "Redoslijed unosa"
+msgstr "Brojčana serija"
#. module: account
#: model:ir.actions.act_window,help:account.action_account_period_tree
@@ -8729,6 +9119,13 @@ msgid ""
"open period. Close a period when you do not want to record new entries and "
"want to lock this period for tax related calculation."
msgstr ""
+"A period is a fiscal period of time during which accounting entries should "
+"be recorded for accounting related activities. Monthly period is the norm "
+"but depending on your countries or company needs, you could also have "
+"quarterly periods. Closing a period will make it impossible to record new "
+"accounting entries, all new entries should then be made on the following "
+"open period. Close a period when you do not want to record new entries and "
+"want to lock this period for tax related calculation."
#. module: account
#: view:account.analytic.account:0
@@ -8739,7 +9136,7 @@ msgstr "Na čekanju"
#: model:process.transition,name:account.process_transition_analyticinvoice0
#: model:process.transition,name:account.process_transition_supplieranalyticcost0
msgid "From analytic accounts"
-msgstr ""
+msgstr "Iz analitičkog računa"
#. module: account
#: field:account.installer.modules,account_payment:0
@@ -8779,6 +9176,9 @@ msgid ""
"Make sure you have configured Payment Term properly !\n"
"It should contain atleast one Payment Term Line with type \"Balance\" !"
msgstr ""
+"You cannot validate a non-balanced entry !\n"
+"Make sure you have configured Payment Term properly !\n"
+"It should contain atleast one Payment Term Line with type \"Balance\" !"
#. module: account
#: help:res.partner,property_account_payable:0
@@ -8786,6 +9186,8 @@ msgid ""
"This account will be used instead of the default one as the payable account "
"for the current partner"
msgstr ""
+"Konto obveza prema dobavljačima za ovog partnera, ako je različit od "
+"uobičajenog (22...)"
#. module: account
#: field:account.period,special:0
@@ -8802,7 +9204,7 @@ msgstr "Sekundarna valuta"
#. module: account
#: model:ir.model,name:account.model_validate_account_move
msgid "Validate Account Move"
-msgstr ""
+msgstr "Validate Account Move"
#. module: account
#: field:account.account,credit:0
@@ -8836,6 +9238,8 @@ msgid ""
"created. If you leave that field empty, it will use the same journal as the "
"current invoice."
msgstr ""
+"Odaberite dnevnik za račun odobrenja/storna. Ako ostavite prazno, koristiti "
+"će se dnevnik ovog računa (isti dnevnik)."
#. module: account
#: report:account.move.voucher:0
@@ -8846,12 +9250,12 @@ msgstr ""
#: view:account.general.journal:0
#: model:ir.ui.menu,name:account.menu_account_general_journal
msgid "General Journals"
-msgstr ""
+msgstr "General Journals"
#. module: account
#: view:account.model:0
msgid "Journal Entry Model"
-msgstr ""
+msgstr "Model temeljnice"
#. module: account
#: code:addons/account/wizard/account_use_model.py:44
@@ -8861,6 +9265,8 @@ msgid ""
"payment term!\n"
"Please define partner on it!"
msgstr ""
+"Datum dospijeća stavke unosa generira se od strane modela linije '%s', te se "
+"temelji se na roku plaćanja partnera! NMolimo definirati partnera!"
#. module: account
#: field:account.cashbox.line,number:0
@@ -8942,7 +9348,7 @@ msgstr "Travanj"
#. module: account
#: view:account.move.line.reconcile.select:0
msgid "Open for Reconciliation"
-msgstr ""
+msgstr "Open for Reconciliation"
#. module: account
#: field:account.account,parent_left:0
@@ -8955,12 +9361,15 @@ msgid ""
"Refund invoice base on this type. You can not Modify and Cancel if the "
"invoice is already reconciled"
msgstr ""
+"Kreiraj račun odobrenja. Zatvorene (plaćene) račune ne možete mijenjati ili "
+"otkazati."
#. module: account
#: help:account.installer.modules,account_analytic_plans:0
msgid ""
"Allows invoice lines to impact multiple analytic accounts simultaneously."
msgstr ""
+"Allows invoice lines to impact multiple analytic accounts simultaneously."
#. module: account
#: field:account.installer,sale_tax:0
@@ -8971,7 +9380,7 @@ msgstr "Porez prodaje(%)"
#: model:ir.actions.act_window,name:account.action_invoice_tree2
#: model:ir.ui.menu,name:account.menu_action_invoice_tree2
msgid "Supplier Invoices"
-msgstr "Računi dobavljača"
+msgstr "Ulazni računi"
#. module: account
#: view:account.analytic.line:0
@@ -8996,6 +9405,9 @@ msgid ""
"and is the process of transferring debit and credit amounts from a journal "
"of original entry to a ledger book."
msgstr ""
+"Ažuriranje temeljnice \"knjiženje u gl. knjigu\" je proces prijenosa iznosa "
+"duguje i potražuje iz dnevnika u glavnu knjigu. Kod nekih izvještaja možete "
+"birati između ažuriranih stavaka ili svih evidentiranih stavaka."
#. module: account
#: report:account.tax.code.entries:0
@@ -9018,6 +9430,8 @@ msgid ""
"This report allows you to print or generate a pdf of your general ledger "
"with details of all your account journals"
msgstr ""
+"This report allows you to print or generate a pdf of your general ledger "
+"with details of all your account journals"
#. module: account
#: selection:account.account,type:0
@@ -9115,7 +9529,7 @@ msgstr "Dan u mjesecu"
#: field:account.fiscal.position.tax,tax_src_id:0
#: field:account.fiscal.position.tax.template,tax_src_id:0
msgid "Tax Source"
-msgstr "Porez"
+msgstr "Iz poreza"
#. module: account
#: report:account.balancesheet:0
@@ -9133,7 +9547,7 @@ msgstr "Brojači poslovne godine"
#. module: account
#: help:account.model,name:0
msgid "This is a model for recurring accounting entries"
-msgstr "Ovo je model za ponavljajuće računovodstvene unose"
+msgstr "Ovo je predložak za ponavljajuće temeljnice"
#. module: account
#: code:addons/account/account_analytic_line.py:100
@@ -9146,7 +9560,7 @@ msgstr "Ne postoji konto prihoda za ovaj proizvod: \"%s\" (id:%d)"
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
msgid "JRNL"
-msgstr ""
+msgstr "JRNL"
#. module: account
#: view:account.payment.term.line:0
@@ -9209,22 +9623,22 @@ msgstr "Dnevnik: Svi"
#: field:analytic.entries.report,company_id:0
#: field:wizard.multi.charts.accounts,company_id:0
msgid "Company"
-msgstr "Tvrtka"
+msgstr "Organizacija"
#. module: account
#: model:ir.ui.menu,name:account.menu_action_subscription_form
msgid "Define Recurring Entries"
-msgstr ""
+msgstr "Postava ponavljajućih dok."
#. module: account
#: field:account.entries.report,date_maturity:0
msgid "Date Maturity"
-msgstr ""
+msgstr "Datum valute"
#. module: account
#: help:account.bank.statement,total_entry_encoding:0
msgid "Total cash transactions"
-msgstr ""
+msgstr "Ukupno transakcije blagajne"
#. module: account
#: help:account.partner.reconcile.process,today_reconciled:0
@@ -9233,6 +9647,9 @@ msgid ""
"reconciliation process today. The current partner is counted as already "
"processed."
msgstr ""
+"This figure depicts the total number of partners that have gone throught the "
+"reconciliation process today. The current partner is counted as already "
+"processed."
#. module: account
#: view:account.fiscalyear:0
@@ -9242,12 +9659,12 @@ msgstr "Stvori mjesečna razdoblja"
#. module: account
#: field:account.tax.code.template,sign:0
msgid "Sign For Parent"
-msgstr "Predznak za nadređeni"
+msgstr "Predznak za nadređenog"
#. module: account
#: model:ir.model,name:account.model_account_balance_report
msgid "Trial Balance Report"
-msgstr ""
+msgstr "Izvješće stanja bilance"
#. module: account
#: model:ir.actions.act_window,name:account.action_bank_statement_draft_tree
@@ -9258,12 +9675,12 @@ msgstr "Nepotvrđeni izvodi"
#: model:process.transition,note:account.process_transition_statemententries0
msgid ""
"Manual or automatic creation of payment entries according to the statements"
-msgstr ""
+msgstr "Ručno ili automatsko kreiranje stavki plaćanja prema izvodima"
#. module: account
#: view:account.invoice:0
msgid "Invoice lines"
-msgstr "Retci računa"
+msgstr "Stavke računa"
#. module: account
#: field:account.aged.trial.balance,period_to:0
@@ -9320,17 +9737,17 @@ msgstr "Knjiženje otpisa"
#. module: account
#: model:process.node,note:account.process_node_paidinvoice0
msgid "Invoice's state is Done"
-msgstr ""
+msgstr "Stanje računa je zatvoreno/plaćeno"
#. module: account
#: model:ir.model,name:account.model_report_account_sales
msgid "Report of the Sales by Account"
-msgstr ""
+msgstr "Izvještaj o prodaji po kontu"
#. module: account
#: model:ir.model,name:account.model_account_fiscal_position_account
msgid "Accounts Fiscal Position"
-msgstr ""
+msgstr "Fiskalna pozicija"
#. module: account
#: report:account.invoice:0
@@ -9340,7 +9757,7 @@ msgstr ""
#: model:process.process,name:account.process_process_supplierinvoiceprocess0
#: selection:report.invoice.created,type:0
msgid "Supplier Invoice"
-msgstr "Račun Dobavljača"
+msgstr "Ulazni račun"
#. module: account
#: field:account.account,debit:0
@@ -9370,7 +9787,7 @@ msgstr "Duguje"
#. module: account
#: field:account.invoice,invoice_line:0
msgid "Invoice Lines"
-msgstr "Retci računa"
+msgstr "Stavke računa"
#. module: account
#: constraint:account.account.template:0
@@ -9399,7 +9816,7 @@ msgstr "Stavka je već zatvorena"
#. module: account
#: model:ir.model,name:account.model_report_account_receivable
msgid "Receivable accounts"
-msgstr "Konta Potraživanja"
+msgstr "Konta potraživanja"
#. module: account
#: selection:account.model.line,date_maturity:0
@@ -9451,7 +9868,7 @@ msgstr "Podatci analitičkog konta"
#. module: account
#: view:account.tax.code.template:0
msgid "Account Tax Code Template"
-msgstr "Predložak šifre poreza"
+msgstr "Predložak porezne grupe"
#. module: account
#: model:process.node,name:account.process_node_manually0
@@ -9476,7 +9893,7 @@ msgstr "Ispiši analitičke dnevnike"
#. module: account
#: view:account.analytic.line:0
msgid "Fin.Account"
-msgstr ""
+msgstr "Fin.konto"
#. module: account
#: model:ir.actions.act_window,name:account.action_aged_receivable_graph
@@ -9487,7 +9904,7 @@ msgstr "Stara potraživanja"
#. module: account
#: field:account.tax,applicable_type:0
msgid "Applicability"
-msgstr ""
+msgstr "Primjenjivost"
#. module: account
#: code:addons/account/wizard/account_move_journal.py:165
@@ -9498,18 +9915,18 @@ msgstr "Ovo razdoblje je već zatvoreno !"
#. module: account
#: help:account.move.line,currency_id:0
msgid "The optional other currency if it is a multi-currency entry."
-msgstr ""
+msgstr "The optional other currency if it is a multi-currency entry."
#. module: account
#: model:process.transition,note:account.process_transition_invoiceimport0
msgid ""
"Import of the statement in the system from a supplier or customer invoice"
-msgstr ""
+msgstr "Uvoz naloga u sistem iz ulaznog ili izlaznog računa"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_periodical_processing_billing
msgid "Billing"
-msgstr "Fakturiranje"
+msgstr "Billing"
#. module: account
#: view:account.account:0
@@ -9526,6 +9943,12 @@ msgid ""
"may keep several types of specialized journals such as a cash journal, "
"purchase journal, sales journal..."
msgstr ""
+"Upravljanje dnevnicima Vaše organizacije. Dnevnik se koristi za "
+"evidentiranje svih knjigovodstvenih transakcija koristeći dvojno "
+"knjigovodstvo. Prema naravi aktivnosti i broju transakcija organizacije "
+"koristite više tipova specijaliziranih dnevnika kao što su banka, blagajna, "
+"ulazni računi, izlazni računi i sl. Možete voditi neograničen broj dnevnika, "
+"već prema potrebama."
#. module: account
#: model:ir.model,name:account.model_account_analytic_chart
@@ -9535,7 +9958,7 @@ msgstr "Analitički kontni plan"
#. module: account
#: help:account.invoice,residual:0
msgid "Remaining amount due."
-msgstr "Ostatak dugovnog iznosa."
+msgstr "Ostatak dugovanja."
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_statistic_report_statement
@@ -9558,7 +9981,7 @@ msgstr "Mapiranje konta"
#: code:addons/account/invoice.py:346
#, python-format
msgid "Invoice '%s' is waiting for validation."
-msgstr ""
+msgstr "Račun '%s' čeka potvrdu."
#. module: account
#: selection:account.entries.report,month:0
@@ -9583,7 +10006,7 @@ msgstr "Konto prihoda ili troškova vezan za odabrani proizvod."
#: code:addons/account/account_move_line.py:1117
#, python-format
msgid "The date of your Journal Entry is not in the defined period!"
-msgstr ""
+msgstr "The date of your Journal Entry is not in the defined period!"
#. module: account
#: field:account.subscription,period_total:0
@@ -9594,7 +10017,7 @@ msgstr "Broj perioda"
#: report:account.general.journal:0
#: model:ir.actions.report.xml,name:account.account_general_journal
msgid "General Journal"
-msgstr "Glavni dnevnik"
+msgstr "Opći dnevnik"
#. module: account
#: view:account.invoice:0
@@ -9638,7 +10061,7 @@ msgstr "Dokumenti računovodstva"
#. module: account
#: model:ir.model,name:account.model_validate_account_move_lines
msgid "Validate Account Move Lines"
-msgstr ""
+msgstr "Ažuriraj stavke"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_cost_ledger_journal
@@ -9649,12 +10072,12 @@ msgstr "Knjiga troškova (Samo količine)"
#. module: account
#: model:process.node,note:account.process_node_supplierpaidinvoice0
msgid "Invoice's state is Done."
-msgstr ""
+msgstr "Stanje računa je zatvoreno/plaćeno."
#. module: account
#: model:process.transition,note:account.process_transition_reconcilepaid0
msgid "As soon as the reconciliation is done, the invoice can be paid."
-msgstr ""
+msgstr "Čim je obavljeno zatvaranje, račun može biti plaćen."
#. module: account
#: view:account.account.template:0
@@ -9685,7 +10108,7 @@ msgstr "account.addtmpl.wizard"
#: report:account.third_party_ledger:0
#: report:account.third_party_ledger_other:0
msgid "Partner's"
-msgstr "partneri"
+msgstr "Partneri"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_fiscalyear_form
@@ -9700,6 +10123,8 @@ msgid ""
"If the active field is set to False, it will allow you to hide the analytic "
"journal without removing it."
msgstr ""
+"Ako aktivno polje postavljeno na False, to će vam omogućiti da sakrijete "
+"analitiku temeljnice bez da ju uklonite."
#. module: account
#: field:account.analytic.line,ref:0
@@ -9734,7 +10159,7 @@ msgstr "Bankovni račun"
#: model:ir.actions.act_window,name:account.action_account_central_journal
#: model:ir.model,name:account.model_account_central_journal
msgid "Account Central Journal"
-msgstr ""
+msgstr "Account Central Journal"
#. module: account
#: report:account.overdue:0
@@ -9749,7 +10174,7 @@ msgstr "Budućnost"
#. module: account
#: view:account.move.line:0
msgid "Search Journal Items"
-msgstr "Traži stavke dnevnika"
+msgstr "Traži stavke glavne knjige"
#. module: account
#: help:account.tax,base_sign:0
@@ -9771,7 +10196,7 @@ msgstr "Predlozak mapiranja konta"
#. module: account
#: field:account.chart.template,property_account_expense:0
msgid "Expense Account on Product Template"
-msgstr "Konto troškova na predlošku proizvoda"
+msgstr "Zadani konto troška za proizvode"
#. module: account
#: field:account.analytic.line,amount_currency:0
@@ -9801,6 +10226,9 @@ msgid ""
"certain amount of information. They have to be certified by an external "
"auditor annually."
msgstr ""
+"Kreirajte i upravljajte strukturom kontnih planova i kontima koje će te "
+"koristiti za evidenciju knjigovodstvenih dokumenata. Konto je dio glavne "
+"knjige koja omogućuje bilježenje poslovnih transakcija."
#. module: account
#: help:account.move.line,amount_residual_currency:0
@@ -9808,6 +10236,8 @@ msgid ""
"The residual amount on a receivable or payable of a journal entry expressed "
"in its currency (maybe different of the company currency)."
msgstr ""
+"Ostatak iznosa dugovanja ili potraživanja u svojoj valuti (ne nužno valuti "
+"organizacije)."
#. module: account
#: report:account.balancesheet:0
@@ -9887,9 +10317,6 @@ msgstr ""
#~ msgid "Bank Receipt"
#~ msgstr "Bankovni primitak"
-#~ msgid "Ending Balance"
-#~ msgstr "Završni saldo"
-
#, python-format
#~ msgid ""
#~ "The expected balance (%.2f) is different than the computed one. (%.2f)"
@@ -10211,6 +10638,9 @@ msgstr ""
#~ msgid "Credit Trans."
#~ msgstr "Dugovna transakcija"
+#~ msgid "JNRL"
+#~ msgstr "JNRL"
+
#~ msgid "Subscription Entries"
#~ msgstr "Stavke pretplate"
@@ -10339,9 +10769,6 @@ msgstr ""
#~ msgid "Invalid model name in the action definition."
#~ msgstr "Pogrešno ime modela u definiciji akcije."
-#~ msgid "Unreconciled entries"
-#~ msgstr "Otvorene stavke"
-
#~ msgid "Move line select"
#~ msgstr "Odabir stavke knjiženja"
@@ -10905,5 +11332,15 @@ msgstr ""
#~ msgid "Balance Sheet (Assets Accounts)"
#~ msgstr "Bilanca (konta imovine)"
-#~ msgid "Chart of Accounts"
+#~ msgid "Chart of Account"
#~ msgstr "Kontni plan"
+
+#, python-format
+#~ msgid "is validated."
+#~ msgstr "is validated."
+
+#~ msgid "Unreconciled entries"
+#~ msgstr "Unreconciled entries"
+
+#~ msgid "Ending Balance"
+#~ msgstr "Ending Balance"
diff --git a/addons/account/installer.py b/addons/account/installer.py
index fcd29e9e323..d1b19ef4319 100644
--- a/addons/account/installer.py
+++ b/addons/account/installer.py
@@ -23,8 +23,8 @@ import logging
import time
import datetime
from dateutil.relativedelta import relativedelta
-from os.path import join as opj
from operator import itemgetter
+from os.path import join as opj
from tools.translate import _
from osv import fields, osv
@@ -58,8 +58,6 @@ class account_installer(osv.osv_memory):
'date_start': fields.date('Start Date', required=True),
'date_stop': fields.date('End Date', required=True),
'period': fields.selection([('month', 'Monthly'), ('3months','3 Monthly')], 'Periods', required=True),
- 'sale_tax': fields.float('Sale Tax(%)'),
- 'purchase_tax': fields.float('Purchase Tax(%)'),
'company_id': fields.many2one('res.company', 'Company', required=True),
'has_default_company' : fields.boolean('Has Default Company', readonly=True),
}
@@ -76,8 +74,6 @@ class account_installer(osv.osv_memory):
'date_start': lambda *a: time.strftime('%Y-01-01'),
'date_stop': lambda *a: time.strftime('%Y-12-31'),
'period': 'month',
- 'sale_tax': 0.0,
- 'purchase_tax': 0.0,
'company_id': _default_company,
'has_default_company': _default_has_default_company,
'charts': 'configurable'
@@ -100,9 +96,6 @@ class account_installer(osv.osv_memory):
res['fields'][field]['selection'] = cmp_select
return res
- def on_change_tax(self, cr, uid, id, tax):
- return {'value': {'purchase_tax': tax}}
-
def on_change_start_date(self, cr, uid, id, start_date=False):
if start_date:
start_date = datetime.datetime.strptime(start_date, "%Y-%m-%d")
@@ -111,95 +104,19 @@ class account_installer(osv.osv_memory):
return {}
def execute(self, cr, uid, ids, context=None):
+ self.execute_simple(cr, uid, ids, context)
+ super(account_installer, self).execute(cr, uid, ids, context=context)
+
+ def execute_simple(self, cr, uid, ids, context=None):
if context is None:
context = {}
fy_obj = self.pool.get('account.fiscalyear')
- mod_obj = self.pool.get('ir.model.data')
- obj_acc_temp = self.pool.get('account.account.template')
- obj_tax_code_temp = self.pool.get('account.tax.code.template')
- obj_tax_temp = self.pool.get('account.tax.template')
- obj_acc_chart_temp = self.pool.get('account.chart.template')
- record = self.browse(cr, uid, ids, context=context)[0]
for res in self.read(cr, uid, ids, context=context):
- if record.charts == 'configurable':
+ if 'charts' in res and res['charts'] == 'configurable':
+ #load generic chart of account
fp = tools.file_open(opj('account', 'configurable_account_chart.xml'))
tools.convert_xml_import(cr, 'account', fp, {}, 'init', True, None)
fp.close()
- s_tax = (res.get('sale_tax', 0.0))/100
- p_tax = (res.get('purchase_tax', 0.0))/100
- pur_temp_tax = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_base_purchases')
- pur_temp_tax_id = pur_temp_tax and pur_temp_tax[1] or False
-
- pur_temp_tax_paid = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_output')
- pur_temp_tax_paid_id = pur_temp_tax_paid and pur_temp_tax_paid[1] or False
-
- sale_temp_tax = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_base_sales')
- sale_temp_tax_id = sale_temp_tax and sale_temp_tax[1] or False
-
- sale_temp_tax_paid = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_input')
- sale_temp_tax_paid_id = sale_temp_tax_paid and sale_temp_tax_paid[1] or False
-
- chart_temp_ids = obj_acc_chart_temp.search(cr, uid, [('name','=','Configurable Account Chart Template')], context=context)
- chart_temp_id = chart_temp_ids and chart_temp_ids[0] or False
- if s_tax * 100 > 0.0:
- tax_account_ids = obj_acc_temp.search(cr, uid, [('name', '=', 'Tax Received')], context=context)
- sales_tax_account_id = tax_account_ids and tax_account_ids[0] or False
- vals_tax_code_temp = {
- 'name': _('TAX %s%%') % (s_tax*100),
- 'code': _('TAX %s%%') % (s_tax*100),
- 'parent_id': sale_temp_tax_id
- }
- new_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_tax_code_temp, context=context)
- vals_paid_tax_code_temp = {
- 'name': _('TAX Received %s%%') % (s_tax*100),
- 'code': _('TAX Received %s%%') % (s_tax*100),
- 'parent_id': sale_temp_tax_paid_id
- }
- new_paid_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_paid_tax_code_temp, context=context)
- sales_tax_temp = obj_tax_temp.create(cr, uid, {
- 'name': _('Sale TAX %s%%') % (s_tax*100),
- 'amount': s_tax,
- 'base_code_id': new_tax_code_temp,
- 'tax_code_id': new_paid_tax_code_temp,
- 'ref_base_code_id': new_tax_code_temp,
- 'ref_tax_code_id': new_paid_tax_code_temp,
- 'type_tax_use': 'sale',
- 'type': 'percent',
- 'sequence': 0,
- 'account_collected_id': sales_tax_account_id,
- 'account_paid_id': sales_tax_account_id,
- 'chart_template_id': chart_temp_id,
- }, context=context)
- if p_tax * 100 > 0.0:
- tax_account_ids = obj_acc_temp.search(cr, uid, [('name', '=', 'Tax Paid')], context=context)
- purchase_tax_account_id = tax_account_ids and tax_account_ids[0] or False
- vals_tax_code_temp = {
- 'name': _('TAX %s%%') % (p_tax*100),
- 'code': _('TAX %s%%') % (p_tax*100),
- 'parent_id': pur_temp_tax_id
- }
- new_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_tax_code_temp, context=context)
- vals_paid_tax_code_temp = {
- 'name': _('TAX Paid %s%%') % (p_tax*100),
- 'code': _('TAX Paid %s%%') % (p_tax*100),
- 'parent_id': pur_temp_tax_paid_id
- }
- new_paid_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_paid_tax_code_temp, context=context)
- purchase_tax_temp = obj_tax_temp.create(cr, uid, {
- 'name': _('Purchase TAX %s%%') % (p_tax*100),
- 'amount': p_tax,
- 'base_code_id': new_tax_code_temp,
- 'tax_code_id': new_paid_tax_code_temp,
- 'ref_base_code_id': new_tax_code_temp,
- 'ref_tax_code_id': new_paid_tax_code_temp,
- 'type_tax_use': 'purchase',
- 'type': 'percent',
- 'sequence': 0,
- 'account_collected_id': purchase_tax_account_id,
- 'account_paid_id': purchase_tax_account_id,
- 'chart_template_id': chart_temp_id,
- }, context=context)
-
if 'date_start' in res and 'date_stop' in res:
f_ids = fy_obj.search(cr, uid, [('date_start', '<=', res['date_start']), ('date_stop', '>=', res['date_stop']), ('company_id', '=', res['company_id'][0])], context=context)
if not f_ids:
@@ -219,7 +136,6 @@ class account_installer(osv.osv_memory):
fy_obj.create_period(cr, uid, [fiscal_id])
elif res['period'] == '3months':
fy_obj.create_period3(cr, uid, [fiscal_id])
- super(account_installer, self).execute(cr, uid, ids, context=context)
def modules_to_install(self, cr, uid, ids, context=None):
modules = super(account_installer, self).modules_to_install(
diff --git a/addons/account/project/analytic_account_demo.xml b/addons/account/project/analytic_account_demo.xml
index 7cf5a59efc1..2661e67cd50 100644
--- a/addons/account/project/analytic_account_demo.xml
+++ b/addons/account/project/analytic_account_demo.xml
@@ -103,6 +103,7 @@
normalopen
+ Seagate P2
@@ -111,6 +112,7 @@
open
+ Magasin BML 1
@@ -118,6 +120,7 @@
normal
+ CampToCamp
@@ -127,6 +130,7 @@
+ open
@@ -135,13 +139,15 @@
normal
+ Asustek4normal
-
+
+ DistriPC
@@ -149,6 +155,7 @@
normal
+ Sednacom
@@ -158,6 +165,7 @@
normal
+ open
@@ -168,6 +176,7 @@
normal
+ open
@@ -178,6 +187,7 @@
normal
+ Desertic - Hispafuentes
@@ -187,6 +197,7 @@
normal
+ OpenERP SA AT Work
@@ -194,6 +205,7 @@
normal
+ Camp to Camp
@@ -203,6 +215,7 @@
normal
+ open
diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml
index cc05092688b..da6ec7f73a1 100644
--- a/addons/account/project/project_view.xml
+++ b/addons/account/project/project_view.xml
@@ -8,16 +8,16 @@
tree
-
-
+
+
-
+
@@ -57,11 +57,10 @@
treechild_complete_ids
-
+
-
+
-
@@ -83,9 +82,9 @@
+
+
+
+
+
+
@@ -89,14 +87,14 @@
-
+
-
+
@@ -105,7 +103,7 @@
-
+
@@ -121,7 +119,7 @@
-
+
@@ -211,9 +209,9 @@
-
+
@@ -276,7 +274,7 @@
-
+
Journal Items (Search)account.move.line
@@ -290,8 +288,12 @@
-
-
+
+
+ Assetsaccount.asset.assetform
@@ -300,7 +302,7 @@
-
+
@@ -312,19 +314,19 @@
-
+
Review Asset Categoriesaccount.asset.categoryform
- form
+ tree,form
-
+
3
-
+
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_asset/static/src/img/icon.png b/addons/account_asset/static/src/img/icon.png
new file mode 100644
index 00000000000..c7ffdceadaa
Binary files /dev/null and b/addons/account_asset/static/src/img/icon.png differ
diff --git a/addons/account_asset/test/account_asset.yml b/addons/account_asset/test/account_asset.yml
index b56aa028c61..e9f75737eba 100644
--- a/addons/account_asset/test/account_asset.yml
+++ b/addons/account_asset/test/account_asset.yml
@@ -1,55 +1,35 @@
-
- In order to test Account Asset I create Asset and confirm it and check it's Depriciation lines
--
- I Create an Asset Category
--
- !record {model: account.asset.category, id: account_asset_category_landbuildings0}:
- account_asset_id: account.xfa
- account_depreciation_id: account.xfa
- account_expense_depreciation_id: account.a_expense
- journal_id: account.expenses_journal
- name: Land & Buildings
--
- I Create an Account Asset
--
- !record {model: account.asset.asset, id: account_asset_asset_Land0}:
- category_id: account_asset_category_landbuildings0
- code: land
- name: Land
- partner_id: base.res_partner_14
- purchase_value: 5000.0
- state: draft
--
- I check Initially that Account Asset is in the "Draft" state
--
- !assert {model: account.asset.asset, id: account_asset_asset_Land0}:
- - state == 'draft'
--
- I Confirm Account Asset using Confirm Asset button
+ In order to test the process of Account Asset, I perform a action to confirm Account Asset.
-
!python {model: account.asset.asset}: |
- self.validate(cr, uid, [ref("account_asset_asset_Land0")])
+ self.validate(cr, uid, [ref("account_asset_asset_vehicles0")])
-
- I check Asset is in running state after pressing Confirm button on asset
+ I check Asset is now in Open state.
-
- !assert {model: account.asset.asset, id: account_asset_asset_Land0}:
+ !assert {model: account.asset.asset, id: account_asset_asset_vehicles0, severity: error, string: Asset should be in Open state}:
- state == 'open'
-
- I Compute Account Asset using Compute button and check the number of depreciation lines created
+ I compute depreciation lines for asset of CEO's Car .
-
!python {model: account.asset.asset}: |
- self.compute_depreciation_board(cr, uid, [ref("account_asset_asset_Land0")])
+ self.compute_depreciation_board(cr, uid, [ref("account_asset_asset_vehicles0")])
# pressing computation button can be remove if creation of depreciation lines while asset is created
- value = self.browse(cr, uid, [ref("account_asset_asset_Land0")])[0]
- assert value.method_number == len(value.depreciation_line_ids)
+ value = self.browse(cr, uid, [ref("account_asset_asset_vehicles0")])[0]
+ assert value.method_number == len(value.depreciation_line_ids), 'Depreciation lines not created correctly'
-
- I Create Account Move using create move button on depreciation lines
+ I create account move for all depreciation lines.
-
!python {model: account.asset.depreciation.line}: |
- ids = self.search(cr, uid, [('asset_id','=',ref('account_asset_asset_Land0'))])
+ ids = self.search(cr, uid, [('asset_id','=',ref('account_asset_asset_vehicles0'))])
self.create_move(cr, uid, ids)
-
- I Check that After creating all the moves of depreciation lines the state is in "Close" state
+ I check the move line is created.
-
- !assert {model: account.asset.asset, id: account_asset_asset_Land0}:
+ !python {model: account.asset.asset}: |
+ asset = self.browse(cr, uid, [ref("account_asset_asset_vehicles0")])[0]
+ assert len(asset.depreciation_line_ids) == len(asset.account_move_line_ids), 'Move lines not created correctly'
+-
+ I Check that After creating all the moves of depreciation lines the state "Close".
+-
+ !assert {model: account.asset.asset, id: account_asset_asset_vehicles0}:
- state == 'close'
diff --git a/addons/account_asset/test/account_asset_demo.yml b/addons/account_asset/test/account_asset_demo.yml
new file mode 100644
index 00000000000..c0871d05268
--- /dev/null
+++ b/addons/account_asset/test/account_asset_demo.yml
@@ -0,0 +1,9 @@
+-
+ !record {model: account.asset.category, id: account_asset_category_fixedassets0}:
+ account_asset_id: account.xfa
+-
+ !record {model: account.asset.asset, id: account_asset_asset_vehicles0}:
+ category_id: account_asset_category_sale
+-
+ !record {model: account.asset.asset, id: account_asset_asset_vehicles0}:
+ method_number: 10
diff --git a/addons/account_asset/test/account_asset_wizard.yml b/addons/account_asset/test/account_asset_wizard.yml
new file mode 100644
index 00000000000..7b77e5cfdda
--- /dev/null
+++ b/addons/account_asset/test/account_asset_wizard.yml
@@ -0,0 +1,27 @@
+-
+ I create a record to change the duration of asset for calculating depreciation.
+-
+ !record {model: asset.modify, id: asset_modify_number_0, context: "{'active_id': ref('account_asset_asset_office0')}"}:
+ method_number: 10.0
+-
+ I change the duration.
+-
+ !python {model: asset.modify}: |
+ context = {"active_id":ref('account_asset_asset_office0')}
+ self.modify(cr, uid, [ref("asset_modify_number_0")], context=context)
+-
+ I check the proper depreciation lines created.
+-
+ !assert {model: account.asset.asset, id: account_asset.account_asset_asset_office0}:
+ - method_number == len(depreciation_line_ids) -1
+-
+ I create a period to compute a asset on period.
+-
+ !record {model: asset.depreciation.confirmation.wizard, id: asset_compute_period_0}:
+ {}
+-
+ I compute a asset on period.
+-
+ !python {model: asset.depreciation.confirmation.wizard}: |
+ context = {"active_ids": [ref("menu_asset_depreciation_confirmation_wizard")], "active_id":ref('menu_asset_depreciation_confirmation_wizard')}
+ self.asset_compute(cr, uid, [ref("asset_compute_period_0")], context=context)
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/i18n/fa.po b/addons/account_budget/i18n/fa.po
new file mode 100644
index 00000000000..9981083fe36
--- /dev/null
+++ b/addons/account_budget/i18n/fa.po
@@ -0,0 +1,441 @@
+# Persian 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-18 16:52+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_budget
+#: field:crossovered.budget,creating_user_id:0
+msgid "Responsible User"
+msgstr ""
+
+#. module: account_budget
+#: selection:crossovered.budget,state:0
+msgid "Confirmed"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.actions.act_window,name:account_budget.open_budget_post_form
+#: model:ir.ui.menu,name:account_budget.menu_budget_post_form
+msgid "Budgetary Positions"
+msgstr ""
+
+#. module: account_budget
+#: code:addons/account_budget/account_budget.py:119
+#, python-format
+msgid "The General Budget '%s' has no Accounts!"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+msgid "Printed at:"
+msgstr ""
+
+#. module: account_budget
+#: view:crossovered.budget:0
+msgid "Confirm"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget,validating_user_id:0
+msgid "Validate User"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.actions.act_window,name:account_budget.action_account_budget_crossvered_summary_report
+msgid "Print Summary"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget.lines,paid_date:0
+msgid "Paid Date"
+msgstr ""
+
+#. module: account_budget
+#: field:account.budget.analytic,date_to:0
+#: field:account.budget.crossvered.report,date_to:0
+#: field:account.budget.crossvered.summary.report,date_to:0
+#: field:account.budget.report,date_to:0
+msgid "End of period"
+msgstr ""
+
+#. module: account_budget
+#: view:crossovered.budget:0
+#: selection:crossovered.budget,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+msgid "at"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.report:0
+#: model:ir.actions.act_window,name:account_budget.action_account_budget_analytic
+#: model:ir.actions.act_window,name:account_budget.action_account_budget_crossvered_report
+msgid "Print Budgets"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+msgid "Currency:"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.model,name:account_budget.model_account_budget_crossvered_report
+msgid "Account Budget crossvered report"
+msgstr ""
+
+#. module: account_budget
+#: selection:crossovered.budget,state:0
+msgid "Validated"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget.lines,percentage:0
+msgid "Percentage"
+msgstr ""
+
+#. module: account_budget
+#: report:crossovered.budget.report:0
+msgid "to"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget,state:0
+msgid "Status"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.actions.act_window,help:account_budget.act_crossovered_budget_view
+msgid ""
+"A budget is a forecast of your company's income and expenses expected for a "
+"period in the future. With a budget, a company is able to carefully look at "
+"how much money they are taking in during a given period, and figure out the "
+"best way to divide it among various categories. By keeping track of where "
+"your money goes, you may be less likely to overspend, and more likely to "
+"meet your financial goals. Forecast a budget by detailing the expected "
+"revenue per analytic account and monitor its evolution based on the actuals "
+"realised during that period."
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.crossvered.summary.report:0
+msgid "This wizard is used to print summary of budgets"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "%"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "Description"
+msgstr ""
+
+#. module: account_budget
+#: report:crossovered.budget.report:0
+msgid "Currency"
+msgstr ""
+
+#. module: account_budget
+#: report:crossovered.budget.report:0
+msgid "Total :"
+msgstr ""
+
+#. module: account_budget
+#: field:account.budget.post,company_id:0
+#: field:crossovered.budget,company_id:0
+#: field:crossovered.budget.lines,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_budget
+#: view:crossovered.budget:0
+msgid "To Approve"
+msgstr ""
+
+#. module: account_budget
+#: view:crossovered.budget:0
+msgid "Reset to Draft"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.post:0
+#: view:crossovered.budget:0
+#: field:crossovered.budget.lines,planned_amount:0
+msgid "Planned Amount"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "Perc(%)"
+msgstr ""
+
+#. module: account_budget
+#: view:crossovered.budget:0
+#: selection:crossovered.budget,state:0
+msgid "Done"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "Practical Amt"
+msgstr ""
+
+#. module: account_budget
+#: view:account.analytic.account:0
+#: view:account.budget.post:0
+#: view:crossovered.budget:0
+#: field:crossovered.budget.lines,practical_amount:0
+msgid "Practical Amount"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget,date_to:0
+#: field:crossovered.budget.lines,date_to:0
+msgid "End Date"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.model,name:account_budget.model_account_budget_analytic
+#: model:ir.model,name:account_budget.model_account_budget_report
+msgid "Account Budget report for analytic account"
+msgstr ""
+
+#. module: account_budget
+#: view:account.analytic.account:0
+msgid "Theoritical Amount"
+msgstr ""
+
+#. module: account_budget
+#: field:account.budget.post,name:0
+#: field:crossovered.budget,name:0
+msgid "Name"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.model,name:account_budget.model_crossovered_budget_lines
+msgid "Budget Line"
+msgstr ""
+
+#. module: account_budget
+#: view:account.analytic.account:0
+#: view:account.budget.post:0
+msgid "Lines"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: view:crossovered.budget:0
+#: field:crossovered.budget.lines,crossovered_budget_id:0
+#: report:crossovered.budget.report:0
+#: model:ir.actions.report.xml,name:account_budget.account_budget
+#: model:ir.model,name:account_budget.model_crossovered_budget
+msgid "Budget"
+msgstr ""
+
+#. module: account_budget
+#: code:addons/account_budget/account_budget.py:119
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: account_budget
+#: field:account.budget.post,code:0
+#: field:crossovered.budget,code:0
+msgid "Code"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.analytic:0
+#: view:account.budget.crossvered.report:0
+msgid "This wizard is used to print budget"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_view
+#: model:ir.actions.act_window,name:account_budget.action_account_budget_post_tree
+#: model:ir.actions.act_window,name:account_budget.action_account_budget_report
+#: model:ir.actions.report.xml,name:account_budget.report_crossovered_budget
+#: model:ir.ui.menu,name:account_budget.menu_act_crossovered_budget_view
+#: model:ir.ui.menu,name:account_budget.menu_action_account_budget_post_tree
+#: model:ir.ui.menu,name:account_budget.next_id_31
+#: model:ir.ui.menu,name:account_budget.next_id_pos
+msgid "Budgets"
+msgstr ""
+
+#. module: account_budget
+#: constraint:account.analytic.account:0
+msgid ""
+"Error! The currency has to be the same as the currency of the selected "
+"company"
+msgstr ""
+
+#. module: account_budget
+#: selection:crossovered.budget,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: account_budget
+#: view:crossovered.budget:0
+msgid "Approve"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget,date_from:0
+#: field:crossovered.budget.lines,date_from:0
+msgid "Start Date"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.post:0
+#: field:crossovered.budget.lines,general_budget_id:0
+#: model:ir.model,name:account_budget.model_account_budget_post
+msgid "Budgetary Position"
+msgstr ""
+
+#. module: account_budget
+#: field:account.budget.analytic,date_from:0
+#: field:account.budget.crossvered.report,date_from:0
+#: field:account.budget.crossvered.summary.report,date_from:0
+#: field:account.budget.report,date_from:0
+msgid "Start of period"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.model,name:account_budget.model_account_budget_crossvered_summary_report
+msgid "Account Budget crossvered summary report"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "Theoretical Amt"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.analytic:0
+#: view:account.budget.crossvered.report:0
+#: view:account.budget.crossvered.summary.report:0
+#: view:account.budget.report:0
+msgid "Select Dates Period"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.analytic:0
+#: view:account.budget.crossvered.report:0
+#: view:account.budget.crossvered.summary.report:0
+#: view:account.budget.report:0
+msgid "Print"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.module.module,description:account_budget.module_meta_information
+msgid ""
+"This module allows accountants to manage analytic and crossovered budgets.\n"
+"\n"
+"Once the Master Budgets and the Budgets are defined (in "
+"Accounting/Budgets/),\n"
+"the Project Managers can set the planned amount on each Analytic Account.\n"
+"\n"
+"The accountant has the possibility to see the total of amount planned for "
+"each\n"
+"Budget and Master Budget in order to ensure the total planned is not\n"
+"greater/lower than what he planned for this Budget/Master Budget. Each list "
+"of\n"
+"record can also be switched to a graphical view of it.\n"
+"\n"
+"Three reports are available:\n"
+" 1. The first is available from a list of Budgets. It gives the "
+"spreading, for these Budgets, of the Analytic Accounts per Master Budgets.\n"
+"\n"
+" 2. The second is a summary of the previous one, it only gives the "
+"spreading, for the selected Budgets, of the Analytic Accounts.\n"
+"\n"
+" 3. The last one is available from the Analytic Chart of Accounts. It "
+"gives the spreading, for the selected Analytic Accounts, of the Master "
+"Budgets per Budgets.\n"
+"\n"
+msgstr ""
+
+#. module: account_budget
+#: field:crossovered.budget.lines,analytic_account_id:0
+#: model:ir.model,name:account_budget.model_account_analytic_account
+msgid "Analytic Account"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+msgid "Budget :"
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "Planned Amt"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.post:0
+#: field:account.budget.post,account_ids:0
+msgid "Accounts"
+msgstr ""
+
+#. module: account_budget
+#: view:account.analytic.account:0
+#: field:account.analytic.account,crossovered_budget_line:0
+#: view:account.budget.post:0
+#: field:account.budget.post,crossovered_budget_line:0
+#: view:crossovered.budget:0
+#: field:crossovered.budget,crossovered_budget_line:0
+#: view:crossovered.budget.lines:0
+#: model:ir.actions.act_window,name:account_budget.act_account_analytic_account_cb_lines
+#: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_lines_view
+#: model:ir.ui.menu,name:account_budget.menu_act_crossovered_budget_lines_view
+msgid "Budget Lines"
+msgstr ""
+
+#. module: account_budget
+#: view:account.budget.analytic:0
+#: view:account.budget.crossvered.report:0
+#: view:account.budget.crossvered.summary.report:0
+#: view:account.budget.report:0
+#: view:crossovered.budget:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_budget
+#: model:ir.module.module,shortdesc:account_budget.module_meta_information
+msgid "Budget Management"
+msgstr ""
+
+#. module: account_budget
+#: constraint:account.analytic.account:0
+msgid "Error! You can not create recursive analytic accounts."
+msgstr ""
+
+#. module: account_budget
+#: report:account.budget:0
+#: report:crossovered.budget.report:0
+msgid "Analysis from"
+msgstr ""
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/fa.po b/addons/account_cancel/i18n/fa.po
new file mode 100644
index 00000000000..807d683515c
--- /dev/null
+++ b/addons/account_cancel/i18n/fa.po
@@ -0,0 +1,32 @@
+# Persian 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-18 16:53+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_cancel
+#: model:ir.module.module,description:account_cancel.module_meta_information
+msgid ""
+"\n"
+" Module adds 'Allow cancelling entries' field on form view of account "
+"journal. If set to true it allows user to cancel entries & invoices.\n"
+" "
+msgstr ""
+
+#. module: account_cancel
+#: model:ir.module.module,shortdesc:account_cancel.module_meta_information
+msgid "Account Cancel"
+msgstr ""
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_chart/i18n/fa.po b/addons/account_chart/i18n/fa.po
new file mode 100644
index 00000000000..3aca6c7161a
--- /dev/null
+++ b/addons/account_chart/i18n/fa.po
@@ -0,0 +1,28 @@
+# Persian 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-18 16:54+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_chart
+#: model:ir.module.module,description:account_chart.module_meta_information
+msgid "Remove minimal account chart"
+msgstr ""
+
+#. module: account_chart
+#: model:ir.module.module,shortdesc:account_chart.module_meta_information
+msgid "Charts of Accounts"
+msgstr ""
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/fa.po b/addons/account_coda/i18n/fa.po
new file mode 100644
index 00000000000..4f0fb9af76c
--- /dev/null
+++ b/addons/account_coda/i18n/fa.po
@@ -0,0 +1,259 @@
+# Persian 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-18 16:54+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_coda
+#: help:account.coda,journal_id:0
+#: field:account.coda.import,journal_id:0
+msgid "Bank Journal"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda.import,note:0
+msgid "Log"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda_import
+msgid "Account Coda Import"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,name:0
+msgid "Coda file"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Group By..."
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.import,awaiting_account:0
+msgid "Default Account for Unrecognized Movement"
+msgstr ""
+
+#. module: account_coda
+#: help:account.coda,date:0
+msgid "Import Date"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,note:0
+msgid "Import log"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Import"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Coda import"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/account_coda.py:51
+#, python-format
+msgid "Coda file not found for bank statement !!"
+msgstr ""
+
+#. module: account_coda
+#: help:account.coda.import,awaiting_account:0
+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 ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_coda
+#: help:account.coda.import,def_payable:0
+msgid ""
+"Set here the payable account that will be used, by default, if the partner "
+"is not found"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Search Coda"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,user_id:0
+msgid "User"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,date:0
+msgid "Date"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.ui.menu,name:account_coda.menu_account_coda_statement
+msgid "Coda Import Logs"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda
+msgid "coda for an Account"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.import,def_payable:0
+msgid "Default Payable Account"
+msgstr ""
+
+#. module: account_coda
+#: help:account.coda,name:0
+msgid "Store the detail of bank statements"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Open Statements"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:167
+#, python-format
+msgid "The bank account %s is not defined for the partner %s.\n"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.ui.menu,name:account_coda.menu_account_coda_import
+msgid "Import Coda Statements"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_coda
+#: model:ir.module.module,description:account_coda.module_meta_information
+msgid ""
+"\n"
+" Module provides functionality to import\n"
+" bank statements from coda files.\n"
+" "
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Statements"
+msgstr ""
+
+#. module: account_coda
+#: field:account.bank.statement,coda_id:0
+msgid "Coda"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Results :"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Result of Imported Coda Statements"
+msgstr ""
+
+#. module: account_coda
+#: help:account.coda.import,def_receivable:0
+msgid ""
+"Set here the receivable account that will be used, by default, if the "
+"partner is not found"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_bank_statement
+msgid "Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.actions.act_window,name:account_coda.action_account_coda
+msgid "Coda Logs"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:311
+#, python-format
+msgid "Result"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Click on 'New' to select your file :"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.import,def_receivable:0
+msgid "Default Receivable Account"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Close"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,statement_ids:0
+msgid "Generated Bank Statements"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.module.module,shortdesc:account_coda.module_meta_information
+msgid "Account CODA - import bank statements from coda file"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Configure Your Journal and Account :"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Coda Import"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,journal_id:0
+msgid "Journal"
+msgstr ""
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/__openerp__.py b/addons/account_followup/__openerp__.py
index 3fe52186f03..c8a548db9e8 100644
--- a/addons/account_followup/__openerp__.py
+++ b/addons/account_followup/__openerp__.py
@@ -57,7 +57,10 @@ Note that if you want to check the followup level for a given partner/account en
'account_followup_data.xml',
],
'demo_xml': [],
- 'test': ['test/account_followup.yml'],
+ 'test': [
+ 'test/account_followup.yml',
+ 'test/account_followup_report.yml',
+ ],
'installable': True,
'active': False,
'certificate': '0072481076453',
diff --git a/addons/account_followup/i18n/fa.po b/addons/account_followup/i18n/fa.po
new file mode 100644
index 00000000000..7d5a113dd86
--- /dev/null
+++ b/addons/account_followup/i18n/fa.po
@@ -0,0 +1,718 @@
+# Persian 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-18 16:56+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:48+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_followup
+#: code:addons/account_followup/wizard/account_followup_print.py:295
+#, python-format
+msgid "Followup Summary"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup:0
+msgid "Search Followup"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.module.module,description:account_followup.module_meta_information
+msgid ""
+"\n"
+" Modules to automate letters for unpaid invoices, with multi-level "
+"recalls.\n"
+"\n"
+" You can define your multiple levels of recall through the menu:\n"
+" Accounting/Configuration/Miscellaneous/Follow-Ups\n"
+"\n"
+" Once it is defined, you can automatically print recalls every day\n"
+" through simply clicking on the menu:\n"
+" Accounting/Periodical Processing/Billing/Send followups\n"
+"\n"
+" It will generate a PDF with all the letters according to the the\n"
+" different levels of recall defined. You can define different policies\n"
+" for different companies. You can also send mail to the customer.\n"
+"\n"
+" Note that if you want to change the followup level for a given "
+"partner/account entry, you can do from in the menu:\n"
+" Accounting/Reporting/Generic Reporting/Partner Accounts/Follow-ups "
+"Sent\n"
+"\n"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "Group By..."
+msgstr ""
+
+#. module: account_followup
+#: code:addons/account_followup/wizard/account_followup_print.py:290
+#, python-format
+msgid ""
+"\n"
+"\n"
+"E-Mail sent to following Partners successfully. !\n"
+"\n"
+"%s"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup:0
+#: field:account_followup.followup,followup_line:0
+msgid "Follow-Up"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.followup,company_id:0
+#: view:account_followup.stat:0
+#: field:account_followup.stat,company_id:0
+#: field:account_followup.stat.by.partner,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Invoice Date"
+msgstr ""
+
+#. module: account_followup
+#: field:account.followup.print.all,email_subject:0
+msgid "Email Subject"
+msgstr ""
+
+#. module: account_followup
+#: 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 ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+#: view:account_followup.followup.line:0
+msgid "Legend"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "Ok"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "Select Partners to Remind"
+msgstr ""
+
+#. module: account_followup
+#: constraint:account.move.line:0
+msgid "You can not create move line on closed account."
+msgstr ""
+
+#. module: account_followup
+#: field:account.followup.print,date:0
+msgid "Follow-up Sending Date"
+msgstr ""
+
+#. module: account_followup
+#: sql_constraint:account.move.line:0
+msgid "Wrong credit or debit value in accounting entry !"
+msgstr ""
+
+#. module: account_followup
+#: selection:account_followup.followup.line,start:0
+msgid "Net Days"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_followup
+#: view:account_followup.stat.by.partner:0
+msgid "Balance > 0"
+msgstr ""
+
+#. module: account_followup
+#: view:account.move.line:0
+msgid "Total debit"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(heading)s: Move line header"
+msgstr ""
+
+#. module: account_followup
+#: view:res.company:0
+#: field:res.company,follow_up_msg:0
+msgid "Follow-up Message"
+msgstr ""
+
+#. module: account_followup
+#: field:account.followup.print,followup_id:0
+msgid "Follow-up"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "VAT:"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Date :"
+msgstr ""
+
+#. module: account_followup
+#: field:account.followup.print.all,partner_ids:0
+msgid "Partners"
+msgstr ""
+
+#. module: account_followup
+#: code:addons/account_followup/wizard/account_followup_print.py:138
+#, python-format
+msgid "Invoices Reminder"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.model,name:account_followup.model_account_followup_followup
+msgid "Account Follow Up"
+msgstr ""
+
+#. module: account_followup
+#: selection:account_followup.followup.line,start:0
+msgid "End of Month"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "Not Litigation"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(user_signature)s: User name"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat,debit:0
+msgid "Debit"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print:0
+msgid ""
+"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."
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Ref"
+msgstr ""
+
+#. module: account_followup
+#: help:account_followup.followup.line,sequence:0
+msgid "Gives the sequence order when displaying a list of follow-up lines."
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+#: field:account.followup.print.all,email_body:0
+msgid "Email body"
+msgstr ""
+
+#. module: account_followup
+#: field:account.move.line,followup_line_id:0
+msgid "Follow-up Level"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat,date_followup:0
+#: field:account_followup.stat.by.partner,date_followup:0
+msgid "Latest followup"
+msgstr ""
+
+#. module: account_followup
+#: model:account_followup.followup.line,description:account_followup.demo_followup_line2
+msgid ""
+"\n"
+"Dear %(partner_name)s,\n"
+"\n"
+"We are disappointed to see that despite sending a reminder, that your "
+"account is now seriously overdue.\n"
+"\n"
+"It is essential that immediate payment is made, otherwise we will have to "
+"consider placing a stop on your account which means that we will no longer "
+"be able to supply your company with (goods/services).\n"
+"Please, take appropriate measures in order to carry out this payment in the "
+"next 8 days\n"
+"\n"
+"If there is a problem with paying invoice that we are not aware of, do not "
+"hesitate to contact our accounting department at (+32).10.68.94.39. so that "
+"we can resolve the matter quickly.\n"
+"\n"
+"Details of due payments is printed below.\n"
+"\n"
+"Best Regards,\n"
+msgstr ""
+
+#. module: account_followup
+#: field:account.followup.print.all,partner_lang:0
+msgid "Send Email in Partner Language"
+msgstr ""
+
+#. module: account_followup
+#: constraint:account.move.line:0
+msgid ""
+"You can not create move line on receivable/payable account without partner"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "Partner Selection"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.followup.line,description:0
+msgid "Printed Message"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print:0
+#: view:account.followup.print.all:0
+#: model:ir.actions.act_window,name:account_followup.action_account_followup_print
+#: 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 ""
+
+#. module: account_followup
+#: view:account_followup.stat.by.partner:0
+msgid "Partner to Remind"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.followup.line,followup_id:0
+#: field:account_followup.stat,followup_id:0
+msgid "Follow Ups"
+msgstr ""
+
+#. module: account_followup
+#: model:account_followup.followup.line,description:account_followup.demo_followup_line1
+msgid ""
+"\n"
+"Dear %(partner_name)s,\n"
+"\n"
+"Exception made if there was a mistake of ours, it seems that the following "
+"amount staid unpaid. Please, take appropriate measures in order to carry out "
+"this payment in the next 8 days.\n"
+"\n"
+"Would your payment have been carried out after this mail was sent, please "
+"consider the present one as void. Do not hesitate to contact our accounting "
+"department at (+32).10.68.94.39.\n"
+"\n"
+"Best Regards,\n"
+msgstr ""
+
+#. module: account_followup
+#: model:account_followup.followup.line,description:account_followup.demo_followup_line3
+msgid ""
+"\n"
+"Dear %(partner_name)s,\n"
+"\n"
+"Despite several reminders, your account is still not settled.\n"
+"\n"
+"Unless full payment is made in next 8 days , then legal action for the "
+"recovery of the debt, will be taken without further notice.\n"
+"\n"
+"I trust that this action will prove unnecessary and details of due payments "
+"is printed below.\n"
+"\n"
+"In case of any queries concerning this matter, do not hesitate to contact "
+"our accounting department at (+32).10.68.94.39.\n"
+"\n"
+"Best Regards,\n"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "Send Mails"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Currency"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.model,name:account_followup.model_account_followup_stat_by_partner
+msgid "Followup Statistics by Partner"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.module.module,shortdesc:account_followup.module_meta_information
+msgid "Accounting follow-ups management"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat,blocked:0
+msgid "Blocked"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Due"
+msgstr ""
+
+#. module: account_followup
+#: code:addons/account_followup/wizard/account_followup_print.py:56
+#, python-format
+msgid "Select Partners"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "Email Settings"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "Print Follow Ups"
+msgstr ""
+
+#. module: account_followup
+#: field:account.move.line,followup_date:0
+msgid "Latest Follow-up"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Sub-Total:"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Balance:"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.model,name:account_followup.model_account_followup_stat
+msgid "Followup Statistics"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Paid"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup.line:0
+msgid "%(user_signature)s: User Name"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.model,name:account_followup.model_account_move_line
+msgid "Journal Items"
+msgstr ""
+
+#. module: account_followup
+#: constraint:account.move.line:0
+msgid "Company must be same for its related account and period."
+msgstr ""
+
+#. module: account_followup
+#: field:account.followup.print.all,email_conf:0
+msgid "Send email confirmation"
+msgstr ""
+
+#. module: account_followup
+#: code:addons/account_followup/wizard/account_followup_print.py:287
+#, python-format
+msgid ""
+"All E-mails have been successfully sent to Partners:.\n"
+"\n"
+"%s"
+msgstr ""
+
+#. module: account_followup
+#: constraint:res.company:0
+msgid "Error! You can not create recursive companies."
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(company_name)s: User's Company name"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.model,name:account_followup.model_res_company
+msgid "Companies"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup:0
+msgid "Followup Lines"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat,credit:0
+msgid "Credit"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Maturity Date"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup.line:0
+msgid "%(partner_name)s: Partner Name"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "Follow-Up lines"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(company_currency)s: User's Company Currency"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_followup
+#: field:account_followup.followup.line,start:0
+msgid "Type of Term"
+msgstr ""
+
+#. module: account_followup
+#: 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 ""
+
+#. 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 ""
+
+#. module: account_followup
+#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
+msgid "Followup Report"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat,period_id:0
+msgid "Period"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print:0
+#: view:account.followup.print.all:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup.line:0
+msgid "Follow-Up Lines"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "Litigation"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat.by.partner,max_followup_id:0
+msgid "Max Follow Up Level"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_payable_all
+msgid "Payable Items"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(followup_amount)s: Total Amount Due"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+#: view:account_followup.followup.line:0
+msgid "%(date)s: Current Date"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "Followup Level"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup:0
+#: field:account_followup.followup,description:0
+#: report:account_followup.followup.print:0
+msgid "Description"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "This Fiscal year"
+msgstr ""
+
+#. module: account_followup
+#: view:account.move.line:0
+msgid "Partner entries"
+msgstr ""
+
+#. module: account_followup
+#: help:account.followup.print.all,partner_lang:0
+msgid ""
+"Do not change message text, if you want to send email in partner language, "
+"or configure from company"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_all
+msgid "Receivable Items"
+msgstr ""
+
+#. 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 ""
+
+#. module: account_followup
+#: field:account_followup.followup,name:0
+#: field:account_followup.followup.line,name:0
+msgid "Name"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.stat,date_move:0
+#: field:account_followup.stat.by.partner,date_move:0
+msgid "First move"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Li."
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Maturity"
+msgstr ""
+
+#. module: account_followup
+#: code:addons/account_followup/wizard/account_followup_print.py:289
+#, python-format
+msgid ""
+"E-Mail not sent to following Partners, Email not available !\n"
+"\n"
+"%s"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print:0
+msgid "Continue"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.followup.line,delay:0
+msgid "Days of delay"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Document : Customer account statement"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+#: field:account.followup.print.all,summary:0
+msgid "Summary"
+msgstr ""
+
+#. module: account_followup
+#: view:account.move.line:0
+msgid "Total credit"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(line)s: Ledger Posting lines"
+msgstr ""
+
+#. module: account_followup
+#: field:account_followup.followup.line,sequence:0
+msgid "Sequence"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.followup.line:0
+msgid "%(company_name)s: User's Company Name"
+msgstr ""
+
+#. module: account_followup
+#: report:account_followup.followup.print:0
+msgid "Customer Ref :"
+msgstr ""
+
+#. module: account_followup
+#: view:account.followup.print.all:0
+msgid "%(partner_name)s: Partner name"
+msgstr ""
+
+#. module: account_followup
+#: view:account_followup.stat:0
+msgid "Latest Followup Date"
+msgstr ""
+
+#. module: account_followup
+#: model:ir.model,name:account_followup.model_account_followup_followup_line
+msgid "Follow-Up Criteria"
+msgstr ""
+
+#. module: account_followup
+#: constraint:account.move.line:0
+msgid "You can not create move line on view account."
+msgstr ""
diff --git a/addons/account_followup/i18n/fr.po b/addons/account_followup/i18n/fr.po
index 8fd9e42dc5c..06fb9e56e6b 100644
--- a/addons/account_followup/i18n/fr.po
+++ b/addons/account_followup/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:14+0000\n"
-"PO-Revision-Date: 2011-11-11 15:22+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-11-25 14:47+0000\n"
+"Last-Translator: Numérigraphe \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-11-26 05:49+0000\n"
+"X-Generator: Launchpad (build 14381)\n"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:295
@@ -89,6 +89,11 @@ msgid ""
"\n"
"%s"
msgstr ""
+"\n"
+"\n"
+"Courriel envoyé vers les Partenaires suivants :\n"
+"\n"
+"%s"
#. module: account_followup
#: view:account_followup.followup:0
@@ -538,6 +543,9 @@ msgid ""
"\n"
"%s"
msgstr ""
+"Tous les courriels ont été envoyés correctement vers les Partenaires :\n"
+"\n"
+"%s"
#. module: account_followup
#: constraint:res.company:0
@@ -728,6 +736,9 @@ msgid ""
"\n"
"%s"
msgstr ""
+"Courriel non envoyé vers les Partenaires suivants (courriel indisponible) !\n"
+"\n"
+"%s"
#. module: account_followup
#: view:account.followup.print: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/report/account_followup_report.py b/addons/account_followup/report/account_followup_report.py
index c2a842cfd4c..420ca92b289 100644
--- a/addons/account_followup/report/account_followup_report.py
+++ b/addons/account_followup/report/account_followup_report.py
@@ -68,7 +68,7 @@ class account_followup_stat(osv.osv):
cr.execute("""
create or replace view account_followup_stat as (
SELECT
- l.id as id,
+ l.partner_id AS id,
l.partner_id AS partner_id,
min(l.date) AS date_move,
max(l.date) AS date_move_last,
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_followup/test/account_followup.yml b/addons/account_followup/test/account_followup.yml
index 2650a40a7ad..da7da258d21 100644
--- a/addons/account_followup/test/account_followup.yml
+++ b/addons/account_followup/test/account_followup.yml
@@ -1,91 +1,25 @@
-
- In order to test account followup module in OpenERP I create a FollowUp structure
+ In order to test account followup module in OpenERP, I change the state of invoice to "open".
-
- !record {model: res.company, id: ymltest_company_2}:
- name: Acme 2
+ !record {model: account.invoice, id: account.demo_invoice_0}:
+ check_total: 14.0
-
- !record {model: account_followup.followup, id: account_followup_followup_testfollowups0}:
- description: First letter after 15 net days, 30 net days and 45 days end of month levels.
- company_id: ymltest_company_2
- followup_line:
- - delay: 15
- name: 'level 0: 15 days'
- sequence: 0
- start: days
- description: Dear %(partner_name)s,\n\nException made if there was a mistake
- of ours, it seems that the following amount staid unpaid. Please, take appropriate
- measures in order to carry out this payment in the next 1 days.\n\nWould your
- payment have been carried out after this mail was sent, please consider the
- present one as void. Do not hesitate to contact our accounting department at
- (+32).10.68.94.39.\n\nBest Regards,\n
- - delay: 30
- name: 'level1: 30 days'
- sequence: 1
- start: days
- description: Dear %(partner_name)s,\n\nException made if there was a mistake
- of ours, it seems that the following amount staid unpaid. Please, take appropriate
- measures in order to carry out this payment in the next 2 days.\n\nWould your
- payment have been carried out after this mail was sent, please consider the
- present one as void. Do not hesitate to contact our accounting department at
- (+32).10.68.94.39.\n\nBest Regards,\n
- - delay: 45
- name: 'level 2: 45 days'
- sequence: 2
- start: days
- description: Dear %(partner_name)s,\n\nException made if there was a mistake
- of ours, it seems that the following amount staid unpaid. Please, take appropriate
- measures in order to carry out this payment in the next 3 days.\n\nWould your
- payment have been carried out after this mail was sent, please consider the
- present one as void. Do not hesitate to contact our accounting department at
- (+32).10.68.94.39.\n\nBest Regards,
- name: My followups
-
+ !workflow {model: account.invoice, action: invoice_open, ref: account.demo_invoice_0}
-
- I create an invoice
--
- !record {model: account.invoice, id: account_invoice_followup}:
- account_id: account.a_recv
- address_contact_id: base.res_partner_address_3000
- address_invoice_id: base.res_partner_address_3000
- company_id: base.main_company
- currency_id: base.EUR
- invoice_line:
- - account_id: account.a_sale
- name: '[PC1] Basic PC'
- price_unit: 450.0
- quantity: 1.0
- product_id: product.product_product_pc1
- uos_id: product.product_uom_unit
- journal_id: account.sales_journal
- partner_id: base.res_partner_desertic_hispafuentes
- reference_type: none
-
-
--
- I change the state of the invoice using create button
--
- !workflow {model: account.invoice, action: invoice_open, ref: account_invoice_followup}
-
--
- I create a send followup record
+ I create a followup.
-
!record {model: account.followup.print, id: account_followup_print_0}:
- date: !eval time.strftime('%Y-%m-%d')
- followup_id: account_followup_followup_testfollowups0
-
-
+ {}
-
- I Select Followup and clicked on Continue Button
+ I select the followup to send it to the partner.
-
!python {model: account.followup.print}: |
self.do_continue(cr, uid, [ref("account_followup_print_0")], {"lang": 'en_US',
"active_model": "ir.ui.menu", "active_ids": [ref("account_followup.account_followup_print_menu")],
"tz": False, "active_id": ref("account_followup.account_followup_print_menu"),
})
-
-
-
- I select partners whom I want to send followups
+ I select partners whom I want to send followups.
-
!record {model: account.followup.print.all, id: account_followup_print_all_0}:
email_body: 'Date : %(date)s\n\nDear %(partner_name)s,\n\nPlease find in attachment
@@ -95,15 +29,12 @@
partner_ids:
- base.res_partner_desertic_hispafuentes
partner_lang: 1
-
-
-
- I clicked on Print Follow Ups to print Followups reports
+ I send a followup mail to partner.
-
!python {model: account.followup.print.all}: |
import time
- self.do_print(cr, uid, [ref("account_followup_print_all_0")], {"lang": 'en_US',
+ self.do_mail(cr, uid, [ref("account_followup_print_all_0")], {"lang": 'en_US',
"active_model": "ir.ui.menu", "active_ids": [ref("account_followup.account_followup_print_menu")],
- "tz": False, "date": time.strftime('%Y-%m-%d'), "followup_id": ref("account_followup_followup_testfollowups0"), "active_id": ref("account_followup.account_followup_print_menu"),
- "company_id": ref('base.main_company'),
+ "tz": False, "date": time.strftime('%Y-%m-%d'), "followup_id": ref("account_followup.demo_followup1"), "active_id": ref("account_followup.account_followup_print_menu"),
})
diff --git a/addons/account_followup/test/account_followup_report.yml b/addons/account_followup/test/account_followup_report.yml
new file mode 100644
index 00000000000..1aab384dc3b
--- /dev/null
+++ b/addons/account_followup/test/account_followup_report.yml
@@ -0,0 +1,10 @@
+-
+ In order to test the report I print followup report.
+-
+ !python {model: account.followup.print.all}: |
+ import time
+ ctx = {'form_view_ref':'account_followup.view_account_followup_print_all', 'followup_id': ref('account_followup.demo_followup1'),'date': time.strftime('%Y-%m-%d'),'model': 'account_followup.followup','active_ids':[ref('account_followup_print_all_0')], 'company_id':ref('base.main_company')}
+ data_dict = {'email_conf': 1}
+ from tools import test_reports
+ test_reports.try_report_action(cr, uid, 'action_account_followup_print_all', context=ctx, wiz_data=data_dict,wiz_buttons=["Print Follow Ups"], our_module='account_followup')
+
diff --git a/addons/account_followup/wizard/account_followup_print.py b/addons/account_followup/wizard/account_followup_print.py
index ea1083f26ff..014fa2bb326 100644
--- a/addons/account_followup/wizard/account_followup_print.py
+++ b/addons/account_followup/wizard/account_followup_print.py
@@ -93,7 +93,7 @@ class account_followup_stat_by_partner(osv.osv):
cr.execute("""
create or replace view account_followup_stat_by_partner as (
SELECT
- l.partner_id * 10000 + l.company_id as id,
+ l.partner_id AS id,
l.partner_id AS partner_id,
min(l.date) AS date_move,
max(l.date) AS date_move_last,
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/fa.po b/addons/account_invoice_layout/i18n/fa.po
new file mode 100644
index 00000000000..742b7fbd93d
--- /dev/null
+++ b/addons/account_invoice_layout/i18n/fa.po
@@ -0,0 +1,366 @@
+# Persian 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-18 16:56+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_invoice_layout
+#: selection:account.invoice.line,state:0
+msgid "Sub Total"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Note:"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Cancelled Invoice"
+msgstr ""
+
+#. module: account_invoice_layout
+#: selection:account.invoice.line,state:0
+#: field:notify.message,name:0
+msgid "Title"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.actions.act_window,name:account_invoice_layout.action_account_invoice_special_msg
+#: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_layout_message
+msgid "Invoices with Layout and Message"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Disc. (%)"
+msgstr ""
+
+#. module: account_invoice_layout
+#: selection:account.invoice.line,state:0
+msgid "Note"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.model,name:account_invoice_layout.model_notify_message
+msgid "Notify By Messages"
+msgstr ""
+
+#. module: account_invoice_layout
+#: help:notify.message,msg:0
+msgid ""
+"This notification will appear at the bottom of the Invoices when printed."
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Unit Price"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.module.module,description:account_invoice_layout.module_meta_information
+msgid ""
+"\n"
+" This module provides some features to improve the layout of the "
+"invoices.\n"
+"\n"
+" It gives you the possibility to\n"
+" * order all the lines of an invoice\n"
+" * add titles, comment lines, sub total lines\n"
+" * draw horizontal lines and put page breaks\n"
+"\n"
+" Moreover, there is one option which allows you to print all the selected "
+"invoices with a given special message at the bottom of it. This feature can "
+"be very useful for printing your invoices with end-of-year wishes, special "
+"punctual conditions...\n"
+"\n"
+" "
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "VAT :"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Tel. :"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "PRO-FORMA"
+msgstr ""
+
+#. module: account_invoice_layout
+#: field:account.invoice,abstract_line_ids:0
+msgid "Invoice Lines"
+msgstr ""
+
+#. module: account_invoice_layout
+#: view:account.invoice.line:0
+msgid "Seq."
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.ui.menu,name:account_invoice_layout.menu_finan_config_notify_message
+msgid "Notification Message"
+msgstr ""
+
+#. module: account_invoice_layout
+#: selection:account.invoice.line,state:0
+msgid "Product"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Description"
+msgstr ""
+
+#. module: account_invoice_layout
+#: help:account.invoice.line,sequence:0
+msgid "Gives the sequence order when displaying a list of invoice lines."
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Price"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Invoice Date"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+msgid "Taxes:"
+msgstr ""
+
+#. module: account_invoice_layout
+#: field:account.invoice.line,functional_field:0
+msgid "Source Account"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.actions.act_window,name:account_invoice_layout.notify_mesage_tree_form
+msgid "Write Messages"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Base"
+msgstr ""
+
+#. module: account_invoice_layout
+#: selection:account.invoice.line,state:0
+msgid "Page Break"
+msgstr ""
+
+#. module: account_invoice_layout
+#: view:notify.message:0
+#: field:notify.message,msg:0
+msgid "Special Message"
+msgstr ""
+
+#. module: account_invoice_layout
+#: help:account.invoice.special.msg,message:0
+msgid "Message to Print at the bottom of report"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Quantity"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Refund"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Fax :"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+msgid "Total:"
+msgstr ""
+
+#. module: account_invoice_layout
+#: view:account.invoice.special.msg:0
+msgid "Select Message"
+msgstr ""
+
+#. module: account_invoice_layout
+#: view:notify.message:0
+msgid "Messages"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_1
+msgid "Invoices with Layout"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Description / Taxes"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Amount"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:notify.message,msg:account_invoice_layout.demo_message1
+msgid "ERP & CRM Solutions..."
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:notify_account.invoice:0
+msgid "Net Total :"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:notify_account.invoice:0
+msgid "Total :"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Draft Invoice"
+msgstr ""
+
+#. module: account_invoice_layout
+#: field:account.invoice.line,sequence:0
+msgid "Sequence Number"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.model,name:account_invoice_layout.model_account_invoice_special_msg
+msgid "Account Invoice Special Message"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Origin"
+msgstr ""
+
+#. module: account_invoice_layout
+#: field:account.invoice.line,state:0
+msgid "Type"
+msgstr ""
+
+#. module: account_invoice_layout
+#: selection:account.invoice.line,state:0
+msgid "Separator Line"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Your Reference"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.module.module,shortdesc:account_invoice_layout.module_meta_information
+msgid "Invoices Layout Improvement"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Supplier Invoice"
+msgstr ""
+
+#. module: account_invoice_layout
+#: view:account.invoice.special.msg:0
+msgid "Print"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Tax"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.model,name:account_invoice_layout.model_account_invoice_line
+msgid "Invoice Line"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+msgid "Net Total:"
+msgstr ""
+
+#. module: account_invoice_layout
+#: view:notify.message:0
+msgid "Write a notification or a wishful message."
+msgstr ""
+
+#. 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 ""
+
+#. module: account_invoice_layout
+#: view:account.invoice.special.msg:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:account.invoice.layout:0
+#: report:notify_account.invoice:0
+msgid "Supplier Refund"
+msgstr ""
+
+#. module: account_invoice_layout
+#: field:account.invoice.special.msg,message:0
+msgid "Message"
+msgstr ""
+
+#. module: account_invoice_layout
+#: report:notify_account.invoice:0
+msgid "Taxes :"
+msgstr ""
+
+#. module: account_invoice_layout
+#: model:ir.ui.menu,name:account_invoice_layout.menu_notify_mesage_tree_form
+msgid "All Notification Messages"
+msgstr ""
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/i18n/pt.po b/addons/account_invoice_layout/i18n/pt.po
index c458afe704a..480140f8fef 100644
--- a/addons/account_invoice_layout/i18n/pt.po
+++ b/addons/account_invoice_layout/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:14+0000\n"
-"PO-Revision-Date: 2010-12-09 11:41+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-11-23 12:19+0000\n"
+"Last-Translator: Paulino Ascenção \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-11-24 05:00+0000\n"
+"X-Generator: Launchpad (build 14336)\n"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
@@ -92,6 +92,20 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+" Este módulo disponibiliza algumas melhorias na apresentação das faturas\n"
+"\n"
+" Dá a possibilidade de\n"
+" * pedir todas as linhas de uma fatura\n"
+" * adicionar títulos, linhas de comentário, linhas de sub-total\n"
+" * desenhar linhas horizontais e colocar quebras de página\n"
+"\n"
+" Além do mais, existe uma opção que permite imprimir todas as facturas "
+"seleccionadas com uma mensagem especial em baixo. Esta capacidade pode ser "
+"muito útil para imprimir facturas com desejos feliz ano novo, condições "
+"pontuais especiais, etc...\n"
+"\n"
+" "
#. module: account_invoice_layout
#: report:account.invoice.layout:0
diff --git a/addons/account_invoice_layout/i18n/sr@latin.po b/addons/account_invoice_layout/i18n/sr@latin.po
index 014ebe5fc60..bc921ebf179 100644
--- a/addons/account_invoice_layout/i18n/sr@latin.po
+++ b/addons/account_invoice_layout/i18n/sr@latin.po
@@ -8,19 +8,19 @@ 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-12-23 15:39+0000\n"
-"Last-Translator: Olivier Dony (OpenERP) \n"
+"PO-Revision-Date: 2011-11-24 20:33+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian latin \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-11-25 05:22+0000\n"
+"X-Generator: Launchpad (build 14376)\n"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
msgid "Sub Total"
-msgstr "Subtotal"
+msgstr "Podtotal"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -32,7 +32,7 @@ msgstr "Napomena:"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Cancelled Invoice"
-msgstr "Otkazane Fakture"
+msgstr "Otkazana faktura"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
@@ -44,7 +44,7 @@ msgstr "Naslov"
#: model:ir.actions.act_window,name:account_invoice_layout.action_account_invoice_special_msg
#: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_layout_message
msgid "Invoices with Layout and Message"
-msgstr "Formatirana Faktura sa Porukom"
+msgstr "Formatirana faktura sa porukom"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -60,19 +60,19 @@ msgstr "Napomena"
#. module: account_invoice_layout
#: model:ir.model,name:account_invoice_layout.model_notify_message
msgid "Notify By Messages"
-msgstr "Napomena po porukama"
+msgstr "Obaveštenje putem poruke"
#. module: account_invoice_layout
#: help:notify.message,msg:0
msgid ""
"This notification will appear at the bottom of the Invoices when printed."
-msgstr "Ova napomena ce se pojaviti na dnu fakture pri stampi"
+msgstr "Ova napomena će se pojaviti na dnu faktura kad se odštampa"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Unit Price"
-msgstr "Jedinična cijena"
+msgstr "Pojedinačna cena"
#. module: account_invoice_layout
#: model:ir.module.module,description:account_invoice_layout.module_meta_information
@@ -93,6 +93,20 @@ msgid ""
"\n"
" "
msgstr ""
+"\n"
+" Ovaj modul dodaje funkcije za poboljšanje prikaza faktura.\n"
+"\n"
+" Daje Vam mogućnost da\n"
+" *poređate sve linije jedne fakture\n"
+" *dodajete naslove, linije komentara, linije podtotala\n"
+" *dodajete vodoravne linije i odvajate stranice\n"
+"\n"
+" Povrh toga, postoji opcija koja Vam omogućava štampu svih faktura sa "
+"datom specijalnom porukom\n"
+"na dnu. Ova funkcija je veoma korisna za štampu faktura sa čestitkama za "
+"Novu godinu, specijalnim uslovima...\n"
+"\n"
+" "
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -115,7 +129,7 @@ msgstr "Predračun"
#. module: account_invoice_layout
#: field:account.invoice,abstract_line_ids:0
msgid "Invoice Lines"
-msgstr "Stavke računa"
+msgstr "Linije računa"
#. module: account_invoice_layout
#: view:account.invoice.line:0
@@ -125,7 +139,7 @@ msgstr "Sekv."
#. module: account_invoice_layout
#: model:ir.ui.menu,name:account_invoice_layout.menu_finan_config_notify_message
msgid "Notification Message"
-msgstr "Poruka Napomene"
+msgstr "Poruka obaveštenja"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
@@ -136,12 +150,12 @@ msgstr "Proizvod"
#: 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 "poredja sekvence pri prikazu liste faktura."
+msgstr "Daje redosled sekvenci pri prikazu spiska linija fakture"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -153,7 +167,7 @@ msgstr "Cena"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Invoice Date"
-msgstr "Datum Fakture"
+msgstr "Datum fakture"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -163,12 +177,12 @@ msgstr "Porezi:"
#. module: account_invoice_layout
#: field:account.invoice.line,functional_field:0
msgid "Source Account"
-msgstr "Изворни налог"
+msgstr "Izvorni nalog"
#. module: account_invoice_layout
#: model:ir.actions.act_window,name:account_invoice_layout.notify_mesage_tree_form
msgid "Write Messages"
-msgstr "Napisi Poruke"
+msgstr "Napiši poruke"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -179,18 +193,18 @@ msgstr "Osnova"
#. module: account_invoice_layout
#: selection:account.invoice.line,state:0
msgid "Page Break"
-msgstr "Прелом стране"
+msgstr "Kraj stranice"
#. module: account_invoice_layout
#: view:notify.message:0
#: field:notify.message,msg:0
msgid "Special Message"
-msgstr "Specijalna Poruka"
+msgstr "Specijalna poruka"
#. module: account_invoice_layout
#: help:account.invoice.special.msg,message:0
msgid "Message to Print at the bottom of report"
-msgstr "Poruka koja se stampa pri dnu izvestaja"
+msgstr "Poruka za štampu pri dnu izveštaja"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -202,7 +216,7 @@ msgstr "Količina"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Refund"
-msgstr "Refundiraj"
+msgstr "Refundiranje"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -228,7 +242,7 @@ msgstr "Poruke"
#. module: account_invoice_layout
#: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_1
msgid "Invoices with Layout"
-msgstr "Formatirana Faktura"
+msgstr "Formatirane Fakture"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -240,33 +254,33 @@ msgstr "Opis / Porezi"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Amount"
-msgstr "Iznos"
+msgstr "Količina"
#. module: account_invoice_layout
#: model:notify.message,msg:account_invoice_layout.demo_message1
msgid "ERP & CRM Solutions..."
-msgstr ""
+msgstr "ERP & CRM Rešenja..."
#. module: account_invoice_layout
#: report:notify_account.invoice:0
msgid "Net Total :"
-msgstr ""
+msgstr "Ukupno neto :"
#. 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 "Neodobreni računi"
+msgstr "Fakture u pripremi"
#. module: account_invoice_layout
#: field:account.invoice.line,sequence:0
msgid "Sequence Number"
-msgstr "Broj Sekvence"
+msgstr "Broj sekvence"
#. module: account_invoice_layout
#: model:ir.model,name:account_invoice_layout.model_account_invoice_special_msg
@@ -277,7 +291,7 @@ msgstr "Specijalna poruka naloga fakture"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Origin"
-msgstr ""
+msgstr "Poreklo"
#. module: account_invoice_layout
#: field:account.invoice.line,state:0
@@ -293,18 +307,18 @@ msgstr "Linija za odvajanje"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Your Reference"
-msgstr ""
+msgstr "Vaš poziv na broj"
#. module: account_invoice_layout
#: model:ir.module.module,shortdesc:account_invoice_layout.module_meta_information
msgid "Invoices Layout Improvement"
-msgstr "Unapredjenje izgleda fakture"
+msgstr "Unapređenje izgleda fakture"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Supplier Invoice"
-msgstr "Račun dobavljača"
+msgstr "Faktura dobavljača"
#. module: account_invoice_layout
#: view:account.invoice.special.msg:0
@@ -320,7 +334,7 @@ msgstr "Porez"
#. module: account_invoice_layout
#: model:ir.model,name:account_invoice_layout.model_account_invoice_line
msgid "Invoice Line"
-msgstr "Redak računa"
+msgstr "Red fakture"
#. module: account_invoice_layout
#: report:account.invoice.layout:0
@@ -330,14 +344,14 @@ msgstr "Neto Ukupno"
#. module: account_invoice_layout
#: view:notify.message:0
msgid "Write a notification or a wishful message."
-msgstr "Napisi napomenu ili celu poruku"
+msgstr "Napiši obaveštenje ili neku lepu želju"
#. 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 "Račun"
+msgstr "Faktura"
#. module: account_invoice_layout
#: view:account.invoice.special.msg:0
@@ -348,7 +362,7 @@ msgstr "Otkaži"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Supplier Refund"
-msgstr "Povrat Dobavljaču"
+msgstr "Povraćaj dobavljača"
#. module: account_invoice_layout
#: field:account.invoice.special.msg,message:0
@@ -358,12 +372,12 @@ msgstr "Poruka"
#. module: account_invoice_layout
#: report:notify_account.invoice:0
msgid "Taxes :"
-msgstr ""
+msgstr "Porezi :"
#. module: account_invoice_layout
#: model:ir.ui.menu,name:account_invoice_layout.menu_notify_mesage_tree_form
msgid "All Notification Messages"
-msgstr "Sve Napomene"
+msgstr "Sve poruke obaveštenja"
#~ msgid ""
#~ "The Object name must start with x_ and not contain any special character !"
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
[[ (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) ]]
diff --git a/addons/account_invoice_layout/security/ir.model.access.csv b/addons/account_invoice_layout/security/ir.model.access.csv
index c838392e6eb..98878fc91bf 100644
--- a/addons/account_invoice_layout/security/ir.model.access.csv
+++ b/addons/account_invoice_layout/security/ir.model.access.csv
@@ -1,2 +1,2 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_notify_message,notify.message,model_notify_message,account.group_account_invoice,1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_notify_message,notify.message,model_notify_message,account.group_account_invoice,1,1,1,1
diff --git a/addons/account_payment/account_payment_view.xml b/addons/account_payment/account_payment_view.xml
index 4881adc4ad1..3fc2d716e66 100644
--- a/addons/account_payment/account_payment_view.xml
+++ b/addons/account_payment/account_payment_view.xml
@@ -322,7 +322,5 @@
-
-
diff --git a/addons/account_payment/i18n/fa.po b/addons/account_payment/i18n/fa.po
new file mode 100644
index 00000000000..d69fa3f3ba7
--- /dev/null
+++ b/addons/account_payment/i18n/fa.po
@@ -0,0 +1,714 @@
+# Persian 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-18 16:56+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_payment
+#: field:payment.order,date_scheduled:0
+msgid "Scheduled date if fixed"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,currency:0
+msgid "Partner Currency"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Set to draft"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.order,mode:0
+msgid "Select the Payment Mode to be applied."
+msgstr ""
+
+#. module: account_payment
+#: view:payment.mode:0
+#: view:payment.order:0
+msgid "Group By..."
+msgstr ""
+
+#. module: account_payment
+#: model:ir.module.module,description:account_payment.module_meta_information
+msgid ""
+"\n"
+"This module provides :\n"
+"* a more efficient way to manage invoice payment.\n"
+"* a basic mechanism to easily plug various automated payment.\n"
+" "
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,line_ids:0
+msgid "Payment lines"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+#: field:payment.line,info_owner:0
+#: view:payment.order:0
+msgid "Owner Account"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.order,state:0
+msgid ""
+"When an order is placed the state is 'Draft'.\n"
+" Once the bank is confirmed the state is set to 'Confirmed'.\n"
+" Then the order is paid the state is 'Done'."
+msgstr ""
+
+#. module: account_payment
+#: help:account.invoice,amount_to_pay:0
+msgid ""
+"The amount which should be paid at the current date\n"
+"minus the amount which is already in payment order"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.mode,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,date_prefered:0
+msgid "Preferred date"
+msgstr ""
+
+#. module: account_payment
+#: selection:payment.line,state:0
+msgid "Free"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order.create,entries:0
+msgid "Entries"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Used Account"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,ml_maturity_date:0
+#: field:payment.order.create,duedate:0
+msgid "Due Date"
+msgstr ""
+
+#. module: account_payment
+#: constraint:account.move.line:0
+msgid "You can not create move line on closed account."
+msgstr ""
+
+#. module: account_payment
+#: view:account.move.line:0
+msgid "Account Entry Line"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order.create:0
+msgid "_Add to payment order"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,name:account_payment.action_account_payment_populate_statement
+#: model:ir.actions.act_window,name:account_payment.action_account_populate_statement_confirm
+msgid "Payment Populate statement"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+#: view:payment.order:0
+msgid "Amount"
+msgstr ""
+
+#. module: account_payment
+#: sql_constraint:account.move.line:0
+msgid "Wrong credit or debit value in accounting entry !"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Total in Company Currency"
+msgstr ""
+
+#. module: account_payment
+#: selection:payment.order,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,name:account_payment.action_payment_order_tree_new
+msgid "New Payment Order"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+#: field:payment.order,reference:0
+msgid "Reference"
+msgstr ""
+
+#. module: account_payment
+#: sql_constraint:payment.line:0
+msgid "The payment line name must be unique!"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,name:account_payment.action_payment_order_tree
+#: model:ir.ui.menu,name:account_payment.menu_action_payment_order_form
+msgid "Payment Orders"
+msgstr ""
+
+#. module: account_payment
+#: selection:payment.order,date_prefered:0
+msgid "Directly"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,name:account_payment.action_payment_line_form
+#: model:ir.model,name:account_payment.model_payment_line
+#: view:payment.line:0
+#: view:payment.order:0
+msgid "Payment Line"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+msgid "Amount Total"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+#: selection:payment.order,state:0
+msgid "Confirmed"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,ml_date_created:0
+msgid "Invoice Effective Date"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Execution Type"
+msgstr ""
+
+#. module: account_payment
+#: selection:payment.line,state:0
+msgid "Structured"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+#: field:payment.order,state:0
+msgid "State"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+#: view:payment.order:0
+msgid "Transaction Information"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,name:account_payment.action_payment_mode_form
+#: model:ir.model,name:account_payment.model_payment_mode
+#: model:ir.ui.menu,name:account_payment.menu_action_payment_mode_form
+#: view:payment.mode:0
+#: view:payment.order:0
+msgid "Payment Mode"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,ml_date_created:0
+msgid "Effective Date"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,ml_inv_ref:0
+msgid "Invoice Ref."
+msgstr ""
+
+#. module: account_payment
+#: help:payment.order,date_prefered:0
+msgid ""
+"Choose an option for the Payment Order:'Fixed' stands for a date specified "
+"by you.'Directly' stands for the direct execution.'Due date' stands for the "
+"scheduled date of execution."
+msgstr ""
+
+#. module: account_payment
+#: code:addons/account_payment/account_move_line.py:110
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: account_payment
+#: view:account.move.line:0
+msgid "Total debit"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,date_done:0
+msgid "Execution date"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.mode,journal:0
+msgid "Bank or Cash Journal for the Payment Mode"
+msgstr ""
+
+#. module: account_payment
+#: selection:payment.order,date_prefered:0
+msgid "Fixed date"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,info_partner:0
+#: view:payment.order:0
+msgid "Destination Account"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+msgid "Desitination Account"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Search Payment Orders"
+msgstr ""
+
+#. module: account_payment
+#: constraint:account.move.line:0
+msgid ""
+"You can not create move line on receivable/payable account without partner"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,create_date:0
+msgid "Created"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Select Invoices to Pay"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+msgid "Currency Amount Total"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Make Payments"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,state:0
+msgid "Communication Type"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.module.module,shortdesc:account_payment.module_meta_information
+msgid "Payment Management"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,bank_statement_line_id:0
+msgid "Bank statement line"
+msgstr ""
+
+#. module: account_payment
+#: selection:payment.order,date_prefered:0
+msgid "Due date"
+msgstr ""
+
+#. module: account_payment
+#: field:account.invoice,amount_to_pay:0
+msgid "Amount to be paid"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Currency"
+msgstr ""
+
+#. module: account_payment
+#: view:account.payment.make.payment:0
+msgid "Yes"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,info_owner:0
+msgid "Address of the Main Partner"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,date:0
+msgid ""
+"If no payment date is specified, the bank will treat this payment line "
+"directly"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.model,name:account_payment.model_account_payment_populate_statement
+msgid "Account Payment Populate Statement"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.mode,name:0
+msgid "Mode of Payment"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Value Date"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Payment Type"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,amount_currency:0
+msgid "Payment amount in the partner currency"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+#: selection:payment.order,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,communication2:0
+msgid "The successor message of Communication."
+msgstr ""
+
+#. module: account_payment
+#: code:addons/account_payment/account_move_line.py:110
+#, python-format
+msgid "No partner defined on entry line"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,info_partner:0
+msgid "Address of the Ordering Customer."
+msgstr ""
+
+#. module: account_payment
+#: view:account.payment.populate.statement:0
+msgid "Populate Statement:"
+msgstr ""
+
+#. module: account_payment
+#: view:account.move.line:0
+msgid "Total credit"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.order,date_scheduled:0
+msgid "Select a date if you have chosen Preferred Date to be fixed."
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,user_id:0
+msgid "User"
+msgstr ""
+
+#. module: account_payment
+#: field:account.payment.populate.statement,lines:0
+#: model:ir.actions.act_window,name:account_payment.act_account_invoice_2_payment_line
+msgid "Payment Lines"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.model,name:account_payment.model_account_move_line
+msgid "Journal Items"
+msgstr ""
+
+#. module: account_payment
+#: constraint:account.move.line:0
+msgid "Company must be same for its related account and period."
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,move_line_id:0
+msgid ""
+"This Entry Line will be referred for the information of the ordering "
+"customer."
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order.create:0
+msgid "Search"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.report.xml,name:account_payment.payment_order1
+#: model:ir.model,name:account_payment.model_payment_order
+msgid "Payment Order"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,date:0
+msgid "Payment Date"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Total:"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,date_created:0
+msgid "Creation date"
+msgstr ""
+
+#. module: account_payment
+#: view:account.payment.populate.statement:0
+msgid "ADD"
+msgstr ""
+
+#. module: account_payment
+#: view:account.bank.statement:0
+msgid "Import payment lines"
+msgstr ""
+
+#. module: account_payment
+#: field:account.move.line,amount_to_pay:0
+msgid "Amount to pay"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,amount:0
+msgid "Amount in Company Currency"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,partner_id:0
+msgid "The Ordering Customer"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.model,name:account_payment.model_account_payment_make_payment
+msgid "Account make payment"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Invoice Ref"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,name:0
+msgid "Your Reference"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,mode:0
+msgid "Payment mode"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Payment order"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+#: view:payment.order:0
+msgid "General Information"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+#: selection:payment.order,state:0
+msgid "Done"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.model,name:account_payment.model_account_invoice
+msgid "Invoice"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,communication:0
+msgid "Communication"
+msgstr ""
+
+#. module: account_payment
+#: view:account.payment.make.payment:0
+#: view:account.payment.populate.statement:0
+#: view:payment.order:0
+#: view:payment.order.create:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+#: view:payment.order:0
+msgid "Information"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,help:account_payment.action_payment_order_tree
+msgid ""
+"A payment order is a payment request from your company to pay a supplier "
+"invoice or a customer credit note. Here you can register all payment orders "
+"that should be done, keep track of all payment orders and mention the "
+"invoice reference and the partner the payment should be done for."
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,amount:0
+msgid "Payment amount in the company currency"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order.create:0
+msgid "Search Payment lines"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,amount_currency:0
+msgid "Amount in Partner Currency"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,communication2:0
+msgid "Communication 2"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,bank_id:0
+msgid "Destination Bank account"
+msgstr ""
+
+#. module: account_payment
+#: view:account.payment.make.payment:0
+msgid "Are you sure you want to make payment?"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.mode:0
+#: field:payment.mode,journal:0
+msgid "Journal"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.mode,bank_id:0
+msgid "Bank account"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.order:0
+msgid "Confirm Payments"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,company_currency:0
+#: report:payment.order:0
+msgid "Company Currency"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.ui.menu,name:account_payment.menu_main_payment
+#: view:payment.line:0
+#: view:payment.order:0
+msgid "Payment"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Payment Order / Payment"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,move_line_id:0
+msgid "Entry line"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.line,communication:0
+msgid ""
+"Used as the message between ordering customer and current company. Depicts "
+"'What do you want to say to the recipient about this order ?'"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.mode,name:0
+msgid "Name"
+msgstr ""
+
+#. module: account_payment
+#: report:payment.order:0
+msgid "Bank Account"
+msgstr ""
+
+#. module: account_payment
+#: view:payment.line:0
+#: view:payment.order:0
+msgid "Entry Information"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.model,name:account_payment.model_payment_order_create
+msgid "payment.order.create"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,order_id:0
+msgid "Order"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.order,total:0
+msgid "Total"
+msgstr ""
+
+#. module: account_payment
+#: view:account.payment.make.payment:0
+#: model:ir.actions.act_window,name:account_payment.action_account_payment_make_payment
+msgid "Make Payment"
+msgstr ""
+
+#. module: account_payment
+#: field:payment.line,partner_id:0
+#: report:payment.order:0
+msgid "Partner"
+msgstr ""
+
+#. module: account_payment
+#: model:ir.actions.act_window,name:account_payment.action_create_payment_order
+msgid "Populate Payment"
+msgstr ""
+
+#. module: account_payment
+#: help:payment.mode,bank_id:0
+msgid "Bank Account for the Payment Mode"
+msgstr ""
+
+#. module: account_payment
+#: constraint:account.move.line:0
+msgid "You can not create move line on view account."
+msgstr ""
diff --git a/addons/account_payment/i18n/hr.po b/addons/account_payment/i18n/hr.po
index fbb8a4251ac..02d1ade77aa 100644
--- a/addons/account_payment/i18n/hr.po
+++ b/addons/account_payment/i18n/hr.po
@@ -7,19 +7,19 @@ 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: 2011-01-17 01:09+0000\n"
+"PO-Revision-Date: 2011-12-08 17:06+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:21+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_payment
#: field:payment.order,date_scheduled:0
msgid "Scheduled date if fixed"
-msgstr "Zakazani datum ako je fiskno"
+msgstr "Zakazani datum ako je fiksno"
#. module: account_payment
#: field:payment.line,currency:0
@@ -29,7 +29,7 @@ msgstr "Valuta partnera"
#. module: account_payment
#: view:payment.order:0
msgid "Set to draft"
-msgstr "Stavi u pripremu"
+msgstr "Postavi na nacrt"
#. module: account_payment
#: help:payment.order,mode:0
@@ -55,7 +55,7 @@ msgstr ""
#. module: account_payment
#: field:payment.order,line_ids:0
msgid "Payment lines"
-msgstr "Retci plaćanja"
+msgstr "Redci plaćanja"
#. module: account_payment
#: view:payment.line:0
@@ -71,6 +71,9 @@ msgid ""
" Once the bank is confirmed the state is set to 'Confirmed'.\n"
" Then the order is paid the state is 'Done'."
msgstr ""
+"When an order is placed the state is 'Draft'.\n"
+" Once the bank is confirmed the state is set to 'Confirmed'.\n"
+" Then the order is paid the state is 'Done'."
#. module: account_payment
#: help:account.invoice,amount_to_pay:0
@@ -84,7 +87,7 @@ msgstr ""
#. module: account_payment
#: field:payment.mode,company_id:0
msgid "Company"
-msgstr "Tvrtka"
+msgstr "Organizacija"
#. module: account_payment
#: field:payment.order,date_prefered:0
@@ -104,7 +107,7 @@ msgstr "Stavke"
#. module: account_payment
#: report:payment.order:0
msgid "Used Account"
-msgstr ""
+msgstr "Used Account"
#. module: account_payment
#: field:payment.line,ml_maturity_date:0
@@ -115,23 +118,23 @@ msgstr "Datum dospijeća"
#. module: account_payment
#: 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_payment
#: view:account.move.line:0
msgid "Account Entry Line"
-msgstr "Stavke knjiženja"
+msgstr "Stavke"
#. module: account_payment
#: view:payment.order.create:0
msgid "_Add to payment order"
-msgstr ""
+msgstr "_Dodaj na nalog za plaćanje"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_account_payment_populate_statement
#: model:ir.actions.act_window,name:account_payment.action_account_populate_statement_confirm
msgid "Payment Populate statement"
-msgstr ""
+msgstr "Popuni nalog za plaćanje"
#. module: account_payment
#: report:payment.order:0
@@ -142,17 +145,17 @@ msgstr "Iznos"
#. module: account_payment
#: 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_payment
#: view:payment.order:0
msgid "Total in Company Currency"
-msgstr "Ukupno u valuti tvrtke"
+msgstr "Ukupno u valuti organizacije"
#. module: account_payment
#: selection:payment.order,state:0
msgid "Cancelled"
-msgstr "Poništeno"
+msgstr "Otkazani"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_order_tree_new
@@ -163,12 +166,12 @@ msgstr "Novi nalog za plaćanje"
#: report:payment.order:0
#: field:payment.order,reference:0
msgid "Reference"
-msgstr "Veza"
+msgstr "Vezna oznaka"
#. module: account_payment
#: sql_constraint:payment.line:0
msgid "The payment line name must be unique!"
-msgstr ""
+msgstr "Naziv stavke plaćanja mora biti jedinstven!"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_order_tree
@@ -225,7 +228,7 @@ msgstr "Stanje"
#: view:payment.line:0
#: view:payment.order:0
msgid "Transaction Information"
-msgstr "Podatci o transakciji"
+msgstr "Podaci o transakciji"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_mode_form
@@ -244,7 +247,7 @@ msgstr "Efektivni datum"
#. module: account_payment
#: field:payment.line,ml_inv_ref:0
msgid "Invoice Ref."
-msgstr ""
+msgstr "Poziv na br."
#. module: account_payment
#: help:payment.order,date_prefered:0
@@ -276,7 +279,7 @@ msgstr "Datum izvršenja"
#. module: account_payment
#: help:payment.mode,journal:0
msgid "Bank or Cash Journal for the Payment Mode"
-msgstr ""
+msgstr "Dnevnik banke ili blagajne za način plaćanja"
#. module: account_payment
#: selection:payment.order,date_prefered:0
@@ -297,7 +300,7 @@ msgstr "Ciljni konto"
#. module: account_payment
#: view:payment.order:0
msgid "Search Payment Orders"
-msgstr ""
+msgstr "Traži naloge za plaćanje"
#. module: account_payment
#: constraint:account.move.line:0
@@ -323,12 +326,12 @@ msgstr "Ukupni iznos u valuti"
#. module: account_payment
#: view:payment.order:0
msgid "Make Payments"
-msgstr "Napravite plaćanja"
+msgstr "Kreiraj plaćanja"
#. module: account_payment
#: field:payment.line,state:0
msgid "Communication Type"
-msgstr "Vrsta veze"
+msgstr "Vrsta komunikacije"
#. module: account_payment
#: model:ir.module.module,shortdesc:account_payment.module_meta_information
@@ -338,32 +341,32 @@ msgstr ""
#. module: account_payment
#: field:payment.line,bank_statement_line_id:0
msgid "Bank statement line"
-msgstr ""
+msgstr "Redak bankovnog izvoda"
#. module: account_payment
#: selection:payment.order,date_prefered:0
msgid "Due date"
-msgstr ""
+msgstr "Datum dospijeća"
#. module: account_payment
#: field:account.invoice,amount_to_pay:0
msgid "Amount to be paid"
-msgstr ""
+msgstr "Za uplatu"
#. module: account_payment
#: report:payment.order:0
msgid "Currency"
-msgstr ""
+msgstr "Valuta"
#. module: account_payment
#: view:account.payment.make.payment:0
msgid "Yes"
-msgstr ""
+msgstr "Da"
#. module: account_payment
#: help:payment.line,info_owner:0
msgid "Address of the Main Partner"
-msgstr ""
+msgstr "Address of the Main Partner"
#. module: account_payment
#: help:payment.line,date:0
@@ -371,42 +374,44 @@ msgid ""
"If no payment date is specified, the bank will treat this payment line "
"directly"
msgstr ""
+"If no payment date is specified, the bank will treat this payment line "
+"directly"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_payment_populate_statement
msgid "Account Payment Populate Statement"
-msgstr ""
+msgstr "Popuni izvod plaćanja"
#. module: account_payment
#: help:payment.mode,name:0
msgid "Mode of Payment"
-msgstr ""
+msgstr "Način plaćanja"
#. module: account_payment
#: report:payment.order:0
msgid "Value Date"
-msgstr ""
+msgstr "Value Date"
#. module: account_payment
#: report:payment.order:0
msgid "Payment Type"
-msgstr ""
+msgstr "Uvjet plaćanja"
#. module: account_payment
#: help:payment.line,amount_currency:0
msgid "Payment amount in the partner currency"
-msgstr ""
+msgstr "Iznos plaćanja u partnerovoj valuti"
#. module: account_payment
#: view:payment.order:0
#: selection:payment.order,state:0
msgid "Draft"
-msgstr ""
+msgstr "Nacrt"
#. module: account_payment
#: help:payment.line,communication2:0
msgid "The successor message of Communication."
-msgstr ""
+msgstr "The successor message of Communication."
#. module: account_payment
#: code:addons/account_payment/account_move_line.py:110
@@ -417,43 +422,43 @@ msgstr ""
#. module: account_payment
#: help:payment.line,info_partner:0
msgid "Address of the Ordering Customer."
-msgstr ""
+msgstr "Adresa Uplatitelja"
#. module: account_payment
#: view:account.payment.populate.statement:0
msgid "Populate Statement:"
-msgstr ""
+msgstr "Populate Statement:"
#. module: account_payment
#: view:account.move.line:0
msgid "Total credit"
-msgstr ""
+msgstr "Ukupno potražuje"
#. module: account_payment
#: help:payment.order,date_scheduled:0
msgid "Select a date if you have chosen Preferred Date to be fixed."
-msgstr ""
+msgstr "Select a date if you have chosen Preferred Date to be fixed."
#. module: account_payment
#: field:payment.order,user_id:0
msgid "User"
-msgstr ""
+msgstr "Korisnik"
#. module: account_payment
#: field:account.payment.populate.statement,lines:0
#: model:ir.actions.act_window,name:account_payment.act_account_invoice_2_payment_line
msgid "Payment Lines"
-msgstr ""
+msgstr "Stavke plaćanja"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_move_line
msgid "Journal Items"
-msgstr ""
+msgstr "Stavke glavne knjige"
#. module: account_payment
#: 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_payment
#: help:payment.line,move_line_id:0
@@ -461,104 +466,106 @@ msgid ""
"This Entry Line will be referred for the information of the ordering "
"customer."
msgstr ""
+"This Entry Line will be referred for the information of the ordering "
+"customer."
#. module: account_payment
#: view:payment.order.create:0
msgid "Search"
-msgstr ""
+msgstr "Search"
#. module: account_payment
#: model:ir.actions.report.xml,name:account_payment.payment_order1
#: model:ir.model,name:account_payment.model_payment_order
msgid "Payment Order"
-msgstr ""
+msgstr "Nalog za plaćanje"
#. module: account_payment
#: field:payment.line,date:0
msgid "Payment Date"
-msgstr ""
+msgstr "Datum plaćanja"
#. module: account_payment
#: report:payment.order:0
msgid "Total:"
-msgstr ""
+msgstr "Ukupno:"
#. module: account_payment
#: field:payment.order,date_created:0
msgid "Creation date"
-msgstr ""
+msgstr "Datum kreiranja"
#. module: account_payment
#: view:account.payment.populate.statement:0
msgid "ADD"
-msgstr ""
+msgstr "ADD"
#. module: account_payment
#: view:account.bank.statement:0
msgid "Import payment lines"
-msgstr ""
+msgstr "Uvezi linije plaćanja"
#. module: account_payment
#: field:account.move.line,amount_to_pay:0
msgid "Amount to pay"
-msgstr ""
+msgstr "Iznos za platiti"
#. module: account_payment
#: field:payment.line,amount:0
msgid "Amount in Company Currency"
-msgstr ""
+msgstr "Iznos u valuti organizacije"
#. module: account_payment
#: help:payment.line,partner_id:0
msgid "The Ordering Customer"
-msgstr ""
+msgstr "The Ordering Customer"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_payment_make_payment
msgid "Account make payment"
-msgstr ""
+msgstr "Plaćanje"
#. module: account_payment
#: report:payment.order:0
msgid "Invoice Ref"
-msgstr ""
+msgstr "Poziv na br."
#. module: account_payment
#: field:payment.line,name:0
msgid "Your Reference"
-msgstr ""
+msgstr "Vaša oznaka"
#. module: account_payment
#: field:payment.order,mode:0
msgid "Payment mode"
-msgstr ""
+msgstr "Vrsta plaćanja"
#. module: account_payment
#: view:payment.order:0
msgid "Payment order"
-msgstr ""
+msgstr "Nalog za plaćanje"
#. module: account_payment
#: view:payment.line:0
#: view:payment.order:0
msgid "General Information"
-msgstr ""
+msgstr "Opći podaci"
#. module: account_payment
#: view:payment.order:0
#: selection:payment.order,state:0
msgid "Done"
-msgstr ""
+msgstr "Izvršeno"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_invoice
msgid "Invoice"
-msgstr ""
+msgstr "Račun"
#. module: account_payment
#: field:payment.line,communication:0
msgid "Communication"
-msgstr ""
+msgstr "Veza"
#. module: account_payment
#: view:account.payment.make.payment:0
@@ -566,13 +573,13 @@ msgstr ""
#: view:payment.order:0
#: view:payment.order.create:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: account_payment
#: view:payment.line:0
#: view:payment.order:0
msgid "Information"
-msgstr ""
+msgstr "Informacija"
#. module: account_payment
#: model:ir.actions.act_window,help:account_payment.action_payment_order_tree
@@ -582,26 +589,30 @@ msgid ""
"that should be done, keep track of all payment orders and mention the "
"invoice reference and the partner the payment should be done for."
msgstr ""
+"Nalog za plaćanje je zahtjev za plaćanjem za plaćanjem računa dobavljaču ili "
+"odobrenje kupca. Ovdje se mogu prijaviti svi nalozi za plaćanje koje je "
+"potrebno izvršiti, omogućuje također praćenje naloga za plaćanje i "
+"spomenutih računa i partnera koje je potrebno platiti."
#. module: account_payment
#: help:payment.line,amount:0
msgid "Payment amount in the company currency"
-msgstr ""
+msgstr "Iznos plaćanja u valuti organizacije"
#. module: account_payment
#: view:payment.order.create:0
msgid "Search Payment lines"
-msgstr ""
+msgstr "Traži stavke naloga za plaćanje"
#. module: account_payment
#: field:payment.line,amount_currency:0
msgid "Amount in Partner Currency"
-msgstr ""
+msgstr "Iznos u valuti partnera"
#. module: account_payment
#: field:payment.line,communication2:0
msgid "Communication 2"
-msgstr ""
+msgstr "Komunikacija 2"
#. module: account_payment
#: field:payment.line,bank_id:0
@@ -611,46 +622,46 @@ msgstr ""
#. module: account_payment
#: view:account.payment.make.payment:0
msgid "Are you sure you want to make payment?"
-msgstr ""
+msgstr "Želite dodati plaćanje?"
#. module: account_payment
#: view:payment.mode:0
#: field:payment.mode,journal:0
msgid "Journal"
-msgstr ""
+msgstr "Dnevnik"
#. module: account_payment
#: field:payment.mode,bank_id:0
msgid "Bank account"
-msgstr ""
+msgstr "Bankovni račun"
#. module: account_payment
#: view:payment.order:0
msgid "Confirm Payments"
-msgstr ""
+msgstr "Potvrdi plaćanja"
#. module: account_payment
#: field:payment.line,company_currency:0
#: report:payment.order:0
msgid "Company Currency"
-msgstr ""
+msgstr "Valuta organizacije"
#. module: account_payment
#: model:ir.ui.menu,name:account_payment.menu_main_payment
#: view:payment.line:0
#: view:payment.order:0
msgid "Payment"
-msgstr ""
+msgstr "Plaćanje"
#. module: account_payment
#: report:payment.order:0
msgid "Payment Order / Payment"
-msgstr ""
+msgstr "Nalog za plaćanje / plaćanje"
#. module: account_payment
#: field:payment.line,move_line_id:0
msgid "Entry line"
-msgstr ""
+msgstr "Redak"
#. module: account_payment
#: help:payment.line,communication:0
@@ -658,61 +669,63 @@ msgid ""
"Used as the message between ordering customer and current company. Depicts "
"'What do you want to say to the recipient about this order ?'"
msgstr ""
+"Used as the message between ordering customer and current company. Depicts "
+"'What do you want to say to the recipient about this order ?'"
#. module: account_payment
#: field:payment.mode,name:0
msgid "Name"
-msgstr ""
+msgstr "Naziv"
#. module: account_payment
#: report:payment.order:0
msgid "Bank Account"
-msgstr ""
+msgstr "Bankovni račun"
#. module: account_payment
#: view:payment.line:0
#: view:payment.order:0
msgid "Entry Information"
-msgstr ""
+msgstr "Informacije"
#. module: account_payment
#: model:ir.model,name:account_payment.model_payment_order_create
msgid "payment.order.create"
-msgstr ""
+msgstr "payment.order.create"
#. module: account_payment
#: field:payment.line,order_id:0
msgid "Order"
-msgstr ""
+msgstr "Order"
#. module: account_payment
#: field:payment.order,total:0
msgid "Total"
-msgstr ""
+msgstr "Ukupno"
#. module: account_payment
#: view:account.payment.make.payment:0
#: model:ir.actions.act_window,name:account_payment.action_account_payment_make_payment
msgid "Make Payment"
-msgstr ""
+msgstr "Plaćanje"
#. module: account_payment
#: field:payment.line,partner_id:0
#: report:payment.order:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_create_payment_order
msgid "Populate Payment"
-msgstr ""
+msgstr "Popuni plaćanje"
#. module: account_payment
#: help:payment.mode,bank_id:0
msgid "Bank Account for the Payment Mode"
-msgstr ""
+msgstr "Račun banke za vrstu plaćanja"
#. module: account_payment
#: 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."
diff --git a/addons/account_payment/i18n/sr@latin.po b/addons/account_payment/i18n/sr@latin.po
index 6efe331146d..13925099baf 100644
--- a/addons/account_payment/i18n/sr@latin.po
+++ b/addons/account_payment/i18n/sr@latin.po
@@ -8,19 +8,19 @@ 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-12-23 15:17+0000\n"
-"Last-Translator: Olivier Dony (OpenERP) \n"
+"PO-Revision-Date: 2011-12-13 15:21+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian latin \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-14 04:45+0000\n"
+"X-Generator: Launchpad (build 14487)\n"
#. module: account_payment
#: field:payment.order,date_scheduled:0
msgid "Scheduled date if fixed"
-msgstr "Zakazani datum ako je fiskno"
+msgstr "Zakazani datum ako je fiksiran"
#. module: account_payment
#: field:payment.line,currency:0
@@ -30,7 +30,7 @@ msgstr "Valuta partnera"
#. module: account_payment
#: view:payment.order:0
msgid "Set to draft"
-msgstr "Postavi za obradu"
+msgstr "Postavi kao pripremu"
#. module: account_payment
#: help:payment.order,mode:0
@@ -41,7 +41,7 @@ msgstr "Odaberite način plaćanja koji će biti primenjen."
#: view:payment.mode:0
#: view:payment.order:0
msgid "Group By..."
-msgstr "Grupirano po"
+msgstr "Grupiši po..."
#. module: account_payment
#: model:ir.module.module,description:account_payment.module_meta_information
@@ -52,6 +52,11 @@ msgid ""
"* a basic mechanism to easily plug various automated payment.\n"
" "
msgstr ""
+"\n"
+"Ovaj modul omogućava:\n"
+"*efikasniji način za upravljanje isplaćivanja faktura\n"
+"*osnovni mehanizam za lako obrađivanje automatizovanih načina isplate\n"
+" "
#. module: account_payment
#: field:payment.order,line_ids:0
@@ -98,7 +103,7 @@ msgstr "Zeljeni Datum"
#. module: account_payment
#: selection:payment.line,state:0
msgid "Free"
-msgstr "slobodno"
+msgstr "Slobodno"
#. module: account_payment
#: field:payment.order.create,entries:0
@@ -108,18 +113,18 @@ msgstr "Stavke"
#. module: account_payment
#: report:payment.order:0
msgid "Used Account"
-msgstr "Koristeni Nalog"
+msgstr "Korišteni nalog"
#. module: account_payment
#: field:payment.line,ml_maturity_date:0
#: field:payment.order.create,duedate:0
msgid "Due Date"
-msgstr "Datum dospeća"
+msgstr "Krajnji rok"
#. module: account_payment
#: constraint:account.move.line:0
msgid "You can not create move line on closed account."
-msgstr ""
+msgstr "Ne možete da napravite poteznu liniju na zatvorenim računima."
#. module: account_payment
#: view:account.move.line:0
@@ -135,7 +140,7 @@ msgstr "_Dodaj u nalog za plaćanje"
#: model:ir.actions.act_window,name:account_payment.action_account_payment_populate_statement
#: model:ir.actions.act_window,name:account_payment.action_account_populate_statement_confirm
msgid "Payment Populate statement"
-msgstr "Ispuna sadrzaja fakture"
+msgstr "Ispunjavanje sadržaja fakture"
#. module: account_payment
#: report:payment.order:0
@@ -146,12 +151,12 @@ msgstr "Iznos"
#. module: account_payment
#: sql_constraint:account.move.line:0
msgid "Wrong credit or debit value in accounting entry !"
-msgstr ""
+msgstr "Pogrešna vrednost kredita ili debita u ulazu računa !"
#. module: account_payment
#: view:payment.order:0
msgid "Total in Company Currency"
-msgstr "Ukupno u valuti preduzeca"
+msgstr "Ukupno u valuti preduzeća"
#. module: account_payment
#: selection:payment.order,state:0
@@ -172,7 +177,7 @@ msgstr "Referenca"
#. module: account_payment
#: sql_constraint:payment.line:0
msgid "The payment line name must be unique!"
-msgstr ""
+msgstr "Red plaćanja mora biti jedinstven!"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_order_tree
@@ -212,7 +217,7 @@ msgstr "Efektivni datum fakture"
#. module: account_payment
#: report:payment.order:0
msgid "Execution Type"
-msgstr "Tip Izuzetka"
+msgstr "Tip Izvršavanja"
#. module: account_payment
#: selection:payment.line,state:0
@@ -229,7 +234,7 @@ msgstr "Stanje"
#: view:payment.line:0
#: view:payment.order:0
msgid "Transaction Information"
-msgstr "Informacije Transakcije"
+msgstr "Informacije o transakciji"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_mode_form
@@ -257,8 +262,8 @@ msgid ""
"by you.'Directly' stands for the direct execution.'Due date' stands for the "
"scheduled date of execution."
msgstr ""
-"Odaberite opciju za nalog za plaćanje: \"Fiksno\" znači datum naveden od "
-"vaše strane. \"Direktno\" znači direktno izvršenje. \"Datum odgode\" znači "
+"Odaberite opciju za nalog za plaćanje: \"Fiksirano\" znači datum naveden s "
+"Vaše strane. \"Direktno\" znači direktno izvršenje. \"Datum odgode\" znači "
"zakazan datum izvršenja."
#. module: account_payment
@@ -280,12 +285,12 @@ msgstr "Datum izvršenja"
#. module: account_payment
#: help:payment.mode,journal:0
msgid "Bank or Cash Journal for the Payment Mode"
-msgstr ""
+msgstr "Dnevnik banke ili keša za način plaćanja"
#. module: account_payment
#: selection:payment.order,date_prefered:0
msgid "Fixed date"
-msgstr "Fiksni datum"
+msgstr "Fiksirani datum"
#. module: account_payment
#: field:payment.line,info_partner:0
@@ -301,18 +306,19 @@ msgstr "Ciljni račun"
#. module: account_payment
#: view:payment.order:0
msgid "Search Payment Orders"
-msgstr "Pretrazi naloge za placanje"
+msgstr "Pretraži naloge za plaćanje"
#. module: account_payment
#: constraint:account.move.line:0
msgid ""
"You can not create move line on receivable/payable account without partner"
msgstr ""
+"Ne možete napraviti poteznu liniju na primaćem/platežnom računu bez partnera"
#. module: account_payment
#: field:payment.line,create_date:0
msgid "Created"
-msgstr "Kreirano"
+msgstr "Napravljeno"
#. module: account_payment
#: view:payment.order:0
@@ -327,17 +333,17 @@ msgstr "Ukupni iznos valute"
#. module: account_payment
#: view:payment.order:0
msgid "Make Payments"
-msgstr "Napravite plaćanja"
+msgstr "Izvršite plaćanja"
#. module: account_payment
#: field:payment.line,state:0
msgid "Communication Type"
-msgstr "Tip Komunikacije"
+msgstr "Tip komunikacije"
#. module: account_payment
#: model:ir.module.module,shortdesc:account_payment.module_meta_information
msgid "Payment Management"
-msgstr "Menadzment Plaćanja"
+msgstr "Upravljanje plaćanjem"
#. module: account_payment
#: field:payment.line,bank_statement_line_id:0
@@ -347,7 +353,7 @@ msgstr "Red Izvoda iz Banke"
#. module: account_payment
#: selection:payment.order,date_prefered:0
msgid "Due date"
-msgstr "Krajnji Rok"
+msgstr "Krajnji rok"
#. module: account_payment
#: field:account.invoice,amount_to_pay:0
@@ -391,7 +397,7 @@ msgstr "Način plaćanja"
#. module: account_payment
#: report:payment.order:0
msgid "Value Date"
-msgstr "Datum"
+msgstr "Datum valute"
#. module: account_payment
#: report:payment.order:0
@@ -412,23 +418,23 @@ msgstr "Priprema"
#. module: account_payment
#: help:payment.line,communication2:0
msgid "The successor message of Communication."
-msgstr "Nasljedna poruka komunikacije."
+msgstr "Naredna poruka komunikacije."
#. module: account_payment
#: code:addons/account_payment/account_move_line.py:110
#, python-format
msgid "No partner defined on entry line"
-msgstr "Partner nije definisan"
+msgstr "Partner nije definisan na redu stavke"
#. module: account_payment
#: help:payment.line,info_partner:0
msgid "Address of the Ordering Customer."
-msgstr "Adresa kupca naručitelja."
+msgstr "Adresa naručitelja."
#. module: account_payment
#: view:account.payment.populate.statement:0
msgid "Populate Statement:"
-msgstr "Popuni sadrzaj:"
+msgstr "Popuni sadržaj:"
#. module: account_payment
#: view:account.move.line:0
@@ -438,7 +444,7 @@ msgstr "Ukupno potražuje"
#. module: account_payment
#: help:payment.order,date_scheduled:0
msgid "Select a date if you have chosen Preferred Date to be fixed."
-msgstr "Odaberite datum ako ste odabrali fiksni željeni datum"
+msgstr "Odaberite datum ako ste odabrali fiksirani željeni datum"
#. module: account_payment
#: field:payment.order,user_id:0
@@ -454,12 +460,12 @@ msgstr "Redovi plaćanja"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_move_line
msgid "Journal Items"
-msgstr "Sadrzaj Dnevnika"
+msgstr "Stavke dnevnika"
#. module: account_payment
#: constraint:account.move.line:0
msgid "Company must be same for its related account and period."
-msgstr ""
+msgstr "Preduzeće mora biti isto za sve vezane račune i periode."
#. module: account_payment
#: help:payment.line,move_line_id:0
@@ -492,12 +498,12 @@ msgstr "Ukupno:"
#. module: account_payment
#: field:payment.order,date_created:0
msgid "Creation date"
-msgstr "Datum kreiranja"
+msgstr "Datum pravljenja"
#. module: account_payment
#: view:account.payment.populate.statement:0
msgid "ADD"
-msgstr "Dodaj"
+msgstr "DODAJ"
#. module: account_payment
#: view:account.bank.statement:0
@@ -517,22 +523,22 @@ msgstr "Iznos u valuti preduzeca"
#. module: account_payment
#: help:payment.line,partner_id:0
msgid "The Ordering Customer"
-msgstr "Kupac naručitelj"
+msgstr "Naručitelj"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_payment_make_payment
msgid "Account make payment"
-msgstr "Izvrsi placanje naloga"
+msgstr "Izvrši plaćanje naloga"
#. module: account_payment
#: report:payment.order:0
msgid "Invoice Ref"
-msgstr "Referenca fakture"
+msgstr "Ref. fakture"
#. module: account_payment
#: field:payment.line,name:0
msgid "Your Reference"
-msgstr "Vaše veze"
+msgstr "Vaš poziv na broj"
#. module: account_payment
#: field:payment.order,mode:0
@@ -578,7 +584,7 @@ msgstr "Otkaži"
#: view:payment.line:0
#: view:payment.order:0
msgid "Information"
-msgstr "Informacija"
+msgstr "Informacije"
#. module: account_payment
#: model:ir.actions.act_window,help:account_payment.action_payment_order_tree
@@ -588,6 +594,10 @@ msgid ""
"that should be done, keep track of all payment orders and mention the "
"invoice reference and the partner the payment should be done for."
msgstr ""
+"Nalog za plaćanje je zahtev za plaćanje od strane Vašeg preduzeća za isplatu "
+"faktura nabavke ili kupaca. Ovde možete snimiti sve naloge za plaćanje na "
+"čekanju, pratite sve naloge za plaćanje i pomenete poziv na broj za datu "
+"fakturu i kom partneru treba izvršiti isplatu."
#. module: account_payment
#: help:payment.line,amount:0
@@ -612,12 +622,12 @@ msgstr "Komunikacija 2"
#. module: account_payment
#: field:payment.line,bank_id:0
msgid "Destination Bank account"
-msgstr "Destinacioni bankovni račun"
+msgstr "Ciljni bankovni račun"
#. module: account_payment
#: view:account.payment.make.payment:0
msgid "Are you sure you want to make payment?"
-msgstr "Jeste li sigurni da zelite da izvrsite isplatu?"
+msgstr "Jeste li sigurni da želite da izvršite isplatu?"
#. module: account_payment
#: view:payment.mode:0
@@ -639,7 +649,7 @@ msgstr "Potvrdi plaćanja"
#: field:payment.line,company_currency:0
#: report:payment.order:0
msgid "Company Currency"
-msgstr "Valuta preduzeca"
+msgstr "Valuta preduzeća"
#. module: account_payment
#: model:ir.ui.menu,name:account_payment.menu_main_payment
@@ -651,7 +661,7 @@ msgstr "Isplata"
#. module: account_payment
#: report:payment.order:0
msgid "Payment Order / Payment"
-msgstr "Isplata Faktura / Placanje"
+msgstr "Isplata Faktura / Plaćanje"
#. module: account_payment
#: field:payment.line,move_line_id:0
@@ -664,13 +674,13 @@ msgid ""
"Used as the message between ordering customer and current company. Depicts "
"'What do you want to say to the recipient about this order ?'"
msgstr ""
-"Koristi se kao poruka izmedju narucioca i date kompanije. Objasnjava ' Sta "
-"ste to hteli reci kupcu o ovoj narudzbi?'"
+"Koristi se kao poruka između naručioca i date kompanije. Prikazuje ' Šta "
+"želite reći kupcu o ovoj narudžbini?'"
#. module: account_payment
#: field:payment.mode,name:0
msgid "Name"
-msgstr "Ime"
+msgstr "Naziv"
#. module: account_payment
#: report:payment.order:0
@@ -681,7 +691,7 @@ msgstr "Bankovni račun"
#: view:payment.line:0
#: view:payment.order:0
msgid "Entry Information"
-msgstr "Unos Informacije"
+msgstr "Informacije o unosu"
#. module: account_payment
#: model:ir.model,name:account_payment.model_payment_order_create
@@ -702,7 +712,7 @@ msgstr "Ukupno"
#: view:account.payment.make.payment:0
#: model:ir.actions.act_window,name:account_payment.action_account_payment_make_payment
msgid "Make Payment"
-msgstr "Izvrsi placanje"
+msgstr "Izvrši placanje"
#. module: account_payment
#: field:payment.line,partner_id:0
@@ -713,7 +723,7 @@ msgstr "Partner"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_create_payment_order
msgid "Populate Payment"
-msgstr "Popuni Placanje"
+msgstr "Popuni plaćanje"
#. module: account_payment
#: help:payment.mode,bank_id:0
@@ -723,7 +733,7 @@ msgstr "Bankovni račun za način plaćanja"
#. module: account_payment
#: constraint:account.move.line:0
msgid "You can not create move line on view account."
-msgstr ""
+msgstr "Ne možete napraviti poteznu liniju na računu po viđenju"
#~ msgid "Invalid model name in the action definition."
#~ msgstr "Pogrešno ime modela u definiciji akcije."
diff --git a/addons/account_payment/security/ir.model.access.csv b/addons/account_payment/security/ir.model.access.csv
index a4b6fe0af5e..864b7656964 100644
--- a/addons/account_payment/security/ir.model.access.csv
+++ b/addons/account_payment/security/ir.model.access.csv
@@ -1,11 +1,8 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_payment_mode","payment.mode","model_payment_mode","group_account_payment",1,1,1,1
-"access_payment_order","payment.order","model_payment_order","group_account_payment",1,1,1,1
-"access_payment_line","payment.line","model_payment_line","group_account_payment",1,1,1,1
-"access_account_journal_payement","account.journal payment","account.model_account_journal","group_account_payment",1,0,0,0
-"access_account_invoice_payment","account.invoice payment","account.model_account_invoice","group_account_payment",1,0,0,0
-"access_account_move_line_payment","account.move.line payment","account.model_account_move_line","group_account_payment",1,0,0,0
-"access_payment_order_accountant","payment.order accountant","model_payment_order","account.group_account_user",1,1,1,1
-"access_payment_order_manager","payment.order manager","model_payment_order","account.group_account_manager",1,0,0,0
-"access_payment_order_invoice","payment.order invoice","model_payment_order","account.group_account_invoice",1,1,1,1
-"access_payment_line_invoice","payment.line invoice","model_payment_line","account.group_account_invoice",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_payment_mode,payment.mode,model_payment_mode,group_account_payment,1,1,1,1
+access_payment_order,payment.order,model_payment_order,group_account_payment,1,1,1,1
+access_payment_line,payment.line,model_payment_line,group_account_payment,1,1,1,1
+access_account_journal_payement,account.journal payment,account.model_account_journal,group_account_payment,1,0,0,0
+access_account_invoice_payment,account.invoice payment,account.model_account_invoice,group_account_payment,1,0,0,0
+access_account_move_line_payment,account.move.line payment,account.model_account_move_line,group_account_payment,1,0,0,0
+access_payment_order_manager,payment.order manager,model_payment_order,account.group_account_manager,1,0,0,0
diff --git a/addons/account_sequence/__openerp__.py b/addons/account_sequence/__openerp__.py
index 31d4f373e2f..7ad66a5b428 100644
--- a/addons/account_sequence/__openerp__.py
+++ b/addons/account_sequence/__openerp__.py
@@ -22,7 +22,7 @@
{
'name': 'Entries Sequence Numbering',
'version': '1.1',
- 'category': 'Hidden',
+ "category": 'Accounting & Finance',
'complexity': "easy",
'description': """
This module maintains internal sequence number for accounting entries.
diff --git a/addons/account_sequence/i18n/fa.po b/addons/account_sequence/i18n/fa.po
new file mode 100644
index 00000000000..953f96793b6
--- /dev/null
+++ b/addons/account_sequence/i18n/fa.po
@@ -0,0 +1,221 @@
+# Persian 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-18 16:58+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer
+msgid "Account Sequence Application Configuration"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You cannot create entries on different periods/journals in the same move"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.move,internal_sequence_number:0
+#: help:account.move.line,internal_sequence_number:0
+msgid "Internal Sequence Number"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_next:0
+msgid "Next number of this sequence"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_next:0
+msgid "Next Number"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_increment:0
+msgid "Increment Number"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.module.module,description:account_sequence.module_meta_information
+msgid ""
+"\n"
+" This module maintains internal sequence number for accounting entries.\n"
+" "
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.module.module,shortdesc:account_sequence.module_meta_information
+msgid "Entries Sequence Numbering"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_increment:0
+msgid "The next number of the sequence will be incremented by this number"
+msgstr ""
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure Your Account Sequence Application"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,progress:0
+msgid "Configuration Progress"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,suffix:0
+msgid "Suffix value of the record for the sequence"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.journal,internal_sequence_id:0
+msgid ""
+"This sequence will be used to maintain the internal number for the journal "
+"entries related to this journal."
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,padding:0
+msgid "Number padding"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move_line
+msgid "Journal Items"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.move,internal_sequence_number:0
+#: field:account.move.line,internal_sequence_number:0
+msgid "Internal Number"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "Company must be same for its related account and period."
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,padding:0
+msgid ""
+"OpenERP will automatically adds some '0' on the left of the 'Next Number' to "
+"get the required padding size."
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,name:0
+msgid "Name"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create move line on closed account."
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You cannot create more than one move per period on centralized journal"
+msgstr ""
+
+#. module: account_sequence
+#: sql_constraint:account.move.line:0
+msgid "Wrong credit or debit value in accounting entry !"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.journal,internal_sequence_id:0
+msgid "Internal Sequence"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_sequence_installer
+msgid "account.sequence.installer"
+msgstr ""
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,prefix:0
+msgid "Prefix value of the record for the sequence"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move
+msgid "Account Entry"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,suffix:0
+msgid "Suffix"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,config_logo:0
+msgid "Image"
+msgstr ""
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "title"
+msgstr ""
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The name of the journal must be unique per company !"
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,prefix:0
+msgid "Prefix"
+msgstr ""
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The code of the journal must be unique per company !"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid ""
+"You can not create move line on receivable/payable account without partner"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_journal
+msgid "Journal"
+msgstr ""
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "You can enhance the Account Sequence Application by installing ."
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create move line on view account."
+msgstr ""
diff --git a/addons/account_sequence/i18n/hr.po b/addons/account_sequence/i18n/hr.po
new file mode 100644
index 00000000000..14005991bb8
--- /dev/null
+++ b/addons/account_sequence/i18n/hr.po
@@ -0,0 +1,222 @@
+# 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:33+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: account_sequence
+#: view:account.sequence.installer:0
+#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer
+msgid "Account Sequence Application Configuration"
+msgstr "Postave brojčanih serija"
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You cannot create entries on different periods/journals in the same move"
+msgstr ""
+"Sva knjiženja na jednoj temeljnici moraju imati isti period i dnevnik."
+
+#. module: account_sequence
+#: help:account.move,internal_sequence_number:0
+#: help:account.move.line,internal_sequence_number:0
+msgid "Internal Sequence Number"
+msgstr "Interni broj"
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_next:0
+msgid "Next number of this sequence"
+msgstr "Slijedeći broj ove brojčane serije"
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_next:0
+msgid "Next Number"
+msgstr "Sljedeći broj"
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_increment:0
+msgid "Increment Number"
+msgstr "Povećati za broj"
+
+#. module: account_sequence
+#: model:ir.module.module,description:account_sequence.module_meta_information
+msgid ""
+"\n"
+" This module maintains internal sequence number for accounting entries.\n"
+" "
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.module.module,shortdesc:account_sequence.module_meta_information
+msgid "Entries Sequence Numbering"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_increment:0
+msgid "The next number of the sequence will be incremented by this number"
+msgstr "Korak uvećanja brojača. 1 će uvećavati brojač za jedan, 10 za 10."
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure Your Account Sequence Application"
+msgstr "Postavite vaše brojčane serije"
+
+#. module: account_sequence
+#: field:account.sequence.installer,progress:0
+msgid "Configuration Progress"
+msgstr "Napredak konfiguracije"
+
+#. module: account_sequence
+#: help:account.sequence.installer,suffix:0
+msgid "Suffix value of the record for the sequence"
+msgstr "Sufiks (poslije brojača) za ovu brojčanu seriju"
+
+#. module: account_sequence
+#: field:account.sequence.installer,company_id:0
+msgid "Company"
+msgstr "Organizacija"
+
+#. module: account_sequence
+#: help:account.journal,internal_sequence_id:0
+msgid ""
+"This sequence will be used to maintain the internal number for the journal "
+"entries related to this journal."
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,padding:0
+msgid "Number padding"
+msgstr "Dopunjavanje na duljinu"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move_line
+msgid "Journal Items"
+msgstr "Stavke glavne knjige"
+
+#. module: account_sequence
+#: field:account.move,internal_sequence_number:0
+#: field:account.move.line,internal_sequence_number:0
+msgid "Internal Number"
+msgstr "Interni broj"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "Company must be same for its related account and period."
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,padding:0
+msgid ""
+"OpenERP will automatically adds some '0' on the left of the 'Next Number' to "
+"get the required padding size."
+msgstr "Potreban broj vodećih \"0\" će se automatski dodati."
+
+#. module: account_sequence
+#: field:account.sequence.installer,name:0
+msgid "Name"
+msgstr "Naziv"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create move line on closed account."
+msgstr "Ne možete kreirati stavke prometa za zatvoreni račun."
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You cannot create more than one move per period on centralized journal"
+msgstr ""
+
+#. module: account_sequence
+#: sql_constraint:account.move.line:0
+msgid "Wrong credit or debit value in accounting entry !"
+msgstr "Pogrešna dugovna ili potražna vrijednost upisane stavke!"
+
+#. module: account_sequence
+#: field:account.journal,internal_sequence_id:0
+msgid "Internal Sequence"
+msgstr "Interna brojčana serija"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_sequence_installer
+msgid "account.sequence.installer"
+msgstr ""
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure"
+msgstr "Postavke"
+
+#. module: account_sequence
+#: help:account.sequence.installer,prefix:0
+msgid "Prefix value of the record for the sequence"
+msgstr "Prefiks za brojčanu seriju"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move
+msgid "Account Entry"
+msgstr "Temeljnica"
+
+#. module: account_sequence
+#: field:account.sequence.installer,suffix:0
+msgid "Suffix"
+msgstr "Sufiks"
+
+#. module: account_sequence
+#: field:account.sequence.installer,config_logo:0
+msgid "Image"
+msgstr "Slika"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "title"
+msgstr "naslov"
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The name of the journal must be unique per company !"
+msgstr "Naziv dnevnika mora biti jedinstven za jednu organizaciju!"
+
+#. module: account_sequence
+#: field:account.sequence.installer,prefix:0
+msgid "Prefix"
+msgstr "Prefiks"
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The code of the journal must be unique per company !"
+msgstr "Šifra dnevnika mora biti jedinstvena (za organizaciju) !"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid ""
+"You can not create move line on receivable/payable account without partner"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_journal
+msgid "Journal"
+msgstr "Dnevnik"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "You can enhance the Account Sequence Application by installing ."
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create move line on view account."
+msgstr "Ne može se knjižiti na sintetički konto."
diff --git a/addons/account_sequence/i18n/pt.po b/addons/account_sequence/i18n/pt.po
index 84c22715b25..e2e827d4e57 100644
--- a/addons/account_sequence/i18n/pt.po
+++ b/addons/account_sequence/i18n/pt.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: 2011-04-24 03:28+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-12-09 10:09+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:56+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-10 04:56+0000\n"
+"X-Generator: Launchpad (build 14450)\n"
#. module: account_sequence
#: view:account.sequence.installer:0
@@ -28,12 +28,13 @@ msgstr ""
msgid ""
"You cannot create entries on different periods/journals in the same move"
msgstr ""
+"Não pode criar registos em períodos ou diários diferentes no mesmo movimento"
#. module: account_sequence
#: help:account.move,internal_sequence_number:0
#: help:account.move.line,internal_sequence_number:0
msgid "Internal Sequence Number"
-msgstr ""
+msgstr "Número interno de sequência"
#. module: account_sequence
#: help:account.sequence.installer,number_next:0
@@ -43,12 +44,12 @@ msgstr ""
#. module: account_sequence
#: field:account.sequence.installer,number_next:0
msgid "Next Number"
-msgstr ""
+msgstr "Próximo número"
#. module: account_sequence
#: field:account.sequence.installer,number_increment:0
msgid "Increment Number"
-msgstr ""
+msgstr "Incremento"
#. module: account_sequence
#: model:ir.module.module,description:account_sequence.module_meta_information
@@ -57,6 +58,10 @@ msgid ""
" This module maintains internal sequence number for accounting entries.\n"
" "
msgstr ""
+"\n"
+" Esse módulo gere os números de sequência internos dos lançamentos "
+"contabilísticos.\n"
+" "
#. module: account_sequence
#: model:ir.module.module,shortdesc:account_sequence.module_meta_information
diff --git a/addons/account_sequence/i18n/sr@latin.po b/addons/account_sequence/i18n/sr@latin.po
new file mode 100644
index 00000000000..5bd9511ee9f
--- /dev/null
+++ b/addons/account_sequence/i18n/sr@latin.po
@@ -0,0 +1,233 @@
+# Serbian Latin 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-11-24 21:01+0000\n"
+"Last-Translator: Milan Milosevic \n"
+"Language-Team: Serbian Latin \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-25 05:22+0000\n"
+"X-Generator: Launchpad (build 14376)\n"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer
+msgid "Account Sequence Application Configuration"
+msgstr "Podešavanje aplikacije nizova naloga"
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You cannot create entries on different periods/journals in the same move"
+msgstr ""
+"Ne možete napraviti ulaze za različite periode/dnevnike u jednom potezu"
+
+#. module: account_sequence
+#: help:account.move,internal_sequence_number:0
+#: help:account.move.line,internal_sequence_number:0
+msgid "Internal Sequence Number"
+msgstr "Broj unutrašnjeg niza"
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_next:0
+msgid "Next number of this sequence"
+msgstr "Sledeći broj ovog niza"
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_next:0
+msgid "Next Number"
+msgstr "Sledeći broj"
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_increment:0
+msgid "Increment Number"
+msgstr "Inkrementalni broj"
+
+#. module: account_sequence
+#: model:ir.module.module,description:account_sequence.module_meta_information
+msgid ""
+"\n"
+" This module maintains internal sequence number for accounting entries.\n"
+" "
+msgstr ""
+"\n"
+" Ovaj modul održava unutrašnji niz brojeva za odgovarajuće naloge.\n"
+" "
+
+#. module: account_sequence
+#: model:ir.module.module,shortdesc:account_sequence.module_meta_information
+msgid "Entries Sequence Numbering"
+msgstr "Dodeljivanje brojeva nizovima ulaza"
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_increment:0
+msgid "The next number of the sequence will be incremented by this number"
+msgstr "Sledeći broj ovog niza biće povećan ovim brojem"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure Your Account Sequence Application"
+msgstr "Podesi svoju aplikaciju za niz brojeva"
+
+#. module: account_sequence
+#: field:account.sequence.installer,progress:0
+msgid "Configuration Progress"
+msgstr "Napredak podešavanja"
+
+#. module: account_sequence
+#: help:account.sequence.installer,suffix:0
+msgid "Suffix value of the record for the sequence"
+msgstr "Sufiksalna vrednost zapisa za niz"
+
+#. module: account_sequence
+#: field:account.sequence.installer,company_id:0
+msgid "Company"
+msgstr "Preduzeće"
+
+#. module: account_sequence
+#: help:account.journal,internal_sequence_id:0
+msgid ""
+"This sequence will be used to maintain the internal number for the journal "
+"entries related to this journal."
+msgstr ""
+"Ovaj niz će biti iskorišćen za održavanje unutrašnjeg broja za ulaze "
+"dnevnika vezane za dnevnik."
+
+#. module: account_sequence
+#: field:account.sequence.installer,padding:0
+msgid "Number padding"
+msgstr "Ispunjavanje brojeva"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move_line
+msgid "Journal Items"
+msgstr "Stavke dnevnika"
+
+#. module: account_sequence
+#: field:account.move,internal_sequence_number:0
+#: field:account.move.line,internal_sequence_number:0
+msgid "Internal Number"
+msgstr "Unutrašnji broj"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "Company must be same for its related account and period."
+msgstr "Preduzeće mora biti isto za sve vezane račune i periode."
+
+#. module: account_sequence
+#: help:account.sequence.installer,padding:0
+msgid ""
+"OpenERP will automatically adds some '0' on the left of the 'Next Number' to "
+"get the required padding size."
+msgstr ""
+"OpenERP će automatski dodati nekoliko '0' levo od 'Sledećeg broja' za "
+"dobijanje tražene veličine ispunjavanja."
+
+#. module: account_sequence
+#: field:account.sequence.installer,name:0
+msgid "Name"
+msgstr "Naziv"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create move line on closed account."
+msgstr "Ne možete da napravite poteznu liniju na zatvorenim računima."
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You cannot create more than one move per period on centralized journal"
+msgstr ""
+"Ne možete napraviti više od jednog pomeranja po periodu u centralizovanom "
+"dnevniku"
+
+#. module: account_sequence
+#: sql_constraint:account.move.line:0
+msgid "Wrong credit or debit value in accounting entry !"
+msgstr "Pogrešna vrednost kredita ili debita u ulazu računa !"
+
+#. module: account_sequence
+#: field:account.journal,internal_sequence_id:0
+msgid "Internal Sequence"
+msgstr "Unutrašnji niz"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_sequence_installer
+msgid "account.sequence.installer"
+msgstr "account.sequence.installer"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure"
+msgstr "Podešavanje"
+
+#. module: account_sequence
+#: help:account.sequence.installer,prefix:0
+msgid "Prefix value of the record for the sequence"
+msgstr "Prefiksalna vrednost zapisa za niz"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move
+msgid "Account Entry"
+msgstr "Ulaz naloga"
+
+#. module: account_sequence
+#: field:account.sequence.installer,suffix:0
+msgid "Suffix"
+msgstr "Sufiks"
+
+#. module: account_sequence
+#: field:account.sequence.installer,config_logo:0
+msgid "Image"
+msgstr "Slika"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "title"
+msgstr "naslov"
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The name of the journal must be unique per company !"
+msgstr "Naziv dnevnika mora biti jedinstven po preduzeću"
+
+#. module: account_sequence
+#: field:account.sequence.installer,prefix:0
+msgid "Prefix"
+msgstr "Prefiks"
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The code of the journal must be unique per company !"
+msgstr "Kod dnevnika mora biti jedinstven po preduzeću !"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid ""
+"You can not create move line on receivable/payable account without partner"
+msgstr ""
+"Ne možete napraviti poteznu liniju na primaćem/platežnom računu bez partnera"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_journal
+msgid "Journal"
+msgstr "Dnevnik"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "You can enhance the Account Sequence Application by installing ."
+msgstr ""
+"Ne možete poboljšati Aplikaciju za nizanje naloga instaliranjem iste."
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create move line on view account."
+msgstr "Ne možete napraviti poteznu liniju na računu po viđenju"
diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py
index 5e6e6ab0513..74e9097b57c 100644
--- a/addons/account_voucher/__openerp__.py
+++ b/addons/account_voucher/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name" : "Accounting Voucher Entries",
+ "name" : "eInvoicing & Payments",
"version" : "1.0",
"author" : 'OpenERP SA',
'complexity': "normal",
@@ -32,7 +32,7 @@ Account Voucher module includes all the basic requirements of Voucher Entries fo
* Voucher Receipt
* Cheque Register
""",
- "category" : "Hidden",
+ "category": 'Accounting & Finance',
"website" : "http://tinyerp.com",
"images" : ["images/customer_payment.jpeg","images/journal_voucher.jpeg","images/sales_receipt.jpeg","images/supplier_voucher.jpeg"],
"depends" : ["account"],
@@ -68,6 +68,7 @@ Account Voucher module includes all the basic requirements of Voucher Entries fo
],
'certificate': '0037580727101',
"active": False,
+ "application": True,
"installable": True,
}
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index fd6dac9f90d..69186cea00c 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -90,6 +90,21 @@ class account_voucher(osv.osv):
return tax_id
return False
+ def _get_payment_rate_currency(self, cr, uid, context=None):
+ """
+ Return the default value for field payment_rate_currency_id: the currency of the journal
+ if there is one, otherwise the currency of the user's company
+ """
+ if context is None: context = {}
+ journal_pool = self.pool.get('account.journal')
+ journal_id = context.get('journal_id', False)
+ if journal_id:
+ journal = journal_pool.browse(cr, uid, journal_id, context=context)
+ if journal.currency:
+ return journal.currency.id
+ #no journal given in the context, use company currency as default
+ return self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.currency_id.id
+
def _get_currency(self, cr, uid, context=None):
if context is None: context = {}
journal_pool = self.pool.get('account.journal')
@@ -126,28 +141,31 @@ class account_voucher(osv.osv):
def fields_view_get(self, cr, uid, view_id=None, view_type=False, context=None, toolbar=False, submenu=False):
mod_obj = self.pool.get('ir.model.data')
if context is None: context = {}
- if not view_id and context.get('invoice_type', False):
- if context.get('invoice_type', False) in ('out_invoice', 'out_refund'):
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
- else:
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
- result = result and result[1] or False
- view_id = result
- if not view_id and view_type == 'form' and context.get('line_type', False):
- if context.get('line_type', False) == 'customer':
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
- else:
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
- result = result and result[1] or False
- view_id = result
+
+ if view_type == 'form':
+ if not view_id and context.get('invoice_type'):
+ if context.get('invoice_type') in ('out_invoice', 'out_refund'):
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
+ else:
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
+ result = result and result[1] or False
+ view_id = result
+ if not view_id and context.get('line_type'):
+ if context.get('line_type') == 'customer':
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
+ else:
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
+ result = result and result[1] or False
+ view_id = result
res = super(account_voucher, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=submenu)
doc = etree.XML(res['arch'])
- nodes = doc.xpath("//field[@name='partner_id']")
+
if context.get('type', 'sale') in ('purchase', 'payment'):
+ nodes = doc.xpath("//field[@name='partner_id']")
for node in nodes:
node.set('domain', "[('supplier', '=', True)]")
- res['arch'] = etree.tostring(doc)
+ res['arch'] = etree.tostring(doc)
return res
def _compute_writeoff_amount(self, cr, uid, line_dr_ids, line_cr_ids, amount):
@@ -158,17 +176,25 @@ class account_voucher(osv.osv):
credit += l['amount']
return abs(amount - abs(credit - debit))
- def onchange_line_ids(self, cr, uid, ids, line_dr_ids, line_cr_ids, amount, context=None):
+ def onchange_line_ids(self, cr, uid, ids, line_dr_ids, line_cr_ids, amount, voucher_currency, context=None):
context = context or {}
if not line_dr_ids and not line_cr_ids:
return {'value':{}}
line_osv = self.pool.get("account.voucher.line")
line_dr_ids = resolve_o2m_operations(cr, uid, line_osv, line_dr_ids, ['amount'], context)
line_cr_ids = resolve_o2m_operations(cr, uid, line_osv, line_cr_ids, ['amount'], context)
- return {'value': {'writeoff_amount': self._compute_writeoff_amount(cr, uid, line_dr_ids, line_cr_ids, amount)}}
+
+ #loop into the lines to see if there is an amount allocated on a voucher line with a currency different than the voucher currency
+ is_multi_currency = False
+ for voucher_line in line_dr_ids+line_cr_ids:
+ if voucher_line.get('currency_id',False) != voucher_currency:
+ is_multi_currency = True
+ break
+ return {'value': {'writeoff_amount': self._compute_writeoff_amount(cr, uid, line_dr_ids, line_cr_ids, amount), 'is_multi_currency': is_multi_currency}}
def _get_writeoff_amount(self, cr, uid, ids, name, args, context=None):
if not ids: return {}
+ currency_obj = self.pool.get('res.currency')
res = {}
debit = credit = 0.0
for voucher in self.browse(cr, uid, ids, context=context):
@@ -176,15 +202,24 @@ class account_voucher(osv.osv):
debit += l.amount
for l in voucher.line_cr_ids:
credit += l.amount
- res[voucher.id] = abs(voucher.amount - abs(credit - debit))
+ currency = voucher.currency_id or voucher.company_id.currency_id
+ res[voucher.id] = currency_obj.round(cr, uid, currency, abs(voucher.amount - abs(credit - debit)))
return res
def _paid_amount_in_company_currency(self, cr, uid, ids, name, args, context=None):
if not ids: return {}
res = {}
- debit = credit = 0.0
+ voucher_rate = company_currency_rate = 1.0
for voucher in self.browse(cr, uid, ids, context=context):
- res[voucher.id] = voucher.amount / voucher.payment_rate
+ if voucher.currency_id:
+ ctx = context.copy()
+ ctx.update({'date': voucher.date})
+ voucher_rate = self.browse(cr, uid, voucher.id, context=ctx).currency_id.rate
+ if voucher.company_id.currency_id.id == voucher.payment_rate_currency_id.id:
+ company_currency_rate = voucher.payment_rate
+ else:
+ company_currency_rate = voucher.company_id.currency_id.rate
+ res[voucher.id] = voucher.amount / voucher_rate * company_currency_rate
return res
_name = 'account.voucher'
@@ -241,15 +276,16 @@ class account_voucher(osv.osv):
'payment_option':fields.selection([
('without_writeoff', 'Keep Open'),
('with_writeoff', 'Reconcile Payment Balance'),
- ], 'Payment Difference', required=True, readonly=True, states={'draft': [('readonly', False)]}),
- 'exchange_acc_id': fields.many2one('account.account', 'Exchange Diff. Account', readonly=True, states={'draft': [('readonly', False)]}),
+ ], 'Payment Difference', required=True, readonly=True, states={'draft': [('readonly', False)]}, help="This field helps you to choose what you want to do with the eventual difference between the paid amount and the sum of allocated amounts. You can either choose to keep open this difference on the partner's account, or reconcile it with the payment(s)"),
'writeoff_acc_id': fields.many2one('account.account', 'Counterpart Account', readonly=True, states={'draft': [('readonly', False)]}),
'comment': fields.char('Counterpart Comment', size=64, required=True, readonly=True, states={'draft': [('readonly', False)]}),
'analytic_id': fields.many2one('account.analytic.account','Write-Off Analytic Account', readonly=True, states={'draft': [('readonly', False)]}),
- 'writeoff_amount': fields.function(_get_writeoff_amount, string='Reconcile Amount', type='float', readonly=True),
- 'payment_rate': fields.float('Payment Rate', digits=(12,6), required=True, readonly=True, states={'draft': [('readonly', False)]},
- help='The rate between the journal currency and the company currency for this particular payment.'),
+ 'writeoff_amount': fields.function(_get_writeoff_amount, string='Difference Amount', type='float', readonly=True, help="Computed as the difference between the amount stated in the voucher and the sum of allocation on the voucher lines."),
+ 'payment_rate_currency_id': fields.many2one('res.currency', 'Payment Rate Currency', required=True, readonly=True, states={'draft':[('readonly',False)]}),
+ 'payment_rate': fields.float('Exchange Rate', digits=(12,6), required=True, readonly=True, states={'draft': [('readonly', False)]},
+ help='The specific rate that will be used, in this voucher, between the selected currency (in \'Payment Rate Currency\' field) and the voucher currency.'),
'paid_amount_in_company_currency': fields.function(_paid_amount_in_company_currency, string='Paid Amount in Company Currency', type='float', readonly=True),
+ 'is_multi_currency': fields.boolean('Multi Currency Voucher', help='Fields with internal purpose only that depicts if the voucher is a multi currency one or not'),
}
_defaults = {
'period_id': _get_period,
@@ -269,6 +305,7 @@ class account_voucher(osv.osv):
'payment_option': 'without_writeoff',
'comment': _('Write-Off'),
'payment_rate': 1.0,
+ 'payment_rate_currency_id': _get_payment_rate_currency,
}
def compute_tax(self, cr, uid, ids, context=None):
@@ -331,8 +368,6 @@ class account_voucher(osv.osv):
line_ids = resolve_o2m_operations(cr, uid, line_pool, line_ids, ["amount"], context)
- total = 0.0
- total_tax = 0.0
for line in line_ids:
line_amount = 0.0
line_amount = line.get('amount',0.0)
@@ -374,7 +409,7 @@ class account_voucher(osv.osv):
})
return {'value':default}
- def onchange_journal_voucher(self, cr, uid, ids, line_ids=False, tax_id=False, price=0.0, partner_id=False, journal_id=False, ttype=False, context=None):
+ def onchange_journal_voucher(self, cr, uid, ids, line_ids=False, tax_id=False, price=0.0, partner_id=False, journal_id=False, ttype=False, company_id=False, context=None):
"""price
Returns a dict that contains new values and context
@@ -413,25 +448,78 @@ class account_voucher(osv.osv):
default['value']['account_id'] = account_id
default['value']['type'] = ttype or tr_type
- vals = self.onchange_journal(cr, uid, ids, journal_id, line_ids, tax_id, partner_id, context)
+ vals = self.onchange_journal(cr, uid, ids, journal_id, line_ids, tax_id, partner_id, company_id, context)
default['value'].update(vals.get('value'))
return default
- def onchange_rate(self, cr, uid, ids, rate, amount, context=None):
- res = {'value': {'paid_amount_in_company_currency': 0.0}}
- if rate and amount:
- res['value']['paid_amount_in_company_currency'] = amount / rate
+ def onchange_rate(self, cr, uid, ids, rate, amount, currency_id, payment_rate_currency_id, company_id, context=None):
+ res = {'value': {'paid_amount_in_company_currency': amount}}
+ company_currency = self.pool.get('res.company').browse(cr, uid, company_id, context=context).currency_id
+ if rate and amount and currency_id:# and currency_id == payment_rate_currency_id:
+ voucher_rate = self.pool.get('res.currency').browse(cr, uid, currency_id, context).rate
+ if company_currency.id == payment_rate_currency_id:
+ company_rate = rate
+ else:
+ company_rate = self.pool.get('res.company').browse(cr, uid, company_id, context=context).currency_id.rate
+ res['value']['paid_amount_in_company_currency'] = amount / voucher_rate * company_rate
return res
- def onchange_amount(self, cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, context=None):
- res = self.onchange_partner_id(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=context)
- vals = self.onchange_rate(cr, uid, ids, rate, amount, context=context)
+ def onchange_amount(self, cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, payment_rate_currency_id, company_id, context=None):
+ if context is None:
+ context = {}
+ res = self.recompute_voucher_lines(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=context)
+ ctx = context.copy()
+ ctx.update({'date': date})
+ vals = self.onchange_rate(cr, uid, ids, rate, amount, currency_id, payment_rate_currency_id, company_id, context=ctx)
for key in vals.keys():
res[key].update(vals[key])
return res
- def onchange_partner_id(self, cr, uid, ids, partner_id, journal_id, price, currency_id, ttype, date, context=None):
+ def recompute_payment_rate(self, cr, uid, ids, vals, currency_id, date, ttype, journal_id, amount, context=None):
+ if context is None:
+ context = {}
+ #on change of the journal, we need to set also the default value for payment_rate and payment_rate_currency_id
+ currency_obj = self.pool.get('res.currency')
+ journal = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context)
+ company_id = journal.company_id.id
+ payment_rate = 1.0
+ payment_rate_currency_id = currency_id
+ ctx = context.copy()
+ ctx.update({'date': date})
+ o2m_to_loop = False
+ if ttype == 'receipt':
+ o2m_to_loop = 'line_cr_ids'
+ elif ttype == 'payment':
+ o2m_to_loop = 'line_dr_ids'
+ if o2m_to_loop and 'value' in vals and o2m_to_loop in vals['value']:
+ for voucher_line in vals['value'][o2m_to_loop]:
+ if voucher_line['currency_id'] != currency_id:
+ # we take as default value for the payment_rate_currency_id, the currency of the first invoice that
+ # is not in the voucher currency
+ payment_rate_currency_id = voucher_line['currency_id']
+ tmp = currency_obj.browse(cr, uid, payment_rate_currency_id, context=ctx).rate
+ voucher_currency_id = currency_id or journal.company_id.currency_id.id
+ payment_rate = tmp / currency_obj.browse(cr, uid, voucher_currency_id, context=ctx).rate
+ break
+ res = self.onchange_rate(cr, uid, ids, payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context=ctx)
+ for key in res.keys():
+ vals[key].update(res[key])
+ vals['value'].update({'payment_rate': payment_rate})
+ if payment_rate_currency_id:
+ vals['value'].update({'payment_rate_currency_id': payment_rate_currency_id})
+ return vals
+
+ def onchange_partner_id(self, cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=None):
+ if not journal_id:
+ return {}
+ res = self.recompute_voucher_lines(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=context)
+ vals = self.recompute_payment_rate(cr, uid, ids, res, currency_id, date, ttype, journal_id, amount, context=context)
+ for key in vals.keys():
+ res[key].update(vals[key])
+ return res
+
+ def recompute_voucher_lines(self, cr, uid, ids, partner_id, journal_id, price, currency_id, ttype, date, context=None):
"""
Returns a dict that contains new values and context
@@ -502,9 +590,9 @@ class account_voucher(osv.osv):
#order the lines by most old first
ids.reverse()
- moves = move_line_pool.browse(cr, uid, ids, context=context)
+ account_move_lines = move_line_pool.browse(cr, uid, ids, context=context)
- for line in moves:
+ for line in account_move_lines:
if line.credit and line.reconcile_partial_id and ttype == 'receipt':
continue
if line.debit and line.reconcile_partial_id and ttype == 'payment':
@@ -533,7 +621,7 @@ class account_voucher(osv.osv):
total_debit += line.debit and line.amount_currency or 0.0
#voucher line creation
- for line in moves:
+ for line in account_move_lines:
if line.credit and line.reconcile_partial_id and ttype == 'receipt':
continue
if line.debit and line.reconcile_partial_id and ttype == 'payment':
@@ -544,6 +632,7 @@ class account_voucher(osv.osv):
else:
amount_original = currency_pool.compute(cr, uid, company_currency, currency_id, line.credit or line.debit or 0.0)
amount_unreconciled = currency_pool.compute(cr, uid, company_currency, currency_id, abs(line.amount_residual))
+ line_currency_id = line.currency_id and line.currency_id.id or company_currency
rs = {
'name':line.move_id.name,
'type': line.credit and 'dr' or 'cr',
@@ -554,11 +643,11 @@ class account_voucher(osv.osv):
'date_original':line.date,
'date_due':line.date_maturity,
'amount_unreconciled': amount_unreconciled,
+ 'currency_id': line_currency_id,
}
#split voucher amount by most old first, but only for lines in the same currency
if not move_line_found:
- line_currency_id = line.currency_id and line.currency_id.id or company_currency
if currency_id == line_currency_id:
if line.credit:
amount = min(amount_unreconciled, abs(total_debit))
@@ -569,7 +658,9 @@ class account_voucher(osv.osv):
rs['amount'] = amount
total_credit -= amount
- default['value']['line_ids'].append(rs)
+ if rs['amount_unreconciled'] == rs['amount']:
+ rs['reconcile'] = True
+
if rs['type'] == 'cr':
default['value']['line_cr_ids'].append(rs)
else:
@@ -582,30 +673,51 @@ class account_voucher(osv.osv):
default['value']['writeoff_amount'] = self._compute_writeoff_amount(cr, uid, default['value']['line_dr_ids'], default['value']['line_cr_ids'], price)
return default
- def onchange_date(self, cr, uid, ids, date, currency_id, amount, context=None):
+ def onchange_payment_rate_currency(self, cr, uid, ids, currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context=None):
+ if context is None:
+ context = {}
+ res = {'value': {}}
+ #set the default payment rate of the voucher and compute the paid amount in company currency
+ if currency_id and currency_id == payment_rate_currency_id:
+ ctx = context.copy()
+ ctx.update({'date': date})
+ vals = self.onchange_rate(cr, uid, ids, payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context=ctx)
+ for key in vals.keys():
+ res[key].update(vals[key])
+ return res
+
+ def onchange_date(self, cr, uid, ids, date, currency_id, payment_rate_currency_id, amount, company_id, context=None):
"""
@param date: latest value from user input for field date
@param args: other arguments
@param context: context arguments, like lang, time zone
@return: Returns a dict which contains new values, and context
"""
+ if context is None:
+ context ={}
res = {'value': {}}
#set the period of the voucher
period_pool = self.pool.get('account.period')
- pids = period_pool.search(cr, uid, [('date_start', '<=', date), ('date_stop', '>=', date)])
+ currency_obj = self.pool.get('res.currency')
+ ctx = context.copy()
+ ctx.update({'company_id': company_id})
+ pids = period_pool.find(cr, uid, date, context=ctx)
if pids:
res['value'].update({'period_id':pids[0]})
- #set the default payment rate of the voucher and compute the paid amount in company currency
- payment_rate = 1.0
- if currency_id:
- payment_rate = self.pool.get('res.currency').browse(cr, uid, currency_id, context={'date': date}).rate
- res['value'].update({'payment_rate': payment_rate})
- vals = self.onchange_rate(cr, uid, ids, payment_rate, amount, context=context)
- for key in vals.keys():
- res[key].update(vals[key])
+ if payment_rate_currency_id:
+ ctx.update({'date': date})
+ payment_rate = 1.0
+ if payment_rate_currency_id != currency_id:
+ tmp = currency_obj.browse(cr, uid, payment_rate_currency_id, context=ctx).rate
+ voucher_currency_id = currency_id or self.pool.get('res.company').browse(cr, uid, company_id, context=ctx).currency_id.id
+ payment_rate = tmp / currency_obj.browse(cr, uid, voucher_currency_id, context=ctx).rate
+ vals = self.onchange_payment_rate_currency(cr, uid, ids, currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context=context)
+ vals['value'].update({'payment_rate': payment_rate})
+ for key in vals.keys():
+ res[key].update(vals[key])
return res
- def onchange_journal(self, cr, uid, ids, journal_id, line_ids, tax_id, partner_id, date, amount, ttype, context=None):
+ def onchange_journal(self, cr, uid, ids, journal_id, line_ids, tax_id, partner_id, date, amount, ttype, company_id, context=None):
if not journal_id:
return False
journal_pool = self.pool.get('account.journal')
@@ -620,11 +732,6 @@ class account_voucher(osv.osv):
currency_id = False
if journal.currency:
currency_id = journal.currency.id
- payment_rate = self.pool.get('res.currency').browse(cr, uid, currency_id, context={'date': date}).rate
- vals['value'].update({'payment_rate': payment_rate})
- res = self.onchange_rate(cr, uid, ids, payment_rate, amount, context=context)
- for key in res.keys():
- vals[key].update(res[key])
vals['value'].update({'currency_id': currency_id})
res = self.onchange_partner_id(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context)
for key in res.keys():
@@ -721,8 +828,6 @@ class account_voucher(osv.osv):
:return: mapping between fieldname and value of account move line to create
:rtype: dict
'''
- move_line_obj = self.pool.get('account.move.line')
- currency_obj = self.pool.get('res.currency')
voucher_brw = self.pool.get('account.voucher').browse(cr,uid,voucher_id,context)
debit = credit = 0.0
# TODO: is there any other alternative then the voucher type ??
@@ -730,9 +835,9 @@ class account_voucher(osv.osv):
# TODO: Make this logic available.
# -for sale, purchase we have but for the payment and receipt we do not have as based on the bank/cash journal we can not know its payment or receipt
if voucher_brw.type in ('purchase', 'payment'):
- credit = voucher_brw.amount / voucher_brw.payment_rate
+ credit = voucher_brw.paid_amount_in_company_currency
elif voucher_brw.type in ('sale', 'receipt'):
- debit = voucher_brw.amount / voucher_brw.payment_rate
+ debit = voucher_brw.paid_amount_in_company_currency
if debit < 0: credit = -debit; debit = 0.0
if credit < 0: debit = -credit; credit = 0.0
sign = debit - credit < 0 and -1 or 1
@@ -761,7 +866,6 @@ class account_voucher(osv.osv):
:return: mapping between fieldname and value of account move to create
:rtype: dict
'''
- move_obj = self.pool.get('account.move')
seq_obj = self.pool.get('ir.sequence')
voucher_brw = self.pool.get('account.voucher').browse(cr,uid,voucher_id,context)
if voucher_brw.number:
@@ -788,9 +892,10 @@ class account_voucher(osv.osv):
def _get_exchange_lines(self, cr, uid, line, move_id, amount_residual, company_currency, current_currency, context=None):
'''
- Prepare the two lines due to currency rate difference.
+ Prepare the two lines in company currency due to currency rate difference.
- :param line: browse record of the voucher.line for which we want to create currency rate difference accounting entries
+ :param line: browse record of the voucher.line for which we want to create currency rate difference accounting
+ entries
:param move_id: Account move wher the move lines will be.
:param amount_residual: Amount to be posted.
:param company_currency: id of currency of the company to which the voucher belong
@@ -798,9 +903,17 @@ class account_voucher(osv.osv):
:return: the account move line and its counterpart to create, depicted as mapping between fieldname and value
:rtype: tuple of dict
'''
- if not line.voucher_id.exchange_acc_id.id:
- raise osv.except_osv(_('Error!'), _('You must provide an account for the exchange difference.'))
-
+ if amount_residual > 0:
+ account_id = line.voucher_id.company_id.expense_currency_exchange_account_id
+ if not account_id:
+ raise osv.except_osv(_('Warning'),_("Unable to create accounting entry for currency rate difference. You have to configure the field 'Income Currency Rate' on the company! "))
+ else:
+ account_id = line.voucher_id.company_id.income_currency_exchange_account_id
+ if not account_id:
+ raise osv.except_osv(_('Warning'),_("Unable to create accounting entry for currency rate difference. You have to configure the field 'Expense Currency Rate' on the company! "))
+ # Even if the amount_currency is never filled, we need to pass the foreign currency because otherwise
+ # the receivable/payable account may have a secondary currency, which render this field mandatory
+ account_currency_id = company_currency <> current_currency and current_currency or False
move_line = {
'journal_id': line.voucher_id.journal_id.id,
'period_id': line.voucher_id.period_id.id,
@@ -808,7 +921,7 @@ class account_voucher(osv.osv):
'account_id': line.account_id.id,
'move_id': move_id,
'partner_id': line.voucher_id.partner_id.id,
- 'currency_id': company_currency <> current_currency and current_currency or False,
+ 'currency_id': account_currency_id,
'amount_currency': 0.0,
'quantity': 1,
'credit': amount_residual > 0 and amount_residual or 0.0,
@@ -819,11 +932,11 @@ class account_voucher(osv.osv):
'journal_id': line.voucher_id.journal_id.id,
'period_id': line.voucher_id.period_id.id,
'name': _('change')+': '+(line.name or '/'),
- 'account_id': line.voucher_id.exchange_acc_id.id,
+ 'account_id': account_id.id,
'move_id': move_id,
'amount_currency': 0.0,
'partner_id': line.voucher_id.partner_id.id,
- 'currency_id': company_currency <> current_currency and current_currency or False,
+ 'currency_id': account_currency_id,
'quantity': 1,
'debit': amount_residual > 0 and amount_residual or 0.0,
'credit': amount_residual < 0 and -amount_residual or 0.0,
@@ -831,6 +944,31 @@ class account_voucher(osv.osv):
}
return (move_line, move_line_counterpart)
+ def _convert_amount(self, cr, uid, amount, voucher_id, context=None):
+ '''
+ This function convert the amount given in company currency. It takes either the rate in the voucher (if the
+ payment_rate_currency_id is relevant) either the rate encoded in the system.
+
+ :param amount: float. The amount to convert
+ :param voucher: id of the voucher on which we want the conversion
+ :param context: to context to use for the conversion. It may contain the key 'date' set to the voucher date
+ field in order to select the good rate to use.
+ :return: the amount in the currency of the voucher's company
+ :rtype: float
+ '''
+ currency_obj = self.pool.get('res.currency')
+ voucher = self.browse(cr, uid, voucher_id, context=context)
+ res = amount
+ if voucher.payment_rate_currency_id.id == voucher.company_id.currency_id.id:
+ # the rate specified on the voucher is for the company currency
+ rate_between_voucher_and_base = voucher.currency_id.rate or 1.0
+ rate_between_base_and_company = voucher.payment_rate or 1.0
+ res = currency_obj.round(cr, uid, voucher.company_id.currency_id, (amount / rate_between_voucher_and_base * rate_between_base_and_company))
+ else:
+ # the rate specified on the voucher is not relevant, we use all the rates in the system
+ res = currency_obj.compute(cr, uid, voucher.currency_id.id, voucher.company_id.currency_id.id, amount, context=context)
+ return res
+
def voucher_move_line_create(self, cr, uid, voucher_id, line_total, move_id, company_currency, current_currency, context=None):
'''
Create one account move line, on the given account move, per voucher line where amount is not 0.0.
@@ -843,25 +981,31 @@ class account_voucher(osv.osv):
:param company_currency: id of currency of the company to which the voucher belong
:param current_currency: id of currency of the voucher
:return: Tuple build as (remaining amount not allocated on voucher lines, list of account_move_line created in this method)
- :rtype: tuple(int, list of int)
+ :rtype: tuple(float, list of int)
'''
+ if context is None:
+ context = {}
move_line_obj = self.pool.get('account.move.line')
currency_obj = self.pool.get('res.currency')
+ tax_obj = self.pool.get('account.tax')
tot_line = line_total
rec_lst_ids = []
- voucher_brw = self.pool.get('account.voucher').browse(cr,uid,voucher_id,context)
+ voucher_brw = self.pool.get('account.voucher').browse(cr, uid, voucher_id, context)
+ ctx = context.copy()
+ ctx.update({'date': voucher_brw.date})
for line in voucher_brw.line_ids:
#create one move line per voucher line where amount is not 0.0
if not line.amount:
continue
- #we check if the voucher line is fully paid or not and create a move line to balance the payment and initial invoice if needed
+ # convert the amount set on the voucher line into the currency of the voucher's company
+ amount = self._convert_amount(cr, uid, line.untax_amount or line.amount, voucher_brw.id, context=ctx)
+ # if the amount encoded in voucher is equal to the amount unreconciled, we need to compute the
+ # currency rate difference
if line.amount == line.amount_unreconciled:
- amount = (line.untax_amount or line.amount) / voucher_brw.payment_rate
- amount_residual = line.move_line_id.amount_residual - amount #residual amount in company currency
+ currency_rate_difference = line.move_line_id.amount_residual - amount
else:
- amount = (line.untax_amount or line.amount) / voucher_brw.payment_rate
- amount_residual = 0.0
+ currency_rate_difference = 0.0
move_line = {
'journal_id': voucher_brw.journal_id.id,
'period_id': voucher_brw.period_id.id,
@@ -869,7 +1013,7 @@ class account_voucher(osv.osv):
'account_id': line.account_id.id,
'move_id': move_id,
'partner_id': voucher_brw.partner_id.id,
- 'currency_id': company_currency <> current_currency and current_currency or False,
+ 'currency_id': line.move_line_id and (company_currency <> line.move_line_id.currency_id.id and line.move_line_id.currency_id.id) or False,
'analytic_account_id': line.account_analytic_id and line.account_analytic_id.id or False,
'quantity': 1,
'credit': 0.0,
@@ -900,18 +1044,58 @@ class account_voucher(osv.osv):
if not (tax_data.base_code_id and tax_data.tax_code_id):
raise osv.except_osv(_('No Account Base Code and Account Tax Code!'),_("You have to configure account base code and account tax code on the '%s' tax!") % (tax_data.name))
- sign = (move_line['debit'] - move_line['credit']) < 0 and -1 or 1
- move_line['amount_currency'] = company_currency <> current_currency and sign * line.amount or False
+ # compute the amount in foreign currency
+ foreign_currency_diff = 0.0
+ amount_currency = False
+ if line.move_line_id:
+ voucher_currency = voucher_brw.currency_id and voucher_brw.currency_id.id or voucher_brw.journal_id.company_id.currency_id.id
+ # We want to set it on the account move line as soon as the original line had a foreign currency
+ if line.move_line_id.currency_id and line.move_line_id.currency_id.id != company_currency:
+ # we compute the amount in that foreign currency.
+ if line.move_line_id.currency_id.id == current_currency:
+ # if the voucher and the voucher line share the same currency, there is no computation to do
+ sign = (move_line['debit'] - move_line['credit']) < 0 and -1 or 1
+ amount_currency = sign * (line.amount)
+ elif line.move_line_id.currency_id.id == voucher_brw.payment_rate_currency_id.id:
+ # if the rate is specified on the voucher, we must use it
+ voucher_rate = currency_obj.browse(cr, uid, voucher_currency, context=ctx).rate
+ amount_currency = (move_line['debit'] - move_line['credit']) * voucher_brw.payment_rate * voucher_rate
+ else:
+ # otherwise we use the rates of the system (giving the voucher date in the context)
+ amount_currency = currency_obj.compute(cr, uid, company_currency, line.move_line_id.currency_id.id, move_line['debit']-move_line['credit'], context=ctx)
+ if line.amount == line.amount_unreconciled and line.move_line_id.currency_id.id == voucher_currency:
+ foreign_currency_diff = line.move_line_id.amount_residual_currency + amount_currency
+
+ move_line['amount_currency'] = amount_currency
voucher_line = move_line_obj.create(cr, uid, move_line)
rec_ids = [voucher_line, line.move_line_id.id]
- if amount_residual:
- # Change difference entry
- exch_lines = self._get_exchange_lines(cr, uid, line, move_id, amount_residual, company_currency, current_currency, context=context)
+ if not currency_obj.is_zero(cr, uid, voucher_brw.company_id.currency_id, currency_rate_difference):
+ # Change difference entry in company currency
+ exch_lines = self._get_exchange_lines(cr, uid, line, move_id, currency_rate_difference, company_currency, current_currency, context=context)
new_id = move_line_obj.create(cr, uid, exch_lines[0],context)
move_line_obj.create(cr, uid, exch_lines[1], context)
rec_ids.append(new_id)
+ if line.move_line_id and line.move_line_id.currency_id and not currency_obj.is_zero(cr, uid, line.move_line_id.currency_id, foreign_currency_diff):
+ # Change difference entry in voucher currency
+ move_line_foreign_currency = {
+ 'journal_id': line.voucher_id.journal_id.id,
+ 'period_id': line.voucher_id.period_id.id,
+ 'name': _('change')+': '+(line.name or '/'),
+ 'account_id': line.account_id.id,
+ 'move_id': move_id,
+ 'partner_id': line.voucher_id.partner_id.id,
+ 'currency_id': line.move_line_id.currency_id.id,
+ 'amount_currency': -1 * foreign_currency_diff,
+ 'quantity': 1,
+ 'credit': 0.0,
+ 'debit': 0.0,
+ 'date': line.voucher_id.date,
+ }
+ new_id = move_line_obj.create(cr, uid, move_line_foreign_currency, context=context)
+ rec_ids.append(new_id)
+
if line.move_line_id.id:
rec_lst_ids.append(rec_ids)
@@ -930,7 +1114,6 @@ class account_voucher(osv.osv):
:return: mapping between fieldname and value of account move line to create
:rtype: dict
'''
- move_line_obj = self.pool.get('account.move.line')
currency_obj = self.pool.get('res.currency')
move_line = {}
@@ -958,6 +1141,7 @@ class account_voucher(osv.osv):
'debit': diff < 0 and -diff or 0.0,
'amount_currency': company_currency <> current_currency and voucher_brw.writeoff_amount or False,
'currency_id': company_currency <> current_currency and current_currency or False,
+ 'analytic_account_id': voucher_brw.analytic_id and voucher_brw.analytic_id.id or False,
}
return move_line
@@ -991,36 +1175,37 @@ class account_voucher(osv.osv):
context = {}
move_pool = self.pool.get('account.move')
move_line_pool = self.pool.get('account.move.line')
- currency_pool = self.pool.get('res.currency')
- tax_obj = self.pool.get('account.tax')
- seq_obj = self.pool.get('ir.sequence')
for voucher in self.browse(cr, uid, ids, context=context):
if voucher.move_id:
continue
company_currency = self._get_company_currency(cr, uid, voucher.id, context)
current_currency = self._get_current_currency(cr, uid, voucher.id, context)
+ # we select the context to use accordingly if it's a multicurrency case or not
context = self._sel_context(cr, uid, voucher.id, context)
- #Create the account move record.
+ # But for the operations made by _convert_amount, we always need to give the date in the context
+ ctx = context.copy()
+ ctx.update({'date': voucher.date})
+ # Create the account move record.
move_id = move_pool.create(cr, uid, self.account_move_get(cr, uid, voucher.id, context=context), context=context)
# Get the name of the account_move just created
name = move_pool.browse(cr, uid, move_id, context=context).name
- #Create the first line of the voucher
+ # Create the first line of the voucher
move_line_id = move_line_pool.create(cr, uid, self.first_move_line_get(cr,uid,voucher.id, move_id, company_currency, current_currency, context), context)
move_line_brw = move_line_pool.browse(cr, uid, move_line_id, context=context)
line_total = move_line_brw.debit - move_line_brw.credit
rec_list_ids = []
if voucher.type == 'sale':
- line_total = line_total - (voucher.tax_amount / voucher.payment_rate)
+ line_total = line_total - self._convert_amount(cr, uid, voucher.tax_amount, voucher.id, context=ctx)
elif voucher.type == 'purchase':
- line_total = line_total + (voucher.tax_amount / voucher.payment_rate)
- #create one move line per voucher line where amount is not 0.0
+ line_total = line_total + self._convert_amount(cr, uid, voucher.tax_amount, voucher.id, context=ctx)
+ # Create one move line per voucher line where amount is not 0.0
line_total, rec_list_ids = self.voucher_move_line_create(cr, uid, voucher.id, line_total, move_id, company_currency, current_currency, context)
- #create the writeoff line if needed
+ # Create the writeoff line if needed
ml_writeoff = self.writeoff_move_line_get(cr, uid, voucher.id, line_total, move_id, name, company_currency, current_currency, context)
if ml_writeoff:
- ml_writeoff_id = move_line_pool.create(cr, uid, ml_writeoff, context)
- #We post the voucher.
+ move_line_pool.create(cr, uid, ml_writeoff, context)
+ # We post the voucher.
self.write(cr, uid, [voucher.id], {
'move_id': move_id,
'state': 'posted',
@@ -1028,10 +1213,10 @@ class account_voucher(osv.osv):
})
if voucher.journal_id.entry_posted:
move_pool.post(cr, uid, [move_id], context={})
- #We automatically reconcile the account move lines.
+ # We automatically reconcile the account move lines.
for rec_ids in rec_list_ids:
if len(rec_ids) >= 2:
- move_line_pool.reconcile_partial(cr, uid, rec_ids, writeoff_acc_id=voucher.exchange_acc_id.id, writeoff_period_id=voucher.period_id.id, writeoff_journal_id=voucher.journal_id.id)
+ move_line_pool.reconcile_partial(cr, uid, rec_ids, writeoff_acc_id=voucher.writeoff_acc_id.id, writeoff_period_id=voucher.period_id.id, writeoff_journal_id=voucher.journal_id.id)
return True
def copy(self, cr, uid, id, default={}, context=None):
@@ -1083,13 +1268,28 @@ class account_voucher_line(osv.osv):
rs_data[line.id] = res
return rs_data
+ def _currency_id(self, cr, uid, ids, name, args, context=None):
+ '''
+ This function returns the currency id of a voucher line. It's either the currency of the
+ associated move line (if any) or the currency of the voucher or the company currency.
+ '''
+ res = {}
+ for line in self.browse(cr, uid, ids, context=context):
+ move_line = line.move_line_id
+ if move_line:
+ res[line.id] = move_line.currency_id and move_line.currency_id.id or move_line.company_id.currency_id.id
+ else:
+ res[line.id] = line.voucher_id.currency_id and line.voucher_id.currency_id.id or line.voucher_id.company_id.currency_id.id
+ return res
+
_columns = {
'voucher_id':fields.many2one('account.voucher', 'Voucher', required=1, ondelete='cascade'),
'name':fields.char('Description', size=256),
'account_id':fields.many2one('account.account','Account', required=True),
'partner_id':fields.related('voucher_id', 'partner_id', type='many2one', relation='res.partner', string='Partner'),
'untax_amount':fields.float('Untax Amount'),
- 'amount':fields.float('Amount', digits_compute=dp.get_precision('Account')),
+ 'amount':fields.float('Allocation', digits_compute=dp.get_precision('Account')),
+ 'reconcile': fields.boolean('Full Reconcile'),
'type':fields.selection([('dr','Debit'),('cr','Credit')], 'Dr/Cr'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'move_line_id': fields.many2one('account.move.line', 'Journal Item'),
@@ -1098,11 +1298,24 @@ class account_voucher_line(osv.osv):
'amount_original': fields.function(_compute_balance, multi='dc', type='float', string='Original Amount', store=True),
'amount_unreconciled': fields.function(_compute_balance, multi='dc', type='float', string='Open Balance', store=True),
'company_id': fields.related('voucher_id','company_id', relation='res.company', type='many2one', string='Company', store=True, readonly=True),
+ 'currency_id': fields.function(_currency_id, string='Currency', type='many2one', relation='res.currency', readonly=True),
}
_defaults = {
- 'name': ''
+ 'name': '',
}
+ def onchange_reconcile(self, cr, uid, ids, reconcile, amount, amount_unreconciled, context=None):
+ vals = { 'amount': 0.0}
+ if reconcile:
+ vals = { 'amount': amount_unreconciled}
+ return {'value': vals}
+
+ def onchange_amount(self, cr, uid, ids, amount, amount_unreconciled, context=None):
+ vals = {}
+ if amount:
+ vals['reconcile'] = (amount == amount_unreconciled)
+ return {'value': vals}
+
def onchange_move_line_id(self, cr, user, ids, move_line_id, context=None):
"""
Returns a dict that contains new values and context
@@ -1121,10 +1334,10 @@ class account_voucher_line(osv.osv):
ttype = 'dr'
else:
ttype = 'cr'
- account_id = move_line.account_id.id
res.update({
- 'account_id':account_id,
- 'type': ttype
+ 'account_id': move_line.account_id.id,
+ 'type': ttype,
+ 'currency_id': move_line.currency_id and move_line.currency_id.id or move_line.company_id.currency_id.id,
})
return {
'value':res,
@@ -1261,6 +1474,7 @@ def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context):
result = operation[2]
elif operation[0] == 1:
result = target_osv.read(cr, uid, operation[1], fields, context=context)
+ if not result: result = {}
result.update(operation[2])
elif operation[0] == 4:
result = target_osv.read(cr, uid, operation[1], fields, context=context)
@@ -1268,4 +1482,19 @@ def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context):
results.append(result)
return results
+class res_company(osv.osv):
+ _inherit = "res.company"
+ _columns = {
+ 'income_currency_exchange_account_id': fields.many2one(
+ 'account.account',
+ string="Income Currency Rate",
+ domain="[('type', '=', 'other')]",),
+ 'expense_currency_exchange_account_id': fields.many2one(
+ 'account.account',
+ string="Expense Currency Rate",
+ domain="[('type', '=', 'other')]",),
+ }
+
+res_company()
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_voucher/account_voucher_report.xml b/addons/account_voucher/account_voucher_report.xml
index 8af204efbbe..97de2b89f3a 100644
--- a/addons/account_voucher/account_voucher_report.xml
+++ b/addons/account_voucher/account_voucher_report.xml
@@ -11,13 +11,14 @@
header = "False"
menu="True"/> -->
-
+
diff --git a/addons/account_voucher/account_voucher_view.xml b/addons/account_voucher/account_voucher_view.xml
index 4e218e04714..cbe35b5fc5f 100644
--- a/addons/account_voucher/account_voucher_view.xml
+++ b/addons/account_voucher/account_voucher_view.xml
@@ -259,5 +259,19 @@
+
+
+ res.company.form.inherit
+
+ res.company
+ form
+
+
+
+
+
+
+
+
diff --git a/addons/account_voucher/i18n/fa.po b/addons/account_voucher/i18n/fa.po
new file mode 100644
index 00000000000..2cf94347ae1
--- /dev/null
+++ b/addons/account_voucher/i18n/fa.po
@@ -0,0 +1,1020 @@
+# Persian 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-18 16:57+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Persian \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-19 04:49+0000\n"
+"X-Generator: Launchpad (build 14525)\n"
+
+#. module: account_voucher
+#: view:account.voucher.unreconcile:0
+msgid "Unreconciliation transactions"
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:247
+#, python-format
+msgid "Write-Off"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Payment Ref"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Open Customer Journal Entries"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+msgid "Voucher Date"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Particulars"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: view:sale.receipt.report:0
+msgid "Group By..."
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:596
+#, python-format
+msgid "Cannot delete Voucher(s) which are already opened or paid !"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Supplier"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.report.xml,name:account_voucher.report_account_voucher_print
+msgid "Voucher Print"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.module.module,description:account_voucher.module_meta_information
+msgid ""
+"Account Voucher module includes all the basic requirements of\n"
+" Voucher Entries for Bank, Cash, Sales, Purchase, Expanse, Contra, "
+"etc...\n"
+" * Voucher Entry\n"
+" * Voucher Receipt\n"
+" * Cheque Register\n"
+" "
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: model:ir.actions.act_window,name:account_voucher.act_pay_bills
+msgid "Bill Payment"
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:746
+#, python-format
+msgid ""
+"You have to configure account base code and account tax code on the '%s' tax!"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.statement.from.invoice.lines:0
+#: code:addons/account_voucher/wizard/account_statement_from_invoice.py:182
+#: model:ir.actions.act_window,name:account_voucher.action_view_account_statement_from_invoice_lines
+#, python-format
+msgid "Import Entries"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.model,name:account_voucher.model_account_voucher_unreconcile
+msgid "Account voucher unreconcile"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "March"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,help:account_voucher.action_sale_receipt
+msgid ""
+"When you sell products to a customer, you can give him a sales receipt or an "
+"invoice. When the sales receipt is confirmed, it creates journal items "
+"automatically and you can record the customer payment related to this sales "
+"receipt."
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Pay Bill"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,company_id:0
+#: field:account.voucher.line,company_id:0
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Set to Draft"
+msgstr ""
+
+#. module: account_voucher
+#: help:account.voucher,reference:0
+msgid "Transaction reference number."
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_view_account_voucher_unreconcile
+msgid "Unreconcile entries"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Voucher Statistics"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Validate"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,day:0
+msgid "Day"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Search Vouchers"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,type:0
+#: selection:sale.receipt.report,type:0
+msgid "Purchase"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,account_id:0
+#: field:account.voucher.line,account_id:0
+#: field:sale.receipt.report,account_id:0
+msgid "Account"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,line_dr_ids:0
+msgid "Debits"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.statement.from.invoice.lines:0
+msgid "Ok"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,help:account_voucher.action_sale_receipt_report_all
+msgid ""
+"From this report, you can have an overview of the amount invoiced to your "
+"customer as well as payment delays. The tool search can also be used to "
+"personalise your Invoices reports and so, match this analysis to your needs."
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,date_due:0
+#: field:account.voucher.line,date_due:0
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,date_due:0
+msgid "Due Date"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,narration:0
+msgid "Notes"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,help:account_voucher.action_vendor_receipt
+msgid ""
+"Sales payment allows you to register the payments you receive from your "
+"customers. In order to record a payment, you must enter the customer, the "
+"payment method (=the journal) and the payment amount. OpenERP will propose "
+"to you automatically the reconciliation of this payment with the open "
+"invoices or sales receipts."
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,type:0
+#: selection:sale.receipt.report,type:0
+msgid "Sale"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,move_line_id:0
+msgid "Journal Item"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,reference:0
+msgid "Ref #"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,amount:0
+#: report:voucher.print:0
+msgid "Amount"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Payment Options"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Other Information"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,state:0
+#: selection:sale.receipt.report,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.statement.from.invoice,date:0
+msgid "Date payment"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.model,name:account_voucher.model_account_bank_statement_line
+msgid "Bank Statement Line"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_purchase_receipt
+#: model:ir.ui.menu,name:account_voucher.menu_action_purchase_receipt
+msgid "Supplier Vouchers"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: view:account.voucher.unreconcile:0
+msgid "Unreconcile"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,tax_id:0
+msgid "Tax"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Amount (in words) :"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,nbr:0
+msgid "# of Voucher Lines"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,account_analytic_id:0
+msgid "Analytic Account"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Payment Information"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.statement.from.invoice:0
+msgid "Go"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Paid Amount"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.bank.statement:0
+msgid "Import Invoices"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Account :"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,type:0
+#: selection:sale.receipt.report,type:0
+msgid "Receipt"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "On Account of :"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,writeoff_amount:0
+msgid "Write-Off Amount"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Sales Lines"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Date:"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher,period_id:0
+msgid "Period"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher,state:0
+#: view:sale.receipt.report:0
+msgid "State"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.module.module,shortdesc:account_voucher.module_meta_information
+msgid "Accounting Voucher Entries"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,type:0
+msgid "Type"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.unreconcile,remove:0
+msgid "Want to remove accounting entries too ?"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: model:ir.actions.act_window,name:account_voucher.act_journal_voucher_open
+msgid "Voucher Entries"
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:645
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Supplier Voucher"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_review_voucher_list
+msgid "Vouchers Entries"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,name:0
+msgid "Memo"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt
+#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt
+msgid "Sales Receipt"
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:596
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Bill Information"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "July"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher.unreconcile:0
+msgid "Unreconciliation"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,due_delay:0
+msgid "Avg. Due Delay"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.invoice:0
+#: code:addons/account_voucher/invoice.py:32
+#, python-format
+msgid "Pay Invoice"
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:746
+#, python-format
+msgid "No Account Base Code and Account Tax Code!"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,tax_amount:0
+msgid "Tax Amount"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Voucher Entry"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher,partner_id:0
+#: field:account.voucher.line,partner_id:0
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,partner_id:0
+msgid "Partner"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,payment_option:0
+msgid "Payment Difference"
+msgstr ""
+
+#. module: account_voucher
+#: constraint:account.bank.statement.line:0
+msgid ""
+"The amount of the voucher must be the same amount as the one on the "
+"statement line"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "To Review"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Expense Lines"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.statement.from.invoice,line_ids:0
+#: field:account.statement.from.invoice.lines,line_ids:0
+msgid "Invoices"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "December"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,line_ids:0
+#: view:account.voucher.line:0
+#: model:ir.model,name:account_voucher.model_account_voucher_line
+msgid "Voucher Lines"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,month:0
+msgid "Month"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,currency_id:0
+#: field:sale.receipt.report,currency_id:0
+msgid "Currency"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.statement.from.invoice.lines:0
+msgid "Payable and Receivables"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,pay_now:0
+#: selection:sale.receipt.report,pay_now:0
+msgid "Pay Later or Group Funds"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,user_id:0
+msgid "Salesman"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,delay_to_pay:0
+msgid "Avg. Delay To Pay"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: selection:account.voucher,state:0
+#: view:sale.receipt.report:0
+#: selection:sale.receipt.report,state:0
+#: report:voucher.print:0
+msgid "Draft"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,writeoff_acc_id:0
+msgid "Write-Off account"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Currency:"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,price_total_tax:0
+msgid "Total With Tax"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "PRO-FORMA"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "August"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,help:account_voucher.action_vendor_payment
+msgid ""
+"The supplier payment form allows you to track the payment you do to your "
+"suppliers. When you select a supplier, the payment method and an amount for "
+"the payment, OpenERP will propose to reconcile your payment with the open "
+"supplier invoices or bills."
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Total Amount"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "June"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,type:0
+msgid "Cr/Dr"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,audit:0
+msgid "Audit Complete ?"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Payment Terms"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Are you sure to unreconcile this record ?"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,date:0
+#: field:account.voucher.line,date_original:0
+#: field:sale.receipt.report,date:0
+msgid "Date"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "November"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: view:sale.receipt.report:0
+msgid "Extended Filters..."
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Number:"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.bank.statement.line,amount_reconciled:0
+msgid "Amount reconciled"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,analytic_id:0
+msgid "Write-Off Analytic Account"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,pay_now:0
+#: selection:sale.receipt.report,pay_now:0
+msgid "Pay Directly"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "October"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,pre_line:0
+msgid "Previous Payments ?"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "January"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_voucher_list
+#: model:ir.ui.menu,name:account_voucher.menu_encode_entries_by_voucher
+msgid "Journal Vouchers"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Compute Tax"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher.line,type:0
+msgid "Credit"
+msgstr ""
+
+#. module: account_voucher
+#: code:addons/account_voucher/account_voucher.py:645
+#, python-format
+msgid "Please define a sequence on the journal !"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Open Supplier Journal Entries"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Through :"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_vendor_payment
+#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_payment
+msgid "Supplier Payment"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Post"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Invoices and outstanding transactions"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,price_total:0
+msgid "Total Without Tax"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Bill Date"
+msgstr ""
+
+#. module: account_voucher
+#: help:account.voucher,state:0
+msgid ""
+" * The 'Draft' state is used when a user is encoding a new and unconfirmed "
+"Voucher. \n"
+"* The 'Pro-forma' when voucher is in Pro-forma state,voucher does not have "
+"an voucher number. \n"
+"* The 'Posted' state is used when user create voucher,a voucher number is "
+"generated and voucher entries are created in account "
+"\n"
+"* The 'Cancelled' state is used when user cancel voucher."
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: model:ir.model,name:account_voucher.model_account_voucher
+msgid "Accounting Voucher"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,number:0
+msgid "Number"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.model,name:account_voucher.model_account_bank_statement
+msgid "Bank Statement"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "September"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Sales Information"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt_report_all
+#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt_report_all
+#: view:sale.receipt.report:0
+msgid "Sales Receipt Analysis"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,voucher_id:0
+#: model:res.request.link,name:account_voucher.req_link_voucher
+msgid "Voucher"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.model,name:account_voucher.model_account_invoice
+msgid "Invoice"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Voucher Items"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.statement.from.invoice:0
+#: view:account.statement.from.invoice.lines:0
+#: view:account.voucher:0
+#: view:account.voucher.unreconcile:0
+msgid "Cancel"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,state:0
+#: view:sale.receipt.report:0
+#: selection:sale.receipt.report,state:0
+msgid "Pro-forma"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher,move_ids:0
+msgid "Journal Items"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: model:ir.actions.act_window,name:account_voucher.act_pay_voucher
+#: model:ir.actions.act_window,name:account_voucher.action_vendor_receipt
+#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_receipt
+msgid "Customer Payment"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.statement.from.invoice:0
+#: model:ir.actions.act_window,name:account_voucher.action_view_account_statement_from_invoice
+msgid "Import Invoices in Statement"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Pay"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher.line,type:0
+msgid "Debit"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Are you sure to confirm this record ?"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,payment_option:0
+msgid "Reconcile with Write-Off"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Payment Method"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,name:0
+msgid "Description"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "Canceled"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "May"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.statement.from.invoice,journal_ids:0
+#: view:account.voucher:0
+#: field:account.voucher,journal_id:0
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,journal_id:0
+msgid "Journal"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Internal Notes"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher,line_cr_ids:0
+msgid "Credits"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,amount_original:0
+msgid "Original Amount"
+msgstr ""
+
+#. module: account_voucher
+#: report:voucher.print:0
+msgid "State:"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.bank.statement.line,voucher_id:0
+#: view:account.invoice:0
+#: view:account.voucher:0
+#: field:account.voucher,pay_now:0
+#: selection:account.voucher,type:0
+#: field:sale.receipt.report,pay_now:0
+#: selection:sale.receipt.report,type:0
+msgid "Payment"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: selection:account.voucher,state:0
+#: view:sale.receipt.report:0
+#: selection:sale.receipt.report,state:0
+#: report:voucher.print:0
+msgid "Posted"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Customer"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "February"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+msgid "Supplier Invoices and Outstanding transactions"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,comment:0
+msgid "Write-Off Comment"
+msgstr ""
+
+#. module: account_voucher
+#: selection:sale.receipt.report,month:0
+msgid "April"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,type:0
+msgid "Default Type"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.model,name:account_voucher.model_account_statement_from_invoice
+#: model:ir.model,name:account_voucher.model_account_statement_from_invoice_lines
+msgid "Entries by Statement from Invoices"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher,move_id:0
+msgid "Account Entry"
+msgstr ""
+
+#. module: account_voucher
+#: field:sale.receipt.report,state:0
+msgid "Voucher State"
+msgstr ""
+
+#. module: account_voucher
+#: help:account.voucher,date:0
+msgid "Effective date for accounting entries"
+msgstr ""
+
+#. module: account_voucher
+#: selection:account.voucher,payment_option:0
+msgid "Keep Open"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher.unreconcile:0
+msgid ""
+"If you unreconciliate transactions, you must also verify all the actions "
+"that are linked to those transactions because they will not be disable"
+msgstr ""
+
+#. module: account_voucher
+#: field:account.voucher.line,untax_amount:0
+msgid "Untax Amount"
+msgstr ""
+
+#. module: account_voucher
+#: model:ir.model,name:account_voucher.model_sale_receipt_report
+msgid "Sales Receipt Statistics"
+msgstr ""
+
+#. module: account_voucher
+#: view:sale.receipt.report:0
+#: field:sale.receipt.report,year:0
+msgid "Year"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher.line,amount_unreconciled:0
+msgid "Open Balance"
+msgstr ""
+
+#. module: account_voucher
+#: view:account.voucher:0
+#: field:account.voucher,amount:0
+msgid "Total"
+msgstr ""
diff --git a/addons/account_voucher/i18n/hr.po b/addons/account_voucher/i18n/hr.po
index 3b1a5db220d..5904967f99a 100644
--- a/addons/account_voucher/i18n/hr.po
+++ b/addons/account_voucher/i18n/hr.po
@@ -7,19 +7,19 @@ 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: 2011-03-03 13:20+0000\n"
+"PO-Revision-Date: 2011-12-08 17:08+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:33+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_voucher
#: view:account.voucher.unreconcile:0
msgid "Unreconciliation transactions"
-msgstr ""
+msgstr "Transakcije poništavanja zatvaranja"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:247
@@ -30,12 +30,12 @@ msgstr "Otpis"
#. module: account_voucher
#: view:account.voucher:0
msgid "Payment Ref"
-msgstr ""
+msgstr "Oznaka plaćanja"
#. module: account_voucher
#: view:account.voucher:0
msgid "Open Customer Journal Entries"
-msgstr ""
+msgstr "Otvori temeljnice kupaca"
#. module: account_voucher
#: view:sale.receipt.report:0
@@ -85,7 +85,7 @@ msgstr ""
#: view:account.voucher:0
#: model:ir.actions.act_window,name:account_voucher.act_pay_bills
msgid "Bill Payment"
-msgstr ""
+msgstr "Plaćanje računa"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:746
@@ -105,7 +105,7 @@ msgstr "Uvoz stavki"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_voucher_unreconcile
msgid "Account voucher unreconcile"
-msgstr "Poništi zatvaranja plaćanja"
+msgstr "Poništi zatvaranja"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
@@ -120,11 +120,14 @@ msgid ""
"automatically and you can record the customer payment related to this sales "
"receipt."
msgstr ""
+"Kada prodate proizvod kupci dužni ste mu izdati račun. Potvrdom računa "
+"kreiraju se knjigovodstvene stavke dugovanja kupca i tada možete "
+"evidentirati plaćanje kupca vezano na ovu prodaju."
#. module: account_voucher
#: view:account.voucher:0
msgid "Pay Bill"
-msgstr ""
+msgstr "Plati račun"
#. module: account_voucher
#: field:account.voucher,company_id:0
@@ -132,66 +135,66 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,company_id:0
msgid "Company"
-msgstr "Tvrtka"
+msgstr "Organizacija"
#. module: account_voucher
#: view:account.voucher:0
msgid "Set to Draft"
-msgstr ""
+msgstr "Postavi na nacrt"
#. module: account_voucher
#: help:account.voucher,reference:0
msgid "Transaction reference number."
-msgstr ""
+msgstr "Transaction reference number."
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_view_account_voucher_unreconcile
msgid "Unreconcile entries"
-msgstr ""
+msgstr "Otvori stavke"
#. module: account_voucher
#: view:account.voucher:0
msgid "Voucher Statistics"
-msgstr ""
+msgstr "Statistike vaučera"
#. module: account_voucher
#: view:account.voucher:0
msgid "Validate"
-msgstr ""
+msgstr "Potvrdi"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,day:0
msgid "Day"
-msgstr ""
+msgstr "Dan"
#. module: account_voucher
#: view:account.voucher:0
msgid "Search Vouchers"
-msgstr ""
+msgstr "Traži vaučere"
#. module: account_voucher
#: selection:account.voucher,type:0
#: selection:sale.receipt.report,type:0
msgid "Purchase"
-msgstr ""
+msgstr "Nabava"
#. module: account_voucher
#: field:account.voucher,account_id:0
#: field:account.voucher.line,account_id:0
#: field:sale.receipt.report,account_id:0
msgid "Account"
-msgstr ""
+msgstr "Konto"
#. module: account_voucher
#: field:account.voucher,line_dr_ids:0
msgid "Debits"
-msgstr ""
+msgstr "Dugovanja"
#. module: account_voucher
#: view:account.statement.from.invoice.lines:0
msgid "Ok"
-msgstr ""
+msgstr "U redu"
#. module: account_voucher
#: model:ir.actions.act_window,help:account_voucher.action_sale_receipt_report_all
@@ -200,6 +203,8 @@ msgid ""
"customer as well as payment delays. The tool search can also be used to "
"personalise your Invoices reports and so, match this analysis to your needs."
msgstr ""
+"Pregled fakturiranih iznosa i kašnjenja plaćanja. Za prilagodbu izvještaja "
+"vašim potrebama koristite funkcionalnosti traženja i grupiranja."
#. module: account_voucher
#: field:account.voucher,date_due:0
@@ -207,12 +212,12 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,date_due:0
msgid "Due Date"
-msgstr ""
+msgstr "Datum dospijeća"
#. module: account_voucher
#: field:account.voucher,narration:0
msgid "Notes"
-msgstr ""
+msgstr "Bilješke"
#. module: account_voucher
#: model:ir.actions.act_window,help:account_voucher.action_vendor_receipt
@@ -223,22 +228,25 @@ msgid ""
"to you automatically the reconciliation of this payment with the open "
"invoices or sales receipts."
msgstr ""
+"Uplate kupaca evidentiraju primljena plaćanja kupaca. Upišite kupca, način "
+"plaćanja=dnevnik i iznos plaćanja. OpenERP će predložiti zatvaranje plaćanja "
+"s otvorenim računom(ima) ili drugim otvorenim stavkama tog partnera."
#. module: account_voucher
#: selection:account.voucher,type:0
#: selection:sale.receipt.report,type:0
msgid "Sale"
-msgstr ""
+msgstr "Prodaja"
#. module: account_voucher
#: field:account.voucher.line,move_line_id:0
msgid "Journal Item"
-msgstr ""
+msgstr "Stavka dnevnika"
#. module: account_voucher
#: field:account.voucher,reference:0
msgid "Ref #"
-msgstr ""
+msgstr "Ref #"
#. module: account_voucher
#: field:account.voucher.line,amount:0
@@ -249,28 +257,28 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Payment Options"
-msgstr ""
+msgstr "Opcije plaćanja"
#. module: account_voucher
#: view:account.voucher:0
msgid "Other Information"
-msgstr ""
+msgstr "Ostali podaci"
#. module: account_voucher
#: selection:account.voucher,state:0
#: selection:sale.receipt.report,state:0
msgid "Cancelled"
-msgstr ""
+msgstr "Otkazani"
#. module: account_voucher
#: field:account.statement.from.invoice,date:0
msgid "Date payment"
-msgstr ""
+msgstr "Datum plaćanja"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_bank_statement_line
msgid "Bank Statement Line"
-msgstr ""
+msgstr "Redak bankovnog izvoda"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_purchase_receipt
@@ -282,12 +290,12 @@ msgstr ""
#: view:account.voucher:0
#: view:account.voucher.unreconcile:0
msgid "Unreconcile"
-msgstr ""
+msgstr "Otvori stavke"
#. module: account_voucher
#: field:account.voucher,tax_id:0
msgid "Tax"
-msgstr ""
+msgstr "Porez"
#. module: account_voucher
#: report:voucher.print:0
@@ -298,32 +306,32 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,nbr:0
msgid "# of Voucher Lines"
-msgstr ""
+msgstr "# linija vaučera"
#. module: account_voucher
#: field:account.voucher.line,account_analytic_id:0
msgid "Analytic Account"
-msgstr ""
+msgstr "Konto analitike"
#. module: account_voucher
#: view:account.voucher:0
msgid "Payment Information"
-msgstr ""
+msgstr "Informacije uplate"
#. module: account_voucher
#: view:account.statement.from.invoice:0
msgid "Go"
-msgstr ""
+msgstr "Go"
#. module: account_voucher
#: view:account.voucher:0
msgid "Paid Amount"
-msgstr ""
+msgstr "Plaćeni iznos"
#. module: account_voucher
#: view:account.bank.statement:0
msgid "Import Invoices"
-msgstr ""
+msgstr "Uvoz računa"
#. module: account_voucher
#: report:voucher.print:0
@@ -334,7 +342,7 @@ msgstr ""
#: selection:account.voucher,type:0
#: selection:sale.receipt.report,type:0
msgid "Receipt"
-msgstr ""
+msgstr "Receipt"
#. module: account_voucher
#: report:voucher.print:0
@@ -349,7 +357,7 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Sales Lines"
-msgstr ""
+msgstr "Stavke prodaje"
#. module: account_voucher
#: report:voucher.print:0
@@ -360,14 +368,14 @@ msgstr ""
#: view:account.voucher:0
#: field:account.voucher,period_id:0
msgid "Period"
-msgstr ""
+msgstr "Period"
#. module: account_voucher
#: view:account.voucher:0
#: field:account.voucher,state:0
#: view:sale.receipt.report:0
msgid "State"
-msgstr ""
+msgstr "Stanje"
#. module: account_voucher
#: model:ir.module.module,shortdesc:account_voucher.module_meta_information
@@ -378,18 +386,18 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,type:0
msgid "Type"
-msgstr ""
+msgstr "Vrsta"
#. module: account_voucher
#: field:account.voucher.unreconcile,remove:0
msgid "Want to remove accounting entries too ?"
-msgstr ""
+msgstr "Želite li ukloniti i knjigovodstvene unose?"
#. module: account_voucher
#: view:account.voucher:0
#: model:ir.actions.act_window,name:account_voucher.act_journal_voucher_open
msgid "Voucher Entries"
-msgstr ""
+msgstr "Stavke vaučera"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:645
@@ -400,24 +408,24 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Supplier Voucher"
-msgstr ""
+msgstr "Vaučer dobavljača"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_review_voucher_list
msgid "Vouchers Entries"
-msgstr ""
+msgstr "Stavke vaučera"
#. module: account_voucher
#: field:account.voucher,name:0
msgid "Memo"
-msgstr ""
+msgstr "Memo"
#. module: account_voucher
#: view:account.voucher:0
#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt
msgid "Sales Receipt"
-msgstr ""
+msgstr "Izdani vaučeri"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:596
@@ -428,30 +436,30 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Bill Information"
-msgstr ""
+msgstr "Bill Information"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "July"
-msgstr ""
+msgstr "Srpanj"
#. module: account_voucher
#: view:account.voucher.unreconcile:0
msgid "Unreconciliation"
-msgstr ""
+msgstr "Poništavanje zatvaranja IOS-a"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,due_delay:0
msgid "Avg. Due Delay"
-msgstr ""
+msgstr "Pros. dugovanje"
#. module: account_voucher
#: view:account.invoice:0
#: code:addons/account_voucher/invoice.py:32
#, python-format
msgid "Pay Invoice"
-msgstr ""
+msgstr "Plaćanje"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:746
@@ -462,12 +470,12 @@ msgstr ""
#. module: account_voucher
#: field:account.voucher,tax_amount:0
msgid "Tax Amount"
-msgstr ""
+msgstr "Iznos poreza"
#. module: account_voucher
#: view:account.voucher:0
msgid "Voucher Entry"
-msgstr ""
+msgstr "Stavka vaučera"
#. module: account_voucher
#: view:account.voucher:0
@@ -476,82 +484,82 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: account_voucher
#: field:account.voucher,payment_option:0
msgid "Payment Difference"
-msgstr ""
+msgstr "Razlika plaćanja"
#. module: account_voucher
#: constraint:account.bank.statement.line:0
msgid ""
"The amount of the voucher must be the same amount as the one on the "
"statement line"
-msgstr ""
+msgstr "Iznos vaučera mora biti jednak iznosu stavke izvoda banke/blagajne."
#. module: account_voucher
#: view:account.voucher:0
msgid "To Review"
-msgstr ""
+msgstr "Za provjeru"
#. module: account_voucher
#: view:account.voucher:0
msgid "Expense Lines"
-msgstr ""
+msgstr "Redak troška"
#. module: account_voucher
#: field:account.statement.from.invoice,line_ids:0
#: field:account.statement.from.invoice.lines,line_ids:0
msgid "Invoices"
-msgstr ""
+msgstr "Računi"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "December"
-msgstr ""
+msgstr "Prosinac"
#. module: account_voucher
#: field:account.voucher,line_ids:0
#: view:account.voucher.line:0
#: model:ir.model,name:account_voucher.model_account_voucher_line
msgid "Voucher Lines"
-msgstr ""
+msgstr "Linije vaučera"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,month:0
msgid "Month"
-msgstr ""
+msgstr "Mjesec"
#. module: account_voucher
#: field:account.voucher,currency_id:0
#: field:sale.receipt.report,currency_id:0
msgid "Currency"
-msgstr ""
+msgstr "Valuta"
#. module: account_voucher
#: view:account.statement.from.invoice.lines:0
msgid "Payable and Receivables"
-msgstr ""
+msgstr "Payable and Receivables"
#. module: account_voucher
#: selection:account.voucher,pay_now:0
#: selection:sale.receipt.report,pay_now:0
msgid "Pay Later or Group Funds"
-msgstr ""
+msgstr "Pay Later or Group Funds"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,user_id:0
msgid "Salesman"
-msgstr ""
+msgstr "Prodavač"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,delay_to_pay:0
msgid "Avg. Delay To Pay"
-msgstr ""
+msgstr "Pros. kašnjenje"
#. module: account_voucher
#: view:account.voucher:0
@@ -560,7 +568,7 @@ msgstr ""
#: selection:sale.receipt.report,state:0
#: report:voucher.print:0
msgid "Draft"
-msgstr ""
+msgstr "Nacrt"
#. module: account_voucher
#: field:account.voucher,writeoff_acc_id:0
@@ -576,7 +584,7 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,price_total_tax:0
msgid "Total With Tax"
-msgstr ""
+msgstr "Ukupno s porezom"
#. module: account_voucher
#: report:voucher.print:0
@@ -586,7 +594,7 @@ msgstr ""
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "August"
-msgstr ""
+msgstr "Kolovoz"
#. module: account_voucher
#: model:ir.actions.act_window,help:account_voucher.action_vendor_payment
@@ -596,16 +604,19 @@ msgid ""
"the payment, OpenERP will propose to reconcile your payment with the open "
"supplier invoices or bills."
msgstr ""
+"Nalozi za plaćanje omogućuju upravljanje plaćanjima obveza. Nakon odabira "
+"dobavljača, načina plaćanja i iznosa OpenERP će ponuditi zatvaranje "
+"otvorenih računa dobavljača, odnosno svih otvorenih stavki (IOS-a) partnera."
#. module: account_voucher
#: view:account.voucher:0
msgid "Total Amount"
-msgstr ""
+msgstr "Ukupni iznos"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "June"
-msgstr ""
+msgstr "Lipanj"
#. module: account_voucher
#: field:account.voucher.line,type:0
@@ -620,30 +631,30 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Payment Terms"
-msgstr ""
+msgstr "Uvjeti plaćanja"
#. module: account_voucher
#: view:account.voucher:0
msgid "Are you sure to unreconcile this record ?"
-msgstr ""
+msgstr "Sigurno želite otvoriti ovaj zapis?"
#. module: account_voucher
#: field:account.voucher,date:0
#: field:account.voucher.line,date_original:0
#: field:sale.receipt.report,date:0
msgid "Date"
-msgstr ""
+msgstr "Datum"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "November"
-msgstr ""
+msgstr "Studeni"
#. module: account_voucher
#: view:account.voucher:0
#: view:sale.receipt.report:0
msgid "Extended Filters..."
-msgstr ""
+msgstr "Prošireni filtri..."
#. module: account_voucher
#: report:voucher.print:0
@@ -653,49 +664,49 @@ msgstr ""
#. module: account_voucher
#: field:account.bank.statement.line,amount_reconciled:0
msgid "Amount reconciled"
-msgstr ""
+msgstr "Zatvoreni iznos"
#. module: account_voucher
#: field:account.voucher,analytic_id:0
msgid "Write-Off Analytic Account"
-msgstr ""
+msgstr "Write-Off Analytic Account"
#. module: account_voucher
#: selection:account.voucher,pay_now:0
#: selection:sale.receipt.report,pay_now:0
msgid "Pay Directly"
-msgstr ""
+msgstr "Pay Directly"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "October"
-msgstr ""
+msgstr "Listopad"
#. module: account_voucher
#: field:account.voucher,pre_line:0
msgid "Previous Payments ?"
-msgstr ""
+msgstr "Predhodna plaćanja ?"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "January"
-msgstr ""
+msgstr "Siječanj"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_voucher_list
#: model:ir.ui.menu,name:account_voucher.menu_encode_entries_by_voucher
msgid "Journal Vouchers"
-msgstr ""
+msgstr "Dnevnik vaučera"
#. module: account_voucher
#: view:account.voucher:0
msgid "Compute Tax"
-msgstr ""
+msgstr "Izračunaj porez"
#. module: account_voucher
#: selection:account.voucher.line,type:0
msgid "Credit"
-msgstr ""
+msgstr "Potražuje"
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:645
@@ -706,7 +717,7 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Open Supplier Journal Entries"
-msgstr ""
+msgstr "Otvori temeljnice dobavljača"
#. module: account_voucher
#: report:voucher.print:0
@@ -717,28 +728,28 @@ msgstr ""
#: model:ir.actions.act_window,name:account_voucher.action_vendor_payment
#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_payment
msgid "Supplier Payment"
-msgstr ""
+msgstr "Plaćanja dobavljačima"
#. module: account_voucher
#: view:account.voucher:0
msgid "Post"
-msgstr ""
+msgstr "Post"
#. module: account_voucher
#: view:account.voucher:0
msgid "Invoices and outstanding transactions"
-msgstr ""
+msgstr "Računi i otvorene stavke"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,price_total:0
msgid "Total Without Tax"
-msgstr ""
+msgstr "Uk. prije poreza"
#. module: account_voucher
#: view:account.voucher:0
msgid "Bill Date"
-msgstr ""
+msgstr "Datum računa"
#. module: account_voucher
#: help:account.voucher,state:0
@@ -752,55 +763,61 @@ msgid ""
"\n"
"* The 'Cancelled' state is used when user cancel voucher."
msgstr ""
+" * Vaučer je u stanju \"Nacrt\" za vrijeme upisa podataka i stavki vaučera "
+"dok se ne potvrdi ili otkaže. \n"
+" * U 'Pro-forma' stanju vaučeru još uvijek nije dodijeljen broj. \n"
+" * Stanje 'Knjižen' označava vaučer koji je dobio broj i za koji je izrađena "
+"temeljnica \n"
+" * U stanju 'Otkazan' su nevažeći vaučeri"
#. module: account_voucher
#: view:account.voucher:0
#: model:ir.model,name:account_voucher.model_account_voucher
msgid "Accounting Voucher"
-msgstr ""
+msgstr "Knjigovodstveni vaučer"
#. module: account_voucher
#: field:account.voucher,number:0
msgid "Number"
-msgstr ""
+msgstr "Broj"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_bank_statement
msgid "Bank Statement"
-msgstr ""
+msgstr "Izvod banke"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "September"
-msgstr ""
+msgstr "Rujan"
#. module: account_voucher
#: view:account.voucher:0
msgid "Sales Information"
-msgstr ""
+msgstr "Informacije o prodaji"
#. module: account_voucher
#: model:ir.actions.act_window,name:account_voucher.action_sale_receipt_report_all
#: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt_report_all
#: view:sale.receipt.report:0
msgid "Sales Receipt Analysis"
-msgstr ""
+msgstr "Analiza izdanih vaučera"
#. module: account_voucher
#: field:account.voucher.line,voucher_id:0
#: model:res.request.link,name:account_voucher.req_link_voucher
msgid "Voucher"
-msgstr ""
+msgstr "Vaučer"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_invoice
msgid "Invoice"
-msgstr ""
+msgstr "Račun"
#. module: account_voucher
#: view:account.voucher:0
msgid "Voucher Items"
-msgstr ""
+msgstr "Sadržaj vaučera"
#. module: account_voucher
#: view:account.statement.from.invoice:0
@@ -808,20 +825,20 @@ msgstr ""
#: view:account.voucher:0
#: view:account.voucher.unreconcile:0
msgid "Cancel"
-msgstr ""
+msgstr "Odustani"
#. module: account_voucher
#: selection:account.voucher,state:0
#: view:sale.receipt.report:0
#: selection:sale.receipt.report,state:0
msgid "Pro-forma"
-msgstr ""
+msgstr "Pro-forma"
#. module: account_voucher
#: view:account.voucher:0
#: field:account.voucher,move_ids:0
msgid "Journal Items"
-msgstr ""
+msgstr "Stavke glavne knjige"
#. module: account_voucher
#: view:account.voucher:0
@@ -829,28 +846,28 @@ msgstr ""
#: model:ir.actions.act_window,name:account_voucher.action_vendor_receipt
#: model:ir.ui.menu,name:account_voucher.menu_action_vendor_receipt
msgid "Customer Payment"
-msgstr ""
+msgstr "Plaćanja kupaca"
#. module: account_voucher
#: view:account.statement.from.invoice:0
#: model:ir.actions.act_window,name:account_voucher.action_view_account_statement_from_invoice
msgid "Import Invoices in Statement"
-msgstr ""
+msgstr "Uvezi račune na nalog"
#. module: account_voucher
#: view:account.voucher:0
msgid "Pay"
-msgstr ""
+msgstr "Pay"
#. module: account_voucher
#: selection:account.voucher.line,type:0
msgid "Debit"
-msgstr ""
+msgstr "Duguje"
#. module: account_voucher
#: view:account.voucher:0
msgid "Are you sure to confirm this record ?"
-msgstr ""
+msgstr "Are you sure to confirm this record ?"
#. module: account_voucher
#: selection:account.voucher,payment_option:0
@@ -860,12 +877,12 @@ msgstr ""
#. module: account_voucher
#: view:account.voucher:0
msgid "Payment Method"
-msgstr ""
+msgstr "Način plaćanja"
#. module: account_voucher
#: field:account.voucher.line,name:0
msgid "Description"
-msgstr ""
+msgstr "Opis"
#. module: account_voucher
#: report:voucher.print:0
@@ -875,7 +892,7 @@ msgstr ""
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "May"
-msgstr ""
+msgstr "Svibanj"
#. module: account_voucher
#: field:account.statement.from.invoice,journal_ids:0
@@ -884,23 +901,23 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,journal_id:0
msgid "Journal"
-msgstr ""
+msgstr "Dnevnik"
#. module: account_voucher
#: view:account.voucher:0
msgid "Internal Notes"
-msgstr ""
+msgstr "Interne bilješke"
#. module: account_voucher
#: view:account.voucher:0
#: field:account.voucher,line_cr_ids:0
msgid "Credits"
-msgstr ""
+msgstr "Potraživanja"
#. module: account_voucher
#: field:account.voucher.line,amount_original:0
msgid "Original Amount"
-msgstr ""
+msgstr "Originalni iznos"
#. module: account_voucher
#: report:voucher.print:0
@@ -916,7 +933,7 @@ msgstr ""
#: field:sale.receipt.report,pay_now:0
#: selection:sale.receipt.report,type:0
msgid "Payment"
-msgstr ""
+msgstr "Plaćanje"
#. module: account_voucher
#: view:account.voucher:0
@@ -925,22 +942,22 @@ msgstr ""
#: selection:sale.receipt.report,state:0
#: report:voucher.print:0
msgid "Posted"
-msgstr ""
+msgstr "Proknjiženo"
#. module: account_voucher
#: view:account.voucher:0
msgid "Customer"
-msgstr ""
+msgstr "Kupac"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "February"
-msgstr ""
+msgstr "Veljača"
#. module: account_voucher
#: view:account.voucher:0
msgid "Supplier Invoices and Outstanding transactions"
-msgstr ""
+msgstr "Ulazni računi i otvorene stavke"
#. module: account_voucher
#: field:account.voucher,comment:0
@@ -950,38 +967,38 @@ msgstr ""
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "April"
-msgstr ""
+msgstr "Travanj"
#. module: account_voucher
#: field:account.voucher,type:0
msgid "Default Type"
-msgstr ""
+msgstr "Uobičajeni tip"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_statement_from_invoice
#: model:ir.model,name:account_voucher.model_account_statement_from_invoice_lines
msgid "Entries by Statement from Invoices"
-msgstr ""
+msgstr "Stavke po izvodu iz računa"
#. module: account_voucher
#: field:account.voucher,move_id:0
msgid "Account Entry"
-msgstr ""
+msgstr "Temeljnica"
#. module: account_voucher
#: field:sale.receipt.report,state:0
msgid "Voucher State"
-msgstr ""
+msgstr "Stanje vaučera"
#. module: account_voucher
#: help:account.voucher,date:0
msgid "Effective date for accounting entries"
-msgstr ""
+msgstr "Effective date for accounting entries"
#. module: account_voucher
#: selection:account.voucher,payment_option:0
msgid "Keep Open"
-msgstr ""
+msgstr "Ostavi otvoreno"
#. module: account_voucher
#: view:account.voucher.unreconcile:0
@@ -989,31 +1006,36 @@ msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disable"
msgstr ""
+"Ako želite poništiti zatvaranja transakcija, morate također provjeriti sve "
+"radnje koje su povezane sa tim transakcijama jer neće biti onemogućene"
#. module: account_voucher
#: field:account.voucher.line,untax_amount:0
msgid "Untax Amount"
-msgstr ""
+msgstr "Osnovica"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_sale_receipt_report
msgid "Sales Receipt Statistics"
-msgstr ""
+msgstr "Statistika izdanih vaučera"
#. module: account_voucher
#: view:sale.receipt.report:0
#: field:sale.receipt.report,year:0
msgid "Year"
-msgstr ""
+msgstr "Godina"
#. module: account_voucher
#: view:account.voucher:0
#: field:account.voucher.line,amount_unreconciled:0
msgid "Open Balance"
-msgstr ""
+msgstr "Otvoreni saldo"
#. module: account_voucher
#: view:account.voucher:0
#: field:account.voucher,amount:0
msgid "Total"
-msgstr ""
+msgstr "Ukupno"
+
+#~ msgid "Dr/Cr"
+#~ msgstr "Dr/Cr"
diff --git a/addons/account_voucher/security/ir.model.access.csv b/addons/account_voucher/security/ir.model.access.csv
index a8d9c7f580b..eac7fc13818 100644
--- a/addons/account_voucher/security/ir.model.access.csv
+++ b/addons/account_voucher/security/ir.model.access.csv
@@ -1,9 +1,7 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_account_voucher_user","account.voucher","model_account_voucher","account.group_account_user",1,1,1,1
-"access_account_voucher_line_accountant","account.voucher.line.accountant","model_account_voucher_line","account.group_account_user",1,1,1,1
-"access_account_voucher_manager","account.voucher","model_account_voucher","account.group_account_manager",1,0,0,0
-"access_account_voucher_line_manager","account.voucher.line","model_account_voucher_line","account.group_account_manager",1,0,0,0
-"access_account_voucher_invoice","account.voucher invoice","model_account_voucher","account.group_account_invoice",1,1,1,1
-"access_account_voucher_line_invoice","account.voucher.line invoice","model_account_voucher_line","account.group_account_invoice",1,1,1,1
-"access_sale_receipt_report_manager","account.sale.receipt.report","model_sale_receipt_report","account.group_account_manager",1,1,1,1
-"access_sale_receipt_report_user","account.sale.receipt.report","model_sale_receipt_report","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_voucher_manager,account.voucher,model_account_voucher,account.group_account_manager,1,0,0,0
+access_account_voucher_line_manager,account.voucher.line,model_account_voucher_line,account.group_account_manager,1,0,0,0
+access_account_voucher_invoice,account.voucher invoice,model_account_voucher,account.group_account_invoice,1,1,1,1
+access_account_voucher_line_invoice,account.voucher.line invoice,model_account_voucher_line,account.group_account_invoice,1,1,1,1
+access_sale_receipt_report_manager,account.sale.receipt.report,model_sale_receipt_report,account.group_account_manager,1,1,1,1
+access_sale_receipt_report_user,account.sale.receipt.report,model_sale_receipt_report,account.group_account_user,1,0,0,0
diff --git a/addons/account_voucher/static/src/img/icon.png b/addons/account_voucher/static/src/img/icon.png
new file mode 100644
index 00000000000..b66773a109e
Binary files /dev/null and b/addons/account_voucher/static/src/img/icon.png differ
diff --git a/addons/account_voucher/test/account_voucher.yml b/addons/account_voucher/test/account_voucher.yml
index 33ae609e3f3..7e5482aa931 100644
--- a/addons/account_voucher/test/account_voucher.yml
+++ b/addons/account_voucher/test/account_voucher.yml
@@ -5,7 +5,6 @@
account_id: account.cash
amount: 1000.0
company_id: base.main_company
- currency_id: base.EUR
journal_id: account.bank_journal
name: Voucher for Axelor
narration: Basic Pc
diff --git a/addons/account_voucher/test/account_voucher_report.yml b/addons/account_voucher/test/account_voucher_report.yml
index b41c33e4470..85432f747aa 100644
--- a/addons/account_voucher/test/account_voucher_report.yml
+++ b/addons/account_voucher/test/account_voucher_report.yml
@@ -1,7 +1,7 @@
-
Demo for Account Voucher
-
- !record {model: account.voucher, id: account_voucher_voucheraxelor0}:
+ !record {model: account.voucher, id: account_voucher_voucheraxelor0again}:
account_id: account.cash
company_id: base.main_company
journal_id: account.bank_journal
@@ -19,6 +19,6 @@
-
!python {model: account.voucher}: |
import netsvc, tools, os
- (data, format) = netsvc.LocalService('report.voucher.cash_receipt.drcr').create(cr, uid, [ref("account_voucher_voucheraxelor0")], {}, {})
+ (data, format) = netsvc.LocalService('report.voucher.cash_receipt.drcr').create(cr, uid, [ref("account_voucher_voucheraxelor0again")], {}, {})
if tools.config['test_report_directory']:
file(os.path.join(tools.config['test_report_directory'], 'account_voucher-report.'+format), 'wb+').write(data)
diff --git a/addons/account_voucher/test/case1_usd_usd.yml b/addons/account_voucher/test/case1_usd_usd.yml
index e19e7e3ee46..d75c386e259 100644
--- a/addons/account_voucher/test/case1_usd_usd.yml
+++ b/addons/account_voucher/test/case1_usd_usd.yml
@@ -1,6 +1,15 @@
-
In order to check the Account_voucher module with multi-currency in OpenERP,
I create 2 Invoices in USD and make 2 Payments in USD based on the currency rating on that particular date
+-
+ I set the income and expense currency accounts on the main company
+-
+ !python {model: res.company}: |
+ from datetime import datetime
+ vals = {
+ 'income_currency_exchange_account_id': ref('account.o_expense'),
+ 'expense_currency_exchange_account_id': ref('account.o_expense')}
+ self.write(cr, uid, ref('base.main_company'), vals)
-
I create currency USD in OpenERP for January of 1.333333 Rate
-
@@ -42,7 +51,7 @@
name: "cash account in usd"
code: "Xcash usd"
type: 'liquidity'
- user_type: "account.account_type_cash_moves"
+ user_type: "account.data_account_type_cash"
-
I create a bank journal with USD as currency
@@ -131,39 +140,41 @@
assert (move_line.debit - move_line.credit == 80), "Invoice move is not correct for debtors account"
-
- I create the first voucher of payment
-
+ I set the context that will be used for the encoding of all the vouchers of this file
+-
+ !context
+ 'type': 'receipt'
+-
+ I create the first voucher of payment with values 240 USD, journal USD,
+-
+ !record {model: account.voucher, id: account_voucher_1_case1, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 240.0
+ company_id: base.main_company
+ journal_id: bank_journal_USD
+ name: 'First payment: Case 1 USD/USD'
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-03-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+
+-
+ I fill amounts 180 for the invoice of 200$ and 70 for the invoice of 100$>
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 240.00, 2, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 240.00,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.USD'),
- 'journal_id': ref('bank_journal_USD'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-%m-%d"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'First payment: Case 1 USD/USD',
- }
- vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-03-01'), ref('base.USD'), 240)['value'])
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 200.00:
- item['amount'] = 180.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_1_case1'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 200.00:
+ data += [(item.id, 180.0)]
else:
- item['amount'] = 70.00
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 70.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 10.0
@@ -228,41 +239,35 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 30.0) , "Residual amount is not correct for first Invoice"
-
- I create the second voucher of payment
-
-
+ I create the second voucher of payment with values 45 USD, journal USD,
+-
+ !record {model: account.voucher, id: account_voucher_2_case1}:
+ account_id: account.cash
+ amount: 45.0
+ company_id: base.main_company
+ journal_id: bank_journal_USD
+ name: 'Second payment: Case 1'
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-04-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+-
+ I fill amounts 20 for the invoice of 200$ and 30 for the invoice of 100$
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 45.00, 2, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 45.00,
- 'exchange_acc_id': ref('account.o_expense'),
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.USD'),
- 'journal_id': ref('bank_journal_USD'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-%m-%d"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'Second payment: Case 1',
- }
- vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 45.0)['value'])
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 20.00:
- item['amount'] = 20.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_2_case1'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 20.00:
+ data += [(item.id, 20.0)]
else:
- item['amount'] = 30.00
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 30.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 5.0
diff --git a/addons/account_voucher/test/case2_suppl_usd_eur.yml b/addons/account_voucher/test/case2_suppl_usd_eur.yml
index 23f11d28803..0ad523b8004 100644
--- a/addons/account_voucher/test/case2_suppl_usd_eur.yml
+++ b/addons/account_voucher/test/case2_suppl_usd_eur.yml
@@ -1,6 +1,15 @@
-
In order to check the Account_voucher module with multi-currency in OpenERP,
I create 2 Invoices in USD and make 2 Payments one in USD and another in EUR, based on the currency rating on that particular date
+-
+ I set the income and expense currency accounts on the main company
+-
+ !python {model: res.company}: |
+ from datetime import datetime
+ vals = {
+ 'income_currency_exchange_account_id': ref('account.o_expense'),
+ 'expense_currency_exchange_account_id': ref('account.o_expense')}
+ self.write(cr, uid, ref('base.main_company'), vals)
-
I create a bank journal with EUR as currency
-
@@ -104,38 +113,41 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.debit - move_line.credit == -80), "Invoice move is incorrect for debtors account"
-
- I create the first voucher of payment
-
+ I set the context that will be used for the encoding of all the vouchers of this file
+-
+ !context
+ 'type': 'payment'
+-
+ I create the first voucher of payment with values 240 EUR, journal EUR
+-
+ !record {model: account.voucher, id: account_voucher_1_case2_suppl, view: view_vendor_payment_form}:
+ account_id: account.cash
+ amount: 240.0
+ company_id: base.main_company
+ journal_id: bank_journal_EUR
+ name: 'First payment: Case 2 SUPPL USD/EUR',
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-03-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+
+-
+ I fill amounts 180 for the invoice of 200$ and 70 for the invoice of 100$
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 240.0, 2, ttype='payment', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 240.0,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.EUR'),
- 'journal_id': ref('bank_journal_EUR'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'payment',
- 'date': time.strftime("%Y-03-01"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'First payment: Case 2 SUPPL USD/EUR',
- }
- if not res['value']['line_dr_ids']:
- res['value']['line_dr_ids'] = [{'type': 'dr', 'account_id': ref('account.a_pay'),}]
- for item in res['value']['line_dr_ids']:
- if item['amount_unreconciled'] == 200.00:
- item['amount'] = 180.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_1_case2_suppl'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 200.00:
+ data += [(item.id, 180.0)]
else:
- item['amount'] = 70.00
- vals['line_dr_ids'] = [(0,0,i) for i in res['value']['line_dr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 70.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is -15.0
@@ -201,7 +213,7 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 20.0 and move_line.amount_residual == 15) , "Residual amount is not correct for first Invoice"
--
+-
I check the residual amuont of Invoice2, should be 30 in residual currency and 24 in amount_residual
-
!python {model: account.invoice}: |
@@ -210,40 +222,37 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 30 and move_line.amount_residual == 24) , "Residual amount is not correct for second Invoice"
--
- I create the second voucher of payment
-
+-
+ I create the second voucher of payment with values 45 USD, journal USD,
+-
+ !record {model: account.voucher, id: account_voucher_2_case2_suppl, view: view_vendor_payment_form}:
+ account_id: account.cash
+ amount: 45.0
+ company_id: base.main_company
+ journal_id: bank_journal_USD
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-04-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'Second payment: Case 2 SUPPL USD/EUR'
+
+-
+ I fill amounts 20 for the invoice of 200$ and 30 for the invoice of 100$>
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 45.0, 2, ttype='payment', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 45.0,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.USD'),
- 'journal_id': ref('bank_journal_USD'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'payment',
- 'date': time.strftime("%Y-%m-%d"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'Second payment: Case 2 SUPPL USD/EUR',
- }
- vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 45.0)['value'])
- if not res['value']['line_dr_ids']:
- res['value']['line_dr_ids'] = [{'type': 'dr', 'account_id': ref('account.a_pay'),}]
- for item in res['value']['line_dr_ids']:
- if item['amount_unreconciled'] == 20.00:
- item['amount'] = 20.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_2_case2_suppl'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 20.00:
+ data += [(item.id, 20.0)]
else:
- item['amount'] = 30.00
- vals['line_dr_ids'] = [(0,0,i) for i in res['value']['line_dr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 30.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is -5.0
diff --git a/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml b/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml
index 67287591778..ac77aef622d 100644
--- a/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml
+++ b/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml
@@ -1,6 +1,15 @@
-
In order to check the Account_voucher module with multi-currency in OpenERP,
I create 2 Invoices in USD and make 2 Payments one in USD and another in EUR, based on the currency rating on that particular date
+-
+ I set the income and expense currency accounts on the main company
+-
+ !python {model: res.company}: |
+ from datetime import datetime
+ vals = {
+ 'income_currency_exchange_account_id': ref('account.o_expense'),
+ 'expense_currency_exchange_account_id': ref('account.o_expense')}
+ self.write(cr, uid, ref('base.main_company'), vals)
-
I modify the debtor account in order to make sure there is no currency_id linked
-
@@ -136,38 +145,41 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.debit - move_line.credit == 80), "Invoice move is incorrect for debtors account"
-
- I create the first voucher of payment
-
+ I set the context that will be used for the encoding of all the vouchers of this file
+-
+ !context
+ 'type': 'receipt'
+-
+ I create the first voucher of payment with values 200 EUR, journal EUR
+-
+ !record {model: account.voucher, id: account_voucher_1_case2a, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 200.0
+ company_id: base.main_company
+ journal_id: bank_journal_EUR
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-03-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'First payment: Case 2 USD/EUR DR EUR'
+
+-
+ I fill amounts 130 for the invoice of 200$ and 70 for the invoice of 100$
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 240.0, False, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 200.0,
- 'company_id': ref('base.main_company'),
- 'currency_id': False,
- 'journal_id': ref('bank_journal_EUR'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-03-01"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'First payment: Case 2 USD/EUR DR EUR',
- }
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 150.00:
- item['amount'] = 130.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_1_case2a'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 150.00:
+ data += [(item.id, 130.0)]
else:
- item['amount'] = 70.00
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 70.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I confirm the voucher
@@ -187,18 +199,6 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', voucher_id.move_id.id)])
for move_line in move_line_obj.browse(cr, uid, move_lines):
assert move_line.state == 'valid', "Voucher move is not valid"
--
- I check that my debtor account is correct
--
- I check that the debtor account has 2 new lines with 0 in amount_currency columns and their credit columns are 130 and 70
--
- !python {model: account.voucher}: |
- voucher = self.search(cr, uid, [('name', '=', 'First payment: Case 2 USD/EUR DR EUR'), ('partner_id', '=', ref('base.res_partner_seagate'))])
- voucher_id = self.browse(cr, uid, voucher[0])
- move_line_obj = self.pool.get('account.move.line')
- move_lines = move_line_obj.search(cr, uid, [('move_id', '=', voucher_id.move_id.id)])
- for move_line in move_line_obj.browse(cr, uid, move_lines):
- assert move_line.amount_currency == 0.00, "A line has the 'amount_currency' column filled"
-
I check the residual amount of Invoice1, should be 55.56 in residual currency and 20 in amount_residual
-
@@ -217,41 +217,37 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 22.22 and move_line.amount_residual == 10) , "Residual amount is not correct for second Invoice"
--
- I create the second voucher of payment
-
+-
+ I create the second voucher of payment with values 80 USD, journal USD
+-
+ !record {model: account.voucher, id: account_voucher_2_case2a, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 80
+ company_id: base.main_company
+ journal_id: bank_journal_USD
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-04-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'Second payment: Case 2 SUPPL USD/EUR DR EUR'
+
+-
+ and I fully reconcile the 2 previous invoices
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 80.0, 2, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 80.0,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.USD'),
- 'journal_id': ref('bank_journal_USD'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-%m-%d"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'exchange_acc_id': ref('account.o_expense'),
- 'comment': 'Write Off',
- 'name': 'Second payment: Case 2 SUPPL USD/EUR DR EUR',
- }
- vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 80.0)['value'])
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 55.56:
- item['amount'] = 55.56
+ voucher_id = self.browse(cr, uid, ref('account_voucher_2_case2a'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 55.56:
+ data += [(item.id, 55.56)]
else:
- item['amount'] = 22.22
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 22.22)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 2.22
diff --git a/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml b/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml
index ec4d653c8ab..a3a32a32082 100644
--- a/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml
+++ b/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml
@@ -1,6 +1,15 @@
-
In order to check the Account_voucher module with multi-currency in OpenERP,
I create 2 Invoices in USD and make 2 Payments one in USD and another in EUR, based on the currency rating on that particular date
+-
+ I set the income and expense currency accounts on the main company
+-
+ !python {model: res.company}: |
+ from datetime import datetime
+ vals = {
+ 'income_currency_exchange_account_id': ref('account.o_expense'),
+ 'expense_currency_exchange_account_id': ref('account.o_expense')}
+ self.write(cr, uid, ref('base.main_company'), vals)
-
I modify the debtor account in order to set the currency_id = USD
-
@@ -136,38 +145,41 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.debit - move_line.credit == 80), "Invoice move is incorrect for debtors account"
-
- I create the first voucher of payment
-
+ I set the context that will be used for the encoding of all the vouchers of this file
+-
+ !context
+ 'type': 'receipt'
+-
+ I create the first voucher of payment with values 200 EUR, journal EUR
+-
+ !record {model: account.voucher, id: account_voucher_1_case2b, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 200.0
+ company_id: base.main_company
+ journal_id: bank_journal_EUR
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-03-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'First payment: Case 2 USD/EUR DR USD'
+
+-
+ I fill amounts 130 for the invoice of 200$ and 70 for the invoice of 100$>
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 200.0, False, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 200.0,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.EUR'),
- 'journal_id': ref('bank_journal_EUR'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-03-01"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'First payment: Case 2 USD/EUR DR USD',
- }
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 150.00:
- item['amount'] = 130.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_1_case2b'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 150.00:
+ data += [(item.id, 130.0)]
else:
- item['amount'] = 70.00
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 70.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I confirm the voucher
@@ -211,8 +223,8 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 55.56 and move_line.amount_residual == 20) , "Residual amount is not correct for first Invoice"
-- toto
- I check the residual amuont of Invoice2, should be 22.22 in residual currency and 10 in amount_residual
+-
+ I check the residual amount of Invoice2, should be 22.22 in residual currency and 10 in amount_residual
-
!python {model: account.invoice}: |
invoice_id = self.browse(cr, uid, ref("account_second_invoice_feb_michal"))
@@ -220,41 +232,37 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 22.22 and move_line.amount_residual == 10) , "Residual amount is not correct for second Invoice"
--
- I create the second voucher of payment
-
+-
+ I create the second voucher of payment with values 80 USD, journal USD
+-
+ !record {model: account.voucher, id: account_voucher_2_case2b, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 80.0
+ company_id: base.main_company
+ journal_id: bank_journal_USD
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-04-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'Second payment: Case 2 SUPPL USD/EUR DR USD'
+
+-
+ and I fully reconcil the 2 previous invoices
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 80.0, ref('base.USD'), ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 80.0,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.USD'),
- 'journal_id': ref('bank_journal_USD'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-%m-%d"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'exchange_acc_id': ref('account.o_expense'),
- 'comment': 'Write Off',
- 'name': 'Second payment: Case 2 SUPPL USD/EUR DR USD',
- }
- vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 80.0)['value'])
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 55.56:
- item['amount'] = 55.56
+ voucher_id = self.browse(cr, uid, ref('account_voucher_2_case2b'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 55.56:
+ data += [(item.id, 55.56)]
else:
- item['amount'] = 22.22
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 22.22)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 2.22
@@ -320,8 +328,8 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 0.0 and move_line.amount_residual == 0.0 and invoice_id.state == 'paid') , "Residual amount is not correct for first Invoice"
--
- I check the residual amuont of invoice 2, should be 0 in residual currency and 0 in amount_residual and paid
+-
+ I check the residual amount of invoice 2, should be 0 in residual currency and 0 in amount_residual and paid
-
!python {model: account.invoice}: |
invoice_id = self.browse(cr, uid, ref("account_second_invoice_feb_michal"))
diff --git a/addons/account_voucher/test/case3_eur_eur.yml b/addons/account_voucher/test/case3_eur_eur.yml
index 09034fadf51..a2fc39e1844 100644
--- a/addons/account_voucher/test/case3_eur_eur.yml
+++ b/addons/account_voucher/test/case3_eur_eur.yml
@@ -99,38 +99,41 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.debit - move_line.credit == 80.00), "Invoice move is incorrect for debtors account"
-
- I create the first voucher of payment
-
+ I set the context that will be used for the encoding of all the vouchers of this file
+-
+ !context
+ 'type': 'receipt'
+-
+ I create the first voucher of payment with values 120 EUR, journal EUR
+-
+ !record {model: account.voucher, id: account_voucher_1_case3, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 120.0
+ company_id: base.main_company
+ journal_id: bank_journal_EUR
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-03-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'First payment: Case 3'
+
+-
+ I fill amounts 100 for the invoice of 150€ and 20 for the invoice of 80€
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 120.00, False, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 120.00,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.EUR'),
- 'journal_id': ref('bank_journal_EUR'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-03-01"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'First payment: Case 3',
- }
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 150.00:
- item['amount'] = 100.00
+ voucher_id = self.browse(cr, uid, ref('account_voucher_1_case3'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 150.00:
+ data += [(item.id, 100.0)]
else:
- item['amount'] = 20.00
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ data += [(item.id, 20.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 0.00
@@ -181,7 +184,7 @@
move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)])
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 50.0 and move_line.amount_residual == 50.0) , "Residual amount is not correct for first Invoice"
--
+-
I check the residual amuont of Invoice2 is 60
-
!python {model: account.invoice}: |
@@ -191,38 +194,36 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.amount_residual_currency == 60.0 and move_line.amount_residual == 60.0) , "Residual amount is not correct for second Invoice"
-
- I create the second voucher of payment and check to let open the debtor overpaid amount.
-
+ I create the second voucher of payment with values 120€, journal EUR, and check to let open the debtor overpaid amount
+-
+ !record {model: account.voucher, id: account_voucher_2_case3, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 120.0
+ company_id: base.main_company
+ journal_id: bank_journal_EUR
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-04-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'Second payment: Case 3'
+
+-
+ I fill amounts 50 for the invoice of 150€ and 70 for the invoice of 80€
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 120.00, False, ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 120.00,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.EUR'),
- 'journal_id': ref('bank_journal_EUR'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-04-01"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'comment': 'Write Off',
- 'name': 'Second payment: Case 3',
- }
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 50.00:
- item['amount'] = 50.00
- elif item['amount_unreconciled'] == 60.00:
- item['amount'] = 70.00
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ voucher_id = self.browse(cr, uid, ref('account_voucher_2_case3'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 50.00:
+ data += [(item.id, 50.0)]
+ elif item.amount_unreconciled == 60.00:
+ data += [(item.id, 70.00)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 0.00
diff --git a/addons/account_voucher/test/case4_cad_chf.yml b/addons/account_voucher/test/case4_cad_chf.yml
index b3abbb25e01..ff8db125682 100644
--- a/addons/account_voucher/test/case4_cad_chf.yml
+++ b/addons/account_voucher/test/case4_cad_chf.yml
@@ -1,6 +1,15 @@
-
In order to check the Account_voucher module with multi-currency in OpenERP,
I create an invoice in CAD and make its Payment in CHF based on the currency rating on that particular date.
+-
+ I set the income and expense currency accounts on the main company
+-
+ !python {model: res.company}: |
+ from datetime import datetime
+ vals = {
+ 'income_currency_exchange_account_id': ref('account.o_expense'),
+ 'expense_currency_exchange_account_id': ref('account.o_expense')}
+ self.write(cr, uid, ref('base.main_company'), vals)
-
I create currency CAD in OpenERP for January of 1.338800 Rate
-
@@ -37,7 +46,7 @@
name: "cash account in chf"
code: "Xcash chf"
type: 'liquidity'
- user_type: "account.account_type_cash_moves"
+ user_type: "account.data_account_type_cash"
-
I create a bank journal with CHF as currency
@@ -89,38 +98,40 @@
move_line = move_line_obj.browse(cr, uid, move_lines[0])
assert (move_line.debit - move_line.credit == 149.39), "Invoice move is incorrect for debtors account"
-
- I create the first voucher of payment
-
+ I set the context that will be used for the encoding of all the vouchers of this file
+-
+ !context
+ 'type': 'receipt'
+-
+ I create the first voucher of payment with values 200 CHF, journal CHF
+-
+ !record {model: account.voucher, id: account_voucher_1_case4, view: view_vendor_receipt_form}:
+ account_id: account.cash
+ amount: 200
+ company_id: base.main_company
+ journal_id: bank_journal_CHF
+ partner_id: base.res_partner_seagate
+ period_id: account.period_3
+ date: !eval time.strftime("%Y-03-01")
+ payment_option: 'with_writeoff'
+ writeoff_acc_id: account.a_expense
+ comment: 'Write Off'
+ name: 'First payment: Case 4'
+-
+ I completly pay the invoice of 200 CAD
-
!python {model: account.voucher}: |
import netsvc, time
vals = {}
- res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_CHF'), 200.00, ref('base.CHF'), ttype='receipt', date=False)
- vals = {
- 'account_id': ref('account.cash'),
- 'amount': 200.00,
- 'company_id': ref('base.main_company'),
- 'currency_id': ref('base.CHF'),
- 'journal_id': ref('bank_journal_CHF'),
- 'partner_id': ref('base.res_partner_seagate'),
- 'period_id': ref('account.period_3'),
- 'type': 'receipt',
- 'date': time.strftime("%Y-%m-%d"),
- 'payment_option': 'with_writeoff',
- 'writeoff_acc_id': ref('account.a_expense'),
- 'exchange_acc_id': ref('account.o_expense'),
- 'comment': 'Write Off',
- 'name': 'First payment: Case 4',
- }
- vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-03-01'), ref('base.CHF'), 200.0)['value'])
- if not res['value']['line_cr_ids']:
- res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}]
- for item in res['value']['line_cr_ids']:
- if item['amount_unreconciled'] == 186.74:
- item['amount'] = 186.74
- vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
- id = self.create(cr, uid, vals)
- voucher_id = self.browse(cr, uid, id)
+ voucher_id = self.browse(cr, uid, ref('account_voucher_1_case4'))
+ data = []
+ for item in voucher_id.line_cr_ids:
+ if item.amount_unreconciled == 186.74:
+ data += [(item.id, 186.74)]
+ else:
+ data += [(item.id, 0.0)]
+ for line_id, amount in data:
+ self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount})
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
-
I check that writeoff amount computed is 13.26
@@ -151,7 +162,7 @@
-
I check that my debtor account is correct
-
- I check that the debtor account has 1 new line with -186.74 as amount_currency columns and 149.39 of credit and currency is CHF.
+ I check that the debtor account has 1 new line with -298.78 as amount_currency columns and 149.39 of credit and currency is CAD.
-
I check that my currency rate difference is correct. 0 in debit with no amount_currency
-
@@ -165,7 +176,7 @@
for move_line in move_line_obj.browse(cr, uid, move_lines):
if move_line.amount_currency == 200:
assert move_line.debit == 160.00, "Bank account has wrong entry."
- elif move_line.amount_currency == -186.74:
+ elif move_line.amount_currency == -298.78:
assert move_line.credit == 149.39, "Debtor account has wrong entry."
elif move_line.debit == 0.00 and move_line.credit == 0.00:
assert move_line.amount_currency == 0.00, "Incorrect Currency Difference."
diff --git a/addons/account_voucher/test/sales_receipt.yml b/addons/account_voucher/test/sales_receipt.yml
index d3fd720ec6d..7ea4f7d1c55 100644
--- a/addons/account_voucher/test/sales_receipt.yml
+++ b/addons/account_voucher/test/sales_receipt.yml
@@ -5,7 +5,6 @@
account_id: account.a_recv
amount: 30000.0
company_id: base.main_company
- currency_id: base.EUR
journal_id: account.sales_journal
line_cr_ids:
- account_id: account.a_sale
diff --git a/addons/account_voucher/voucher_payment_receipt_view.xml b/addons/account_voucher/voucher_payment_receipt_view.xml
index 46720b2732c..01095d2f265 100644
--- a/addons/account_voucher/voucher_payment_receipt_view.xml
+++ b/addons/account_voucher/voucher_payment_receipt_view.xml
@@ -75,13 +75,13 @@
[[ 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]) ]]
-
+ Schedule a Meeting
-
+ {'default_partner_id': active_id}
@@ -51,7 +51,7 @@
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 636cb8289fb..c04e00e5fcc 100644
--- a/addons/crm/crm_meeting_view.xml
+++ b/addons/crm/crm_meeting_view.xml
@@ -10,7 +10,7 @@
form[('object_id.model', '=', 'crm.meeting')]
- {'object_id':'crm.meeting'}
+ Create different meeting categories to better organize and classify your meetings.
@@ -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..4246fa43a98 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,38 +116,155 @@ 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})
+ self.write(cr, uid, ids, {'duration': 0.0, 'state':'open'})
return res
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/crm_phonecall_view.xml b/addons/crm/crm_phonecall_view.xml
index 54ea8bd7dfc..34ef2612623 100644
--- a/addons/crm/crm_phonecall_view.xml
+++ b/addons/crm/crm_phonecall_view.xml
@@ -10,7 +10,7 @@
form[('object_id.model', '=', 'crm.phonecall')]
- {'object_id':'crm.phonecall'}
+ Create specific phone call categories to better define the type of calls tracked in the system.
@@ -31,7 +31,7 @@
-
+
-
+
@@ -141,13 +141,17 @@
on_change="onchange_partner_id(partner_id)"
string="Partner" />
-
-
+ on_change="onchange_partner_address_id(partner_address_id)"
+ invisible="1"/>
+
+
+ domain="[('object_id.model', '=', 'crm.phonecall')]"
+ invisible="1"/>
+
+
diff --git a/addons/crm/i18n/hr.po b/addons/crm/i18n/hr.po
index b438be0d404..52f6877d1be 100644
--- a/addons/crm/i18n/hr.po
+++ b/addons/crm/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: 2011-01-21 21:20+0000\n"
+"PO-Revision-Date: 2011-12-19 16:03+0000\n"
"Last-Translator: Ivica Perić \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:03+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\n"
"Language: hr\n"
#. module: crm
@@ -27,7 +27,7 @@ msgstr "# Tragova"
#: selection:crm.lead,type:0
#: selection:crm.lead.report,type:0
msgid "Lead"
-msgstr "Prodajni trag"
+msgstr "Pot. kontakt"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor3
@@ -57,7 +57,7 @@ msgstr "Vidljivost"
#. module: crm
#: field:crm.lead,title:0
msgid "Title"
-msgstr "Titula"
+msgstr "Naslov"
#. module: crm
#: field:crm.meeting,show_as:0
@@ -79,7 +79,7 @@ msgstr "Danas"
#. module: crm
#: view:crm.merge.opportunity:0
msgid "Select Opportunities"
-msgstr "Odaberi prilike"
+msgstr "Odaberite prilike"
#. module: crm
#: view:crm.meeting:0
@@ -93,7 +93,7 @@ msgstr " "
#: view:crm.lead.report:0
#: field:crm.phonecall.report,delay_close:0
msgid "Delay to close"
-msgstr ""
+msgstr "Delay to close"
#. module: crm
#: view:crm.lead:0
@@ -122,7 +122,7 @@ msgstr "Dan"
#. module: crm
#: sql_constraint:crm.case.section:0
msgid "The code of the sales team must be unique !"
-msgstr "Šifra prodajnog tima nora biti jedinstvena!"
+msgstr "Šifra prodajnog tima mora biti jedinstvena!"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:95
@@ -239,7 +239,7 @@ msgstr "Zakaži drugi poziv"
#. module: crm
#: help:crm.meeting,edit_all:0
msgid "Edit all Occurrences of recurrent Meeting."
-msgstr "Uređivanje svih pojava ponavljajućeg sastanka."
+msgstr "Uredite sve instance ponavljajućih sastanka."
#. module: crm
#: code:addons/crm/wizard/crm_opportunity_to_phonecall.py:134
@@ -271,6 +271,10 @@ msgid ""
"sort out your leads analysis by different groups to get accurate grained "
"analysis."
msgstr ""
+"Leads Analysis allows you to check different CRM related information. Check "
+"for treatment delays, number of responses given and emails sent. You can "
+"sort out your leads analysis by different groups to get accurate grained "
+"analysis."
#. module: crm
#: view:crm.lead:0
@@ -295,7 +299,7 @@ msgstr "Sekcije"
#. module: crm
#: view:crm.merge.opportunity:0
msgid "_Merge"
-msgstr "Spoji"
+msgstr "_Spoji"
#. module: crm
#: view:crm.lead.report:0
@@ -315,7 +319,7 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,class:0
msgid "Public"
-msgstr "Javno"
+msgstr "Javni"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_resource_type_act
@@ -341,6 +345,8 @@ msgid ""
"If opt-out is checked, this contact has refused to receive emails or "
"unsubscribed to a campaign."
msgstr ""
+"Ako opt-out je provjeren, kontakt je odbio primiti e-poštu ili je otkazao "
+"pretplatu na kampanju."
#. module: crm
#: model:process.transition,name:crm.process_transition_leadpartner0
@@ -350,7 +356,7 @@ msgstr "Izgledni Partner"
#. module: crm
#: field:crm.lead,contact_name:0
msgid "Contact Name"
-msgstr "Ime osobe"
+msgstr "Contact Name"
#. module: crm
#: selection:crm.lead2opportunity.partner,action:0
@@ -364,7 +370,7 @@ msgstr "Poveznica s postojećim partnerom"
#: view:crm.meeting:0
#: field:crm.phonecall,partner_contact:0
msgid "Contact"
-msgstr "Osoba"
+msgstr "Contact"
#. module: crm
#: view:crm.installer:0
@@ -396,7 +402,7 @@ msgstr "Sastanak s prilikom"
#: help:crm.lead.report,delay_close:0
#: help:crm.phonecall.report,delay_close:0
msgid "Number of Days to close the case"
-msgstr "Rješavanje slučaja u danima"
+msgstr "Broj dana za zatvaranje slučaja"
#. module: crm
#: model:process.node,note:crm.process_node_opportunities0
@@ -422,7 +428,7 @@ msgstr "_Pošalji"
#. module: crm
#: view:crm.lead:0
msgid "Communication"
-msgstr "Komunikacija"
+msgstr "Veza"
#. module: crm
#: field:crm.case.section,change_responsible:0
@@ -452,13 +458,13 @@ msgstr "Pretvori/spoji priliku"
#. module: crm
#: field:crm.lead,write_date:0
msgid "Update Date"
-msgstr "Datum izmjene"
+msgstr "Datum ažuriranja"
#. module: crm
#: view:crm.lead2opportunity.action:0
#: field:crm.lead2opportunity.action,name:0
msgid "Select Action"
-msgstr "Odaberite akciju"
+msgstr "Select Action"
#. module: crm
#: field:base.action.rule,trg_categ_id:0
@@ -471,7 +477,7 @@ msgstr "Odaberite akciju"
#: field:crm.phonecall.report,categ_id:0
#: field:crm.phonecall2phonecall,categ_id:0
msgid "Category"
-msgstr "Kategorija"
+msgstr "Grupa"
#. module: crm
#: view:crm.lead.report:0
@@ -526,12 +532,12 @@ msgstr ""
#. module: crm
#: model:process.transition,note:crm.process_transition_opportunitymeeting0
msgid "Normal or phone meeting for opportunity"
-msgstr "Sastanak ili telefonski razgovor, vezan uz Prodajnu priliku"
+msgstr "Sastanak ili tel. poziv, u vezi prodajne prilike"
#. module: crm
#: model:process.node,note:crm.process_node_leads0
msgid "Very first contact with new prospect"
-msgstr "Inicijalni kontakt s novim prodajnim tragom"
+msgstr "Inicijalni kontakt s novim potencijalnim kontaktom"
#. module: crm
#: code:addons/crm/crm_lead.py:278
@@ -614,7 +620,7 @@ msgstr "Uključeni odgovori:"
#: help:crm.meeting,email_from:0
#: help:crm.phonecall,email_from:0
msgid "These people will receive email."
-msgstr "Ove osobe ce primiti e-mail."
+msgstr "Ove će osobe primiti email."
#. module: crm
#: view:crm.meeting:0
@@ -659,12 +665,12 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,end_type:0
msgid "End date"
-msgstr "Do datuma"
+msgstr "Datum završetka"
#. module: crm
#: constraint:base.action.rule:0
msgid "Error: The mail is not well formated"
-msgstr ""
+msgstr "Error: The mail is not well formated"
#. module: crm
#: view:crm.segmentation:0
@@ -682,8 +688,8 @@ msgid ""
"The partner category that will be added to partners that match the "
"segmentation criterions after computation."
msgstr ""
-"Kategorija partnera koja će biti dodana partnerima koji se - po izračunu - "
-"podudaraju s kriterijima segmentacije."
+"Kategorija partnera koja će biti dodana partnerima koji se podudaraju s "
+"kriterijima segmentacije."
#. module: crm
#: view:crm.lead:0
@@ -721,6 +727,8 @@ msgid ""
"The email address put in the 'Reply-To' of all emails sent by OpenERP about "
"cases in this sales team"
msgstr ""
+"E-mail adresa u 'Reply-To' svih e-mailova koje program šalje o slučajevima "
+"ovog prodajnog tima"
#. module: crm
#: view:res.users:0
@@ -733,22 +741,24 @@ msgid ""
"Defines a rule or repeating pattern of time to exclude from the recurring "
"rule."
msgstr ""
+"Defines a rule or repeating pattern of time to exclude from the recurring "
+"rule."
#. module: crm
#: field:crm.case.section,resource_calendar_id:0
msgid "Working Time"
-msgstr ""
+msgstr "Radno vrijeme"
#. module: crm
#: view:crm.segmentation.line:0
msgid "Partner Segmentation Lines"
-msgstr "Slijedovi Segmentacije Partnera"
+msgstr "Stavke segmentacije partnera"
#. module: crm
#: view:crm.lead:0
#: view:crm.meeting:0
msgid "Details"
-msgstr ""
+msgstr "Detalji"
#. module: crm
#: help:crm.installer,crm_caldav:0
@@ -772,18 +782,18 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Leads Form"
-msgstr "Obrazac Kontakta"
+msgstr "Kartica potencijalnog kontakta"
#. module: crm
#: view:crm.segmentation:0
#: model:ir.model,name:crm.model_crm_segmentation
msgid "Partner Segmentation"
-msgstr "Segmentacija Partnera"
+msgstr "Segmentacija partnera"
#. module: crm
#: field:crm.lead.report,probable_revenue:0
msgid "Probable Revenue"
-msgstr ""
+msgstr "Očekivani Prihod"
#. module: crm
#: help:crm.segmentation,name:0
@@ -799,13 +809,13 @@ msgstr "Vjerojatnost (%)"
#. module: crm
#: view:crm.lead:0
msgid "Leads Generation"
-msgstr ""
+msgstr "Generiranje potencijalnih kontakata"
#. module: crm
#: view:board.board:0
#: model:ir.ui.menu,name:crm.menu_board_statistics_dash
msgid "Statistics Dashboard"
-msgstr ""
+msgstr "Kokpit statistike"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:88
@@ -840,14 +850,14 @@ msgstr "Zaustavi proces"
#. module: crm
#: view:crm.phonecall:0
msgid "Search Phonecalls"
-msgstr "Pretraži Telefonske pozive"
+msgstr "Traži telefonske pozive"
#. module: crm
#: view:crm.lead2opportunity.partner:0
#: view:crm.lead2partner:0
#: view:crm.phonecall2partner:0
msgid "Continue"
-msgstr "Nastavi"
+msgstr "Continue"
#. module: crm
#: field:crm.segmentation,som_interval:0
@@ -857,18 +867,18 @@ msgstr "Dani po Periodu"
#. module: crm
#: field:crm.meeting,byday:0
msgid "By day"
-msgstr ""
+msgstr "Po danu"
#. module: crm
#: field:base.action.rule,act_section_id:0
msgid "Set Team to"
-msgstr ""
+msgstr "Postavi tim"
#. module: crm
#: view:calendar.attendee:0
#: field:calendar.attendee,categ_id:0
msgid "Event Type"
-msgstr ""
+msgstr "Vrsta događaja"
#. module: crm
#: model:ir.model,name:crm.model_crm_installer
@@ -889,7 +899,7 @@ msgstr ""
#. module: crm
#: help:crm.meeting,alarm_id:0
msgid "Set an alarm at this time, before the event occurs"
-msgstr ""
+msgstr "Set an alarm at this time, before the event occurs"
#. module: crm
#: model:ir.module.module,description:crm.module_meta_information
@@ -930,23 +940,23 @@ msgstr ""
#: field:crm.lead.report,create_date:0
#: field:crm.phonecall.report,create_date:0
msgid "Create Date"
-msgstr ""
+msgstr "Kreiraj datum"
#. module: crm
#: field:crm.lead,ref2:0
msgid "Reference 2"
-msgstr "Referenca 2"
+msgstr "Poveznica 2"
#. module: crm
#: view:crm.segmentation:0
msgid "Sales Purchase"
-msgstr "Kupnja po Prodaji"
+msgstr "Prodaje Nabave"
#. module: crm
#: view:crm.case.stage:0
#: field:crm.case.stage,requirements:0
msgid "Requirements"
-msgstr ""
+msgstr "Uvjeti"
#. module: crm
#: help:crm.meeting,exdate:0
@@ -954,11 +964,13 @@ msgid ""
"This property defines the list of date/time exceptions for a recurring "
"calendar component."
msgstr ""
+"Ovo svojstvo određuje listu iznimki datuma/vremena za ponavljajuću "
+"komponentu kalendara"
#. module: crm
#: view:crm.phonecall2opportunity:0
msgid "Convert To Opportunity "
-msgstr ""
+msgstr "Pretvori u priliku "
#. module: crm
#: help:crm.case.stage,sequence:0
@@ -977,18 +989,18 @@ msgstr "Prilike"
#. module: crm
#: field:crm.segmentation,categ_id:0
msgid "Partner Category"
-msgstr "Kategorija Partnera"
+msgstr "Kategorija partnera"
#. module: crm
#: view:crm.add.note:0
#: model:ir.actions.act_window,name:crm.action_crm_add_note
msgid "Add Note"
-msgstr ""
+msgstr "Dodaj zabilješku"
#. module: crm
#: field:crm.lead,is_supplier_add:0
msgid "Supplier"
-msgstr ""
+msgstr "Dobavljač"
#. module: crm
#: help:crm.send.mail,reply_to:0
@@ -998,17 +1010,17 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Mark Won"
-msgstr ""
+msgstr "Označi kao dobiven"
#. module: crm
#: selection:crm.segmentation.line,expr_name:0
msgid "Purchase Amount"
-msgstr "Iznos kupnje"
+msgstr "Iznos nabave"
#. module: crm
#: view:crm.lead:0
msgid "Mark Lost"
-msgstr ""
+msgstr "Označi kao izgubljen"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -1026,19 +1038,19 @@ msgstr ""
#. module: crm
#: field:crm.lead,day_open:0
msgid "Days to Open"
-msgstr ""
+msgstr "Dana za otvaranje"
#. module: crm
#: view:crm.meeting:0
msgid "Show time as"
-msgstr ""
+msgstr "Prikaži vrijeme kao"
#. module: crm
#: code:addons/crm/crm_lead.py:264
#: view:crm.phonecall2partner:0
#, python-format
msgid "Create Partner"
-msgstr "Krairaj Partnera"
+msgstr "Krairaj partnera"
#. module: crm
#: selection:crm.segmentation.line,expr_operator:0
@@ -1049,7 +1061,7 @@ msgstr "<"
#: field:crm.lead,mobile:0
#: field:crm.phonecall,partner_mobile:0
msgid "Mobile"
-msgstr "Mobitel"
+msgstr "Mobilni"
#. module: crm
#: field:crm.meeting,end_type:0
@@ -1066,7 +1078,7 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Next Stage"
-msgstr ""
+msgstr "Slijedeća faza"
#. module: crm
#: view:board.board:0
@@ -1076,12 +1088,12 @@ msgstr "Moji sastanci"
#. module: crm
#: field:crm.lead,ref:0
msgid "Reference"
-msgstr "Referenca"
+msgstr "Vezna oznaka"
#. module: crm
#: field:crm.lead,optin:0
msgid "Opt-In"
-msgstr ""
+msgstr "Želi poštu i obavijesti"
#. module: crm
#: code:addons/crm/crm_opportunity.py:208
@@ -1102,7 +1114,7 @@ msgstr "Sastanci"
#. module: crm
#: view:crm.meeting:0
msgid "Choose day where repeat the meeting"
-msgstr ""
+msgstr "Choose day where repeat the meeting"
#. module: crm
#: field:crm.lead,date_action_next:0
@@ -1110,17 +1122,17 @@ msgstr ""
#: field:crm.meeting,date_action_next:0
#: field:crm.phonecall,date_action_next:0
msgid "Next Action"
-msgstr "Siljedeća Radnja"
+msgstr "Siljedeća akcija"
#. module: crm
#: field:crm.meeting,end_date:0
msgid "Repeat Until"
-msgstr ""
+msgstr "Ponavljaj dok"
#. module: crm
#: field:crm.meeting,date_deadline:0
msgid "Deadline"
-msgstr "Rok"
+msgstr "Krajnji rok"
#. module: crm
#: help:crm.meeting,active:0
@@ -1128,6 +1140,8 @@ msgid ""
"If the active field is set to true, it will allow you to hide the "
"event alarm information without removing it."
msgstr ""
+"If the active field is set to true, it will allow you to hide the "
+"event alarm information without removing it."
#. module: crm
#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:57
@@ -1152,46 +1166,46 @@ msgstr "Odgovoran"
#. module: crm
#: view:res.partner:0
msgid "Previous"
-msgstr ""
+msgstr "Previous"
#. module: crm
#: view:crm.lead:0
msgid "Statistics"
-msgstr ""
+msgstr "Statistike"
#. module: crm
#: view:crm.meeting:0
#: field:crm.send.mail,email_from:0
msgid "From"
-msgstr ""
+msgstr "Od"
#. module: crm
#: view:crm.lead2opportunity.action:0
#: view:res.partner:0
msgid "Next"
-msgstr ""
+msgstr "Next"
#. module: crm
#: view:crm.lead:0
msgid "Stage:"
-msgstr ""
+msgstr "Faza:"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead5
#: model:crm.case.stage,name:crm.stage_opportunity5
#: view:crm.lead:0
msgid "Won"
-msgstr ""
+msgstr "Won"
#. module: crm
#: field:crm.lead.report,delay_expected:0
msgid "Overpassed Deadline"
-msgstr ""
+msgstr "Prekoračen rok"
#. module: crm
#: model:crm.case.section,name:crm.section_sales_department
msgid "Sales Department"
-msgstr ""
+msgstr "Odjel prodaje"
#. module: crm
#: field:crm.send.mail,html:0
@@ -1207,7 +1221,7 @@ msgstr ""
#: view:crm.phonecall.report:0
#: view:res.partner:0
msgid "Type"
-msgstr "Tip"
+msgstr "Vrsta"
#. module: crm
#: view:crm.segmentation:0
@@ -1244,17 +1258,17 @@ msgstr "Kolovoz"
#: field:crm.phonecall,create_date:0
#: field:crm.phonecall.report,creation_date:0
msgid "Creation Date"
-msgstr "Datum stvaranja"
+msgstr "Datum kreiranja"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor5
msgid "Need a Website Design"
-msgstr ""
+msgstr "Need a Website Design"
#. module: crm
#: field:crm.meeting,recurrent_uid:0
msgid "Recurrent ID"
-msgstr ""
+msgstr "Ponavljajući ID"
#. module: crm
#: view:crm.lead:0
@@ -1267,7 +1281,7 @@ msgstr "Predmet"
#. module: crm
#: field:crm.meeting,tu:0
msgid "Tue"
-msgstr ""
+msgstr "Uto"
#. module: crm
#: code:addons/crm/crm_lead.py:300
@@ -1283,37 +1297,37 @@ msgstr "Stupanj"
#. module: crm
#: view:crm.lead:0
msgid "History Information"
-msgstr ""
+msgstr "Povijest"
#. module: crm
#: field:base.action.rule,act_mail_to_partner:0
msgid "Mail to Partner"
-msgstr ""
+msgstr "Mail to Partner"
#. module: crm
#: view:crm.lead:0
msgid "Mailings"
-msgstr ""
+msgstr "e-pošta"
#. module: crm
#: field:crm.meeting,class:0
msgid "Mark as"
-msgstr ""
+msgstr "Označi kao"
#. module: crm
#: field:crm.meeting,count:0
msgid "Repeat"
-msgstr ""
+msgstr "Ponovi"
#. module: crm
#: help:crm.meeting,rrule_type:0
msgid "Let the event automatically repeat at that interval"
-msgstr ""
+msgstr "Neka se događaj automatski ponavlja u intervalima"
#. module: crm
#: view:base.action.rule:0
msgid "Condition Case Fields"
-msgstr ""
+msgstr "Condition Case Fields"
#. module: crm
#: view:crm.case.section:0
@@ -1325,7 +1339,7 @@ msgstr ""
#: model:ir.ui.menu,name:crm.menu_crm_lead_stage_act
#: model:ir.ui.menu,name:crm.menu_crm_opportunity_stage_act
msgid "Stages"
-msgstr "Stupnjevi"
+msgstr "Faze"
#. module: crm
#: field:crm.lead,planned_revenue:0
@@ -1341,6 +1355,7 @@ msgid ""
"Create specific phone call categories to better define the type of calls "
"tracked in the system."
msgstr ""
+"Kreirajte specifične kategorije tel. poziva za potrebe izvještavanja."
#. module: crm
#: selection:crm.lead.report,month:0
@@ -1352,24 +1367,24 @@ msgstr "Rujan"
#. module: crm
#: field:crm.segmentation,partner_id:0
msgid "Max Partner ID processed"
-msgstr "Max Partner ID processed"
+msgstr "Max Partner ID procesiran"
#. module: crm
#: model:ir.actions.act_window,name:crm.action_report_crm_phonecall
#: model:ir.ui.menu,name:crm.menu_report_crm_phonecalls_tree
msgid "Phone Calls Analysis"
-msgstr ""
+msgstr "Analiza tel. poziva"
#. module: crm
#: field:crm.lead.report,opening_date:0
#: field:crm.phonecall.report,opening_date:0
msgid "Opening Date"
-msgstr ""
+msgstr "Datum otvaranja"
#. module: crm
#: help:crm.phonecall,duration:0
msgid "Duration in Minutes"
-msgstr ""
+msgstr "Trajanje u minutama"
#. module: crm
#: help:crm.installer,crm_helpdesk:0
@@ -1387,6 +1402,8 @@ msgid ""
"If the active field is set to true, it will allow you to hide the sales team "
"without removing it."
msgstr ""
+"If the active field is set to true, it will allow you to hide the sales team "
+"without removing it."
#. module: crm
#: view:crm.lead.report:0
@@ -1397,27 +1414,27 @@ msgstr ""
#. module: crm
#: field:crm.meeting,edit_all:0
msgid "Edit All"
-msgstr ""
+msgstr "Uredi sve"
#. module: crm
#: field:crm.meeting,fr:0
msgid "Fri"
-msgstr ""
+msgstr "Pet"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead
msgid "crm.lead"
-msgstr ""
+msgstr "crm.lead"
#. module: crm
#: field:crm.meeting,write_date:0
msgid "Write Date"
-msgstr ""
+msgstr "Write Date"
#. module: crm
#: view:crm.meeting:0
msgid "End of recurrency"
-msgstr ""
+msgstr "End of recurrency"
#. module: crm
#: view:crm.meeting:0
@@ -1442,7 +1459,7 @@ msgstr ""
#: model:ir.actions.act_window,name:crm.action_crm_phonecall2partner
#: view:res.partner:0
msgid "Create a Partner"
-msgstr ""
+msgstr "Kreiraj partnera"
#. module: crm
#: field:crm.segmentation,state:0
@@ -1452,19 +1469,19 @@ msgstr "Status izvršenja"
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Monday"
-msgstr ""
+msgstr "Ponedjeljak"
#. module: crm
#: field:crm.lead,day_close:0
msgid "Days to Close"
-msgstr ""
+msgstr "Dana za zatvaranje"
#. module: crm
#: field:crm.add.note,attachment_ids:0
#: field:crm.case.section,complete_name:0
#: field:crm.send.mail,attachment_ids:0
msgid "unknown"
-msgstr ""
+msgstr "nepoznato"
#. module: crm
#: field:crm.lead,id:0
@@ -1476,7 +1493,7 @@ msgstr "ID"
#. module: crm
#: model:ir.model,name:crm.model_crm_partner2opportunity
msgid "Partner To Opportunity"
-msgstr ""
+msgstr "Partnera u priliku"
#. module: crm
#: view:crm.meeting:0
@@ -1495,7 +1512,7 @@ msgstr "Datum"
#: view:crm.meeting:0
#: view:crm.phonecall.report:0
msgid "Extended Filters..."
-msgstr ""
+msgstr "Prošireni filtri..."
#. module: crm
#: field:crm.phonecall2opportunity,name:0
@@ -1505,22 +1522,22 @@ msgstr "Sažetak prilike"
#. module: crm
#: view:crm.phonecall.report:0
msgid "Search"
-msgstr ""
+msgstr "Search"
#. module: crm
#: view:board.board:0
msgid "Opportunities by Categories"
-msgstr ""
+msgstr "Prilike po kategorijama"
#. module: crm
#: view:crm.meeting:0
msgid "Choose day in the month where repeat the meeting"
-msgstr ""
+msgstr "Choose day in the month where repeat the meeting"
#. module: crm
#: view:crm.segmentation:0
msgid "Segmentation Description"
-msgstr "Opis Segmentacije"
+msgstr "Opis segmentacije"
#. module: crm
#: view:crm.lead:0
@@ -1535,16 +1552,19 @@ msgid ""
"better manage your interactions with them. The segmentation tool is able to "
"assign categories to partners according to criteria you set."
msgstr ""
+"Create specific partner categories which you can assign to your partners to "
+"better manage your interactions with them. The segmentation tool is able to "
+"assign categories to partners according to criteria you set."
#. module: crm
#: field:crm.case.section,code:0
msgid "Code"
-msgstr ""
+msgstr "Šifra"
#. module: crm
#: field:crm.case.section,child_ids:0
msgid "Child Teams"
-msgstr ""
+msgstr "Podređeni Timovi"
#. module: crm
#: view:crm.lead:0
@@ -1557,7 +1577,7 @@ msgstr ""
#: view:crm.phonecall.report:0
#: field:crm.phonecall.report,state:0
msgid "State"
-msgstr "Država"
+msgstr "Stanje"
#. module: crm
#: field:crm.meeting,freq:0
@@ -1586,12 +1606,12 @@ msgstr "Odustani"
#. module: crm
#: model:ir.model,name:crm.model_res_users
msgid "res.users"
-msgstr ""
+msgstr "res.users"
#. module: crm
#: model:ir.model,name:crm.model_crm_merge_opportunity
msgid "Merge two Opportunities"
-msgstr ""
+msgstr "Spoji dvije prilike"
#. module: crm
#: selection:crm.meeting,end_type:0
@@ -1608,7 +1628,7 @@ msgstr ""
#. module: crm
#: field:crm.meeting,exrule:0
msgid "Exception Rule"
-msgstr "Pravilo Iznimke"
+msgstr "Pravilo iznimke"
#. module: crm
#: help:base.action.rule,act_mail_to_partner:0
@@ -1618,22 +1638,22 @@ msgstr "Označite želite li postaviti pravilo slanja e-maila partneru."
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_phonecall_categ_action
msgid "Phonecall Categories"
-msgstr ""
+msgstr "Kategorije tel.poziva"
#. module: crm
#: view:crm.meeting:0
msgid "Invite People"
-msgstr ""
+msgstr "Pozovi"
#. module: crm
#: constraint:crm.case.section:0
msgid "Error ! You cannot create recursive Sales team."
-msgstr ""
+msgstr "Greška ! Ne možete kreirati rekurzivne prodajne timove."
#. module: crm
#: view:crm.meeting:0
msgid "Search Meetings"
-msgstr "Pretraži Sastanke"
+msgstr "Pretraži sastanke"
#. module: crm
#: selection:crm.segmentation.line,expr_name:0
@@ -1654,7 +1674,7 @@ msgstr "="
#. module: crm
#: selection:crm.meeting,state:0
msgid "Unconfirmed"
-msgstr ""
+msgstr "Nepotvrđen"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_report_crm_opportunity
@@ -1665,6 +1685,11 @@ msgid ""
"mainly used by the sales manager in order to do the periodic review with the "
"teams of the sales pipeline."
msgstr ""
+"Opportunities Analysis gives you an instant access to your opportunities "
+"with information such as the expected revenue, planned cost, missed "
+"deadlines or the number of interactions per opportunity. This report is "
+"mainly used by the sales manager in order to do the periodic review with the "
+"teams of the sales pipeline."
#. module: crm
#: field:crm.case.categ,name:0
@@ -1673,7 +1698,7 @@ msgstr ""
#: field:crm.segmentation,name:0
#: field:crm.send.mail.attachment,name:0
msgid "Name"
-msgstr "Ime"
+msgstr "Naziv"
#. module: crm
#: field:crm.meeting,alarm_id:0
@@ -1688,22 +1713,25 @@ msgid ""
"organise their sales pipeline. Stages will allow them to easily track how a "
"specific lead or opportunity is positioned in the sales cycle."
msgstr ""
+"Add specific stages to leads and opportunities allowing your sales to better "
+"organise their sales pipeline. Stages will allow them to easily track how a "
+"specific lead or opportunity is positioned in the sales cycle."
#. module: crm
#: view:crm.lead.report:0
#: view:crm.phonecall.report:0
msgid "My Case(s)"
-msgstr ""
+msgstr "My Case(s)"
#. module: crm
#: field:crm.lead,birthdate:0
msgid "Birthdate"
-msgstr ""
+msgstr "Datum rođenja"
#. module: crm
#: view:crm.meeting:0
msgid "The"
-msgstr ""
+msgstr "The"
#. module: crm
#: field:crm.send.mail.attachment,wizard_id:0
@@ -1721,7 +1749,7 @@ msgstr ""
#: view:crm.lead:0
#: view:crm.phonecall:0
msgid "Creation"
-msgstr ""
+msgstr "Kreiranje"
#. module: crm
#: selection:crm.lead,priority:0
@@ -1739,7 +1767,7 @@ msgstr "Pretv u Izglenog Partnera pa u Poslovnog Partnera"
#. module: crm
#: view:crm.phonecall2opportunity:0
msgid "_Convert"
-msgstr ""
+msgstr "_Pretvori"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_view_attendee_form
@@ -1748,16 +1776,19 @@ msgid ""
"sent/to be sent to your colleagues/partners. You can not only invite OpenERP "
"users, but also external parties, such as a customer."
msgstr ""
+"Sa Pozivnice možete stvoriti i upravljati sastanak pozivnice su poslane / "
+"biti poslana na svoje kolege / partnera. Vi ne samo da može pozvati OpenERP "
+"korisnika, ali i vanjskim stranama, kao što je kupac."
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Saturday"
-msgstr ""
+msgstr "Subota"
#. module: crm
#: selection:crm.meeting,byday:0
msgid "Fifth"
-msgstr ""
+msgstr "Peti"
#. module: crm
#: view:crm.phonecall2phonecall:0
@@ -1767,17 +1798,17 @@ msgstr ""
#. module: crm
#: field:crm.lead.report,delay_close:0
msgid "Delay to Close"
-msgstr ""
+msgstr "Delay to Close"
#. module: crm
#: field:crm.meeting,we:0
msgid "Wed"
-msgstr ""
+msgstr "Sri"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor6
msgid "Potential Reseller"
-msgstr ""
+msgstr "Potencijalan Prodavač"
#. module: crm
#: field:crm.lead.report,planned_revenue:0
@@ -1791,32 +1822,33 @@ msgstr "Planirani prihod"
#: view:crm.phonecall:0
#: view:crm.phonecall.report:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupiraj po..."
#. module: crm
#: help:crm.lead,partner_id:0
msgid "Optional linked partner, usually after conversion of the lead"
msgstr ""
+"Opcionalni vezani partner, obično nakon konverzije potencijalnoga kontakta"
#. module: crm
#: view:crm.meeting:0
msgid "Invitation details"
-msgstr ""
+msgstr "Detalji poziva"
#. module: crm
#: field:crm.case.section,parent_id:0
msgid "Parent Team"
-msgstr ""
+msgstr "Parent Team"
#. module: crm
#: field:crm.lead,date_action:0
msgid "Next Action Date"
-msgstr ""
+msgstr "Datum slijedeće akcije"
#. module: crm
#: selection:crm.segmentation,state:0
msgid "Running"
-msgstr "U tijeku"
+msgstr "Izvodi se"
#. module: crm
#: selection:crm.meeting,freq:0
@@ -1826,7 +1858,7 @@ msgstr "Sati"
#. module: crm
#: field:crm.lead,zip:0
msgid "Zip"
-msgstr ""
+msgstr "Poštanski br."
#. module: crm
#: code:addons/crm/crm_lead.py:213
@@ -1852,12 +1884,14 @@ msgid ""
"This percentage depicts the default/average probability of the Case for this "
"stage to be a success"
msgstr ""
+"Ovo je postotak uobičajene/prosječne vjerojatnosti uspjeha slučaja koji je u "
+"ovoj fazi"
#. module: crm
#: view:crm.phonecall.report:0
#: model:ir.actions.act_window,name:crm.act_crm_opportunity_crm_phonecall_new
msgid "Phone calls"
-msgstr ""
+msgstr "Telefonski pozivi"
#. module: crm
#: view:crm.lead:0
@@ -1867,7 +1901,7 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,show_as:0
msgid "Free"
-msgstr ""
+msgstr "Slobodno"
#. module: crm
#: view:crm.installer:0
@@ -1882,7 +1916,7 @@ msgstr "Dopusti Brisanje"
#. module: crm
#: field:crm.meeting,mo:0
msgid "Mon"
-msgstr ""
+msgstr "Pon"
#. module: crm
#: selection:crm.lead,priority:0
@@ -1904,14 +1938,14 @@ msgstr ""
#. module: crm
#: help:crm.meeting,recurrency:0
msgid "Recurrent Meeting"
-msgstr ""
+msgstr "Ponavljajući sastanak"
#. module: crm
#: view:crm.case.section:0
#: view:crm.lead:0
#: field:crm.lead,description:0
msgid "Notes"
-msgstr ""
+msgstr "Bilješke"
#. module: crm
#: selection:crm.meeting,freq:0
@@ -1921,19 +1955,19 @@ msgstr "Dani"
#. module: crm
#: field:crm.segmentation.line,expr_value:0
msgid "Value"
-msgstr "Vrijednost"
+msgstr "Value"
#. module: crm
#: view:crm.lead:0
#: view:crm.lead.report:0
msgid "Opportunity by Categories"
-msgstr ""
+msgstr "Prilike po kategorijama"
#. module: crm
#: view:crm.lead:0
#: field:crm.lead,partner_name:0
msgid "Customer Name"
-msgstr ""
+msgstr "Naziv kupca"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_case_categ_meet
@@ -1947,27 +1981,27 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall2opportunity
msgid "Phonecall To Opportunity"
-msgstr ""
+msgstr "Tel.poziv u priliku"
#. module: crm
#: field:crm.case.section,reply_to:0
msgid "Reply-To"
-msgstr "Odgovor-na"
+msgstr "Reply-To"
#. module: crm
#: view:crm.case.section:0
msgid "Select stages for this Sales Team"
-msgstr ""
+msgstr "Faze za ovaj prodajni tim"
#. module: crm
#: view:board.board:0
msgid "Opportunities by Stage"
-msgstr ""
+msgstr "Prilike po fazama"
#. module: crm
#: view:crm.meeting:0
msgid "Recurrency Option"
-msgstr ""
+msgstr "Opcija ponavljanja"
#. module: crm
#: model:process.transition,note:crm.process_transition_leadpartner0
@@ -1993,39 +2027,39 @@ msgstr "Održan"
#: view:crm.phonecall:0
#: view:res.partner:0
msgid "Reset to Draft"
-msgstr "Vrati na Nacrt"
+msgstr "Vrati u nacrt"
#. module: crm
#: view:crm.lead:0
msgid "Extra Info"
-msgstr ""
+msgstr "Dodatni podaci"
#. module: crm
#: view:crm.merge.opportunity:0
#: model:ir.actions.act_window,name:crm.action_merge_opportunities
#: model:ir.actions.act_window,name:crm.merge_opportunity_act
msgid "Merge Opportunities"
-msgstr ""
+msgstr "Spoji prilike"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead5
msgid "Google Adwords"
-msgstr ""
+msgstr "Google Adwords"
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall
msgid "crm.phonecall"
-msgstr ""
+msgstr "crm.phonecall"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead3
msgid "Mail Campaign 2"
-msgstr ""
+msgstr "Mail Campaign 2"
#. module: crm
#: view:crm.lead:0
msgid "Create"
-msgstr ""
+msgstr "Stvori"
#. module: crm
#: view:crm.lead:0
@@ -2052,12 +2086,12 @@ msgstr "Prioritet"
#. module: crm
#: field:crm.segmentation,sales_purchase_active:0
msgid "Use The Sales Purchase Rules"
-msgstr "Koristi Pravila vezana uz Kupoprodaju"
+msgstr "Koristi pravila prodaje/nabave"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2opportunity_partner
msgid "Lead To Opportunity Partner"
-msgstr ""
+msgstr "Potencijalni kontakt u partnera prilike"
#. module: crm
#: field:crm.meeting,location:0
@@ -2067,7 +2101,7 @@ msgstr "Lokacija"
#. module: crm
#: view:crm.lead:0
msgid "Reply"
-msgstr ""
+msgstr "Odgovor"
#. module: crm
#: selection:crm.meeting,freq:0
@@ -2091,11 +2125,13 @@ msgid ""
"Create different meeting categories to better organize and classify your "
"meetings."
msgstr ""
+"Kreirajte različite katagorije sastanaka kako bi bolje organizirali i "
+"kategorizirali Vaše sastanke."
#. module: crm
#: model:ir.model,name:crm.model_crm_segmentation_line
msgid "Segmentation line"
-msgstr "Segmentacijski niz"
+msgstr "Redak segmentacije"
#. module: crm
#: view:crm.opportunity2phonecall:0
@@ -2106,28 +2142,28 @@ msgstr "Planiran datum"
#. module: crm
#: field:crm.meeting,base_calendar_url:0
msgid "Caldav URL"
-msgstr "Caldav URL"
+msgstr "CalDAV URL"
#. module: crm
#: view:crm.lead:0
msgid "Expected Revenues"
-msgstr ""
+msgstr "Očekivani prihod"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead6
msgid "Google Adwords 2"
-msgstr ""
+msgstr "Google Adwords 2"
#. module: crm
#: help:crm.lead,type:0
#: help:crm.lead.report,type:0
msgid "Type is used to separate Leads and Opportunities"
-msgstr ""
+msgstr "Tip se koristi za razlikovanje potencijalnih kontakta i prilika."
#. module: crm
#: view:crm.phonecall2partner:0
msgid "Are you sure you want to create a partner based on this Phonecall ?"
-msgstr ""
+msgstr "Želite li kreirati partnera temeljem ovog tel. poziva ?"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -2145,23 +2181,27 @@ msgid ""
"The opportunities and sales order displayed, will automatically be filtered "
"according to his team."
msgstr ""
+"Definirajte prodajne timove kako bi organizirali vaše prodavače i/ili odjele "
+"prodaje u posebne grupe. Svaki tim radi sa zasebnim popisom prilika, "
+"prodajnih naloga itd.. Prikazi prodajnih prilika i naloga se automatski "
+"filtriraju po prodajnim timovima."
#. module: crm
#: help:crm.meeting,count:0
msgid "Repeat x times"
-msgstr ""
+msgstr "Repeat x times"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_section_act
#: model:ir.model,name:crm.model_crm_case_section
#: model:ir.ui.menu,name:crm.menu_crm_case_section_act
msgid "Sales Teams"
-msgstr ""
+msgstr "Prodajni timovi"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2partner
msgid "Lead to Partner"
-msgstr ""
+msgstr "Pot. kontakt u partnera"
#. module: crm
#: view:crm.segmentation:0
@@ -2173,7 +2213,7 @@ msgstr "Segmentacija"
#. module: crm
#: view:crm.lead:0
msgid "Team"
-msgstr ""
+msgstr "Team"
#. module: crm
#: field:crm.installer,outlook:0
@@ -2190,7 +2230,7 @@ msgstr "Nije održano"
#. module: crm
#: field:crm.lead.report,probability:0
msgid "Probability"
-msgstr ""
+msgstr "Probability"
#. module: crm
#: view:crm.lead.report:0
@@ -2207,7 +2247,7 @@ msgstr "Mjesec"
#: model:ir.ui.menu,name:crm.menu_crm_case_categ0_act_leads
#: model:process.node,name:crm.process_node_leads0
msgid "Leads"
-msgstr "Kontakti"
+msgstr "Potencijalni kontakti"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_case_category_act_leads_all
@@ -2222,6 +2262,15 @@ msgid ""
"email gateway: new emails may create leads, each of them automatically gets "
"the history of the conversation with the prospect."
msgstr ""
+"Leads allow you to manage and keep track of all initial contacts with a "
+"prospect or partner showing interest in your products or services. A lead is "
+"usually the first step in your sales cycle. Once qualified, a lead may be "
+"converted into a business opportunity, while creating the related partner "
+"for further detailed tracking of any linked activities. You can import a "
+"database of prospects, keep track of your business cards or integrate your "
+"website's contact form with the OpenERP Leads. Leads can be connected to the "
+"email gateway: new emails may create leads, each of them automatically gets "
+"the history of the conversation with the prospect."
#. module: crm
#: selection:crm.lead2opportunity.partner,action:0
@@ -2234,28 +2283,28 @@ msgstr "Stvori novog partnera"
#: view:crm.meeting:0
#: view:res.partner:0
msgid "Start Date"
-msgstr ""
+msgstr "Početni datum"
#. module: crm
#: selection:crm.phonecall,state:0
#: view:crm.phonecall.report:0
msgid "Todo"
-msgstr ""
+msgstr "Za obaviti"
#. module: crm
#: view:crm.meeting:0
msgid "Delegate"
-msgstr ""
+msgstr "Delegiraj"
#. module: crm
#: view:crm.meeting:0
msgid "Decline"
-msgstr ""
+msgstr "Otkaži"
#. module: crm
#: help:crm.lead,optin:0
msgid "If opt-in is checked, this contact has accepted to receive emails."
-msgstr ""
+msgstr "If opt-in is checked, this contact has accepted to receive emails."
#. module: crm
#: view:crm.meeting:0
@@ -2273,6 +2322,7 @@ msgstr "Bilješka"
#: constraint:res.users:0
msgid "The chosen company is not in the allowed companies for this user"
msgstr ""
+"Odabrana organizacija nije među dozvoljenim organizacijama za ovog korisnika"
#. module: crm
#: selection:crm.lead,priority:0
@@ -2280,7 +2330,7 @@ msgstr ""
#: selection:crm.phonecall,priority:0
#: selection:crm.phonecall.report,priority:0
msgid "Low"
-msgstr "Nizak"
+msgstr "Niski"
#. module: crm
#: selection:crm.add.note,state:0
@@ -2319,18 +2369,18 @@ msgstr "Interni sastanak"
#: selection:crm.send.mail,state:0
#, python-format
msgid "Pending"
-msgstr "U tijeku"
+msgstr "Na čekanju"
#. module: crm
#: model:crm.case.categ,name:crm.categ_meet1
msgid "Customer Meeting"
-msgstr "sastanak sa Strankom"
+msgstr "Sastanak s partnerom"
#. module: crm
#: view:crm.lead:0
#: field:crm.lead,email_cc:0
msgid "Global CC"
-msgstr ""
+msgstr "Global CC"
#. module: crm
#: view:crm.phonecall:0
@@ -2344,7 +2394,7 @@ msgstr "Telefonski pozivi"
#: help:crm.lead.report,delay_open:0
#: help:crm.phonecall.report,delay_open:0
msgid "Number of Days to open the case"
-msgstr ""
+msgstr "Number of Days to open the case"
#. module: crm
#: field:crm.lead,phone:0
@@ -2386,7 +2436,7 @@ msgstr ">"
#. module: crm
#: view:crm.meeting:0
msgid "Uncertain"
-msgstr ""
+msgstr "Nesigurno"
#. module: crm
#: field:crm.send.mail,email_cc:0
@@ -2421,7 +2471,7 @@ msgstr ""
#: field:crm.lead2partner,action:0
#: field:crm.phonecall2partner,action:0
msgid "Action"
-msgstr "Radnja"
+msgstr "Akcija"
#. module: crm
#: field:crm.installer,crm_claim:0
@@ -2443,7 +2493,7 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,rrule_type:0
msgid "Weekly"
-msgstr ""
+msgstr "Tjedno"
#. module: crm
#: code:addons/crm/wizard/crm_send_email.py:72
@@ -2456,25 +2506,25 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Misc"
-msgstr ""
+msgstr "Ostalo"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor8
#: view:crm.meeting:0
msgid "Other"
-msgstr "Drugi"
+msgstr "Ostale"
#. module: crm
#: view:crm.meeting:0
#: selection:crm.meeting,state:0
#: selection:crm.phonecall,state:0
msgid "Done"
-msgstr "Gotovo"
+msgstr "Izvršeno"
#. module: crm
#: help:crm.meeting,interval:0
msgid "Repeat every (Days/Week/Month/Year)"
-msgstr ""
+msgstr "Repeat every (Days/Week/Month/Year)"
#. module: crm
#: field:crm.segmentation,som_interval_max:0
@@ -2499,27 +2549,27 @@ msgstr ""
#: view:res.partner:0
#, python-format
msgid "Open"
-msgstr "Otvori"
+msgstr "Otvoreno"
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Tuesday"
-msgstr ""
+msgstr "Utorak"
#. module: crm
#: field:crm.lead,city:0
msgid "City"
-msgstr ""
+msgstr "Grad"
#. module: crm
#: selection:crm.meeting,show_as:0
msgid "Busy"
-msgstr ""
+msgstr "Zauzet"
#. module: crm
#: field:crm.meeting,interval:0
msgid "Repeat every"
-msgstr ""
+msgstr "Repeat every"
#. module: crm
#: field:crm.installer,crm_helpdesk:0
@@ -2529,7 +2579,7 @@ msgstr "Helpdesk"
#. module: crm
#: field:crm.meeting,recurrency:0
msgid "Recurrent"
-msgstr ""
+msgstr "Ponavljajući"
#. module: crm
#: code:addons/crm/crm.py:397
@@ -2551,7 +2601,7 @@ msgstr ""
#: view:board.board:0
#: model:ir.actions.act_window,name:crm.act_my_oppor
msgid "My Open Opportunities"
-msgstr ""
+msgstr "Moje otvorene prilike"
#. module: crm
#: model:ir.actions.act_window,name:crm.open_board_statistical_dash
@@ -2587,7 +2637,7 @@ msgstr ""
#: view:crm.meeting:0
#: field:crm.meeting,categ_id:0
msgid "Meeting Type"
-msgstr ""
+msgstr "Vrsta sastanka"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:314
@@ -2616,12 +2666,12 @@ msgstr ""
#: view:crm.meeting:0
#: view:res.partner:0
msgid "End Date"
-msgstr ""
+msgstr "Završni Datum"
#. module: crm
#: selection:crm.meeting,byday:0
msgid "Third"
-msgstr ""
+msgstr "Treći"
#. module: crm
#: help:crm.segmentation,som_interval_max:0
@@ -2645,34 +2695,34 @@ msgstr ""
#. module: crm
#: view:crm.lead.report:0
msgid "# of Emails"
-msgstr ""
+msgstr "# Email-ova"
#. module: crm
#: view:crm.lead:0
msgid "Search Leads"
-msgstr "Pretraži Kontaktove"
+msgstr "Traži potencijalne kontakte"
#. module: crm
#: view:crm.lead.report:0
#: view:crm.phonecall.report:0
#: field:crm.phonecall.report,delay_open:0
msgid "Delay to open"
-msgstr ""
+msgstr "Delay to open"
#. module: crm
#: view:crm.meeting:0
msgid "Recurrency period"
-msgstr ""
+msgstr "Period ponavljanja"
#. module: crm
#: field:crm.meeting,week_list:0
msgid "Weekday"
-msgstr ""
+msgstr "Dan u tjednu"
#. module: crm
#: view:crm.lead:0
msgid "Referrer"
-msgstr ""
+msgstr "Referrer"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2opportunity
@@ -2682,12 +2732,12 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_calendar_attendee
msgid "Attendee information"
-msgstr ""
+msgstr "Detalji sudionika"
#. module: crm
#: view:crm.segmentation:0
msgid "Segmentation Test"
-msgstr "Segmentacijski test"
+msgstr "Test segmentacije"
#. module: crm
#: view:crm.segmentation:0
@@ -2702,14 +2752,14 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall2partner
msgid "Phonecall to Partner"
-msgstr ""
+msgstr "Tel.poziv u partnera"
#. module: crm
#: help:crm.lead,partner_name:0
msgid ""
"The name of the future partner that will be created while converting the "
"into opportunity"
-msgstr ""
+msgstr "Naziv budućeg partnera koji će se kreirati kod pretvaranja u priliku"
#. module: crm
#: field:crm.opportunity2phonecall,user_id:0
@@ -2721,14 +2771,14 @@ msgstr "Dodijeli"
#: field:crm.add.note,state:0
#: field:crm.send.mail,state:0
msgid "Set New State To"
-msgstr ""
+msgstr "Set New State To"
#. module: crm
#: field:crm.lead,date_action_last:0
#: field:crm.meeting,date_action_last:0
#: field:crm.phonecall,date_action_last:0
msgid "Last Action"
-msgstr "Posljednja radnja"
+msgstr "Posljednja akcija"
#. module: crm
#: field:crm.meeting,duration:0
@@ -2747,7 +2797,7 @@ msgstr ""
#: model:ir.actions.act_window,name:crm.open_board_crm
#: model:ir.ui.menu,name:crm.menu_board_crm
msgid "Sales Dashboard"
-msgstr ""
+msgstr "Kokpit prodaje"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_partner.py:56
@@ -2759,23 +2809,23 @@ msgstr "Partner je već određen ovim Kontaktom"
#: field:crm.lead.report,nbr:0
#: field:crm.phonecall.report,nbr:0
msgid "# of Cases"
-msgstr "# SLučaja"
+msgstr "# Slučaja"
#. module: crm
#: help:crm.meeting,section_id:0
#: help:crm.phonecall,section_id:0
msgid "Sales team to which Case belongs to."
-msgstr ""
+msgstr "Sales team to which Case belongs to."
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Sunday"
-msgstr ""
+msgstr "Nedjelja"
#. module: crm
#: selection:crm.meeting,byday:0
msgid "Fourth"
-msgstr ""
+msgstr "Četvrti"
#. module: crm
#: selection:crm.add.note,state:0
@@ -2788,12 +2838,12 @@ msgstr "Nepromijenjen"
#: model:ir.actions.act_window,name:crm.crm_segmentation_tree-act
#: model:ir.ui.menu,name:crm.menu_crm_segmentation-act
msgid "Partners Segmentation"
-msgstr ""
+msgstr "Segmentacija partnera"
#. module: crm
#: field:crm.lead,fax:0
msgid "Fax"
-msgstr ""
+msgstr "Fax"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_case_category_act_oppor11
@@ -2810,11 +2860,22 @@ msgid ""
"opportunities, convert them into quotations, manage related documents, track "
"all customer related activities, and much more."
msgstr ""
+"With opportunities you can manage and keep track of your sales pipeline by "
+"creating specific customer- or prospect-related sales documents to follow up "
+"potential sales. Information such as expected revenue, opportunity stage, "
+"expected closing date, communication history and much more can be stored. "
+"Opportunities can be connected to the email gateway: new emails may create "
+"opportunities, each of them automatically gets the history of the "
+"conversation with the customer.\n"
+"\n"
+"You and your team(s) will be able to plan meetings and phone calls from "
+"opportunities, convert them into quotations, manage related documents, track "
+"all customer related activities, and much more."
#. module: crm
#: view:crm.meeting:0
msgid "Assignment"
-msgstr ""
+msgstr "Dodjela"
#. module: crm
#: field:crm.lead,company_id:0
@@ -2824,17 +2885,17 @@ msgstr ""
#: view:crm.phonecall.report:0
#: field:crm.phonecall.report,company_id:0
msgid "Company"
-msgstr "Tvrtka"
+msgstr "Organizacija"
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Friday"
-msgstr ""
+msgstr "Petak"
#. module: crm
#: field:crm.meeting,allday:0
msgid "All Day"
-msgstr ""
+msgstr "Cijeli dan"
#. module: crm
#: field:crm.segmentation.line,operator:0
@@ -2845,28 +2906,28 @@ msgstr "Obavezan / Opcijski"
#: model:ir.actions.act_window,name:crm.action_view_attendee_form
#: model:ir.ui.menu,name:crm.menu_attendee_invitations
msgid "Meeting Invitations"
-msgstr ""
+msgstr "Pozivnice na sastanak"
#. module: crm
#: field:crm.case.categ,object_id:0
msgid "Object Name"
-msgstr ""
+msgstr "Naziv objekta"
#. module: crm
#: help:crm.lead,email_from:0
msgid "E-mail address of the contact"
-msgstr ""
+msgstr "E-mail address of the contact"
#. module: crm
#: field:crm.lead,referred:0
msgid "Referred By"
-msgstr ""
+msgstr "Referred By"
#. module: crm
#: view:crm.lead:0
#: model:ir.model,name:crm.model_crm_add_note
msgid "Add Internal Note"
-msgstr ""
+msgstr "Dodaj internu bilješku"
#. module: crm
#: code:addons/crm/crm_lead.py:304
@@ -2877,14 +2938,14 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,byday:0
msgid "Last"
-msgstr ""
+msgstr "Posljednji"
#. module: crm
#: field:crm.lead,message_ids:0
#: field:crm.meeting,message_ids:0
#: field:crm.phonecall,message_ids:0
msgid "Messages"
-msgstr ""
+msgstr "Messages"
#. module: crm
#: help:crm.case.stage,on_change:0
@@ -2904,7 +2965,7 @@ msgstr "Greška !"
#: field:crm.opportunity2phonecall,name:0
#: field:crm.phonecall2phonecall,name:0
msgid "Call summary"
-msgstr ""
+msgstr "Sažetak poziva"
#. module: crm
#: selection:crm.add.note,state:0
@@ -2916,23 +2977,23 @@ msgstr ""
#: selection:crm.phonecall.report,state:0
#: selection:crm.send.mail,state:0
msgid "Cancelled"
-msgstr "Otkazan"
+msgstr "Otkazani"
#. module: crm
#: field:crm.add.note,body:0
msgid "Note Body"
-msgstr ""
+msgstr "Note Body"
#. module: crm
#: view:board.board:0
msgid "My Planned Revenues by Stage"
-msgstr ""
+msgstr "Moji planirani prihodi po fazama"
#. module: crm
#: field:crm.lead.report,date_closed:0
#: field:crm.phonecall.report,date_closed:0
msgid "Close Date"
-msgstr ""
+msgstr "Datum zatvaranja"
#. module: crm
#: view:crm.lead.report:0
@@ -2943,7 +3004,7 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Links"
-msgstr ""
+msgstr "Links"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_lead_categ_action
@@ -2953,6 +3014,10 @@ msgid ""
"instance reflect your product structure or the different types of sales you "
"do."
msgstr ""
+"Kreirajte posebne grupe koje će najbolje odražavati aktivnosti vaše "
+"organizacije kako bi lakše klasificirali (segmentirali) i analizirali vaše "
+"potencijalne kontakte i prilike. Grupe mogu odražavati strukturu vašeg "
+"prodajnog asortimana ili različite kanale prodaje i sl.."
#. module: crm
#: help:crm.segmentation,som_interval_decrease:0
@@ -2960,6 +3025,8 @@ msgid ""
"If the partner has not purchased (or bought) during a period, decrease the "
"state of mind by this factor. It's a multiplication"
msgstr ""
+"If the partner has not purchased (or bought) during a period, decrease the "
+"state of mind by this factor. It's a multiplication"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_report_crm_phonecall
@@ -2969,6 +3036,10 @@ msgid ""
"several criteria and drill down the information, by adding more groups in "
"the report."
msgstr ""
+"From this report, you can analyse the performance of your sales team, based "
+"on their phone calls. You can group or filter the information according to "
+"several criteria and drill down the information, by adding more groups in "
+"the report."
#. module: crm
#: view:crm.case.section:0
@@ -2983,7 +3054,7 @@ msgstr ""
#. module: crm
#: view:crm.lead.report:0
msgid "# Mails"
-msgstr ""
+msgstr "# Pisama"
#. module: crm
#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:57
@@ -3005,12 +3076,12 @@ msgstr "Operator"
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall2phonecall
msgid "Phonecall To Phonecall"
-msgstr ""
+msgstr "Tel.poziv u tel.poziv"
#. module: crm
#: view:crm.lead:0
msgid "Schedule/Log Call"
-msgstr ""
+msgstr "Zakaži/Log Poziv"
#. module: crm
#: field:crm.installer,fetchmail:0
@@ -3020,7 +3091,7 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,state:0
msgid "Confirmed"
-msgstr "Potvrđen"
+msgstr "Potvrđeno"
#. module: crm
#: help:crm.send.mail,email_cc:0
@@ -3032,12 +3103,12 @@ msgstr ""
#. module: crm
#: view:crm.meeting:0
msgid "Confirm"
-msgstr ""
+msgstr "Potvrdi"
#. module: crm
#: field:crm.meeting,su:0
msgid "Sun"
-msgstr ""
+msgstr "Ned"
#. module: crm
#: field:crm.phonecall.report,section_id:0
@@ -3047,7 +3118,7 @@ msgstr "Grupa"
#. module: crm
#: view:crm.lead:0
msgid "Total of Planned Revenue"
-msgstr ""
+msgstr "Ukupni planirani prihod"
#. module: crm
#: code:addons/crm/crm.py:375
@@ -3065,7 +3136,7 @@ msgstr "Opcijski Izraz"
#. module: crm
#: selection:crm.meeting,select1:0
msgid "Day of month"
-msgstr ""
+msgstr "Dan mjeseca"
#. module: crm
#: field:crm.lead2opportunity,probability:0
@@ -3076,7 +3147,7 @@ msgstr ""
#: model:crm.case.stage,name:crm.stage_lead1
#: model:crm.case.stage,name:crm.stage_opportunity1
msgid "New"
-msgstr "Novi"
+msgstr "New"
#. module: crm
#: view:crm.meeting:0
@@ -3089,7 +3160,7 @@ msgstr ""
#: field:crm.meeting,email_from:0
#: field:crm.phonecall,email_from:0
msgid "Email"
-msgstr "Email"
+msgstr "E-mail"
#. module: crm
#: view:crm.lead:0
@@ -3098,7 +3169,7 @@ msgstr "Email"
#: field:crm.lead.report,channel_id:0
#: field:crm.phonecall,canal_id:0
msgid "Channel"
-msgstr "Kanal"
+msgstr "Channel"
#. module: crm
#: model:ir.actions.act_window,name:crm.opportunity2phonecall_act
@@ -3115,7 +3186,7 @@ msgstr ""
#. module: crm
#: view:crm.segmentation:0
msgid "Profiling"
-msgstr ""
+msgstr "Profiling"
#. module: crm
#: help:crm.segmentation,exclusif:0
@@ -3125,33 +3196,37 @@ msgid ""
"If checked, remove the category from partners that doesn't match "
"segmentation criterions"
msgstr ""
+"Check if the category is limited to partners that match the segmentation "
+"criterions. \n"
+"If checked, remove the category from partners that doesn't match "
+"segmentation criterions"
#. module: crm
#: field:crm.meeting,exdate:0
msgid "Exception Date/Times"
-msgstr "Datum/Vrijeme Iznimke"
+msgstr "Datum/vrijeme iznimke"
#. module: crm
#: selection:crm.meeting,class:0
msgid "Confidential"
-msgstr ""
+msgstr "Povjerljivo"
#. module: crm
#: help:crm.meeting,date_deadline:0
msgid ""
"Deadline Date is automatically computed from Start "
"Date + Duration"
-msgstr ""
+msgstr "Rok izvršenja se autoamtski računa od datuma početka plus trajanja."
#. module: crm
#: field:crm.lead,state_id:0
msgid "Fed. State"
-msgstr ""
+msgstr "Država/Pokrajina/Županija"
#. module: crm
#: model:process.transition,note:crm.process_transition_leadopportunity0
msgid "Creating business opportunities from Leads"
-msgstr "Kreiranje poslovnih prilika iz Kontakata"
+msgstr "Kreiranje poslovnih prilika iz pot. kontakata"
#. module: crm
#: help:crm.send.mail,html:0
@@ -3161,7 +3236,7 @@ msgstr ""
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor4
msgid "Need Information"
-msgstr ""
+msgstr "Treba informacije"
#. module: crm
#: model:process.transition,name:crm.process_transition_leadopportunity0
@@ -3177,17 +3252,17 @@ msgstr ""
#. module: crm
#: field:base.action.rule,act_categ_id:0
msgid "Set Category to"
-msgstr ""
+msgstr "Postavi kategoriju na"
#. module: crm
#: view:crm.case.section:0
msgid "Configuration"
-msgstr "Konfiguracija"
+msgstr "Postava"
#. module: crm
#: field:crm.meeting,th:0
msgid "Thu"
-msgstr ""
+msgstr "Čet"
#. module: crm
#: view:crm.add.note:0
@@ -3198,7 +3273,7 @@ msgstr ""
#: view:crm.phonecall2phonecall:0
#: view:crm.send.mail:0
msgid "_Cancel"
-msgstr "_Odustani"
+msgstr "_Cancel"
#. module: crm
#: view:crm.lead.report:0
@@ -3214,13 +3289,13 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,rrule_type:0
msgid "Daily"
-msgstr ""
+msgstr "Dnevno"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead2
#: model:crm.case.stage,name:crm.stage_opportunity2
msgid "Qualification"
-msgstr ""
+msgstr "Qualification"
#. module: crm
#: view:crm.case.stage:0
@@ -3230,7 +3305,7 @@ msgstr ""
#. module: crm
#: selection:crm.meeting,byday:0
msgid "First"
-msgstr ""
+msgstr "Prvi"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -3260,6 +3335,13 @@ msgid ""
"bought goods to another supplier. \n"
"Use this functionality for recurring businesses."
msgstr ""
+"A period is the average number of days between two cycle of sale or purchase "
+"for this segmentation. \n"
+"It's mainly used to detect if a partner has not purchased or buy for a too "
+"long time, \n"
+"so we suppose that his state of mind has decreased because he probably "
+"bought goods to another supplier. \n"
+"Use this functionality for recurring businesses."
#. module: crm
#: view:crm.send.mail:0
@@ -3269,7 +3351,7 @@ msgstr ""
#. module: crm
#: field:crm.meeting,vtimezone:0
msgid "Timezone"
-msgstr ""
+msgstr "Vremenska zona"
#. module: crm
#: field:crm.lead2opportunity.partner,msg:0
@@ -3281,7 +3363,7 @@ msgstr "Poruka"
#. module: crm
#: field:crm.meeting,sa:0
msgid "Sat"
-msgstr ""
+msgstr "Sub"
#. module: crm
#: view:crm.lead:0
@@ -3294,12 +3376,12 @@ msgstr "Prodavač"
#. module: crm
#: field:crm.lead,date_deadline:0
msgid "Expected Closing"
-msgstr ""
+msgstr "Očekivano zatvaranje"
#. module: crm
#: model:ir.model,name:crm.model_crm_opportunity2phonecall
msgid "Opportunity to Phonecall"
-msgstr ""
+msgstr "Priliku u tel.poziv"
#. module: crm
#: help:crm.case.section,allow_unlink:0
@@ -3314,7 +3396,7 @@ msgstr "Dogovori Sastanak"
#. module: crm
#: view:crm.lead:0
msgid "Partner Name"
-msgstr ""
+msgstr "Naziv partnera"
#. module: crm
#: model:crm.case.categ,name:crm.categ_phone2
@@ -3327,13 +3409,13 @@ msgstr "Izlazni"
#: field:crm.lead,date_open:0
#: field:crm.phonecall,date_open:0
msgid "Opened"
-msgstr ""
+msgstr "Otvoren"
#. module: crm
#: view:crm.case.section:0
#: field:crm.case.section,member_ids:0
msgid "Team Members"
-msgstr ""
+msgstr "Team Members"
#. module: crm
#: view:crm.lead:0
@@ -3342,22 +3424,22 @@ msgstr ""
#: view:crm.phonecall:0
#: view:res.partner:0
msgid "Contacts"
-msgstr ""
+msgstr "Contacts"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor1
msgid "Interest in Computer"
-msgstr ""
+msgstr "Interes za računala"
#. module: crm
#: view:crm.meeting:0
msgid "Invitation Detail"
-msgstr ""
+msgstr "Detalji poziva"
#. module: crm
#: field:crm.segmentation,som_interval_default:0
msgid "Default (0=None)"
-msgstr "Default (0=None)"
+msgstr "Uobičajeno (0=Ništa)"
#. module: crm
#: help:crm.lead,email_cc:0
@@ -3366,6 +3448,8 @@ msgid ""
"outbound emails for this record before being sent. Separate multiple email "
"addresses with a comma"
msgstr ""
+"Ove adrese e-pošte će biti dodane u CC polja svih ulaznih i izlaznih e-"
+"poruka ovog zapisa prije slanja. Više adresa odvojite zarezom."
#. module: crm
#: constraint:res.partner:0
@@ -3394,7 +3478,7 @@ msgstr "Nacrt"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_section_act_tree
msgid "Cases by Sales Team"
-msgstr ""
+msgstr "Cases by Sales Team"
#. module: crm
#: field:crm.meeting,attendee_ids:0
@@ -3413,23 +3497,23 @@ msgstr "Sastanak"
#. module: crm
#: model:ir.model,name:crm.model_crm_case_categ
msgid "Category of Case"
-msgstr ""
+msgstr "Kategorija slučaja"
#. module: crm
#: view:crm.lead:0
#: view:crm.phonecall:0
msgid "7 Days"
-msgstr ""
+msgstr "7 Dana"
#. module: crm
#: view:board.board:0
msgid "Planned Revenue by Stage and User"
-msgstr ""
+msgstr "Planirani prihod po fazama i korisniku"
#. module: crm
#: view:crm.lead:0
msgid "Communication & History"
-msgstr ""
+msgstr "Komunikacija i povijest"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead_report
@@ -3447,18 +3531,18 @@ msgstr ""
#: selection:crm.phonecall,priority:0
#: selection:crm.phonecall.report,priority:0
msgid "Normal"
-msgstr "Običan"
+msgstr "Normalan"
#. module: crm
#: field:crm.lead,street2:0
msgid "Street2"
-msgstr ""
+msgstr "Ulica2"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_meeting_categ_action
#: model:ir.ui.menu,name:crm.menu_crm_case_meeting-act
msgid "Meeting Categories"
-msgstr ""
+msgstr "Kategorije sastanaka"
#. module: crm
#: view:crm.lead2opportunity.partner:0
@@ -3470,7 +3554,7 @@ msgstr "Trebate provjeriti postoji li već ovaj Partner!"
#. module: crm
#: field:crm.lead.report,delay_open:0
msgid "Delay to Open"
-msgstr ""
+msgstr "Delay to Open"
#. module: crm
#: field:crm.lead.report,user_id:0
@@ -3494,7 +3578,7 @@ msgstr "Nema e-mail ID-a za adresu Vaše Tvrtke"
#. module: crm
#: view:crm.lead.report:0
msgid "Opportunities By Stage"
-msgstr ""
+msgstr "Prilike po fazama"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_create_partner
@@ -3525,7 +3609,7 @@ msgstr "Ugovor"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead4
msgid "Twitter Ads"
-msgstr ""
+msgstr "Twitter Ads"
#. module: crm
#: code:addons/crm/wizard/crm_add_note.py:26
@@ -3539,17 +3623,17 @@ msgstr "Greška"
#. module: crm
#: view:crm.lead.report:0
msgid "Planned Revenues"
-msgstr ""
+msgstr "Planned Revenues"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor7
msgid "Need Consulting"
-msgstr ""
+msgstr "Potrebno savjetovanje"
#. module: crm
#: constraint:crm.segmentation:0
msgid "Error ! You can not create recursive profiles."
-msgstr ""
+msgstr "Greška ! Ne možete kreirati rekurzivne profile."
#. module: crm
#: code:addons/crm/crm_lead.py:232
@@ -3562,17 +3646,17 @@ msgstr ""
#: field:crm.meeting,partner_address_id:0
#: field:crm.phonecall,partner_address_id:0
msgid "Partner Contact"
-msgstr "Osoba Partner"
+msgstr "Osoba kod partnera"
#. module: crm
#: field:crm.meeting,recurrent_id:0
msgid "Recurrent ID date"
-msgstr ""
+msgstr "Ponavljajući ID datuma"
#. module: crm
#: sql_constraint:res.users:0
msgid "You can not have two users with the same login !"
-msgstr ""
+msgstr "Ne možete imati dva korisnika sa istim korisničkim imenom !"
#. module: crm
#: code:addons/crm/wizard/crm_merge_opportunities.py:100
@@ -3593,48 +3677,48 @@ msgstr "Zatvori"
#: view:crm.phonecall:0
#: view:res.partner:0
msgid "Categorization"
-msgstr ""
+msgstr "Kategorizacija"
#. module: crm
#: model:ir.model,name:crm.model_base_action_rule
msgid "Action Rules"
-msgstr ""
+msgstr "Action Rules"
#. module: crm
#: field:crm.meeting,rrule_type:0
msgid "Recurrency"
-msgstr ""
+msgstr "Ponavljanje"
#. module: crm
#: field:crm.meeting,phonecall_id:0
msgid "Phonecall"
-msgstr ""
+msgstr "Tel.poziv"
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Thursday"
-msgstr ""
+msgstr "Četvrtak"
#. module: crm
#: view:crm.meeting:0
#: field:crm.send.mail,email_to:0
msgid "To"
-msgstr "Za"
+msgstr "Do"
#. module: crm
#: selection:crm.meeting,class:0
msgid "Private"
-msgstr ""
+msgstr "Privatno"
#. module: crm
#: field:crm.lead,function:0
msgid "Function"
-msgstr ""
+msgstr "Funkcija"
#. module: crm
#: view:crm.add.note:0
msgid "_Add"
-msgstr ""
+msgstr "_Add"
#. module: crm
#: selection:crm.segmentation.line,expr_name:0
@@ -3670,7 +3754,7 @@ msgstr "Opis"
#: field:res.partner,section_id:0
#: field:res.users,context_section_id:0
msgid "Sales Team"
-msgstr ""
+msgstr "Prodajni tim"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -3682,7 +3766,7 @@ msgstr "Svibanj"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor2
msgid "Interest in Accessories"
-msgstr ""
+msgstr "Interest in Accessories"
#. module: crm
#: code:addons/crm/crm_lead.py:211
@@ -3693,28 +3777,28 @@ msgstr ""
#. module: crm
#: field:crm.lead.report,email:0
msgid "# Emails"
-msgstr ""
+msgstr "# Emails"
#. module: crm
#: field:crm.lead,street:0
msgid "Street"
-msgstr ""
+msgstr "Ulica"
#. module: crm
#: view:crm.lead.report:0
msgid "Opportunities by User and Team"
-msgstr ""
+msgstr "Prilike po korisniku i timu"
#. module: crm
#: field:crm.case.section,working_hours:0
msgid "Working Hours"
-msgstr ""
+msgstr "Radno vrijeme(od-do)"
#. module: crm
#: view:crm.lead:0
#: field:crm.lead,is_customer_add:0
msgid "Customer"
-msgstr ""
+msgstr "Kupac"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -3735,14 +3819,14 @@ msgstr "Dogovori Sastanak"
#: model:crm.case.stage,name:crm.stage_opportunity6
#: view:crm.lead:0
msgid "Lost"
-msgstr ""
+msgstr "Lost"
#. module: crm
#: field:crm.lead,country_id:0
#: view:crm.lead.report:0
#: field:crm.lead.report,country_id:0
msgid "Country"
-msgstr ""
+msgstr "Država"
#. module: crm
#: view:crm.lead:0
@@ -3750,12 +3834,12 @@ msgstr ""
#: view:crm.phonecall:0
#: view:res.partner:0
msgid "Convert to Opportunity"
-msgstr "Pretvori u Priliku"
+msgstr "Pretvori u priliku"
#. module: crm
#: selection:crm.meeting,week_list:0
msgid "Wednesday"
-msgstr ""
+msgstr "Srijeda"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -3767,39 +3851,39 @@ msgstr "Travanj"
#. module: crm
#: field:crm.case.resource.type,name:0
msgid "Campaign Name"
-msgstr ""
+msgstr "Naziv kampanje"
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall_report
msgid "Phone calls by user and section"
-msgstr ""
+msgstr "Tel. pozivi po korisniku i odabiru"
#. module: crm
#: selection:crm.lead2opportunity.action,name:0
msgid "Merge with existing Opportunity"
-msgstr ""
+msgstr "Spoji s postojećom prilikom"
#. module: crm
#: field:crm.meeting,select1:0
msgid "Option"
-msgstr ""
+msgstr "Opcija"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead4
#: model:crm.case.stage,name:crm.stage_opportunity4
msgid "Negotiation"
-msgstr ""
+msgstr "Negotiation"
#. module: crm
#: view:crm.lead:0
msgid "Exp.Closing"
-msgstr ""
+msgstr "Oček.zatvaranje"
#. module: crm
#: field:crm.case.stage,sequence:0
#: field:crm.meeting,sequence:0
msgid "Sequence"
-msgstr "Slijed"
+msgstr "Sekvenca"
#. module: crm
#: field:crm.send.mail,body:0
@@ -3809,7 +3893,7 @@ msgstr ""
#. module: crm
#: view:crm.meeting:0
msgid "Accept"
-msgstr ""
+msgstr "Prihvati"
#. module: crm
#: field:crm.segmentation.line,expr_name:0
@@ -3819,18 +3903,18 @@ msgstr "Kontrolna varijabla"
#. module: crm
#: selection:crm.meeting,byday:0
msgid "Second"
-msgstr ""
+msgstr "Drugi"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead3
#: model:crm.case.stage,name:crm.stage_opportunity3
msgid "Proposition"
-msgstr ""
+msgstr "Proposition"
#. module: crm
#: field:res.partner,phonecall_ids:0
msgid "Phonecalls"
-msgstr ""
+msgstr "Tel. pozivi"
#. module: crm
#: view:crm.lead.report:0
@@ -3843,7 +3927,7 @@ msgstr "Godina"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead8
msgid "Newsletter"
-msgstr "Newsletter"
+msgstr "Bilten"
#~ msgid "All Cases"
#~ msgstr "Svi slučajevi"
@@ -4150,9 +4234,6 @@ msgstr "Newsletter"
#~ msgid "Fields to Change"
#~ msgstr "Polja za promijeniti"
-#~ msgid "Telesales"
-#~ msgstr "Teleprodaja"
-
#~ msgid "Created"
#~ msgstr "Kreiran"
@@ -4296,3 +4377,9 @@ msgstr "Newsletter"
#~ msgid "Cases by section"
#~ msgstr "Sučajevi po grupi"
+
+#~ msgid "Telesales"
+#~ msgstr "Telesales"
+
+#~ msgid "Mail Campaign 1"
+#~ msgstr "Mail Campaign 1"
diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py
index 24f48e7de86..a2215d28740 100644
--- a/addons/crm/report/crm_lead_report.py
+++ b/addons/crm/report/crm_lead_report.py
@@ -147,6 +147,7 @@ class crm_lead_report(osv.osv):
extract('epoch' from (c.date_open-c.create_date))/(3600*24) as delay_open
FROM
crm_lead c
+ WHERE c.active = 'true'
)""")
crm_lead_report()
diff --git a/addons/crm/report/crm_phonecall_report.py b/addons/crm/report/crm_phonecall_report.py
index f68bea03880..ef3bcccdc9a 100644
--- a/addons/crm/report/crm_phonecall_report.py
+++ b/addons/crm/report/crm_phonecall_report.py
@@ -99,3 +99,5 @@ class crm_phonecall_report(osv.osv):
crm_phonecall c
)""")
crm_phonecall_report()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
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..a3725b5a070 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/static/src/img/icon.png b/addons/crm/static/src/img/icon.png
new file mode 100644
index 00000000000..b577375d54b
Binary files /dev/null and b/addons/crm/static/src/img/icon.png differ
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 plat fournir votre cotation avec le meilleur prix.
+
+Merci
diff --git a/addons/crm/test/process/action_rule.yml b/addons/crm/test/process/action_rule.yml
new file mode 100644
index 00000000000..f96c1eb7391
--- /dev/null
+++ b/addons/crm/test/process/action_rule.yml
@@ -0,0 +1,22 @@
+-
+ I create a record rule.
+-
+ !python {model: base.action.rule}: |
+ modle_id = self.pool.get("ir.model").search(cr, uid, [('name', '=', 'crm.lead')])
+ from datetime import datetime
+ new_id = self.create(cr, uid, {'name': 'New Rule', 'model_id': modle_id[0], 'trg_user_id': ref('base.user_root'), 'trg_partner_id': ref('base.res_partner_asus'), 'act_user_id': ref('base.user_demo') })
+ lead_obj = self.pool.get("crm.lead")
+ self._check(cr, uid)
+-
+ I create new lead to check record rule.
+-
+ !record {model: crm.lead, id: crm_lead_test_rules_id}:
+ name: 'Test lead rules'
+ user_id: base.user_root
+ partner_id: base.res_partner_asus
+-
+ I check record rule is apply and responsible is changed.
+-
+ !python {model: crm.lead}: |
+ lead_user = self.browse(cr, uid, ref('crm_lead_test_rules_id'))
+ assert lead_user.user_id.id == ref('base.user_demo'), "Responsible of lead is not changed."
diff --git a/addons/crm/test/process/cancel_lead.yml b/addons/crm/test/process/cancel_lead.yml
new file mode 100644
index 00000000000..ca5f7d0174a
--- /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..83d2ce915ac
--- /dev/null
+++ b/addons/crm/test/process/communication_with_customer.yml
@@ -0,0 +1,58 @@
+-
+ 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.phonecall2partner}: |
+ context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_case_phone06")], 'active_id': ref("crm.crm_case_phone06")})
+ new_id = self.create(cr, uid, {}, context=context)
+ self.make_partner(cr, uid, [new_id], 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..a5b6c421dbb
--- /dev/null
+++ b/addons/crm/test/process/lead2opportunity2win.yml
@@ -0,0 +1,110 @@
+-
+ 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 create partner from lead.
+-
+ !record {model: crm.lead2partner, id: crm_lead2partner_id1, context: '{"active_model": "crm.lead", "active_ids": [ref("crm_case_qrecorp0")]}'}:
+-
+ !python {model: crm.lead2partner}: |
+ context.update({'active_model': 'crm.lead', 'active_ids': [ref('crm_case_qrecorp0')], 'active_id': ref('crm_case_qrecorp0')})
+ self.make_partner(cr, uid ,[ref("crm_lead2partner_id1")], context=context)
+-
+ 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!'
+-
+ I confirm review needs meeting.
+-
+ !python {model: crm.meeting}: |
+ context.update({'active_model': 'crm.meeting'})
+ self.case_open(cr, uid, [ref('crm.crm_case_reviewneeds0')])
+-
+ I invite a user for meeting.
+-
+ !python {model: calendar.attendee}: |
+ meeting_id = self.create(cr, uid, {'user_id': ref('base.user_root'), 'email': 'user@meeting.com' })
+ self.do_accept(cr, uid, [meeting_id])
diff --git a/addons/crm/test/process/merge_opportunity.yml b/addons/crm/test/process/merge_opportunity.yml
new file mode 100644
index 00000000000..c4e939f194e
--- /dev/null
+++ b/addons/crm/test/process/merge_opportunity.yml
@@ -0,0 +1,86 @@
+-
+ 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"))])
+ context.update({'active_model': 'crm.lead', 'active_ids': opportunity_ids, 'active_id': opportunity_ids[0]})
+-
+ !record {model: crm.merge.opportunity, id: opportunity_merge_id }:
+-
+ !python {model: crm.merge.opportunity}: |
+ self.action_merge(cr, uid, [ref("opportunity_merge_id")], 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")], 'active_id': 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 set phone call to not held.
+-
+ !python {model: crm.phonecall}: |
+ self.case_pending(cr, uid, [ref("crm.crm_case_phone06")])
+-
+ I check that the phone call is in 'Not Held' state.
+-
+ !assert {model: crm.phonecall, id: crm.crm_case_phone06, string: Phone call held.}:
+ - state == "pending"
+-
+ I cancelled the phone call.
+-
+ !python {model: crm.phonecall}: |
+ self.case_cancel(cr, uid, [ref("crm.crm_case_phone06")])
+-
+ I check that the phone call is in 'Cancelled' state.
+-
+ !assert {model: crm.phonecall, id: crm.crm_case_phone06, string: Phone call is not cancelled.}:
+ - state == "cancel"
+-
+ I reset the phone call.
+-
+ !python {model: crm.phonecall}: |
+ self.case_reset(cr, uid, [ref("crm.crm_case_phone06")])
+-
+ I check that the phone call is reset or not.
+-
+ !assert {model: crm.phonecall, id: crm.crm_case_phone06, string: Phone call is not reset.}:
+ - state == "open"
+-
+ I set 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 is not held.}:
+ - state == "done"
diff --git a/addons/crm/test/process/segmentation.yml b/addons/crm/test/process/segmentation.yml
new file mode 100644
index 00000000000..f3801b80ec6
--- /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_add_note.py b/addons/crm/wizard/crm_add_note.py
index 478f051fe58..6bd84bda21d 100644
--- a/addons/crm/wizard/crm_add_note.py
+++ b/addons/crm/wizard/crm_add_note.py
@@ -49,3 +49,5 @@ class crm_add_note(osv.osv_memory):
return {'type': 'ir.actions.act_window_close'}
crm_add_note()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
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 549afa0559b..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)
@@ -127,3 +61,5 @@ class crm_phonecall2opportunity(osv.osv_memory):
return res
crm_phonecall2opportunity()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
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_caldav/i18n/hr.po b/addons/crm_caldav/i18n/hr.po
new file mode 100644
index 00000000000..6ed39f173f5
--- /dev/null
+++ b/addons/crm_caldav/i18n/hr.po
@@ -0,0 +1,46 @@
+# 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:15+0000\n"
+"PO-Revision-Date: 2011-12-19 16:40+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-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\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 "Sastanak"
+
+#. 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 "Sinkroniziraj ovaj kalendar"
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 a2ad01e0651..08237d06094 100644
--- a/addons/crm_claim/crm_claim_view.xml
+++ b/addons/crm_claim/crm_claim_view.xml
@@ -14,7 +14,7 @@
form[('object_id.model', '=', 'crm.claim')]
- {'object_id':'crm.claim'}
+ Create claim categories to better manage and classify your claims. Some example of claims can be: preventive action, corrective action.
@@ -151,7 +151,7 @@
-
+
@@ -161,32 +161,6 @@
context="{'mail.compose.message.mode':'reply'}"
icon="terp-mail-replied" type="action" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/addons/email_template/html2text.py b/addons/email_template/html2text.py
index 2479843777a..745381850e3 100755
--- a/addons/email_template/html2text.py
+++ b/addons/email_template/html2text.py
@@ -453,3 +453,5 @@ if __name__ == "__main__":
data = sys.stdin.read().decode('utf8')
wrapwrite(html2text(data, baseurl))
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/email_template/i18n/hr.po b/addons/email_template/i18n/hr.po
new file mode 100644
index 00000000000..eec21dba9b1
--- /dev/null
+++ b/addons/email_template/i18n/hr.po
@@ -0,0 +1,1280 @@
+# 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:15+0000\n"
+"PO-Revision-Date: 2011-12-19 17:08+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-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\n"
+
+#. module: email_template
+#: help:email_template.account,auto_delete:0
+msgid "Permanently delete emails after sending"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Email Account Configuration"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:195
+#, python-format
+msgid "Emails for multiple items saved in outbox."
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:59
+#: code:addons/email_template/wizard/email_template_send_wizard.py:60
+#, python-format
+msgid ""
+"No personal email accounts are configured for you. \n"
+"Either ask admin to enforce an account for this template or get yourself a "
+"personal email account."
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "Personal Emails"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,file_name:0
+msgid "Report Filename"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Email Content "
+msgstr "Sadržaj e-pošte "
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Send mail Wizard"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,mail_type:0
+msgid "Plain Text & HTML with no attachments"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,model_object_field:0
+msgid ""
+"Select the field from the model you want to use.\n"
+"If it is a relationship field you will be able to choose the nested values "
+"in the box below\n"
+"(Note:If there are no values make sure you have selected the correct model)"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.preview,body_html:0
+#: field:email_template.preview,body_text:0
+#: field:email_template.send.wizard,body_html:0
+#: field:email_template.send.wizard,body_text:0
+msgid "Body"
+msgstr "Sadržaj"
+
+#. module: email_template
+#: code:addons/email_template/email_template.py:304
+#, python-format
+msgid "Deletion of Record failed"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.account,company:0
+msgid ""
+"Select if this mail account does not belong to specific user but to the "
+"organization as a whole. eg: info@companydomain.com"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Send now"
+msgstr "Pošalji odmah"
+
+#. module: email_template
+#: selection:email_template.mailbox,state:0
+msgid "Not Applicable"
+msgstr "nije primjenjivo"
+
+#. module: email_template
+#: view:email_template.account:0
+#: model:ir.ui.menu,name:email_template.menu_email_account_all_tools
+#: model:ir.ui.menu,name:email_template.menu_email_template_account_all
+msgid "Email Accounts"
+msgstr "Korisnički računi e-pošte"
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Send all mails"
+msgstr "Pošalji svu e-poštu"
+
+#. module: email_template
+#: help:email_template.account,smtpuname:0
+msgid ""
+"Specify the username if your SMTP server requires authentication, otherwise "
+"leave it empty."
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,server_ref:0
+msgid "Server Reference of mail"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+#: selection:email_template.account,state:0
+msgid "Approved"
+msgstr "Odobreno"
+
+#. module: email_template
+#: help:email.template,def_cc:0
+msgid ""
+"Carbon Copy address(es), comma-separated. Placeholders can be used here. "
+"e.g. ${object.email_cc}"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Account"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,table_html:0
+msgid "HTML code"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "Send Mail"
+msgstr "Pošalji mail"
+
+#. module: email_template
+#: help:email_template.account,name:0
+msgid ""
+"The description is used as the Sender name along with the provided From "
+"Email, unless it is already specified in the From Email, e.g: John Doe "
+""
+msgstr ""
+
+#. module: email_template
+#: field:email.template,from_account:0
+msgid "Email Account"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:201
+#, python-format
+msgid "Email sending failed for one or more objects."
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid ""
+"Add here all attachments of the current document you want to include in the "
+"Email."
+msgstr ""
+
+#. module: email_template
+#: help:email.template,lang:0
+msgid ""
+"The default language for the email. Placeholders can be used here. eg. "
+"${object.partner_id.lang}"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,sub_model_object_field:0
+msgid ""
+"When you choose relationship fields this field will specify the sub value "
+"you can use."
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.send.wizard,state:0
+msgid "Wizard Complete"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,reply_to:0
+#: field:email_template.mailbox,reply_to:0
+#: field:email_template.preview,reply_to:0
+#: field:email_template.send.wizard,reply_to:0
+msgid "Reply-To"
+msgstr "Odgovor-na"
+
+#. module: email_template
+#: view:email.template:0
+msgid "Delete Action"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Approve Account"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.preview,rel_model_ref:0
+#: field:email_template.send.wizard,rel_model_ref:0
+msgid "Referred Document"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.send.wizard,full_success:0
+msgid "Complete Success"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,send_pref:0
+msgid "Both HTML & Text (Mixed)"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.preview:0
+msgid "OK"
+msgstr "U redu"
+
+#. module: email_template
+#: field:email_template.account,auto_delete:0
+msgid "Auto Delete"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,send_pref:0
+msgid "Both HTML & Text (Alternative)"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.send.wizard,requested:0
+msgid "No of requested Mails"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,def_body_text:0
+#: view:email_template.mailbox:0
+#: field:email_template.mailbox,body_text:0
+msgid "Standard Body (Text)"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,attachment_ids:0
+msgid "Attached Files"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,smtpssl:0
+msgid "SSL/TLS (only in python 2.6)"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,email_id:0
+msgid "From Email"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template.py:304
+#, python-format
+msgid "Warning"
+msgstr "Upozorenje"
+
+#. module: email_template
+#: model:ir.actions.act_window,name:email_template.action_email_template_account_tree_all
+msgid "Accounts"
+msgstr "Korisnički računi"
+
+#. module: email_template
+#: view:email_template.preview:0
+msgid "Body(Text)"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "Company Emails"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid ""
+"Tip: Multiple emails are sent in the same language (the first one is "
+"proposed). We suggest you send emails in groups according to language."
+msgstr ""
+
+#. module: email_template
+#: help:email_template.preview,reply_to:0
+#: help:email_template.send.wizard,reply_to:0
+msgid ""
+"The address recipients should reply to, if different from the From address. "
+"Placeholders can be used here."
+msgstr ""
+
+#. module: email_template
+#: field:email.template,def_subject:0
+#: field:email_template.mailbox,subject:0
+#: field:email_template.preview,subject:0
+#: field:email_template.send.wizard,subject:0
+msgid "Subject"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:256
+#, python-format
+msgid "Reason: %s"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,email_from:0
+msgid "From"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.preview,ref_template:0
+#: field:email_template.send.wizard,ref_template:0
+msgid "Template"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:367
+#, python-format
+msgid ""
+"Mail from Account %s failed. Probable Reason: Server Send Error\n"
+" Description: %s"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Insert Simple Field"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.preview:0
+msgid "Body(Html)"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,def_bcc:0
+msgid ""
+"Blind Carbon Copy address(es), comma-separated. Placeholders can be used "
+"here. e.g. ${object.email_bcc}"
+msgstr ""
+
+#. module: email_template
+#: model:ir.actions.act_window,name:email_template.wizard_email_template_preview
+msgid "Template Preview"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,def_body_html:0
+msgid "Body (Text-Web Client Only)"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,state:0
+#: view:email_template.mailbox:0
+msgid "State"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,ref_ir_value:0
+msgid "Wizard Button"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.account,email_id:0
+msgid "eg: 'john@doe.com' or 'John Doe '"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+#: field:email.template,object_name:0
+msgid "Resource"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:255
+#, python-format
+msgid "Out going connection test failed"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:371
+#, python-format
+msgid "Mail from Account %s successfully Sent."
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "Standard Body"
+msgstr ""
+
+#. module: email_template
+#: selection:email.template,template_language:0
+msgid "Mako Templates"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,def_body_html:0
+#: help:email.template,def_body_text:0
+msgid "The text version of the mail"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template.py:449
+#, python-format
+msgid " (Email Attachment)"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,folder:0
+msgid "Sent Items"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Test Outgoing Connection"
+msgstr ""
+
+#. module: email_template
+#: model:ir.actions.act_window,name:email_template.action_email_template_mailbox
+msgid "Mailbox"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,reply_to:0
+msgid ""
+"The address recipients should reply to, if different from the From address. "
+"Placeholders can be used here. e.g. ${object.email_reply_to}"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,ref_ir_value:0
+msgid ""
+"Button in the side bar of the form view of this Resource that will invoke "
+"the Window Action"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,account_id:0
+msgid "User account"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.send.wizard,signature:0
+msgid "Attach my signature to mail"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:255
+#: view:email.template:0
+#, python-format
+msgid "Report"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,sub_model_object_field:0
+msgid "Sub Field"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+#: view:email_template.mailbox:0
+msgid "Advanced"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "My Emails"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Expression Builder"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,sub_object:0
+msgid ""
+"When a relation field is used this field will show you the type of field you "
+"have selected"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,mail_type:0
+msgid "HTML Body"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Suspend Account"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,null_value:0
+msgid "This Value is used if the field is empty"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Preview Template"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,smtpserver:0
+msgid "Server"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,copyvalue:0
+msgid ""
+"Copy and paste the value in the location you want to use a system value."
+msgstr ""
+
+#. module: email_template
+#: help:email.template,track_campaign_item:0
+msgid ""
+"Enable this is you wish to include a special tracking marker in outgoing "
+"emails so you can identify replies and link them back to the corresponding "
+"resource record. This is useful for CRM leads for example"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Body (Raw HTML)"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,use_sign:0
+msgid "Signature"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,sub_object:0
+msgid "Sub-model"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Options"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Body (Plain Text)"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Body (Text)"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,date_mail:0
+msgid "Rec/Sent Date"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,state:0
+msgid "Initiated"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,report_template:0
+msgid "Report to send"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Server Information"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.send.wizard,generated:0
+msgid "No of generated Mails"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Mail Details"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:235
+#, python-format
+msgid "SMTP SERVER or PORT not specified"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Note: This is Raw HTML."
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Group by..."
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.send.wizard,state:0
+msgid "Multiple Mail Wizard Step 1"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,user:0
+msgid "Related User"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,body_html:0
+msgid "Body (Rich Text Clients Only)"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,company:0
+msgid "Yes"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,ref_ir_act_window:0
+msgid "Window Action"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,send_pref:0
+msgid "HTML, otherwise Text"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+#: selection:email_template.mailbox,folder:0
+msgid "Drafts"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,company:0
+msgid "No"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,smtpport:0
+msgid "SMTP Port"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,mail_type:0
+msgid "Mail Contents"
+msgstr ""
+
+#. module: email_template
+#: sql_constraint:email.template:0
+msgid "The template name must be unique !"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,def_bcc:0
+#: field:email_template.mailbox,email_bcc:0
+#: field:email_template.preview,bcc:0
+#: field:email_template.send.wizard,bcc:0
+msgid "BCC"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,mail_type:0
+msgid "Plain Text"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Draft"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,model_int_name:0
+msgid "Model Internal Name"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,message_id:0
+#: field:email_template.mailbox,message_id:0
+#: field:email_template.preview,message_id:0
+#: field:email_template.send.wizard,message_id:0
+msgid "Message-ID"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.mailbox,server_ref:0
+msgid "Applicable for inward items only"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid ""
+"After clicking send all mails, mails will be sent to outbox and cleared in "
+"next Send/Recieve"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,state:0
+#: field:email_template.send.wizard,state:0
+msgid "Status"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Outgoing"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:427
+#, python-format
+msgid "Datetime Extraction failed.Date:%s \tError:%s"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,use_sign:0
+msgid "the signature from the User details will be appended to the mail"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.send.wizard,from:0
+msgid "From Account"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,mail_type:0
+msgid "Intermixed content"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Request Re-activation"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+#: model:ir.actions.act_window,name:email_template.action_email_template_tree_all
+#: model:ir.ui.menu,name:email_template.menu_email_template_all
+#: model:ir.ui.menu,name:email_template.menu_email_template_all_tools
+msgid "Email Templates"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,smtpuname:0
+msgid "User Name"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,user:0
+msgid "User"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Advanced Options"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+#: selection:email_template.mailbox,folder:0
+msgid "Outbox"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Save in Drafts"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:362
+#, python-format
+msgid ""
+"Mail from Account %s failed. Probable Reason:MIME Error\n"
+"Description: %s"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,smtptls:0
+msgid "TLS"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,lang:0
+msgid "Language"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:275
+#: code:addons/email_template/email_template_account.py:280
+#: code:addons/email_template/email_template_account.py:362
+#: code:addons/email_template/email_template_account.py:371
+#: code:addons/email_template/email_template_account.py:374
+#: code:addons/email_template/email_template_account.py:424
+#: code:addons/email_template/wizard/email_template_send_wizard.py:201
+#: model:ir.ui.menu,name:email_template.menu_email_template
+#: model:ir.ui.menu,name:email_template.menu_email_template_config_tools
+#: model:ir.ui.menu,name:email_template.menu_email_template_configuration
+#: model:ir.ui.menu,name:email_template.menu_email_template_tools
+#, python-format
+msgid "Email Template"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Send/Receive"
+msgstr ""
+
+#. module: email_template
+#: model:ir.ui.menu,name:email_template.menu_email_template_personal_mails
+msgid "Personal Mails"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+#: selection:email_template.account,state:0
+msgid "Suspended"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,allowed_groups:0
+msgid ""
+"Only users from these groups will be allowed to send mails from this Template"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template.py:284
+#, python-format
+msgid "Send Mail (%s)"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,def_subject:0
+msgid "The subject of email. Placeholders can be used here."
+msgstr ""
+
+#. module: email_template
+#: field:email_template.send.wizard,report:0
+msgid "Report File Name"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,copyvalue:0
+msgid "Expression"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+#: field:email_template.mailbox,history:0
+msgid "History"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+#: view:email_template.mailbox:0
+#: field:email_template.mailbox,attachments_ids:0
+#: view:email_template.send.wizard:0
+#: field:email_template.send.wizard,attachment_ids:0
+msgid "Attachments"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.preview,to:0
+#: field:email_template.send.wizard,to:0
+msgid "To"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.account,send_pref:0
+msgid "Text, otherwise HTML"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template.py:319
+#, python-format
+msgid "Copy of template %s"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Discard Mail"
+msgstr ""
+
+#. module: email_template
+#: model:ir.model,name:email_template.model_email_template
+msgid "Email Templates for Models"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Close"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_mailbox.py:48
+#, python-format
+msgid "Error sending mail: %s"
+msgstr ""
+
+#. module: email_template
+#: constraint:email_template.account:0
+msgid "Error: You are not allowed to have more than 1 account."
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "Body (HTML-Web Client Only)"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:253
+#, python-format
+msgid "%s (Email Attachment)"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,state:0
+msgid "Sending"
+msgstr ""
+
+#. module: email_template
+#: model:ir.actions.act_window,help:email_template.action_email_template_mailbox
+msgid ""
+"An email template is an email document that will be sent as part of a "
+"marketing campaign. You can personalize it according to specific customer "
+"profile fields, so that a partner name or other partner related information "
+"may be inserted automatically."
+msgstr ""
+
+#. module: email_template
+#: field:email.template,allowed_groups:0
+msgid "Allowed User Groups"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,model_object_field:0
+msgid "Field"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "User Information"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Actions"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:363
+#: code:addons/email_template/email_template_account.py:368
+#, python-format
+msgid ""
+"Server Send Error\n"
+"Description: %s"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,file_name:0
+msgid ""
+"Name of the generated report file. Placeholders can be used in the filename. "
+"eg: 2009_SO003.pdf"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.mailbox,date_mail:0
+msgid "Date on which Email Sent or Received"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+#: selection:email_template.mailbox,folder:0
+msgid "Trash"
+msgstr ""
+
+#. module: email_template
+#: model:ir.model,name:email_template.model_email_template_mailbox
+msgid "Email Mailbox"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_mailbox.py:104
+#, python-format
+msgid ""
+"Sending of Mail %s failed. Probable Reason:Could not login to server\n"
+"Error: %s"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:60
+#, python-format
+msgid "Missing mail account"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:250
+#, python-format
+msgid "SMTP Test Connection Was Successful"
+msgstr ""
+
+#. module: email_template
+#: model:ir.module.module,shortdesc:email_template.module_meta_information
+msgid "Email Template for OpenERP"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,name:0
+msgid "Description"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Create Action"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.account,smtpserver:0
+msgid "Enter name of outgoing server, eg: smtp.yourdomain.com"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,attachment_ids:0
+msgid ""
+"You may attach existing files to this template, so they will be added in all "
+"emails created from this template"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,message_id:0
+msgid ""
+"Specify the Message-ID SMTP header to use in outgoing emails. Please note "
+"that this overrides the Resource tracking option! Placeholders can be used "
+"here."
+msgstr ""
+
+#. module: email_template
+#: field:email.template,def_to:0
+#: field:email_template.mailbox,email_to:0
+msgid "Recipient (To)"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,null_value:0
+msgid "Null Value"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,template_language:0
+msgid "Templating Language"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,def_cc:0
+#: field:email_template.mailbox,email_cc:0
+#: field:email_template.preview,cc:0
+#: field:email_template.send.wizard,cc:0
+msgid "CC"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+msgid "Sent"
+msgstr ""
+
+#. module: email_template
+#: sql_constraint:email_template.account:0
+msgid "Another setting already exists with this email ID !"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,ref_ir_act_window:0
+msgid "Action that will open this email template on Resource records"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,smtppass:0
+msgid "Password"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.preview,message_id:0
+#: help:email_template.send.wizard,message_id:0
+msgid ""
+"The Message-ID header value, if you need tospecify it, for example to "
+"automatically recognize the replies later. Placeholders can be used here."
+msgstr ""
+
+#. module: email_template
+#: view:email_template.mailbox:0
+#: model:ir.actions.act_window,name:email_template.action_email_template_mailbox
+#: model:ir.ui.menu,name:email_template.menu_email_template_mails_tools
+#: model:ir.ui.menu,name:email_template.menu_email_template_personal_mails
+msgid "Emails"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Templates"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.preview,report:0
+msgid "Report Name"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,name:0
+msgid "Name"
+msgstr ""
+
+#. module: email_template
+#: field:email.template,track_campaign_item:0
+msgid "Resource Tracking"
+msgstr ""
+
+#. module: email_template
+#: model:ir.model,name:email_template.model_email_template_preview
+msgid "Email Template Preview"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.preview:0
+msgid "Email Preview"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,def_to:0
+msgid ""
+"The Recipient of email. Placeholders can be used here. e.g. "
+"${object.email_to}"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Existing files"
+msgstr ""
+
+#. module: email_template
+#: model:ir.module.module,description:email_template.module_meta_information
+msgid ""
+"\n"
+" Email Template is extraction of Power Email basically just to send the "
+"emails.\n"
+" "
+msgstr ""
+
+#. module: email_template
+#: view:email_template.send.wizard:0
+msgid "Body (HTML)"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,table_html:0
+msgid ""
+"Copy this html code to your HTML message body for displaying the info in "
+"your mail."
+msgstr ""
+
+#. module: email_template
+#: model:ir.model,name:email_template.model_email_template_account
+msgid "email_template.account"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.preview,rel_model:0
+#: field:email_template.send.wizard,rel_model:0
+msgid "Model"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:236
+#, python-format
+msgid "Core connection for the given ID does not exist"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,company:0
+msgid "Corporate"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:275
+#, python-format
+msgid ""
+"Mail from Account %s failed on login. Probable Reason:Could not login to "
+"server\n"
+"Error: %s"
+msgstr ""
+
+#. module: email_template
+#: model:ir.model,name:email_template.model_email_template_send_wizard
+msgid "This is the wizard for sending mail"
+msgstr ""
+
+#. module: email_template
+#: view:email.template:0
+msgid "Addresses"
+msgstr ""
+
+#. module: email_template
+#: help:email.template,from_account:0
+msgid "Emails will be sent from this approved account."
+msgstr ""
+
+#. module: email_template
+#: field:email_template.account,send_pref:0
+msgid "Mail Format"
+msgstr ""
+
+#. module: email_template
+#: field:email_template.mailbox,folder:0
+msgid "Folder"
+msgstr ""
+
+#. module: email_template
+#: view:email_template.account:0
+msgid "Company Accounts"
+msgstr ""
+
+#. module: email_template
+#: help:email_template.account,smtpport:0
+msgid "Enter port number, eg: 25 or 587"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/wizard/email_template_send_wizard.py:59
+#, python-format
+msgid "email-template"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template_account.py:280
+#: code:addons/email_template/email_template_account.py:374
+#: code:addons/email_template/email_template_account.py:375
+#, python-format
+msgid "Mail from Account %s failed. Probable Reason:Account not approved"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.send.wizard,state:0
+msgid "Simple Mail Wizard Step 1"
+msgstr ""
+
+#. module: email_template
+#: selection:email_template.mailbox,mail_type:0
+msgid "Has Attachments"
+msgstr ""
+
+#. module: email_template
+#: code:addons/email_template/email_template.py:452
+#: code:addons/email_template/wizard/email_template_send_wizard.py:256
+#, python-format
+msgid "No Description"
+msgstr ""
diff --git a/addons/email_template/res_partner.py b/addons/email_template/res_partner.py
index 74d8b4e0693..a451b171b70 100644
--- a/addons/email_template/res_partner.py
+++ b/addons/email_template/res_partner.py
@@ -34,4 +34,6 @@ class res_partner(osv.osv):
_defaults = {
'opt_out': False,
- }
\ No newline at end of file
+ }
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/email_template/security/ir.model.access.csv b/addons/email_template/security/ir.model.access.csv
index f5f61240a96..d2d6adf3bf3 100644
--- a/addons/email_template/security/ir.model.access.csv
+++ b/addons/email_template/security/ir.model.access.csv
@@ -1,4 +1,5 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_email_template","email.template","model_email_template",,1,0,0,0
-"access_email_template_system","email.template system","model_email_template","base.group_system",1,1,1,1
-"access_email_template_manager","email.template","model_email_template",,1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_email_template,email.template,model_email_template,,1,0,0,0
+access_email_template_system,email.template system,model_email_template,base.group_system,1,1,1,1
+access_email_template_manager,email.template,model_email_template,,1,1,1,1
+access_email_template_preview_system,email.template.preview system,model_email_template_preview,base.group_system,1,1,1,1
diff --git a/addons/email_template/wizard/__init__.py b/addons/email_template/wizard/__init__.py
index b9ac29ec4c2..c979c90acd0 100644
--- a/addons/email_template/wizard/__init__.py
+++ b/addons/email_template/wizard/__init__.py
@@ -22,3 +22,5 @@
import email_template_preview
import mail_compose_message
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py
index 1890ed7bf84..131f6d40b0a 100644
--- a/addons/event/__openerp__.py
+++ b/addons/event/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Event',
+ 'name': 'Events Organisation',
'version': '0.1',
- 'category': 'Hidden',
+ 'category': 'Tools',
'complexity': "easy",
'description': """
Organization and management of Events.
@@ -39,10 +39,9 @@ Note that:
Association / Configuration / Types of Events
""",
'author': 'OpenERP SA',
- 'depends': ['crm', 'base_contact', 'account', 'marketing', 'mail'],
+ 'depends': ['crm', 'account', 'marketing', 'mail'],
'init_xml': [],
'update_xml': [
- 'security/event_security.xml',
'security/ir.model.access.csv',
'wizard/event_confirm_registration_view.xml',
'wizard/event_confirm_view.xml',
@@ -54,7 +53,11 @@ Note that:
'res_partner_view.xml',
],
'demo_xml': ['event_demo.xml'],
- 'test': ['test/test_event.yml'],
+ 'test': ['test/process/event_confirm2done.yml',
+ 'test/process/event_draft2cancel.yml',
+ 'test/process/partner_register2invoice.yml',
+ 'test/ui/duplicate_event.yml',
+ 'test/ui/demo_data.yml'],
'installable': True,
'active': False,
'certificate': '0083059161581',
diff --git a/addons/event/board_association_view.xml b/addons/event/board_association_view.xml
index 47c5e65f196..02d45f03dc1 100644
--- a/addons/event/board_association_view.xml
+++ b/addons/event/board_association_view.xml
@@ -40,7 +40,7 @@
form
-
+ 68.00
+ True
+ True500
@@ -74,9 +76,9 @@
24.00
+ 50350
- 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
+
+
+
+
diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml
index 6a057fe204d..31fb353c113 100644
--- a/addons/event/event_view.xml
+++ b/addons/event/event_view.xml
@@ -388,7 +388,7 @@
-
+
@@ -398,32 +398,6 @@
context="{'mail.compose.message.mode':'reply', 'message_id':active_id}"
icon="terp-mail-replied" type="action" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\n"
"Language-Team: Czech \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:58+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n"
+"X-Generator: Launchpad (build 14381)\n"
"X-Poedit-Language: Czech\n"
#. module: event
@@ -220,7 +220,7 @@ msgstr "Odpovědět"
#. module: event
#: model:ir.actions.act_window,name:event.open_board_associations_manager
msgid "Event Dashboard"
-msgstr "Nástěnka uválosti"
+msgstr "Nástěnka události"
#. module: event
#: model:event.event,name:event.event_1
diff --git a/addons/event/i18n/hr.po b/addons/event/i18n/hr.po
index 64f34cf313e..3ba8e52da06 100644
--- a/addons/event/i18n/hr.po
+++ b/addons/event/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-11 11:15+0000\n"
-"PO-Revision-Date: 2009-02-03 06:25+0000\n"
-"Last-Translator: <>\n"
+"PO-Revision-Date: 2011-12-19 17:09+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 04:58+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\n"
#. module: event
#: view:event.event:0
@@ -41,12 +41,12 @@ msgstr ""
#: view:event.registration:0
#: view:report.event.registration:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupiraj po..."
#. module: event
#: field:event.event,register_min:0
msgid "Minimum Registrations"
-msgstr ""
+msgstr "Min. registracija"
#. module: event
#: model:ir.model,name:event.model_event_confirm_registration
@@ -56,7 +56,7 @@ msgstr ""
#. module: event
#: field:event.registration.badge,title:0
msgid "Title"
-msgstr ""
+msgstr "Naslov"
#. module: event
#: field:event.event,mail_registr:0
@@ -66,7 +66,7 @@ msgstr ""
#. module: event
#: model:ir.actions.act_window,name:event.action_event_confirm_registration
msgid "Make Invoices"
-msgstr ""
+msgstr "Kreiraj fakture"
#. module: event
#: view:event.event:0
@@ -82,7 +82,7 @@ msgstr ""
#. module: event
#: view:partner.event.registration:0
msgid "_Close"
-msgstr ""
+msgstr "_Zatvori"
#. module: event
#: model:event.event,name:event.event_0
@@ -100,7 +100,7 @@ msgstr ""
#. module: event
#: selection:report.event.registration,month:0
msgid "March"
-msgstr ""
+msgstr "Ožujak"
#. module: event
#: field:event.event,mail_confirm:0
@@ -119,12 +119,12 @@ msgstr ""
#: view:report.event.registration:0
#: field:report.event.registration,company_id:0
msgid "Company"
-msgstr ""
+msgstr "Organizacija"
#. module: event
#: field:event.make.invoice,invoice_date:0
msgid "Invoice Date"
-msgstr ""
+msgstr "Datum računa"
#. module: event
#: code:addons/event/wizard/partner_event_registration.py:93
diff --git a/addons/event/report/report_event_registration.py b/addons/event/report/report_event_registration.py
index e78179b9b5e..3ef6ecb6e3d 100644
--- a/addons/event/report/report_event_registration.py
+++ b/addons/event/report/report_event_registration.py
@@ -100,6 +100,7 @@ class report_event_registration(osv.osv):
event_registration c ON (e.id=c.event_id)
LEFT JOIN
event_type t ON (e.type=t.id)
+ WHERE c.active = 'true'
GROUP BY
to_char(e.date_begin, 'YYYY'),
to_char(e.date_begin, 'MM'),
diff --git a/addons/event/security/event_security.xml b/addons/event/security/event_security.xml
deleted file mode 100644
index c3c70c94d93..00000000000
--- a/addons/event/security/event_security.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
- Marketing / User
-
-
-
- Marketing / Manager
-
-
-
-
- Sales / Manager
-
-
-
- Sales / User
-
-
-
-
diff --git a/addons/event/security/ir.model.access.csv b/addons/event/security/ir.model.access.csv
index 59651dfa007..f79d141f148 100644
--- a/addons/event/security/ir.model.access.csv
+++ b/addons/event/security/ir.model.access.csv
@@ -1,16 +1,15 @@
-"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_event_type","event.type","model_event_type","marketing.group_marketing_user",1,0,0,0
-"access_event_type_manager","event.type manager","model_event_type","marketing.group_marketing_manager",1,1,1,1
-"access_event_event","event.event","model_event_event","marketing.group_marketing_user",1,1,1,0
-"access_event_registration","event.registration","model_event_registration","marketing.group_marketing_user",1,1,1,0
-"access_report_event_registration","report.event.registration","model_report_event_registration","marketing.group_marketing_user",1,1,1,1
-"access_event_event_manager","event.event manager","model_event_event","marketing.group_marketing_manager",1,0,0,0
-"access_event_registration_manager","event.registration manager","model_event_registration","marketing.group_marketing_manager",1,0,0,0
-"access_crm_case_section_manager","crm.case.section manager","crm.model_crm_case_section","marketing.group_marketing_manager",1,1,1,1
-"access_product_product","product.product.product manager","product.model_product_product","marketing.group_marketing_manager",1,1,1,1
-"access_report_event_registration","report.event.registration","model_report_event_registration","marketing.group_marketing_manager",1,1,1,1
-"access_event_registration_badge_manager","event.registration.badge manager","model_event_registration_badge","marketing.group_marketing_manager",1,1,1,1
-"access_event_event_sale_salesman","event.event.sale","model_event_event","base.group_sale_salesman",1,0,0,0
-"access_account_account_invoice_manager","account.account.invoice","account.model_account_invoice","marketing.group_marketing_manager",1,0,0,0
-"access_event_registration_badge","event.registration.badge","model_event_registration_badge","marketing.group_marketing_user",1,0,0,0
-"access_event_registration_sale_user","event.registration.sale.user","model_event_registration","base.group_sale_salesman",1,0,0,0
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_event_type,event.type,model_event_type,marketing.group_marketing_user,1,0,0,0
+access_event_type_manager,event.type manager,model_event_type,marketing.group_marketing_manager,1,1,1,1
+access_event_event,event.event,model_event_event,marketing.group_marketing_user,1,1,1,0
+access_event_registration,event.registration,model_event_registration,marketing.group_marketing_user,1,1,1,0
+access_report_event_registration,report.event.registration,model_report_event_registration,marketing.group_marketing_user,1,1,1,1
+access_event_event_manager,event.event manager,model_event_event,marketing.group_marketing_manager,1,0,0,0
+access_event_registration_manager,event.registration manager,model_event_registration,marketing.group_marketing_manager,1,0,0,0
+access_crm_case_section_manager,crm.case.section manager,crm.model_crm_case_section,marketing.group_marketing_manager,1,1,1,1
+access_product_product,product.product.product manager,product.model_product_product,marketing.group_marketing_manager,1,1,1,1
+access_event_registration_badge_manager,event.registration.badge manager,model_event_registration_badge,marketing.group_marketing_manager,1,1,1,1
+access_event_event_sale_salesman,event.event.sale,model_event_event,base.group_sale_salesman,1,0,0,0
+access_account_account_invoice_manager,account.account.invoice,account.model_account_invoice,marketing.group_marketing_manager,1,0,0,0
+access_event_registration_badge,event.registration.badge,model_event_registration_badge,marketing.group_marketing_user,1,0,0,0
+access_event_registration_sale_user,event.registration.sale.user,model_event_registration,base.group_sale_salesman,1,0,0,0
diff --git a/addons/event/test/process/event_confirm2done.yml b/addons/event/test/process/event_confirm2done.yml
new file mode 100644
index 00000000000..4d5542896f7
--- /dev/null
+++ b/addons/event/test/process/event_confirm2done.yml
@@ -0,0 +1,22 @@
+-
+ I want to organize one conference event on "OpenERP Business", Customer subscribe/join
+ into "Conference on OpenERP Business" with 6 tickets, first I confim this event.
+-
+ !python {model: event.event}: |
+ self.button_confirm(cr, uid, [ref("event_0")])
+-
+ I Check that Event is "confirmed", and Its automatically sending mail to registered
+ partner which joined to this event.
+-
+ !assert {model: event.event, id: event_0}:
+ - state == 'confirm', "Event should be confirmed."
+-
+ After completed event, I close this event.
+-
+ !python {model: event.event}: |
+ self.button_done(cr, uid, [ref("event_0")])
+-
+ Check that conference is in "close" state.
+-
+ !assert {model: event.event, id: event_0}:
+ - state == 'done', "Event should be Closed."
diff --git a/addons/event/test/process/event_draft2cancel.yml b/addons/event/test/process/event_draft2cancel.yml
new file mode 100644
index 00000000000..48cb102f3e8
--- /dev/null
+++ b/addons/event/test/process/event_draft2cancel.yml
@@ -0,0 +1,22 @@
+-
+ I want to organize event and its need Minimum 50 Registrations to confirm/start
+ this Event, but Only 10 registration confirm for this event, I confirm this event.
+-
+ !python {model: event.event}: |
+ self.button_confirm(cr, uid, [ref("event_1")])
+-
+ Now I cheked for event and It should not be confirm because registrations for
+ this event is below limit.
+-
+ !assert {model: event.event, id: event_1}:
+ - state == 'confirm', "Event should be confirm."
+-
+ So I cancel this Event
+-
+ !python {model: event.event}: |
+ self.button_cancel(cr, uid, [ref("event_1")])
+-
+ I check event should be cancel.
+-
+ !assert {model: event.event, id: event_1}:
+ - state == 'cancel', "Event should be cancel"
diff --git a/addons/event/test/process/partner_register2invoice.yml b/addons/event/test/process/partner_register2invoice.yml
new file mode 100644
index 00000000000..f8748afee2f
--- /dev/null
+++ b/addons/event/test/process/partner_register2invoice.yml
@@ -0,0 +1,62 @@
+-
+ I want to organize one conference event, First I registered partner for event
+ with 5 tickets.
+-
+ !python {model: partner.event.registration}: |
+ context.update({'active_model': 'res.partner', 'active_ids': [ref("base.res_partner_ericdubois0")], 'active_id': ref("base.res_partner_ericdubois0")})
+ register = self.create(cr, uid, {'event_id': ref('event_1'),'nb_register': 5}, context=context)
+ self.open_registration(cr, uid, [register], context=context)
+-
+ Now I check for registration created base on partner.
+-
+ !python {model: event.registration}: |
+ ids = self.search(cr, uid, [('partner_id','=',ref("base.res_partner_ericdubois0")), ('event_id', '=', ref('event_1'))])
+ assert ids, "Registration should be create here."
+-
+ I confirm registration process.
+-
+ !python {model: event.registration}: |
+ self.check_confirm(cr, uid, [ref("reg_1_1")])
+-
+ I Check that Registration is confirm.
+-
+ !assert {model: event.registration, id: reg_1_1}:
+ - state == 'open', "Registration should be open here."
+-
+ After confirmation of partner, I create invoice base on costing of event.
+-
+ !python {model: event.registration}: |
+ self.action_invoice_create(cr, uid, [ref("reg_1_1")])
+-
+ Now I Check for Invoice is created and Registration should be closed after invoice generated.
+-
+ !python {model: event.registration}: |
+ record = self.browse(cr, uid, [ref("reg_1_1")])[0]
+ assert record.invoice_id, "Invoice should be generated"
+ assert record.invoice_id.state == "draft", "Invoice state should be draft"
+ assert record.invoice_id.partner_id == record.partner_id, "Customer is not correspond with registration"
+ assert record.invoice_id.type == 'out_invoice', "Invoice type is not correct"
+ assert record.invoice_id.origin == record.event_product, "Invoice origin is not correct"
+ assert record.invoice_id.amount_total == record.price_subtotal, "Invoice amount is not correct"
+ assert record.state == "done", "Registration should be closed after invoice generated"
+-
+ Now I check for same partner registration for two diffrent event and I create group invoices for same partner.
+-
+ !python {model: event.make.invoice}: |
+ context.update({'active_model': 'event.make.invoice', 'active_ids': [ref("reg_0_1"), ref("reg_0_2")], 'active_id': ref("reg_0_1")})
+ invoice = self.create(cr, uid, {'grouped': True}, context=context)
+ self.make_invoice(cr, uid, [invoice], context=context)
+-
+ Now I Check for group Invoice is created with total amount of both registration
+ and Registration should be closed after invoice generated.
+-
+ !python {model: event.registration}: |
+ reg_data_1 = self.browse(cr, uid, [ref("reg_0_1")])[0]
+ reg_data_2 = self.browse(cr, uid, [ref("reg_0_2")])[0]
+ assert reg_data_1.invoice_id, "Invoice should be generated"
+ assert reg_data_1.invoice_id.state == "draft", "Invoice state should be draft"
+ assert reg_data_1.invoice_id.partner_id == reg_data_1.partner_id, "Customer is not correspond with registration"
+ assert reg_data_1.invoice_id.type == 'out_invoice', "Invoice type is not correct"
+ assert reg_data_1.invoice_id.origin == reg_data_1.event_product, "Invoice origin is not correct"
+ assert reg_data_1.invoice_id.amount_total == (reg_data_1.price_subtotal + reg_data_2.price_subtotal), "Invoice total amount is not correct"
+ assert reg_data_1.state == "done", "Registration should be closed after invoice generated"
diff --git a/addons/event/test/test_event.yml b/addons/event/test/test_event.yml
deleted file mode 100644
index 5e35d79cab2..00000000000
--- a/addons/event/test/test_event.yml
+++ /dev/null
@@ -1,172 +0,0 @@
-- |
- In order to test the "Event Organisation" in Association system.
-- |
- I want to organize one conference event on "OpenERP Business".
-- |
- I'm creating new product "Conference Ticket" to specify registration Cost of conference.
--
- !record {model: product.product, id: product_product_ticketforconcert0}:
- categ_id: product.cat1
- list_price: 68.0
- name: Conference Ticket
-- |
- I'm creating Event type "Conference".
--
- !record {model: event.type, id: event_type_conference0}:
- name: Conferences
-- |
- I'm creating one Event "Conference on OpenERP Business" which will last from 1st of this month to 10th of this month.
--
- !record {model: event.event, id: event_event_conference0}:
- date_begin: !eval time.strftime('%Y-%m-01')
- date_end: !eval time.strftime('%Y-%m-10')
- name: Conference on OpenERP Business.
- product_id: 'product_product_ticketforconcert0'
- type: 'event_type_conference0'
- reply_to: 'info@customer.com'
-- |
- Check that the new conference event is "Draft" or not.
--
- !assert {model: event.event, id: event_event_conference0}:
- - state == 'draft', "Event should be in draft by default when first time created"
-- |
- Need Minimum 10 Registrations to confirm/start this Conference Event and does not allowed more than 100 Registrations.
-- |
- So I set Minimum and Maximum Registrations limit.
--
- !python {model: event.event}: |
- self.write(cr, uid, [ref('event_event_conference0')], {'register_max': 100, 'register_min': 10})
-- |
- I'm doing to confirm that conference event.
--
- !python {model: event.event}: |
- self.button_confirm(cr, uid, [ref("event_event_conference0")])
-- |
- But this conference event need minimum 10 Confirmed Registrations. so Check that Event is not "confirmed".
--
- !assert {model: event.event, id: event_event_conference0}:
- - state != 'confirm', "Event should not confirmed if minimum registrations does not reached"
-- |
- "Mark Johnson" want to subscribe/join into "Conference on OpenERP Business" with 10 tickets.
-- |
- I'm creating new partner "Mark Johnson" with his email "info@mycustomer.com".
--
- !record {model: res.partner, id: res_partner_markjohnson0}:
- address:
- - city: Bruxelles
- country_id: base.be
- job_ids:
- - contact_id: base_contact.res_partner_contact_jacot0
- function: CTO
- name: base.res_partner_maxtor
- sequence_partner: 0.0
- state: current
- street: Rue des Palais 51, bte 33
- type: default
- zip: '1000'
- email: 'info@mycustomer.com'
- name: Mark Johnson
-
-- |
- I'm creating Registration for "Mark Johnson" on "Conference on OpenERP Business" with 10 tickets.
--
- !record {model: event.registration, id: event_registration_registrationjacot0}:
- contact_id: base_contact.res_partner_contact_jacot0
- event_id: event.event_event_conference0
- partner_id: event.res_partner_markjohnson0
- partner_invoice_id: event.res_partner_markjohnson0
- event_product: Conference Ticket
- unit_price: 68.0
- nb_register: 10
-- |
- I'm going to Open that Registration.
--
- !python {model: event.registration}: |
- self.check_confirm(cr, uid, [ref("event_registration_registrationjacot0")])
-- |
- Check that Registration is in "Open" state or not.
--
- !assert {model: event.registration, id: event_registration_registrationjacot0}:
- - state == 'open', "Registration should be open here."
-
-- |
- I'm again trying to confirm that conference event.
--
- !python {model: event.event}: |
- self.button_confirm(cr, uid, [ref("event_event_conference0")])
-
-- |
- Now Minimum requirement of Registration is fulfil. so Check that Event is "confirmed" or not.
--
- !assert {model: event.event, id: event_event_conference0}:
- - state == 'confirm', "Event should be confirmed here."
-
-- |
- I'm creating invoice of Registration of "Mark Johnson" on "Conference on OpenERP Business".
--
- !python {model: event.registration}: |
- self.action_invoice_create(cr, uid, [ref("event_registration_registrationjacot0")])
-
-- |
- Check Invoice of Registration of "Mark Johnson" is created or not.
--
- !assert {model: event.registration, id: event_registration_registrationjacot0}:
- - invoice_id != False, "Invoice should be generated"
-
-- |
- Check Registration of "Mark Johnson" is closed or not after invoice generated.
--
- !assert {model: event.registration, id: event_registration_registrationjacot0}:
- - state != 'done', "Registration should be closed after invoice generated"
-
-- |
- Now "Mark Johnson" want to another registration on "Conference on OpenERP Business" with 120 tickets.
-- |
- I'm creating new registration for "Mark Johnson" with 100 tickets.
--
- !record {model: event.registration, id: event_registration_registrationzen0}:
- event_id: event.event_event_conference0
- partner_id: event.res_partner_markjohnson0
- partner_invoice_id: event.res_partner_markjohnson0
- event_product: Conference Ticket
- unit_price: 68.0
- nb_register: 100
-
-- |
- I'm going to open "Mark Johnson" registration.
--
- !python {model: event.registration}: |
- self.check_confirm(cr, uid, [ref("event_registration_registrationzen0")])
-
-- |
- But conference event does not allow more than 100 Registrations. so Check that registration is not in "open" state.
--
- !assert {model: event.registration, id: event_registration_registrationzen0}:
- - state == 'draft', "Registration should be in draft by default."
-- |
- Now I'm modifying number of tickets of "Mark Johnson"'s registration with 90 tickets.
--
- !python {model: event.registration}: |
- self.write(cr, uid, [ref("event_registration_registrationzen0")], {'nb_register': 90})
-- |
- I'm again try to open "Mark Johnson" registration.
--
- !python {model: event.registration}: |
- self.check_confirm(cr, uid, [ref("event_registration_registrationzen0")])
-
-- |
- Check that registration "open" or not.
--
- !assert {model: event.registration, id: event_registration_registrationzen0}:
- - state == 'open', "Registration should be open here."
-- |
- I'm closing "Conference on OpenERP Business" Conference event
--
- !python {model: event.event}: |
- self.button_done(cr, uid, [ref("event_event_conference0")])
-- |
- Check that conference is in "close" state or not.
--
- !assert {model: event.event, id: event_event_conference0}:
- - state == 'done', "Registration should be Closed here."
-
diff --git a/addons/event/test/ui/demo_data.yml b/addons/event/test/ui/demo_data.yml
new file mode 100644
index 00000000000..2f48cf1a90b
--- /dev/null
+++ b/addons/event/test/ui/demo_data.yml
@@ -0,0 +1,32 @@
+-
+ I create event registation record to call event onchange and partner onchange.
+-
+ !record {model: event.registration, id: reg_0_1}:
+ event_id: event_0
+ partner_id: base.res_partner_asus
+ name: 'Ticket for Concert'
+-
+ I create event record to call product onchange and team onchange.
+-
+ !record {model: event.event, id: event_2}:
+ product_id: event_product_2
+ section_id: crm.section_sales_department
+ name: 'Conference on ERP Buisness'
+-
+ I call onchange event from event registration wizard.
+-
+ !python {model: partner.event.registration}: |
+ context.update({'active_id': ref("base.res_partner_ericdubois0")})
+ self.onchange_event_id(cr, uid, 1, ref("event_1"), context=context)
+-
+ I confirm event from wizard.
+-
+ !python {model: event.confirm}: |
+ context.update({'event_ids': [ref("event_2")]})
+ id = self.create(cr, uid , {})
+ self.confirm(cr, uid, [id], context=context)
+-
+ I call close registration process.
+-
+ !python {model: event.registration}: |
+ self.button_reg_close(cr, uid, [ref("reg_0_2")])
diff --git a/addons/event/test/ui/duplicate_event.yml b/addons/event/test/ui/duplicate_event.yml
new file mode 100644
index 00000000000..c1287353c67
--- /dev/null
+++ b/addons/event/test/ui/duplicate_event.yml
@@ -0,0 +1,16 @@
+-
+ Copy of event.
+-
+ !python {model: event.event}: |
+ try:
+ self.copy(cr, uid, ref("event_2"))
+ except:
+ pass
+-
+ Copy of event registarion.
+-
+ !python {model: event.registration}: |
+ try:
+ self.copy(cr, uid, ref("reg_1_1"))
+ except:
+ pass
\ No newline at end of file
diff --git a/addons/event/wizard/partner_event_registration.py b/addons/event/wizard/partner_event_registration.py
index b8521e404e2..f788f49ebdb 100644
--- a/addons/event/wizard/partner_event_registration.py
+++ b/addons/event/wizard/partner_event_registration.py
@@ -34,8 +34,8 @@ class partner_event_registration(osv.osv_memory):
'event_id': fields.many2one('event.event', 'Event'),
'event_type': fields.many2one('event.type', 'Type', readonly=True),
'unit_price': fields.float('Registration Cost', digits_compute=dp.get_precision('Sale Price')),
- 'start_date': fields.datetime('Start date', required=True, help="Beginning Date of Event", readonly=True),
- 'end_date': fields.datetime('Closing date', required=True, help="Closing Date of Event", readonly=True),
+ 'start_date': fields.datetime('Start date', help="Beginning Date of Event", readonly=True),
+ 'end_date': fields.datetime('Closing date', help="Closing Date of Event", readonly=True),
'nb_register': fields.integer('Number of Registration'),
}
_defaults = {
@@ -48,21 +48,16 @@ class partner_event_registration(osv.osv_memory):
"""
value = {}
res_obj = self.pool.get('res.partner')
- job_obj = self.pool.get('res.partner.job')
+ addr_obj = self.pool.get('res.partner.address')
reg_obj = self.pool.get('event.registration')
mod_obj = self.pool.get('ir.model.data')
record_ids = context and context.get('active_ids', []) or []
addr = res_obj.address_get(cr, uid, record_ids)
- contact_id = False
email = False
- if addr.has_key('default'):
- job_ids = job_obj.search(cr, uid, [('address_id', '=', addr['default'])], context=context)
- if job_ids:
- contact = job_obj.browse(cr, uid, job_ids[0], context=context)
- if contact:
- contact_id = contact.contact_id.id
- email = contact.email
+ contact_id = addr.get('default', False)
+ if contact_id:
+ email = addr_obj.browse(cr, uid, contact_id, context=context).email
result = mod_obj.get_object_reference(cr, uid, 'event', 'view_registration_search')
res = result and result[1] or False
@@ -143,4 +138,4 @@ class partner_event_registration(osv.osv_memory):
partner_event_registration()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/event_project/__openerp__.py b/addons/event_project/__openerp__.py
index e8d110bc4f8..359a5a70ae3 100644
--- a/addons/event_project/__openerp__.py
+++ b/addons/event_project/__openerp__.py
@@ -20,9 +20,9 @@
##############################################################################
{
- 'name': 'Event Project - Create Retro-Planning to manage your Events',
+ 'name': 'Retro-Planning on Events',
'version': '0.1',
- 'category': 'Hidden/Link',
+ 'category': 'Tools',
'complexity': "easy",
'description': """
Organization and management of events.
diff --git a/addons/event_project/i18n/hr.po b/addons/event_project/i18n/hr.po
index 479c316fdd2..124993edb35 100644
--- a/addons/event_project/i18n/hr.po
+++ b/addons/event_project/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-09-18 12:58+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-12-19 17:11+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:35+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\n"
#. module: event_project
#: model:ir.model,name:event_project.model_event_project
@@ -24,12 +24,12 @@ msgstr ""
#. module: event_project
#: field:event.project,date:0
msgid "Date End"
-msgstr ""
+msgstr "Datum završetka"
#. module: event_project
#: view:event.project:0
msgid "Ok"
-msgstr ""
+msgstr "U redu"
#. module: event_project
#: model:ir.module.module,description:event_project.module_meta_information
@@ -62,18 +62,18 @@ msgstr ""
#. module: event_project
#: field:event.event,project_id:0
msgid "Project"
-msgstr ""
+msgstr "Projekt"
#. module: event_project
#: view:event.event:0
#: model:ir.actions.act_window,name:event_project.act_event_task
msgid "Tasks"
-msgstr ""
+msgstr "Zadaci"
#. module: event_project
#: view:event.event:0
msgid "All tasks"
-msgstr ""
+msgstr "Svi zadaci"
#. module: event_project
#: model:ir.module.module,shortdesc:event_project.module_meta_information
@@ -98,12 +98,12 @@ msgstr ""
#. module: event_project
#: view:event.project:0
msgid "Close"
-msgstr ""
+msgstr "Zatvori"
#. module: event_project
#: field:event.project,date_start:0
msgid "Date Start"
-msgstr ""
+msgstr "Datum početka"
#. module: event_project
#: view:event.event:0
@@ -113,12 +113,12 @@ msgstr ""
#. module: event_project
#: model:ir.model,name:event_project.model_event_event
msgid "Event"
-msgstr ""
+msgstr "Event"
#. module: event_project
#: view:event.event:0
msgid "Tasks management"
-msgstr ""
+msgstr "Upravljanje zadacima"
#, python-format
#~ msgid "Error !"
diff --git a/addons/fetchmail/__init__.py b/addons/fetchmail/__init__.py
index f9c384ce103..934df9846dd 100644
--- a/addons/fetchmail/__init__.py
+++ b/addons/fetchmail/__init__.py
@@ -21,3 +21,5 @@
##############################################################################
import fetchmail
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail/__openerp__.py b/addons/fetchmail/__openerp__.py
index ae082aacacd..99e3e02a909 100644
--- a/addons/fetchmail/__openerp__.py
+++ b/addons/fetchmail/__openerp__.py
@@ -21,11 +21,11 @@
##############################################################################
{
- "name" : "Fetch Emails",
+ "name" : "Email Gateway",
"version" : "1.0",
"depends" : ["base", 'mail'],
"author" : "OpenERP SA",
- "category": 'Customer Relationship Management',
+ "category": 'Tools',
"description": """
Retrieve incoming email on POP / IMAP servers
=============================================
@@ -74,3 +74,5 @@ mail.
'certificate' : '00692978332890137453',
'images': ['images/1_email_servers.jpeg'],
}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail/fetchmail_installer_view.xml b/addons/fetchmail/fetchmail_installer_view.xml
index b5bd7df80ca..918b7ecd430 100644
--- a/addons/fetchmail/fetchmail_installer_view.xml
+++ b/addons/fetchmail/fetchmail_installer_view.xml
@@ -1,19 +1,5 @@
-
- Setup Incoming Mail Servers
- ir.actions.act_window
- fetchmail.server
- form
- tree,form
-
- You can connect OpenERP to your incoming mail server so that documents (leads, tasks, issues, etc) are synchronized automatically with your incoming emails.
-
-
-
-
- 4
-
diff --git a/addons/fetchmail/fetchmail_view.xml b/addons/fetchmail/fetchmail_view.xml
index 4cd182c0818..0b9720a7503 100644
--- a/addons/fetchmail/fetchmail_view.xml
+++ b/addons/fetchmail/fetchmail_view.xml
@@ -32,7 +32,7 @@
-
+
@@ -132,7 +132,7 @@
diff --git a/addons/fetchmail/i18n/hr.po b/addons/fetchmail/i18n/hr.po
new file mode 100644
index 00000000000..8cba2911ee3
--- /dev/null
+++ b/addons/fetchmail/i18n/hr.po
@@ -0,0 +1,305 @@
+# 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:15+0000\n"
+"PO-Revision-Date: 2011-12-19 17:13+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-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\n"
+
+#. module: fetchmail
+#: constraint:email.server:0
+msgid ""
+"Warning! Record for selected Model can not be created\n"
+"Please choose valid Model"
+msgstr ""
+
+#. module: fetchmail
+#: selection:email.server,state:0
+msgid "Confirmed"
+msgstr "Potvrđeno"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Confirm"
+msgstr "Potvrdi"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Group By..."
+msgstr "Grupiraj po..."
+
+#. module: fetchmail
+#: view:email.server:0
+#: field:email.server,state:0
+msgid "State"
+msgstr "Stanje"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "POP"
+msgstr "POP"
+
+#. module: fetchmail
+#: selection:email.server,state:0
+msgid "Not Confirmed"
+msgstr "Nepotvrđeno"
+
+#. module: fetchmail
+#: field:email.server,user:0
+msgid "User Name"
+msgstr "Korisničko ime"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Type"
+msgstr "Vrsta"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "POP/IMAP Servers"
+msgstr "POP/IMAP Servers"
+
+#. module: fetchmail
+#: model:ir.module.module,shortdesc:fetchmail.module_meta_information
+msgid "Fetchmail Server"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+#: field:email.server,note:0
+msgid "Description"
+msgstr "Opis"
+
+#. module: fetchmail
+#: help:email.server,object_id:0
+msgid ""
+"OpenObject Model. Generates a record of this model.\n"
+"Select Object with message_new attrbutes."
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,attach:0
+msgid "Add Attachments ?"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "# of emails"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.actions.act_window,name:fetchmail.act_server_history
+msgid "Email History"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,user_id:0
+msgid "User"
+msgstr "Korisnik"
+
+#. module: fetchmail
+#: field:email.server,date:0
+msgid "Date"
+msgstr "Datum"
+
+#. module: fetchmail
+#: selection:email.server,state:0
+msgid "Waiting for Verification"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,password:0
+msgid "Password"
+msgstr "Lozinka"
+
+#. module: fetchmail
+#: model:ir.actions.act_window,name:fetchmail.act_server_history
+#: view:mailgate.message:0
+msgid "Emails"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Search Email Servers"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Server & Login"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Auto Reply?"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,name:0
+msgid "Name"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.model,name:fetchmail.model_mailgate_message
+msgid "Mailgateway Message"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.actions.act_window,name:fetchmail.action_email_server_tree
+msgid "POP Servers"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Set to Draft"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,message_ids:0
+#: model:ir.actions.act_window,name:fetchmail.action_view_mail_message_emails
+msgid "Messages"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.ui.menu,name:fetchmail.menu_action_fetchmail_server_tree
+msgid "Fetchmail Services"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,server:0
+msgid "Server"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,active:0
+msgid "Active"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Process Parameter"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,is_ssl:0
+msgid "SSL ?"
+msgstr ""
+
+#. module: fetchmail
+#: selection:email.server,type:0
+#: selection:mailgate.message,server_type:0
+msgid "IMAP Server"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,object_id:0
+msgid "Model"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "IMAP"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+#: model:ir.model,name:fetchmail.model_email_server
+msgid "POP/IMAP Server"
+msgstr ""
+
+#. module: fetchmail
+#: constraint:email.server:0
+msgid "Warning! Can't have duplicate server configuration!"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,type:0
+#: field:mailgate.message,server_type:0
+msgid "Server Type"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Login Information"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Server Information"
+msgstr ""
+
+#. module: fetchmail
+#: help:email.server,attach:0
+msgid "Fetches mail with attachments if true."
+msgstr ""
+
+#. module: fetchmail
+#: selection:email.server,type:0
+#: selection:mailgate.message,server_type:0
+msgid "POP Server"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,port:0
+msgid "Port"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.module.module,description:fetchmail.module_meta_information
+msgid ""
+"Fetchmail: \n"
+" * Fetch email from Pop / IMAP server\n"
+" * Support SSL\n"
+" * Integrated with all Modules\n"
+" * Automatic Email Receive\n"
+" * Email based Records (Add, Update)\n"
+" "
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "SSL"
+msgstr ""
+
+#. module: fetchmail
+#: help:email.server,action_id:0
+msgid ""
+"An Email Server Action. It will be run whenever an e-mail is fetched from "
+"server."
+msgstr ""
+
+#. module: fetchmail
+#: help:email.server,priority:0
+msgid "Priority between 0 to 10, select define the order of Processing"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,action_id:0
+msgid "Email Server Action"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,priority:0
+msgid "Server Priority"
+msgstr ""
+
+#. module: fetchmail
+#: view:mailgate.message:0
+#: field:mailgate.message,server_id:0
+msgid "Mail Server"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Fetch Emails"
+msgstr ""
diff --git a/addons/fetchmail/security/ir.model.access.csv b/addons/fetchmail/security/ir.model.access.csv
index bc5572de82d..7deea6eb9f4 100644
--- a/addons/fetchmail/security/ir.model.access.csv
+++ b/addons/fetchmail/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_fetchmail_server","fetchmail.server","model_fetchmail_server",,1,0,0,0
-"access_fetchmail_server","fetchmail.server","model_fetchmail_server","base.group_system",1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_fetchmail_server,fetchmail.server,model_fetchmail_server,,1,0,0,0
+access_fetchmail_server,fetchmail.server,model_fetchmail_server,base.group_system,1,1,1,1
diff --git a/addons/fetchmail_crm/__init__.py b/addons/fetchmail_crm/__init__.py
index 5831b3284bb..b5b36afb7e9 100644
--- a/addons/fetchmail_crm/__init__.py
+++ b/addons/fetchmail_crm/__init__.py
@@ -18,3 +18,5 @@
# along with this program. If not, see .
#
##############################################################################
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_crm/__openerp__.py b/addons/fetchmail_crm/__openerp__.py
index 66cff346d0a..5b02f4194ab 100644
--- a/addons/fetchmail_crm/__openerp__.py
+++ b/addons/fetchmail_crm/__openerp__.py
@@ -20,11 +20,11 @@
##############################################################################
{
- "name" : "Fetchmail for CRM",
+ "name" : "eMail Gateway for Leads",
"version" : "1.0",
"depends" : ["fetchmail", "crm"],
"author" : "OpenERP SA",
- "category": 'Hidden/Link',
+ "category": 'Hidden/Links',
"description": """
""",
'website': 'http://www.openerp.com',
@@ -37,3 +37,5 @@
'installable': True,
'active': False,
}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_crm_claim/__init__.py b/addons/fetchmail_crm_claim/__init__.py
index 5831b3284bb..b5b36afb7e9 100644
--- a/addons/fetchmail_crm_claim/__init__.py
+++ b/addons/fetchmail_crm_claim/__init__.py
@@ -18,3 +18,5 @@
# along with this program. If not, see .
#
##############################################################################
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_crm_claim/__openerp__.py b/addons/fetchmail_crm_claim/__openerp__.py
index cfe6a675d20..d6d56ecf331 100644
--- a/addons/fetchmail_crm_claim/__openerp__.py
+++ b/addons/fetchmail_crm_claim/__openerp__.py
@@ -20,11 +20,11 @@
##############################################################################
{
- "name" : "Fetchmail for CRM Claim",
+ "name" : "eMail Gateway for CRM Claim",
"version" : "1.0",
"depends" : ["fetchmail", "crm_claim"],
"author" : "OpenERP SA",
- "category": 'Hidden/Link',
+ 'category': 'Hidden/Links',
"description": """
""",
'website': 'http://www.openerp.com',
@@ -37,3 +37,5 @@
'installable': True,
'active': False,
}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_hr_recruitment/__init__.py b/addons/fetchmail_hr_recruitment/__init__.py
index 5831b3284bb..b5b36afb7e9 100644
--- a/addons/fetchmail_hr_recruitment/__init__.py
+++ b/addons/fetchmail_hr_recruitment/__init__.py
@@ -18,3 +18,5 @@
# along with this program. If not, see .
#
##############################################################################
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_hr_recruitment/__openerp__.py b/addons/fetchmail_hr_recruitment/__openerp__.py
index 75531097645..3ce76226888 100644
--- a/addons/fetchmail_hr_recruitment/__openerp__.py
+++ b/addons/fetchmail_hr_recruitment/__openerp__.py
@@ -20,11 +20,11 @@
##############################################################################
{
- "name" : "Fetchmail for Applicants",
+ "name" : "eMail Gateway for Applicants",
"version" : "1.0",
"depends" : ["fetchmail", "hr_recruitment"],
"author" : "OpenERP SA",
- "category": 'Hidden/Link',
+ "category": "Hidden/Links",
"description": """
""",
'website': 'http://www.openerp.com',
@@ -37,3 +37,5 @@
'installable': True,
'active': False,
}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_project_issue/__init__.py b/addons/fetchmail_project_issue/__init__.py
index 5831b3284bb..b5b36afb7e9 100644
--- a/addons/fetchmail_project_issue/__init__.py
+++ b/addons/fetchmail_project_issue/__init__.py
@@ -18,3 +18,5 @@
# along with this program. If not, see .
#
##############################################################################
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/fetchmail_project_issue/__openerp__.py b/addons/fetchmail_project_issue/__openerp__.py
index 1165949108a..d4c4b4bbe70 100644
--- a/addons/fetchmail_project_issue/__openerp__.py
+++ b/addons/fetchmail_project_issue/__openerp__.py
@@ -20,11 +20,11 @@
##############################################################################
{
- "name" : "Fetchmail for Project Issue",
+ "name" : "eMail Gateway for Project Issues",
"version" : "1.0",
"depends" : ["fetchmail", "project_issue"],
"author" : "OpenERP SA",
- "category": 'Hidden/Link',
+ "category": "Hidden/Links",
"description": """
""",
'website': 'http://www.openerp.com',
@@ -37,3 +37,5 @@
'installable': True,
'active': False,
}
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/google_base_account/__openerp__.py b/addons/google_base_account/__openerp__.py
index 19afc18bf09..ec204f0f77c 100644
--- a/addons/google_base_account/__openerp__.py
+++ b/addons/google_base_account/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Google user',
+ 'name': 'Google Users',
'version': '1.0',
- 'category': 'Hidden',
+ 'category': 'Tools',
'description': """The module adds google user in res user""",
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
@@ -36,6 +36,5 @@
'demo_xml': [],
'installable': True,
'active': False,
- 'certificate': '',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/google_map/__openerp__.py b/addons/google_map/__openerp__.py
index 48c393409e4..f2f9ff4e668 100644
--- a/addons/google_map/__openerp__.py
+++ b/addons/google_map/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Google Map',
+ 'name': 'Google Maps on Customers',
'version': '1.0',
- 'category': 'Hidden',
+ 'category': 'Customer Relationship Management',
'description': """
The module adds Google Map field in partner address.
====================================================
diff --git a/addons/hr/__openerp__.py b/addons/hr/__openerp__.py
index 900c689dfbf..254bb2c28bf 100644
--- a/addons/hr/__openerp__.py
+++ b/addons/hr/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name": "Human Resources",
+ "name": "Employee Address Book",
"version": "1.1",
"author": "OpenERP SA",
"category": "Human Resources",
@@ -54,7 +54,10 @@ You can manage:
'hr_demo.xml',
'hr_department_demo.xml',
],
- 'test': ['test/test_hr.yml'],
+ 'test': [
+ 'test/open2recruit2close_job.yml',
+ 'test/hr_demo.yml',
+ ],
'installable': True,
'active': False,
'certificate': '0086710558965',
diff --git a/addons/hr/hr.py b/addons/hr/hr.py
index f641a425e18..e903f03d974 100644
--- a/addons/hr/hr.py
+++ b/addons/hr/hr.py
@@ -79,12 +79,28 @@ class hr_job(osv.osv):
}
return res
+ def _get_job_position(self, cr, uid, ids, context=None):
+ res = []
+ for employee in self.pool.get('hr.employee').browse(cr, uid, ids, context=context):
+ if employee.job_id:
+ res.append(employee.job_id.id)
+ return res
+
_name = "hr.job"
_description = "Job Description"
_columns = {
'name': fields.char('Job Name', size=128, required=True, select=True),
- 'expected_employees': fields.function(_no_of_employee, string='Expected Employees', help='Required number of Employees in total for that job.', multi="no_of_employee", store=True),
- 'no_of_employee': fields.function(_no_of_employee, string="No of Employee", help='Number of employee with that job.', multi="no_of_employee", store=True),
+ 'expected_employees': fields.function(_no_of_employee, string='Expected Employees', help='Required number of employees in total for that job.',
+ store = {
+ 'hr.job': (lambda self,cr,uid,ids,c=None: ids, ['no_of_recruitment'], 10),
+ 'hr.employee': (_get_job_position, ['job_id'], 10),
+ },
+ multi='no_of_employee'),
+ 'no_of_employee': fields.function(_no_of_employee, string="Number of Employees", help='Number of employees with that job.',
+ store = {
+ 'hr.employee': (_get_job_position, ['job_id'], 10),
+ },
+ multi='no_of_employee'),
'no_of_recruitment': fields.float('Expected in Recruitment'),
'employee_ids': fields.one2many('hr.employee', 'job_id', 'Employees'),
'description': fields.text('Job Description'),
@@ -98,7 +114,7 @@ class hr_job(osv.osv):
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'hr.job', context=c),
'state': 'open',
}
-
+
_sql_constraints = [
('name_company_uniq', 'unique(name, company_id)', 'The name of the job position must be unique per company!'),
]
@@ -242,7 +258,7 @@ class res_users(osv.osv):
def create(self, cr, uid, data, context=None):
user_id = super(res_users, self).create(cr, uid, data, context=context)
-
+
# add shortcut unless 'noshortcut' is True in context
if not(context and context.get('noshortcut', False)):
data_obj = self.pool.get('ir.model.data')
@@ -254,7 +270,7 @@ class res_users(osv.osv):
except:
# Tolerate a missing shortcut. See product/product.py for similar code.
logging.getLogger('orm').debug('Skipped meetings shortcut for user "%s"', data.get('name','
- Point of Sale
+ PoS Ordersir.actions.act_windowpos.orderform
-
+ tree,form
+ []
@@ -154,10 +155,10 @@
-
+
-
+ Sale lines
@@ -580,6 +581,22 @@
[('date_order','like',time.strftime('%Y-%m'))]
+
+ product.normal.pos.form.inherit
+ product.product
+ form
+
+
+
+
+
+
+
+
+
+
+
+
product.normal.form.inheritproduct.product
@@ -595,72 +612,43 @@
+
+ pos.category.form
+ pos.category
+ form
+
+
+
+
+
+
+
+
+
+ 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
-
-
diff --git a/addons/point_of_sale/report/pos_order_report_view.xml b/addons/point_of_sale/report/pos_order_report_view.xml
index 494dceec93e..4ae53d0ad67 100644
--- a/addons/point_of_sale/report/pos_order_report_view.xml
+++ b/addons/point_of_sale/report/pos_order_report_view.xml
@@ -57,7 +57,7 @@
string="Invoiced"
domain="[('state','=',('invoiced'))]"/>
diff --git a/addons/point_of_sale/report/pos_payment_report_date.py b/addons/point_of_sale/report/pos_payment_report_date.py
deleted file mode 100644
index 76cd9c12be7..00000000000
--- a/addons/point_of_sale/report/pos_payment_report_date.py
+++ /dev/null
@@ -1,79 +0,0 @@
-# -*- 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 .
-#
-##############################################################################
-
-import time
-from report import report_sxw
-
-class pos_payment_report_date(report_sxw.rml_parse):
-
- def __init__(self, cr, uid, name, context):
- super(pos_payment_report_date, self).__init__(cr, uid, name, context=context)
- self.total = 0.0
- self.localcontext.update({
- 'time': time,
- 'pos_payment_date': self.__pos_payment_date__,
- 'pos_payment_date_total':self.__pos_payment_date__total__,
- })
-
- def __pos_payment_date__(self,form):
- dt1 = form['date_start'] + ' 00:00:00'
- dt2 = form['date_end'] + ' 23:59:59'
- data={}
- if form['user_id']:
- self.cr.execute ("select pt.name,pp.default_code as code,pol.qty,pu.name as uom,pol.discount,pol.price_unit, " \
- "(pol.price_unit * pol.qty * (1 - (pol.discount) / 100.0)) as total " \
- "from pos_order as po,pos_order_line as pol,product_product as pp,product_template as pt,product_uom as pu " \
- "where pt.id=pp.product_tmpl_id and pp.id=pol.product_id and po.id = pol.order_id and pu.id=pt.uom_id " \
- "and po.state IN ('paid','invoiced') and po.date_order >= %s and po.date_order <= %s and po.user_id IN %s " \
- ,(dt1,dt2,tuple(form['user_id'])))
- else:
- self.cr.execute ("select pt.name,pp.default_code as code,pol.qty,pu.name as uom,pol.discount,pol.price_unit, " \
- "(pol.price_unit * pol.qty * (1 - (pol.discount) / 100.0)) as total " \
- "from pos_order as po,pos_order_line as pol,product_product as pp,product_template as pt,product_uom as pu " \
- "where pt.id=pp.product_tmpl_id and pp.id=pol.product_id and po.id = pol.order_id and pu.id=pt.uom_id " \
- "and po.state IN ('paid','invoiced') and po.date_order >= %s and po.date_order <= %s" \
- ,(dt1,dt2))
- data=self.cr.dictfetchall()
- return data
-
- def __pos_payment_date__total__(self,form):
- dt1 = form['date_start'] + ' 00:00:00'
- dt2 = form['date_end'] + ' 23:59:59'
- res=[]
- if form['user_id']:
- self.cr.execute ("select sum(pol.price_unit * pol.qty * (1 - (pol.discount) / 100.0)) " \
- "from pos_order as po,pos_order_line as pol,product_product as pp,product_template as pt " \
- "where pt.id=pp.product_tmpl_id and pp.id=pol.product_id and po.id = pol.order_id " \
- "and po.state IN ('paid','invoiced') and po.date_order >= %s and po.date_order <= %s and po.user_id IN %s " \
- ,(dt1,dt2,tuple(form['user_id'])))
- else:
- self.cr.execute ("select sum(pol.price_unit * pol.qty * (1 - (pol.discount) / 100.0)) " \
- "from pos_order as po,pos_order_line as pol,product_product as pp,product_template as pt " \
- "where pt.id=pp.product_tmpl_id and pp.id=pol.product_id and po.id = pol.order_id " \
- "and po.state IN ('paid','invoiced') and po.date_order >= %s and po.date_order <= %s" \
- ,(dt1,dt2))
- res=self.cr.fetchone()[0] or 0.0
- return res
-
-
-report_sxw.report_sxw('report.pos.payment.report.date', 'pos.order', 'addons/point_of_sale/report/pos_payment_report_date.rml', parser=pos_payment_report_date,header='internal')
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/point_of_sale/report/pos_payment_report_date.rml b/addons/point_of_sale/report/pos_payment_report_date.rml
deleted file mode 100644
index ba7764fed28..00000000000
--- a/addons/point_of_sale/report/pos_payment_report_date.rml
+++ /dev/null
@@ -1,188 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(objects,'order') ]]
- Sales Lines
-
-
-
-
-
There are pending operations that could not be saved into the database, are you sure you want to exit?
+
@@ -162,8 +191,7 @@
-
- €
+
@@ -176,8 +204,7 @@
-
- €
+
@@ -186,8 +213,7 @@
-
- €
+
@@ -196,17 +222,7 @@
-
-
-
-
-
-
-
-
-
-
- €
+
@@ -224,23 +240,64 @@
Receipt
-
- OpenERP Point of Sale
-
-
-
-
-
-
-
Total:
€
-
Tax:
€
-
Change:
€
-
-
- Next Order
+
+
+ Print
+ Next Order
+
+
+
+
+
+
+ Phone:
+ User:
+ Shop:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Tax:
+
+
+
Total:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Change:
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/point_of_sale/test/point_of_sale_report.yml b/addons/point_of_sale/test/point_of_sale_report.yml
index f3ea5995b9e..c7583b1549c 100644
--- a/addons/point_of_sale/test/point_of_sale_report.yml
+++ b/addons/point_of_sale/test/point_of_sale_report.yml
@@ -35,23 +35,7 @@
file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-receipt report'+format), 'wb+').write(data)
-
- Create a record for the root user in pos.payment.report.user (used by the next python block).
--
- !record {model: pos.payment.report.user, id: pos_payment_report_user_1}:
- user_id: []
--
- Print the POS Payment Report through the wizard
--
- !python {model: ir.ui.menu}: |
- import time
- ctx={}
- ctx.update({'model': 'ir.ui.menu','active_ids': []})
- data_dict = {'date_start': time.strftime('%Y-%m-%d'), 'date_end': time.strftime('%Y-%m-%d'), 'user_id': [(6,0,[ref('base.user_root')])] }
- from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_report_pos_payment_repport_date',wiz_data=data_dict, context=ctx, our_module='point_of_sale')
-
--
- Print the POS Details Report through the wizard
+ Print the POS Details Report through the wizard
-
!python {model: ir.ui.menu}: |
import time
diff --git a/addons/point_of_sale/wizard/__init__.py b/addons/point_of_sale/wizard/__init__.py
index 0985ae906be..cb0a6a6da9a 100644
--- a/addons/point_of_sale/wizard/__init__.py
+++ b/addons/point_of_sale/wizard/__init__.py
@@ -30,7 +30,6 @@ import pos_sales_user
import pos_sales_user_today
import pos_receipt
import pos_payment_report_user
-import pos_payment_report_date
import pos_payment_report
import pos_payment
diff --git a/addons/point_of_sale/wizard/pos_box_entries.py b/addons/point_of_sale/wizard/pos_box_entries.py
index 0c48aff736f..8313b345834 100644
--- a/addons/point_of_sale/wizard/pos_box_entries.py
+++ b/addons/point_of_sale/wizard/pos_box_entries.py
@@ -125,3 +125,5 @@ class pos_box_entries(osv.osv_memory):
pos_box_entries()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_box_out.py b/addons/point_of_sale/wizard/pos_box_out.py
index b4298745c35..2a8037dbdc7 100644
--- a/addons/point_of_sale/wizard/pos_box_out.py
+++ b/addons/point_of_sale/wizard/pos_box_out.py
@@ -75,31 +75,21 @@ class pos_box_out(osv.osv_memory):
res_obj = self.pool.get('res.users')
for data in self.read(cr, uid, ids, context=context):
curr_company = res_obj.browse(cr, uid, uid, context=context).company_id.id
- statement_id = statement_obj.search(cr, uid, [('journal_id', '=', data['journal_id']), ('company_id', '=', curr_company), ('user_id', '=', uid), ('state', '=', 'open')], context=context)
+ statement_ids = statement_obj.search(cr, uid, [('journal_id', '=', data['journal_id']), ('company_id', '=', curr_company), ('user_id', '=', uid), ('state', '=', 'open')], context=context)
monday = (datetime.today() + relativedelta(weekday=0)).strftime('%Y-%m-%d')
sunday = (datetime.today() + relativedelta(weekday=6)).strftime('%Y-%m-%d')
done_statmt = statement_obj.search(cr, uid, [('date', '>=', monday+' 00:00:00'), ('date', '<=', sunday+' 23:59:59'), ('journal_id', '=', data['journal_id']), ('company_id', '=', curr_company), ('user_id', '=', uid)], context=context)
stat_done = statement_obj.browse(cr, uid, done_statmt, context=context)
am = 0.0
product = product_obj.browse(cr, uid, data['product_id'], context=context)
- acc_id = product.property_account_income
+ acc_id = product.property_account_income or product.categ_id.property_account_income_categ
if not acc_id:
raise osv.except_osv(_('Error !'), _('please check that account is set to %s')%(product.name))
- if not statement_id:
+ if not statement_ids:
raise osv.except_osv(_('Error !'), _('You have to open at least one cashbox'))
- if statement_id:
- statement_id = statement_id[0]
- if not statement_id:
- statement_id = statement_obj.create(cr, uid, {
- 'date': time.strftime('%Y-%m-%d 00:00:00'),
- 'journal_id': data['journal_id'],
- 'company_id': curr_company,
- 'user_id': uid,
- }, context=context)
- vals['statement_id'] = statement_id
+ vals['statement_id'] = statement_ids[0]
vals['journal_id'] = data['journal_id']
- if acc_id:
- vals['account_id'] = acc_id.id
+ vals['account_id'] = acc_id.id
amount = data['amount'] or 0.0
if data['amount'] > 0:
amount = -data['amount']
@@ -110,3 +100,5 @@ class pos_box_out(osv.osv_memory):
pos_box_out()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_close_statement.py b/addons/point_of_sale/wizard/pos_close_statement.py
index 92dee2f8e4c..08f51113d8d 100644
--- a/addons/point_of_sale/wizard/pos_close_statement.py
+++ b/addons/point_of_sale/wizard/pos_close_statement.py
@@ -25,6 +25,10 @@ from tools.translate import _
class pos_close_statement(osv.osv_memory):
_name = 'pos.close.statement'
_description = 'Close Statements'
+
+ def cancel_wizard(self, cr, uid, ids, context=None):
+ if context.get('cancel_action'):
+ return context['cancel_action']
def close_statement(self, cr, uid, ids, context=None):
"""
@@ -35,6 +39,7 @@ class pos_close_statement(osv.osv_memory):
@param context: A standard dictionary
@return : Blank Dictionary
"""
+ context = context or {}
mod_obj = self.pool.get('ir.model.data')
statement_obj = self.pool.get('account.bank.statement')
journal_obj = self.pool.get('account.journal')
diff --git a/addons/point_of_sale/wizard/pos_close_statement.xml b/addons/point_of_sale/wizard/pos_close_statement.xml
index 61c984c873e..9c11ad02e39 100644
--- a/addons/point_of_sale/wizard/pos_close_statement.xml
+++ b/addons/point_of_sale/wizard/pos_close_statement.xml
@@ -15,7 +15,9 @@
+ string="No" invisible="context.get('cancel_action')"/>
+
diff --git a/addons/point_of_sale/wizard/pos_confirm.xml b/addons/point_of_sale/wizard/pos_confirm.xml
index 85b43bd115d..d98d0f99eed 100644
--- a/addons/point_of_sale/wizard/pos_confirm.xml
+++ b/addons/point_of_sale/wizard/pos_confirm.xml
@@ -3,13 +3,13 @@
- Post Journal Entries
+ Create Sale Journal Entriespos.confirmform
-
+
@@ -25,7 +25,7 @@
- Post Journal Entries
+ Create Sale Entriesir.actions.act_windowpos.confirmform
diff --git a/addons/point_of_sale/wizard/pos_open_statement.py b/addons/point_of_sale/wizard/pos_open_statement.py
index 47c5348943b..11ca75401a4 100644
--- a/addons/point_of_sale/wizard/pos_open_statement.py
+++ b/addons/point_of_sale/wizard/pos_open_statement.py
@@ -75,16 +75,9 @@ class pos_open_statement(osv.osv_memory):
form_id = form_res and form_res[1] or False
search_id = mod_obj.get_object_reference(cr, uid, 'point_of_sale', 'view_pos_open_cash_statement_filter')
- return {
- 'domain': "[('id', 'in',[ "+','.join(map(str,st_ids))+"])]",
- 'name': _('Open Cash Registers'),
- 'view_type': 'form',
- 'view_mode': 'tree, form',
- 'search_view_id': search_id and search_id[1] or False ,
- 'res_model': 'account.bank.statement',
- 'views': [(tree_id, 'tree'), (form_id, 'form')],
- 'context': {},
- 'type': 'ir.actions.act_window'
+ return {
+ 'type': 'ir.actions.client',
+ 'tag': 'pos.ui',
}
pos_open_statement()
diff --git a/addons/point_of_sale/wizard/pos_payment.py b/addons/point_of_sale/wizard/pos_payment.py
index adf59e3cbce..3a50ac0f7c9 100644
--- a/addons/point_of_sale/wizard/pos_payment.py
+++ b/addons/point_of_sale/wizard/pos_payment.py
@@ -101,3 +101,5 @@ class pos_make_payment(osv.osv_memory):
pos_make_payment()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_payment_report_date.py b/addons/point_of_sale/wizard/pos_payment_report_date.py
deleted file mode 100644
index f97391c7f7d..00000000000
--- a/addons/point_of_sale/wizard/pos_payment_report_date.py
+++ /dev/null
@@ -1,68 +0,0 @@
-# -*- 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 .
-#
-##############################################################################
-
-import time
-
-from osv import osv
-from osv import fields
-
-
-class pos_payment_report_date(osv.osv_memory):
- _name = 'pos.payment.report.date'
- _description = 'POS Payment Report according to date'
-
- def print_report(self, cr, uid, ids, context=None):
- """
- To get the date and print the report
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : retrun report
- """
- if context is None:
- context = {}
- datas = {'ids': context.get('active_ids', [])}
- res = self.read(cr, uid, ids, ['date_start', 'date_end', 'user_id'], context=context)
- res = res and res[0] or {}
- datas['form'] = res
- if res.get('id',False):
- datas['ids']=[res['id']]
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'pos.payment.report.date',
- 'datas': datas,
- }
-
- _columns = {
- 'date_start': fields.date('Start Date', required=True),
- 'date_end': fields.date('End Date', required=True),
- 'user_id': fields.many2many('res.users', 'res_user_sale_date', 'user_id', 'sale_id', 'Salesman')
- }
- _defaults = {
- 'date_start': lambda *a: time.strftime('%Y-%m-%d'),
- 'date_end': lambda *a: time.strftime('%Y-%m-%d'),
- }
-
-pos_payment_report_date()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/point_of_sale/wizard/pos_payment_report_date_view.xml b/addons/point_of_sale/wizard/pos_payment_report_date_view.xml
deleted file mode 100644
index 7c74ae1d9be..00000000000
--- a/addons/point_of_sale/wizard/pos_payment_report_date_view.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
- pos.payment.report.date.form
- pos.payment.report.date
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Sales by Products
- ir.actions.act_window
- pos.payment.report.date
- form
- form
- new
-
-
-
diff --git a/addons/point_of_sale/wizard/pos_payment_report_user.py b/addons/point_of_sale/wizard/pos_payment_report_user.py
index 02db921618b..05d06f4df29 100644
--- a/addons/point_of_sale/wizard/pos_payment_report_user.py
+++ b/addons/point_of_sale/wizard/pos_payment_report_user.py
@@ -51,3 +51,5 @@ class pos_payment_report_user(osv.osv_memory):
pos_payment_report_user()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_receipt.py b/addons/point_of_sale/wizard/pos_receipt.py
index 71efee85b7c..f4feee85504 100644
--- a/addons/point_of_sale/wizard/pos_receipt.py
+++ b/addons/point_of_sale/wizard/pos_receipt.py
@@ -56,3 +56,5 @@ class pos_receipt(osv.osv_memory):
}
pos_receipt()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/portal/__init__.py b/addons/portal/__init__.py
index 89397d2eab5..b35d11bac45 100644
--- a/addons/portal/__init__.py
+++ b/addons/portal/__init__.py
@@ -24,3 +24,5 @@ import wizard
import res_user
import ir_ui_menu
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/portal/__openerp__.py b/addons/portal/__openerp__.py
index 1b3be74c79f..035ee45b4df 100644
--- a/addons/portal/__openerp__.py
+++ b/addons/portal/__openerp__.py
@@ -24,7 +24,7 @@
'version' : "1.0",
'depends' : ["base", "share"],
'author' : "OpenERP SA",
- 'category': 'Hidden',
+ 'category': 'Portal',
'description': """
This module defines 'portals' to customize the access to your OpenERP database
for external users.
@@ -45,7 +45,6 @@ module 'share'.
'wizard/share_wizard_view.xml',
],
'installable': True,
- 'certificate' : '',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/portal/i18n/cs.po b/addons/portal/i18n/cs.po
index ce070425f07..3be439be9b6 100644
--- a/addons/portal/i18n/cs.po
+++ b/addons/portal/i18n/cs.po
@@ -8,78 +8,80 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-07-04 14:16+0000\n"
-"PO-Revision-Date: 2011-07-11 09:51+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Czech \n"
+"PO-Revision-Date: 2011-11-25 13:27+0000\n"
+"Last-Translator: Jiří Hajda \n"
+"Language-Team: Czech \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-26 05:50+0000\n"
+"X-Generator: Launchpad (build 14381)\n"
+"X-Poedit-Language: Czech\n"
#. module: portal
#: code:addons/portal/wizard/share_wizard.py:55
#, python-format
msgid "Please select at least one user to share with"
-msgstr ""
+msgstr "Prosíme vyberte nejméně jednoho uživatele, s kterým chcete sdílet"
#. module: portal
#: code:addons/portal/wizard/share_wizard.py:59
#, python-format
msgid "Please select at least one group to share with"
-msgstr ""
+msgstr "Prosíme vyberte nejméně jednu skupinu, s kterou chcete sdílet"
#. module: portal
#: field:res.portal,group_id:0
msgid "Group"
-msgstr ""
+msgstr "Skupina"
#. module: portal
#: help:res.portal,other_group_ids:0
msgid "Those groups are assigned to the portal's users"
-msgstr ""
+msgstr "Tyto skupiny jsou přiřazeny k uživatelům portálu"
#. module: portal
#: view:share.wizard:0
#: field:share.wizard,group_ids:0
msgid "Existing groups"
-msgstr ""
+msgstr "Existující skupiny"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_wizard_user
msgid "Portal User Config"
-msgstr ""
+msgstr "Nastavení uživatele portálu"
#. module: portal
#: view:res.portal.wizard.user:0
msgid "Portal User"
-msgstr ""
+msgstr "Uživatel portálu"
#. module: portal
#: help:res.portal,override_menu:0
msgid "Enable this option to override the Menu Action of portal users"
-msgstr ""
+msgstr "Povolte tuto volbu k přepsání Akcí nabídky uživatelů portálu"
#. module: portal
#: field:res.portal.wizard.user,user_email:0
msgid "E-mail"
-msgstr ""
+msgstr "E-mail"
#. module: portal
#: view:res.portal:0
msgid "Other Groups assigned to Users"
-msgstr ""
+msgstr "Jiné skupiny přiřazené uživatelům"
#. module: portal
#: constraint:res.users:0
msgid "The chosen company is not in the allowed companies for this user"
msgstr ""
+"Vybraná společnost není v povolených společnostech pro tohoto uživatele"
#. module: portal
#: view:res.portal:0
#: field:res.portal,widget_ids:0
msgid "Widgets"
-msgstr ""
+msgstr "Udělátka"
#. module: portal
#: model:ir.module.module,description:portal.module_meta_information
@@ -99,71 +101,85 @@ msgid ""
"module 'share'.\n"
" "
msgstr ""
+"\n"
+"Tento modul určuje 'portály' k přizpůsobení přístupu k vaší databázi "
+"OpenERP\n"
+"pro vnější uživatele.\n"
+"\n"
+"Portál určuje přizpůsobení nabídky uživatele a jeho přístupových práv pro "
+"skupinu uživatelů\n"
+"(těch přiřazených k portálu). Také přidružuje uživatelské skupiny k\n"
+"uživatelům portálu (přidáním skupiny v portálu automaticky je přidáte k "
+"uživatelům\n"
+"portálu, atd.). Tato funkce je velmi užitečný v kombinaci s\n"
+"modulem 'sdílení'.\n"
+" "
#. module: portal
#: view:share.wizard:0
msgid "Who do you want to share with?"
-msgstr ""
+msgstr "S kým chcete sdílet?"
#. module: portal
#: view:res.portal.wizard:0
msgid "Send Invitations"
-msgstr ""
+msgstr "Poslat pozvání"
#. module: portal
#: help:res.portal,url:0
msgid "The url where portal users can connect to the server"
-msgstr ""
+msgstr "URL, kde uživatelé portálu se mohou připojit k serveru"
#. module: portal
#: field:res.portal.widget,widget_id:0
msgid "Widget"
-msgstr ""
+msgstr "Udělátko"
#. module: portal
#: help:res.portal.wizard,message:0
msgid "This text is included in the welcome email sent to the users"
-msgstr ""
+msgstr "Tento text je zahrnut v uvítacím emailu zaslatném uživatelům"
#. module: portal
#: help:res.portal,menu_action_id:0
msgid "If set, replaces the standard menu for the portal's users"
msgstr ""
+"Pokud je nastaveno, nahrazuje standardní nabídku pro uživatele portálu"
#. module: portal
#: field:res.portal,parent_menu_id:0
msgid "Parent Menu"
-msgstr ""
+msgstr "Nadřazené menu"
#. module: portal
#: view:res.portal:0
msgid "Portal Name"
-msgstr ""
+msgstr "Jméno portálu"
#. module: portal
#: view:res.portal.wizard.user:0
msgid "Portal Users"
-msgstr ""
+msgstr "Uživatelé portálu"
#. module: portal
#: field:res.portal,override_menu:0
msgid "Override Menu Action of Users"
-msgstr ""
+msgstr "Přepsat Akce nabídky pro uživatele"
#. module: portal
#: field:res.portal,menu_action_id:0
msgid "Menu Action"
-msgstr ""
+msgstr "Akce nabídky"
#. module: portal
#: field:res.portal.wizard.user,name:0
msgid "User Name"
-msgstr ""
+msgstr "Uživatelské jméno"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_widget
msgid "Portal Widgets"
-msgstr ""
+msgstr "Pomůcky portálu"
#. module: portal
#: model:ir.model,name:portal.model_res_portal
@@ -172,47 +188,47 @@ msgstr ""
#: field:res.portal.widget,portal_id:0
#: field:res.portal.wizard,portal_id:0
msgid "Portal"
-msgstr ""
+msgstr "Portál"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:35
#, python-format
msgid "Your OpenERP account at %(company)s"
-msgstr ""
+msgstr "Váš účet OpenERP v %(company)s"
#. module: portal
#: code:addons/portal/portal.py:110
#: code:addons/portal/portal.py:184
#, python-format
msgid "%s Menu"
-msgstr ""
+msgstr "%s Nabídka"
#. module: portal
#: help:res.portal.wizard,portal_id:0
msgid "The portal in which new users must be added"
-msgstr ""
+msgstr "Portál, ve kterém musí být přidání noví uživatelé"
#. module: portal
#: help:res.portal,widget_ids:0
msgid "Widgets assigned to portal users"
-msgstr ""
+msgstr "Pomůcky přiřazené k těmto uživatelům portálu"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:163
#, python-format
msgid "(missing url)"
-msgstr ""
+msgstr "(chybějící url)"
#. module: portal
#: view:share.wizard:0
#: field:share.wizard,user_ids:0
msgid "Existing users"
-msgstr ""
+msgstr "Existující uživatelé"
#. module: portal
#: field:res.portal.wizard.user,wizard_id:0
msgid "Wizard"
-msgstr ""
+msgstr "Průvodce"
#. module: portal
#: help:res.portal.wizard.user,user_email:0
@@ -220,63 +236,66 @@ msgid ""
"Will be used as user login. Also necessary to send the account information "
"to new users"
msgstr ""
+"Bude použito jako přihlašovací jméno uživatele. Také je zapotřebí zaslat "
+"informace účtu novým uživatelům"
#. module: portal
#: field:res.portal.wizard.user,lang:0
msgid "Language"
-msgstr ""
+msgstr "Jazyk"
#. module: portal
#: field:res.portal,url:0
msgid "URL"
-msgstr ""
+msgstr "URL"
#. module: portal
#: view:res.portal:0
msgid "Widgets assigned to Users"
-msgstr ""
+msgstr "Pomůcky přiřazené uživatelům"
#. module: portal
#: help:res.portal.wizard.user,lang:0
msgid "The language for the user's user interface"
-msgstr ""
+msgstr "Jazyk pro uživatelské rozhraní uživatelů"
#. module: portal
#: view:res.portal.wizard:0
msgid "Cancel"
-msgstr ""
+msgstr "Zrušit"
#. module: portal
#: view:res.portal:0
msgid "Website"
-msgstr ""
+msgstr "Webová stránka"
#. module: portal
#: view:res.portal:0
msgid "Create Parent Menu"
-msgstr ""
+msgstr "Vytvořit nadřazenou nabídku"
#. module: portal
#: view:res.portal.wizard:0
msgid ""
"The following text will be included in the welcome email sent to users."
msgstr ""
+"Následující text bude zahrnut v uvítacím emailu zalsatném uživatelům."
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:135
#, python-format
msgid "Email required"
-msgstr ""
+msgstr "Požadován email"
#. module: portal
#: model:ir.model,name:portal.model_res_users
msgid "res.users"
-msgstr ""
+msgstr "res.users"
#. module: portal
#: constraint:res.portal.wizard.user:0
msgid "Invalid email address"
-msgstr ""
+msgstr "Neplatná emailová adresa"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:136
@@ -284,28 +303,30 @@ msgstr ""
msgid ""
"You must have an email address in your User Preferences to send emails."
msgstr ""
+"Musíte mít emailovou adresu ve vašich uživatelských předvolbách pro zasílání "
+"emailů."
#. module: portal
#: model:ir.model,name:portal.model_ir_ui_menu
msgid "ir.ui.menu"
-msgstr ""
+msgstr "ir.ui.menu"
#. module: portal
#: help:res.portal,group_id:0
msgid "The group extended by this portal"
-msgstr ""
+msgstr "Skupina rozšířená tímto portálem"
#. module: portal
#: view:res.portal:0
#: view:res.portal.wizard:0
#: field:res.portal.wizard,user_ids:0
msgid "Users"
-msgstr ""
+msgstr "Uživatelé"
#. module: portal
#: field:res.portal,other_group_ids:0
msgid "Other User Groups"
-msgstr ""
+msgstr "Jiné skupiny uživatelů"
#. module: portal
#: model:ir.actions.act_window,name:portal.portal_list_action
@@ -313,38 +334,38 @@ msgstr ""
#: model:ir.ui.menu,name:portal.portal_menu
#: view:res.portal:0
msgid "Portals"
-msgstr ""
+msgstr "Portály"
#. module: portal
#: help:res.portal,parent_menu_id:0
msgid "The menu action opens the submenus of this menu item"
-msgstr ""
+msgstr "Akce nabídky otevírající podnabídku této položky nabídky"
#. module: portal
#: field:res.portal.widget,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Posloupnost"
#. module: portal
#: field:res.users,partner_id:0
msgid "Related Partner"
-msgstr ""
+msgstr "Vztažený partner"
#. module: portal
#: view:res.portal:0
msgid "Portal Menu"
-msgstr ""
+msgstr "Nabídka portálu"
#. module: portal
#: sql_constraint:res.users:0
msgid "You can not have two users with the same login !"
-msgstr ""
+msgstr "Nemůžete mít dva uživatele se stejným přihlašovacím jménem !"
#. module: portal
#: view:res.portal.wizard:0
#: field:res.portal.wizard,message:0
msgid "Invitation message"
-msgstr ""
+msgstr "Zpráva pozvánky"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:36
@@ -365,28 +386,42 @@ msgid ""
"OpenERP - Open Source Business Applications\n"
"http://www.openerp.com\n"
msgstr ""
+"Vážený %(name)s,\n"
+"\n"
+"Byl vám vytvořen OpenERP účet na %(url)s.\n"
+"\n"
+"Váše přihlašovací údaje účtu jsou:\n"
+"Databáze: %(db)s\n"
+"Uživatel: %(login)s\n"
+"Heslo: %(password)s\n"
+"\n"
+"%(message)s\n"
+"\n"
+"--\n"
+"OpenERP - Open Source Business Applications\n"
+"http://www.openerp.com\n"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_wizard
msgid "Portal Wizard"
-msgstr ""
+msgstr "Průvodce portálu"
#. module: portal
#: help:res.portal.wizard.user,name:0
msgid "The user's real name"
-msgstr ""
+msgstr "Skutečné jméno uživatele"
#. module: portal
#: model:ir.actions.act_window,name:portal.address_wizard_action
#: model:ir.actions.act_window,name:portal.partner_wizard_action
#: view:res.portal.wizard:0
msgid "Add Portal Access"
-msgstr ""
+msgstr "Přidat přístup portálu"
#. module: portal
#: field:res.portal.wizard.user,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: portal
#: model:ir.actions.act_window,help:portal.portal_list_action
@@ -398,8 +433,14 @@ msgid ""
"the portal's users.\n"
" "
msgstr ""
+"\n"
+"Portál pomáhá stanovit určité pohledy a pravidla pro skupiny uživatelů\n"
+"(skupinu protálu). Nabídka portálu, pomůcky a určité skupiny mohou být "
+"přiřazeny k\n"
+"uživatelům portálu.\n"
+" "
#. module: portal
#: model:ir.model,name:portal.model_share_wizard
msgid "Share Wizard"
-msgstr ""
+msgstr "Průvodce sdílením"
diff --git a/addons/portal/i18n/de.po b/addons/portal/i18n/de.po
index 8fbe9e1e388..9f0429f0243 100644
--- a/addons/portal/i18n/de.po
+++ b/addons/portal/i18n/de.po
@@ -8,78 +8,80 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-07-04 14:16+0000\n"
-"PO-Revision-Date: 2011-07-11 09:51+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-11-29 07:47+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: portal
#: code:addons/portal/wizard/share_wizard.py:55
#, python-format
msgid "Please select at least one user to share with"
-msgstr ""
+msgstr "Bitte wählen Sie mindestens einen Benutzer zum Teilen"
#. module: portal
#: code:addons/portal/wizard/share_wizard.py:59
#, python-format
msgid "Please select at least one group to share with"
-msgstr ""
+msgstr "Bitte wählen Sie mindestens eine Gruppe zum Teilen"
#. module: portal
#: field:res.portal,group_id:0
msgid "Group"
-msgstr ""
+msgstr "Gruppe"
#. module: portal
#: help:res.portal,other_group_ids:0
msgid "Those groups are assigned to the portal's users"
-msgstr ""
+msgstr "Diese Gruppen sind den Portalbenutzern zugeordnet"
#. module: portal
#: view:share.wizard:0
#: field:share.wizard,group_ids:0
msgid "Existing groups"
-msgstr ""
+msgstr "Vorhandene Gruppen"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_wizard_user
msgid "Portal User Config"
-msgstr ""
+msgstr "Portalbenutzer Konfiguration"
#. module: portal
#: view:res.portal.wizard.user:0
msgid "Portal User"
-msgstr ""
+msgstr "Portalbenutzer"
#. module: portal
#: help:res.portal,override_menu:0
msgid "Enable this option to override the Menu Action of portal users"
-msgstr ""
+msgstr "Aktivieren, um die Menü Aktion für Portalbenutzer zu überschreiben"
#. module: portal
#: field:res.portal.wizard.user,user_email:0
msgid "E-mail"
-msgstr ""
+msgstr "E-Mail"
#. module: portal
#: view:res.portal:0
msgid "Other Groups assigned to Users"
-msgstr ""
+msgstr "Andere dem Benutzer zugeteilte Gruppen"
#. module: portal
#: constraint:res.users:0
msgid "The chosen company is not in the allowed companies for this user"
msgstr ""
+"Die gewählte Firma ist nicht in der Liste der erlaubten Firmen für diesen "
+"Benutzer"
#. module: portal
#: view:res.portal:0
#: field:res.portal,widget_ids:0
msgid "Widgets"
-msgstr ""
+msgstr "Oberflächenelemente"
#. module: portal
#: model:ir.module.module,description:portal.module_meta_information
@@ -103,67 +105,68 @@ msgstr ""
#. module: portal
#: view:share.wizard:0
msgid "Who do you want to share with?"
-msgstr ""
+msgstr "Mit wem wollen Sie teilen?"
#. module: portal
#: view:res.portal.wizard:0
msgid "Send Invitations"
-msgstr ""
+msgstr "Versende Einladungen"
#. module: portal
#: help:res.portal,url:0
msgid "The url where portal users can connect to the server"
-msgstr ""
+msgstr "Die URL, mit der sich Portalbenutzer anmelden können"
#. module: portal
#: field:res.portal.widget,widget_id:0
msgid "Widget"
-msgstr ""
+msgstr "Oberflächenelement"
#. module: portal
#: help:res.portal.wizard,message:0
msgid "This text is included in the welcome email sent to the users"
-msgstr ""
+msgstr "Dieser Text ist Bestandteil der Willkommen E-Mail an den Benutzer"
#. module: portal
#: help:res.portal,menu_action_id:0
msgid "If set, replaces the standard menu for the portal's users"
msgstr ""
+"Wenn definiert, dann ersetzt dies das Standardmenü für Portalbenutzer"
#. module: portal
#: field:res.portal,parent_menu_id:0
msgid "Parent Menu"
-msgstr ""
+msgstr "Obermenü"
#. module: portal
#: view:res.portal:0
msgid "Portal Name"
-msgstr ""
+msgstr "Portalname"
#. module: portal
#: view:res.portal.wizard.user:0
msgid "Portal Users"
-msgstr ""
+msgstr "Portalbenutzer"
#. module: portal
#: field:res.portal,override_menu:0
msgid "Override Menu Action of Users"
-msgstr ""
+msgstr "Überschreibe Die Menü-Aktion für Benutzer"
#. module: portal
#: field:res.portal,menu_action_id:0
msgid "Menu Action"
-msgstr ""
+msgstr "Menü Aktion"
#. module: portal
#: field:res.portal.wizard.user,name:0
msgid "User Name"
-msgstr ""
+msgstr "Benutzer Name"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_widget
msgid "Portal Widgets"
-msgstr ""
+msgstr "Portal Oberflächenelemente"
#. module: portal
#: model:ir.model,name:portal.model_res_portal
@@ -172,47 +175,47 @@ msgstr ""
#: field:res.portal.widget,portal_id:0
#: field:res.portal.wizard,portal_id:0
msgid "Portal"
-msgstr ""
+msgstr "Portal"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:35
#, python-format
msgid "Your OpenERP account at %(company)s"
-msgstr ""
+msgstr "Ihr OpenERP Konto bei %(company)s"
#. module: portal
#: code:addons/portal/portal.py:110
#: code:addons/portal/portal.py:184
#, python-format
msgid "%s Menu"
-msgstr ""
+msgstr "%s Menü"
#. module: portal
#: help:res.portal.wizard,portal_id:0
msgid "The portal in which new users must be added"
-msgstr ""
+msgstr "Das Portal, zu dem neue Benutzer hinzugefügt werden müssen"
#. module: portal
#: help:res.portal,widget_ids:0
msgid "Widgets assigned to portal users"
-msgstr ""
+msgstr "Oberflächenelemente, die Portalbenutzern zugeordnet sind"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:163
#, python-format
msgid "(missing url)"
-msgstr ""
+msgstr "(fehlende URL)"
#. module: portal
#: view:share.wizard:0
#: field:share.wizard,user_ids:0
msgid "Existing users"
-msgstr ""
+msgstr "Bestehende Benutzer"
#. module: portal
#: field:res.portal.wizard.user,wizard_id:0
msgid "Wizard"
-msgstr ""
+msgstr "Assistent"
#. module: portal
#: help:res.portal.wizard.user,user_email:0
@@ -220,63 +223,65 @@ msgid ""
"Will be used as user login. Also necessary to send the account information "
"to new users"
msgstr ""
+"Wird als Benutzer Login verwendet. Ebenso notwendig die Kontoinformation an "
+"neue Benutzer zu senden."
#. module: portal
#: field:res.portal.wizard.user,lang:0
msgid "Language"
-msgstr ""
+msgstr "Sprache"
#. module: portal
#: field:res.portal,url:0
msgid "URL"
-msgstr ""
+msgstr "URL"
#. module: portal
#: view:res.portal:0
msgid "Widgets assigned to Users"
-msgstr ""
+msgstr "Oberflächenelemente, die Benutzern zugeordnet sind"
#. module: portal
#: help:res.portal.wizard.user,lang:0
msgid "The language for the user's user interface"
-msgstr ""
+msgstr "Die Sprache für die Benutzerschnittstelle"
#. module: portal
#: view:res.portal.wizard:0
msgid "Cancel"
-msgstr ""
+msgstr "Abbrechen"
#. module: portal
#: view:res.portal:0
msgid "Website"
-msgstr ""
+msgstr "Webseite"
#. module: portal
#: view:res.portal:0
msgid "Create Parent Menu"
-msgstr ""
+msgstr "Erstelle Obermenü"
#. module: portal
#: view:res.portal.wizard:0
msgid ""
"The following text will be included in the welcome email sent to users."
-msgstr ""
+msgstr "Der folgende Text wird im Willkommen E-Mail verwendet werden"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:135
#, python-format
msgid "Email required"
-msgstr ""
+msgstr "E-Mail ist erforderlich"
#. module: portal
#: model:ir.model,name:portal.model_res_users
msgid "res.users"
-msgstr ""
+msgstr "res.users"
#. module: portal
#: constraint:res.portal.wizard.user:0
msgid "Invalid email address"
-msgstr ""
+msgstr "Ungültige E-Mail Adresse"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:136
@@ -284,28 +289,30 @@ msgstr ""
msgid ""
"You must have an email address in your User Preferences to send emails."
msgstr ""
+"Sie müssen Ihre E-Mail Adresse in den Benuztereinstellungen erfassen um E-"
+"Mails senden zu können."
#. module: portal
#: model:ir.model,name:portal.model_ir_ui_menu
msgid "ir.ui.menu"
-msgstr ""
+msgstr "ir.ui.menu"
#. module: portal
#: help:res.portal,group_id:0
msgid "The group extended by this portal"
-msgstr ""
+msgstr "Die diesem Portal zugeordnete Gruppe"
#. module: portal
#: view:res.portal:0
#: view:res.portal.wizard:0
#: field:res.portal.wizard,user_ids:0
msgid "Users"
-msgstr ""
+msgstr "Benutzer"
#. module: portal
#: field:res.portal,other_group_ids:0
msgid "Other User Groups"
-msgstr ""
+msgstr "Andere Benutzergruppen"
#. module: portal
#: model:ir.actions.act_window,name:portal.portal_list_action
@@ -313,38 +320,38 @@ msgstr ""
#: model:ir.ui.menu,name:portal.portal_menu
#: view:res.portal:0
msgid "Portals"
-msgstr ""
+msgstr "Portale"
#. module: portal
#: help:res.portal,parent_menu_id:0
msgid "The menu action opens the submenus of this menu item"
-msgstr ""
+msgstr "Die Menü-Aktion öffnet Unter-Menüeinträge dieses Menüeintrags"
#. module: portal
#: field:res.portal.widget,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Sequenz"
#. module: portal
#: field:res.users,partner_id:0
msgid "Related Partner"
-msgstr ""
+msgstr "referenzierter Geschäftspartner"
#. module: portal
#: view:res.portal:0
msgid "Portal Menu"
-msgstr ""
+msgstr "Portal Menü"
#. module: portal
#: sql_constraint:res.users:0
msgid "You can not have two users with the same login !"
-msgstr ""
+msgstr "2 Benuzter können nicht den gleichen Login Code haben."
#. module: portal
#: view:res.portal.wizard:0
#: field:res.portal.wizard,message:0
msgid "Invitation message"
-msgstr ""
+msgstr "Einladungstext"
#. module: portal
#: code:addons/portal/wizard/portal_wizard.py:36
@@ -369,24 +376,24 @@ msgstr ""
#. module: portal
#: model:ir.model,name:portal.model_res_portal_wizard
msgid "Portal Wizard"
-msgstr ""
+msgstr "Portal Assistent"
#. module: portal
#: help:res.portal.wizard.user,name:0
msgid "The user's real name"
-msgstr ""
+msgstr "Der vollständige Name des Benutzers"
#. module: portal
#: model:ir.actions.act_window,name:portal.address_wizard_action
#: model:ir.actions.act_window,name:portal.partner_wizard_action
#: view:res.portal.wizard:0
msgid "Add Portal Access"
-msgstr ""
+msgstr "Füge Portalberechtigung hinzu"
#. module: portal
#: field:res.portal.wizard.user,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: portal
#: model:ir.actions.act_window,help:portal.portal_list_action
@@ -398,8 +405,14 @@ msgid ""
"the portal's users.\n"
" "
msgstr ""
+"\n"
+"Ein Portal erlaubt die Zuordnung von bestimmten Sichten und Regeln zu einer "
+"Benutzergruppe (die Portalgruppe).\n"
+"Ein Portalmenu, Oberflächenelemente und einzelne Gruppen können "
+"Portalbenutzern zugeordnet werden.\n"
+" "
#. module: portal
#: model:ir.model,name:portal.model_share_wizard
msgid "Share Wizard"
-msgstr ""
+msgstr "Freigabeassistent"
diff --git a/addons/portal/i18n/hr.po b/addons/portal/i18n/hr.po
index 737a6990153..87a79c2e7c6 100644
--- a/addons/portal/i18n/hr.po
+++ b/addons/portal/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-07-04 14:16+0000\n"
-"PO-Revision-Date: 2011-07-11 09:51+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-12-19 17:37+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:57+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-20 04:50+0000\n"
+"X-Generator: Launchpad (build 14538)\n"
#. module: portal
#: code:addons/portal/wizard/share_wizard.py:55
@@ -32,7 +32,7 @@ msgstr ""
#. module: portal
#: field:res.portal,group_id:0
msgid "Group"
-msgstr ""
+msgstr "Grupa"
#. module: portal
#: help:res.portal,other_group_ids:0
@@ -43,7 +43,7 @@ msgstr ""
#: view:share.wizard:0
#: field:share.wizard,group_ids:0
msgid "Existing groups"
-msgstr ""
+msgstr "Postojeće grupe"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_wizard_user
@@ -63,7 +63,7 @@ msgstr ""
#. module: portal
#: field:res.portal.wizard.user,user_email:0
msgid "E-mail"
-msgstr ""
+msgstr "E-pošta"
#. module: portal
#: view:res.portal:0
@@ -79,7 +79,7 @@ msgstr ""
#: view:res.portal:0
#: field:res.portal,widget_ids:0
msgid "Widgets"
-msgstr ""
+msgstr "Widgeti"
#. module: portal
#: model:ir.module.module,description:portal.module_meta_information
@@ -108,7 +108,7 @@ msgstr ""
#. module: portal
#: view:res.portal.wizard:0
msgid "Send Invitations"
-msgstr ""
+msgstr "Pošalji pozivnice"
#. module: portal
#: help:res.portal,url:0
@@ -133,7 +133,7 @@ msgstr ""
#. module: portal
#: field:res.portal,parent_menu_id:0
msgid "Parent Menu"
-msgstr ""
+msgstr "Nadređeni izbornik"
#. module: portal
#: view:res.portal:0
@@ -143,7 +143,7 @@ msgstr ""
#. module: portal
#: view:res.portal.wizard.user:0
msgid "Portal Users"
-msgstr ""
+msgstr "Korisnici portala"
#. module: portal
#: field:res.portal,override_menu:0
@@ -153,12 +153,12 @@ msgstr ""
#. module: portal
#: field:res.portal,menu_action_id:0
msgid "Menu Action"
-msgstr ""
+msgstr "Akcija izbornika"
#. module: portal
#: field:res.portal.wizard.user,name:0
msgid "User Name"
-msgstr ""
+msgstr "Korisničko ime"
#. module: portal
#: model:ir.model,name:portal.model_res_portal_widget
diff --git a/addons/portal/ir_ui_menu.py b/addons/portal/ir_ui_menu.py
index a4fe364a4fd..c8f59ca8bd1 100644
--- a/addons/portal/ir_ui_menu.py
+++ b/addons/portal/ir_ui_menu.py
@@ -56,3 +56,5 @@ class portal_menu(osv.osv):
portal_menu()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/portal/portal.py b/addons/portal/portal.py
index 1c7f84c363a..de39944e69f 100644
--- a/addons/portal/portal.py
+++ b/addons/portal/portal.py
@@ -226,3 +226,5 @@ portal_widget()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/portal/res_user.py b/addons/portal/res_user.py
index 2f32a65b761..127c3079b29 100644
--- a/addons/portal/res_user.py
+++ b/addons/portal/res_user.py
@@ -32,3 +32,5 @@ class res_users(osv.osv):
res_users()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/portal/security/ir.model.access.csv b/addons/portal/security/ir.model.access.csv
index db83f9ae77e..c132b0dfb68 100644
--- a/addons/portal/security/ir.model.access.csv
+++ b/addons/portal/security/ir.model.access.csv
@@ -1,5 +1,5 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_all,access.portal.all,model_res_portal,,1,0,0,0
-access_widget_all,access.portal.widget.all,model_res_portal_widget,,1,0,0,0
-access_manager,access.portal.manager,model_res_portal,group_portal_manager,1,1,1,1
-access_widget_manager,access.portal.widget.manager,model_res_portal_widget,group_portal_manager,1,1,1,1
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_all,access.portal.all,model_res_portal,,1,0,0,0
+access_widget_all,access.portal.widget.all,model_res_portal_widget,,1,0,0,0
+access_manager,access.portal.manager,model_res_portal,group_portal_manager,1,1,1,1
+access_widget_manager,access.portal.widget.manager,model_res_portal_widget,group_portal_manager,1,1,1,1
diff --git a/addons/portal/security/portal_security.xml b/addons/portal/security/portal_security.xml
index 4850cb7805b..4b73db5cdcc 100644
--- a/addons/portal/security/portal_security.xml
+++ b/addons/portal/security/portal_security.xml
@@ -1,13 +1,21 @@