[MERGE] merged trunk.
bzr revid: vmt@openerp.com-20110826073904-kpr0zvgmmcttimto
This commit is contained in:
commit
6d5b0edf34
|
@ -36,12 +36,13 @@ class res_company(osv.osv):
|
|||
}
|
||||
|
||||
_defaults = {
|
||||
'overdue_msg': 'Please note that the following payments are now due. If your payment \
|
||||
has been sent, kindly forward your payment details. If payment will be \
|
||||
delayed further, please contact us to discuss. \
|
||||
\nWould your payment have been carried out after this mail was sent, please consider the present one as void.'
|
||||
'overdue_msg': '''Our records indicate that the following payments are still due. If the amount
|
||||
has already been paid, please disregard this notice. However, if you have any
|
||||
queries regarding your account, please contact us.
|
||||
Thank you in advance.
|
||||
'''
|
||||
}
|
||||
|
||||
res_company()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:46+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: account_accountant
|
||||
#: model:ir.module.module,description:account_accountant.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
"This module gives the admin user the access to all the accounting features "
|
||||
"like the journal\n"
|
||||
"items and the chart of accounts.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"This module gives the admin user access to all accounting features such as "
|
||||
"the journal\n"
|
||||
"items and the chart of accounts.\n"
|
||||
" "
|
||||
|
||||
#. module: account_accountant
|
||||
#: model:ir.module.module,shortdesc:account_accountant.module_meta_information
|
||||
msgid "Accountant"
|
||||
msgstr "Accountant"
|
|
@ -8,21 +8,22 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2010-08-02 21:56+0000\n"
|
||||
"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:12+0000\n"
|
||||
"Last-Translator: Rolv Råen (adEgo) <Unknown>\n"
|
||||
"Language-Team: Norwegian Bokmal <nb@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-04-29 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 12758)\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,hours_qtt_invoiced:0
|
||||
msgid ""
|
||||
"Number of hours that can be invoiced plus those that already have been "
|
||||
"invoiced."
|
||||
msgstr "Antall timer som faktureres plus de som allerede har blitt fakturert"
|
||||
msgstr ""
|
||||
"Antall timer som kan faktureres pluss de som allerede har blitt fakturert"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,remaining_ca:0
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
|
|
|
@ -0,0 +1,124 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:47+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: view:product.category:0
|
||||
msgid " Accounting Property"
|
||||
msgstr " Accounting Property"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: sql_constraint:purchase.order:0
|
||||
msgid "Order Reference must be unique !"
|
||||
msgstr "Order Reference must be unique !"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: constraint:product.category:0
|
||||
msgid "Error ! You can not create recursive categories."
|
||||
msgstr "Error ! You can not create recursive categories."
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: constraint:product.template:0
|
||||
msgid ""
|
||||
"Error: The default UOM and the purchase UOM must be in the same category."
|
||||
msgstr ""
|
||||
"Error: The default UOM and the purchase UOM must be in the same category."
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.model,name:account_anglo_saxon.model_account_invoice_line
|
||||
msgid "Invoice Line"
|
||||
msgstr "Invoice Line"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.model,name:account_anglo_saxon.model_purchase_order
|
||||
msgid "Purchase Order"
|
||||
msgstr "Purchase Order"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.model,name:account_anglo_saxon.model_product_template
|
||||
msgid "Product Template"
|
||||
msgstr "Product Template"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.model,name:account_anglo_saxon.model_product_category
|
||||
msgid "Product Category"
|
||||
msgstr "Product Category"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.module.module,shortdesc:account_anglo_saxon.module_meta_information
|
||||
msgid "Stock Accounting for Anglo Saxon countries"
|
||||
msgstr "Stock Accounting for Anglo Saxon countries"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: field:product.category,property_account_creditor_price_difference_categ:0
|
||||
#: field:product.template,property_account_creditor_price_difference:0
|
||||
msgid "Price Difference Account"
|
||||
msgstr "Price Difference Account"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.model,name:account_anglo_saxon.model_account_invoice
|
||||
msgid "Invoice"
|
||||
msgstr "Invoice"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.model,name:account_anglo_saxon.model_stock_picking
|
||||
msgid "Picking List"
|
||||
msgstr "Picking List"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: model:ir.module.module,description:account_anglo_saxon.module_meta_information
|
||||
msgid ""
|
||||
"This module will support the Anglo-Saxons accounting methodology by\n"
|
||||
" changing the accounting logic with stock transactions. The difference "
|
||||
"between the Anglo-Saxon accounting countries\n"
|
||||
" and the Rhine or also called Continental accounting countries is the "
|
||||
"moment of taking the Cost of Goods Sold versus Cost of Sales.\n"
|
||||
" Anglo-Saxons accounting does take the cost when sales invoice is "
|
||||
"created, Continental accounting will take the cost at the moment the goods "
|
||||
"are shipped.\n"
|
||||
" This module will add this functionality by using a interim account, to "
|
||||
"store the value of shipped goods and will contra book this interim account\n"
|
||||
" when the invoice is created to transfer this amount to the debtor or "
|
||||
"creditor account.\n"
|
||||
" Secondly, price differences between actual purchase price and fixed "
|
||||
"product standard price are booked on a separate account"
|
||||
msgstr ""
|
||||
"This module will support the Anglo-Saxons accounting methodology by\n"
|
||||
" changing the accounting logic with stock transactions. The difference "
|
||||
"between the Anglo-Saxon accounting countries\n"
|
||||
" and the Rhine or also called Continental accounting countries is the "
|
||||
"moment of taking the Cost of Goods Sold versus Cost of Sales.\n"
|
||||
" Anglo-Saxons accounting takes the cost when sales invoice is created, "
|
||||
"Continental accounting will take the cost at the moment the goods are "
|
||||
"shipped.\n"
|
||||
" This module adds this functionality by using a interim account, to store "
|
||||
"the value of shipped goods and will contra book this interim account\n"
|
||||
" When the invoice is created to transfer this amount to the debtor or "
|
||||
"creditor account.\n"
|
||||
" Secondly, price differences between actual purchase price and fixed "
|
||||
"product standard price are booked on a separate account"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: help:product.category,property_account_creditor_price_difference_categ:0
|
||||
#: help:product.template,property_account_creditor_price_difference:0
|
||||
msgid ""
|
||||
"This account will be used to value price difference between purchase price "
|
||||
"and cost price."
|
||||
msgstr ""
|
||||
"This account will be used to value price difference between purchase price "
|
||||
"and cost price."
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account_asset
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:46+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\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 ""
|
||||
"\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"
|
||||
" "
|
||||
|
||||
#. module: account_cancel
|
||||
#: model:ir.module.module,shortdesc:account_cancel.module_meta_information
|
||||
msgid "Account Cancel"
|
||||
msgstr "Account Cancel"
|
|
@ -0,0 +1,28 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:47+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: account_chart
|
||||
#: model:ir.module.module,description:account_chart.module_meta_information
|
||||
msgid "Remove minimal account chart"
|
||||
msgstr "Remove minimal account chart"
|
||||
|
||||
#. module: account_chart
|
||||
#: model:ir.module.module,shortdesc:account_chart.module_meta_information
|
||||
msgid "Charts of Accounts"
|
||||
msgstr "Charts of Accounts"
|
|
@ -0,0 +1,259 @@
|
|||
# Polish 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 12:34+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Polish <pl@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: account_coda
|
||||
#: help:account.coda,journal_id:0
|
||||
#: field:account.coda.import,journal_id:0
|
||||
msgid "Bank Journal"
|
||||
msgstr "Dziennik bankowy"
|
||||
|
||||
#. module: account_coda
|
||||
#: view:account.coda:0
|
||||
#: field:account.coda.import,note:0
|
||||
msgid "Log"
|
||||
msgstr "Dziennik"
|
||||
|
||||
#. 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 "Grupuj wg"
|
||||
|
||||
#. 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 "Data importu"
|
||||
|
||||
#. 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 "Firma"
|
||||
|
||||
#. 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 "Użytkownik"
|
||||
|
||||
#. module: account_coda
|
||||
#: view:account.coda:0
|
||||
#: field:account.coda,date:0
|
||||
msgid "Date"
|
||||
msgstr "Data"
|
||||
|
||||
#. 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 "Anuluj"
|
||||
|
||||
#. 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 "Wyniki"
|
||||
|
||||
#. 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 ""
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account_followup
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account_payment
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: account_sequence
|
||||
|
|
|
@ -0,0 +1,110 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-03 16:56+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:50+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: model:ir.module.module,description:analytic_journal_billing_rate.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
"\n"
|
||||
" This module allows you to define what is the default invoicing rate for "
|
||||
"a specific journal on a given account. This is mostly used when a user "
|
||||
"encodes his timesheet: the values are retrieved and the fields are auto-"
|
||||
"filled... but the possibility to change these values is still available.\n"
|
||||
"\n"
|
||||
" Obviously if no data has been recorded for the current account, the "
|
||||
"default value is given as usual by the account data so that this module is "
|
||||
"perfectly compatible with older configurations.\n"
|
||||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"\n"
|
||||
" This module allows you to define the default invoicing rate for a "
|
||||
"specific journal on a given account. This is mostly used when a user encodes "
|
||||
"their timesheet: the values are retrieved and the fields are auto-filled... "
|
||||
"but the possibility to change these values is still available.\n"
|
||||
"\n"
|
||||
" Obviously if no data has been recorded for the current account, the "
|
||||
"default value is given by the account data so that this module is perfectly "
|
||||
"compatible with older configurations.\n"
|
||||
"\n"
|
||||
" "
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: field:analytic_journal_rate_grid,journal_id:0
|
||||
msgid "Analytic Journal"
|
||||
msgstr "Analytic Journal"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
|
||||
msgid "Invoice"
|
||||
msgstr "Invoice"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: view:analytic_journal_rate_grid:0
|
||||
msgid "Billing Rate per Journal for this Analytic Account"
|
||||
msgstr "Billing Rate per Journal for this Analytic Account"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: field:analytic_journal_rate_grid,account_id:0
|
||||
#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
|
||||
msgid "Analytic Account"
|
||||
msgstr "Analytic Account"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
|
||||
msgid "Relation table between journals and billing rates"
|
||||
msgstr "Relation table between journals and billing rates"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: field:account.analytic.account,journal_rate_ids:0
|
||||
msgid "Invoicing Rate per Journal"
|
||||
msgstr "Invoicing Rate per Journal"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: model:ir.module.module,shortdesc:analytic_journal_billing_rate.module_meta_information
|
||||
msgid ""
|
||||
"Analytic Journal Billing Rate, Define the default invoicing rate for a "
|
||||
"specific journal"
|
||||
msgstr ""
|
||||
"Analytic Journal Billing Rate, Define the default invoicing rate for a "
|
||||
"specific journal"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid ""
|
||||
"Error! The currency has to be the same as the currency of the selected "
|
||||
"company"
|
||||
msgstr ""
|
||||
"Error! The currency has to be the same as that of the selected company"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: field:analytic_journal_rate_grid,rate_id:0
|
||||
msgid "Invoicing Rate"
|
||||
msgstr "Invoicing Rate"
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid "Error! You can not create recursive analytic accounts."
|
||||
msgstr "Error! You can not create recursive analytic accounts."
|
||||
|
||||
#. module: analytic_journal_billing_rate
|
||||
#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
|
||||
msgid "Timesheet Line"
|
||||
msgstr "Timesheet Line"
|
|
@ -0,0 +1,116 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-03 16:56+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:43+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: field:analytic_user_funct_grid,product_id:0
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: code:addons/analytic_user_function/analytic_user_function.py:96
|
||||
#: code:addons/analytic_user_function/analytic_user_function.py:131
|
||||
#, python-format
|
||||
msgid "Error !"
|
||||
msgstr "Error !"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: model:ir.model,name:analytic_user_function.model_hr_analytic_timesheet
|
||||
msgid "Timesheet Line"
|
||||
msgstr "Timesheet Line"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: field:analytic_user_funct_grid,account_id:0
|
||||
#: model:ir.model,name:analytic_user_function.model_account_analytic_account
|
||||
msgid "Analytic Account"
|
||||
msgstr "Analytic Account"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: view:account.analytic.account:0
|
||||
#: field:account.analytic.account,user_product_ids:0
|
||||
msgid "Users/Products Rel."
|
||||
msgstr "Users/Products Rel."
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: field:analytic_user_funct_grid,user_id:0
|
||||
msgid "User"
|
||||
msgstr "User"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid ""
|
||||
"Error! The currency has to be the same as the currency of the selected "
|
||||
"company"
|
||||
msgstr ""
|
||||
"Error! The currency has to be the same as that of the selected company"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: code:addons/analytic_user_function/analytic_user_function.py:97
|
||||
#: code:addons/analytic_user_function/analytic_user_function.py:132
|
||||
#, python-format
|
||||
msgid "There is no expense account define for this product: \"%s\" (id:%d)"
|
||||
msgstr "There is no expense account define for this product: \"%s\" (id:%d)"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: model:ir.model,name:analytic_user_function.model_analytic_user_funct_grid
|
||||
msgid "Relation table between users and products on a analytic account"
|
||||
msgstr "Relation table between users and products on a analytic account"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: model:ir.module.module,description:analytic_user_function.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
"\n"
|
||||
" This module allows you to define what is the default function of a "
|
||||
"specific user on a given account. This is mostly used when a user encodes "
|
||||
"his timesheet: the values are retrieved and the fields are auto-filled... "
|
||||
"but the possibility to change these values is still available.\n"
|
||||
"\n"
|
||||
" Obviously if no data has been recorded for the current account, the "
|
||||
"default value is given as usual by the employee data so that this module is "
|
||||
"perfectly compatible with older configurations.\n"
|
||||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"\n"
|
||||
" This module allows you to define the default function of a specific user "
|
||||
"on a given account. This is mostly used when a user encodes his timesheet: "
|
||||
"the values are retrieved and the fields are auto-filled... but the "
|
||||
"possibility to change these values is still available.\n"
|
||||
"\n"
|
||||
" Obviously if no data has been recorded for the current account, the "
|
||||
"default value is given as usual by the employee data so that this module is "
|
||||
"perfectly compatible with older configurations.\n"
|
||||
"\n"
|
||||
" "
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: model:ir.module.module,shortdesc:analytic_user_function.module_meta_information
|
||||
msgid "Analytic User Function"
|
||||
msgstr "Analytic User Function"
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid "Error! You can not create recursive analytic accounts."
|
||||
msgstr "Error! You can not create recursive analytic accounts."
|
||||
|
||||
#. module: analytic_user_function
|
||||
#: view:analytic_user_funct_grid:0
|
||||
msgid "User's Product for this Analytic Account"
|
||||
msgstr "User's Product for this Analytic Account"
|
|
@ -0,0 +1,145 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:44+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: association
|
||||
#: field:profile.association.config.install_modules_wizard,wiki:0
|
||||
msgid "Wiki"
|
||||
msgstr "Wiki"
|
||||
|
||||
#. module: association
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
msgid "Event Management"
|
||||
msgstr "Event Management"
|
||||
|
||||
#. module: association
|
||||
#: field:profile.association.config.install_modules_wizard,project_gtd:0
|
||||
msgid "Getting Things Done"
|
||||
msgstr "Getting Things Done"
|
||||
|
||||
#. module: association
|
||||
#: model:ir.module.module,description:association.module_meta_information
|
||||
msgid "This module is to create Profile for Associates"
|
||||
msgstr "This module is to create Profile for Associates"
|
||||
|
||||
#. module: association
|
||||
#: field:profile.association.config.install_modules_wizard,progress:0
|
||||
msgid "Configuration Progress"
|
||||
msgstr "Configuration Progress"
|
||||
|
||||
#. module: association
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
msgid ""
|
||||
"Here are specific applications related to the Association Profile you "
|
||||
"selected."
|
||||
msgstr ""
|
||||
"Here are specific applications related to the Association Profile you "
|
||||
"selected."
|
||||
|
||||
#. module: association
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
msgid "title"
|
||||
msgstr "title"
|
||||
|
||||
#. module: association
|
||||
#: help:profile.association.config.install_modules_wizard,event_project:0
|
||||
msgid "Helps you to manage and organize your events."
|
||||
msgstr "Helps you to manage and organise your events."
|
||||
|
||||
#. module: association
|
||||
#: field:profile.association.config.install_modules_wizard,config_logo:0
|
||||
msgid "Image"
|
||||
msgstr "Image"
|
||||
|
||||
#. module: association
|
||||
#: help:profile.association.config.install_modules_wizard,hr_expense:0
|
||||
msgid ""
|
||||
"Tracks and manages employee expenses, and can automatically re-invoice "
|
||||
"clients if the expenses are project-related."
|
||||
msgstr ""
|
||||
"Tracks and manages employee expenses, and can automatically re-invoice "
|
||||
"clients if the expenses are project-related."
|
||||
|
||||
#. module: association
|
||||
#: help:profile.association.config.install_modules_wizard,project_gtd:0
|
||||
msgid ""
|
||||
"GTD is a methodology to efficiently organise yourself and your tasks. This "
|
||||
"module fully integrates GTD principle with OpenERP's project management."
|
||||
msgstr ""
|
||||
"GTD is a methodology to efficiently organise yourself and your tasks. This "
|
||||
"module fully integrates GTD principle with OpenERP's project management."
|
||||
|
||||
#. module: association
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
msgid "Resources Management"
|
||||
msgstr "Resources Management"
|
||||
|
||||
#. module: association
|
||||
#: model:ir.module.module,shortdesc:association.module_meta_information
|
||||
msgid "Association profile"
|
||||
msgstr "Association profile"
|
||||
|
||||
#. module: association
|
||||
#: field:profile.association.config.install_modules_wizard,hr_expense:0
|
||||
msgid "Expenses Tracking"
|
||||
msgstr "Expenses Tracking"
|
||||
|
||||
#. module: association
|
||||
#: model:ir.actions.act_window,name:association.action_config_install_module
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
msgid "Association Application Configuration"
|
||||
msgstr "Association Application Configuration"
|
||||
|
||||
#. module: association
|
||||
#: help:profile.association.config.install_modules_wizard,wiki:0
|
||||
msgid ""
|
||||
"Lets you create wiki pages and page groups in order to keep track of "
|
||||
"business knowledge and share it with and between your employees."
|
||||
msgstr ""
|
||||
"Lets you create wiki pages and page groups to keep track of business "
|
||||
"knowledge and share it with and between your employees."
|
||||
|
||||
#. module: association
|
||||
#: help:profile.association.config.install_modules_wizard,project:0
|
||||
msgid ""
|
||||
"Helps you manage your projects and tasks by tracking them, generating "
|
||||
"plannings, etc..."
|
||||
msgstr ""
|
||||
"Helps you manage your projects and tasks by tracking them, generating "
|
||||
"plannings, etc..."
|
||||
|
||||
#. module: association
|
||||
#: model:ir.model,name:association.model_profile_association_config_install_modules_wizard
|
||||
msgid "profile.association.config.install_modules_wizard"
|
||||
msgstr "profile.association.config.install_modules_wizard"
|
||||
|
||||
#. module: association
|
||||
#: field:profile.association.config.install_modules_wizard,event_project:0
|
||||
msgid "Events"
|
||||
msgstr "Events"
|
||||
|
||||
#. module: association
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
#: field:profile.association.config.install_modules_wizard,project:0
|
||||
msgid "Project Management"
|
||||
msgstr "Project Management"
|
||||
|
||||
#. module: association
|
||||
#: view:profile.association.config.install_modules_wizard:0
|
||||
msgid "Configure"
|
||||
msgstr "Configure"
|
|
@ -0,0 +1,86 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:52+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: base_crypt
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "You can not have two users with the same login !"
|
||||
|
||||
#. module: base_crypt
|
||||
#: model:ir.model,name:base_crypt.model_res_users
|
||||
msgid "res.users"
|
||||
msgstr "res.users"
|
||||
|
||||
#. module: base_crypt
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "The chosen company is not in the allowed companies for this user"
|
||||
|
||||
#. module: base_crypt
|
||||
#: code:addons/base_crypt/crypt.py:132
|
||||
#, python-format
|
||||
msgid "Please specify the password !"
|
||||
msgstr "Please specify the password !"
|
||||
|
||||
#. module: base_crypt
|
||||
#: model:ir.module.module,shortdesc:base_crypt.module_meta_information
|
||||
msgid "Base - Password Encryption"
|
||||
msgstr "Base - Password Encryption"
|
||||
|
||||
#. module: base_crypt
|
||||
#: code:addons/base_crypt/crypt.py:132
|
||||
#, python-format
|
||||
msgid "Error"
|
||||
msgstr "Error"
|
||||
|
||||
#. module: base_crypt
|
||||
#: model:ir.module.module,description:base_crypt.module_meta_information
|
||||
msgid ""
|
||||
"This module replaces the cleartext password in the database with a password "
|
||||
"hash,\n"
|
||||
"preventing anyone from reading the original password.\n"
|
||||
"For your existing user base, the removal of the cleartext passwords occurs "
|
||||
"the first time\n"
|
||||
"a user logs into the database, after installing base_crypt.\n"
|
||||
"After installing this module it won't be possible to recover a forgotten "
|
||||
"password for your\n"
|
||||
"users, the only solution is for an admin to set a new password.\n"
|
||||
"\n"
|
||||
"Note: installing this module does not mean you can ignore basic security "
|
||||
"measures,\n"
|
||||
"as the password is still transmitted unencrypted on the network (by the "
|
||||
"client),\n"
|
||||
"unless you are using a secure protocol such as XML-RPCS.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"This module replaces the cleartext password in the database with a password "
|
||||
"hash,\n"
|
||||
"preventing anyone from reading the original password.\n"
|
||||
"For your existing user base, the removal of the cleartext passwords occurs "
|
||||
"the first time\n"
|
||||
"a user logs into the database, after installing base_crypt.\n"
|
||||
"After installing this module it is impossible to recover a forgotten user\n"
|
||||
"password, the only solution is for an admin to set a new password.\n"
|
||||
"\n"
|
||||
"Note: installing this module does not mean you can ignore basic security "
|
||||
"measures,\n"
|
||||
"as the password is still transmitted unencrypted on the network (by the "
|
||||
"client),\n"
|
||||
"unless you are using a secure protocol such as XML-RPCS.\n"
|
||||
" "
|
|
@ -0,0 +1,99 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:41+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:32+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:ir.module.module,shortdesc:base_iban.module_meta_information
|
||||
msgid "Create IBAN bank accounts"
|
||||
msgstr "Create IBAN bank accounts"
|
||||
|
||||
#. module: base_iban
|
||||
#: code:addons/base_iban/base_iban.py:120
|
||||
#, python-format
|
||||
msgid ""
|
||||
"The IBAN does not seems to be correct. You should have entered something "
|
||||
"like this %s"
|
||||
msgstr ""
|
||||
"The IBAN appears to be incorrect. You should have entered something like "
|
||||
"this %s"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:res.partner.bank.type.field,name:base_iban.bank_zip_field
|
||||
msgid "zip"
|
||||
msgstr "zip"
|
||||
|
||||
#. module: base_iban
|
||||
#: help:res.partner.bank,iban:0
|
||||
msgid "International Bank Account Number"
|
||||
msgstr "International Bank Account Number"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:ir.model,name:base_iban.model_res_partner_bank
|
||||
msgid "Bank Accounts"
|
||||
msgstr "Bank Accounts"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:res.partner.bank.type.field,name:base_iban.bank_country_field
|
||||
msgid "country_id"
|
||||
msgstr "country_id"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:res.partner.bank.type.field,name:base_iban.bank_swift_field
|
||||
msgid "bic"
|
||||
msgstr "bic"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:res.partner.bank.type.field,name:base_iban.bank_iban_field
|
||||
msgid "iban"
|
||||
msgstr "iban"
|
||||
|
||||
#. module: base_iban
|
||||
#: code:addons/base_iban/base_iban.py:121
|
||||
#, python-format
|
||||
msgid "The IBAN is invalid, It should begin with the country code"
|
||||
msgstr "The IBAN is invalid, It should begin with the country code"
|
||||
|
||||
#. module: base_iban
|
||||
#: field:res.partner.bank,iban:0
|
||||
msgid "IBAN"
|
||||
msgstr "IBAN"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:res.partner.bank.type,name:base_iban.bank_iban
|
||||
msgid "IBAN Account"
|
||||
msgstr "IBAN Account"
|
||||
|
||||
#. module: base_iban
|
||||
#: model:ir.module.module,description:base_iban.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
"This module installs the base for IBAN (International Bank Account Number) "
|
||||
"bank accounts and checks for its validity.\n"
|
||||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"This module installs the base for IBAN (International Bank Account Number) "
|
||||
"bank accounts and checks for its validity.\n"
|
||||
"\n"
|
||||
" "
|
||||
|
||||
#. module: base_iban
|
||||
#: model:res.partner.bank.type.field,name:base_iban.bank_acc_number_field
|
||||
msgid "acc_number"
|
||||
msgstr "acc_number"
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: base_module_quality
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
# 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-23 01:58+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Arabic <ar@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: base_tools
|
||||
#: model:ir.module.module,shortdesc:base_tools.module_meta_information
|
||||
msgid "Common base for tools modules"
|
||||
msgstr "قاعدة أساسية لأدوات البرامج"
|
||||
|
||||
#. module: base_tools
|
||||
#: model:ir.module.module,description:base_tools.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" "
|
|
@ -0,0 +1,32 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:52+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: base_tools
|
||||
#: model:ir.module.module,shortdesc:base_tools.module_meta_information
|
||||
msgid "Common base for tools modules"
|
||||
msgstr "Common base for tools modules"
|
||||
|
||||
#. module: base_tools
|
||||
#: model:ir.module.module,description:base_tools.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" "
|
|
@ -0,0 +1,86 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:34+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:32+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: base_vat
|
||||
#: code:addons/base_vat/base_vat.py:87
|
||||
#, python-format
|
||||
msgid ""
|
||||
"The Vat does not seems to be correct. You should have entered something like "
|
||||
"this %s"
|
||||
msgstr ""
|
||||
"The VAT does appear to be incorrect. You should have entered something like "
|
||||
"this %s"
|
||||
|
||||
#. module: base_vat
|
||||
#: model:ir.module.module,description:base_vat.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
" Enable the VAT Number for the partner. Check the validity of that VAT "
|
||||
"Number.\n"
|
||||
"\n"
|
||||
" This module follows the methods stated at http://sima-pc.com/nif.php "
|
||||
"for\n"
|
||||
" checking the validity of VAT Number assigned to partners in European "
|
||||
"countries.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" Enable the VAT Number for the partner. Check the validity of that VAT "
|
||||
"Number.\n"
|
||||
"\n"
|
||||
" This module follows the methods stated at http://sima-pc.com/nif.php "
|
||||
"for\n"
|
||||
" checking the validity of VAT Number assigned to partners in European "
|
||||
"countries.\n"
|
||||
" "
|
||||
|
||||
#. module: base_vat
|
||||
#: model:ir.module.module,shortdesc:base_vat.module_meta_information
|
||||
msgid "Base VAT - To check VAT number validity"
|
||||
msgstr "Base VAT - To check VAT number validity"
|
||||
|
||||
#. module: base_vat
|
||||
#: constraint:res.partner:0
|
||||
msgid "Error ! You can not create recursive associated members."
|
||||
msgstr "Error ! You can not create recursive associated members."
|
||||
|
||||
#. module: base_vat
|
||||
#: code:addons/base_vat/base_vat.py:88
|
||||
#, python-format
|
||||
msgid "The VAT is invalid, It should begin with the country code"
|
||||
msgstr "The VAT is invalid, It should begin with the country code"
|
||||
|
||||
#. module: base_vat
|
||||
#: help:res.partner,vat_subjected:0
|
||||
msgid ""
|
||||
"Check this box if the partner is subjected to the VAT. It will be used for "
|
||||
"the VAT legal statement."
|
||||
msgstr ""
|
||||
"Check this box if the partner is subject to VAT. It will be used for the VAT "
|
||||
"legal statement."
|
||||
|
||||
#. module: base_vat
|
||||
#: model:ir.model,name:base_vat.model_res_partner
|
||||
msgid "Partner"
|
||||
msgstr "Partner"
|
||||
|
||||
#. module: base_vat
|
||||
#: field:res.partner,vat_subjected:0
|
||||
msgid "VAT Legal Statement"
|
||||
msgstr "VAT Legal Statement"
|
|
@ -6,9 +6,35 @@
|
|||
<field name="name">Applications Tiles</field>
|
||||
<field name="tag">board.home.applications</field>
|
||||
</record>
|
||||
<record id="action_res_widgets_display" model="ir.actions.client">
|
||||
<field name="name">Homepage Widgets</field>
|
||||
<record id="action_res_widgets_tweets" model="ir.actions.client">
|
||||
<field name="name">Tweets Widget</field>
|
||||
<field name="tag">board.home.widgets</field>
|
||||
<field name="params" eval="{'widget_id': ref('base.openerp_favorites_twitter_widget')}"/>
|
||||
</record>
|
||||
<record id="action_res_widgets_events" model="ir.actions.client">
|
||||
<field name="name">Events Widget</field>
|
||||
<field name="tag">board.home.widgets</field>
|
||||
<field name="params" eval="{'widget_id': ref('base.events_widget')}"/>
|
||||
</record>
|
||||
<record id="action_res_widgets_facebook" model="ir.actions.client">
|
||||
<field name="name">Facebook Widget</field>
|
||||
<field name="tag">board.home.widgets</field>
|
||||
<field name="params" eval="{'widget_id': ref('base.facebook_widget')}"/>
|
||||
</record>
|
||||
<record id="action_res_widgets_note" model="ir.actions.client">
|
||||
<field name="name">Note Widget</field>
|
||||
<field name="tag">board.home.widgets</field>
|
||||
<field name="params" eval="{'widget_id': ref('base.note_widget')}"/>
|
||||
</record>
|
||||
<record id="action_res_widgets_map" model="ir.actions.client">
|
||||
<field name="name">Google Maps Widget</field>
|
||||
<field name="tag">board.home.widgets</field>
|
||||
<field name="params" eval="{'widget_id': ref('base.google_maps_widget')}"/>
|
||||
</record>
|
||||
<record id="action_res_widgets_currency_converter" model="ir.actions.client">
|
||||
<field name="name">Currency Converter Widget</field>
|
||||
<field name="tag">board.home.widgets</field>
|
||||
<field name="params" eval="{'widget_id': ref('base.currency_converter_widget')}"/>
|
||||
</record>
|
||||
<record id="view_board_homepage" model="ir.ui.view">
|
||||
<field name="name">Homepage Board</field>
|
||||
|
@ -21,7 +47,8 @@
|
|||
<action name="%(action_application_tiles)d"/>
|
||||
</child1>
|
||||
<child2>
|
||||
<action name="%(action_res_widgets_display)d"/>
|
||||
<action name="%(action_res_widgets_tweets)d"/>
|
||||
<action name="%(action_res_widgets_events)d"/>
|
||||
</child2>
|
||||
</hpaned>
|
||||
</form>
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: caldav
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:53+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: claim_from_delivery
|
||||
#: model:ir.actions.act_window,name:claim_from_delivery.action_claim_from_delivery
|
||||
msgid "Claim"
|
||||
msgstr "Claim"
|
||||
|
||||
#. module: claim_from_delivery
|
||||
#: model:ir.module.module,description:claim_from_delivery.module_meta_information
|
||||
msgid "Create Claim from delivery order:\n"
|
||||
msgstr "Create Claim from delivery order:\n"
|
||||
|
||||
#. module: claim_from_delivery
|
||||
#: model:ir.module.module,shortdesc:claim_from_delivery.module_meta_information
|
||||
msgid "Claim from delivery"
|
||||
msgstr "Claim from delivery"
|
|
@ -24,17 +24,11 @@ import crm_action_rule
|
|||
import crm_segmentation
|
||||
import crm_meeting
|
||||
import crm_lead
|
||||
import crm_opportunity
|
||||
|
||||
import crm_phonecall
|
||||
|
||||
import crm_installer
|
||||
import report
|
||||
import wizard
|
||||
|
||||
import res_partner
|
||||
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
|
|
@ -69,7 +69,6 @@ Creates a dashboard for CRM that includes:
|
|||
'crm_meeting_data.xml',
|
||||
'crm_lead_data.xml',
|
||||
'crm_meeting_data.xml',
|
||||
'crm_opportunity_data.xml',
|
||||
'crm_phonecall_data.xml',
|
||||
],
|
||||
'update_xml': [
|
||||
|
@ -103,9 +102,6 @@ Creates a dashboard for CRM that includes:
|
|||
'crm_phonecall_view.xml',
|
||||
'crm_phonecall_menu.xml',
|
||||
|
||||
'crm_opportunity_view.xml',
|
||||
'crm_opportunity_menu.xml',
|
||||
|
||||
'report/crm_lead_report_view.xml',
|
||||
'report/crm_phonecall_report_view.xml',
|
||||
|
||||
|
@ -121,7 +117,6 @@ Creates a dashboard for CRM that includes:
|
|||
'crm_demo.xml',
|
||||
'crm_lead_demo.xml',
|
||||
'crm_meeting_demo.xml',
|
||||
'crm_opportunity_demo.xml',
|
||||
'crm_phonecall_demo.xml',
|
||||
],
|
||||
'test': [
|
||||
|
|
|
@ -44,17 +44,157 @@ AVAILABLE_PRIORITIES = [
|
|||
('5', 'Lowest'),
|
||||
]
|
||||
|
||||
class crm_case_stage(osv.osv):
|
||||
""" Stage of case """
|
||||
|
||||
_name = "crm.case.stage"
|
||||
_description = "Stage of case"
|
||||
_rec_name = 'name'
|
||||
_order = "sequence"
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Stage Name', size=64, required=True, translate=True),
|
||||
'sequence': fields.integer('Sequence', help="Used to order stages."),
|
||||
'probability': fields.float('Probability (%)', required=True, help="This percentage depicts the default/average probability of the Case for this stage to be a success"),
|
||||
'on_change': fields.boolean('Change Probability Automatically', help="Setting this stage will change the probability automatically on the opportunity."),
|
||||
'requirements': fields.text('Requirements'),
|
||||
'section_ids':fields.many2many('crm.case.section', 'section_stage_rel', 'stage_id', 'section_id', 'Sections'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'sequence': lambda *args: 1,
|
||||
'probability': lambda *args: 0.0,
|
||||
}
|
||||
|
||||
class crm_case_section(osv.osv):
|
||||
"""Sales Team"""
|
||||
|
||||
_name = "crm.case.section"
|
||||
_description = "Sales Teams"
|
||||
_order = "complete_name"
|
||||
|
||||
def get_full_name(self, cr, uid, ids, field_name, arg, context=None):
|
||||
return dict(self.name_get(cr, uid, ids, context=context))
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Sales Team', size=64, required=True, translate=True),
|
||||
'complete_name': fields.function(get_full_name, type='char', size=256, readonly=True, store=True),
|
||||
'code': fields.char('Code', size=8),
|
||||
'active': fields.boolean('Active', help="If the active field is set to "\
|
||||
"true, it will allow you to hide the sales team without removing it."),
|
||||
'allow_unlink': fields.boolean('Allow Delete', help="Allows to delete non draft cases"),
|
||||
'change_responsible': fields.boolean('Reassign Escalated', help="When escalating to this team override the saleman with the team leader."),
|
||||
'user_id': fields.many2one('res.users', 'Team Leader'),
|
||||
'member_ids':fields.many2many('res.users', 'sale_member_rel', 'section_id', 'member_id', 'Team Members'),
|
||||
'reply_to': fields.char('Reply-To', size=64, help="The email address put in the 'Reply-To' of all emails sent by OpenERP about cases in this sales team"),
|
||||
'parent_id': fields.many2one('crm.case.section', 'Parent Team'),
|
||||
'child_ids': fields.one2many('crm.case.section', 'parent_id', 'Child Teams'),
|
||||
'resource_calendar_id': fields.many2one('resource.calendar', "Working Time", help="Used to compute open days"),
|
||||
'note': fields.text('Description'),
|
||||
'working_hours': fields.float('Working Hours', digits=(16,2 )),
|
||||
'stage_ids': fields.many2many('crm.case.stage', 'section_stage_rel', 'section_id', 'stage_id', 'Stages'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'active': lambda *a: 1,
|
||||
'allow_unlink': lambda *a: 1,
|
||||
}
|
||||
|
||||
_sql_constraints = [
|
||||
('code_uniq', 'unique (code)', 'The code of the sales team must be unique !')
|
||||
]
|
||||
|
||||
def _check_recursion(self, cr, uid, ids, context=None):
|
||||
|
||||
"""
|
||||
Checks for recursion level for sales team
|
||||
@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 Sales team ids
|
||||
"""
|
||||
level = 100
|
||||
|
||||
while len(ids):
|
||||
cr.execute('select distinct parent_id from crm_case_section where id IN %s', (tuple(ids),))
|
||||
ids = filter(None, map(lambda x: x[0], cr.fetchall()))
|
||||
if not level:
|
||||
return False
|
||||
level -= 1
|
||||
|
||||
return True
|
||||
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error ! You cannot create recursive Sales team.', ['parent_id'])
|
||||
]
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
"""Overrides orm name_get method
|
||||
@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 sales team ids
|
||||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
if not isinstance(ids, list) :
|
||||
ids = [ids]
|
||||
res = []
|
||||
if not ids:
|
||||
return res
|
||||
reads = self.read(cr, uid, ids, ['name', 'parent_id'], context)
|
||||
|
||||
for record in reads:
|
||||
name = record['name']
|
||||
if record['parent_id']:
|
||||
name = record['parent_id'][1] + ' / ' + name
|
||||
res.append((record['id'], name))
|
||||
return res
|
||||
|
||||
class crm_case_categ(osv.osv):
|
||||
""" Category of Case """
|
||||
_name = "crm.case.categ"
|
||||
_description = "Category of Case"
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=64, required=True, translate=True),
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
|
||||
'object_id': fields.many2one('ir.model', 'Object Name'),
|
||||
}
|
||||
|
||||
def _find_object_id(self, cr, uid, context=None):
|
||||
"""Finds id for case object
|
||||
@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
|
||||
"""
|
||||
|
||||
object_id = context and context.get('object_id', False) or False
|
||||
ids = self.pool.get('ir.model').search(cr, uid, [('model', '=', object_id)])
|
||||
return ids and ids[0]
|
||||
|
||||
_defaults = {
|
||||
'object_id' : _find_object_id
|
||||
}
|
||||
|
||||
class crm_case_resource_type(osv.osv):
|
||||
""" Resource Type of case """
|
||||
_name = "crm.case.resource.type"
|
||||
_description = "Campaign"
|
||||
_rec_name = "name"
|
||||
_columns = {
|
||||
'name': fields.char('Campaign Name', size=64, required=True, translate=True),
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
|
||||
}
|
||||
|
||||
class crm_base(object):
|
||||
"""
|
||||
Base classe for crm object,
|
||||
Object that inherit from this class should have
|
||||
date_open
|
||||
date_closed
|
||||
user_id
|
||||
partner_id
|
||||
partner_address_id
|
||||
as field to be compatible with this class
|
||||
|
||||
""" Base utility mixin class for crm objects,
|
||||
Object subclassing this should define colums:
|
||||
date_open
|
||||
date_closed
|
||||
user_id
|
||||
partner_id
|
||||
partner_address_id
|
||||
"""
|
||||
def _get_default_partner_address(self, cr, uid, context=None):
|
||||
"""Gives id of default address for current user
|
||||
|
@ -77,7 +217,7 @@ class crm_base(object):
|
|||
return False
|
||||
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
|
||||
return user.company_id.partner_id.id
|
||||
|
||||
|
||||
def _get_default_email(self, cr, uid, context=None):
|
||||
"""Gives default email address for current user
|
||||
:param context: if portal in context is false return false anyway
|
||||
|
@ -86,7 +226,7 @@ class crm_base(object):
|
|||
return False
|
||||
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
|
||||
return user.user_email
|
||||
|
||||
|
||||
def _get_default_user(self, cr, uid, context=None):
|
||||
"""Gives current user id
|
||||
:param context: if portal in context is false return false anyway
|
||||
|
@ -100,7 +240,7 @@ class crm_base(object):
|
|||
"""
|
||||
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
|
||||
return user.context_section_id.id or False
|
||||
|
||||
|
||||
def onchange_partner_address_id(self, cr, uid, ids, add, email=False):
|
||||
"""This function returns value of partner email based on Partner Address
|
||||
@param ids: List of case IDs
|
||||
|
@ -114,7 +254,7 @@ class crm_base(object):
|
|||
return {'value': {'email_from': address.email, 'phone': address.phone}}
|
||||
else:
|
||||
return {'value': {'phone': address.phone}}
|
||||
|
||||
|
||||
def onchange_partner_id(self, cr, uid, ids, part, email=False):
|
||||
"""This function returns value of partner address based on partner
|
||||
@param ids: List of case IDs
|
||||
|
@ -127,11 +267,9 @@ class crm_base(object):
|
|||
data = {'partner_address_id': addr['contact']}
|
||||
data.update(self.onchange_partner_address_id(cr, uid, ids, addr['contact'])['value'])
|
||||
return {'value': data}
|
||||
|
||||
|
||||
|
||||
def case_open(self, cr, uid, ids, *args):
|
||||
"""Opens Case
|
||||
@param ids: List of case Ids
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
for case in cases:
|
||||
|
@ -140,7 +278,6 @@ class crm_base(object):
|
|||
data['user_id'] = uid
|
||||
self.write(cr, uid, case.id, data)
|
||||
|
||||
|
||||
self._action(cr, uid, cases, 'open')
|
||||
return True
|
||||
|
||||
|
@ -150,12 +287,8 @@ class crm_base(object):
|
|||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
self.write(cr, uid, ids, {'state': 'done',
|
||||
'date_closed': time.strftime('%Y-%m-%d %H:%M:%S'),
|
||||
})
|
||||
#
|
||||
self.write(cr, uid, ids, {'state': 'done', 'date_closed': time.strftime('%Y-%m-%d %H:%M:%S'), })
|
||||
# We use the cache of cases to keep the old case state
|
||||
#
|
||||
self._action(cr, uid, cases, 'done')
|
||||
return True
|
||||
|
||||
|
@ -165,17 +298,13 @@ class crm_base(object):
|
|||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
self.write(cr, uid, ids, {'state': 'cancel',
|
||||
'active': True})
|
||||
self.write(cr, uid, ids, {'state': 'cancel', 'active': True})
|
||||
# We use the cache of cases to keep the old case state
|
||||
self._action(cr, uid, cases, 'cancel')
|
||||
for case in cases:
|
||||
message = _("The case '%s' has been cancelled.") % (case.name,)
|
||||
self.log(cr, uid, case.id, message)
|
||||
return True
|
||||
|
||||
def case_pending(self, cr, uid, ids, *args):
|
||||
"""Marks case as pending
|
||||
@param ids: List of case Ids
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
|
@ -185,7 +314,6 @@ class crm_base(object):
|
|||
|
||||
def case_reset(self, cr, uid, ids, *args):
|
||||
"""Resets case as draft
|
||||
@param ids: List of case Ids
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
|
@ -204,187 +332,69 @@ class crm_base(object):
|
|||
return rule_obj._action(cr, uid, rule_ids, cases, scrit=scrit, context=context)
|
||||
|
||||
class crm_case(crm_base):
|
||||
"""
|
||||
A simple python class to be used for common functions
|
||||
Object that inherit from this class should inherit from mailgate.thread
|
||||
And need a stage_id field
|
||||
|
||||
And object that inherit (orm inheritance) from a class the overwrite copy
|
||||
""" A simple python class to be used for common functions
|
||||
Object that inherit from this class should inherit from mailgate.thread
|
||||
And need a stage_id field
|
||||
And object that inherit (orm inheritance) from a class the overwrite copy
|
||||
"""
|
||||
|
||||
def _find_lost_stage(self, cr, uid, type, section_id):
|
||||
return self._find_percent_stage(cr, uid, 0.0, type, section_id)
|
||||
def stage_find(self, cr, uid, section_id, domain=[], order='sequence'):
|
||||
domain = list(domain)
|
||||
if section_id:
|
||||
domain.append(('section_ids', '=', section_id))
|
||||
stage_ids = self.pool.get('crm.case.stage').search(cr, uid, domain, order=order)
|
||||
if stage_ids:
|
||||
return stage_ids[0]
|
||||
|
||||
def _find_won_stage(self, cr, uid, type, section_id):
|
||||
return self._find_percent_stage(cr, uid, 100.0, type, section_id)
|
||||
def stage_set(self, cr, uid, ids, stage_id, context=None):
|
||||
value = {}
|
||||
if hasattr(self,'onchange_stage_id'):
|
||||
value = self.onchange_stage_id(cr, uid, ids, stage_id)['value']
|
||||
value['stage_id'] = stage_id
|
||||
self.write(cr, uid, ids, value, context=context)
|
||||
|
||||
def _find_percent_stage(self, cr, uid, percent, type, section_id):
|
||||
def stage_change(self, cr, uid, ids, op, order, context=None):
|
||||
if context is None:
|
||||
context = {}
|
||||
for case in self.browse(cr, uid, ids, context=context):
|
||||
seq = 0
|
||||
if case.stage_id:
|
||||
seq = case.stage_id.sequence
|
||||
section_id = None
|
||||
if case.section_id:
|
||||
section_id = case.section_id.id
|
||||
next_stage_id = self.stage_find(cr, uid, section_id, [('sequence',op,seq)],order)
|
||||
if next_stage_id:
|
||||
self.stage_set(cr, uid, [case.id], next_stage_id, context=context)
|
||||
|
||||
def stage_next(self, cr, uid, ids, context=None):
|
||||
"""This function computes next stage for case from its current stage
|
||||
using available stage for that case type
|
||||
"""
|
||||
Return the first stage with a probability == percent
|
||||
self.stage_change(cr, uid, ids, '>','sequence', context)
|
||||
|
||||
def stage_previous(self, cr, uid, ids, context=None):
|
||||
"""This function computes previous stage for case from its current
|
||||
stage using available stage for that case type
|
||||
"""
|
||||
stage_pool = self.pool.get('crm.case.stage')
|
||||
if section_id :
|
||||
ids = stage_pool.search(cr, uid, [("probability", '=', percent), ("type", 'like', type), ("section_ids", 'in', [section_id])])
|
||||
else :
|
||||
ids = stage_pool.search(cr, uid, [("probability", '=', percent), ("type", 'like', type)])
|
||||
|
||||
if ids:
|
||||
return ids[0]
|
||||
return False
|
||||
|
||||
|
||||
def _find_first_stage(self, cr, uid, type, section_id):
|
||||
"""
|
||||
return the first stage that has a sequence number equal or higher than sequence
|
||||
"""
|
||||
stage_pool = self.pool.get('crm.case.stage')
|
||||
if section_id :
|
||||
ids = stage_pool.search(cr, uid, [("sequence", '>', 0), ("type", 'like', type), ("section_ids", 'in', [section_id])])
|
||||
else :
|
||||
ids = stage_pool.search(cr, uid, [("sequence", '>', 0), ("type", 'like', type)])
|
||||
|
||||
if ids:
|
||||
stages = stage_pool.browse(cr, uid, ids)
|
||||
stage_min = stages[0]
|
||||
for stage in stages:
|
||||
if stage_min.sequence > stage.sequence:
|
||||
stage_min = stage
|
||||
return stage_min.id
|
||||
else :
|
||||
return False
|
||||
|
||||
def onchange_stage_id(self, cr, uid, ids, stage_id, context={}):
|
||||
|
||||
""" @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 stage’s IDs
|
||||
@stage_id: change state id on run time """
|
||||
|
||||
if not stage_id:
|
||||
return {'value':{}}
|
||||
|
||||
stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context)
|
||||
|
||||
if not stage.on_change:
|
||||
return {'value':{}}
|
||||
return {'value':{'probability': stage.probability}}
|
||||
|
||||
|
||||
self.stage_change(cr, uid, ids, '<', 'sequence desc', context)
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
""" Overrides orm copy method.
|
||||
"""
|
||||
Overrides orm copy method.
|
||||
@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 id: Id of mailgate thread
|
||||
@param default: Dictionary of default values for copy.
|
||||
@param context: A standard dictionary for contextual values
|
||||
"""
|
||||
|
||||
if context is None:
|
||||
context = {}
|
||||
if default is None:
|
||||
default = {}
|
||||
|
||||
default.update({
|
||||
'message_ids': [],
|
||||
})
|
||||
default.update({ 'message_ids': [], })
|
||||
if hasattr(self, '_columns'):
|
||||
if self._columns.get('date_closed'):
|
||||
default.update({
|
||||
'date_closed': False,
|
||||
})
|
||||
default.update({ 'date_closed': False, })
|
||||
if self._columns.get('date_open'):
|
||||
default.update({
|
||||
'date_open': False
|
||||
})
|
||||
default.update({ 'date_open': False })
|
||||
return super(crm_case, self).copy(cr, uid, id, default, context=context)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def _find_next_stage(self, cr, uid, stage_list, index, current_seq, stage_pool, context=None):
|
||||
if index + 1 == len(stage_list):
|
||||
return False
|
||||
next_stage_id = stage_list[index + 1]
|
||||
next_stage = stage_pool.browse(cr, uid, next_stage_id, context=context)
|
||||
if not next_stage:
|
||||
return False
|
||||
next_seq = next_stage.sequence
|
||||
if not current_seq :
|
||||
current_seq = 0
|
||||
|
||||
if (abs(next_seq - current_seq)) >= 1:
|
||||
return next_stage
|
||||
else :
|
||||
return self._find_next_stage(cr, uid, stage_list, index + 1, current_seq, stage_pool)
|
||||
|
||||
def stage_change(self, cr, uid, ids, context=None, order='sequence'):
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
stage_pool = self.pool.get('crm.case.stage')
|
||||
stage_type = context and context.get('stage_type','')
|
||||
current_seq = False
|
||||
next_stage_id = False
|
||||
|
||||
for case in self.browse(cr, uid, ids, context=context):
|
||||
|
||||
next_stage = False
|
||||
value = {}
|
||||
if case.section_id.id :
|
||||
domain = [('type', '=', stage_type),('section_ids', '=', case.section_id.id)]
|
||||
else :
|
||||
domain = [('type', '=', stage_type)]
|
||||
|
||||
|
||||
stages = stage_pool.search(cr, uid, domain, order=order)
|
||||
current_seq = case.stage_id.sequence
|
||||
index = -1
|
||||
if case.stage_id and case.stage_id.id in stages:
|
||||
index = stages.index(case.stage_id.id)
|
||||
|
||||
next_stage = self._find_next_stage(cr, uid, stages, index, current_seq, stage_pool, context=context)
|
||||
|
||||
if next_stage:
|
||||
next_stage_id = next_stage.id
|
||||
value.update({'stage_id': next_stage.id})
|
||||
if next_stage.on_change:
|
||||
value.update({'probability': next_stage.probability})
|
||||
self.write(cr, uid, [case.id], value, context=context)
|
||||
|
||||
|
||||
return next_stage_id #FIXME should return a list of all id
|
||||
|
||||
|
||||
def stage_next(self, cr, uid, ids, context=None):
|
||||
"""This function computes next stage for case from its current stage
|
||||
using available stage for that case type
|
||||
@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 context: A standard dictionary for contextual values"""
|
||||
|
||||
return self.stage_change(cr, uid, ids, context=context, order='sequence')
|
||||
|
||||
def stage_previous(self, cr, uid, ids, context=None):
|
||||
"""This function computes previous stage for case from its current stage
|
||||
using available stage for that case type
|
||||
@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 context: A standard dictionary for contextual values"""
|
||||
return self.stage_change(cr, uid, ids, context=context, order='sequence desc')
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def _history(self, cr, uid, cases, keyword, history=False, subject=None, email=False, details=None, email_from=False, message_id=False, attach=[], context=None):
|
||||
mailgate_pool = self.pool.get('mailgate.thread')
|
||||
return mailgate_pool.history(cr, uid, cases, keyword, history=history,\
|
||||
|
@ -395,17 +405,11 @@ class crm_case(crm_base):
|
|||
|
||||
def case_open(self, cr, uid, ids, *args):
|
||||
"""Opens Case
|
||||
@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
|
||||
"""
|
||||
|
||||
cases = self.browse(cr, uid, ids)
|
||||
self._history(cr, uid, cases, _('Open'))
|
||||
for case in cases:
|
||||
data = {'state': 'open', 'active': True}
|
||||
data = {'state': 'open', 'active': True }
|
||||
if not case.user_id:
|
||||
data['user_id'] = uid
|
||||
self.write(cr, uid, case.id, data)
|
||||
|
@ -414,11 +418,6 @@ class crm_case(crm_base):
|
|||
|
||||
def case_close(self, cr, uid, ids, *args):
|
||||
"""Closes Case
|
||||
@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
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
|
@ -434,11 +433,6 @@ class crm_case(crm_base):
|
|||
|
||||
def case_escalate(self, cr, uid, ids, *args):
|
||||
"""Escalates case to top level
|
||||
@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
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
for case in cases:
|
||||
|
@ -459,11 +453,6 @@ class crm_case(crm_base):
|
|||
|
||||
def case_cancel(self, cr, uid, ids, *args):
|
||||
"""Cancels Case
|
||||
@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
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
|
@ -478,11 +467,6 @@ class crm_case(crm_base):
|
|||
|
||||
def case_pending(self, cr, uid, ids, *args):
|
||||
"""Marks case as pending
|
||||
@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
|
||||
"""
|
||||
cases = self.browse(cr, uid, ids)
|
||||
cases[0].state # to fill the browse record cache
|
||||
|
@ -493,11 +477,6 @@ class crm_case(crm_base):
|
|||
|
||||
def case_reset(self, cr, uid, ids, *args):
|
||||
"""Resets case as draft
|
||||
@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
|
||||
"""
|
||||
state = 'draft'
|
||||
if 'crm.phonecall' in args:
|
||||
|
@ -600,8 +579,6 @@ class crm_case(crm_base):
|
|||
cases = self.browse(cr, uid, ids2, context=context)
|
||||
return self._action(cr, uid, cases, False, context=context)
|
||||
|
||||
|
||||
|
||||
def format_body(self, body):
|
||||
return self.pool.get('base.action.rule').format_body(body)
|
||||
|
||||
|
@ -621,189 +598,6 @@ class crm_case(crm_base):
|
|||
res[case.id] = l
|
||||
return res
|
||||
|
||||
|
||||
class crm_case_stage(osv.osv):
|
||||
""" Stage of case """
|
||||
|
||||
_name = "crm.case.stage"
|
||||
_description = "Stage of case"
|
||||
_rec_name = 'name'
|
||||
_order = "sequence"
|
||||
|
||||
|
||||
|
||||
def _get_type_value(self, cr, user, context):
|
||||
return [('lead','Lead'),('opportunity','Opportunity')]
|
||||
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Stage Name', size=64, required=True, translate=True),
|
||||
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of case stages."),
|
||||
'probability': fields.float('Probability (%)', required=True, help="This percentage depicts the default/average probability of the Case for this stage to be a success"),
|
||||
'on_change': fields.boolean('Change Probability Automatically', \
|
||||
help="Change Probability on next and previous stages."),
|
||||
'requirements': fields.text('Requirements'),
|
||||
'type': fields.selection(_get_type_value, 'Type', required=True),
|
||||
}
|
||||
|
||||
|
||||
def _find_stage_type(self, cr, uid, context=None):
|
||||
"""Finds type of stage according to object.
|
||||
@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
|
||||
"""
|
||||
type = context and context.get('type', '') or ''
|
||||
return type
|
||||
|
||||
_defaults = {
|
||||
'sequence': lambda *args: 1,
|
||||
'probability': lambda *args: 0.0,
|
||||
'type': _find_stage_type,
|
||||
}
|
||||
|
||||
crm_case_stage()
|
||||
|
||||
|
||||
class crm_case_section(osv.osv):
|
||||
"""Sales Team"""
|
||||
|
||||
_name = "crm.case.section"
|
||||
_description = "Sales Teams"
|
||||
_order = "complete_name"
|
||||
|
||||
def get_full_name(self, cr, uid, ids, field_name, arg, context=None):
|
||||
return dict(self.name_get(cr, uid, ids, context=context))
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Sales Team', size=64, required=True, translate=True),
|
||||
'complete_name': fields.function(get_full_name, type='char', size=256, readonly=True, store=True),
|
||||
'code': fields.char('Code', size=8),
|
||||
'active': fields.boolean('Active', help="If the active field is set to "\
|
||||
"true, it will allow you to hide the sales team without removing it."),
|
||||
'allow_unlink': fields.boolean('Allow Delete', help="Allows to delete non draft cases"),
|
||||
'change_responsible': fields.boolean('Change Responsible', help="Thick this box if you want that on escalation, the responsible of this sale team automatically becomes responsible of the lead/opportunity escaladed"),
|
||||
'user_id': fields.many2one('res.users', 'Responsible User'),
|
||||
'member_ids':fields.many2many('res.users', 'sale_member_rel', 'section_id', 'member_id', 'Team Members'),
|
||||
'reply_to': fields.char('Reply-To', size=64, help="The email address put in the 'Reply-To' of all emails sent by OpenERP about cases in this sales team"),
|
||||
'parent_id': fields.many2one('crm.case.section', 'Parent Team'),
|
||||
'child_ids': fields.one2many('crm.case.section', 'parent_id', 'Child Teams'),
|
||||
'resource_calendar_id': fields.many2one('resource.calendar', "Working Time"),
|
||||
'note': fields.text('Description'),
|
||||
'working_hours': fields.float('Working Hours', digits=(16,2 )),
|
||||
'stage_ids': fields.many2many('crm.case.stage', 'section_stage_rel', 'section_id', 'stage_id', 'Stages'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'active': lambda *a: 1,
|
||||
'allow_unlink': lambda *a: 1,
|
||||
}
|
||||
|
||||
_sql_constraints = [
|
||||
('code_uniq', 'unique (code)', 'The code of the sales team must be unique !')
|
||||
]
|
||||
|
||||
def _check_recursion(self, cr, uid, ids, context=None):
|
||||
|
||||
"""
|
||||
Checks for recursion level for sales team
|
||||
@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 Sales team ids
|
||||
"""
|
||||
level = 100
|
||||
|
||||
while len(ids):
|
||||
cr.execute('select distinct parent_id from crm_case_section where id IN %s', (tuple(ids),))
|
||||
ids = filter(None, map(lambda x: x[0], cr.fetchall()))
|
||||
if not level:
|
||||
return False
|
||||
level -= 1
|
||||
|
||||
return True
|
||||
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error ! You cannot create recursive Sales team.', ['parent_id'])
|
||||
]
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
"""Overrides orm name_get method
|
||||
@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 sales team ids
|
||||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
if not isinstance(ids, list) :
|
||||
ids = [ids]
|
||||
res = []
|
||||
if not ids:
|
||||
return res
|
||||
reads = self.read(cr, uid, ids, ['name', 'parent_id'], context)
|
||||
|
||||
for record in reads:
|
||||
name = record['name']
|
||||
if record['parent_id']:
|
||||
name = record['parent_id'][1] + ' / ' + name
|
||||
res.append((record['id'], name))
|
||||
return res
|
||||
|
||||
crm_case_section()
|
||||
|
||||
|
||||
class crm_case_categ(osv.osv):
|
||||
""" Category of Case """
|
||||
_name = "crm.case.categ"
|
||||
_description = "Category of Case"
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=64, required=True, translate=True),
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
|
||||
'object_id': fields.many2one('ir.model', 'Object Name'),
|
||||
}
|
||||
|
||||
def _find_object_id(self, cr, uid, context=None):
|
||||
"""Finds id for case object
|
||||
@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
|
||||
"""
|
||||
|
||||
object_id = context and context.get('object_id', False) or False
|
||||
ids = self.pool.get('ir.model').search(cr, uid, [('model', '=', object_id)])
|
||||
return ids and ids[0]
|
||||
|
||||
_defaults = {
|
||||
'object_id' : _find_object_id
|
||||
|
||||
}
|
||||
crm_case_categ()
|
||||
|
||||
|
||||
class crm_case_stage(osv.osv):
|
||||
_inherit = "crm.case.stage"
|
||||
_columns = {
|
||||
'section_ids':fields.many2many('crm.case.section', 'section_stage_rel', 'stage_id', 'section_id', 'Sections'),
|
||||
}
|
||||
|
||||
crm_case_stage()
|
||||
|
||||
|
||||
class crm_case_resource_type(osv.osv):
|
||||
""" Resource Type of case """
|
||||
_name = "crm.case.resource.type"
|
||||
_description = "Campaign"
|
||||
_rec_name = "name"
|
||||
_columns = {
|
||||
'name': fields.char('Campaign Name', size=64, required=True, translate=True),
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
|
||||
}
|
||||
crm_case_resource_type()
|
||||
|
||||
|
||||
def _links_get(self, cr, uid, context=None):
|
||||
"""Gets links value for reference field
|
||||
@param self: The object pointer
|
||||
|
@ -830,13 +624,6 @@ class users(osv.osv):
|
|||
if vals.get('context_section_id', False):
|
||||
section_obj.write(cr, uid, [vals['context_section_id']], {'member_ids':[(4, res)]}, context)
|
||||
return res
|
||||
|
||||
users()
|
||||
|
||||
|
||||
class res_partner(osv.osv):
|
||||
_inherit = 'res.partner'
|
||||
_columns = {
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
|
||||
}
|
||||
res_partner()
|
||||
|
||||
|
|
|
@ -39,8 +39,9 @@ class crm_lead(crm_case, osv.osv):
|
|||
""" CRM Lead Case """
|
||||
_name = "crm.lead"
|
||||
_description = "Lead/Opportunity"
|
||||
_order = "date_action, priority, id desc"
|
||||
_order = "priority,date_action,id desc"
|
||||
_inherit = ['mailgate.thread','res.partner.address']
|
||||
|
||||
def _compute_day(self, cr, uid, ids, fields, args, context=None):
|
||||
"""
|
||||
@param cr: the current row, from the database cursor,
|
||||
|
@ -124,7 +125,6 @@ class crm_lead(crm_case, osv.osv):
|
|||
'partner_id': fields.many2one('res.partner', 'Partner', ondelete='set null',
|
||||
select=True, help="Optional linked partner, usually after conversion of the lead"),
|
||||
|
||||
# From crm.case
|
||||
'id': fields.integer('ID'),
|
||||
'name': fields.char('Name', size=64, select=1),
|
||||
'active': fields.boolean('Active', required=False),
|
||||
|
@ -132,13 +132,12 @@ class crm_lead(crm_case, osv.osv):
|
|||
'date_action_next': fields.datetime('Next Action', readonly=1),
|
||||
'email_from': fields.char('Email', size=128, help="E-mail address of the contact", select=1),
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team', \
|
||||
select=True, help='Sales team to which this case belongs to. Defines responsible user and e-mail address for the mail gateway.'),
|
||||
select=True, help='When sending mails, the default email address is taken from the sales team.'),
|
||||
'create_date': fields.datetime('Creation Date' , readonly=True),
|
||||
'email_cc': fields.text('Global CC', size=252 , help="These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma"),
|
||||
'description': fields.text('Notes'),
|
||||
'write_date': fields.datetime('Update Date' , readonly=True),
|
||||
|
||||
# Lead fields
|
||||
'categ_id': fields.many2one('crm.case.categ', 'Category', \
|
||||
domain="['|',('section_id','=',section_id),('section_id','=',False), ('object_id.model', '=', 'crm.lead')]"),
|
||||
'type_id': fields.many2one('crm.case.resource.type', 'Campaign', \
|
||||
|
@ -148,15 +147,11 @@ class crm_lead(crm_case, osv.osv):
|
|||
'partner_name': fields.char("Customer Name", size=64,help='The name of the future partner that will be created while converting the into opportunity', select=1),
|
||||
'optin': fields.boolean('Opt-In', help="If opt-in is checked, this contact has accepted to receive emails."),
|
||||
'optout': fields.boolean('Opt-Out', help="If opt-out is checked, this contact has refused to receive emails or unsubscribed to a campaign."),
|
||||
'type':fields.selection([
|
||||
('lead','Lead'),
|
||||
('opportunity','Opportunity'),
|
||||
|
||||
],'Type', help="Type is used to separate Leads and Opportunities"),
|
||||
'type':fields.selection([ ('lead','Lead'), ('opportunity','Opportunity'), ],'Type', help="Type is used to separate Leads and Opportunities"),
|
||||
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
|
||||
'date_closed': fields.datetime('Closed', readonly=True),
|
||||
'stage_id': fields.many2one('crm.case.stage', 'Stage', domain="[('type','=','lead')]"),
|
||||
'user_id': fields.many2one('res.users', 'Salesman', select=1),
|
||||
'stage_id': fields.many2one('crm.case.stage', 'Stage', domain="[('section_ids', '=', section_id)]"),
|
||||
'user_id': fields.many2one('res.users', 'Salesman'),
|
||||
'referred': fields.char('Referred By', size=64),
|
||||
'date_open': fields.datetime('Opened', readonly=True),
|
||||
'day_open': fields.function(_compute_day, string='Days to Open', \
|
||||
|
@ -170,9 +165,21 @@ class crm_lead(crm_case, osv.osv):
|
|||
\nIf the case needs to be reviewed then the state is set to \'Pending\'.'),
|
||||
'message_ids': fields.one2many('mailgate.message', 'res_id', 'Messages', domain=[('model','=',_name)]),
|
||||
'subjects': fields.function(_get_email_subject, fnct_search=_history_search, string='Subject of Email', type='char', size=64),
|
||||
}
|
||||
|
||||
|
||||
# Only used for type opportunity
|
||||
'partner_address_id': fields.many2one('res.partner.address', 'Partner Contact', domain="[('partner_id','=',partner_id)]"),
|
||||
'probability': fields.float('Probability (%)',group_operator="avg"),
|
||||
'planned_revenue': fields.float('Expected Revenue'),
|
||||
'ref': fields.reference('Reference', selection=crm._links_get, size=128),
|
||||
'ref2': fields.reference('Reference 2', selection=crm._links_get, size=128),
|
||||
'phone': fields.char("Phone", size=64),
|
||||
'date_deadline': fields.date('Expected Closing'),
|
||||
'date_action': fields.date('Next Action Date'),
|
||||
'title_action': fields.char('Next Action', size=64),
|
||||
'stage_id': fields.many2one('crm.case.stage', 'Stage', domain="[('section_ids', '=', section_id)]"),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'active': lambda *a: 1,
|
||||
'user_id': crm_case._get_default_user,
|
||||
|
@ -185,82 +192,120 @@ class crm_lead(crm_case, osv.osv):
|
|||
#'stage_id': _get_stage_id,
|
||||
}
|
||||
|
||||
|
||||
|
||||
def onchange_partner_address_id(self, cr, uid, ids, add, email=False):
|
||||
"""This function returns value of partner email based on Partner Address
|
||||
@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 add: Id of Partner's address
|
||||
@email: Partner's email ID
|
||||
"""
|
||||
if not add:
|
||||
return {'value': {'email_from': False, 'country_id': False}}
|
||||
address = self.pool.get('res.partner.address').browse(cr, uid, add)
|
||||
return {'value': {'email_from': address.email, 'phone': address.phone, 'country_id': address.country_id.id}}
|
||||
|
||||
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
|
||||
def on_change_optin(self, cr, uid, ids, optin):
|
||||
return {'value':{'optin':optin,'optout':False}}
|
||||
|
||||
def on_change_optout(self, cr, uid, ids, optout):
|
||||
return {'value':{'optout':optout,'optin':False}}
|
||||
|
||||
def onchange_stage_id(self, cr, uid, ids, stage_id, context={}):
|
||||
if not stage_id:
|
||||
return {'value':{}}
|
||||
stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context)
|
||||
if not stage.on_change:
|
||||
return {'value':{}}
|
||||
return {'value':{'probability': stage.probability}}
|
||||
|
||||
def stage_find_percent(self, cr, uid, percent, section_id):
|
||||
""" Return the first stage with a probability == percent
|
||||
"""
|
||||
leads = self.browse(cr, uid, ids)
|
||||
stage_pool = self.pool.get('crm.case.stage')
|
||||
if section_id :
|
||||
ids = stage_pool.search(cr, uid, [("probability", '=', percent), ("section_ids", 'in', [section_id])])
|
||||
else :
|
||||
ids = stage_pool.search(cr, uid, [("probability", '=', percent)])
|
||||
|
||||
if ids:
|
||||
return ids[0]
|
||||
return False
|
||||
|
||||
def stage_find_lost(self, cr, uid, section_id):
|
||||
return self.stage_find_percent(cr, uid, 0.0, section_id)
|
||||
|
||||
for i in xrange(0, len(ids)):
|
||||
if leads[i].state == 'draft':
|
||||
value = {}
|
||||
if not leads[i].stage_id :
|
||||
stage_id = self._find_first_stage(cr, uid, leads[i].type, leads[i].section_id.id or False)
|
||||
value.update({'stage_id' : stage_id})
|
||||
value.update({'date_open': time.strftime('%Y-%m-%d %H:%M:%S')})
|
||||
self.write(cr, uid, [ids[i]], value)
|
||||
self.log_open( cr, uid, leads[i])
|
||||
def stage_find_won(self, cr, uid, section_id):
|
||||
return self.stage_find_percent(cr, uid, 100.0, section_id)
|
||||
|
||||
def case_open(self, cr, uid, ids, *args):
|
||||
for l in self.browse(cr, uid, ids):
|
||||
# When coming from draft override date and stage otherwise just set state
|
||||
if l.state == 'draft':
|
||||
if l.type == 'lead':
|
||||
message = _("The lead '%s' has been opened.") % l.name
|
||||
elif l.type == 'opportunity':
|
||||
message = _("The opportunity '%s' has been opened.") % l.name
|
||||
else:
|
||||
message = _("The case '%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)
|
||||
if l.type == 'opportunity' and not l.stage_id:
|
||||
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)
|
||||
res = super(crm_lead, self).case_open(cr, uid, ids, *args)
|
||||
return res
|
||||
|
||||
def log_open(self, cr, uid, case):
|
||||
if case.type == 'lead':
|
||||
message = _("The lead '%s' has been opened.") % case.name
|
||||
elif case.type == 'opportunity':
|
||||
message = _("The opportunity '%s' has been opened.") % case.name
|
||||
else:
|
||||
message = _("The case '%s' has been opened.") % case.name
|
||||
self.log(cr, uid, case.id, message)
|
||||
|
||||
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 = super(crm_lead, self).case_close(cr, uid, ids, *args)
|
||||
self.write(cr, uid, ids, {'date_closed': time.strftime('%Y-%m-%d %H:%M:%S')})
|
||||
for case in self.browse(cr, uid, ids):
|
||||
if case.type == 'lead':
|
||||
message = _("The lead '%s' has been closed.") % case.name
|
||||
elif case.type == 'opportunity':
|
||||
message = _("The opportunity '%s' has been closed.") % case.name
|
||||
else:
|
||||
message = _("The case '%s' has been closed.") % case.name
|
||||
self.log(cr, uid, case.id, message)
|
||||
return res
|
||||
|
||||
def case_cancel(self, cr, uid, ids, *args):
|
||||
"""Overrides cancel for crm_case for setting probability
|
||||
"""
|
||||
res = super(crm_lead, self).case_cancel(cr, uid, ids, args)
|
||||
self.write(cr, uid, ids, {'probability' : 0.0})
|
||||
return res
|
||||
|
||||
def case_reset(self, cr, uid, ids, *args):
|
||||
"""Overrides reset as draft in order to set the stage field as empty
|
||||
"""
|
||||
res = super(crm_lead, self).case_reset(cr, uid, ids, *args)
|
||||
self.write(cr, uid, ids, {'stage_id': False, 'probability': 0.0})
|
||||
return res
|
||||
|
||||
def case_mark_lost(self, cr, uid, ids, *args):
|
||||
"""Mark the case as lost: state = done and probability = 0%
|
||||
"""
|
||||
res = super(crm_lead, self).case_close(cr, uid, ids, *args)
|
||||
self.write(cr, uid, ids, {'probability' : 0.0})
|
||||
for l in self.browse(cr, uid, ids):
|
||||
stage_id = self.stage_find_lost(cr, uid, l.section_id.id or False)
|
||||
if stage_id:
|
||||
self.stage_set(cr, uid, [l.id], stage_id)
|
||||
message = _("The opportunity '%s' has been marked as lost.") % l.name
|
||||
self.log(cr, uid, l.id, message)
|
||||
return res
|
||||
|
||||
def case_mark_won(self, cr, uid, ids, *args):
|
||||
"""Mark the case as lost: state = done and probability = 0%
|
||||
"""
|
||||
res = super(crm_lead, self).case_close(cr, uid, ids, *args)
|
||||
self.write(cr, uid, ids, {'probability' : 100.0})
|
||||
for l in self.browse(cr, uid, ids):
|
||||
stage_id = self.stage_find_won(cr, uid, l.section_id.id or False)
|
||||
if stage_id:
|
||||
self.stage_set(cr, uid, [l.id], stage_id)
|
||||
message = _("The opportunity '%s' has been been won.") % l.name
|
||||
self.log(cr, uid, l.id, message)
|
||||
return res
|
||||
|
||||
def convert_opportunity(self, cr, uid, ids, context=None):
|
||||
""" Precomputation for converting lead to opportunity
|
||||
@param cr: the current row, from the database cursor,
|
||||
@param uid: the current user’s ID for security checks,
|
||||
@param ids: List of closeday’s IDs
|
||||
@param context: A standard dictionary for contextual values
|
||||
@return: Value of action in dict
|
||||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
|
@ -290,57 +335,8 @@ class crm_lead(crm_case, osv.osv):
|
|||
}
|
||||
return value
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if not context:
|
||||
context = {}
|
||||
|
||||
if 'date_closed' in vals:
|
||||
return super(crm_lead,self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
if 'stage_id' in vals and vals['stage_id']:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, vals['stage_id'], context=context)
|
||||
self.history(cr, uid, ids, _("Changed Stage to: %s") % stage_obj.name, details=_("Changed Stage to: %s") % stage_obj.name)
|
||||
message=''
|
||||
for case in self.browse(cr, uid, ids, context=context):
|
||||
if case.type == 'lead' or context.get('stage_type',False)=='lead':
|
||||
message = _("The stage of lead '%s' has been changed to '%s'.") % (case.name, stage_obj.name)
|
||||
elif case.type == 'opportunity':
|
||||
message = _("The stage of opportunity '%s' has been changed to '%s'.") % (case.name, stage_obj.name)
|
||||
self.log(cr, uid, case.id, message)
|
||||
return super(crm_lead,self).write(cr, uid, ids, vals, context)
|
||||
|
||||
def stage_next(self, cr, uid, ids, context=None):
|
||||
stage = super(crm_lead, self).stage_next(cr, uid, ids, context=context)
|
||||
if stage:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, stage, context=context)
|
||||
if stage_obj.on_change:
|
||||
data = {'probability': stage_obj.probability}
|
||||
self.write(cr, uid, ids, data)
|
||||
return stage
|
||||
|
||||
def stage_previous(self, cr, uid, ids, context=None):
|
||||
stage = super(crm_lead, self).stage_previous(cr, uid, ids, context=context)
|
||||
if stage:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, stage, context=context)
|
||||
if stage_obj.on_change:
|
||||
data = {'probability': stage_obj.probability}
|
||||
self.write(cr, uid, ids, data)
|
||||
return stage
|
||||
|
||||
def unlink(self, cr, uid, ids, context=None):
|
||||
for lead in self.browse(cr, uid, ids, context):
|
||||
if (not lead.section_id.allow_unlink) and (lead.state <> 'draft'):
|
||||
raise osv.except_osv(_('Warning !'),
|
||||
_('You can not delete this lead. You should better cancel it.'))
|
||||
return super(crm_lead, self).unlink(cr, uid, ids, context)
|
||||
|
||||
def message_new(self, cr, uid, msg, context=None):
|
||||
"""
|
||||
Automatically calls when new email message arrives
|
||||
|
||||
@param self: The object pointer
|
||||
@param cr: the current row, from the database cursor,
|
||||
@param uid: the current user’s ID for security checks
|
||||
""" Automatically calls when new email message arrives
|
||||
"""
|
||||
mailgate_pool = self.pool.get('email.server.tools')
|
||||
|
||||
|
@ -380,9 +376,6 @@ class crm_lead(crm_case, osv.osv):
|
|||
|
||||
def message_update(self, cr, uid, ids, vals={}, msg="", default_act='pending', 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 ids: List of update mail’s IDs
|
||||
"""
|
||||
if isinstance(ids, (str, int, long)):
|
||||
|
@ -416,22 +409,82 @@ class crm_lead(crm_case, osv.osv):
|
|||
return res
|
||||
|
||||
def msg_send(self, cr, uid, id, *args, **argv):
|
||||
|
||||
""" Send The Message
|
||||
@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 email’s IDs
|
||||
@param *args: Return Tuple Value
|
||||
@param **args: Return Dictionary of Keyword Value
|
||||
@param ids: List of email’s IDs
|
||||
"""
|
||||
return True
|
||||
|
||||
def on_change_optin(self, cr, uid, ids, optin):
|
||||
return {'value':{'optin':optin,'optout':False}}
|
||||
def action_makeMeeting(self, cr, uid, ids, context=None):
|
||||
"""
|
||||
This opens Meeting's calendar view to schedule meeting on current Opportunity
|
||||
@return : Dictionary value for created Meeting view
|
||||
"""
|
||||
value = {}
|
||||
for opp in self.browse(cr, uid, ids, context=context):
|
||||
data_obj = self.pool.get('ir.model.data')
|
||||
|
||||
# Get meeting views
|
||||
result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_meetings_filter')
|
||||
res = data_obj.read(cr, uid, result, ['res_id'])
|
||||
id1 = data_obj._get_id(cr, uid, 'crm', 'crm_case_calendar_view_meet')
|
||||
id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_meet')
|
||||
id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_meet')
|
||||
if id1:
|
||||
id1 = data_obj.browse(cr, uid, id1, context=context).res_id
|
||||
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
|
||||
|
||||
context = {
|
||||
'default_opportunity_id': opp.id,
|
||||
'default_partner_id': opp.partner_id and opp.partner_id.id or False,
|
||||
'default_user_id': uid,
|
||||
'default_section_id': opp.section_id and opp.section_id.id or False,
|
||||
'default_email_from': opp.email_from,
|
||||
'default_state': 'open',
|
||||
'default_name': opp.name
|
||||
}
|
||||
value = {
|
||||
'name': _('Meetings'),
|
||||
'context': context,
|
||||
'view_type': 'form',
|
||||
'view_mode': 'calendar,form,tree',
|
||||
'res_model': 'crm.meeting',
|
||||
'view_id': False,
|
||||
'views': [(id1, 'calendar'), (id2, 'form'), (id3, 'tree')],
|
||||
'type': 'ir.actions.act_window',
|
||||
'search_view_id': res['res_id'],
|
||||
'nodestroy': True
|
||||
}
|
||||
return value
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if not context:
|
||||
context = {}
|
||||
|
||||
if 'date_closed' in vals:
|
||||
return super(crm_lead,self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
if 'stage_id' in vals and vals['stage_id']:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, vals['stage_id'], context=context)
|
||||
self.history(cr, uid, ids, _("Changed Stage to: %s") % stage_obj.name, details=_("Changed Stage to: %s") % stage_obj.name)
|
||||
message=''
|
||||
for case in self.browse(cr, uid, ids, context=context):
|
||||
if case.type == 'lead' or context.get('stage_type',False)=='lead':
|
||||
message = _("The stage of lead '%s' has been changed to '%s'.") % (case.name, stage_obj.name)
|
||||
elif case.type == 'opportunity':
|
||||
message = _("The stage of opportunity '%s' has been changed to '%s'.") % (case.name, stage_obj.name)
|
||||
self.log(cr, uid, case.id, message)
|
||||
return super(crm_lead,self).write(cr, uid, ids, vals, context)
|
||||
|
||||
def unlink(self, cr, uid, ids, context=None):
|
||||
for lead in self.browse(cr, uid, ids, context):
|
||||
if (not lead.section_id.allow_unlink) and (lead.state <> 'draft'):
|
||||
raise osv.except_osv(_('Warning !'),
|
||||
_('You can not delete this lead. You should better cancel it.'))
|
||||
return super(crm_lead, self).unlink(cr, uid, ids, context)
|
||||
|
||||
def on_change_optout(self, cr, uid, ids, optout):
|
||||
return {'value':{'optout':optout,'optin':False}}
|
||||
|
||||
crm_lead()
|
||||
|
||||
|
|
|
@ -2,97 +2,119 @@
|
|||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
<record model="crm.case.stage" id="stage_lead6">
|
||||
<!-- Crm stages -->
|
||||
<record model="crm.case.stage" id="stage_lead6">
|
||||
<field name="name">Lost</field>
|
||||
<field eval="'0'" name="probability"/>
|
||||
<field eval="'0'" name="sequence"/>
|
||||
<field name="type">lead</field>
|
||||
</record>
|
||||
<!-- CASE STATUS(stage_id) -->
|
||||
<record model="crm.case.stage" id="stage_lead1">
|
||||
<field name="name">New</field>
|
||||
<field eval="'10'" name="probability"/>
|
||||
<field eval="'1'" name="sequence"/>
|
||||
<field name="type">lead</field>
|
||||
<field eval="'11'" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_lead2">
|
||||
<field name="name">Qualification</field>
|
||||
<field eval="'20'" name="probability"/>
|
||||
<field eval="'2'" name="sequence"/>
|
||||
<field name="type">lead</field>
|
||||
<field eval="'12'" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_lead3">
|
||||
<field name="name">Proposition</field>
|
||||
<field eval="'40'" name="probability"/>
|
||||
<field eval="'3'" name="sequence"/>
|
||||
<field name="type">lead</field>
|
||||
<field eval="'13'" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_lead4">
|
||||
<field name="name">Negotiation</field>
|
||||
<field eval="'60'" name="probability"/>
|
||||
<field eval="'4'" name="sequence"/>
|
||||
<field name="type">lead</field>
|
||||
<field eval="'14'" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_lead5">
|
||||
<field name="name">Won</field>
|
||||
<field eval="'100'" name="probability"/>
|
||||
<field eval="'5'" name="sequence"/>
|
||||
<field eval="'15'" name="sequence"/>
|
||||
<field eval="1" name="on_change"/>
|
||||
<field name="type">lead</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
<record model="crm.case.section" id="section_sales_department">
|
||||
<field name="name">Sales Department</field>
|
||||
<field name="code">Sales</field>
|
||||
<field name="stage_ids" eval="[(4, ref('stage_lead1')), (4, ref('stage_lead2')), (4, ref('stage_lead3')), (4, ref('stage_lead4')), (4, ref('stage_lead5')), (4, ref('stage_lead6'))]"/>
|
||||
</record>
|
||||
|
||||
<!-- CASE CATEGORY2(category2_id) -->
|
||||
<!-- Crm campain -->
|
||||
<record model="crm.case.resource.type" id="type_lead1">
|
||||
<field name="name">Telesales</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead2">
|
||||
<field name="name">Mail Campaign 1</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead3">
|
||||
<field name="name">Mail Campaign 2</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead4">
|
||||
<field name="name">Twitter Ads</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead5">
|
||||
<field name="name">Google Adwords</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead6">
|
||||
<field name="name">Google Adwords 2</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead7">
|
||||
<field name="name">Television</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.resource.type" id="type_lead8">
|
||||
<field name="name">Newsletter</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
<!-- crm categories -->
|
||||
<record model="crm.case.categ" id="categ_oppor1">
|
||||
<field name="name">Interest in Computer</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor2">
|
||||
<field name="name">Interest in Accessories</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor3">
|
||||
<field name="name">Need Services</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor4">
|
||||
<field name="name">Need Information</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor5">
|
||||
<field name="name">Need a Website Design</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor6">
|
||||
<field name="name">Potential Reseller</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor7">
|
||||
<field name="name">Need Consulting</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor8">
|
||||
<field name="name">Other</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -1,11 +1,7 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
<!--
|
||||
((((((((((( Demo Cases )))))))))))
|
||||
-->
|
||||
|
||||
<!--For Leads-->
|
||||
<!-- Demo Leads -->
|
||||
<record id="crm_case_itisatelesalescampaign0" model="crm.lead">
|
||||
<field name="type_id" ref="crm.type_lead1"/>
|
||||
<field eval="'3'" name="priority"/>
|
||||
|
@ -37,7 +33,7 @@
|
|||
<field eval="'Le Club SARL'" name="name"/>
|
||||
<field eval="'(956) 293-2595'" name="phone"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="crm_case_developingwebapplications0" model="crm.lead">
|
||||
<field name="type_id" ref="crm.type_lead5"/>
|
||||
<field eval="'2'" name="priority"/>
|
||||
|
@ -186,26 +182,105 @@
|
|||
<field eval=""Partnership Offer"" name="partner_name"/>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Call Function to Open the leads-->
|
||||
<!-- Call Function to Open the leads-->
|
||||
<function model="crm.lead" name="case_open">
|
||||
<value eval="[ref('crm_case_itisatelesalescampaign0'), ref('crm_case_electonicgoodsdealer0'), ref('crm_case_company_partnership0'), ref('crm_case_webvisitor0'), ref('crm_case_business_card0')]"/>
|
||||
</function>
|
||||
|
||||
<!-- Call Function to mark the lead as Pending-->
|
||||
<function model="crm.lead" name="case_pending">
|
||||
<value eval="[ref('crm_case_itdeveloper0')]"/>
|
||||
</function>
|
||||
|
||||
<!-- Call Function to Close the leads-->
|
||||
<function model="crm.lead" name="case_close">
|
||||
<value eval="[ref('crm_case_vpoperations0'), ref('crm_case_developingwebapplications0'), ref('crm_case_webvisitor0')]"/>
|
||||
</function>
|
||||
|
||||
<!-- Call Function to Cancel the leads-->
|
||||
<function model="crm.lead" name="case_cancel">
|
||||
<value eval="[ref('crm_case_mgroperations0'), ref('crm_case_imported_contact0')]"/>
|
||||
</function>
|
||||
|
||||
<!-- Demo Opportunities -->
|
||||
<record id="crm_case_construstazunits0" model="crm.lead">
|
||||
<field eval="60" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_zen"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_lead1"/>
|
||||
<field name="partner_id" ref="base.res_partner_3"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""open"" name="state"/>
|
||||
<field eval="85000.0" name="planned_revenue"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor1"/>
|
||||
<field name="stage_id" ref="crm.stage_lead3"/>
|
||||
<field eval=""CONS TRUST (AZ) 529701 - 1000 units"" name="name"/>
|
||||
</record>
|
||||
<record id="crm_case_rdroundfundingunits0" model="crm.lead">
|
||||
<field name="partner_address_id" ref="base.res_partner_address_15"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_lead2"/>
|
||||
<field name="partner_id" ref="base.res_partner_11"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""draft"" name="state"/>
|
||||
<field eval="45000.0" name="planned_revenue"/>
|
||||
<field eval="50" name="probability"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor5"/>
|
||||
<field name="stage_id" ref="crm.stage_lead1"/>
|
||||
<field eval=""3rd Round Funding - 1000 units "" name="name"/>
|
||||
</record>
|
||||
<record id="crm_case_mediapoleunits0" model="crm.lead">
|
||||
<field eval="10" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_3"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_lead1"/>
|
||||
<field name="partner_id" ref="base.res_partner_8"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""pending"" name="state"/>
|
||||
<field eval="55000.0" name="planned_revenue"/>
|
||||
<field eval="70" name="probability"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor7"/>
|
||||
<field name="stage_id" ref="crm.stage_lead5"/>
|
||||
<field eval=""Mediapole - 5000 units"" name="name"/>
|
||||
<field eval=""info@mycompany.net"" name="email_from"/>
|
||||
</record>
|
||||
<record id="crm_case_abcfuelcounits0" model="crm.lead">
|
||||
<field eval="40" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_1"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_lead1"/>
|
||||
<field name="partner_id" ref="base.res_partner_9"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_demo"/>
|
||||
<field eval=""open"" name="state"/>
|
||||
<field eval="45000.0" name="planned_revenue"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor5"/>
|
||||
<field name="stage_id" ref="crm.stage_lead4"/>
|
||||
<field eval=""ABC FUEL CO 829264 - 1000 units "" name="name"/>
|
||||
<field eval=""info@opensides.be"" name="email_from"/>
|
||||
</record>
|
||||
<record id="crm_case_dirtminingltdunits0" model="crm.lead">
|
||||
<field eval="80" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_wong"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="partner_id" ref="base.res_partner_maxtor"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""done"" name="state"/>
|
||||
<field eval="42000.0" name="planned_revenue"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor2"/>
|
||||
<field name="stage_id" ref="crm.stage_lead6"/>
|
||||
<field eval=""Dirt Mining Ltd 271742 - 1000 units"" name="name"/>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -35,5 +35,68 @@
|
|||
id="menu_crm_case_categ0_act_leads"
|
||||
action="crm_case_category_act_leads_all" sequence="1" />
|
||||
|
||||
|
||||
<act_window
|
||||
id="act_crm_opportunity_crm_phonecall_new"
|
||||
name="Phone calls"
|
||||
groups="base.group_extended"
|
||||
res_model="crm.phonecall"
|
||||
src_model="crm.lead"
|
||||
view_mode="tree,calendar,form"
|
||||
context="{'default_duration': 1.0 ,'default_opportunity_id': active_id,'default_partner_phone':phone}"
|
||||
domain="[('opportunity_id', '=', active_id)]"
|
||||
view_type="form"/>
|
||||
|
||||
<act_window
|
||||
id="act_crm_opportunity_crm_meeting_new"
|
||||
name="Meetings"
|
||||
res_model="crm.meeting"
|
||||
src_model="crm.lead"
|
||||
view_mode="tree,form,calendar,"
|
||||
context="{'default_duration': 4.0, 'default_opportunity_id': active_id}"
|
||||
domain="[('opportunity_id', '=', active_id)]"
|
||||
view_type="form"/>
|
||||
|
||||
<record model="ir.actions.act_window" id="crm_case_category_act_oppor11">
|
||||
<field name="name">Opportunities</field>
|
||||
<field name="res_model">crm.lead</field>
|
||||
<field name="view_mode">tree,form,graph,calendar</field>
|
||||
<field name="domain">[('type','=','opportunity')]</field>
|
||||
<field name="context">{'search_default_user_id':uid,'search_default_current':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity'}</field>
|
||||
<field name="view_id" ref="crm_case_tree_view_oppor"/>
|
||||
<field name="search_view_id" ref="crm.view_crm_case_opportunities_filter"/>
|
||||
<field name="help">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.
|
||||
|
||||
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.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_crm_tag_tree_view_oppor11">
|
||||
<field name="sequence" eval="1"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="crm_case_tree_view_oppor"/>
|
||||
<field name="act_window_id" ref="crm_case_category_act_oppor11"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_crm_tag_form_view_oppor11">
|
||||
<field name="sequence" eval="2"/>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="view_id" ref="crm_case_form_view_oppor"/>
|
||||
<field name="act_window_id" ref="crm_case_category_act_oppor11"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_crm_tag_graph_view_oppor11">
|
||||
<field name="sequence" eval="4"/>
|
||||
<field name="view_mode">graph</field>
|
||||
<field name="view_id" ref="crm_case_graph_view_opportunity"/>
|
||||
<field name="act_window_id" ref="crm_case_category_act_oppor11"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="base.menu_sales" name="Sales"
|
||||
parent="base.menu_base_partner" sequence="1" />
|
||||
|
||||
<menuitem name="Opportunities" id="menu_crm_case_opp"
|
||||
parent="base.menu_sales" action="crm_case_category_act_oppor11"
|
||||
sequence="2" />
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -3,31 +3,23 @@
|
|||
<data>
|
||||
|
||||
<!-- Stage Search view -->
|
||||
|
||||
<record id="crm_lead_stage_search" model="ir.ui.view">
|
||||
<record id="crm_lead_stage_search" model="ir.ui.view">
|
||||
<field name="name">Stage - Search</field>
|
||||
<field name="model">crm.case.stage</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Stage Search">
|
||||
<filter icon="terp-personal" name="lead"
|
||||
string="Lead" domain="[('type', '=', 'lead')]" context="{'type' : 'lead'}"/>
|
||||
<filter icon="terp-personal+" name="opportunity"
|
||||
string="Opportunity" domain="[('type', '=', 'opportunity')]" context="{'type' : 'opportunity'}"/>
|
||||
<field name="name"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!--Lead Stage Form view -->
|
||||
|
||||
<record id="crm_lead_stage_act" model="ir.actions.act_window">
|
||||
<field name="name">Stages</field>
|
||||
<field name="res_model">crm.case.stage</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_id" ref="crm.crm_case_stage_tree"/>
|
||||
<field name="context">{'search_default_opportunity':1}</field>
|
||||
<field name="search_view_id" ref="crm_lead_stage_search"/>
|
||||
<field name="help">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.</field>
|
||||
</record>
|
||||
|
||||
|
@ -74,7 +66,7 @@
|
|||
<newline />
|
||||
<field name="user_id" />
|
||||
<field name="section_id" widget="selection" />
|
||||
<field name="stage_id" domain="[('type','=','lead'),('section_ids', '=', section_id)]" />
|
||||
<field name="stage_id" domain="[('section_ids', '=', section_id)]" />
|
||||
<group col="2" colspan="1">
|
||||
<button name="stage_previous" string=""
|
||||
states="open,pending,draft" type="object"
|
||||
|
@ -371,5 +363,311 @@
|
|||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Opportunities Form View -->
|
||||
<record model="ir.ui.view" id="crm_case_form_view_oppor">
|
||||
<field name="name">Opportunities</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">form</field>
|
||||
<field name="priority">10</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Opportunities">
|
||||
<group colspan="4" col="7">
|
||||
<field name="name" required="1" string="Opportunity"/>
|
||||
<label string="Stage:" align="1.0"/>
|
||||
<group colspan="1" col="4">
|
||||
<field name="stage_id" nolabel="1"
|
||||
on_change="onchange_stage_id(stage_id)"
|
||||
domain="[('section_ids', '=', section_id)]"/>
|
||||
<button name="stage_previous"
|
||||
states="draft,open,pending" type="object"
|
||||
icon="gtk-go-back" string="" context="{'stage_type': 'opportunity'}"/>
|
||||
<button name="stage_next" states="draft,open,pending"
|
||||
type="object" icon="gtk-go-forward" string="" context="{'stage_type': 'opportunity'}"/>
|
||||
</group>
|
||||
<field name="user_id"/>
|
||||
|
||||
<button string="Schedule/Log Call"
|
||||
name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action" groups="base.group_extended"/>
|
||||
|
||||
<field name="planned_revenue"/>
|
||||
<field name="probability"/>
|
||||
<field name="date_deadline"/>
|
||||
|
||||
<button name="action_makeMeeting" type="object"
|
||||
string="Schedule Meeting" icon="gtk-redo" />
|
||||
<newline/>
|
||||
<field name="date_action"/>
|
||||
<field name="title_action"/>
|
||||
<field name="priority" string="Priority"/>
|
||||
<newline/>
|
||||
<field name="type" invisible="1"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Opportunity">
|
||||
<group col="4" colspan="2">
|
||||
<separator colspan="4" string="Contacts"/>
|
||||
<group colspan="2">
|
||||
<field name="partner_id" select="1"
|
||||
on_change="onchange_partner_id(partner_id, email_from)" string="Customer"
|
||||
colspan="2" />
|
||||
<button name="%(action_crm_lead2partner)d"
|
||||
icon="terp-partner" type="action"
|
||||
string="Create"
|
||||
attrs="{'invisible':[('partner_id','!=',False)]}"/>
|
||||
</group>
|
||||
<field name="partner_address_id"
|
||||
string="Contact"
|
||||
on_change="onchange_partner_address_id(partner_address_id, email_from)"
|
||||
colspan="1" />
|
||||
<group col="3" colspan="2">
|
||||
<field name="email_from" string="Email" />
|
||||
<button string="Mail"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'new', 'model': 'crm.lead'}"
|
||||
icon="terp-mail-message-new" type="action" />
|
||||
</group>
|
||||
<field name="phone"/>
|
||||
|
||||
</group>
|
||||
<group col="2" colspan="2">
|
||||
<separator colspan="2" string="Categorization"/>
|
||||
<field name="section_id" colspan="1" widget="selection"/>
|
||||
<field name="categ_id" select="1"
|
||||
string="Category" widget="selection"
|
||||
domain="[('object_id.model', '=', 'crm.lead')]" />
|
||||
</group>
|
||||
|
||||
<separator colspan="4" string="Details"/>
|
||||
<field name="description" nolabel="1" colspan="4"/>
|
||||
|
||||
<separator colspan="4"/>
|
||||
<group col="10" colspan="4">
|
||||
<field name="state"/>
|
||||
<button name="case_cancel" string="Cancel" states="draft" type="object" icon="gtk-cancel" />
|
||||
<button name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="gtk-cancel" />
|
||||
<button name="case_reset" string="Reset to Draft" states="done,cancel" type="object" icon="gtk-convert" />
|
||||
<button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
|
||||
<button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause" />
|
||||
<button name="case_escalate" string="Escalate" states="open,pending" type="object" groups="base.group_extended" icon="gtk-go-up" />
|
||||
<button name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="gtk-apply" />
|
||||
</group>
|
||||
</page>
|
||||
<page string="Lead">
|
||||
<group colspan="2" col="4">
|
||||
<separator string="Contact" colspan="4" col="4"/>
|
||||
<field name="partner_name" string="Customer Name" colspan="4"/>
|
||||
<newline/>
|
||||
<field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
|
||||
<field name="function" />
|
||||
<field name="street" colspan="4"/>
|
||||
<field name="street2" colspan="4"/>
|
||||
<field name="zip"/>
|
||||
<field name="city"/>
|
||||
<field name="country_id"/>
|
||||
<field name="state_id"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Communication" colspan="2"/>
|
||||
<field name="fax"/>
|
||||
<field name="mobile"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Categorization" colspan="2"/>
|
||||
<field name="type_id" widget="selection" groups="base.group_extended"/>
|
||||
<field name="channel_id" widget="selection"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Mailings" colspan="2"/>
|
||||
<field name="optin" on_change="on_change_optin(optin)"/>
|
||||
<field name="optout" on_change="on_change_optout(optout)"/>
|
||||
</group>
|
||||
</page>
|
||||
|
||||
<page string="Communication & History" groups="base.group_extended">
|
||||
<group colspan="4">
|
||||
<field colspan="4" name="email_cc" string="Global CC" widget="char" size="512"/>
|
||||
</group>
|
||||
<field name="message_ids" colspan="4" nolabel="1" mode="tree,form">
|
||||
<tree string="History">
|
||||
<field name="display_text" string="History Information"/>
|
||||
<field name="history" invisible="1"/>
|
||||
<button
|
||||
string="Reply" attrs="{'invisible': [('history', '!=', True)]}"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
|
||||
icon="terp-mail-replied" type="action" />
|
||||
</tree>
|
||||
<form string="History">
|
||||
<group col="4" colspan="4">
|
||||
<field name="email_from"/>
|
||||
<field name="date"/>
|
||||
<field name="email_to" size="512"/>
|
||||
<field name="email_cc" size="512"/>
|
||||
<field name="name" colspan="4" widget="char" attrs="{'invisible': [('history', '=', False)]}" size="512"/>
|
||||
<field name="display_text" colspan="4" attrs="{'invisible': [('history', '=', True)]}"/>
|
||||
<field name="history" invisible="1"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Details">
|
||||
|
||||
<field name="description" colspan="4" nolabel="1"/>
|
||||
<group attrs="{'invisible': [('history', '!=', True)]}">
|
||||
<button colspan="4"
|
||||
string="Reply"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
|
||||
icon="terp-mail-replied" type="action" />
|
||||
</group>
|
||||
|
||||
</page>
|
||||
<page string="Attachments">
|
||||
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
<button string="Add Internal Note"
|
||||
name="%(crm.action_crm_add_note)d"
|
||||
context="{'model': 'crm.lead' }"
|
||||
icon="terp-document-new" type="action" />
|
||||
<button string="Send New Email"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'new', 'model': 'crm.lead'}"
|
||||
icon="terp-mail-message-new" type="action" />
|
||||
</page>
|
||||
<page string="Extra Info" groups="base.group_extended">
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Dates" colspan="2"/>
|
||||
<field name="create_date"/>
|
||||
<field name="write_date"/>
|
||||
<field name="date_closed"/>
|
||||
<field name="date_open"/>
|
||||
</group>
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Misc" colspan="2"/>
|
||||
<field name="active"/>
|
||||
<field name="day_open"/>
|
||||
<field name="day_close"/>
|
||||
<field name="referred"/>
|
||||
</group>
|
||||
<separator colspan="4" string="References"/>
|
||||
<field name="ref"/>
|
||||
<field name="ref2"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Opportunities Tree View -->
|
||||
<record model="ir.ui.view" id="crm_case_tree_view_oppor">
|
||||
<field name="name">Opportunities Tree</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Opportunities" colors="blue:state=='pending' and not(date_deadline and (date_deadline < current_date));gray:state in ('cancel', 'done');red:date_deadline and (date_deadline < current_date)">
|
||||
<field name="date_deadline" invisible="1"/>
|
||||
<field name="create_date"/>
|
||||
<field name="name" string="Opportunity"/>
|
||||
<field name="partner_id" string="Customer"/>
|
||||
<field name="country_id" invisible="context.get('invisible_country', True)" />
|
||||
<field name="date_action"/>
|
||||
<field name="title_action" />
|
||||
<field name="channel_id" invisible="1"/>
|
||||
<field name="type_id" invisible="1"/>
|
||||
<field name="subjects" invisible="1"/>
|
||||
<field name="stage_id"/>
|
||||
<button name="stage_previous" string="Previous Stage" states="open,pending" type="object" icon="gtk-go-back" />
|
||||
<button name="stage_next" string="Next Stage" states="open,pending" type="object" icon="gtk-go-forward" />
|
||||
<field name="planned_revenue" sum="Expected Revenues"/>
|
||||
<field name="probability" widget="progressbar" avg="Avg. of Probability"/>
|
||||
<field name="section_id" invisible="context.get('invisible_section', True)" />
|
||||
<field name="user_id"/>
|
||||
<field name="priority" invisible="1"/>
|
||||
<field name="categ_id" invisible="1"/>
|
||||
<field name="state"/>
|
||||
<button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
|
||||
<button name="case_pending" string="Pending" states="open,draft" type="object" icon="gtk-media-pause" />
|
||||
<button name="case_mark_lost" string="Lost" states="open,pending" type="object" icon="gtk-cancel" />
|
||||
<button name="case_mark_won" string="Won" states="open,pending" type="object" icon="gtk-apply" />
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Opportunities Search View -->
|
||||
<record id="view_crm_case_opportunities_filter" model="ir.ui.view">
|
||||
<field name="name">CRM - Opportunities Search</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Opportunities">
|
||||
<filter icon="terp-check"
|
||||
string="Current" help="Draft, Open and Pending Opportunities"
|
||||
name="current"
|
||||
domain="[('state','in',('draft','open','pending'))]"/>
|
||||
<filter icon="terp-camera_test"
|
||||
string="Open" help="Open Opportunities"
|
||||
domain="[('state','=','open')]"/>
|
||||
<filter icon="terp-gtk-media-pause"
|
||||
string="Pending" help="Pending Opportunities"
|
||||
domain="[('state','=','pending')]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" string="Opportunity"/>
|
||||
<field name="partner_id" string="Customer / Email" filter_domain="['|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self)]"/>
|
||||
<field name="user_id">
|
||||
<filter icon="terp-personal-"
|
||||
domain="[('user_id','=', False)]"
|
||||
help="Unassigned Opportunities" />
|
||||
</field>
|
||||
<field name="section_id"
|
||||
context="{'invisible_section': False}"
|
||||
widget="selection">
|
||||
<filter icon="terp-personal+" groups="base.group_extended"
|
||||
domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
|
||||
context="{'invisible_section': False}"
|
||||
help="My Sales Team(s)" />
|
||||
<filter icon="terp-personal+" groups="base.group_extended"
|
||||
context="{'invisible_section': False}"
|
||||
domain="[]"
|
||||
help="Show Sales Team"/>
|
||||
</field>
|
||||
|
||||
<newline/>
|
||||
<group expand="0" string="Group By..." colspan="16">
|
||||
<filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}" />
|
||||
<filter string="Team" help="Sales Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
|
||||
<filter string="Customer" help="Partner" icon="terp-personal+" domain="[]" context="{'group_by':'partner_id'}"/>
|
||||
<separator orientation="vertical" />
|
||||
<filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}" />
|
||||
<filter string="Priority" icon="terp-rating-rated" domain="[]" context="{'group_by':'priority'}" />
|
||||
<filter string="Category" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'categ_id'}" />
|
||||
<filter string="Campaign" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'type_id'}" groups="base.group_extended"/>
|
||||
<filter string="Channel" icon="terp-call-start" domain="[]" context="{'group_by':'channel_id'}" />
|
||||
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
|
||||
<separator orientation="vertical" />
|
||||
<filter string="Creation" icon="terp-go-month" domain="[]" context="{'group_by':'create_date'}" />
|
||||
<filter string="Exp.Closing" icon="terp-go-month" help="Expected Closing" domain="[]" context="{'group_by':'date_deadline'}" />
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- crm.lead Opportunities Graph View -->
|
||||
<record model="ir.ui.view" id="crm_case_graph_view_opportunity">
|
||||
<field name="name">CRM - Opportunity Graph</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Opportunity by Categories" type="bar" orientation="horizontal">
|
||||
<field name="categ_id"/>
|
||||
<field name="planned_revenue" operator="+"/>
|
||||
<field name="state" group="True"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
/>
|
||||
|
||||
<record model="ir.actions.act_window" id="crm_case_categ_meet_create_partner">
|
||||
<field name="name">Create Partner For Meeting</field>
|
||||
<field name="name">Schedule a Meeting</field>
|
||||
<field name="context" eval="{'default_state':'draft'}"/>
|
||||
</record>
|
||||
|
||||
|
|
|
@ -1,223 +0,0 @@
|
|||
#-*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of the
|
||||
# License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from osv import fields, osv
|
||||
from tools.translate import _
|
||||
import crm
|
||||
|
||||
|
||||
AVAILABLE_STATES = [
|
||||
('draft','Draft'),
|
||||
('open','Open'),
|
||||
('cancel', 'Lost'),
|
||||
('done', 'Converted'),
|
||||
('pending','Pending')
|
||||
]
|
||||
|
||||
class crm_opportunity(osv.osv):
|
||||
""" Opportunity Cases """
|
||||
_order = "priority,date_action,id desc"
|
||||
_inherit = 'crm.lead'
|
||||
_columns = {
|
||||
# From crm.case
|
||||
'partner_address_id': fields.many2one('res.partner.address', 'Partner Contact', \
|
||||
domain="[('partner_id','=',partner_id)]"),
|
||||
|
||||
# Opportunity fields
|
||||
'probability': fields.float('Probability (%)',group_operator="avg"),
|
||||
'planned_revenue': fields.float('Expected Revenue'),
|
||||
'ref': fields.reference('Reference', selection=crm._links_get, size=128),
|
||||
'ref2': fields.reference('Reference 2', selection=crm._links_get, size=128),
|
||||
'phone': fields.char("Phone", size=64),
|
||||
'date_deadline': fields.date('Expected Closing'),
|
||||
'date_action': fields.date('Next Action Date'),
|
||||
'title_action': fields.char('Next Action', size=64),
|
||||
'stage_id': fields.many2one('crm.case.stage', 'Stage', domain="[('type','=','opportunity')]"),
|
||||
}
|
||||
|
||||
def _case_close_generic(self, cr, uid, ids, find_stage, *args):
|
||||
res = super(crm_opportunity, self).case_close(cr, uid, ids, *args)
|
||||
for case in self.browse(cr, uid, ids):
|
||||
#if the case is not an opportunity close won't change the stage
|
||||
if not case.type == 'opportunity':
|
||||
return res
|
||||
|
||||
value = {}
|
||||
stage_id = find_stage(cr, uid, 'opportunity', case.section_id.id or False)
|
||||
if stage_id:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, stage_id)
|
||||
value.update({'stage_id': stage_id})
|
||||
if stage_obj.on_change:
|
||||
value.update({'probability': stage_obj.probability})
|
||||
|
||||
#Done un crm.case
|
||||
#value.update({'date_closed': time.strftime('%Y-%m-%d %H:%M:%S')})
|
||||
|
||||
|
||||
self.write(cr, uid, ids, value)
|
||||
return res
|
||||
|
||||
def case_close(self, cr, uid, ids, *args):
|
||||
"""Overrides close for crm_case for setting probability and 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 = self._case_close_generic(cr, uid, ids, self._find_won_stage, *args)
|
||||
|
||||
for (id, name) in self.name_get(cr, uid, ids):
|
||||
opp = self.browse(cr, uid, id)
|
||||
if opp.type == 'opportunity':
|
||||
message = _("The opportunity '%s' has been won.") % name
|
||||
self.log(cr, uid, id, message)
|
||||
return res
|
||||
|
||||
def case_mark_lost(self, cr, uid, ids, *args):
|
||||
"""Mark the case as lost: state = done and probability = 0%
|
||||
@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 = self._case_close_generic(cr, uid, ids, self._find_lost_stage, *args)
|
||||
|
||||
for (id, name) in self.name_get(cr, uid, ids):
|
||||
opp = self.browse(cr, uid, id)
|
||||
if opp.type == 'opportunity':
|
||||
message = _("The opportunity '%s' has been marked as lost.") % name
|
||||
self.log(cr, uid, id, message)
|
||||
return res
|
||||
|
||||
def case_cancel(self, cr, uid, ids, *args):
|
||||
"""Overrides cancel for crm_case for setting probability
|
||||
@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_opportunity, self).case_cancel(cr, uid, ids, args)
|
||||
self.write(cr, uid, ids, {'probability' : 0.0})
|
||||
return res
|
||||
|
||||
def case_reset(self, cr, uid, ids, *args):
|
||||
"""Overrides reset as draft in order to set the stage field as empty
|
||||
@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_opportunity, self).case_reset(cr, uid, ids, *args)
|
||||
self.write(cr, uid, ids, {'stage_id': False, 'probability': 0.0})
|
||||
return res
|
||||
|
||||
|
||||
def case_open(self, cr, uid, ids, *args):
|
||||
"""Overrides open 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_opportunity, self).case_open(cr, uid, ids, *args)
|
||||
|
||||
return res
|
||||
|
||||
def onchange_stage_id(self, cr, uid, ids, stage_id, 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 ids: List of stage’s IDs
|
||||
@stage_id: change state id on run time """
|
||||
if not stage_id:
|
||||
return {'value':{}}
|
||||
|
||||
stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context=context)
|
||||
|
||||
if not stage.on_change:
|
||||
return {'value':{}}
|
||||
return {'value':{'probability': stage.probability}}
|
||||
|
||||
_defaults = {
|
||||
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.lead', context=c),
|
||||
'priority': crm.AVAILABLE_PRIORITIES[2][0],
|
||||
}
|
||||
|
||||
def action_makeMeeting(self, cr, uid, ids, context=None):
|
||||
"""
|
||||
This opens Meeting's calendar view to schedule meeting on current Opportunity
|
||||
@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 Meeting IDs
|
||||
@param context: A standard dictionary for contextual values
|
||||
|
||||
@return : Dictionary value for created Meeting view
|
||||
"""
|
||||
value = {}
|
||||
for opp in self.browse(cr, uid, ids, context=context):
|
||||
data_obj = self.pool.get('ir.model.data')
|
||||
|
||||
# Get meeting views
|
||||
result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_meetings_filter')
|
||||
res = data_obj.read(cr, uid, result, ['res_id'])
|
||||
id1 = data_obj._get_id(cr, uid, 'crm', 'crm_case_calendar_view_meet')
|
||||
id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_meet')
|
||||
id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_meet')
|
||||
if id1:
|
||||
id1 = data_obj.browse(cr, uid, id1, context=context).res_id
|
||||
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
|
||||
|
||||
context = {
|
||||
'default_opportunity_id': opp.id,
|
||||
'default_partner_id': opp.partner_id and opp.partner_id.id or False,
|
||||
'default_user_id': uid,
|
||||
'default_section_id': opp.section_id and opp.section_id.id or False,
|
||||
'default_email_from': opp.email_from,
|
||||
'default_state': 'open',
|
||||
'default_name': opp.name
|
||||
}
|
||||
value = {
|
||||
'name': _('Meetings'),
|
||||
'context': context,
|
||||
'view_type': 'form',
|
||||
'view_mode': 'calendar,form,tree',
|
||||
'res_model': 'crm.meeting',
|
||||
'view_id': False,
|
||||
'views': [(id1, 'calendar'), (id2, 'form'), (id3, 'tree')],
|
||||
'type': 'ir.actions.act_window',
|
||||
'search_view_id': res['res_id'],
|
||||
'nodestroy': True
|
||||
}
|
||||
return value
|
||||
|
||||
crm_opportunity()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -1,109 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
<!-- CASE STATUS(stage_id) -->
|
||||
|
||||
<record model="crm.case.stage" id="stage_opportunity6">
|
||||
<field name="name">Lost</field>
|
||||
<field eval="'0'" name="probability"/>
|
||||
<field eval="'0'" name="sequence"/>
|
||||
<field name="type">opportunity</field>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_opportunity1">
|
||||
<field name="name">New</field>
|
||||
<field eval="'10'" name="probability"/>
|
||||
<field eval="'1'" name="sequence"/>
|
||||
<field name="type">opportunity</field>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_opportunity2">
|
||||
<field name="name">Qualification</field>
|
||||
<field eval="'20'" name="probability"/>
|
||||
<field eval="'2'" name="sequence"/>
|
||||
<field name="type">opportunity</field>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_opportunity3">
|
||||
<field name="name">Proposition</field>
|
||||
<field eval="'40'" name="probability"/>
|
||||
<field eval="'3'" name="sequence"/>
|
||||
<field name="type">opportunity</field>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_opportunity4">
|
||||
<field name="name">Negotiation</field>
|
||||
<field eval="'60'" name="probability"/>
|
||||
<field eval="'4'" name="sequence"/>
|
||||
<field name="type">opportunity</field>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.stage" id="stage_opportunity5">
|
||||
<field name="name">Won</field>
|
||||
<field eval="'100'" name="probability"/>
|
||||
<field eval="'5'" name="sequence"/>
|
||||
<field eval="1" name="on_change"/>
|
||||
<field name="type">opportunity</field>
|
||||
</record>
|
||||
|
||||
<record model="crm.case.section" id="section_sales_department">
|
||||
<field name="name">Sales Department</field>
|
||||
<field name="code">Sales</field>
|
||||
<field name="stage_ids" eval="[(4, ref('stage_opportunity1')), (4, ref('stage_opportunity2')), (4, ref('stage_opportunity3')), (4, ref('stage_opportunity4')), (4, ref('stage_opportunity5')), (4, ref('stage_opportunity6'))]"/>
|
||||
</record>
|
||||
|
||||
<!-- CASE CATEGORY(categ_id) -->
|
||||
<record model="crm.case.categ" id="categ_oppor1">
|
||||
<field name="name">Interest in Computer</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor2">
|
||||
<field name="name">Interest in Accessories</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor3">
|
||||
<field name="name">Need Services</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor4">
|
||||
<field name="name">Need Information</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor5">
|
||||
<field name="name">Need a Website Design</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor6">
|
||||
<field name="name">Potential Reseller</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor7">
|
||||
<field name="name">Need Consulting</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
<record model="crm.case.categ" id="categ_oppor8">
|
||||
<field name="name">Other</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
<field name="object_id" search="[('model','=','crm.lead')]" model="ir.model"/>
|
||||
</record>
|
||||
|
||||
<!-- Case Resource(type_id) -->
|
||||
<record model="crm.case.resource.type" id="type_oppor1">
|
||||
<field name="name">Campaign 2</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
<record model="crm.case.resource.type" id="type_oppor2">
|
||||
<field name="name">Campaign 1</field>
|
||||
<field name="section_id" ref="section_sales_department"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -1,93 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
<!--
|
||||
((((((((((( Demo Cases )))))))))))
|
||||
-->
|
||||
|
||||
<!--For Opportunity-->
|
||||
|
||||
<record id="crm_case_construstazunits0" model="crm.lead">
|
||||
<field eval="60" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_zen"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_oppor1"/>
|
||||
<field name="partner_id" ref="base.res_partner_3"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""open"" name="state"/>
|
||||
<field eval="85000.0" name="planned_revenue"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor1"/>
|
||||
<field name="stage_id" ref="crm.stage_opportunity3"/>
|
||||
<field eval=""CONS TRUST (AZ) 529701 - 1000 units"" name="name"/>
|
||||
</record>
|
||||
<record id="crm_case_rdroundfundingunits0" model="crm.lead">
|
||||
<field name="partner_address_id" ref="base.res_partner_address_15"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_oppor2"/>
|
||||
<field name="partner_id" ref="base.res_partner_11"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""draft"" name="state"/>
|
||||
<field eval="45000.0" name="planned_revenue"/>
|
||||
<field eval="50" name="probability"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor5"/>
|
||||
<field name="stage_id" ref="crm.stage_opportunity1"/>
|
||||
<field eval=""3rd Round Funding - 1000 units "" name="name"/>
|
||||
</record>
|
||||
<record id="crm_case_mediapoleunits0" model="crm.lead">
|
||||
<field eval="10" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_3"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_oppor1"/>
|
||||
<field name="partner_id" ref="base.res_partner_8"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""pending"" name="state"/>
|
||||
<field eval="55000.0" name="planned_revenue"/>
|
||||
<field eval="70" name="probability"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor7"/>
|
||||
<field name="stage_id" ref="crm.stage_opportunity5"/>
|
||||
<field eval=""Mediapole - 5000 units"" name="name"/>
|
||||
<field eval=""info@mycompany.net"" name="email_from"/>
|
||||
</record>
|
||||
<record id="crm_case_abcfuelcounits0" model="crm.lead">
|
||||
<field eval="40" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_1"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="type_id" ref="crm.type_oppor1"/>
|
||||
<field name="partner_id" ref="base.res_partner_9"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_demo"/>
|
||||
<field eval=""open"" name="state"/>
|
||||
<field eval="45000.0" name="planned_revenue"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor5"/>
|
||||
<field name="stage_id" ref="crm.stage_opportunity4"/>
|
||||
<field eval=""ABC FUEL CO 829264 - 1000 units "" name="name"/>
|
||||
<field eval=""info@opensides.be"" name="email_from"/>
|
||||
</record>
|
||||
<record id="crm_case_dirtminingltdunits0" model="crm.lead">
|
||||
<field eval="80" name="probability"/>
|
||||
<field name="partner_address_id" ref="base.res_partner_address_wong"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field name="type">opportunity</field>
|
||||
<field name="partner_id" ref="base.res_partner_maxtor"/>
|
||||
<field eval=""3"" name="priority"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field eval=""done"" name="state"/>
|
||||
<field eval="42000.0" name="planned_revenue"/>
|
||||
<field name="section_id" ref="crm.section_sales_department"/>
|
||||
<field name="categ_id" ref="crm.categ_oppor2"/>
|
||||
<field name="stage_id" ref="crm.stage_opportunity6"/>
|
||||
<field eval=""Dirt Mining Ltd 271742 - 1000 units"" name="name"/>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
|
@ -1,68 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<act_window
|
||||
id="act_crm_opportunity_crm_phonecall_new"
|
||||
name="Phone calls"
|
||||
groups="base.group_extended"
|
||||
res_model="crm.phonecall"
|
||||
src_model="crm.lead"
|
||||
view_mode="tree,calendar,form"
|
||||
context="{'default_duration': 1.0 ,'default_opportunity_id': active_id,'default_partner_phone':phone}"
|
||||
domain="[('opportunity_id', '=', active_id)]"
|
||||
view_type="form"/>
|
||||
|
||||
<act_window
|
||||
id="act_crm_opportunity_crm_meeting_new"
|
||||
name="Meetings"
|
||||
res_model="crm.meeting"
|
||||
src_model="crm.lead"
|
||||
view_mode="tree,form,calendar,"
|
||||
context="{'default_duration': 4.0, 'default_opportunity_id': active_id}"
|
||||
domain="[('opportunity_id', '=', active_id)]"
|
||||
view_type="form"/>
|
||||
|
||||
<record model="ir.actions.act_window" id="crm_case_category_act_oppor11">
|
||||
<field name="name">Opportunities</field>
|
||||
<field name="res_model">crm.lead</field>
|
||||
<field name="view_mode">tree,form,graph,calendar</field>
|
||||
<field name="domain">[('type','=','opportunity')]</field>
|
||||
<field name="context">{'search_default_user_id':uid,'search_default_current':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity'}</field>
|
||||
<field name="view_id" ref="crm_case_tree_view_oppor"/>
|
||||
<field name="search_view_id" ref="crm.view_crm_case_opportunities_filter"/>
|
||||
<field name="help">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.
|
||||
|
||||
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.</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_crm_tag_tree_view_oppor11">
|
||||
<field name="sequence" eval="1"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="crm_case_tree_view_oppor"/>
|
||||
<field name="act_window_id" ref="crm_case_category_act_oppor11"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_crm_tag_form_view_oppor11">
|
||||
<field name="sequence" eval="2"/>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="view_id" ref="crm_case_form_view_oppor"/>
|
||||
<field name="act_window_id" ref="crm_case_category_act_oppor11"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_crm_tag_graph_view_oppor11">
|
||||
<field name="sequence" eval="4"/>
|
||||
<field name="view_mode">graph</field>
|
||||
<field name="view_id" ref="crm_case_graph_view_opportunity"/>
|
||||
<field name="act_window_id" ref="crm_case_category_act_oppor11"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="base.menu_sales" name="Sales"
|
||||
parent="base.menu_base_partner" sequence="1" />
|
||||
|
||||
<menuitem name="Opportunities" id="menu_crm_case_opp"
|
||||
parent="base.menu_sales" action="crm_case_category_act_oppor11"
|
||||
sequence="2" />
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -1,363 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<!-- Opportunities Form View -->
|
||||
<record model="ir.ui.view" id="crm_case_form_view_oppor">
|
||||
<field name="name">Opportunities</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">form</field>
|
||||
<field name="priority">10</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Opportunities">
|
||||
<group colspan="4" col="7">
|
||||
<field name="name" required="1" string="Opportunity"/>
|
||||
<label string="Stage:" align="1.0"/>
|
||||
<group colspan="1" col="4">
|
||||
<field name="stage_id" nolabel="1"
|
||||
on_change="onchange_stage_id(stage_id)"
|
||||
domain="[('type','=','opportunity'),('section_ids', '=', section_id)]"/>
|
||||
<button name="stage_previous"
|
||||
states="draft,open,pending" type="object"
|
||||
icon="gtk-go-back" string="" context="{'stage_type': 'opportunity'}"/>
|
||||
<button name="stage_next" states="draft,open,pending"
|
||||
type="object" icon="gtk-go-forward" string="" context="{'stage_type': 'opportunity'}"/>
|
||||
</group>
|
||||
<field name="user_id"/>
|
||||
|
||||
<button string="Schedule/Log Call"
|
||||
name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action" groups="base.group_extended"/>
|
||||
|
||||
<field name="planned_revenue"/>
|
||||
<field name="probability"/>
|
||||
<field name="date_deadline"/>
|
||||
|
||||
<button name="action_makeMeeting" type="object"
|
||||
string="Schedule Meeting" icon="gtk-redo" />
|
||||
<newline/>
|
||||
<field name="date_action"/>
|
||||
<field name="title_action"/>
|
||||
<field name="priority" string="Priority"/>
|
||||
<newline/>
|
||||
<field name="type" invisible="1"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Opportunity">
|
||||
<group col="4" colspan="2">
|
||||
<separator colspan="4" string="Contacts"/>
|
||||
<group colspan="2">
|
||||
<field name="partner_id" select="1"
|
||||
on_change="onchange_partner_id(partner_id, email_from)" string="Customer"
|
||||
colspan="2" />
|
||||
<button name="%(action_crm_lead2partner)d"
|
||||
icon="terp-partner" type="action"
|
||||
string="Create"
|
||||
attrs="{'invisible':[('partner_id','!=',False)]}"/>
|
||||
</group>
|
||||
<field name="partner_address_id"
|
||||
string="Contact"
|
||||
on_change="onchange_partner_address_id(partner_address_id, email_from)"
|
||||
colspan="1" />
|
||||
<group col="3" colspan="2">
|
||||
<field name="email_from" string="Email" />
|
||||
<button string="Mail"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'new', 'model': 'crm.lead'}"
|
||||
icon="terp-mail-message-new" type="action" />
|
||||
</group>
|
||||
<field name="phone"/>
|
||||
|
||||
</group>
|
||||
<group col="2" colspan="2">
|
||||
<separator colspan="2" string="Categorization"/>
|
||||
<field name="section_id" colspan="1" widget="selection"/>
|
||||
<field name="categ_id" select="1"
|
||||
string="Category" widget="selection"
|
||||
domain="[('object_id.model', '=', 'crm.lead')]" />
|
||||
</group>
|
||||
|
||||
<separator colspan="4" string="Details"/>
|
||||
<field name="description" nolabel="1" colspan="4"/>
|
||||
|
||||
<separator colspan="4"/>
|
||||
<group col="10" colspan="4">
|
||||
<field name="state"/>
|
||||
<button name="case_cancel" string="Cancel"
|
||||
states="draft" type="object"
|
||||
icon="gtk-cancel" />
|
||||
<button name="case_mark_lost" string="Mark Lost"
|
||||
states="open,pending" type="object"
|
||||
icon="gtk-cancel" />
|
||||
<button name="case_reset" string="Reset to Draft"
|
||||
states="done,cancel" type="object"
|
||||
icon="gtk-convert" />
|
||||
<button name="case_open" string="Open"
|
||||
states="draft,pending" type="object"
|
||||
icon="gtk-go-forward" />
|
||||
<button name="case_pending" string="Pending"
|
||||
states="draft,open" type="object"
|
||||
icon="gtk-media-pause" />
|
||||
<button name="case_escalate" string="Escalate"
|
||||
states="open,pending" type="object"
|
||||
groups="base.group_extended"
|
||||
icon="gtk-go-up" />
|
||||
<button name="case_close" string="Mark Won"
|
||||
states="open,pending" type="object"
|
||||
icon="gtk-apply" />
|
||||
</group>
|
||||
</page>
|
||||
<page string="Lead">
|
||||
<group colspan="2" col="4">
|
||||
<separator string="Contact" colspan="4" col="4"/>
|
||||
<field name="partner_name" string="Customer Name" colspan="4"/>
|
||||
<newline/>
|
||||
<field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
|
||||
<field name="function" />
|
||||
<field name="street" colspan="4"/>
|
||||
<field name="street2" colspan="4"/>
|
||||
<field name="zip"/>
|
||||
<field name="city"/>
|
||||
<field name="country_id"/>
|
||||
<field name="state_id"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Communication" colspan="2"/>
|
||||
<field name="fax"/>
|
||||
<field name="mobile"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Categorization" colspan="2"/>
|
||||
<field name="type_id" widget="selection" groups="base.group_extended"/>
|
||||
<field name="channel_id" widget="selection"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Mailings" colspan="2"/>
|
||||
<field name="optin" on_change="on_change_optin(optin)"/>
|
||||
<field name="optout" on_change="on_change_optout(optout)"/>
|
||||
</group>
|
||||
</page>
|
||||
|
||||
<page string="Communication & History" groups="base.group_extended">
|
||||
<group colspan="4">
|
||||
<field colspan="4" name="email_cc" string="Global CC" widget="char" size="512"/>
|
||||
</group>
|
||||
<field name="message_ids" colspan="4" nolabel="1" mode="tree,form">
|
||||
<tree string="History">
|
||||
<field name="display_text" string="History Information"/>
|
||||
<field name="history" invisible="1"/>
|
||||
<button
|
||||
string="Reply" attrs="{'invisible': [('history', '!=', True)]}"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
|
||||
icon="terp-mail-replied" type="action" />
|
||||
</tree>
|
||||
<form string="History">
|
||||
<group col="4" colspan="4">
|
||||
<field name="email_from"/>
|
||||
<field name="date"/>
|
||||
<field name="email_to" size="512"/>
|
||||
<field name="email_cc" size="512"/>
|
||||
<field name="name" colspan="4" widget="char" attrs="{'invisible': [('history', '=', False)]}" size="512"/>
|
||||
<field name="display_text" colspan="4" attrs="{'invisible': [('history', '=', True)]}"/>
|
||||
<field name="history" invisible="1"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Details">
|
||||
|
||||
<field name="description" colspan="4" nolabel="1"/>
|
||||
<group attrs="{'invisible': [('history', '!=', True)]}">
|
||||
<button colspan="4"
|
||||
string="Reply"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
|
||||
icon="terp-mail-replied" type="action" />
|
||||
</group>
|
||||
|
||||
</page>
|
||||
<page string="Attachments">
|
||||
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
<button string="Add Internal Note"
|
||||
name="%(crm.action_crm_add_note)d"
|
||||
context="{'model': 'crm.lead' }"
|
||||
icon="terp-document-new" type="action" />
|
||||
<button string="Send New Email"
|
||||
name="%(crm.action_crm_send_mail)d"
|
||||
context="{'mail':'new', 'model': 'crm.lead'}"
|
||||
icon="terp-mail-message-new" type="action" />
|
||||
</page>
|
||||
<page string="Extra Info" groups="base.group_extended">
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Dates" colspan="2"/>
|
||||
<field name="create_date"/>
|
||||
<field name="write_date"/>
|
||||
<field name="date_closed"/>
|
||||
<field name="date_open"/>
|
||||
</group>
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Misc" colspan="2"/>
|
||||
<field name="active"/>
|
||||
<field name="day_open"/>
|
||||
<field name="day_close"/>
|
||||
<field name="referred"/>
|
||||
</group>
|
||||
<separator colspan="4" string="References"/>
|
||||
<field name="ref"/>
|
||||
<field name="ref2"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Opportunities Tree View -->
|
||||
|
||||
<record model="ir.ui.view" id="crm_case_tree_view_oppor">
|
||||
<field name="name">Opportunities Tree</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Opportunities" colors="blue:state=='pending' and not(date_deadline and (date_deadline < current_date));gray:state in ('cancel', 'done');red:date_deadline and (date_deadline < current_date)">
|
||||
<field name="date_deadline" invisible="1"/>
|
||||
<field name="create_date"/>
|
||||
<field name="name" string="Opportunity"/>
|
||||
<field name="partner_id" string="Customer"/>
|
||||
<field name="country_id" invisible="context.get('invisible_country', True)" />
|
||||
<field name="date_action"/>
|
||||
<field name="title_action" />
|
||||
<field name="stage_id"/>
|
||||
<field name="channel_id" invisible="1"/>
|
||||
<field name="type_id" invisible="1"/>
|
||||
<field name="subjects" invisible="1"/>
|
||||
<button name="stage_previous" string="Previous Stage"
|
||||
states="open,pending" type="object" icon="gtk-go-back" />
|
||||
<button name="stage_next" string="Next Stage"
|
||||
states="open,pending" type="object"
|
||||
icon="gtk-go-forward" />
|
||||
<field name="planned_revenue" sum="Expected Revenues"/>
|
||||
<field name="probability" widget="progressbar" avg="Avg. of Probability"/>
|
||||
<field name="section_id"
|
||||
invisible="context.get('invisible_section', True)" />
|
||||
<field name="user_id"/>
|
||||
<field name="priority" invisible="1"/>
|
||||
<field name="categ_id" invisible="1"/>
|
||||
<field name="state"/>
|
||||
<button name="case_open" string="Open"
|
||||
states="draft,pending" type="object"
|
||||
icon="gtk-go-forward" />
|
||||
<button name="case_pending" string="Pending"
|
||||
states="open,draft" type="object"
|
||||
icon="gtk-media-pause" />
|
||||
<button name="case_close" string="Won"
|
||||
states="open,draft,pending" type="object"
|
||||
icon="gtk-apply" />
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Opportunities Graph View -->
|
||||
|
||||
<record model="ir.ui.view" id="crm_case_graph_view_opportunity">
|
||||
<field name="name">CRM - Opportunity Graph</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Opportunity by Categories" type="bar" orientation="horizontal">
|
||||
<field name="categ_id"/>
|
||||
<field name="planned_revenue" operator="+"/>
|
||||
<field name="state" group="True"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Opportunities Search View -->
|
||||
|
||||
<record id="view_crm_case_opportunities_filter" model="ir.ui.view">
|
||||
<field name="name">CRM - Opportunities Search</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Opportunities">
|
||||
<filter icon="terp-check"
|
||||
string="Current" help="Draft, Open and Pending Opportunities"
|
||||
name="current"
|
||||
domain="[('state','in',('draft','open','pending'))]"/>
|
||||
<filter icon="terp-camera_test"
|
||||
string="Open" help="Open Opportunities"
|
||||
domain="[('state','=','open')]"/>
|
||||
<filter icon="terp-gtk-media-pause"
|
||||
string="Pending" help="Pending Opportunities"
|
||||
domain="[('state','=','pending')]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" string="Opportunity"/>
|
||||
<field name="partner_id" string="Customer / Email" filter_domain="['|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self)]"/>
|
||||
<field name="user_id">
|
||||
<filter icon="terp-personal-"
|
||||
domain="[('user_id','=', False)]"
|
||||
help="Unassigned Opportunities" />
|
||||
</field>
|
||||
<field name="section_id"
|
||||
context="{'invisible_section': False}"
|
||||
widget="selection">
|
||||
<filter icon="terp-personal+" groups="base.group_extended"
|
||||
domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
|
||||
context="{'invisible_section': False}"
|
||||
help="My Sales Team(s)" />
|
||||
<filter icon="terp-personal+" groups="base.group_extended"
|
||||
context="{'invisible_section': False}"
|
||||
domain="[]"
|
||||
help="Show Sales Team"/>
|
||||
</field>
|
||||
|
||||
<newline/>
|
||||
<group expand="0" string="Group By..." colspan="16">
|
||||
<filter string="Salesman" icon="terp-personal"
|
||||
domain="[]" context="{'group_by':'user_id'}" />
|
||||
<filter string="Team" help="Sales Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
|
||||
<filter string="Customer" help="Partner" icon="terp-personal+" domain="[]" context="{'group_by':'partner_id'}"/>
|
||||
<separator orientation="vertical" />
|
||||
<filter string="Stage" icon="terp-stage" domain="[]"
|
||||
context="{'group_by':'stage_id'}" />
|
||||
<filter string="Priority" icon="terp-rating-rated" domain="[]"
|
||||
context="{'group_by':'priority'}" />
|
||||
<filter string="Category" icon="terp-stock_symbol-selection"
|
||||
domain="[]" context="{'group_by':'categ_id'}" />
|
||||
<filter string="Campaign" icon="terp-gtk-jump-to-rtl"
|
||||
domain="[]" context="{'group_by':'type_id'}" groups="base.group_extended"/>
|
||||
<filter string="Channel" icon="terp-call-start"
|
||||
domain="[]" context="{'group_by':'channel_id'}" />
|
||||
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
|
||||
<separator orientation="vertical" />
|
||||
<filter string="Creation" icon="terp-go-month"
|
||||
domain="[]" context="{'group_by':'create_date'}" />
|
||||
<filter string="Exp.Closing"
|
||||
icon="terp-go-month"
|
||||
help="Expected Closing" domain="[]"
|
||||
context="{'group_by':'date_deadline'}" />
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Opportunities Graph View -->
|
||||
|
||||
<record model="ir.ui.view" id="crm_case_graph_view_opportunity">
|
||||
<field name="name">CRM - Opportunity Graph</field>
|
||||
<field name="model">crm.lead</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Opportunity by Categories" type="bar" orientation="horizontal">
|
||||
<field name="categ_id"/>
|
||||
<field name="planned_revenue" operator="+"/>
|
||||
<field name="state" group="True"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -108,7 +108,6 @@
|
|||
<field name="sequence"/>
|
||||
<field name="name"/>
|
||||
<field name="probability"/>
|
||||
<field name="type" />
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
@ -124,8 +123,6 @@
|
|||
<form string="Stage">
|
||||
<separator string="Stage Definition" colspan="4"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="type" groups="base.group_extended" />
|
||||
|
||||
<field name="sequence"/>
|
||||
<field name="probability"/>
|
||||
<group colspan="4" col="2" >
|
||||
|
@ -133,7 +130,7 @@
|
|||
</group>
|
||||
<separator string="Requirements" colspan="4"/>
|
||||
<field name="requirements" nolabel="1" colspan="4"/>
|
||||
<field name="section_ids" invisible="1" />
|
||||
<field name="section_ids" invisible="1" colspan="4"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
@ -146,9 +143,9 @@
|
|||
<field name="view_type">form</field>
|
||||
<field name="view_id" ref="crm_case_stage_tree"/>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Case Categories Form View -->
|
||||
|
||||
<!-- Case Categories Form View -->
|
||||
|
||||
<record id="crm_case_categ-view" model="ir.ui.view">
|
||||
<field name="name">crm.case.categ.form</field>
|
||||
|
@ -372,49 +369,6 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Inherit View From Partner -->
|
||||
|
||||
<record id="view_partners_form_crm1" model="ir.ui.view">
|
||||
<field name="name">view.res.partner.form.crm.inherited1</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field eval="18" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="user_id" position="after">
|
||||
<field name="section_id" completion="1" widget="selection"
|
||||
groups="base.group_extended"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_partners_tree_crm2" model="ir.ui.view">
|
||||
<field name="name">view.res.partner.tree.crm.inherited2</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.view_partner_tree"/>
|
||||
<field eval="18" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="country" position="after">
|
||||
<field name="section_id" completion="1" widget="selection"
|
||||
groups="base.group_extended"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_partners_form_crm3" model="ir.ui.view">
|
||||
<field name="name">view.res.partner.search.crm.inherited3</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">search</field>
|
||||
<field name="inherit_id" ref="base.view_res_partner_filter"/>
|
||||
<field eval="18" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="category_id" position="after">
|
||||
<field name="section_id" completion="1" widget="selection"
|
||||
groups="base.group_extended"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
<!-- menu for the working time -->
|
||||
<menuitem action="resource.action_resource_calendar_form" id="menu_action_resource_calendar_form" parent="resource.menu_resource_config" sequence="1"/>
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: crm
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-03-31 18:06+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:25+0000\n"
|
||||
"Last-Translator: Rolv Råen (adEgo) <Unknown>\n"
|
||||
"Language-Team: Norwegian Bokmal <nb@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-04-29 04:58+0000\n"
|
||||
"X-Generator: Launchpad (build 12758)\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: crm
|
||||
#: view:crm.lead.report:0
|
||||
|
@ -42,7 +42,7 @@ msgstr "Månedlig"
|
|||
#. module: crm
|
||||
#: view:crm.opportunity2phonecall:0
|
||||
msgid "Schedule a PhoneCall"
|
||||
msgstr ""
|
||||
msgstr "Planlegg en telefonsamtale"
|
||||
|
||||
#. module: crm
|
||||
#: model:ir.model,name:crm.model_crm_case_stage
|
||||
|
@ -52,17 +52,17 @@ msgstr ""
|
|||
#. module: crm
|
||||
#: view:crm.meeting:0
|
||||
msgid "Visibility"
|
||||
msgstr ""
|
||||
msgstr "Synlighet"
|
||||
|
||||
#. module: crm
|
||||
#: field:crm.lead,title:0
|
||||
msgid "Title"
|
||||
msgstr ""
|
||||
msgstr "Tittel"
|
||||
|
||||
#. module: crm
|
||||
#: field:crm.meeting,show_as:0
|
||||
msgid "Show as"
|
||||
msgstr ""
|
||||
msgstr "Vis som"
|
||||
|
||||
#. module: crm
|
||||
#: field:crm.meeting,day:0
|
||||
|
@ -74,7 +74,7 @@ msgstr ""
|
|||
#: view:crm.lead:0
|
||||
#: view:crm.phonecall:0
|
||||
msgid "Today"
|
||||
msgstr ""
|
||||
msgstr "I dag"
|
||||
|
||||
#. module: crm
|
||||
#: view:crm.merge.opportunity:0
|
||||
|
@ -87,7 +87,7 @@ msgstr ""
|
|||
#: view:crm.phonecall2phonecall:0
|
||||
#: view:crm.send.mail:0
|
||||
msgid " "
|
||||
msgstr ""
|
||||
msgstr " "
|
||||
|
||||
#. module: crm
|
||||
#: view:crm.lead.report:0
|
||||
|
@ -125,7 +125,7 @@ msgid "The code of the sales team must be unique !"
|
|||
msgstr ""
|
||||
|
||||
#. module: crm
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:93
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:95
|
||||
#, python-format
|
||||
msgid "Lead '%s' has been converted to an opportunity."
|
||||
msgstr ""
|
||||
|
@ -142,8 +142,8 @@ msgid "No Repeat"
|
|||
msgstr ""
|
||||
|
||||
#. module: crm
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:133
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:258
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:135
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:260
|
||||
#: code:addons/crm/wizard/crm_lead_to_partner.py:55
|
||||
#: code:addons/crm/wizard/crm_phonecall_to_partner.py:52
|
||||
#, python-format
|
||||
|
@ -153,7 +153,7 @@ msgstr "Advarsel !"
|
|||
#. module: crm
|
||||
#: selection:crm.meeting,rrule_type:0
|
||||
msgid "Yearly"
|
||||
msgstr ""
|
||||
msgstr "Årlig"
|
||||
|
||||
#. module: crm
|
||||
#: field:crm.segmentation.line,name:0
|
||||
|
@ -168,7 +168,7 @@ msgstr "Regelnavn"
|
|||
#: field:crm.lead.report,type_id:0
|
||||
#: model:ir.model,name:crm.model_crm_case_resource_type
|
||||
msgid "Campaign"
|
||||
msgstr ""
|
||||
msgstr "Kampanje"
|
||||
|
||||
#. module: crm
|
||||
#: selection:crm.lead2opportunity.partner,action:0
|
||||
|
@ -226,7 +226,7 @@ msgstr "Partner"
|
|||
#: field:crm.meeting,organizer:0
|
||||
#: field:crm.meeting,organizer_id:0
|
||||
msgid "Organizer"
|
||||
msgstr ""
|
||||
msgstr "Organisator"
|
||||
|
||||
#. module: crm
|
||||
#: view:crm.phonecall:0
|
||||
|
@ -250,7 +250,7 @@ msgstr ""
|
|||
#: view:res.partner:0
|
||||
#, python-format
|
||||
msgid "Phone Call"
|
||||
msgstr ""
|
||||
msgstr "Telefonsamtale"
|
||||
|
||||
#. module: crm
|
||||
#: field:crm.lead,optout:0
|
||||
|
@ -275,7 +275,7 @@ msgstr ""
|
|||
#. module: crm
|
||||
#: view:crm.lead:0
|
||||
msgid "Send New Email"
|
||||
msgstr ""
|
||||
msgstr "Send ny e-post"
|
||||
|
||||
#. module: crm
|
||||
#: field:crm.segmentation,segmentation_line:0
|
||||
|
@ -295,7 +295,7 @@ msgstr "Seksjoner"
|
|||
#. module: crm
|
||||
#: view:crm.merge.opportunity:0
|
||||
msgid "_Merge"
|
||||
msgstr ""
|
||||
msgstr "_Flett"
|
||||
|
||||
#. module: crm
|
||||
#: view:crm.lead.report:0
|
||||
|
@ -315,13 +315,13 @@ msgstr ""
|
|||
#. module: crm
|
||||
#: selection:crm.meeting,class:0
|
||||
msgid "Public"
|
||||
msgstr ""
|
||||
msgstr "Offentlig"
|
||||
|
||||
#. module: crm
|
||||
#: model:ir.actions.act_window,name:crm.crm_case_resource_type_act
|
||||
#: model:ir.ui.menu,name:crm.menu_crm_case_resource_type_act
|
||||
msgid "Campaigns"
|
||||
msgstr ""
|
||||
msgstr "Kampanjer"
|
||||
|
||||
#. module: crm
|
||||
#: model:ir.actions.act_window,name:crm.crm_lead_categ_action
|
||||
|
@ -333,7 +333,7 @@ msgstr "Kategorier"
|
|||
#. module: crm
|
||||
#: selection:crm.meeting,end_type:0
|
||||
msgid "Forever"
|
||||
msgstr ""
|
||||
msgstr "For alltid"
|
||||
|
||||
#. module: crm
|
||||
#: help:crm.lead,optout:0
|
||||
|
@ -350,7 +350,7 @@ msgstr ""
|
|||
#. module: crm
|
||||
#: field:crm.lead,contact_name:0
|
||||
msgid "Contact Name"
|
||||
msgstr ""
|
||||
msgstr "Kontaktnavn"
|
||||
|
||||
#. module: crm
|
||||
#: selection:crm.lead2opportunity.partner,action:0
|
||||
|
@ -535,9 +535,9 @@ msgstr ""
|
|||
|
||||
#. module: crm
|
||||
#: code:addons/crm/crm_lead.py:278
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:195
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:229
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:297
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:197
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:231
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:299
|
||||
#: view:crm.lead2opportunity:0
|
||||
#: view:crm.partner2opportunity:0
|
||||
#: model:ir.actions.act_window,name:crm.action_crm_lead2opportunity
|
||||
|
@ -808,8 +808,8 @@ msgid "Statistics Dashboard"
|
|||
msgstr ""
|
||||
|
||||
#. module: crm
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:86
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:96
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:88
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:98
|
||||
#: code:addons/crm/wizard/crm_partner_to_opportunity.py:101
|
||||
#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:117
|
||||
#: view:crm.lead:0
|
||||
|
@ -1085,7 +1085,7 @@ msgstr ""
|
|||
|
||||
#. module: crm
|
||||
#: code:addons/crm/crm_opportunity.py:208
|
||||
#: code:addons/crm/crm_phonecall.py:184
|
||||
#: code:addons/crm/crm_phonecall.py:185
|
||||
#: code:addons/crm/wizard/crm_phonecall_to_meeting.py:55
|
||||
#: code:addons/crm/wizard/crm_phonecall_to_meeting.py:137
|
||||
#: view:crm.meeting:0
|
||||
|
@ -2591,7 +2591,7 @@ msgid "Meeting Type"
|
|||
msgstr ""
|
||||
|
||||
#. module: crm
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:312
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:314
|
||||
#, python-format
|
||||
msgid "Merge with Existing Opportunity"
|
||||
msgstr ""
|
||||
|
@ -3103,8 +3103,8 @@ msgid "Schedule Call"
|
|||
msgstr ""
|
||||
|
||||
#. module: crm
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:133
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:258
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:135
|
||||
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:260
|
||||
#, python-format
|
||||
msgid "Closed/Cancelled Leads Could not convert into Opportunity"
|
||||
msgstr ""
|
||||
|
@ -3975,9 +3975,6 @@ msgstr ""
|
|||
#~ msgid "Mail to responsible"
|
||||
#~ msgstr "E-post til ansvarlig"
|
||||
|
||||
#~ msgid "%(case_date)s = Creation date"
|
||||
#~ msgstr "%(case_date)s = Registreringsdato"
|
||||
|
||||
#~ msgid "Set responsible to"
|
||||
#~ msgstr "Sett ansvarlig til"
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ class crm_lead_report(osv.osv):
|
|||
'probable_revenue': fields.float('Probable Revenue', digits=(16,2),readonly=True),
|
||||
'categ_id': fields.many2one('crm.case.categ', 'Category',\
|
||||
domain="['|',('section_id','=',False),('section_id','=',section_id)]" , readonly=True),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', readonly=True, domain="[('type', '=', 'lead')]"),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', readonly=True, domain="[('section_ids', '=', section_id)]"),
|
||||
'partner_id': fields.many2one('res.partner', 'Partner' , readonly=True),
|
||||
'opening_date': fields.date('Opening Date', readonly=True, select=True),
|
||||
'creation_date': fields.date('Creation Date', readonly=True, select=True),
|
||||
|
|
|
@ -121,7 +121,7 @@
|
|||
<group expand="0" string="Extended Filters..." groups="base.group_extended">
|
||||
<field name="partner_id"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="stage_id" widget="selection" domain="[('type', '=', 'lead')]" />
|
||||
<field name="stage_id" widget="selection" domain="[('section_ids', '=', 'section_id')]" />
|
||||
<field name="categ_id" widget="selection"/>
|
||||
<field name="type_id" widget="selection"/>
|
||||
<field name="channel_id" widget="selection"/>
|
||||
|
@ -233,7 +233,6 @@
|
|||
<field name="view_type">form</field>
|
||||
<field name="context">{"search_default_filter_opportunity":1, "search_default_opportunity": 1, "search_default_user":1,"search_default_this_month":1,'group_by_no_leaf':1,'group_by':[]}</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="domain">[('type', '=', 'opportunity')]</field>
|
||||
<field name="help">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.</field>
|
||||
</record>
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@ class res_partner(osv.osv):
|
|||
""" Inherits partner and adds CRM information in the partner form """
|
||||
_inherit = 'res.partner'
|
||||
_columns = {
|
||||
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
|
||||
'opportunity_ids': fields.one2many('crm.lead', 'partner_id',\
|
||||
'Leads and Opportunities'),
|
||||
'meeting_ids': fields.one2many('crm.meeting', 'partner_id',\
|
||||
|
|
|
@ -2,8 +2,50 @@
|
|||
<openerp>
|
||||
<data>
|
||||
|
||||
<!-- Partners inherited form -->
|
||||
<!-- Add section_id (Sales Team) to res.partner -->
|
||||
<record id="view_partners_form_crm1" model="ir.ui.view">
|
||||
<field name="name">view.res.partner.form.crm.inherited1</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field eval="18" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="user_id" position="after">
|
||||
<field name="section_id" completion="1" widget="selection"
|
||||
groups="base.group_extended"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_partners_tree_crm2" model="ir.ui.view">
|
||||
<field name="name">view.res.partner.tree.crm.inherited2</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.view_partner_tree"/>
|
||||
<field eval="18" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="country" position="after">
|
||||
<field name="section_id" completion="1" widget="selection"
|
||||
groups="base.group_extended"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_partners_form_crm3" model="ir.ui.view">
|
||||
<field name="name">view.res.partner.search.crm.inherited3</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">search</field>
|
||||
<field name="inherit_id" ref="base.view_res_partner_filter"/>
|
||||
<field eval="18" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="category_id" position="after">
|
||||
<field name="section_id" completion="1" widget="selection"
|
||||
groups="base.group_extended"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Add History tabs to res.partner form -->
|
||||
<record id="view_crm_partner_info_form1" model="ir.ui.view">
|
||||
<field name="name">res.partner.crm.info.inherit1</field>
|
||||
<field name="model">res.partner</field>
|
||||
|
@ -66,6 +108,9 @@
|
|||
</page>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
partner_address_id: base.res_partner_address_1
|
||||
partner_id: base.res_partner_9
|
||||
probability: 1.0
|
||||
stage_id: crm.stage_opportunity1
|
||||
stage_id: crm.stage_lead1
|
||||
categ_id: crm.categ_oppor2
|
||||
section_id: crm.section_sales_department
|
||||
|
||||
|
|
|
@ -5,24 +5,23 @@
|
|||
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_opportunity6}:
|
||||
!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.0
|
||||
type: opportunity
|
||||
sequence: 0
|
||||
-
|
||||
I create a lead 'OpenERP Presentation'.
|
||||
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: OpenERP Presentation
|
||||
name: Test Lead1
|
||||
planned_revenue: 0.0
|
||||
probability: 0.0
|
||||
probability: 10.0
|
||||
section_id: crm.section_sales_department
|
||||
-
|
||||
I open the lead.
|
||||
|
@ -56,34 +55,32 @@
|
|||
-
|
||||
!python {model: crm.lead}: |
|
||||
opportunity = self.browse(cr, uid, ref('crm_lead_openerppresentation0'))
|
||||
assert opportunity.stage_id.id == ref('crm.stage_opportunity6'), 'Stage is not changed!'
|
||||
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_partnerdemo0}:
|
||||
categ_id: crm.categ_oppor3
|
||||
day_close: 0.0
|
||||
day_open: 0.0
|
||||
!record {model: crm.lead, id: crm_lead_test2}:
|
||||
name: Partner Demo
|
||||
planned_revenue: 50000.0
|
||||
probability: 70.0
|
||||
section_id: crm.section_sales_department
|
||||
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_partnerdemo0')])
|
||||
self.case_open(cr, uid, [ref('crm_lead_test2')])
|
||||
-
|
||||
I mark this opportunity as won.
|
||||
-
|
||||
!python {model: crm.lead}: |
|
||||
self.case_close(cr, uid, [ref('crm_lead_partnerdemo0')])
|
||||
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_partnerdemo0'))
|
||||
assert opportunity.stage_id.id == ref('crm.stage_opportunity5'), 'Stage is not changed!'
|
||||
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!'
|
||||
|
|
|
@ -188,9 +188,9 @@ class crm_lead2opportunity_partner(osv.osv_memory):
|
|||
|
||||
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, [('type','=','opportunity'),('sequence','>=',1), ('section_ids','=', lead.section_id.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, [('type','=','opportunity'),('sequence','>=',1)])
|
||||
stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('sequence','>=',1)])
|
||||
|
||||
data = self.browse(cr, uid, ids[0], context=context)
|
||||
|
||||
|
|
|
@ -73,7 +73,7 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
'email_cc': fields.text('Watchers Emails', size=252, help="These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma"),
|
||||
'email_from': fields.char('Email', size=128, help="These people will receive email."),
|
||||
'partner_phone': fields.char('Phone', size=32),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('type','=','claim')]"),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('section_ids','=',section_id)]"),
|
||||
'cause': fields.text('Root Cause'),
|
||||
'state': fields.selection(crm.AVAILABLE_STATES, 'State', size=16, readonly=True,
|
||||
help='The state is set to \'Draft\', when a case is created.\
|
||||
|
@ -82,33 +82,6 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
\nIf the case needs to be reviewed then the state is set to \'Pending\'.'),
|
||||
'message_ids': fields.one2many('mailgate.message', 'res_id', 'Messages', domain=[('model','=',_name)]),
|
||||
}
|
||||
|
||||
def stage_next(self, cr, uid, ids, context=None):
|
||||
stage = super(crm_claim, self).stage_next(cr, uid, ids, context=context)
|
||||
if stage:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, stage, context=context)
|
||||
self.history(cr, uid, ids, _("Changed Stage to: ") + stage_obj.name)
|
||||
return stage
|
||||
|
||||
def stage_previous(self, cr, uid, ids, context=None):
|
||||
stage = super(crm_claim, self).stage_previous(cr, uid, ids, context=context)
|
||||
if stage:
|
||||
stage_obj = self.pool.get('crm.case.stage').browse(cr, uid, stage, context=context)
|
||||
self.history(cr, uid, ids, _("Changed Stage to: ") + stage_obj.name)
|
||||
return stage
|
||||
|
||||
def _get_stage_id(self, cr, uid, context=None):
|
||||
"""Finds type of stage according to object.
|
||||
@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
|
||||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
type = context and context.get('stage_type', '')
|
||||
stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('type','=',type),('sequence','>=',1)])
|
||||
return stage_ids and stage_ids[0] or False
|
||||
|
||||
_defaults = {
|
||||
'user_id': crm.crm_case._get_default_user,
|
||||
|
@ -116,19 +89,14 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
'partner_address_id': crm.crm_case._get_default_partner_address,
|
||||
'email_from':crm.crm_case. _get_default_email,
|
||||
'state': lambda *a: 'draft',
|
||||
'section_id':crm.crm_case. _get_section,
|
||||
'section_id': crm.crm_case._get_section,
|
||||
'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],
|
||||
#'stage_id': _get_stage_id,
|
||||
}
|
||||
|
||||
def onchange_partner_id(self, cr, uid, ids, part, email=False):
|
||||
"""This function returns value of partner address based on 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 case IDs
|
||||
@param part: Partner's id
|
||||
@email: Partner's email ID
|
||||
"""
|
||||
|
@ -145,10 +113,6 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
|
||||
def onchange_partner_address_id(self, cr, uid, ids, add, email=False):
|
||||
"""This function returns value of partner email based on Partner Address
|
||||
@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 add: Id of Partner's address
|
||||
@email: Partner's email ID
|
||||
"""
|
||||
|
@ -156,28 +120,23 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
return {'value': {'email_from': False}}
|
||||
address = self.pool.get('res.partner.address').browse(cr, uid, add)
|
||||
return {'value': {'email_from': address.email, 'partner_phone': address.phone, 'partner_mobile': address.mobile}}
|
||||
|
||||
|
||||
def case_open(self, cr, uid, ids, *args):
|
||||
"""
|
||||
Opens Claim
|
||||
"""
|
||||
for l in self.browse(cr, uid, ids):
|
||||
# When coming from draft override date and stage otherwise just set state
|
||||
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)
|
||||
res = super(crm_claim, self).case_open(cr, uid, ids, *args)
|
||||
claims = self.browse(cr, uid, ids)
|
||||
|
||||
for i in xrange(0, len(ids)):
|
||||
if not claims[i].stage_id :
|
||||
stage_id = self._find_first_stage(cr, uid, 'claim', claims[i].section_id.id or False)
|
||||
self.write(cr, uid, [ids[i]], {'stage_id' : stage_id})
|
||||
|
||||
return res
|
||||
|
||||
def message_new(self, cr, uid, msg, context=None):
|
||||
"""
|
||||
Automatically calls when new email message arrives
|
||||
|
||||
@param self: The object pointer
|
||||
@param cr: the current row, from the database cursor,
|
||||
@param uid: the current user’s ID for security checks
|
||||
""" Automatically calls when new email message arrives
|
||||
"""
|
||||
mailgate_pool = self.pool.get('email.server.tools')
|
||||
|
||||
|
@ -217,9 +176,6 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
|
||||
def message_update(self, cr, uid, ids, vals={}, msg="", default_act='pending', 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 ids: List of update mail’s IDs
|
||||
"""
|
||||
if isinstance(ids, (str, int, long)):
|
||||
|
@ -253,41 +209,18 @@ class crm_claim(crm.crm_case, osv.osv):
|
|||
return res
|
||||
|
||||
def msg_send(self, cr, uid, id, *args, **argv):
|
||||
|
||||
""" Send The Message
|
||||
@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 email’s IDs
|
||||
@param *args: Return Tuple Value
|
||||
@param **args: Return Dictionary of Keyword Value
|
||||
@param ids: List of email’s IDs
|
||||
"""
|
||||
return True
|
||||
|
||||
crm_claim()
|
||||
|
||||
class res_partner(osv.osv):
|
||||
|
||||
_inherit = 'res.partner'
|
||||
_columns = {
|
||||
'claims_ids': fields.one2many('crm.claim', 'partner_id', 'Claims'),
|
||||
}
|
||||
res_partner()
|
||||
|
||||
class crm_stage_claim(osv.osv):
|
||||
|
||||
def _get_type_value(self, cr, user, context):
|
||||
list = super(crm_stage_claim, self)._get_type_value(cr, user, context)
|
||||
list.append(('claim','Claim'))
|
||||
return list
|
||||
|
||||
_inherit = "crm.case.stage"
|
||||
_columns = {
|
||||
'type': fields.selection(_get_type_value, 'Type'),
|
||||
}
|
||||
|
||||
|
||||
crm_stage_claim()
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -44,25 +44,20 @@
|
|||
|
||||
<record model="crm.case.stage" id="stage_claim1">
|
||||
<field name="name">Accepted as Claim</field>
|
||||
<field name="sequence">1</field>
|
||||
<field name="type">claim</field>
|
||||
<field name="sequence">26</field>
|
||||
</record>
|
||||
<record model="crm.case.stage" id="stage_claim5">
|
||||
<field name="name">Actions Defined</field>
|
||||
<field name="sequence">2</field>
|
||||
<field name="type">claim</field>
|
||||
<field name="sequence">27</field>
|
||||
</record>
|
||||
<record model="crm.case.stage" id="stage_claim2">
|
||||
<field name="name">Actions Done</field>
|
||||
<field name="sequence">10</field>
|
||||
<field name="type">claim</field>
|
||||
<field name="sequence">28</field>
|
||||
</record>
|
||||
<record model="crm.case.stage" id="stage_claim3">
|
||||
<field name="name">Won't fix</field>
|
||||
<field name="sequence">0</field>
|
||||
<field name="type">claim</field>
|
||||
<field name="sequence">29</field>
|
||||
</record>
|
||||
|
||||
|
||||
<record model="crm.case.section" id="crm.section_sales_department">
|
||||
<field name="name">Sales Department</field>
|
||||
|
|
|
@ -21,23 +21,6 @@
|
|||
<menuitem action="crm_claim_categ_action" name="Categories"
|
||||
id="menu_crm_case_claim-act" parent="menu_config_claim" />
|
||||
|
||||
<!-- Claim Stage Search view -->
|
||||
|
||||
<record id="claim_stage_search" model="ir.ui.view">
|
||||
<field name="name">Claim Stage - Search</field>
|
||||
<field name="model">crm.case.stage</field>
|
||||
<field name="type">search</field>
|
||||
<field name="inherit_id" ref="crm.crm_lead_stage_search"/>
|
||||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<xpath expr="//field[@name='name']" position="before">
|
||||
<filter icon="terp-personal-" name="claim"
|
||||
string="Claim" domain="[('type', '=', 'claim')]" context="{'type' : 'claim'}"/>
|
||||
</xpath>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Claim Stages -->
|
||||
|
||||
<record id="crm_claim_stage_act" model="ir.actions.act_window">
|
||||
|
@ -45,14 +28,10 @@
|
|||
<field name="res_model">crm.case.stage</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_id" ref="crm.crm_case_stage_tree"/>
|
||||
<field name="search_view_id" ref="claim_stage_search"/>
|
||||
<field name="context">{'search_default_claim':1}</field>
|
||||
<field name="help">You can create claim stages to categorize the status of every claim entered in the system. The stages define all the steps required for the resolution of a claim.</field>
|
||||
</record>
|
||||
|
||||
<menuitem action="crm_claim_stage_act" name="Stages"
|
||||
id="menu_crm_claim_stage_act" parent="menu_config_claim" />
|
||||
|
||||
<!-- Claims -->
|
||||
|
||||
<record model="ir.ui.view" id="crm_case_claims_tree_view">
|
||||
|
@ -101,9 +80,9 @@
|
|||
<field name="section_id" widget="selection" />
|
||||
|
||||
<group colspan="2" col="4">
|
||||
<field name="stage_id" domain="[('type','=','claim')]"/>
|
||||
<field name="stage_id" domain="[('section_ids','=',section_id)]"/>
|
||||
<button name="stage_previous" string="" type="object" icon="gtk-go-back" />
|
||||
<button icon="gtk-go-forward" string="" name="stage_next" type="object"/>
|
||||
<button name="stage_next" string="" type="object" icon="gtk-go-forward" />
|
||||
</group>
|
||||
<newline />
|
||||
<field name="priority"/>
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: crm_claim
|
||||
|
|
|
@ -62,7 +62,7 @@ class crm_claim_report(osv.osv):
|
|||
'create_date': fields.datetime('Create Date', readonly=True, select=True),
|
||||
'day': fields.char('Day', size=128, readonly=True),
|
||||
'delay_close': fields.float('Delay to close', digits=(16,2),readonly=True, group_operator="avg",help="Number of Days to close the case"),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', readonly=True, domain="[('type','=','claim')]"),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', readonly=True,domain="[('section_ids','=',section_id)]"),
|
||||
'categ_id': fields.many2one('crm.case.categ', 'Category',\
|
||||
domain="[('section_id','=',section_id),\
|
||||
('object_id.model', '=', 'crm.claim')]", readonly=True),
|
||||
|
@ -107,7 +107,7 @@ class crm_claim_report(osv.osv):
|
|||
date_trunc('day',c.create_date) as create_date,
|
||||
avg(extract('epoch' from (c.date_closed-c.create_date)))/(3600*24) as delay_close,
|
||||
(SELECT count(id) FROM mailgate_message WHERE model='crm.claim' AND res_id=c.id AND history=True) AS email,
|
||||
(SELECT avg(probability) FROM crm_case_stage WHERE type='claim' AND id=c.stage_id) AS probability,
|
||||
(SELECT avg(probability) FROM crm_case_stage WHERE id=c.stage_id) AS probability,
|
||||
extract('epoch' from (c.date_deadline - c.date_closed))/(3600*24) as delay_expected
|
||||
from
|
||||
crm_claim c
|
||||
|
|
|
@ -110,7 +110,7 @@
|
|||
<separator orientation="vertical"/>
|
||||
<field name="partner_id"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="stage_id" widget="selection" domain="[('type', '=', 'claim')]"/>
|
||||
<field name="stage_id" widget="selection" domain="[('section_ids', '=', 'section_id')]"/>
|
||||
<field name="categ_id" widget="selection" domain="[('object_id.model', '=', 'crm.claim')]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="priority" />
|
||||
|
|
|
@ -61,7 +61,7 @@ class crm_fundraising(crm.crm_case, osv.osv):
|
|||
'partner_name2': fields.char('Employee Email', size=64),
|
||||
'partner_phone': fields.char('Phone', size=32),
|
||||
'partner_mobile': fields.char('Mobile', size=32),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('type', '=', 'fundraising')]"),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('section_ids', '=', section_id)]"),
|
||||
'type_id': fields.many2one('crm.case.resource.type', 'Campaign', \
|
||||
domain="[('section_id','=',section_id)]"),
|
||||
'duration': fields.float('Duration'),
|
||||
|
@ -95,18 +95,3 @@ class crm_fundraising(crm.crm_case, osv.osv):
|
|||
|
||||
crm_fundraising()
|
||||
|
||||
|
||||
class crm_stage_fundraising(osv.osv):
|
||||
|
||||
def _get_type_value(self, cr, user, context):
|
||||
list = super(crm_stage_fundraising, self)._get_type_value(cr, user, context)
|
||||
list.append(('fundraising','Fundraising'))
|
||||
return list
|
||||
|
||||
_inherit = "crm.case.stage"
|
||||
_columns = {
|
||||
'type': fields.selection(_get_type_value, 'Type'),
|
||||
}
|
||||
|
||||
|
||||
crm_stage_fundraising()
|
||||
|
|
|
@ -6,24 +6,6 @@
|
|||
groups="base.group_extended"
|
||||
parent="base.menu_base_config" sequence="8" />
|
||||
|
||||
<!-- Fund Stage Search view -->
|
||||
|
||||
<record id="fund_stage_search" model="ir.ui.view">
|
||||
<field name="name">Fund Stage - Search</field>
|
||||
<field name="model">crm.case.stage</field>
|
||||
<field name="type">search</field>
|
||||
<field name="inherit_id" ref="crm.crm_lead_stage_search"/>
|
||||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<xpath expr="//field[@name='name']" position="before">
|
||||
<filter icon="terp-dolar" name="fundraising"
|
||||
string="Fundraising" domain="[('type', '=', 'fundraising')]" context="{'type' : 'fundraising'}"/>
|
||||
</xpath>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Fund Raising Categories Form View -->
|
||||
|
||||
<record id="crm_fund_categ_action" model="ir.actions.act_window">
|
||||
|
@ -33,7 +15,6 @@
|
|||
<field name="view_id" ref="crm.crm_case_categ_tree-view"/>
|
||||
<field name="domain">[('object_id.model', '=', 'crm.fundraising')]</field>
|
||||
<field name="context">{'object_id':'crm.fundraising'}</field>
|
||||
<field name="search_view_id" ref="fund_stage_search"/>
|
||||
<field name="help">Manage and define the fund raising categories you want to be maintained in the system.</field>
|
||||
</record>
|
||||
|
||||
|
@ -52,13 +33,6 @@
|
|||
<field name="help">Create and manage fund raising activity categories you want to be maintained in the system.</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
<menuitem action="crm_fundraising_stage_act"
|
||||
groups="base.group_extended" name="Stages"
|
||||
id="menu_crm_fundraising_stage_act"
|
||||
parent="menu_config_fundrising" />
|
||||
|
||||
<!-- Fund Raising Tree View -->
|
||||
|
||||
<record model="ir.ui.view" id="crm_case_tree_view_fund">
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
<filter string="Referred Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_assigned_id'}"/>
|
||||
</filter>
|
||||
|
||||
<field name="categ_id" position="after">
|
||||
<field name="section_id" position="after">
|
||||
<separator orientation="vertical"/>
|
||||
<field name="partner_assigned_id"/>
|
||||
</field>
|
||||
|
|
|
@ -63,7 +63,7 @@ class crm_lead_report_assign(osv.osv):
|
|||
'probable_revenue': fields.float('Probable Revenue', digits=(16,2),readonly=True),
|
||||
'categ_id': fields.many2one('crm.case.categ', 'Category',\
|
||||
domain="[('section_id','=',section_id)]" , readonly=True),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('type', '=', 'lead')]"),
|
||||
'stage_id': fields.many2one ('crm.case.stage', 'Stage', domain="[('section_ids', '=', section_id)]"),
|
||||
'partner_id': fields.many2one('res.partner', 'Customer' , readonly=True),
|
||||
'opening_date': fields.date('Opening Date', readonly=True),
|
||||
'creation_date': fields.date('Creation Date', readonly=True),
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<group expand="0" string="Extended Filters..." groups="base.group_extended">
|
||||
<field name="partner_id"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="stage_id" widget="selection" domain="[('type', '=', 'opportunity')]" />
|
||||
<field name="stage_id" widget="selection" domain="[('section_ids', '=', 'section_id')]"/>
|
||||
<field name="categ_id" widget="selection" domain="[('object_id.model', '=', 'crm.lead')]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
Now I click on Forward button.
|
||||
-
|
||||
!python {model: crm.lead.forward.to.partner}: |
|
||||
import tools
|
||||
from tools import config
|
||||
vals = {
|
||||
'name': 'email',
|
||||
'email_to': 'info@axelor.com',
|
||||
|
@ -69,6 +69,7 @@
|
|||
'state': 'draft',
|
||||
}
|
||||
ids = self.create(cr, uid, vals, context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'})
|
||||
assert tools.config.get('smtp_user', False), 'SMTP not configured !'
|
||||
host = config.get('smtp_user', '127.0.0.1')
|
||||
assert config.get(host, True), 'SMTP not configured !'
|
||||
self.action_forward(cr, uid, [ids], context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'})
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,74 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:35+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: field:decimal.precision,digits:0
|
||||
msgid "Digits"
|
||||
msgstr "Digits"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: view:decimal.precision:0
|
||||
msgid "Decimal Precision"
|
||||
msgstr "Decimal Precision"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: model:ir.actions.act_window,name:decimal_precision.action_decimal_precision_form
|
||||
#: model:ir.ui.menu,name:decimal_precision.menu_decimal_precision_form
|
||||
msgid "Decimal Accuracy Definitions"
|
||||
msgstr ""
|
||||
|
||||
#. module: decimal_precision
|
||||
#: model:ir.module.module,description:decimal_precision.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
"This module allows to configure the price accuracy you need for different "
|
||||
"kind\n"
|
||||
"of usage: accounting, sales, purchases, ...\n"
|
||||
"\n"
|
||||
"The decimal precision is configured per company.\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"This module allows to configure the price accuracy required for different "
|
||||
"kind\n"
|
||||
"of usage: accounting, sales, purchases, ...\n"
|
||||
"\n"
|
||||
"The decimal precision is configured per company.\n"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: field:decimal.precision,name:0
|
||||
msgid "Usage"
|
||||
msgstr "Usage"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: sql_constraint:decimal.precision:0
|
||||
msgid "Only one value can be defined for each given usage!"
|
||||
msgstr "Only one value can be defined for each given usage!"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: model:ir.module.module,shortdesc:decimal_precision.module_meta_information
|
||||
msgid "Decimal Precision Configuration"
|
||||
msgstr "Decimal Precision Configuration"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: model:ir.model,name:decimal_precision.model_decimal_precision
|
||||
msgid "decimal.precision"
|
||||
msgstr "decimal.precision"
|
||||
|
||||
#~ msgid "Decimal Accuracy"
|
||||
#~ msgstr "Decimal Accuracy"
|
|
@ -0,0 +1,147 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:39+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.model,name:document_ftp.model_document_ftp_configuration
|
||||
msgid "Auto Directory Configuration"
|
||||
msgstr "Auto Directory Configuration"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.configuration:0
|
||||
msgid ""
|
||||
"Indicate the network address on which your OpenERP server should be "
|
||||
"reachable for end-users. This depends on your network topology and "
|
||||
"configuration, and will only affect the links displayed to the users. The "
|
||||
"format is HOST:PORT and the default host (localhost) is only suitable for "
|
||||
"access from the server machine itself.."
|
||||
msgstr ""
|
||||
"Indicate the network address on which your OpenERP server should be "
|
||||
"reachable for end-users. This depends on your network topology and "
|
||||
"configuration, and will only affect the links displayed to the users. The "
|
||||
"format is HOST:PORT and the default host (localhost) is only suitable for "
|
||||
"access from the server machine itself.."
|
||||
|
||||
#. module: document_ftp
|
||||
#: field:document.ftp.configuration,progress:0
|
||||
msgid "Configuration Progress"
|
||||
msgstr "Configuration Progress"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.actions.url,name:document_ftp.action_document_browse
|
||||
msgid "Browse Files"
|
||||
msgstr "Browse Files"
|
||||
|
||||
#. module: document_ftp
|
||||
#: field:document.ftp.configuration,config_logo:0
|
||||
msgid "Image"
|
||||
msgstr "Image"
|
||||
|
||||
#. module: document_ftp
|
||||
#: field:document.ftp.configuration,host:0
|
||||
msgid "Address"
|
||||
msgstr "Address"
|
||||
|
||||
#. module: document_ftp
|
||||
#: field:document.ftp.browse,url:0
|
||||
msgid "FTP Server"
|
||||
msgstr "FTP Server"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.actions.act_window,name:document_ftp.action_config_auto_directory
|
||||
msgid "FTP Server Configuration"
|
||||
msgstr "FTP Server Configuration"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.module.module,description:document_ftp.module_meta_information
|
||||
msgid ""
|
||||
"This is a support FTP Interface with document management system.\n"
|
||||
" With this module you would not only be able to access documents through "
|
||||
"OpenERP\n"
|
||||
" but you would also be able to connect with them through the file system "
|
||||
"using the\n"
|
||||
" FTP client.\n"
|
||||
msgstr ""
|
||||
"This is a support FTP Interface with document management system.\n"
|
||||
" With this module you would not only be able to access documents through "
|
||||
"OpenERP\n"
|
||||
" but you would also be able to connect with them through the file system "
|
||||
"using the\n"
|
||||
" FTP client.\n"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.browse:0
|
||||
msgid "_Browse"
|
||||
msgstr "_Browse"
|
||||
|
||||
#. module: document_ftp
|
||||
#: help:document.ftp.configuration,host:0
|
||||
msgid ""
|
||||
"Server address or IP and port to which users should connect to for DMS access"
|
||||
msgstr ""
|
||||
"Server address or IP and port to which users should connect for DMS access"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.ui.menu,name:document_ftp.menu_document_browse
|
||||
msgid "Shared Repository (FTP)"
|
||||
msgstr "Shared Repository (FTP)"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.browse:0
|
||||
msgid "_Cancel"
|
||||
msgstr "_Cancel"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.configuration:0
|
||||
msgid "Configure FTP Server"
|
||||
msgstr "Configure FTP Server"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.module.module,shortdesc:document_ftp.module_meta_information
|
||||
msgid "Integrated FTP Server with Document Management System"
|
||||
msgstr "Integrated FTP Server with Document Management System"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.configuration:0
|
||||
msgid "title"
|
||||
msgstr "title"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.model,name:document_ftp.model_document_ftp_browse
|
||||
msgid "Document FTP Browse"
|
||||
msgstr "Document FTP Browse"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.configuration:0
|
||||
msgid "Knowledge Application Configuration"
|
||||
msgstr "Knowledge Application Configuration"
|
||||
|
||||
#. module: document_ftp
|
||||
#: model:ir.actions.act_window,name:document_ftp.action_ftp_browse
|
||||
msgid "Document Browse"
|
||||
msgstr "Document Browse"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.browse:0
|
||||
msgid "Browse Document"
|
||||
msgstr "Browse Document"
|
||||
|
||||
#. module: document_ftp
|
||||
#: view:document.ftp.configuration:0
|
||||
msgid "res_config_contents"
|
||||
msgstr "res_config_contents"
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: document_webdav
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: email_template
|
||||
|
|
|
@ -0,0 +1,129 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:47+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: event_project
|
||||
#: model:ir.model,name:event_project.model_event_project
|
||||
msgid "Event Project"
|
||||
msgstr "Event Project"
|
||||
|
||||
#. module: event_project
|
||||
#: field:event.project,date:0
|
||||
msgid "Date End"
|
||||
msgstr "Date End"
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.project:0
|
||||
msgid "Ok"
|
||||
msgstr "Ok"
|
||||
|
||||
#. module: event_project
|
||||
#: model:ir.module.module,description:event_project.module_meta_information
|
||||
msgid ""
|
||||
"Organization and management of events.\n"
|
||||
"\n"
|
||||
" This module allows you to create retro planning for managing your "
|
||||
"events.\n"
|
||||
msgstr ""
|
||||
"Organisation and management of events.\n"
|
||||
"\n"
|
||||
" This module allows you to create retro planning for managing your "
|
||||
"events.\n"
|
||||
|
||||
#. module: event_project
|
||||
#: help:event.project,project_id:0
|
||||
msgid ""
|
||||
"This is Template Project. Project of event is a duplicate of this Template. "
|
||||
"After click on 'Create Retro-planning', New Project will be duplicated from "
|
||||
"this template project."
|
||||
msgstr ""
|
||||
"This is Template Project. Project of event is a duplicate of this Template. "
|
||||
"After click on 'Create Retro-planning', New Project will be duplicated from "
|
||||
"this template project."
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.project:0
|
||||
#: model:ir.actions.act_window,name:event_project.action_event_project
|
||||
msgid "Retro-Planning"
|
||||
msgstr "Retro-Planning"
|
||||
|
||||
#. module: event_project
|
||||
#: constraint:event.event:0
|
||||
msgid "Error ! Closing Date cannot be set before Beginning Date."
|
||||
msgstr "Error ! Closing Date cannot be before Beginning Date."
|
||||
|
||||
#. module: event_project
|
||||
#: field:event.event,project_id:0
|
||||
msgid "Project"
|
||||
msgstr "Project"
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.event:0
|
||||
#: model:ir.actions.act_window,name:event_project.act_event_task
|
||||
msgid "Tasks"
|
||||
msgstr "Tasks"
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.event:0
|
||||
msgid "All tasks"
|
||||
msgstr "All tasks"
|
||||
|
||||
#. module: event_project
|
||||
#: model:ir.module.module,shortdesc:event_project.module_meta_information
|
||||
msgid "Event Project - Create Retro-Planning to manage your Events"
|
||||
msgstr "Event Project - Create Retro-Planning to manage your Events"
|
||||
|
||||
#. module: event_project
|
||||
#: field:event.project,project_id:0
|
||||
msgid "Template of Project"
|
||||
msgstr "Template of Project"
|
||||
|
||||
#. module: event_project
|
||||
#: constraint:event.event:0
|
||||
msgid "Error ! You cannot create recursive event."
|
||||
msgstr "Error ! You cannot create recursive event."
|
||||
|
||||
#. module: event_project
|
||||
#: field:event.event,task_ids:0
|
||||
msgid "Project tasks"
|
||||
msgstr "Project tasks"
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.project:0
|
||||
msgid "Close"
|
||||
msgstr "Close"
|
||||
|
||||
#. module: event_project
|
||||
#: field:event.project,date_start:0
|
||||
msgid "Date Start"
|
||||
msgstr "Date Start"
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.event:0
|
||||
msgid "Create Retro-Planning"
|
||||
msgstr "Create Retro-Planning"
|
||||
|
||||
#. module: event_project
|
||||
#: model:ir.model,name:event_project.model_event_event
|
||||
msgid "Event"
|
||||
msgstr "Event"
|
||||
|
||||
#. module: event_project
|
||||
#: view:event.event:0
|
||||
msgid "Tasks management"
|
||||
msgstr "Tasks management"
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2010-11-27 17:59+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"PO-Revision-Date: 2011-08-23 14:49+0000\n"
|
||||
"Last-Translator: Tryfon Farmakakis <farmakakistryfon@gmail.com>\n"
|
||||
"Language-Team: Greek <el@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-04-29 05:45+0000\n"
|
||||
"X-Generator: Launchpad (build 12758)\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: fetchmail
|
||||
#: constraint:email.server:0
|
||||
|
@ -53,7 +53,7 @@ msgstr ""
|
|||
#. module: fetchmail
|
||||
#: selection:email.server,state:0
|
||||
msgid "Not Confirmed"
|
||||
msgstr ""
|
||||
msgstr "Μη Επιβεβαιωμένο"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,user:0
|
||||
|
@ -91,7 +91,7 @@ msgstr ""
|
|||
#. module: fetchmail
|
||||
#: field:email.server,attach:0
|
||||
msgid "Add Attachments ?"
|
||||
msgstr ""
|
||||
msgstr "Προσθήκη Επισυνάψεων;"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
|
@ -124,6 +124,7 @@ msgid "Password"
|
|||
msgstr ""
|
||||
|
||||
#. module: fetchmail
|
||||
#: model:ir.actions.act_window,name:fetchmail.act_server_history
|
||||
#: view:mailgate.message:0
|
||||
msgid "Emails"
|
||||
msgstr ""
|
||||
|
@ -131,7 +132,7 @@ msgstr ""
|
|||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Search Email Servers"
|
||||
msgstr ""
|
||||
msgstr "Αναζήτηση Εξυπηρτεητή Email"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
|
@ -141,7 +142,7 @@ msgstr ""
|
|||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Auto Reply?"
|
||||
msgstr ""
|
||||
msgstr "Αυτόματη Απάντηση;"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,name:0
|
||||
|
|
|
@ -0,0 +1,321 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:54+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: fetchmail
|
||||
#: constraint:email.server:0
|
||||
msgid ""
|
||||
"Warning! Record for selected Model can not be created\n"
|
||||
"Please choose valid Model"
|
||||
msgstr ""
|
||||
"Warning! Record for selected Model can not be created\n"
|
||||
"Please choose valid Model"
|
||||
|
||||
#. module: fetchmail
|
||||
#: selection:email.server,state:0
|
||||
msgid "Confirmed"
|
||||
msgstr "Confirmed"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Confirm"
|
||||
msgstr "Confirm"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Group By..."
|
||||
msgstr "Group By..."
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
#: field:email.server,state:0
|
||||
msgid "State"
|
||||
msgstr "State"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "POP"
|
||||
msgstr "POP"
|
||||
|
||||
#. module: fetchmail
|
||||
#: selection:email.server,state:0
|
||||
msgid "Not Confirmed"
|
||||
msgstr "Not Confirmed"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,user:0
|
||||
msgid "User Name"
|
||||
msgstr "User Name"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Type"
|
||||
msgstr "Type"
|
||||
|
||||
#. 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 "Fetchmail Server"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
#: field:email.server,note:0
|
||||
msgid "Description"
|
||||
msgstr "Description"
|
||||
|
||||
#. 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 ""
|
||||
"OpenObject Model. Generates a record of this model.\n"
|
||||
"Select Object with message_new attrbutes."
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,attach:0
|
||||
msgid "Add Attachments ?"
|
||||
msgstr "Add Attachments ?"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "# of emails"
|
||||
msgstr "# of emails"
|
||||
|
||||
#. 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 "User"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,date:0
|
||||
msgid "Date"
|
||||
msgstr "Date"
|
||||
|
||||
#. module: fetchmail
|
||||
#: selection:email.server,state:0
|
||||
msgid "Waiting for Verification"
|
||||
msgstr "Waiting for Verification"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,password:0
|
||||
msgid "Password"
|
||||
msgstr "Password"
|
||||
|
||||
#. module: fetchmail
|
||||
#: model:ir.actions.act_window,name:fetchmail.act_server_history
|
||||
#: view:mailgate.message:0
|
||||
msgid "Emails"
|
||||
msgstr "Emails"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Search Email Servers"
|
||||
msgstr "Search Email Servers"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Server & Login"
|
||||
msgstr "Server & Login"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Auto Reply?"
|
||||
msgstr "Auto Reply?"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,name:0
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
#. module: fetchmail
|
||||
#: model:ir.model,name:fetchmail.model_mailgate_message
|
||||
msgid "Mailgateway Message"
|
||||
msgstr "Mail gateway Message"
|
||||
|
||||
#. 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 "Set to Draft"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,message_ids:0
|
||||
#: model:ir.actions.act_window,name:fetchmail.action_view_mail_message_emails
|
||||
msgid "Messages"
|
||||
msgstr "Messages"
|
||||
|
||||
#. 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 "Server"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,active:0
|
||||
msgid "Active"
|
||||
msgstr "Active"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Process Parameter"
|
||||
msgstr "Process Parameter"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,is_ssl:0
|
||||
msgid "SSL ?"
|
||||
msgstr "SSL ?"
|
||||
|
||||
#. module: fetchmail
|
||||
#: selection:email.server,type:0
|
||||
#: selection:mailgate.message,server_type:0
|
||||
msgid "IMAP Server"
|
||||
msgstr "IMAP Server"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,object_id:0
|
||||
msgid "Model"
|
||||
msgstr "Model"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "IMAP"
|
||||
msgstr "IMAP"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
#: model:ir.model,name:fetchmail.model_email_server
|
||||
msgid "POP/IMAP Server"
|
||||
msgstr "POP/IMAP Server"
|
||||
|
||||
#. module: fetchmail
|
||||
#: constraint:email.server:0
|
||||
msgid "Warning! Can't have duplicate server configuration!"
|
||||
msgstr "Warning! Can't have duplicate server configuration!"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,type:0
|
||||
#: field:mailgate.message,server_type:0
|
||||
msgid "Server Type"
|
||||
msgstr "Server Type"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Login Information"
|
||||
msgstr "Login Information"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Server Information"
|
||||
msgstr "Server Information"
|
||||
|
||||
#. module: fetchmail
|
||||
#: help:email.server,attach:0
|
||||
msgid "Fetches mail with attachments if true."
|
||||
msgstr "Fetches mail with attachments if true."
|
||||
|
||||
#. module: fetchmail
|
||||
#: selection:email.server,type:0
|
||||
#: selection:mailgate.message,server_type:0
|
||||
msgid "POP Server"
|
||||
msgstr "POP Server"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,port:0
|
||||
msgid "Port"
|
||||
msgstr "Port"
|
||||
|
||||
#. 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 ""
|
||||
"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"
|
||||
" "
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "SSL"
|
||||
msgstr "SSL"
|
||||
|
||||
#. 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 ""
|
||||
"An Email Server Action. It will be run whenever an e-mail is fetched from "
|
||||
"server."
|
||||
|
||||
#. module: fetchmail
|
||||
#: help:email.server,priority:0
|
||||
msgid "Priority between 0 to 10, select define the order of Processing"
|
||||
msgstr "Priority between 0 to 10, select define the order of Processing"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,action_id:0
|
||||
msgid "Email Server Action"
|
||||
msgstr "Email Server Action"
|
||||
|
||||
#. module: fetchmail
|
||||
#: field:email.server,priority:0
|
||||
msgid "Server Priority"
|
||||
msgstr "Server Priority"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:mailgate.message:0
|
||||
#: field:mailgate.message,server_id:0
|
||||
msgid "Mail Server"
|
||||
msgstr "Mail Server"
|
||||
|
||||
#. module: fetchmail
|
||||
#: view:email.server:0
|
||||
msgid "Fetch Emails"
|
||||
msgstr "Fetch Emails"
|
||||
|
||||
#~ msgid "Email Servers"
|
||||
#~ msgstr "Email Servers"
|
|
@ -0,0 +1,56 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:53+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:32+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: google_map
|
||||
#: view:res.partner:0
|
||||
#: view:res.partner.address:0
|
||||
msgid "Map"
|
||||
msgstr "Map"
|
||||
|
||||
#. module: google_map
|
||||
#: view:res.partner:0
|
||||
#: view:res.partner.address:0
|
||||
msgid "Street2 : "
|
||||
msgstr "Street2 : "
|
||||
|
||||
#. module: google_map
|
||||
#: model:ir.actions.wizard,name:google_map.wizard_google_map
|
||||
msgid "Launch Google Map"
|
||||
msgstr "Launch Google Map"
|
||||
|
||||
#. module: google_map
|
||||
#: model:ir.module.module,description:google_map.module_meta_information
|
||||
msgid ""
|
||||
"The module adds google map field in partner address\n"
|
||||
"so that we can directly open google map from the\n"
|
||||
"url widget."
|
||||
msgstr ""
|
||||
"The module adds google map field in partner address\n"
|
||||
"so that we can directly open google map from the\n"
|
||||
"url widget."
|
||||
|
||||
#. module: google_map
|
||||
#: model:ir.module.module,shortdesc:google_map.module_meta_information
|
||||
msgid "Google Map"
|
||||
msgstr "Google Map"
|
||||
|
||||
#. module: google_map
|
||||
#: model:ir.model,name:google_map.model_res_partner_address
|
||||
msgid "Partner Addresses"
|
||||
msgstr "Partner Addresses"
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-04-05 22:56+0000\n"
|
||||
"Last-Translator: Rolv Råen <Unknown>\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:20+0000\n"
|
||||
"Last-Translator: Rolv Råen (adEgo) <Unknown>\n"
|
||||
"Language-Team: Norwegian Bokmal <nb@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-04-29 05:30+0000\n"
|
||||
"X-Generator: Launchpad (build 12758)\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: hr
|
||||
#: model:process.node,name:hr.process_node_openerpuser0
|
||||
|
@ -26,7 +26,7 @@ msgstr "OpenERP bruker"
|
|||
#: view:hr.job:0
|
||||
#: field:hr.job,requirements:0
|
||||
msgid "Requirements"
|
||||
msgstr ""
|
||||
msgstr "Krav"
|
||||
|
||||
#. module: hr
|
||||
#: constraint:hr.department:0
|
||||
|
@ -90,7 +90,7 @@ msgstr ""
|
|||
#. module: hr
|
||||
#: view:hr.job:0
|
||||
msgid "Jobs"
|
||||
msgstr ""
|
||||
msgstr "Jobber"
|
||||
|
||||
#. module: hr
|
||||
#: view:hr.job:0
|
||||
|
@ -118,7 +118,7 @@ msgstr ""
|
|||
#. module: hr
|
||||
#: model:ir.ui.menu,name:hr.menu_open_view_attendance_reason_config
|
||||
msgid "Holidays"
|
||||
msgstr ""
|
||||
msgstr "Ferie"
|
||||
|
||||
#. module: hr
|
||||
#: help:hr.installer,hr_holidays:0
|
||||
|
@ -184,7 +184,7 @@ msgstr ""
|
|||
#. module: hr
|
||||
#: view:hr.employee:0
|
||||
msgid "Position"
|
||||
msgstr ""
|
||||
msgstr "Stilling"
|
||||
|
||||
#. module: hr
|
||||
#: model:ir.actions.act_window,name:hr.action2
|
||||
|
@ -228,7 +228,7 @@ msgstr ""
|
|||
#. module: hr
|
||||
#: field:hr.installer,hr_evaluation:0
|
||||
msgid "Periodic Evaluations"
|
||||
msgstr ""
|
||||
msgstr "Periodisk evaluering"
|
||||
|
||||
#. module: hr
|
||||
#: field:hr.installer,hr_timesheet_sheet:0
|
||||
|
@ -248,7 +248,7 @@ msgstr "Personnummer"
|
|||
#. module: hr
|
||||
#: help:hr.job,no_of_employee:0
|
||||
msgid "Number of employee with that job."
|
||||
msgstr ""
|
||||
msgstr "Antall ansatte med denne jobben"
|
||||
|
||||
#. module: hr
|
||||
#: field:hr.employee,work_phone:0
|
||||
|
@ -321,7 +321,7 @@ msgstr ""
|
|||
#: field:hr.employee,job_id:0
|
||||
#: view:hr.job:0
|
||||
msgid "Job"
|
||||
msgstr ""
|
||||
msgstr "Jobb"
|
||||
|
||||
#. module: hr
|
||||
#: view:hr.department:0
|
||||
|
@ -398,7 +398,7 @@ msgstr "Mann"
|
|||
#. module: hr
|
||||
#: field:hr.installer,progress:0
|
||||
msgid "Configuration Progress"
|
||||
msgstr ""
|
||||
msgstr "Konfigurasjonsfremdrift"
|
||||
|
||||
#. module: hr
|
||||
#: model:ir.actions.act_window,name:hr.open_view_categ_form
|
||||
|
@ -415,7 +415,7 @@ msgstr "Ansattkategori"
|
|||
#. module: hr
|
||||
#: field:hr.installer,config_logo:0
|
||||
msgid "Image"
|
||||
msgstr ""
|
||||
msgstr "Bilde"
|
||||
|
||||
#. module: hr
|
||||
#: model:process.process,name:hr.process_process_employeecontractprocess0
|
||||
|
@ -503,7 +503,7 @@ msgstr "Status"
|
|||
#. module: hr
|
||||
#: view:hr.installer:0
|
||||
msgid "Configure"
|
||||
msgstr ""
|
||||
msgstr "Konfigurer"
|
||||
|
||||
#. module: hr
|
||||
#: model:ir.actions.act_window,name:hr.open_view_categ_tree
|
||||
|
@ -692,7 +692,7 @@ msgstr "Single"
|
|||
#. module: hr
|
||||
#: field:hr.job,name:0
|
||||
msgid "Job Name"
|
||||
msgstr ""
|
||||
msgstr "Jobbnavn"
|
||||
|
||||
#. module: hr
|
||||
#: view:hr.job:0
|
||||
|
@ -772,7 +772,7 @@ msgstr "Avdelingsnavn"
|
|||
#. module: hr
|
||||
#: help:hr.employee,ssnid:0
|
||||
msgid "Social Security Number"
|
||||
msgstr ""
|
||||
msgstr "Personnummer"
|
||||
|
||||
#. module: hr
|
||||
#: model:process.node,note:hr.process_node_openerpuser0
|
||||
|
@ -782,7 +782,7 @@ msgstr "Opprettelse av en OpenERP bruker"
|
|||
#. module: hr
|
||||
#: field:hr.department,child_ids:0
|
||||
msgid "Child Departments"
|
||||
msgstr ""
|
||||
msgstr "Underavdelinger"
|
||||
|
||||
#. module: hr
|
||||
#: model:ir.actions.act_window,name:hr.action_hr_job
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
<record id="base.group_hr_user" model="res.groups">
|
||||
<field name="name">Human Resources / HR Officer</field>
|
||||
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
|
||||
</record>
|
||||
<record id="base.group_hr_manager" model="res.groups">
|
||||
<field name="name">Human Resources / HR Manager</field>
|
||||
|
|
|
@ -0,0 +1,896 @@
|
|||
# Turkish 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:09+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Turkish <tr@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,state:0
|
||||
#: selection:hr_evaluation.evaluation,state:0
|
||||
msgid "Plan In Progress"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,wait:0
|
||||
msgid "Wait Previous Phases"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr.evaluation.report:0
|
||||
#: view:hr_evaluation.plan:0
|
||||
msgid "Group By..."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.interview,request_id:0
|
||||
#: field:hr.evaluation.report,request_id:0
|
||||
msgid "Request_id"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,progress_bar:0
|
||||
#: field:hr_evaluation.evaluation,progress:0
|
||||
msgid "Progress"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:board.board:0
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.act_hr_evaluation_tree
|
||||
msgid "My Evaluation Remaining"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Legend"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:311
|
||||
#, python-format
|
||||
msgid "You cannot start evaluation without Evaluation."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "March"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,delay_date:0
|
||||
msgid "Delay to Start"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr_evaluation.evaluation,rating:0
|
||||
msgid "Appreciation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:242
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:311
|
||||
#, python-format
|
||||
msgid "Warning !"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan:0
|
||||
#: field:hr_evaluation.plan,company_id:0
|
||||
#: field:hr_evaluation.plan.phase,company_id:0
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.act_hr_employee_2_hr__evaluation_interview
|
||||
msgid "Evaluation Interviews"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,survey_id:0
|
||||
msgid "Appraisal Form"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,day:0
|
||||
msgid "Day"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.interview,evaluation_id:0
|
||||
msgid "Evaluation Form"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_anonymous_employee:0
|
||||
msgid "Send an anonymous summary to the employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan,month_first:0
|
||||
msgid ""
|
||||
"This number of months will be used to schedule the first evaluation date of "
|
||||
"the employee when selecting an evaluation plan. "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.employee:0
|
||||
msgid "Notes"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
msgid "Interview Request"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: constraint:hr.employee:0
|
||||
msgid ""
|
||||
"Error ! You cannot select a department for which the employee is the manager."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Mail Body"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.action_evaluation_report_all
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_evaluation_report_all
|
||||
msgid "Evaluations Analysis"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,state:0
|
||||
#: selection:hr_evaluation.evaluation,state:0
|
||||
msgid "Cancelled"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_reminder
|
||||
msgid "Sends Reminders to employess to fill the evaluations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,rating:0
|
||||
#: selection:hr_evaluation.evaluation,rating:0
|
||||
msgid "Did not meet expectations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Appraisal"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "July"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan,month_next:0
|
||||
msgid "Periodicity of Evaluations (months)"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:242
|
||||
#, python-format
|
||||
msgid ""
|
||||
"You cannot change state, because some appraisal in waiting answer or draft "
|
||||
"state"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.evaluation,date_close:0
|
||||
msgid "Ending Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan,month_first:0
|
||||
msgid "First Evaluation in (months)"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:81
|
||||
#, python-format
|
||||
msgid ""
|
||||
"\n"
|
||||
"Date: %(date)s\n"
|
||||
"\n"
|
||||
"Dear %(employee_name)s,\n"
|
||||
"\n"
|
||||
"I am doing an evaluation regarding %(eval_name)s.\n"
|
||||
"\n"
|
||||
"Kindly submit your response.\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"Thanks,\n"
|
||||
"--\n"
|
||||
"%(user_signature)s\n"
|
||||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Send to Employees"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,deadline:0
|
||||
msgid "Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
msgid " Month "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan,month_next:0
|
||||
msgid ""
|
||||
"The number of month that depicts the delay between each evaluation of this "
|
||||
"plan (after the first one)."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr_config
|
||||
msgid "Periodic Evaluations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.reminder:0
|
||||
msgid "Send evaluation reminder"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.module.module,description:hr_evaluation.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
" Ability to create employees evaluation.\n"
|
||||
" An evaluation can be created by employee for subordinates,\n"
|
||||
" juniors as well as his manager.The evaluation is done under a "
|
||||
"plan\n"
|
||||
" in which various surveys can be created and it can be defined "
|
||||
"which\n"
|
||||
" level of employee hierarchy fills what and final review and "
|
||||
"evaluation\n"
|
||||
" is done by the manager.Every evaluation filled by the employees "
|
||||
"can be viewed\n"
|
||||
" in the form of.Implements a dashboard for My Current Evaluations\n"
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "(date)s: Current Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:80
|
||||
#, python-format
|
||||
msgid "Regarding "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,state:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
#: field:hr_evaluation.evaluation,state:0
|
||||
msgid "State"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_plan_phase
|
||||
msgid "Evaluation Plan Phase"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,employee_id:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
#: field:hr_evaluation.evaluation,employee_id:0
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_employee
|
||||
msgid "Employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,overpass_delay:0
|
||||
msgid "Overpassed Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,mail_body:0
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,rating:0
|
||||
#: selection:hr_evaluation.evaluation,rating:0
|
||||
msgid "Exceeds expectations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,mail_feature:0
|
||||
msgid ""
|
||||
"Check this box if you want to send mail to employees coming under this phase"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_answer_manager:0
|
||||
msgid "Send all answers to the manager"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
msgid " Month-1 "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Public Notes"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.evaluation,date:0
|
||||
msgid "Evaluation Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Print Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,closed:0
|
||||
msgid "closed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,rating:0
|
||||
#: selection:hr_evaluation.evaluation,rating:0
|
||||
msgid "Meet expectations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,nbr:0
|
||||
msgid "# of Requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.open_view_hr_evaluation_tree
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_hr_evaluation_tree
|
||||
msgid "Evaluations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,help:hr_evaluation.open_view_hr_evaluation_tree
|
||||
msgid ""
|
||||
"Each employee may be assigned an evaluation plan. Such a plan defines the "
|
||||
"frequency and the way you manage your periodic personnel evaluation. You "
|
||||
"will be able to define steps and attach interviews to each step. OpenERP "
|
||||
"manages all kind of evaluations: bottom-up, top-down, self-evaluation and "
|
||||
"final evaluation by the manager."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Action to Perform"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.evaluation,note_action:0
|
||||
msgid "Action Plan"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "(eval_name)s:Evaluation Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Ending Summary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,rating:0
|
||||
#: selection:hr_evaluation.evaluation,rating:0
|
||||
msgid "Significantly exceeds expectations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "In progress"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,send_answer_employee:0
|
||||
#: field:hr_evaluation.plan.phase,send_answer_manager:0
|
||||
msgid "All Answers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "September"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "December"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,month:0
|
||||
msgid "Month"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.module.module,shortdesc:hr_evaluation.module_meta_information
|
||||
msgid "Human Resources Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Group by..."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Mail Settings"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.interview,user_to_review_id:0
|
||||
msgid "Employee to Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Interview Question"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:survey.request,is_evaluation:0
|
||||
msgid "Is Evaluation?"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_survey_request
|
||||
msgid "survey.request"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,wait:0
|
||||
msgid ""
|
||||
"Check this box if you want to wait that all preceding phases are finished "
|
||||
"before launching this phase."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Evaluation Data"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.evaluation,note_action:0
|
||||
msgid ""
|
||||
"If the evaluation does not meet the expectations, you can proposean action "
|
||||
"plan"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,state:0
|
||||
#: selection:hr_evaluation.evaluation,state:0
|
||||
msgid "Draft"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.evaluation,note_summary:0
|
||||
msgid "Evaluation Summary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,send_anonymous_employee:0
|
||||
#: field:hr_evaluation.plan.phase,send_anonymous_manager:0
|
||||
msgid "Anonymous Summary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.employee:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "7 Days"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
msgid " Year "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "August"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Start Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
msgid "To Do"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "June"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,rating:0
|
||||
#: selection:hr_evaluation.evaluation,rating:0
|
||||
msgid "Significantly bellow expectations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid " (employee_name)s: Partner name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,plan_id:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
#: field:hr_evaluation.evaluation,plan_id:0
|
||||
msgid "Plan"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan,active:0
|
||||
msgid "Active"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "November"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
msgid "Extended Filters..."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: constraint:hr.employee:0
|
||||
msgid "Error ! You cannot create recursive Hierarchy of Employees."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "October"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "January"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.reminder:0
|
||||
msgid "Send Mail"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_anonymous_manager:0
|
||||
msgid "Send an anonymous summary to the manager"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Interview Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.open_view_hr_evaluation_plan_tree
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_hr_evaluation_plan_tree
|
||||
msgid "Evaluation Plans"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
msgid "Survey"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.evaluation,rating:0
|
||||
msgid "This is the appreciation on that summarize the evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,action:0
|
||||
msgid "Action"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: selection:hr.evaluation.report,state:0
|
||||
msgid "Final Validation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr_evaluation.evaluation,state:0
|
||||
msgid "Waiting Appreciation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,mail_feature:0
|
||||
msgid "Send mail for this phase"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,rating:0
|
||||
msgid "Overall Rating"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Late"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Interviewer"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_report
|
||||
msgid "Evaluations Statistics"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
msgid "Deadline Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr_evaluation.plan.phase,action:0
|
||||
msgid "Top-Down Appraisal Requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "General"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_answer_employee:0
|
||||
msgid "Send all answers to the employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.employee,evaluation_date:0
|
||||
msgid "Next Evaluation Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: selection:hr.evaluation.report,state:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
#: selection:hr_evaluation.evaluation,state:0
|
||||
msgid "Done"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Evaluation Plan Phases"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.reminder:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
msgid "In Progress"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,help:hr_evaluation.action_hr_evaluation_interview_tree
|
||||
msgid ""
|
||||
"Interview Requests are generated automatically by OpenERP according to an "
|
||||
"employee's evaluation plan. Each user receives automatic emails and requests "
|
||||
"to evaluate their colleagues periodically."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan:0
|
||||
#: field:hr_evaluation.plan,phase_ids:0
|
||||
msgid "Evaluation Phases"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Current"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_interview
|
||||
msgid "Evaluation Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.reminder,evaluation_id:0
|
||||
msgid "Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.reminder:0
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_send_mail
|
||||
msgid "Evaluation Reminders"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr_evaluation.plan.phase,action:0
|
||||
msgid "Self Appraisal Requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,email_subject:0
|
||||
msgid "char"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.evaluation,survey_request_ids:0
|
||||
msgid "Appraisal Forms"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "May"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Internal Notes"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Validate Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr_evaluation.plan.phase,action:0
|
||||
msgid "Final Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,name:0
|
||||
msgid "Phase"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr_evaluation.plan.phase,action:0
|
||||
msgid "Bottom-Up Appraisal Requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Search Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.employee,evaluation_plan_id:0
|
||||
#: view:hr_evaluation.plan:0
|
||||
#: field:hr_evaluation.plan,name:0
|
||||
#: field:hr_evaluation.plan.phase,plan_id:0
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_plan
|
||||
msgid "Evaluation Plan"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "February"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "Send to Managers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.action_hr_evaluation_send_mail
|
||||
msgid "Evaluation Send Mail"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
msgid "April"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_evaluation
|
||||
msgid "Employee Evaluation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan:0
|
||||
msgid "Search Evaluation Plan"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan:0
|
||||
msgid "(months)"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan.phase,sequence:0
|
||||
msgid "Sequence"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
msgid "(user_signature)s: User name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.action_hr_evaluation_interview_tree
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_open_hr_evaluation_interview_requests
|
||||
msgid "Interview Requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.report,create_date:0
|
||||
msgid "Create Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
#: field:hr.evaluation.report,year:0
|
||||
msgid "Year"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr.employee,evaluation_date:0
|
||||
msgid ""
|
||||
"The date of the next evaluation is computed by the evaluation plan's dates "
|
||||
"(first evaluation + periodicity)."
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: hr_payroll_account
|
||||
|
|
|
@ -0,0 +1,331 @@
|
|||
# Turkish 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:18+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Turkish <tr@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip,move_line_ids:0
|
||||
msgid "Accounting Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payroll.register,bank_journal_id:0
|
||||
#: field:hr.payslip,bank_journal_id:0
|
||||
msgid "Bank Journal"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_contibution_register_line
|
||||
msgid "Contribution Register Line"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_contibution_register
|
||||
msgid "Contribution Register"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: help:hr.employee,analytic_account:0
|
||||
msgid "Analytic Account for Salary Analysis"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payroll.register,journal_id:0
|
||||
#: field:hr.payslip,journal_id:0
|
||||
msgid "Expense Journal"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.contibution.register.line,period_id:0
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_employee
|
||||
msgid "Employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
msgid "Other Informations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.employee,salary_account:0
|
||||
msgid "Salary Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: help:hr.employee,property_bank_account:0
|
||||
msgid "Select Bank Account from where Salary Expense will be Paid"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_payroll_register
|
||||
msgid "Payroll Register"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_payslip_account_move
|
||||
msgid "Account Move Link to Pay Slip"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
msgid "Description"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:331
|
||||
#, python-format
|
||||
msgid "Please Confirm all Expense Invoice appear for Reimbursement"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:432
|
||||
#, python-format
|
||||
msgid "Please defined partner in bank account for %s !"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
msgid "Accounting Informations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: help:hr.employee,salary_account:0
|
||||
msgid "Expense account when Salary Expense will be recorded"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:429
|
||||
#, python-format
|
||||
msgid "Please defined bank account for %s !"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.module.module,description:hr_payroll_account.module_meta_information
|
||||
msgid ""
|
||||
"Generic Payroll system Integrated with Accountings\n"
|
||||
" * Expanse Encoding\n"
|
||||
" * Payment Encoding\n"
|
||||
" * Comany Contribution Managemet\n"
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.module.module,shortdesc:hr_payroll_account.module_meta_information
|
||||
msgid "Human Resource Payroll Accounting"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
#: field:hr.payslip,move_payment_ids:0
|
||||
msgid "Payment Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:270
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:445
|
||||
#, python-format
|
||||
msgid "Please define fiscal year for perticular contract"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip.account.move,slip_id:0
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_payslip
|
||||
msgid "Pay Slip"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: constraint:hr.employee:0
|
||||
msgid "Error ! You cannot create recursive Hierarchy of Employees."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
msgid "Account Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.contibution.register,account_id:0
|
||||
#: field:hr.holidays.status,account_id:0
|
||||
#: field:hr.payroll.advice,account_id:0
|
||||
msgid "Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.employee,property_bank_account:0
|
||||
msgid "Bank Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip.account.move,name:0
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_payslip_line
|
||||
msgid "Payslip Line"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
msgid "Accounting Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: constraint:hr.employee:0
|
||||
msgid ""
|
||||
"Error ! You cannot select a department for which the employee is the manager."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: help:hr.payroll.register,period_id:0
|
||||
#: help:hr.payslip,period_id:0
|
||||
msgid "Keep empty to use the period of the validation(Payslip) date."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_payroll_advice
|
||||
msgid "Bank Advice Note"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip.account.move,move_id:0
|
||||
msgid "Expense Entries"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip,move_ids:0
|
||||
msgid "Accounting vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:270
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:277
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:280
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:297
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:331
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:445
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:452
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:455
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:469
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:492
|
||||
#, python-format
|
||||
msgid "Warning !"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.employee,employee_account:0
|
||||
msgid "Employee Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip.line,account_id:0
|
||||
msgid "General Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.contibution.register,yearly_total_by_emp:0
|
||||
msgid "Total By Employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payslip.account.move,sequence:0
|
||||
msgid "Sequence"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.payroll.register,period_id:0
|
||||
#: field:hr.payslip,period_id:0
|
||||
msgid "Force Period"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_holidays_status
|
||||
msgid "Leave Type"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:277
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:452
|
||||
#, python-format
|
||||
msgid "Fiscal Year is not defined for slip date %s"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.contibution.register,analytic_account_id:0
|
||||
#: field:hr.employee,analytic_account:0
|
||||
#: field:hr.holidays.status,analytic_account_id:0
|
||||
#: field:hr.payroll.structure,account_id:0
|
||||
#: field:hr.payslip.line,analytic_account_id:0
|
||||
msgid "Analytic Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: help:hr.employee,employee_account:0
|
||||
msgid "Employee Payable Account"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: field:hr.contibution.register,yearly_total_by_comp:0
|
||||
msgid "Total By Company"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: model:ir.model,name:hr_payroll_account.model_hr_payroll_structure
|
||||
msgid "Salary Structure"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:557
|
||||
#, python-format
|
||||
msgid "Please Configure Partners Receivable Account!!"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.contibution.register:0
|
||||
msgid "Year"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:280
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:455
|
||||
#, python-format
|
||||
msgid "Period is not defined for slip date %s"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: view:hr.payslip:0
|
||||
msgid "Accounting Details"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:540
|
||||
#, python-format
|
||||
msgid "Please Configure Partners Payable Account!!"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_payroll_account
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:429
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:432
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:533
|
||||
#: code:addons/hr_payroll_account/hr_payroll_account.py:550
|
||||
#, python-format
|
||||
msgid "Integrity Error !"
|
||||
msgstr ""
|
|
@ -0,0 +1,957 @@
|
|||
# Turkish 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:19+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Turkish <tr@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.applicant,active:0
|
||||
msgid ""
|
||||
"If the active field is set to false, it will allow you to hide the case "
|
||||
"without removing it."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.stage:0
|
||||
#: field:hr.recruitment.stage,requirements:0
|
||||
msgid "Requirements"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,delay_open:0
|
||||
msgid "Avg. Delay to Open"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,nbr:0
|
||||
msgid "# of Cases"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Group By..."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,department_id:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,department_id:0
|
||||
#: field:hr.recruitment.stage,department_id:0
|
||||
msgid "Department"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,date_action:0
|
||||
msgid "Next Action Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Jobs"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,company_id:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,company_id:0
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,email_cc:0
|
||||
msgid "Watchers Emails"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.partner.create,close:0
|
||||
msgid "Close job request"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,day_open:0
|
||||
msgid "Days to Open"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.job2phonecall,note:0
|
||||
msgid "Goals"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,partner_address_id:0
|
||||
msgid "Partner Contact Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: view:hr.recruitment.partner.create:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.action_hr_recruitment_partner_create
|
||||
msgid "Create Partner"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,day:0
|
||||
msgid "Day"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Contract Data"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Add Internal Note"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,partner_mobile:0
|
||||
msgid "Mobile"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Notes"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,message_ids:0
|
||||
msgid "Messages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Next Actions"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:crm.case.categ,name:hr_recruitment.categ_job2
|
||||
msgid "Junior Developer"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,job_id:0
|
||||
#: field:hr.recruitment.report,job_id:0
|
||||
msgid "Applied Job"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.degree,name:hr_recruitment.degree_graduate
|
||||
msgid "Graduate"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job1
|
||||
msgid "Initial Jobs Demand"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,partner_address_id:0
|
||||
msgid "Partner Contact"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,reference:0
|
||||
msgid "Reference"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:board.board:0
|
||||
#: view:hr.applicant:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.action_applicants_status
|
||||
msgid "Applicants Status"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "My Recruitment"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,title_action:0
|
||||
msgid "Next Action"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.ui.menu,name:hr_recruitment.menu_hr_recruitment_recruitment
|
||||
msgid "Recruitment"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,salary_prop:0
|
||||
msgid "Salary Proposed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,partner_id:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,partner_id:0
|
||||
msgid "Partner"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Avg Proposed Salary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.recruitment.report,available:0
|
||||
msgid "Availability"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Previous"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: code:addons/hr_recruitment/wizard/hr_recruitment_phonecall.py:107
|
||||
#: view:hr.applicant:0
|
||||
#, python-format
|
||||
msgid "Phone Call"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.partner.create:0
|
||||
msgid "Convert To Partner"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_recruitment_report
|
||||
msgid "Recruitments Statistics"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Next"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_job
|
||||
msgid "Job Description"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Send New Email"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: code:addons/hr_recruitment/wizard/hr_recruitment_create_partner_job.py:39
|
||||
#, python-format
|
||||
msgid "A partner is already defined on this job request."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: selection:hr.applicant,state:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: selection:hr.recruitment.report,state:0
|
||||
msgid "New"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,email_from:0
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,availability:0
|
||||
msgid "Availability (Days)"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Available"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.applicant,priority:0
|
||||
#: selection:hr.recruitment.report,priority:0
|
||||
msgid "Good"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: code:addons/hr_recruitment/wizard/hr_recruitment_create_partner_job.py:38
|
||||
#: code:addons/hr_recruitment/wizard/hr_recruitment_create_partner_job.py:57
|
||||
#, python-format
|
||||
msgid "Error !"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.actions.act_window,help:hr_recruitment.hr_job_stage_act
|
||||
msgid ""
|
||||
"Define here your stages of the recruitment process, for example: "
|
||||
"qualification call, first interview, second interview, refused, hired."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,create_date:0
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Creation Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.job2phonecall,deadline:0
|
||||
msgid "Planned Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,priority:0
|
||||
#: field:hr.recruitment.report,priority:0
|
||||
msgid "Appreciation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Job"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,stage_id:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,stage_id:0
|
||||
#: view:hr.recruitment.stage:0
|
||||
msgid "Stage"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job3
|
||||
msgid "Second Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,salary_exp:0
|
||||
msgid "Salary Expected"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,salary_expected:0
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Expected Salary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "July"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Subject"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.crm_case_categ0_act_job
|
||||
#: model:ir.ui.menu,name:hr_recruitment.menu_crm_case_categ0_act_job
|
||||
msgid "Applicants"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "History Information"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Dates"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid " Month-1 "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.degree,name:hr_recruitment.degree_bac5
|
||||
msgid " > Bac +5"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_applicant
|
||||
msgid "Applicant"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.recruitment.stage,sequence:0
|
||||
msgid "Gives the sequence order when displaying a list of stages."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Qualification"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "March"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_recruitment_stage
|
||||
msgid "Stage of Recruitment"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.stage:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.hr_recruitment_stage_act
|
||||
#: model:ir.ui.menu,name:hr_recruitment.menu_hr_recruitment_stage
|
||||
msgid "Stages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "In progress"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Jobs - Recruitment Form"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,probability:0
|
||||
msgid "Probability"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "September"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "December"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.module.module,shortdesc:hr_recruitment.module_meta_information
|
||||
msgid "HR - Recruitement"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Job Info"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job2
|
||||
msgid "First Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,write_date:0
|
||||
msgid "Update Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,salary_proposed:0
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Proposed Salary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:crm.case.categ,name:hr_recruitment.categ_job1
|
||||
msgid "Salesman"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Search Jobs"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.job2phonecall,category_id:0
|
||||
msgid "Category"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,partner_name:0
|
||||
msgid "Applicant's Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.applicant,priority:0
|
||||
#: selection:hr.recruitment.report,priority:0
|
||||
msgid "Very Good"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "# Cases"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,date_open:0
|
||||
msgid "Opened"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Group By ..."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: selection:hr.applicant,state:0
|
||||
msgid "In Progress"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Reset to New"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.applicant,salary_expected:0
|
||||
msgid "Salary Expected by Applicant"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.applicant,email_cc:0
|
||||
msgid ""
|
||||
"These email addresses will be added to the CC field of all inbound and "
|
||||
"outbound emails for this record before being sent. Separate multiple email "
|
||||
"addresses with a comma"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,date_closed:0
|
||||
#: field:hr.recruitment.report,date_closed:0
|
||||
msgid "Closed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.stage:0
|
||||
msgid "Stage Definition"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,delay_close:0
|
||||
msgid "Avg. Delay to Close"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.applicant,salary_proposed:0
|
||||
msgid "Salary Proposed by the Organisation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Meeting"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: selection:hr.applicant,state:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: selection:hr.recruitment.report,state:0
|
||||
msgid "Pending"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Communication & History"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "August"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,type_id:0
|
||||
#: view:hr.recruitment.degree:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,type_id:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.hr_recruitment_degree_action
|
||||
msgid "Degree"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,partner_phone:0
|
||||
msgid "Phone"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Global CC"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "October"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "June"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.hr_job_stage_act
|
||||
msgid "Applicant Stages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job7
|
||||
msgid "Refused by Company"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,day_close:0
|
||||
msgid "Days to Close"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,user_id:0
|
||||
msgid "User"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.applicant,priority:0
|
||||
#: selection:hr.recruitment.report,priority:0
|
||||
msgid "Excellent"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,active:0
|
||||
msgid "Active"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "November"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Extended Filters..."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,response:0
|
||||
msgid "Response"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.degree,name:hr_recruitment.degree_licenced
|
||||
msgid "Licenced"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.report,salary_prop_avg:0
|
||||
msgid "Avg Salary Proposed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.job2phonecall:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.action_hr_recruitment_phonecall
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_recruitment_job2phonecall
|
||||
msgid "Schedule Phone Call"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "January"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.applicant,email_from:0
|
||||
msgid "These people will receive email."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.applicant,priority:0
|
||||
#: selection:hr.recruitment.report,priority:0
|
||||
msgid "Not Good"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,date:0
|
||||
#: field:hr.recruitment.report,date:0
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.job2phonecall:0
|
||||
msgid "Phone Call Description"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.partner.create:0
|
||||
msgid "Are you sure you want to create a partner based on this job request ?"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.actions.act_window,help:hr_recruitment.crm_case_categ0_act_job
|
||||
msgid ""
|
||||
"From this menu you can track applicants in the recruitment process and "
|
||||
"manage all operations: meetings, interviews, phone calls, etc. If you setup "
|
||||
"the email gateway, applicants and their attached CV are created "
|
||||
"automatically when an email is sent to jobs@yourcompany.com. If you install "
|
||||
"the document management modules, all documents (CV and motivation letters) "
|
||||
"are indexed automatically, so that you can easily search through their "
|
||||
"content."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "History"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Attachments"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job4
|
||||
msgid "Contract Proposed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,state:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,state:0
|
||||
msgid "State"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.job2phonecall:0
|
||||
#: view:hr.recruitment.partner.create:0
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.hr_job_categ_action
|
||||
msgid "Applicant Categories"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,state:0
|
||||
msgid "Open"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: code:addons/hr_recruitment/wizard/hr_recruitment_create_partner_job.py:57
|
||||
#, python-format
|
||||
msgid "A partner is already existing with the same name."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.recruitment.degree,sequence:0
|
||||
msgid "Gives the sequence order when displaying a list of degrees."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: field:hr.applicant,user_id:0
|
||||
#: view:hr.recruitment.report:0
|
||||
msgid "Responsible"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
#: model:ir.actions.act_window,name:hr_recruitment.action_hr_recruitment_report_all
|
||||
#: model:ir.ui.menu,name:hr_recruitment.menu_hr_recruitment_report_all
|
||||
msgid "Recruitment Analysis"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Current"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.module.module,description:hr_recruitment.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
"Manages job positions and the recruitement process. It's integrated with "
|
||||
"the\n"
|
||||
"survey module to allow you to define interview for different jobs.\n"
|
||||
"\n"
|
||||
"This module is integrated with the mail gateway to automatically tracks "
|
||||
"email\n"
|
||||
"sent to jobs@YOURCOMPANY.com. It's also integrated with the document "
|
||||
"management\n"
|
||||
"system to store and search in your CV base.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Details"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Cases By Stage and Estimates"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Reply"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
msgid "Interview"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,month:0
|
||||
msgid "Month"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,description:0
|
||||
msgid "Description"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "May"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job5
|
||||
msgid "Contract Signed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: selection:hr.applicant,state:0
|
||||
#: selection:hr.recruitment.report,state:0
|
||||
msgid "Refused"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: code:addons/hr_recruitment/hr_recruitment.py:412
|
||||
#, python-format
|
||||
msgid "Applicant '%s' is being hired."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.applicant:0
|
||||
#: selection:hr.applicant,state:0
|
||||
#: view:hr.recruitment.report:0
|
||||
#: selection:hr.recruitment.report,state:0
|
||||
msgid "Hired"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:hr.recruitment.stage,name:hr_recruitment.stage_job6
|
||||
msgid "Refused by Employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.applicant,priority:0
|
||||
#: selection:hr.recruitment.report,priority:0
|
||||
msgid "On Average"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_recruitment_degree
|
||||
msgid "Degree of Recruitment"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "February"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,name:0
|
||||
#: field:hr.recruitment.degree,name:0
|
||||
#: field:hr.recruitment.stage,name:0
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:ir.model,name:hr_recruitment.model_hr_recruitment_partner_create
|
||||
msgid "Create Partner from job application"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: selection:hr.recruitment.report,month:0
|
||||
msgid "April"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: model:crm.case.section,name:hr_recruitment.section_hr_department
|
||||
msgid "HR Department"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.degree,sequence:0
|
||||
#: field:hr.recruitment.stage,sequence:0
|
||||
msgid "Sequence"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.recruitment.job2phonecall,user_id:0
|
||||
msgid "Assign To"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: code:addons/hr_recruitment/hr_recruitment.py:396
|
||||
#, python-format
|
||||
msgid "The job request '%s' has been set 'in progress'."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: view:hr.recruitment.report:0
|
||||
#: field:hr.recruitment.report,year:0
|
||||
msgid "Year"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: help:hr.recruitment.report,delay_close:0
|
||||
#: help:hr.recruitment.report,delay_open:0
|
||||
msgid "Number of Days to close the project issue"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr_recruitment
|
||||
#: field:hr.applicant,survey:0
|
||||
#: field:hr.job,survey_id:0
|
||||
msgid "Survey"
|
||||
msgstr ""
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: hr_timesheet_invoice
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:58+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: html_view
|
||||
#: field:html.view,name:0
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
#. module: html_view
|
||||
#: field:html.view,comp_id:0
|
||||
msgid "Company"
|
||||
msgstr "Company"
|
||||
|
||||
#. module: html_view
|
||||
#: model:ir.actions.act_window,name:html_view.action_html_view_form
|
||||
#: model:ir.ui.menu,name:html_view.html_form
|
||||
msgid "Html Test"
|
||||
msgstr "Html Test"
|
||||
|
||||
#. module: html_view
|
||||
#: view:html.view:0
|
||||
msgid "Html Example"
|
||||
msgstr "Html Example"
|
||||
|
||||
#. module: html_view
|
||||
#: model:ir.module.module,shortdesc:html_view.module_meta_information
|
||||
msgid "Html View"
|
||||
msgstr "Html View"
|
||||
|
||||
#. module: html_view
|
||||
#: field:html.view,bank_ids:0
|
||||
msgid "Banks"
|
||||
msgstr "Banks"
|
||||
|
||||
#. module: html_view
|
||||
#: model:ir.module.module,description:html_view.module_meta_information
|
||||
msgid ""
|
||||
"\n"
|
||||
" This is the test module which shows html tag supports in normal xml form "
|
||||
"view.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
" This is the test module which shows html tag supports in normal xml form "
|
||||
"view.\n"
|
||||
" "
|
||||
|
||||
#. module: html_view
|
||||
#: model:ir.model,name:html_view.model_html_view
|
||||
msgid "html.view"
|
||||
msgstr "html.view"
|
|
@ -0,0 +1,166 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 17:36+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.ui.menu,name:knowledge.menu_document
|
||||
msgid "Knowledge"
|
||||
msgstr "Knowledge"
|
||||
|
||||
#. module: knowledge
|
||||
#: help:knowledge.installer,wiki_quality_manual:0
|
||||
msgid "Creates an example skeleton for a standard quality manual."
|
||||
msgstr "Creates an example skeleton for a standard quality manual."
|
||||
|
||||
#. module: knowledge
|
||||
#: view:knowledge.installer:0
|
||||
msgid "Share information within the company with these specific Addons."
|
||||
msgstr "Share information within the company with these specific Addons."
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,document_ftp:0
|
||||
msgid "Shared Repositories (FTP)"
|
||||
msgstr "Shared Repositories (FTP)"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.module.module,shortdesc:knowledge.module_meta_information
|
||||
msgid "Knowledge Management System"
|
||||
msgstr "Knowledge Management System"
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,wiki:0
|
||||
msgid "Collaborative Content (Wiki)"
|
||||
msgstr "Collaborative Content (Wiki)"
|
||||
|
||||
#. module: knowledge
|
||||
#: help:knowledge.installer,document_ftp:0
|
||||
msgid ""
|
||||
"Provides an FTP access to your OpenERP's Document Management System. It lets "
|
||||
"you access attachments and virtual documents through a standard FTP client."
|
||||
msgstr ""
|
||||
"Provides FTP access to your OpenERP's Document Management System. It lets "
|
||||
"you access attachments and virtual documents through a standard FTP client."
|
||||
|
||||
#. module: knowledge
|
||||
#: help:knowledge.installer,document_webdav:0
|
||||
msgid ""
|
||||
"Provides a WebDAV access to your OpenERP's Document Management System. Lets "
|
||||
"you access attachments and virtual documents through your standard file "
|
||||
"browser."
|
||||
msgstr ""
|
||||
"Provides a WebDAV access to your OpenERP's Document Management System. Lets "
|
||||
"you access attachments and virtual documents through your standard file "
|
||||
"browser."
|
||||
|
||||
#. module: knowledge
|
||||
#: view:knowledge.installer:0
|
||||
msgid "Configure"
|
||||
msgstr "Configure"
|
||||
|
||||
#. module: knowledge
|
||||
#: view:knowledge.installer:0
|
||||
msgid "title"
|
||||
msgstr "title"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.module.module,description:knowledge.module_meta_information
|
||||
msgid ""
|
||||
"Installer for knowledge-based tools\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"Installer for knowledge-based tools\n"
|
||||
" "
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.ui.menu,name:knowledge.menu_document_configuration
|
||||
msgid "Configuration"
|
||||
msgstr "Configuration"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.actions.act_window,name:knowledge.action_knowledge_installer
|
||||
msgid "Knowledge Modules Installation"
|
||||
msgstr ""
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,wiki_quality_manual:0
|
||||
msgid "Quality Manual"
|
||||
msgstr "Quality Manual"
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,document_webdav:0
|
||||
msgid "Shared Repositories (WebDAV)"
|
||||
msgstr "Shared Repositories (WebDAV)"
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,progress:0
|
||||
msgid "Configuration Progress"
|
||||
msgstr "Configuration Progress"
|
||||
|
||||
#. module: knowledge
|
||||
#: help:knowledge.installer,wiki_faq:0
|
||||
msgid ""
|
||||
"Creates a skeleton internal FAQ pre-filled with documentation about "
|
||||
"OpenERP's Document Management System."
|
||||
msgstr ""
|
||||
"Creates a skeleton internal FAQ pre-filled with documentation about "
|
||||
"OpenERP's Document Management System."
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,wiki_faq:0
|
||||
msgid "Internal FAQ"
|
||||
msgstr "Internal FAQ"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.ui.menu,name:knowledge.menu_document2
|
||||
msgid "Collaborative Content"
|
||||
msgstr "Collaborative Content"
|
||||
|
||||
#. module: knowledge
|
||||
#: field:knowledge.installer,config_logo:0
|
||||
msgid "Image"
|
||||
msgstr "Image"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.actions.act_window,name:knowledge.action_knowledge_installer
|
||||
#: view:knowledge.installer:0
|
||||
msgid "Knowledge Application Configuration"
|
||||
msgstr "Knowledge Application Configuration"
|
||||
|
||||
#. module: knowledge
|
||||
#: model:ir.model,name:knowledge.model_knowledge_installer
|
||||
msgid "knowledge.installer"
|
||||
msgstr "knowledge.installer"
|
||||
|
||||
#. module: knowledge
|
||||
#: view:knowledge.installer:0
|
||||
msgid "Configure Your Knowledge Application"
|
||||
msgstr "Configure Your Knowledge Application"
|
||||
|
||||
#. module: knowledge
|
||||
#: help:knowledge.installer,wiki:0
|
||||
msgid ""
|
||||
"Lets you create wiki pages and page groups in order to keep track of "
|
||||
"business knowledge and share it with and between your employees."
|
||||
msgstr ""
|
||||
"Lets you create wiki pages and page groups to keep track of business "
|
||||
"knowledge and share it with and between your employees."
|
||||
|
||||
#. module: knowledge
|
||||
#: view:knowledge.installer:0
|
||||
msgid "Content templates"
|
||||
msgstr "Content templates"
|
|
@ -0,0 +1,43 @@
|
|||
# English (United Kingdom) 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 <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2011-01-07 06:40+0000\n"
|
||||
"PO-Revision-Date: 2011-08-25 11:59+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-26 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 13779)\n"
|
||||
|
||||
#. module: l10n_br
|
||||
#: model:ir.actions.todo,note:l10n_br.config_call_account_template_brazilian_localization
|
||||
msgid ""
|
||||
"Generate Chart of Accounts from a Chart Template. You will be asked to pass "
|
||||
"the name of the company, the chart template to follow, the no. of digits to "
|
||||
"generate the code for your accounts and Bank account, currency to create "
|
||||
"Journals. Thus,the pure copy of chart Template is generated.\n"
|
||||
" This is the same wizard that runs from Financial "
|
||||
"Management/Configuration/Financial Accounting/Financial Accounts/Generate "
|
||||
"Chart of Accounts from a Chart Template."
|
||||
msgstr ""
|
||||
"Generate Chart of Accounts from a Chart Template. You will be asked for the "
|
||||
"name of the company, the chart template to follow, the number of digits to "
|
||||
"generate the code for your accounts and Bank account, currency to create "
|
||||
"Journals. Thus, the pure copy of chart Template is generated.\n"
|
||||
" This is the same wizard that runs from Financial "
|
||||
"Management/Configuration/Financial Accounting/Financial Accounts/Generate "
|
||||
"Chart of Accounts from a Chart Template."
|
||||
|
||||
#. module: l10n_br
|
||||
#: model:ir.module.module,description:l10n_br.module_meta_information
|
||||
#: model:ir.module.module,shortdesc:l10n_br.module_meta_information
|
||||
msgid "Brazilian Localization"
|
||||
msgstr "Brazilian Localisation"
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: l10n_chart_in
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: l10n_syscohada
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: marketing
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: mrp
|
||||
|
|
|
@ -147,7 +147,7 @@
|
|||
<field name="workcenter_id" widget="selection"/>
|
||||
<field name="production_id" />
|
||||
<field name="state" />
|
||||
<field name="date_planned" widget="date"/>
|
||||
<field name="date_planned"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Group By..." colspan="10" col="8" groups="base.group_extended">
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: point_of_sale
|
||||
|
|
|
@ -235,11 +235,11 @@
|
|||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="POS Order line">
|
||||
<field name="product_id" select="1"/>
|
||||
<field name="qty" select="1"/>
|
||||
<field name="product_id" />
|
||||
<field name="qty" />
|
||||
<field name="discount" />
|
||||
<field name="price_unit" />
|
||||
<field name="create_date" select="1"/>
|
||||
<field name="create_date" />
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
@ -282,10 +282,10 @@
|
|||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="POS ">
|
||||
<field name="user_id" select="1"/>
|
||||
<field name="journal_id" select="1"/>
|
||||
<field name="jl_id" select="1"/>
|
||||
<field name="date_create" select="1" widget="date"/>
|
||||
<field name="user_id"/>
|
||||
<field name="journal_id"/>
|
||||
<field name="jl_id"/>
|
||||
<field name="date_create" widget="date"/>
|
||||
<field name="no_trans"/>
|
||||
<field name="amount"/>
|
||||
<field name="invoice_id"/>
|
||||
|
@ -373,7 +373,7 @@
|
|||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="POS ">
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="amount"/>
|
||||
<field name="user_id"/>
|
||||
|
@ -388,7 +388,7 @@
|
|||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="POS">
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="amount"/>
|
||||
<field name="user_id"/>
|
||||
|
@ -439,7 +439,7 @@
|
|||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="POS ">
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="amount"/>
|
||||
<field name="user_id"/>
|
||||
|
@ -454,7 +454,7 @@
|
|||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="POS">
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="amount"/>
|
||||
<field name="user_id"/>
|
||||
|
@ -507,7 +507,7 @@
|
|||
<form string="POS ">
|
||||
<field name="user_id"/>
|
||||
<field name="product_name"/>
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="net_margin_per_qty"/>
|
||||
<field name="total"/>
|
||||
|
@ -524,7 +524,7 @@
|
|||
<tree string="POS">
|
||||
<field name="user_id"/>
|
||||
<field name="product_name"/>
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="net_margin_per_qty"/>
|
||||
<field name="total"/>
|
||||
|
@ -574,7 +574,7 @@
|
|||
<form string="POS ">
|
||||
<field name="user_id"/>
|
||||
<field name="product_name"/>
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="net_margin_per_qty"/>
|
||||
<field name="total"/>
|
||||
|
@ -591,7 +591,7 @@
|
|||
<tree string="POS">
|
||||
<field name="user_id"/>
|
||||
<field name="product_name"/>
|
||||
<field name="date_order" select="1" widget="date"/>
|
||||
<field name="date_order" widget="date"/>
|
||||
<field name="qty"/>
|
||||
<field name="net_margin_per_qty"/>
|
||||
<field name="total"/>
|
||||
|
@ -672,12 +672,12 @@
|
|||
<group colspan="4" col="6">
|
||||
<group colspan="4" col="2">
|
||||
<separator string="Product Description" colspan="4"/>
|
||||
<field name="name" select="1" />
|
||||
<field name="name" />
|
||||
<field groups="base.group_extended" name="variants" />
|
||||
</group>
|
||||
<group colspan="1" col="2">
|
||||
<separator string="Codes" colspan="2"/>
|
||||
<field name="default_code" select="1"/>
|
||||
<field name="default_code"/>
|
||||
<field groups="base.group_extended" name="ean13"/>
|
||||
</group>
|
||||
</group>
|
||||
|
@ -685,8 +685,8 @@
|
|||
<page string="Information">
|
||||
<group colspan="2" col="2" name="Type">
|
||||
<separator string="Product Type" colspan="2"/>
|
||||
<field name="categ_id" select="1"/>
|
||||
<field name="property_account_income" select="1" string="Account" required="1"/>
|
||||
<field name="categ_id"/>
|
||||
<field name="property_account_income" string="Account" required="1"/>
|
||||
<field name="type"/>
|
||||
</group>
|
||||
<group colspan="2" col="2" name="Miscelleanous">
|
||||
|
@ -781,10 +781,10 @@
|
|||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="POS Orders lines">
|
||||
<field name="order_id" select="1" />
|
||||
<field name="serial_number" select="1" />
|
||||
<field name="create_date" select="1" />
|
||||
<field name="product_id" select="1" />
|
||||
<field name="order_id" />
|
||||
<field name="serial_number" />
|
||||
<field name="create_date" />
|
||||
<field name="product_id" />
|
||||
<field name="qty" />
|
||||
<field name="price_unit" />
|
||||
</tree>
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: portal
|
||||
|
|
|
@ -112,7 +112,7 @@
|
|||
<separator orientation="vertical"/>
|
||||
<field name="origin"/>
|
||||
<field name="product_id" />
|
||||
<field name="date_planned" widget="date"/>
|
||||
<field name="date_planned"/>
|
||||
<field name="state" />
|
||||
</group>
|
||||
<newline/>
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: project
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: project_issue
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: project_long_term
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: project_messages
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: project_scrum
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: project_scrum
|
||||
|
|
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:52+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: purchase
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: purchase_requisition
|
||||
|
|
|
@ -14,7 +14,7 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-20 04:53+0000\n"
|
||||
"X-Launchpad-Export-Date: 2011-08-23 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 13697)\n"
|
||||
|
||||
#. module: report_webkit
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue