diff --git a/addons/account/account.py b/addons/account/account.py index d4e31167c43..b01da6b1425 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -181,7 +181,7 @@ 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."""), - 'report_type': fields.function(_get_current_report_type, fnct_inv=_save_report_type, type='selection', string='P&L / BS Category', + 'report_type': fields.function(_get_current_report_type, fnct_inv=_save_report_type, type='selection', string='P&L / BS Category', store=True, selection= [('none','/'), ('income', _('Profit & Loss (Income account)')), ('expense', _('Profit & Loss (Expense account)')), @@ -836,6 +836,8 @@ class account_journal(osv.osv): @return: Returns a list of tupples containing id, name """ + if isinstance(ids, (int, long)): + ids = [ids] result = self.browse(cr, user, ids, context=context) res = [] for rs in result: diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py index 095d461ff3b..2dc7f96768f 100644 --- a/addons/account/account_bank_statement.py +++ b/addons/account/account_bank_statement.py @@ -304,7 +304,7 @@ class account_bank_statement(osv.osv): 'date': st_line.date, 'ref': st_line.ref, 'move_id': move_id, - 'partner_id': partner_id, + 'partner_id': par_id, 'account_id': acc_id, 'credit': credit, 'debit': debit, diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml index d1b19910365..20aa198c63f 100644 --- a/addons/account/account_view.xml +++ b/addons/account/account_view.xml @@ -252,16 +252,6 @@ - - account.treasury.graph - account.account - - - - - - - Accounts account.account @@ -2537,7 +2527,7 @@ 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 563c3f5fc6c..abbc81ade2b 100644 --- a/addons/account/board_account_view.xml +++ b/addons/account/board_account_view.xml @@ -12,16 +12,6 @@ [('year','=',time.strftime('%Y'))]
- - Treasury - account.account - form - graph,tree - [('type','=','liquidity')] - {'default_type': 'liquidity'} - - - board.account.form board.board @@ -31,9 +21,6 @@ - - - diff --git a/addons/account/res_config.py b/addons/account/res_config.py index ee7eb17777f..ea903654a4e 100644 --- a/addons/account/res_config.py +++ b/addons/account/res_config.py @@ -51,10 +51,10 @@ class account_config_settings(osv.osv_memory): 'code_digits': fields.integer('# of Digits', help="No. of digits to use for account code"), 'tax_calculation_rounding_method': fields.related('company_id', 'tax_calculation_rounding_method', type='selection', selection=[ - ('round_per_line', 'Round per Line'), - ('round_globally', 'Round Globally'), + ('round_per_line', 'Round per line'), + ('round_globally', 'Round globally'), ], string='Tax calculation rounding method', - help="If you select 'Round per Line' : for each tax, the tax amount will first be computed and rounded for each PO/SO/invoice line and then these rounded amounts will be summed, leading to the total amount for that tax. If you select 'Round Globally': for each tax, the tax amount will be computed for each PO/SO/invoice line, then these amounts will be summed and eventually this total tax amount will be rounded. If you sell with tax included, you should choose 'Round per line' because you certainly want the sum of your tax-included line subtotals to be equal to the total amount with taxes."), + help="If you select 'Round per line' : for each tax, the tax amount will first be computed and rounded for each PO/SO/invoice line and then these rounded amounts will be summed, leading to the total amount for that tax. If you select 'Round globally': for each tax, the tax amount will be computed for each PO/SO/invoice line, then these amounts will be summed and eventually this total tax amount will be rounded. If you sell with tax included, you should choose 'Round per line' because you certainly want the sum of your tax-included line subtotals to be equal to the total amount with taxes."), '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 (%)'), @@ -72,40 +72,40 @@ class account_config_settings(osv.osv_memory): 'sale_refund_journal_id': fields.many2one('account.journal', 'Sale refund journal'), 'sale_refund_sequence_prefix': fields.related('sale_refund_journal_id', 'sequence_id', 'prefix', type='char', string='Credit note sequence'), 'sale_refund_sequence_next': fields.related('sale_refund_journal_id', 'sequence_id', 'number_next', type='integer', string='Next credit note number'), - 'purchase_journal_id': fields.many2one('account.journal', 'Purchase Journal'), + 'purchase_journal_id': fields.many2one('account.journal', 'Purchase journal'), 'purchase_sequence_prefix': fields.related('purchase_journal_id', 'sequence_id', 'prefix', type='char', string='Supplier invoice sequence'), 'purchase_sequence_next': fields.related('purchase_journal_id', 'sequence_id', 'number_next', type='integer', string='Next supplier invoice number'), 'purchase_refund_journal_id': fields.many2one('account.journal', 'Purchase refund journal'), 'purchase_refund_sequence_prefix': fields.related('purchase_refund_journal_id', 'sequence_id', 'prefix', type='char', string='Supplier credit note sequence'), 'purchase_refund_sequence_next': fields.related('purchase_refund_journal_id', 'sequence_id', 'number_next', type='integer', string='Next supplier credit note number'), - 'module_account_check_writing': fields.boolean('pay your suppliers by check', + 'module_account_check_writing': fields.boolean('Pay your suppliers by check', help="""This allows you to check writing and printing. This installs the module account_check_writing."""), - 'module_account_accountant': fields.boolean('full accounting features: journals, legal statements, chart of accounts, etc.', + 'module_account_accountant': fields.boolean('Full accounting features: journals, legal statements, chart of accounts, etc.', help="""If you do not check this box, you will be able to do invoicing & payments, but not accounting (Journal Items, Chart of Accounts, ...)"""), - 'module_account_asset': fields.boolean('assets management', + 'module_account_asset': fields.boolean('Assets management', help="""This allows you to manage the assets owned by a company or a person. It keeps track of the depreciation occurred on those assets, and creates account move for those depreciation lines. This installs the module account_asset. If you do not check this box, you will be able to do invoicing & payments, but not accounting (Journal Items, Chart of Accounts, ...)"""), - 'module_account_budget': fields.boolean('budget management', + 'module_account_budget': fields.boolean('Budget management', help="""This allows accountants to manage analytic and crossovered budgets. Once the master budgets and the budgets are defined, the project managers can set the planned amount on each analytic account. This installs the module account_budget."""), - 'module_account_payment': fields.boolean('manage payment orders', + 'module_account_payment': fields.boolean('Manage payment orders', help="""This allows you to create and manage your payment orders, with purposes to * serve as base for an easy plug-in of various automated payment mechanisms, and * provide a more efficient way to manage invoice payments. This installs the module account_payment."""), - 'module_account_voucher': fields.boolean('manage customer payments', + 'module_account_voucher': fields.boolean('Manage customer payments', help="""This includes all the basic requirements of voucher entries for bank, cash, sales, purchase, expense, contra, etc. This installs the module account_voucher."""), - 'module_account_followup': fields.boolean('manage customer payment follow-ups', + 'module_account_followup': fields.boolean('Manage customer payment follow-ups', help="""This allows to automate letters for unpaid invoices, with multi-level recalls. This installs the module account_followup."""), - 'group_proforma_invoices': fields.boolean('allow pro-forma invoices', + 'group_proforma_invoices': fields.boolean('Allow pro-forma invoices', implied_group='account.group_proforma_invoices', help="Allows you to put invoices in pro-forma state."), 'default_sale_tax': fields.many2one('account.tax', 'Default sale tax', @@ -114,7 +114,7 @@ class account_config_settings(osv.osv_memory): help="This purchase tax will be assigned by default on new products."), 'decimal_precision': fields.integer('Decimal precision on journal entries', help="""As an example, a decimal precision of 2 will allow journal entries like: 9.99 EUR, whereas a decimal precision of 4 will allow journal entries like: 0.0231 EUR."""), - 'group_multi_currency': fields.boolean('allow multi currencies', + 'group_multi_currency': fields.boolean('Allow multi currencies', implied_group='base.group_multi_currency', help="Allows you multi currency environment"), } diff --git a/addons/account/security/account_security.xml b/addons/account/security/account_security.xml index e1a29a6edfb..5ca9f26b96b 100644 --- a/addons/account/security/account_security.xml +++ b/addons/account/security/account_security.xml @@ -5,6 +5,7 @@ Invoicing & Payments + Accountant diff --git a/addons/account/security/ir.model.access.csv b/addons/account/security/ir.model.access.csv index a5049c0a345..28bedbf65a1 100644 --- a/addons/account/security/ir.model.access.csv +++ b/addons/account/security/ir.model.access.csv @@ -82,6 +82,7 @@ access_account_entries_report_invoice,account.entries.report,model_account_entri access_account_entries_report_employee,account.entries.report employee,model_account_entries_report,base.group_user,1,0,0,0 access_analytic_entries_report_manager,analytic.entries.report,model_analytic_entries_report,account.group_account_manager,1,0,0,0 access_account_cashbox_line,account.cashbox.line,model_account_cashbox_line,account.group_account_user,1,1,1,1 +access_account_journal_cashbox_line,account.journal.cashbox.line,model_account_journal_cashbox_line,account.group_account_user,1,1,1,0 access_account_journal_view_invoice,account.journal.view invoice,model_account_journal_view,account.group_account_invoice,1,1,1,1 access_account_journal_column_invoice,account.journal.column invoice,model_account_journal_column,account.group_account_invoice,1,1,1,1 access_account_invoice_tax_accountant,account.invoice.tax accountant,model_account_invoice_tax,account.group_account_user,1,0,0,0 diff --git a/addons/account/wizard/account_move_journal.py b/addons/account/wizard/account_move_journal.py index 1353efca1f5..d87e4d04a0c 100644 --- a/addons/account/wizard/account_move_journal.py +++ b/addons/account/wizard/account_move_journal.py @@ -92,14 +92,14 @@ class account_move_journal(osv.osv_memory): journal = False if journal_id: - journal = journal_pool.read(cr, uid, [journal_id], ['name'])[0]['name'] + journal = journal_pool.read(cr, uid, journal_id, ['name'], context=context).name journal_string = _("Journal: %s") % tools.ustr(journal) else: journal_string = _("Journal: All") period = False if period_id: - period = period_pool.browse(cr, uid, [period_id], ['name'])[0]['name'] + period = period_pool.browse(cr, uid, period_id, context=context).name period_string = _("Period: %s") % tools.ustr(period) open_string = _("Open") diff --git a/addons/account_accountant/__openerp__.py b/addons/account_accountant/__openerp__.py index ea4d7887a15..3c391d8d885 100644 --- a/addons/account_accountant/__openerp__.py +++ b/addons/account_accountant/__openerp__.py @@ -26,15 +26,12 @@ 'sequence': 10, 'summary': 'Financial and Analytic Accounting', 'description': """ -Accounting Access Rights. -========================= +Accounting Access Rights +======================== +It gives the Administrator user access to all accounting features such as journal items and the chart of accounts. -This module gives the Admin user the access to all the accounting features -like the journal items and the chart of accounts. - -It assigns manager and user access rights to the Administrator and only -user rights to Demo user. - """, +It assigns manager and user access rights to the Administrator and only user rights to the Demo user. +""", 'website': 'http://www.openerp.com', 'depends' : ['account_voucher'], 'data': [ diff --git a/addons/account_accountant/account_accountant_data.xml b/addons/account_accountant/account_accountant_data.xml index 5b563017c62..d7ed9c1ad13 100644 --- a/addons/account_accountant/account_accountant_data.xml +++ b/addons/account_accountant/account_accountant_data.xml @@ -5,6 +5,7 @@ + @@ -14,10 +15,9 @@ reload - + - automatic - 100 + open diff --git a/addons/account_analytic_analysis/account_analytic_analysis.py b/addons/account_analytic_analysis/account_analytic_analysis.py index 1b4da45c30f..70beb41ac13 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis.py +++ b/addons/account_analytic_analysis/account_analytic_analysis.py @@ -465,7 +465,7 @@ class account_analytic_account(osv.osv): def open_sale_order_lines(self,cr,uid,ids,context=None): if context is None: context = {} - sale_ids = self.pool.get('sale.order').search(cr,uid,[('project_id','=',context.get('search_default_project_id',False)),('partner_id','=',context.get('search_default_partner_id',False))]) + sale_ids = self.pool.get('sale.order').search(cr,uid,[('project_id','=',context.get('search_default_project_id',False)),('partner_id','in',context.get('search_default_partner_id',False))]) names = [record.name for record in self.browse(cr, uid, ids, context=context)] name = _('Sale Order Lines of %s') % ','.join(names) return { diff --git a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml index 9e5be21cf70..ffbe48f0b19 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml @@ -73,9 +73,18 @@ account.analytic.account form tree,form,graph - {'default_type':'contract'} + {'default_type':'contract', 'search_default_open':1, 'search_default_pending':1} [('type','=','contract')] + +

+ Click to create a new contract. +

+ Use contracts to follow tasks, issues, timesheets or invoicing based on + work done, expenses and/or sales orders. OpenERP will automatically manage + the alerts for the renewal of the contracts to the right salesperson. +

+
tree,form [('type','=','template')] {'search_default_type':'template','default_type' : 'template'} + +

+ Click here to create a template of contract. +

+ Templates are used to prefigure contract/project that + can be selected by the salespeople to quickly configure the + terms and conditions of the contract. +

+
+ diff --git a/addons/account_budget/account_budget_view.xml b/addons/account_budget/account_budget_view.xml index 21f9cc69b8a..f6b4842b596 100644 --- a/addons/account_budget/account_budget_view.xml +++ b/addons/account_budget/account_budget_view.xml @@ -299,7 +299,7 @@ - + diff --git a/addons/account_budget/security/ir.model.access.csv b/addons/account_budget/security/ir.model.access.csv index 131f4424568..f4174f72782 100644 --- a/addons/account_budget/security/ir.model.access.csv +++ b/addons/account_budget/security/ir.model.access.csv @@ -4,4 +4,4 @@ access_account_budget_post,account.budget.post,model_account_budget_post,account 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 -access_budget,crossovered.budget.lines manager,model_crossovered_budget_lines,base.group_user,1,0,0,0 +access_budget,crossovered.budget.lines manager,model_crossovered_budget_lines,base.group_user,1,1,1,0 diff --git a/addons/account_sequence/i18n/el.po b/addons/account_sequence/i18n/el.po new file mode 100644 index 00000000000..0a7aa3cbb0f --- /dev/null +++ b/addons/account_sequence/i18n/el.po @@ -0,0 +1,214 @@ +# Greek translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-02-08 00:35+0000\n" +"PO-Revision-Date: 2012-09-15 17:55+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Greek \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-09-16 04:39+0000\n" +"X-Generator: Launchpad (build 15944)\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 can not create more than one move per period on centralized journal" +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "Company must be the same for its related account and period." +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 +#: 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 +#: view:account.sequence.installer:0 +msgid "Configure" +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 "You can not create journal items on an account of type view." +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 journal items on closed account." +msgstr "" + +#. module: account_sequence +#: constraint:account.journal:0 +msgid "" +"Configuration error! The currency chosen should be shared by the default " +"accounts too." +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 +#: 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 +#: constraint:account.move.line:0 +msgid "" +"The selected account of your Journal Entry forces to provide a secondary " +"currency. You should remove the secondary currency on the account or select " +"a multi-currency view on the journal." +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "" +"The date of your Journal Entry is not in the defined period! You should " +"change the date or remove this constraint from the journal." +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 +#: model:ir.model,name:account_sequence.model_account_sequence_installer +msgid "account.sequence.installer" +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 "" diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py index 03befcc3acd..a6bb9dc5159 100644 --- a/addons/account_voucher/__openerp__.py +++ b/addons/account_voucher/__openerp__.py @@ -25,13 +25,19 @@ 'author' : 'OpenERP SA', 'summary': 'Send Invoices and Track Payments', 'description': """ -eInvoicing & Payments module manage all Voucher Entries such as 'Reconciliation Entries', 'Adjustment Entries', 'Closing or Opening Entries' for Sales, Purchase, Bank, Cash, Expense, Contra. -============================================================================================================================================================================================== +Invoicing & Payments by Accounting Voucher & Receipts +====================================================== +The specific and easy-to-use Invoicing system in OpenERP allows you to keep track of your accounting, even when you are not an accountant. It provides an easy way to follow up on your suppliers and customers. - * Voucher Entry - * Voucher Receipt [Sales & Purchase] - * Voucher Payment [Customer & Supplier] - * Cheque Register +You could use this simplified accounting in case you work with an (external) account to keep your books, and you still want to keep track of payments. + +The Invoicing system includes receipts and vouchers (an easy way to keep track of sales and purchases). It also offers you an easy method of registering payments, without having to encode complete abstracts of account. + +This module manages: + +* Voucher Entry +* Voucher Receipt [Sales & Purchase] +* Voucher Payment [Customer & Supplier] """, 'category': 'Accounting & Finance', 'sequence': 4, diff --git a/addons/account_voucher/account_voucher_view.xml b/addons/account_voucher/account_voucher_view.xml index ba9d6433888..07647d02fe3 100644 --- a/addons/account_voucher/account_voucher_view.xml +++ b/addons/account_voucher/account_voucher_view.xml @@ -272,10 +272,9 @@ reload - + - automatic - 100 + open diff --git a/addons/analytic/analytic_view.xml b/addons/analytic/analytic_view.xml index 704d9bb8244..51f5428002f 100644 --- a/addons/analytic/analytic_view.xml +++ b/addons/analytic/analytic_view.xml @@ -41,6 +41,7 @@ units is reached, the account manager is warned by email to renew the contract.

+
diff --git a/addons/crm/security/crm_security.xml b/addons/crm/security/crm_security.xml index 07bb3fc539c..3b382a072f4 100644 --- a/addons/crm/security/crm_security.xml +++ b/addons/crm/security/crm_security.xml @@ -3,18 +3,21 @@ - User - Own Leads Only + User: Own Leads Only + the user will have access to his own data in the sales application. - User - All Leads + User: All Leads + the user will have access to all records of everyone in the sales application. Manager + the user will have an access to the sales configuration as well as statistic reports. diff --git a/addons/crm/test/process/communication_with_customer.yml b/addons/crm/test/process/communication_with_customer.yml index d18fa5495d9..ec11528d15a 100644 --- a/addons/crm/test/process/communication_with_customer.yml +++ b/addons/crm/test/process/communication_with_customer.yml @@ -18,9 +18,9 @@ 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. + I reply him request with welcome message. TODO revert mail.mail to mail.compose.message (conversion to customer should be automatic). - - !python {model: mail.compose.message}: | + !python {model: mail.mail}: | 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': "Merci à l'intérêt pour notre produit.nous vous contacterons bientôt. Merci", 'email_from': 'sales@mycompany.com'}, context=context) diff --git a/addons/crm_claim/res_config.py b/addons/crm_claim/res_config.py index cf260fcd163..92e474d6a46 100644 --- a/addons/crm_claim/res_config.py +++ b/addons/crm_claim/res_config.py @@ -26,7 +26,7 @@ class crm_claim_settings(osv.osv_memory): _inherit = ['sale.config.settings', 'fetchmail.config.settings'] _columns = { - 'fetchmail_claim': fields.boolean("create claims from incoming mails", + 'fetchmail_claim': fields.boolean("Create claims from incoming mails", fetchmail_model='crm.claim', fetchmail_name='Incoming Claims', help="""Allows you to configure your incoming mail server, and create claims from incoming emails."""), } diff --git a/addons/crm_partner_assign/i18n/pt_BR.po b/addons/crm_partner_assign/i18n/pt_BR.po index fa7a7d0561c..9a2a2699a03 100644 --- a/addons/crm_partner_assign/i18n/pt_BR.po +++ b/addons/crm_partner_assign/i18n/pt_BR.po @@ -8,15 +8,15 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:36+0000\n" -"PO-Revision-Date: 2012-07-28 18:41+0000\n" +"PO-Revision-Date: 2012-09-15 21:58+0000\n" "Last-Translator: Fábio Martinelli - http://zupy.com.br " "\n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-09-07 04:59+0000\n" -"X-Generator: Launchpad (build 15914)\n" +"X-Launchpad-Export-Date: 2012-09-16 04:39+0000\n" +"X-Generator: Launchpad (build 15944)\n" #. module: crm_partner_assign #: field:crm.lead.forward.to.partner,send_to:0 @@ -36,7 +36,7 @@ msgstr "Excluir Permanentemente o email após o envio" #. module: crm_partner_assign #: field:crm.lead.report.assign,delay_close:0 msgid "Delay to Close" -msgstr "Espera para Fechar" +msgstr "Adiar Fechamento" #. module: crm_partner_assign #: help:crm.lead.forward.to.partner,email_to:0 @@ -92,12 +92,12 @@ msgstr "Março" #. module: crm_partner_assign #: selection:crm.lead.report.assign,type:0 msgid "Lead" -msgstr "Prospécto" +msgstr "Prospecto" #. module: crm_partner_assign #: view:crm.lead.report.assign:0 msgid "Delay to close" -msgstr "Atraso para fechar" +msgstr "Adiar o fechamento" #. module: crm_partner_assign #: view:crm.partner.report.assign:0 @@ -233,7 +233,7 @@ msgstr "Anterior" #: code:addons/crm_partner_assign/partner_geo_assign.py:36 #, python-format msgid "Network error" -msgstr "Erro de rede" +msgstr "Erro na rede" #. module: crm_partner_assign #: field:crm.lead.forward.to.partner,email_from:0 @@ -274,12 +274,12 @@ msgstr "Prioridade" #: view:crm.lead.report.assign:0 #: field:crm.lead.report.assign,state:0 msgid "State" -msgstr "Status" +msgstr "Situação" #. module: crm_partner_assign #: field:crm.lead.report.assign,delay_expected:0 msgid "Overpassed Deadline" -msgstr "Prazo Superado" +msgstr "Prazo Ultrapassado" #. module: crm_partner_assign #: field:crm.lead.report.assign,type:0 @@ -318,12 +318,12 @@ msgstr "Analisar Prospecções" #. module: crm_partner_assign #: field:crm.lead.report.assign,creation_date:0 msgid "Creation Date" -msgstr "Dt. Criação" +msgstr "Data de Criação" #. module: crm_partner_assign #: field:crm.lead.forward.to.partner,res_id:0 msgid "Related Document ID" -msgstr "Documento Relacionado" +msgstr "ID do Documento Relacionado" #. module: crm_partner_assign #: view:crm.lead.report.assign:0 @@ -397,7 +397,7 @@ msgstr "Fechar" #. module: crm_partner_assign #: field:crm.lead.forward.to.partner,use_template:0 msgid "Use Template" -msgstr "Usar modelo" +msgstr "Usar Modelo" #. module: crm_partner_assign #: model:ir.actions.act_window,name:crm_partner_assign.action_report_crm_opportunity_assign @@ -453,7 +453,7 @@ msgstr "Assunto" #: view:crm.lead.report.assign:0 #: view:crm.partner.report.assign:0 msgid "Salesman" -msgstr "Vendedor" +msgstr "Representante" #. module: crm_partner_assign #: view:crm.lead.report.assign:0 @@ -580,7 +580,7 @@ msgstr "# da Oportunidade" #. module: crm_partner_assign #: view:crm.lead.report.assign:0 msgid "Lead Assign" -msgstr "Atribuir Prospécto" +msgstr "Atribuir Prospecto" #. module: crm_partner_assign #: selection:crm.lead.report.assign,month:0 @@ -600,7 +600,7 @@ msgstr "Janeiro" #. module: crm_partner_assign #: help:crm.lead,partner_assigned_id:0 msgid "Partner this case has been forwarded/assigned to." -msgstr "O Parceiro desse Caso foi Enviado/Atribuído para." +msgstr "Parceiro para que este caso foi enviado/atribuído" #. module: crm_partner_assign #: field:crm.lead.forward.to.partner,date:0 @@ -661,7 +661,7 @@ msgstr "Nome da Grade" #. module: crm_partner_assign #: help:crm.lead,date_assign:0 msgid "Last date this case was forwarded/assigned to a partner" -msgstr "Última data que este Caso foi Enviado/Atribuído a um parceiro" +msgstr "Última data que este caso foi enviado/atribuído a um parceiro" #. module: crm_partner_assign #: selection:crm.lead.report.assign,state:0 @@ -679,7 +679,9 @@ msgstr "Cópia oculta da mensagem para os destinatários" msgid "" "Full message headers, e.g. SMTP session headers (usually available on " "inbound messages only)" -msgstr "Cabeçalho completo, Ex Cabecalhos SMTP" +msgstr "" +"Cabeçalho completo da mensagem, Ex. SMTP session headers (geralmente " +"disponível somente para mensagens recebidas)" #. module: crm_partner_assign #: field:res.partner,date_localization:0 @@ -808,7 +810,7 @@ msgstr "Abril" #: model:ir.actions.act_window,name:crm_partner_assign.action_report_crm_partner_assign #: model:ir.ui.menu,name:crm_partner_assign.menu_report_crm_partner_assign_tree msgid "Partnership Analysis" -msgstr "Analise de Parceria" +msgstr "Análise de Parceria" #. module: crm_partner_assign #: model:ir.model,name:crm_partner_assign.model_crm_lead @@ -839,7 +841,7 @@ msgstr "" #. module: crm_partner_assign #: constraint:res.partner:0 msgid "Error ! You cannot create recursive associated members." -msgstr "Erro! Você não pode criar recursivamente a membros associados." +msgstr "Erro! Você não pode criar membros associados recursivamente." #. module: crm_partner_assign #: selection:crm.lead.forward.to.partner,history:0 diff --git a/addons/crm_todo/i18n/ru.po b/addons/crm_todo/i18n/ru.po new file mode 100644 index 00000000000..8ec484e8453 --- /dev/null +++ b/addons/crm_todo/i18n/ru.po @@ -0,0 +1,96 @@ +# Russian translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-02-08 00:36+0000\n" +"PO-Revision-Date: 2012-09-14 06:29+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Russian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-09-15 04:55+0000\n" +"X-Generator: Launchpad (build 15944)\n" + +#. module: crm_todo +#: model:ir.model,name:crm_todo.model_project_task +msgid "Task" +msgstr "Задачи" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "Timebox" +msgstr "Резерв времени" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "For cancelling the task" +msgstr "Для отмены задачи" + +#. module: crm_todo +#: constraint:project.task:0 +msgid "Error ! Task end-date must be greater then task start-date" +msgstr "" +"Ошибка! Дата завершения задачи должна быть позднее чем дата начала задачи" + +#. module: crm_todo +#: model:ir.model,name:crm_todo.model_crm_lead +msgid "crm.lead" +msgstr "crm.lead" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "Next" +msgstr "Далее" + +#. module: crm_todo +#: model:ir.actions.act_window,name:crm_todo.crm_todo_action +#: model:ir.ui.menu,name:crm_todo.menu_crm_todo +msgid "My Tasks" +msgstr "Мои задачи" + +#. module: crm_todo +#: view:crm.lead:0 +#: field:crm.lead,task_ids:0 +msgid "Tasks" +msgstr "Задачи" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "Done" +msgstr "Сделано" + +#. module: crm_todo +#: constraint:project.task:0 +msgid "Error ! You cannot create recursive tasks." +msgstr "Ошибка! Вы не можете создавать рекурсивные задачи." + +#. module: crm_todo +#: view:crm.lead:0 +msgid "Cancel" +msgstr "Отмена" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "Extra Info" +msgstr "Доп. инфо." + +#. module: crm_todo +#: field:project.task,lead_id:0 +msgid "Lead / Opportunity" +msgstr "Кандидат / предложение" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "For changing to done state" +msgstr "Для смены в состояние \"Сделано\"" + +#. module: crm_todo +#: view:crm.lead:0 +msgid "Previous" +msgstr "Назад" diff --git a/addons/document/document_directory.py b/addons/document/document_directory.py index 0f18673a007..1ead23ab402 100644 --- a/addons/document/document_directory.py +++ b/addons/document/document_directory.py @@ -69,7 +69,7 @@ class document_directory(osv.osv): } - def _get_root_directory(self, cr,uid, context=None): + def _get_root_directory(self, cr, uid, context=None): objid=self.pool.get('ir.model.data') try: mid = objid._get_id(cr, uid, 'document', 'dir_root') @@ -77,9 +77,7 @@ class document_directory(osv.osv): return False root_id = objid.read(cr, uid, mid, ['res_id'])['res_id'] return root_id - except Exception, e: - - _logger.warning('Cannot set directory root:'+ str(e)) + except Exception: return False return objid.browse(cr, uid, mid, context=context).res_id diff --git a/addons/document/report/document_report_view.xml b/addons/document/report/document_report_view.xml index 2a8b9f34ddf..2740967d53a 100644 --- a/addons/document/report/document_report_view.xml +++ b/addons/document/report/document_report_view.xml @@ -114,7 +114,7 @@ report.document.user - + diff --git a/addons/document_page/document_page_demo.xml b/addons/document_page/document_page_demo.xml index 96984fe2e0b..a5ca56fd573 100644 --- a/addons/document_page/document_page_demo.xml +++ b/addons/document_page/document_page_demo.xml @@ -6,7 +6,6 @@ OpenERP Features - 10 category Summary of the feature diff --git a/addons/document_page/wizard/document_page_create_menu.py b/addons/document_page/wizard/document_page_create_menu.py index 68697233f84..79a43f952f0 100644 --- a/addons/document_page/wizard/document_page_create_menu.py +++ b/addons/document_page/wizard/document_page_create_menu.py @@ -65,7 +65,6 @@ class document_page_create_menu(osv.osv_memory): 'view_id': False, 'type': 'ir.actions.act_window', 'target': 'inlineview', - 'nodestroy': True, } value['domain'] = "[('parent_id','=',%d)]" % (page.id) value['res_id'] = page.id diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py index 1e548f68991..8860d32686e 100644 --- a/addons/event/__openerp__.py +++ b/addons/event/__openerp__.py @@ -25,21 +25,18 @@ 'name': 'Events Organisation', 'version': '0.1', 'category': 'Tools', - 'summary': 'For Trainings, Conferences & Meetings', + 'summary': 'Trainings, Conferences, Meetings, Exhibitions, Registrations', 'description': """ Organization and management of Events. ====================================== -This module allows you: ------------------------ - * to manage your events and their registrations - * to use emails to automatically confirm and send acknowledgements for any - registration to an event +The event module allows you to efficiently organise events and all related tasks: planification, registration tracking, +attendances, etc. -Note that: ----------- - - You can define new types of events in - **Events** / **Configuration** / **Types of Events** +Key Features +------------ +* Manage your Events and Registrations +* Use emails to automatically confirm and send acknowledgements for any event registration """, 'author': 'OpenERP SA', 'depends': ['base_setup', 'board', 'email_template', 'google_map'], diff --git a/addons/event/event.py b/addons/event/event.py index 747981f854b..44def4f0c76 100644 --- a/addons/event/event.py +++ b/addons/event/event.py @@ -207,6 +207,8 @@ class event_event(osv.osv): 'main_speaker_id': fields.many2one('res.partner','Main Speaker', readonly=False, states={'done': [('readonly', True)]}, help="Speaker who will be giving speech at the event."), 'address_id': fields.many2one('res.partner','Location Address', readonly=False, states={'done': [('readonly', True)]}), 'street': fields.related('address_id','street',type='char',string='Street'), + 'street2': fields.related('address_id','street2',type='char',string='Street2'), + 'state_id': fields.related('address_id','state_id',type='many2one', relation="res.country.state", string='State'), 'zip': fields.related('address_id','zip',type='char',string='zip'), 'city': fields.related('address_id','city',type='char',string='city'), 'speaker_confirmed': fields.boolean('Speaker Confirmed', readonly=False, states={'done': [('readonly', True)]}), @@ -265,16 +267,20 @@ class event_event(osv.osv): def on_change_address_id(self, cr, uid, ids, address_id, context=None): values = { 'street' : False, + 'street2' : False, 'city' : False, 'zip' : False, + 'country_id' : False, + 'state_id' : False, } if isinstance(address_id, (long, int)): address = self.pool.get('res.partner').browse(cr, uid, address_id, context=context) - values.update({ 'street' : address.street, - + 'street2' : address.street2, 'city' : address.city, + 'country_id' : address.country_id and address.country_id.id, + 'state_id' : address.state_id and address.state_id.id, 'zip' : address.zip, }) diff --git a/addons/event/event_data.xml b/addons/event/event_data.xml index 2c19fdc574f..5e34ddcfe02 100644 --- a/addons/event/event_data.xml +++ b/addons/event/event_data.xml @@ -7,10 +7,9 @@ reload - + - automatic - 100 + open diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index e2ff2e67e87..fd396053d5d 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -101,7 +101,7 @@
- +
-
-

From to -

-