[MERGE] merged trunk.

bzr revid: vmt@openerp.com-20130322135152-1hdlptwj1qqqfz4z
This commit is contained in:
Vo Minh Thu 2013-03-22 14:51:52 +01:00
commit 1683fc7abd
98 changed files with 6614 additions and 2609 deletions

View File

@ -7,7 +7,7 @@ graft win32
include README include README
include LICENSE include LICENSE
include MANIFEST.in include MANIFEST.in
include gunicorn.conf.py include openerp-wsgi.py
include openerp-server include openerp-server
include setup* include setup*
global-exclude *pyc *~ # Exclude possible garbage from previous graft. global-exclude *pyc *~ # Exclude possible garbage from previous graft.

4
debian/control vendored
View File

@ -52,6 +52,6 @@ Description: OpenERP Enterprise Resource Management
features are accounting (analytic and financial), stock management, sales and features are accounting (analytic and financial), stock management, sales and
purchases management, tasks automation, marketing campaigns, help desk, POS, purchases management, tasks automation, marketing campaigns, help desk, POS,
etc. Technical features include a distributed server, flexible workflows, an etc. Technical features include a distributed server, flexible workflows, an
object database, a dynamic GUI, customizable reports, and NET-RPC and XML-RPC object database, a dynamic GUI, customizable reports, and an XML-RPC
interfaces. interface.

View File

@ -6,10 +6,11 @@ case "${1}" in
remove) remove)
deluser --quiet --system "openerp" || true deluser --quiet --system "openerp" || true
delgroup --quiet --system --only-if-empty "openerp" || true delgroup --quiet --system --only-if-empty "openerp" || true
find /var/lib/openerp -path '/var/lib/openerp/*' ! -path '/var/lib/openerp/filestore*' -delete
;; ;;
purge) purge)
rm -rf /var/lib/openerp-server rm -rf /var/lib/openerp
;; ;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)

View File

@ -103,9 +103,6 @@ General Options
--logfile=LOGFILE file where the server log will be stored --logfile=LOGFILE file where the server log will be stored
-n INTERFACE, --interface=INTERFACE specify the TCP IP address -n INTERFACE, --interface=INTERFACE specify the TCP IP address
-p PORT, --port=PORT specify the TCP port -p PORT, --port=PORT specify the TCP port
--net_interface=NETINTERFACE specify the TCP IP address for netrpc
--net_port=NETPORT specify the TCP port for netrpc
--no-netrpc disable netrpc
--no-xmlrpc disable xmlrpc --no-xmlrpc disable xmlrpc
-i INIT, --init=INIT init a module (use "all" for all modules) -i INIT, --init=INIT init a module (use "all" for all modules)
--without-demo=WITHOUT_DEMO load demo data for a module (use "all" for all modules) --without-demo=WITHOUT_DEMO load demo data for a module (use "all" for all modules)

View File

@ -9,6 +9,7 @@ Changelog
- Almost removed ``LocalService()``. For reports, - Almost removed ``LocalService()``. For reports,
``openerp.report.render_report()`` can be used. For workflows, see ``openerp.report.render_report()`` can be used. For workflows, see
:ref:`orm-workflows`. :ref:`orm-workflows`.
- Removed support for the ``NET-RPC`` protocol.
- Added the :ref:`Long polling <longpolling-worker>` worker type. - Added the :ref:`Long polling <longpolling-worker>` worker type.
- Added :ref:`orm-workflows` to the ORM. - Added :ref:`orm-workflows` to the ORM.
- Added :ref:`routing-decorators` to the RPC and WSGI stack. - Added :ref:`routing-decorators` to the RPC and WSGI stack.

View File

@ -80,17 +80,6 @@ specify the certificate file for the SSL connection
\fB\-\-pkey\-file\fR=\fISECURE_PKEY_FILE\fR \fB\-\-pkey\-file\fR=\fISECURE_PKEY_FILE\fR
specify the private key file for the SSL connection specify the private key file for the SSL connection
.IP .IP
NET\-RPC Configuration:
.TP
\fB\-\-netrpc\-interface\fR=\fINETRPC_INTERFACE\fR
specify the TCP IP address for the NETRPC protocol
.TP
\fB\-\-netrpc\-port\fR=\fINETRPC_PORT\fR
specify the TCP port for the NETRPC protocol
.TP
\fB\-\-no\-netrpc\fR
disable the NETRPC protocol
.IP
Static HTTP service: Static HTTP service:
.TP .TP
\fB\-\-static\-http\-enable\fR \fB\-\-static\-http\-enable\fR

View File

@ -13,6 +13,6 @@ Description: OpenERP is a complete ERP and CRM. The main features are accounting
and financial), stock management, sales and purchases management, tasks and financial), stock management, sales and purchases management, tasks
automation, marketing campaigns, help desk, POS, etc. Technical features include automation, marketing campaigns, help desk, POS, etc. Technical features include
a distributed server, flexible workflows, an object database, a dynamic GUI, a distributed server, flexible workflows, an object database, a dynamic GUI,
customizable reports, and NET-RPC and XML-RPC interfaces. customizable reports, and an XML-RPC interface.
Keywords: ERP, Accounting, Stock, CRM, Enterprise, Logistics, Management, Sales, Purchases Keywords: ERP, Accounting, Stock, CRM, Enterprise, Logistics, Management, Sales, Purchases
Platform: Linux, Win32 Platform: Linux, Win32

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:38+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:37+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -24,6 +24,10 @@ msgid ""
"================================================\n" "================================================\n"
" " " "
msgstr "" msgstr ""
"\n"
"Модул за проверка на писането и печата.\n"
"================================================\n"
" "
#. module: base #. module: base
#: model:res.country,name:base.sh #: model:res.country,name:base.sh
@ -60,6 +64,7 @@ msgstr "Преглед на архитектурата"
#: model:ir.module.module,summary:base.module_sale_stock #: model:ir.module.module,summary:base.module_sale_stock
msgid "Quotation, Sale Orders, Delivery & Invoicing Control" msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
msgstr "" msgstr ""
"Запитване за ..., Поръчки за продажба, доставка и контрол на фактурирането"
#. module: base #. module: base
#: selection:ir.sequence,implementation:0 #: selection:ir.sequence,implementation:0
@ -88,18 +93,20 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_point_of_sale #: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops" msgid "Touchscreen Interface for Shops"
msgstr "" msgstr "Сензорен интерфейс, чрез докосване за магазини"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll #: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
msgid "Indian Payroll" msgid "Indian Payroll"
msgstr "" msgstr "Индийски ТРЗ"
#. module: base #. module: base
#: help:ir.cron,model:0 #: help:ir.cron,model:0
msgid "" msgid ""
"Model name on which the method to be called is located, e.g. 'res.partner'." "Model name on which the method to be called is located, e.g. 'res.partner'."
msgstr "" msgstr ""
"Името на модела към метода, който се нарича или открива, например "
"\"Res.partner\"."
#. module: base #. module: base
#: view:ir.module.module:0 #: view:ir.module.module:0
@ -121,11 +128,22 @@ msgid ""
" * Product Attributes\n" " * Product Attributes\n"
" " " "
msgstr "" msgstr ""
"\n"
"Модулът добавя - производител и атрибутите във формуляра на на продукта.\n"
"====================================================================\n"
"\n"
"Можете да дефинирате следната информация за продукт:\n"
"-----------------------------------------------\n"
" * Производител\n"
" * Името на продукта от производителя\n"
" * Кода на продукта от производителя\n"
" * Атрибути на продукта\n"
" "
#. module: base #. module: base
#: field:ir.actions.client,params:0 #: field:ir.actions.client,params:0
msgid "Supplementary arguments" msgid "Supplementary arguments"
msgstr "" msgstr "Допълнителни аргументи"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_google_base_account #: model:ir.module.module,description:base.module_google_base_account
@ -134,11 +152,14 @@ msgid ""
"The module adds google user in res user.\n" "The module adds google user in res user.\n"
"========================================\n" "========================================\n"
msgstr "" msgstr ""
"\n"
"Модулът добавя Google потребител като вътрешен.\n"
"========================================\n"
#. module: base #. module: base
#: help:res.partner,employee:0 #: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee." msgid "Check this box if this contact is an Employee."
msgstr "" msgstr "Маркирайте тази отметка, ако това лице е служител."
#. module: base #. module: base
#: help:ir.model.fields,domain:0 #: help:ir.model.fields,domain:0
@ -147,6 +168,9 @@ msgid ""
"specified as a Python expression defining a list of triplets. For example: " "specified as a Python expression defining a list of triplets. For example: "
"[('color','=','red')]" "[('color','=','red')]"
msgstr "" msgstr ""
"Опцията за областта ограничаваща възможните стойности за свързаните полета, "
"посочени като Python изрази, определени като списък на тризнаци. Например: "
"[(\"цвят\", \"=\", \"червен\")]"
#. module: base #. module: base
#: field:res.partner,ref:0 #: field:res.partner,ref:0
@ -156,7 +180,7 @@ msgstr "Означение"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_be_invoice_bba #: model:ir.module.module,shortdesc:base.module_l10n_be_invoice_bba
msgid "Belgium - Structured Communication" msgid "Belgium - Structured Communication"
msgstr "" msgstr "Белгия - структурирано съобщение"
#. module: base #. module: base
#: field:ir.actions.act_window,target:0 #: field:ir.actions.act_window,target:0
@ -166,12 +190,12 @@ msgstr "Целеви прозорец"
#. module: base #. module: base
#: field:ir.actions.report.xml,report_rml:0 #: field:ir.actions.report.xml,report_rml:0
msgid "Main Report File Path" msgid "Main Report File Path"
msgstr "" msgstr "Пътя до файла със справки"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans #: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
msgid "Sales Analytic Distribution" msgid "Sales Analytic Distribution"
msgstr "" msgstr "Анализ на продажбите от доставки"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_timesheet_invoice #: model:ir.module.module,description:base.module_hr_timesheet_invoice
@ -187,6 +211,16 @@ msgid ""
"revenue\n" "revenue\n"
"reports." "reports."
msgstr "" msgstr ""
"\n"
"Генериране на вашите фактури на база разходи, Работни графици.\n"
"========================================================\n"
"\n"
"Модул за генериране на фактури, базирани на разходи (човешки ресурси, "
"разходи ...).\n"
"\n"
"Можете да дефинирате ценови листи в аналитичните сметки,както и някои "
"теоретични приходни\n"
"справки."
#. module: base #. module: base
#: code:addons/base/ir/ir_sequence.py:104 #: code:addons/base/ir/ir_sequence.py:104
@ -203,6 +237,8 @@ msgid ""
"Properties of base fields cannot be altered in this manner! Please modify " "Properties of base fields cannot be altered in this manner! Please modify "
"them through Python code, preferably through a custom addon!" "them through Python code, preferably through a custom addon!"
msgstr "" msgstr ""
"Свойства на базови полета, които не могат да се променят! Може да ги "
"промените, чрез Python код, най добре чрез добавка!"
#. module: base #. module: base
#: code:addons/osv.py:132 #: code:addons/osv.py:132
@ -219,7 +255,7 @@ msgstr "ir.ui.view.custom"
#: code:addons/base/ir/ir_model.py:368 #: code:addons/base/ir/ir_model.py:368
#, python-format #, python-format
msgid "Renaming sparse field \"%s\" is not allowed" msgid "Renaming sparse field \"%s\" is not allowed"
msgstr "" msgstr "Промяна частично на полето \"%s\" не е възможно"
#. module: base #. module: base
#: model:res.country,name:base.sz #: model:res.country,name:base.sz
@ -235,12 +271,12 @@ msgstr "създаден."
#. module: base #. module: base
#: field:ir.actions.report.xml,report_xsl:0 #: field:ir.actions.report.xml,report_xsl:0
msgid "XSL Path" msgid "XSL Path"
msgstr "" msgstr "XSL Път"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_tr #: model:ir.module.module,shortdesc:base.module_l10n_tr
msgid "Turkey - Accounting" msgid "Turkey - Accounting"
msgstr "" msgstr "Турция - Сметкоплан"
#. module: base #. module: base
#: field:ir.sequence,number_increment:0 #: field:ir.sequence,number_increment:0
@ -256,12 +292,12 @@ msgstr "Структура на компанията"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0
msgid "Inuktitut / ᐃᓄᒃᑎᑐᑦ" msgid "Inuktitut / ᐃᓄᒃᑎᑐᑦ"
msgstr "" msgstr "Инуктитут / ᐃᓄᒃᑎᑐᑦ"
#. module: base #. module: base
#: model:res.groups,name:base.group_multi_currency #: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies" msgid "Multi Currencies"
msgstr "" msgstr "Множество валути"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_l10n_cl #: model:ir.module.module,description:base.module_l10n_cl
@ -14425,7 +14461,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_purchase #: model:ir.module.module,summary:base.module_purchase
msgid "Purchase Orders, Receptions, Supplier Invoices" msgid "Purchase Orders, Receptions, Supplier Invoices"
msgstr "" msgstr "Заявка за доставка, Пристигания, Фактури от доставчик"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_payroll #: model:ir.module.module,description:base.module_hr_payroll

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:38+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:38+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:37+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -59,12 +59,12 @@ msgstr "Codi vista"
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_sale_stock #: model:ir.module.module,summary:base.module_sale_stock
msgid "Quotation, Sale Orders, Delivery & Invoicing Control" msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
msgstr "" msgstr "Cotització, ordres de venda, lliurament i Control de facturació"
#. module: base #. module: base
#: selection:ir.sequence,implementation:0 #: selection:ir.sequence,implementation:0
msgid "No gap" msgid "No gap"
msgstr "" msgstr "No hi ha espai"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0
@ -82,11 +82,13 @@ msgid ""
"Helps you manage your projects and tasks by tracking them, generating " "Helps you manage your projects and tasks by tracking them, generating "
"plannings, etc..." "plannings, etc..."
msgstr "" msgstr ""
"L'ajuda a gestionar els seus projectes i tasques per fer-ne el seguiment, "
"generar planificacions, etc .."
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_point_of_sale #: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops" msgid "Touchscreen Interface for Shops"
msgstr "" msgstr "Interfície de pantalla tàctil per Botigues"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll #: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
@ -98,6 +100,8 @@ msgstr ""
msgid "" msgid ""
"Model name on which the method to be called is located, e.g. 'res.partner'." "Model name on which the method to be called is located, e.g. 'res.partner'."
msgstr "" msgstr ""
"Nom del model en el qual es troba el mètode que es dirà, per exemple, "
"'Res.partner'."
#. module: base #. module: base
#: view:ir.module.module:0 #: view:ir.module.module:0
@ -123,7 +127,7 @@ msgstr ""
#. module: base #. module: base
#: field:ir.actions.client,params:0 #: field:ir.actions.client,params:0
msgid "Supplementary arguments" msgid "Supplementary arguments"
msgstr "" msgstr "Temes suplementaris"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_google_base_account #: model:ir.module.module,description:base.module_google_base_account
@ -136,7 +140,7 @@ msgstr ""
#. module: base #. module: base
#: help:res.partner,employee:0 #: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee." msgid "Check this box if this contact is an Employee."
msgstr "" msgstr "Marqueu aquesta casella si aquest contacte és un empleat."
#. module: base #. module: base
#: help:ir.model.fields,domain:0 #: help:ir.model.fields,domain:0
@ -167,12 +171,12 @@ msgstr "Destí finestra"
#. module: base #. module: base
#: field:ir.actions.report.xml,report_rml:0 #: field:ir.actions.report.xml,report_rml:0
msgid "Main Report File Path" msgid "Main Report File Path"
msgstr "" msgstr "Ruta de l'arxiu d'informe principal"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans #: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
msgid "Sales Analytic Distribution" msgid "Sales Analytic Distribution"
msgstr "" msgstr "Vendes de Distribució Analítica"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_timesheet_invoice #: model:ir.module.module,description:base.module_hr_timesheet_invoice
@ -223,7 +227,7 @@ msgstr "ir.ui.view.custom"
#: code:addons/base/ir/ir_model.py:368 #: code:addons/base/ir/ir_model.py:368
#, python-format #, python-format
msgid "Renaming sparse field \"%s\" is not allowed" msgid "Renaming sparse field \"%s\" is not allowed"
msgstr "" msgstr "Canvi de nom de camp \"% s\" no està permès"
#. module: base #. module: base
#: model:res.country,name:base.sz #: model:res.country,name:base.sz
@ -265,7 +269,7 @@ msgstr "Inuktitut / ᐃᓄᒃᑎᑐᑦ"
#. module: base #. module: base
#: model:res.groups,name:base.group_multi_currency #: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies" msgid "Multi Currencies"
msgstr "" msgstr "Monedes múltiples"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_l10n_cl #: model:ir.module.module,description:base.module_l10n_cl
@ -281,7 +285,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_sale #: model:ir.module.module,shortdesc:base.module_sale
msgid "Sales Management" msgid "Sales Management"
msgstr "" msgstr "Gestió de vendes"
#. module: base #. module: base
#: help:res.partner,user_id:0 #: help:res.partner,user_id:0
@ -289,6 +293,8 @@ msgid ""
"The internal user that is in charge of communicating with this contact if " "The internal user that is in charge of communicating with this contact if "
"any." "any."
msgstr "" msgstr ""
"Si n'hi ha, usuari intern que s'encarrega de la comunicació amb aquest "
"contacte."
#. module: base #. module: base
#: view:res.partner:0 #: view:res.partner:0
@ -359,7 +365,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.category,name:base.module_category_customer_relationship_management #: model:ir.module.category,name:base.module_category_customer_relationship_management
msgid "Customer Relationship Management" msgid "Customer Relationship Management"
msgstr "" msgstr "Gestió de les relacions amb el client (CRM)"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_delivery #: model:ir.module.module,description:base.module_delivery
@ -391,7 +397,7 @@ msgstr "group_by no vàlid"
#. module: base #. module: base
#: field:ir.module.category,child_ids:0 #: field:ir.module.category,child_ids:0
msgid "Child Applications" msgid "Child Applications"
msgstr "" msgstr "Aplicacions filles"
#. module: base #. module: base
#: field:res.partner,credit_limit:0 #: field:res.partner,credit_limit:0
@ -408,7 +414,7 @@ msgstr "Data revisió"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_base_action_rule #: model:ir.module.module,shortdesc:base.module_base_action_rule
msgid "Automated Action Rules" msgid "Automated Action Rules"
msgstr "" msgstr "Regles automatitzades d'acció"
#. module: base #. module: base
#: view:ir.attachment:0 #: view:ir.attachment:0
@ -449,6 +455,8 @@ msgid ""
"Invalid date/time format directive specified. Please refer to the list of " "Invalid date/time format directive specified. Please refer to the list of "
"allowed directives, displayed when you edit a language." "allowed directives, displayed when you edit a language."
msgstr "" msgstr ""
"Directiva de format de data / hora especificada invalida. Si us plau, "
"consulteu la llista de directives permeses, apareix quan s'edita un idioma."
#. module: base #. module: base
#: code:addons/orm.py:4152 #: code:addons/orm.py:4152
@ -792,7 +800,7 @@ msgstr ""
#. module: base #. module: base
#: help:ir.cron,nextcall:0 #: help:ir.cron,nextcall:0
msgid "Next planned execution date for this job." msgid "Next planned execution date for this job."
msgstr "" msgstr "Propera data d'execució prevista per aquest treball."
#. module: base #. module: base
#: model:ir.model,name:base.model_ir_ui_view #: model:ir.model,name:base.model_ir_ui_view
@ -807,7 +815,7 @@ msgstr "Eritrea"
#. module: base #. module: base
#: sql_constraint:res.company:0 #: sql_constraint:res.company:0
msgid "The company name must be unique !" msgid "The company name must be unique !"
msgstr "" msgstr "El nom de l'empresa ha de ser únic!"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_base_action_rule_admin #: model:ir.ui.menu,name:base.menu_base_action_rule_admin
@ -846,7 +854,7 @@ msgstr ""
#. module: base #. module: base
#: view:ir.mail_server:0 #: view:ir.mail_server:0
msgid "Security and Authentication" msgid "Security and Authentication"
msgstr "" msgstr "Seguretat i autenticació"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar #: model:ir.module.module,shortdesc:base.module_web_calendar
@ -949,7 +957,7 @@ msgstr ""
#. module: base #. module: base
#: view:res.users:0 #: view:res.users:0
msgid "Email Preferences" msgid "Email Preferences"
msgstr "" msgstr "Preferències del correu electrònic"
#. module: base #. module: base
#: code:addons/base/ir/ir_fields.py:195 #: code:addons/base/ir/ir_fields.py:195
@ -1014,7 +1022,7 @@ msgstr "Oman"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_mrp #: model:ir.module.module,shortdesc:base.module_mrp
msgid "MRP" msgid "MRP"
msgstr "" msgstr "MRP"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_attendance #: model:ir.module.module,description:base.module_hr_attendance
@ -1036,7 +1044,7 @@ msgstr "Niue"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_membership #: model:ir.module.module,shortdesc:base.module_membership
msgid "Membership Management" msgid "Membership Management"
msgstr "" msgstr "Administració d'afiliacions"
#. module: base #. module: base
#: selection:ir.module.module,license:0 #: selection:ir.module.module,license:0
@ -1068,7 +1076,7 @@ msgstr "Tipus de referències en sol·licituds"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_google_base_account #: model:ir.module.module,shortdesc:base.module_google_base_account
msgid "Google Users" msgid "Google Users"
msgstr "" msgstr "Usuaris de Google"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_fleet #: model:ir.module.module,shortdesc:base.module_fleet
@ -1084,6 +1092,12 @@ msgid ""
"If Value type is selected, the value will be used directly without " "If Value type is selected, the value will be used directly without "
"evaluation." "evaluation."
msgstr "" msgstr ""
"Expressió que conté una especificació de valor.\n"
"Quan el tipus és fórmula, aquest camp pot ser una expressió de Python que "
"pot utilitzar els mateixos valors que en el camp de condició de l'acció del "
"servidor.\n"
"Si el tipus és seleccionat, el valor es pot utilitzar directament sense "
"avaluació."
#. module: base #. module: base
#: model:res.country,name:base.ad #: model:res.country,name:base.ad
@ -1144,6 +1158,8 @@ msgstr "Fitxer TGZ"
msgid "" msgid ""
"Users added to this group are automatically added in the following groups." "Users added to this group are automatically added in the following groups."
msgstr "" msgstr ""
"Els usuaris afegits a aquest grup s'agreguen automàticament en els següents "
"grups."
#. module: base #. module: base
#: code:addons/base/ir/ir_model.py:725 #: code:addons/base/ir/ir_model.py:725
@ -1263,7 +1279,7 @@ msgstr ""
#: code:addons/base/ir/ir_mail_server.py:212 #: code:addons/base/ir/ir_mail_server.py:212
#, python-format #, python-format
msgid "Connection test failed!" msgid "Connection test failed!"
msgstr "" msgstr "La prova de connexió ha fallat!"
#. module: base #. module: base
#: selection:ir.actions.server,state:0 #: selection:ir.actions.server,state:0
@ -1401,7 +1417,7 @@ msgstr ""
#: code:addons/base/module/wizard/base_language_install.py:53 #: code:addons/base/module/wizard/base_language_install.py:53
#, python-format #, python-format
msgid "Language Pack" msgid "Language Pack"
msgstr "" msgstr "Paquet d'idioma"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_web_tests #: model:ir.module.module,shortdesc:base.module_web_tests
@ -1473,7 +1489,7 @@ msgstr ""
#. module: base #. module: base
#: field:ir.module.category,parent_id:0 #: field:ir.module.category,parent_id:0
msgid "Parent Application" msgid "Parent Application"
msgstr "" msgstr "Aplicació pare"
#. module: base #. module: base
#: model:ir.actions.act_window,name:base.ir_action_wizard #: model:ir.actions.act_window,name:base.ir_action_wizard
@ -1491,12 +1507,12 @@ msgstr "Operació cancel·lada"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_document #: model:ir.module.module,shortdesc:base.module_document
msgid "Document Management System" msgid "Document Management System"
msgstr "" msgstr "Sistema de gestió de documents"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_crm_claim #: model:ir.module.module,shortdesc:base.module_crm_claim
msgid "Claims Management" msgid "Claims Management"
msgstr "" msgstr "Gestió de demandes"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_document_webdav #: model:ir.module.module,description:base.module_document_webdav
@ -1585,6 +1601,11 @@ msgid ""
"use the accounting application of OpenERP, journals and accounts will be " "use the accounting application of OpenERP, journals and accounts will be "
"created automatically based on these data." "created automatically based on these data."
msgstr "" msgstr ""
"Configurar els comptes bancaris de la seva empresa i seleccionar els que han "
"d'aparèixer al peu de l'informe. Podeu canviar l'ordre dels comptes bancaris "
"de la vista de llista. Si utilitzeu l'aplicació de comptabilitat d'OpenERP, "
"els diaris i els comptes es crearan automàticament en funció d'aquestes "
"dades."
#. module: base #. module: base
#: report:ir.module.reference:0 #: report:ir.module.reference:0
@ -2169,7 +2190,7 @@ msgstr ""
#: model:ir.ui.menu,name:base.menu_administration #: model:ir.ui.menu,name:base.menu_administration
#: model:res.groups,name:base.group_system #: model:res.groups,name:base.group_system
msgid "Settings" msgid "Settings"
msgstr "" msgstr "Configuració"
#. module: base #. module: base
#: selection:ir.actions.act_window,view_type:0 #: selection:ir.actions.act_window,view_type:0
@ -2674,7 +2695,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_invoiced #: model:ir.ui.menu,name:base.menu_invoiced
msgid "Invoicing" msgid "Invoicing"
msgstr "" msgstr "Facturació"
#. module: base #. module: base
#: field:ir.ui.view_sc,name:0 #: field:ir.ui.view_sc,name:0
@ -5036,7 +5057,7 @@ msgstr "Kenia"
#: model:ir.actions.act_window,name:base.action_translation #: model:ir.actions.act_window,name:base.action_translation
#: model:ir.ui.menu,name:base.menu_action_translation #: model:ir.ui.menu,name:base.menu_action_translation
msgid "Translated Terms" msgid "Translated Terms"
msgstr "" msgstr "Termes traduïts"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0
@ -6572,7 +6593,7 @@ msgstr "Acció"
#. module: base #. module: base
#: view:ir.actions.server:0 #: view:ir.actions.server:0
msgid "Email Configuration" msgid "Email Configuration"
msgstr "Configuració Email" msgstr "Configuració correu electrònic"
#. module: base #. module: base
#: model:ir.model,name:base.model_ir_cron #: model:ir.model,name:base.model_ir_cron
@ -8693,7 +8714,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_account #: model:ir.module.module,shortdesc:base.module_account
msgid "eInvoicing" msgid "eInvoicing"
msgstr "" msgstr "Facturació electrònica"
#. module: base #. module: base
#: code:addons/base/res/res_users.py:171 #: code:addons/base/res/res_users.py:171
@ -10140,7 +10161,7 @@ msgstr "Aquest mètode ja no existeix"
#: model:ir.actions.act_window,name:base.action_wizard_update_translations #: model:ir.actions.act_window,name:base.action_wizard_update_translations
#: model:ir.ui.menu,name:base.menu_wizard_update_translations #: model:ir.ui.menu,name:base.menu_wizard_update_translations
msgid "Synchronize Terms" msgid "Synchronize Terms"
msgstr "" msgstr "Sincronitzar els termes"
#. module: base #. module: base
#: field:res.lang,thousands_sep:0 #: field:res.lang,thousands_sep:0
@ -10975,7 +10996,7 @@ msgstr "Laos"
#: field:res.partner,email:0 #: field:res.partner,email:0
#, python-format #, python-format
msgid "Email" msgid "Email"
msgstr "Email" msgstr "Correu electrònic"
#. module: base #. module: base
#: model:res.partner.category,name:base.res_partner_category_12 #: model:res.partner.category,name:base.res_partner_category_12
@ -12909,7 +12930,7 @@ msgstr ""
#. module: base #. module: base
#: help:ir.cron,function:0 #: help:ir.cron,function:0
msgid "Name of the method to be called when this job is processed." msgid "Name of the method to be called when this job is processed."
msgstr "" msgstr "Nom del mètode que es cridarà quan aquest treball es processa."
#. module: base #. module: base
#: field:ir.actions.client,tag:0 #: field:ir.actions.client,tag:0
@ -13000,7 +13021,7 @@ msgstr "Sàhara Occidental"
#. module: base #. module: base
#: model:ir.module.category,name:base.module_category_account_voucher #: model:ir.module.category,name:base.module_category_account_voucher
msgid "Invoicing & Payments" msgid "Invoicing & Payments"
msgstr "" msgstr "Facturació i pagaments"
#. module: base #. module: base
#: model:ir.actions.act_window,help:base.action_res_company_form #: model:ir.actions.act_window,help:base.action_res_company_form
@ -14134,7 +14155,7 @@ msgstr "Relació objecte"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_account_voucher #: model:ir.module.module,shortdesc:base.module_account_voucher
msgid "eInvoicing & Payments" msgid "eInvoicing & Payments"
msgstr "" msgstr "Facturació electrònica i pagaments"
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
@ -14335,7 +14356,7 @@ msgstr "Aplica actualitzacions programades"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_sale_journal #: model:ir.module.module,shortdesc:base.module_sale_journal
msgid "Invoicing Journals" msgid "Invoicing Journals"
msgstr "" msgstr "Diaris de facturació"
#. module: base #. module: base
#: help:ir.ui.view,groups_id:0 #: help:ir.ui.view,groups_id:0
@ -14352,7 +14373,7 @@ msgstr "Persa / فارس"
#. module: base #. module: base
#: view:base.language.export:0 #: view:base.language.export:0
msgid "Export Settings" msgid "Export Settings"
msgstr "" msgstr "Exporta la configuració"
#. module: base #. module: base
#: field:ir.actions.act_window,src_model:0 #: field:ir.actions.act_window,src_model:0
@ -14799,7 +14820,7 @@ msgstr "Finestra actual"
#: model:ir.module.category,name:base.module_category_hidden #: model:ir.module.category,name:base.module_category_hidden
#: view:res.users:0 #: view:res.users:0
msgid "Technical Settings" msgid "Technical Settings"
msgstr "" msgstr "Configuració tècnica"
#. module: base #. module: base
#: model:ir.module.category,description:base.module_category_accounting_and_finance #: model:ir.module.category,description:base.module_category_accounting_and_finance
@ -14807,6 +14828,8 @@ msgid ""
"Helps you handle your accounting needs, if you are not an accountant, we " "Helps you handle your accounting needs, if you are not an accountant, we "
"suggest you to install only the Invoicing." "suggest you to install only the Invoicing."
msgstr "" msgstr ""
"L'ajuda a gestionar les seves necessitats de comptabilitat, si vostè no és "
"comptable, li suggerim que instal només la facturació."
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_plugin_thunderbird #: model:ir.module.module,shortdesc:base.module_plugin_thunderbird
@ -15535,9 +15558,6 @@ msgstr ""
#~ msgid "Select Action Type" #~ msgid "Select Action Type"
#~ msgstr "Seleccioneu tipus d'acció" #~ msgstr "Seleccioneu tipus d'acció"
#~ msgid "E-Mail"
#~ msgstr "Email"
#~ msgid "Schedule Upgrade" #~ msgid "Schedule Upgrade"
#~ msgstr "Programa actualització" #~ msgstr "Programa actualització"
@ -15809,9 +15829,6 @@ msgstr ""
#~ msgid "Select Report" #~ msgid "Select Report"
#~ msgstr "Seleccioneu informe" #~ msgstr "Seleccioneu informe"
#~ msgid "Sender's email"
#~ msgstr "Email remitent"
#~ msgid "Connect Events to Actions" #~ msgid "Connect Events to Actions"
#~ msgstr "Connecta esdeveniments a accions" #~ msgstr "Connecta esdeveniments a accions"
@ -15931,9 +15948,6 @@ msgstr ""
#~ msgid "Python code to be executed" #~ msgid "Python code to be executed"
#~ msgstr "Codi Python a executar-se" #~ msgstr "Codi Python a executar-se"
#~ msgid "Send Email"
#~ msgstr "Envia email"
#~ msgid "Next" #~ msgid "Next"
#~ msgstr "Següent" #~ msgstr "Següent"
@ -17157,3 +17171,50 @@ msgstr ""
#~ msgstr "" #~ msgstr ""
#~ "Tipus de vista: 'Arbre' per a una vista d'arbre jeràrquica, o 'Formulari' " #~ "Tipus de vista: 'Arbre' per a una vista d'arbre jeràrquica, o 'Formulari' "
#~ "per a les altres vistes." #~ "per a les altres vistes."
#~ msgid "Tasks-Mail Integration"
#~ msgstr "Integració tasques-correu"
#~ msgid "Billing Rates on Contracts"
#~ msgstr "Tarifes de facturació en contractes"
#~ msgid "Partner Manager"
#~ msgstr "Soci Gerent"
#~ msgid "Openerp web graph view"
#~ msgstr "Vista de gràfic web d'OpenERP"
#~ msgid ""
#~ "Manual: Launched manually.\n"
#~ "Automatic: Runs whenever the system is reconfigured.\n"
#~ "Launch Manually Once: after hacing been launched manually, it sets "
#~ "automatically to Done."
#~ msgstr ""
#~ "Manual: Llançada de forma manual.\n"
#~ "Automàtic: S'executa cada vegada que el sistema es reconfigura.\n"
#~ "Inicieu manualment un cop: després d'haver-se posat en marxa de forma "
#~ "manual, s'estableix automàticament a Fet."
#~ msgid "Sales Orders Print Layout"
#~ msgstr "Disseny d'impressió d'Ordres de venda"
#~ msgid "SugarCRM Import"
#~ msgstr "Importació SugarCRM"
#~ msgid "OpenERP Web web"
#~ msgstr "OpenERP Web web"
#~ msgid "Symbol position"
#~ msgstr "Posició del símbol"
#~ msgid "Miscellaneous Tools"
#~ msgstr "Eines vàries"
#~ msgid "E-Mail"
#~ msgstr "Correu Electrònic"
#~ msgid "Sender's email"
#~ msgstr "Adreça electrònica del remitent"
#~ msgid "Send Email"
#~ msgstr "Envia correu electrònic"

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:38+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:37+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
"X-Poedit-Language: Czech\n" "X-Poedit-Language: Czech\n"
#. module: base #. module: base

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:38+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:37+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

File diff suppressed because it is too large Load Diff

View File

@ -12,8 +12,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:40+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:38+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
"X-Poedit-Country: GREECE\n" "X-Poedit-Country: GREECE\n"
"X-Poedit-Language: Greek\n" "X-Poedit-Language: Greek\n"
"X-Poedit-SourceCharset: utf-8\n" "X-Poedit-SourceCharset: utf-8\n"

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:46+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:44+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:44+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:42+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -4274,7 +4274,7 @@ msgstr "Modo SMTP sobre SSL no disponible"
#: model:ir.module.module,shortdesc:base.module_survey #: model:ir.module.module,shortdesc:base.module_survey
#: model:ir.ui.menu,name:base.next_id_10 #: model:ir.ui.menu,name:base.next_id_10
msgid "Survey" msgid "Survey"
msgstr "Encuesta" msgstr "Planificación"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:46+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:44+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:46+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:44+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:47+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
"Language: \n" "Language: \n"
#. module: base #. module: base

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:46+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:44+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:47+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:47+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:44+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:39+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:37+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -9,8 +9,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:42+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n" "X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n"
"X-Poedit-Language: Persian\n" "X-Poedit-Language: Persian\n"

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:47+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:39+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:38+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:39+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:38+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -10583,7 +10583,7 @@ msgstr ""
#. module: base #. module: base
#: field:res.partner,use_parent_address:0 #: field:res.partner,use_parent_address:0
msgid "Use Company Address" msgid "Use Company Address"
msgstr "" msgstr "Utiliser l'adresse de la société"
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_hr_holidays #: model:ir.module.module,summary:base.module_hr_holidays
@ -14318,7 +14318,7 @@ msgstr "Maroc - Comptabilité"
#: field:res.bank,bic:0 #: field:res.bank,bic:0
#: field:res.partner.bank,bank_bic:0 #: field:res.partner.bank,bank_bic:0
msgid "Bank Identifier Code" msgid "Bank Identifier Code"
msgstr "Code d'indentification bancaire" msgstr "Code d'identification bancaire"
#. module: base #. module: base
#: view:base.language.export:0 #: view:base.language.export:0

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:40+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:38+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:40+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:39+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:40+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:39+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:40+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:39+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:43+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:42+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
"Language: hr\n" "Language: hr\n"
#. module: base #. module: base

File diff suppressed because it is too large Load Diff

View File

@ -9,8 +9,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:41+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:39+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:41+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:39+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:41+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:39+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:41+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:40+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:39+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:38+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -141,7 +141,7 @@ msgstr ""
#. module: base #. module: base
#: help:res.partner,employee:0 #: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee." msgid "Check this box if this contact is an Employee."
msgstr "" msgstr "მონიშნეთ თუ საკონტაქტო პირი თანამშრომელია"
#. module: base #. module: base
#: help:ir.model.fields,domain:0 #: help:ir.model.fields,domain:0
@ -269,7 +269,7 @@ msgstr "ინუქტიტუტი"
#. module: base #. module: base
#: model:res.groups,name:base.group_multi_currency #: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies" msgid "Multi Currencies"
msgstr "" msgstr "მულტი ვალუტა"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_l10n_cl #: model:ir.module.module,description:base.module_l10n_cl

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:41+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:40+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

File diff suppressed because it is too large Load Diff

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:42+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:40+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:42+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:40+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -29,12 +29,12 @@ msgstr ""
#. module: base #. module: base
#: model:res.country,name:base.sh #: model:res.country,name:base.sh
msgid "Saint Helena" msgid "Saint Helena"
msgstr "Svētās Helēnas Sala" msgstr "Sv. Helēnas sala"
#. module: base #. module: base
#: view:ir.actions.report.xml:0 #: view:ir.actions.report.xml:0
msgid "Other Configuration" msgid "Other Configuration"
msgstr "Cita konfigurācija" msgstr "Cita Konfigurācija"
#. module: base #. module: base
#: selection:ir.property,type:0 #: selection:ir.property,type:0
@ -124,7 +124,7 @@ msgstr ""
#. module: base #. module: base
#: field:ir.actions.client,params:0 #: field:ir.actions.client,params:0
msgid "Supplementary arguments" msgid "Supplementary arguments"
msgstr "" msgstr "Papildus argumenti"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_google_base_account #: model:ir.module.module,description:base.module_google_base_account
@ -193,7 +193,7 @@ msgstr ""
#: code:addons/base/res/res_users.py:467 #: code:addons/base/res/res_users.py:467
#, python-format #, python-format
msgid "Warning!" msgid "Warning!"
msgstr "Uzmanību!" msgstr "Brīdinājums!"
#. module: base #. module: base
#: code:addons/base/ir/ir_model.py:399 #: code:addons/base/ir/ir_model.py:399
@ -244,7 +244,7 @@ msgstr ""
#. module: base #. module: base
#: field:ir.sequence,number_increment:0 #: field:ir.sequence,number_increment:0
msgid "Increment Number" msgid "Increment Number"
msgstr "Solis" msgstr "Soļa Numurs"
#. module: base #. module: base
#: model:ir.actions.act_window,name:base.action_res_company_tree #: model:ir.actions.act_window,name:base.action_res_company_tree
@ -331,7 +331,7 @@ msgstr "Valodas nosaukumam jābūt unikālam!"
#. module: base #. module: base
#: selection:res.request,state:0 #: selection:res.request,state:0
msgid "active" msgid "active"
msgstr "active" msgstr "aktīvs"
#. module: base #. module: base
#: field:ir.actions.wizard,wiz_name:0 #: field:ir.actions.wizard,wiz_name:0
@ -470,7 +470,7 @@ msgstr ""
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
msgid "Create Access Right" msgid "Create Access Right"
msgstr "" msgstr "Izveidot Piekļuves Tiesības"
#. module: base #. module: base
#: model:res.country,name:base.tv #: model:res.country,name:base.tv
@ -796,7 +796,7 @@ msgstr "Eritreja"
#. module: base #. module: base
#: sql_constraint:res.company:0 #: sql_constraint:res.company:0
msgid "The company name must be unique !" msgid "The company name must be unique !"
msgstr "" msgstr "Uzņēmuma nosaukumam ir jābūt unikālam !"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_base_action_rule_admin #: model:ir.ui.menu,name:base.menu_base_action_rule_admin
@ -835,7 +835,7 @@ msgstr ""
#. module: base #. module: base
#: view:ir.mail_server:0 #: view:ir.mail_server:0
msgid "Security and Authentication" msgid "Security and Authentication"
msgstr "" msgstr "Drošība un Autentifikācija"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar #: model:ir.module.module,shortdesc:base.module_web_calendar
@ -851,7 +851,7 @@ msgstr "Zviedru / svenska"
#: field:base.language.export,name:0 #: field:base.language.export,name:0
#: field:ir.attachment,datas_fname:0 #: field:ir.attachment,datas_fname:0
msgid "File Name" msgid "File Name"
msgstr "" msgstr "Faila Nosaukums"
#. module: base #. module: base
#: model:res.country,name:base.rs #: model:res.country,name:base.rs
@ -872,7 +872,7 @@ msgstr "Kambodža"
#: field:base.language.import,overwrite:0 #: field:base.language.import,overwrite:0
#: field:base.language.install,overwrite:0 #: field:base.language.install,overwrite:0
msgid "Overwrite Existing Terms" msgid "Overwrite Existing Terms"
msgstr "" msgstr "Aizstāt Esošos Nosacījumus"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_holidays #: model:ir.module.module,description:base.module_hr_holidays
@ -1054,7 +1054,7 @@ msgstr "Pieprasījuma atsauksmes tipi"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_google_base_account #: model:ir.module.module,shortdesc:base.module_google_base_account
msgid "Google Users" msgid "Google Users"
msgstr "" msgstr "Google Lietotāji"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_fleet #: model:ir.module.module,shortdesc:base.module_fleet
@ -1241,7 +1241,7 @@ msgstr ""
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
msgid "Delete Access Right" msgid "Delete Access Right"
msgstr "" msgstr "Noņemt Piekļuves Tiesības"
#. module: base #. module: base
#: code:addons/base/ir/ir_mail_server.py:212 #: code:addons/base/ir/ir_mail_server.py:212
@ -1324,7 +1324,7 @@ msgstr "Uganda"
#. module: base #. module: base
#: field:ir.model.access,perm_unlink:0 #: field:ir.model.access,perm_unlink:0
msgid "Delete Access" msgid "Delete Access"
msgstr "Dzēst piekļuvi" msgstr "Noņemt Piekļuvi"
#. module: base #. module: base
#: model:res.country,name:base.ne #: model:res.country,name:base.ne
@ -2476,7 +2476,7 @@ msgstr ""
#. module: base #. module: base
#: sql_constraint:ir.ui.view_sc:0 #: sql_constraint:ir.ui.view_sc:0
msgid "Shortcut for this menu already exists!" msgid "Shortcut for this menu already exists!"
msgstr "" msgstr "Saīsne šajā izvēlnē jau eksistē!"
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
@ -2832,7 +2832,7 @@ msgstr "Menedžeris"
#: code:addons/base/ir/ir_model.py:719 #: code:addons/base/ir/ir_model.py:719
#, python-format #, python-format
msgid "Sorry, you are not allowed to access this document." msgid "Sorry, you are not allowed to access this document."
msgstr "" msgstr "Atvainojiet, Jums nav atļauja piekļūt šim dokumentam."
#. module: base #. module: base
#: model:res.country,name:base.py #: model:res.country,name:base.py
@ -3819,7 +3819,7 @@ msgstr "Urdu valoda / اردو"
#: code:addons/orm.py:3901 #: code:addons/orm.py:3901
#, python-format #, python-format
msgid "Access Denied" msgid "Access Denied"
msgstr "" msgstr "Piekļuve Liegta"
#. module: base #. module: base
#: field:res.company,name:0 #: field:res.company,name:0
@ -4361,7 +4361,7 @@ msgstr "Izteiksme"
#. module: base #. module: base
#: view:res.company:0 #: view:res.company:0
msgid "Header/Footer" msgid "Header/Footer"
msgstr "Teksta iestarpinājumi (Augšā/Apakšā)" msgstr "Galvene/Kājene"
#. module: base #. module: base
#: help:ir.mail_server,sequence:0 #: help:ir.mail_server,sequence:0
@ -5106,7 +5106,7 @@ msgstr "Maurīcija"
#. module: base #. module: base
#: view:ir.model.access:0 #: view:ir.model.access:0
msgid "Full Access" msgid "Full Access"
msgstr "Pilna piekļuve" msgstr "Pilna Piekļuve"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_l10n_pt #: model:ir.module.module,description:base.module_l10n_pt
@ -7047,7 +7047,7 @@ msgstr ""
#. module: base #. module: base
#: field:ir.model.access,perm_create:0 #: field:ir.model.access,perm_create:0
msgid "Create Access" msgid "Create Access"
msgstr "Izveidot Pieeju" msgstr "Izveidot Piekļuvi"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_timesheet #: model:ir.module.module,description:base.module_hr_timesheet
@ -8145,7 +8145,7 @@ msgstr "base.update.translations"
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
msgid "Full Access Right" msgid "Full Access Right"
msgstr "" msgstr "Pilnas Piekļuves Tiesības"
#. module: base #. module: base
#: field:res.partner.category,parent_id:0 #: field:res.partner.category,parent_id:0
@ -9070,7 +9070,7 @@ msgstr "Zālamana Salas"
#: code:addons/orm.py:4684 #: code:addons/orm.py:4684
#, python-format #, python-format
msgid "AccessError" msgid "AccessError"
msgstr "Pieejas Kļūda" msgstr "Piekļuves Kļūda"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_web_gantt #: model:ir.module.module,description:base.module_web_gantt
@ -11613,7 +11613,7 @@ msgstr "Fed. Štati"
#: view:ir.model:0 #: view:ir.model:0
#: view:res.groups:0 #: view:res.groups:0
msgid "Access Rules" msgid "Access Rules"
msgstr "Pieejas Noteikumi" msgstr "Piekļuves Noteikumi"
#. module: base #. module: base
#: field:res.groups,trans_implied_ids:0 #: field:res.groups,trans_implied_ids:0
@ -12662,7 +12662,7 @@ msgstr "Palīdzība"
#: model:res.groups,name:base.group_erp_manager #: model:res.groups,name:base.group_erp_manager
#: view:res.users:0 #: view:res.users:0
msgid "Access Rights" msgid "Access Rights"
msgstr "Pieejas tiesības" msgstr "Piekļuves Tiesības"
#. module: base #. module: base
#: model:res.country,name:base.gl #: model:res.country,name:base.gl
@ -14330,7 +14330,7 @@ msgstr ""
#: field:ir.model,access_ids:0 #: field:ir.model,access_ids:0
#: view:ir.model.access:0 #: view:ir.model.access:0
msgid "Access" msgid "Access"
msgstr "Pieeja" msgstr "Piekļuve"
#. module: base #. module: base
#: code:addons/base/res/res_company.py:165 #: code:addons/base/res/res_company.py:165
@ -14953,7 +14953,7 @@ msgstr "Skatījuma Nosaukums"
#. module: base #. module: base
#: model:ir.model,name:base.model_res_groups #: model:ir.model,name:base.model_res_groups
msgid "Access Groups" msgid "Access Groups"
msgstr "" msgstr "Piekļuves Grupas"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0

File diff suppressed because it is too large Load Diff

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:42+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -3287,7 +3287,7 @@ msgstr "Сервер үйлдэл"
#. module: base #. module: base
#: help:ir.actions.client,params:0 #: help:ir.actions.client,params:0
msgid "Arguments sent to the client along withthe view tag" msgid "Arguments sent to the client along withthe view tag"
msgstr "Клиент рүү харах таагийн хамт илгээгдсэн аргумент" msgstr "Клиент рүү харах пайзын хамт илгээгдсэн аргумент"
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_contacts #: model:ir.module.module,summary:base.module_contacts
@ -3701,7 +3701,7 @@ msgstr ""
#. module: base #. module: base
#: field:res.company,rml_header1:0 #: field:res.company,rml_header1:0
msgid "Company Tagline" msgid "Company Tagline"
msgstr "Компаний Тэмдэглэсэн Мөр" msgstr "Компаний Пайзын Мөр"
#. module: base #. module: base
#: code:addons/base/res/res_users.py:668 #: code:addons/base/res/res_users.py:668
@ -4603,7 +4603,7 @@ msgstr "%x - Тохиромжтой огнооны дүрслэл."
#. module: base #. module: base
#: view:res.partner:0 #: view:res.partner:0
msgid "Tag" msgid "Tag"
msgstr "Тааг" msgstr "Пайз"
#. module: base #. module: base
#: view:res.lang:0 #: view:res.lang:0
@ -6231,7 +6231,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_partner_category_form #: model:ir.ui.menu,name:base.menu_partner_category_form
msgid "Partner Tags" msgid "Partner Tags"
msgstr "Харилцагчдын таагууд" msgstr "Харилцагчдын Пайзууд"
#. module: base #. module: base
#: view:res.company:0 #: view:res.company:0
@ -7582,7 +7582,7 @@ msgid ""
"and wishes. There is no central tag repository across clients." "and wishes. There is no central tag repository across clients."
msgstr "" msgstr ""
"Клиентийн өөрийн шаардлага, хүслээр орчуулагдах дурын текст. Клиентүүдийн " "Клиентийн өөрийн шаардлага, хүслээр орчуулагдах дурын текст. Клиентүүдийн "
"дундын таагийн агуулах байхгүй." "дундын пайзын агуулах байхгүй."
#. module: base #. module: base
#: sql_constraint:ir.rule:0 #: sql_constraint:ir.rule:0
@ -9401,7 +9401,7 @@ msgstr "Валютын тэмдэгт өмнө эсвэл хойно хаана
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_pad_project #: model:ir.module.module,shortdesc:base.module_pad_project
msgid "Pad on tasks" msgid "Pad on tasks"
msgstr "Даалгавар дээрх Pad" msgstr "Даалгавар дээрх хавтан"
#. module: base #. module: base
#: model:ir.model,name:base.model_base_update_translations #: model:ir.model,name:base.model_base_update_translations
@ -9769,7 +9769,7 @@ msgstr "Сайжруулсан Маршрут"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_pad #: model:ir.module.module,shortdesc:base.module_pad
msgid "Collaborative Pads" msgid "Collaborative Pads"
msgstr "Хамтын Хавчуулгууд" msgstr "Хамтын Хавтангууд"
#. module: base #. module: base
#: model:res.country,name:base.np #: model:res.country,name:base.np
@ -11496,6 +11496,8 @@ msgstr "Маркетенгийн Компанит ажил - Үзүүлэн"
msgid "" msgid ""
"Can not create Many-To-One records indirectly, import the field separately" "Can not create Many-To-One records indirectly, import the field separately"
msgstr "" msgstr ""
"Олон нь нэгтэйгээ бичлэгийг шууд бишээр үүсгэж чадахгүй, талбарыг тусд нь "
"импорт хийнэ үү."
#. module: base #. module: base
#: field:ir.cron,interval_type:0 #: field:ir.cron,interval_type:0
@ -11505,7 +11507,7 @@ msgstr "Интервал нэгж"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_portal_stock #: model:ir.module.module,shortdesc:base.module_portal_stock
msgid "Portal Stock" msgid "Portal Stock"
msgstr "" msgstr "Порталь Агуулах"
#. module: base #. module: base
#: field:workflow.activity,kind:0 #: field:workflow.activity,kind:0
@ -11543,7 +11545,7 @@ msgstr ""
#. module: base #. module: base
#: sql_constraint:ir.model.constraint:0 #: sql_constraint:ir.model.constraint:0
msgid "Constraints with the same name are unique per module." msgid "Constraints with the same name are unique per module."
msgstr "" msgstr "Ижил нэртэй хязгаарлалт модуль тус бүртээ үл давхцана."
#. module: base #. module: base
#: model:ir.module.module,description:base.module_report_intrastat #: model:ir.module.module,description:base.module_report_intrastat
@ -11586,7 +11588,7 @@ msgstr "res.request"
#. module: base #. module: base
#: field:res.partner,image_medium:0 #: field:res.partner,image_medium:0
msgid "Medium-sized image" msgid "Medium-sized image"
msgstr "" msgstr "Дунд-хэмжээт зураг"
#. module: base #. module: base
#: view:ir.model:0 #: view:ir.model:0
@ -11613,7 +11615,7 @@ msgstr "Файлын агуулга"
#: view:ir.model.relation:0 #: view:ir.model.relation:0
#: model:ir.ui.menu,name:base.ir_model_relation_menu #: model:ir.ui.menu,name:base.ir_model_relation_menu
msgid "ManyToMany Relations" msgid "ManyToMany Relations"
msgstr "" msgstr "ОлонОлонтойгоо Харицаанууд"
#. module: base #. module: base
#: model:res.country,name:base.pa #: model:res.country,name:base.pa
@ -11649,7 +11651,7 @@ msgstr "Питкэйрн арал"
#. module: base #. module: base
#: field:res.partner,category_id:0 #: field:res.partner,category_id:0
msgid "Tags" msgid "Tags"
msgstr "Таагууд" msgstr "Пайзууд"
#. module: base #. module: base
#: view:base.module.upgrade:0 #: view:base.module.upgrade:0
@ -11675,18 +11677,18 @@ msgstr "Олон компани"
#: model:ir.module.category,name:base.module_category_portal #: model:ir.module.category,name:base.module_category_portal
#: model:ir.module.module,shortdesc:base.module_portal #: model:ir.module.module,shortdesc:base.module_portal
msgid "Portal" msgid "Portal"
msgstr "" msgstr "Порталь"
#. module: base #. module: base
#: selection:ir.translation,state:0 #: selection:ir.translation,state:0
msgid "To Translate" msgid "To Translate"
msgstr "" msgstr "Орчуулах"
#. module: base #. module: base
#: code:addons/base/ir/ir_fields.py:294 #: code:addons/base/ir/ir_fields.py:294
#, python-format #, python-format
msgid "See all possible values" msgid "See all possible values"
msgstr "" msgstr "Бүх боломжит утгыг харах"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_claim_from_delivery #: model:ir.module.module,description:base.module_claim_from_delivery
@ -11721,12 +11723,12 @@ msgstr ""
#. module: base #. module: base
#: help:ir.model.constraint,name:0 #: help:ir.model.constraint,name:0
msgid "PostgreSQL constraint or foreign key name." msgid "PostgreSQL constraint or foreign key name."
msgstr "" msgstr "PostgreSQL хязгаарлалт эсвэл гадаад түлхүүрийн нэр"
#. module: base #. module: base
#: view:res.company:0 #: view:res.company:0
msgid "Click to set your company logo." msgid "Click to set your company logo."
msgstr "" msgstr "Компаний логогоо тохируулахын тулд дарна."
#. module: base #. module: base
#: view:res.lang:0 #: view:res.lang:0
@ -11747,12 +11749,12 @@ msgstr "Guinea Bissau"
#. module: base #. module: base
#: field:ir.actions.report.xml,header:0 #: field:ir.actions.report.xml,header:0
msgid "Add RML Header" msgid "Add RML Header"
msgstr "" msgstr "RML Толгой нэмэх"
#. module: base #. module: base
#: help:res.company,rml_footer:0 #: help:res.company,rml_footer:0
msgid "Footer text displayed at the bottom of all reports." msgid "Footer text displayed at the bottom of all reports."
msgstr "" msgstr "Хөлний текст нь бүх тайлангийн доод талд гарна."
#. module: base #. module: base
#: field:ir.module.module,icon:0 #: field:ir.module.module,icon:0
@ -11762,7 +11764,7 @@ msgstr "Таних Тэмдэг URL"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_note_pad #: model:ir.module.module,shortdesc:base.module_note_pad
msgid "Memos pad" msgid "Memos pad"
msgstr "" msgstr "Санамж наалт"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_pad #: model:ir.module.module,description:base.module_pad
@ -11867,7 +11869,7 @@ msgstr "Итали"
#. module: base #. module: base
#: model:res.groups,name:base.group_sale_salesman #: model:res.groups,name:base.group_sale_salesman
msgid "See Own Leads" msgid "See Own Leads"
msgstr "" msgstr "Өөрийн Сэжимийг Харах"
#. module: base #. module: base
#: view:ir.actions.todo:0 #: view:ir.actions.todo:0
@ -11878,7 +11880,7 @@ msgstr "Хийх"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_portal_hr_employees #: model:ir.module.module,shortdesc:base.module_portal_hr_employees
msgid "Portal HR employees" msgid "Portal HR employees"
msgstr "" msgstr "Порталь Хүний Нөөцийн Ажилчид"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0
@ -11906,6 +11908,8 @@ msgid ""
"Insufficient fields to generate a Calendar View for %s, missing a date_stop " "Insufficient fields to generate a Calendar View for %s, missing a date_stop "
"or a date_delay" "or a date_delay"
msgstr "" msgstr ""
"%s-д цаглабар харагдацыг үүсгэхэд талбарууд хүрэлцээтэй биш байна, date_stop "
"эсвэл date_delay"
#. module: base #. module: base
#: field:workflow.activity,action:0 #: field:workflow.activity,action:0
@ -11996,6 +12000,8 @@ msgstr ""
msgid "" msgid ""
"Please contact your system administrator if you think this is an error." "Please contact your system administrator if you think this is an error."
msgstr "" msgstr ""
"Хэрэв үүнийг алдаа гэж бодож байгаа бол системийн администратортайгаа уулзна "
"уу."
#. module: base #. module: base
#: code:addons/base/module/module.py:546 #: code:addons/base/module/module.py:546
@ -12003,7 +12009,7 @@ msgstr ""
#: model:ir.actions.act_window,name:base.action_view_base_module_upgrade #: model:ir.actions.act_window,name:base.action_view_base_module_upgrade
#, python-format #, python-format
msgid "Apply Schedule Upgrade" msgid "Apply Schedule Upgrade"
msgstr "" msgstr "Товлосон Шинэчлэлийг Хэрэгжүүлэх"
#. module: base #. module: base
#: view:workflow.activity:0 #: view:workflow.activity:0
@ -12043,11 +12049,13 @@ msgid ""
"One of the documents you are trying to access has been deleted, please try " "One of the documents you are trying to access has been deleted, please try "
"again after refreshing." "again after refreshing."
msgstr "" msgstr ""
"Танай хандах гэж байгаа ямар нэг баримт устсан байна, хуудсыг дахин ачаалаад "
"үзнэ үү."
#. module: base #. module: base
#: model:ir.model,name:base.model_ir_mail_server #: model:ir.model,name:base.model_ir_mail_server
msgid "ir.mail_server" msgid "ir.mail_server"
msgstr "" msgstr "ir.mail_server"
#. module: base #. module: base
#: selection:base.language.install,lang:0 #: selection:base.language.install,lang:0
@ -12138,7 +12146,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_sale_stock #: model:ir.module.module,shortdesc:base.module_sale_stock
msgid "Sales and Warehouse Management" msgid "Sales and Warehouse Management"
msgstr "" msgstr "Борлуулалт болон Агуулахын Менежмент"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_hr_recruitment #: model:ir.module.module,description:base.module_hr_recruitment
@ -12226,7 +12234,7 @@ msgstr "Martinique (French)"
#. module: base #. module: base
#: help:res.partner,is_company:0 #: help:res.partner,is_company:0
msgid "Check if the contact is a company, otherwise it is a person" msgid "Check if the contact is a company, otherwise it is a person"
msgstr "" msgstr "Хэрэв хаяг нь компани бол тэмдэглэнэ үү, үгүй бол энэ нь хүн байна"
#. module: base #. module: base
#: view:ir.sequence.type:0 #: view:ir.sequence.type:0
@ -12236,13 +12244,13 @@ msgstr "Дарааллын төрөл"
#. module: base #. module: base
#: view:res.partner:0 #: view:res.partner:0
msgid "Mobile:" msgid "Mobile:"
msgstr "" msgstr "Гар утас:"
#. module: base #. module: base
#: code:addons/base/res/res_bank.py:195 #: code:addons/base/res/res_bank.py:195
#, python-format #, python-format
msgid "Formating Error" msgid "Formating Error"
msgstr "" msgstr "Форматын Алдаа"
#. module: base #. module: base
#: model:res.country,name:base.ye #: model:res.country,name:base.ye
@ -12311,7 +12319,7 @@ msgstr ""
#: code:addons/base/ir/ir_model.py:1024 #: code:addons/base/ir/ir_model.py:1024
#, python-format #, python-format
msgid "Permission Denied" msgid "Permission Denied"
msgstr "" msgstr "Зөвшөөрөл татгалзагдсан"
#. module: base #. module: base
#: field:ir.ui.menu,child_id:0 #: field:ir.ui.menu,child_id:0
@ -12461,7 +12469,7 @@ msgstr "ажлын урсгал"
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
msgid "Read Access Right" msgid "Read Access Right"
msgstr "" msgstr "Унших Хандалтын Эрх"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_analytic_user_function #: model:ir.module.module,shortdesc:base.module_analytic_user_function
@ -12511,13 +12519,13 @@ msgstr "Араб / الْعَرَبيّة"
#. module: base #. module: base
#: selection:ir.translation,state:0 #: selection:ir.translation,state:0
msgid "Translated" msgid "Translated"
msgstr "" msgstr "Орчуулсан"
#. module: base #. module: base
#: model:ir.actions.act_window,name:base.action_inventory_form #: model:ir.actions.act_window,name:base.action_inventory_form
#: model:ir.ui.menu,name:base.menu_action_inventory_form #: model:ir.ui.menu,name:base.menu_action_inventory_form
msgid "Default Company per Object" msgid "Default Company per Object"
msgstr "" msgstr "Объектуудын үндсэн компани"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_web_hello #: model:ir.module.module,shortdesc:base.module_web_hello
@ -12547,7 +12555,7 @@ msgstr "Домэйн"
#: code:addons/base/ir/ir_fields.py:166 #: code:addons/base/ir/ir_fields.py:166
#, python-format #, python-format
msgid "Use '1' for yes and '0' for no" msgid "Use '1' for yes and '0' for no"
msgstr "" msgstr "Тийм гэдэгт '1', үгүй гэдэгт'0' гэж хэрэглэнэ"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_marketing_campaign #: model:ir.module.module,shortdesc:base.module_marketing_campaign
@ -12562,13 +12570,14 @@ msgstr "Мужын нэр"
#. module: base #. module: base
#: help:ir.attachment,type:0 #: help:ir.attachment,type:0
msgid "Binary File or URL" msgid "Binary File or URL"
msgstr "" msgstr "Хоёртын файл эсвэл URL"
#. module: base #. module: base
#: code:addons/base/ir/ir_fields.py:313 #: code:addons/base/ir/ir_fields.py:313
#, python-format #, python-format
msgid "Invalid database id '%s' for the field '%%(field)s'" msgid "Invalid database id '%s' for the field '%%(field)s'"
msgstr "" msgstr ""
"Өгөгдлийн баазын '%s' гэсэн id нь дараах талбарыг хувьд буруу '%%(field)s'"
#. module: base #. module: base
#: view:res.lang:0 #: view:res.lang:0
@ -12740,7 +12749,7 @@ msgstr "Гренада"
#. module: base #. module: base
#: help:res.partner,customer:0 #: help:res.partner,customer:0
msgid "Check this box if this contact is a customer." msgid "Check this box if this contact is a customer."
msgstr "" msgstr "Хэрэв холбогч нь захиалагч бол үүнийг тэмдэглэ"
#. module: base #. module: base
#: view:ir.actions.server:0 #: view:ir.actions.server:0
@ -12776,7 +12785,7 @@ msgstr ""
#. module: base #. module: base
#: field:res.users,partner_id:0 #: field:res.users,partner_id:0
msgid "Related Partner" msgid "Related Partner"
msgstr "" msgstr "Холбогдох харилцагч"
#. module: base #. module: base
#: code:addons/osv.py:153 #: code:addons/osv.py:153
@ -12813,13 +12822,13 @@ msgstr "Үйлдвэрлэлийн Үйлдлүүд"
#. module: base #. module: base
#: view:base.language.export:0 #: view:base.language.export:0
msgid "Here is the exported translation file:" msgid "Here is the exported translation file:"
msgstr "" msgstr "Энэ нь экспортлогдсон орчуулгын файл:"
#. module: base #. module: base
#: field:ir.actions.report.xml,report_rml_content:0 #: field:ir.actions.report.xml,report_rml_content:0
#: field:ir.actions.report.xml,report_rml_content_data:0 #: field:ir.actions.report.xml,report_rml_content_data:0
msgid "RML Content" msgid "RML Content"
msgstr "" msgstr "RML агуулга"
#. module: base #. module: base
#: view:res.lang:0 #: view:res.lang:0
@ -12970,7 +12979,7 @@ msgstr "A4"
#. module: base #. module: base
#: view:res.config.installer:0 #: view:res.config.installer:0
msgid "Configuration Installer" msgid "Configuration Installer"
msgstr "" msgstr "Суулгагчийн Тохируулга"
#. module: base #. module: base
#: field:res.partner,customer:0 #: field:res.partner,customer:0
@ -12990,6 +12999,10 @@ msgid ""
"===================================================\n" "===================================================\n"
" " " "
msgstr "" msgstr ""
"\n"
"Энэ модуль н бүх төслийн канбан харагдацад ХАВТАНг нэмдэг.\n"
"===================================================\n"
" "
#. module: base #. module: base
#: field:ir.actions.act_window,context:0 #: field:ir.actions.act_window,context:0
@ -13010,7 +13023,7 @@ msgstr "Гүйцэтгэх дараагийн огноо"
#. module: base #. module: base
#: field:ir.sequence,padding:0 #: field:ir.sequence,padding:0
msgid "Number Padding" msgid "Number Padding"
msgstr "Тоон дугаарын урт" msgstr "Тоон дугаарын гүйцээлт"
#. module: base #. module: base
#: help:multi_company.default,field_id:0 #: help:multi_company.default,field_id:0
@ -13060,13 +13073,13 @@ msgstr ""
#. module: base #. module: base
#: model:ir.model,name:base.model_ir_fields_converter #: model:ir.model,name:base.model_ir_fields_converter
msgid "ir.fields.converter" msgid "ir.fields.converter"
msgstr "" msgstr "ir.fields.converter"
#. module: base #. module: base
#: code:addons/base/res/res_partner.py:439 #: code:addons/base/res/res_partner.py:439
#, python-format #, python-format
msgid "Couldn't create contact without email address !" msgid "Couldn't create contact without email address !"
msgstr "" msgstr "Имэйл хаяггүй холбогчийг үүсгэж чадсангүй !"
#. module: base #. module: base
#: model:ir.module.category,name:base.module_category_manufacturing #: model:ir.module.category,name:base.module_category_manufacturing
@ -13088,12 +13101,12 @@ msgstr "Суулгахыг болих"
#. module: base #. module: base
#: model:ir.model,name:base.model_ir_model_relation #: model:ir.model,name:base.model_ir_model_relation
msgid "ir.model.relation" msgid "ir.model.relation"
msgstr "" msgstr "ir.model.relation"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_account_check_writing #: model:ir.module.module,shortdesc:base.module_account_check_writing
msgid "Check Writing" msgid "Check Writing"
msgstr "" msgstr "Чек Бичих"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_plugin_outlook #: model:ir.module.module,description:base.module_plugin_outlook
@ -13328,7 +13341,7 @@ msgstr "UK - Санхүү"
#. module: base #. module: base
#: model:res.partner.title,shortcut:base.res_partner_title_madam #: model:res.partner.title,shortcut:base.res_partner_title_madam
msgid "Mrs." msgid "Mrs."
msgstr "" msgstr "Хатагтай"
#. module: base #. module: base
#: code:addons/base/ir/ir_model.py:426 #: code:addons/base/ir/ir_model.py:426
@ -13349,7 +13362,7 @@ msgstr "Хэрэглэгч дугаар."
#: code:addons/base/ir/ir_fields.py:226 #: code:addons/base/ir/ir_fields.py:226
#, python-format #, python-format
msgid "'%s' does not seem to be a valid datetime for field '%%(field)s'" msgid "'%s' does not seem to be a valid datetime for field '%%(field)s'"
msgstr "" msgstr "'%s' нь '%%(field)s' энэ талбар зөв биш огноо шиг байх юм"
#. module: base #. module: base
#: model:res.partner.bank.type.field,name:base.bank_normal_field_bic #: model:res.partner.bank.type.field,name:base.bank_normal_field_bic
@ -13413,6 +13426,8 @@ msgstr ""
msgid "" msgid ""
"Please make sure no workitems refer to an activity before deleting it!" "Please make sure no workitems refer to an activity before deleting it!"
msgstr "" msgstr ""
"Ажлын зүйлүүд нь үйл ажиллагаатай холбогдохгүй байгаа явдлыг устгахаасаа "
"өмнө нягтална уу!"
#. module: base #. module: base
#: model:res.country,name:base.tr #: model:res.country,name:base.tr
@ -13495,7 +13510,7 @@ msgstr "Холболтын Мэдээлэл"
#. module: base #. module: base
#: model:res.partner.title,name:base.res_partner_title_prof #: model:res.partner.title,name:base.res_partner_title_prof
msgid "Professor" msgid "Professor"
msgstr "" msgstr "Профессор"
#. module: base #. module: base
#: model:res.country,name:base.hm #: model:res.country,name:base.hm
@ -13524,7 +13539,7 @@ msgstr "Үнийн санал, борлуулалтын захиалга, нэх
#. module: base #. module: base
#: field:res.users,login_date:0 #: field:res.users,login_date:0
msgid "Latest connection" msgid "Latest connection"
msgstr "" msgstr "Сүүлчийн холболт"
#. module: base #. module: base
#: field:res.groups,implied_ids:0 #: field:res.groups,implied_ids:0
@ -13610,7 +13625,7 @@ msgstr "Хос"
#. module: base #. module: base
#: model:res.partner.title,name:base.res_partner_title_doctor #: model:res.partner.title,name:base.res_partner_title_doctor
msgid "Doctor" msgid "Doctor"
msgstr "" msgstr "Доктор"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_mrp_repair #: model:ir.module.module,description:base.module_mrp_repair
@ -13679,7 +13694,7 @@ msgstr "Валютууд"
#. module: base #. module: base
#: model:res.partner.category,name:base.res_partner_category_8 #: model:res.partner.category,name:base.res_partner_category_8
msgid "Consultancy Services" msgid "Consultancy Services"
msgstr "" msgstr "Зөвлөх Үйлчилгээнүүд"
#. module: base #. module: base
#: help:ir.values,value:0 #: help:ir.values,value:0
@ -13689,7 +13704,7 @@ msgstr "Анхны утга (pickled - дарсан) эсвэл сурвалж
#. module: base #. module: base
#: field:ir.actions.report.xml,auto:0 #: field:ir.actions.report.xml,auto:0
msgid "Custom Python Parser" msgid "Custom Python Parser"
msgstr "" msgstr "Өөриймшүүлсэн Python задлагч"
#. module: base #. module: base
#: sql_constraint:res.groups:0 #: sql_constraint:res.groups:0
@ -13699,7 +13714,7 @@ msgstr "Группын нэр давхардах ёсгүй !"
#. module: base #. module: base
#: help:ir.translation,module:0 #: help:ir.translation,module:0
msgid "Module this term belongs to" msgid "Module this term belongs to"
msgstr "" msgstr "Энэ нэр томъёо харъяалагдах модуль"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_web_view_editor #: model:ir.module.module,description:base.module_web_view_editor
@ -13710,6 +13725,11 @@ msgid ""
"\n" "\n"
" " " "
msgstr "" msgstr ""
"\n"
"Харагдац засварлах OpenERP Web.\n"
"==========================\n"
"\n"
" "
#. module: base #. module: base
#: view:ir.sequence:0 #: view:ir.sequence:0
@ -13789,7 +13809,7 @@ msgstr "Бэлтгэн нийлүүлэлт"
#. module: base #. module: base
#: model:res.partner.category,name:base.res_partner_category_6 #: model:res.partner.category,name:base.res_partner_category_6
msgid "Bronze" msgid "Bronze"
msgstr "" msgstr "Хүрэл"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_hr_payroll_account #: model:ir.module.module,shortdesc:base.module_hr_payroll_account
@ -13819,7 +13839,7 @@ msgstr "Үүсгэсэн сар"
#. module: base #. module: base
#: field:ir.module.module,demo:0 #: field:ir.module.module,demo:0
msgid "Demo Data" msgid "Demo Data"
msgstr "" msgstr "Жишээ өгөгдөл"
#. module: base #. module: base
#: model:res.partner.title,shortcut:base.res_partner_title_mister #: model:res.partner.title,shortcut:base.res_partner_title_mister
@ -13854,7 +13874,7 @@ msgstr "Хаягийн формат"
#. module: base #. module: base
#: model:ir.model,name:base.model_change_password_user #: model:ir.model,name:base.model_change_password_user
msgid "Change Password Wizard User" msgid "Change Password Wizard User"
msgstr "" msgstr "Хэрэглэгчийн Нууц үг солих харилцах цонх"
#. module: base #. module: base
#: model:res.groups,name:base.group_no_one #: model:res.groups,name:base.group_no_one
@ -14177,7 +14197,7 @@ msgstr "Миний баримтуудыг шүүх"
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_project_gtd #: model:ir.module.module,summary:base.module_project_gtd
msgid "Personal Tasks, Contexts, Timeboxes" msgid "Personal Tasks, Contexts, Timeboxes"
msgstr "" msgstr "Хувийн Даалгаврууд, Агуулгууд, Хугацааны хайрцагууд"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_l10n_cr #: model:ir.module.module,description:base.module_l10n_cr
@ -14225,7 +14245,7 @@ msgstr "Габон"
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_stock #: model:ir.module.module,summary:base.module_stock
msgid "Inventory, Logistic, Storage" msgid "Inventory, Logistic, Storage"
msgstr "" msgstr "Бараа материал, Логистик, Хадгалалт"
#. module: base #. module: base
#: view:ir.actions.act_window:0 #: view:ir.actions.act_window:0
@ -14289,7 +14309,7 @@ msgstr "Кипр"
#. module: base #. module: base
#: field:res.users,new_password:0 #: field:res.users,new_password:0
msgid "Set Password" msgid "Set Password"
msgstr "" msgstr "Нууц үг тааруулах"
#. module: base #. module: base
#: field:ir.actions.server,subject:0 #: field:ir.actions.server,subject:0
@ -14358,7 +14378,7 @@ msgstr "Энэ ажлыг боловсруулахын тулд дуудагда
#. module: base #. module: base
#: field:ir.actions.client,tag:0 #: field:ir.actions.client,tag:0
msgid "Client action tag" msgid "Client action tag"
msgstr "Клиентийн үйлдлийн тааг" msgstr "Клиентийн үйлдлийн пайз"
#. module: base #. module: base
#: field:ir.values,model_id:0 #: field:ir.values,model_id:0
@ -14421,7 +14441,7 @@ msgstr "Гарах Мэйлийн Сервер"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_custom #: model:ir.ui.menu,name:base.menu_custom
msgid "Technical" msgid "Technical"
msgstr "" msgstr "Техникийн"
#. module: base #. module: base
#: model:res.country,name:base.cn #: model:res.country,name:base.cn
@ -14606,6 +14626,9 @@ msgid ""
"128x128px image, with aspect ratio preserved. Use this field in form views " "128x128px image, with aspect ratio preserved. Use this field in form views "
"or some kanban views." "or some kanban views."
msgstr "" msgstr ""
"Энэ холбогчийн дунд хэмжээт зураг. Энэ автоматаар 128x128 цэг хэмжээтэй "
"болох бөгөөд харьцаа хадгалагдана. Энэ талбарыг маягт харагдац, канбан "
"харагдац зэрэгт хэрэглэнэ үү."
#. module: base #. module: base
#: view:base.update.translations:0 #: view:base.update.translations:0
@ -14644,7 +14667,7 @@ msgstr "Эхлүүлэх үйлдэл"
#: field:ir.model,modules:0 #: field:ir.model,modules:0
#: field:ir.model.fields,modules:0 #: field:ir.model.fields,modules:0
msgid "In Modules" msgid "In Modules"
msgstr "" msgstr "Модулиуд дотор"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_contacts #: model:ir.module.module,shortdesc:base.module_contacts
@ -14748,7 +14771,7 @@ msgstr "Зайрэ"
#. module: base #. module: base
#: model:ir.module.module,summary:base.module_project #: model:ir.module.module,summary:base.module_project
msgid "Projects, Tasks" msgid "Projects, Tasks"
msgstr "" msgstr "Төслүүд, Даалгаврууд"
#. module: base #. module: base
#: field:ir.attachment,res_id:0 #: field:ir.attachment,res_id:0
@ -14837,6 +14860,8 @@ msgid ""
"The user this filter is private to. When left empty the filter is public and " "The user this filter is private to. When left empty the filter is public and "
"available to all users." "available to all users."
msgstr "" msgstr ""
"Энэ шүүлтүүрийг хувьдаа хэрэглэх хэрэглэгч. Хэрэв хоосон бол шүүлтүүр "
"нийтийнх бөгөөд бүх хэрэглэгч хэрэглэнэ."
#. module: base #. module: base
#: field:ir.actions.act_window,auto_refresh:0 #: field:ir.actions.act_window,auto_refresh:0
@ -14876,7 +14901,7 @@ msgstr "osv_memory талбарыг зөвхөн = эсвэл != операто
#. module: base #. module: base
#: view:res.partner:0 #: view:res.partner:0
msgid "Fax:" msgid "Fax:"
msgstr "" msgstr "Факс :"
#. module: base #. module: base
#: selection:ir.ui.view,type:0 #: selection:ir.ui.view,type:0
@ -15060,7 +15085,7 @@ msgstr "Зорилтат үйл ажиллагаа."
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_project_issue #: model:ir.module.module,shortdesc:base.module_project_issue
msgid "Issue Tracker" msgid "Issue Tracker"
msgstr "" msgstr "Асуудал Хөтлөгч"
#. module: base #. module: base
#: view:base.module.update:0 #: view:base.module.update:0
@ -15636,12 +15661,12 @@ msgstr "Валютын ханш"
#: view:base.module.upgrade:0 #: view:base.module.upgrade:0
#: field:base.module.upgrade,module_info:0 #: field:base.module.upgrade,module_info:0
msgid "Modules to Update" msgid "Modules to Update"
msgstr "" msgstr "Шинэчлэх Модулиуд"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_custom_multicompany #: model:ir.ui.menu,name:base.menu_custom_multicompany
msgid "Multi-Companies" msgid "Multi-Companies"
msgstr "" msgstr "Олон-Компаниуд"
#. module: base #. module: base
#: field:workflow,osv:0 #: field:workflow,osv:0
@ -15723,7 +15748,7 @@ msgstr "Үйлдлийн хэрэглээ"
#. module: base #. module: base
#: field:ir.module.module,name:0 #: field:ir.module.module,name:0
msgid "Technical Name" msgid "Technical Name"
msgstr "" msgstr "Техникийн нэр"
#. module: base #. module: base
#: model:ir.model,name:base.model_workflow_workitem #: model:ir.model,name:base.model_workflow_workitem
@ -15797,7 +15822,7 @@ msgstr "Вебийн Таних Тэмдэгийн Файл"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_view_base_module_upgrade #: model:ir.ui.menu,name:base.menu_view_base_module_upgrade
msgid "Apply Scheduled Upgrades" msgid "Apply Scheduled Upgrades"
msgstr "Товлосон шинэчлэлтийг эхлүүлэх" msgstr "Товлосон Шинэчлэлтийг Хэрэгжүүлэх"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_sale_journal #: model:ir.module.module,shortdesc:base.module_sale_journal
@ -16267,7 +16292,7 @@ msgstr "Идэвхтэй цонх"
#: model:ir.module.category,name:base.module_category_hidden #: model:ir.module.category,name:base.module_category_hidden
#: view:res.users:0 #: view:res.users:0
msgid "Technical Settings" msgid "Technical Settings"
msgstr "" msgstr "Техникийн Тохиргоонууд"
#. module: base #. module: base
#: model:ir.module.category,description:base.module_category_accounting_and_finance #: model:ir.module.category,description:base.module_category_accounting_and_finance
@ -16563,7 +16588,7 @@ msgstr "Нөхцөл"
#: model:ir.actions.client,name:base.modules_updates_act_cl #: model:ir.actions.client,name:base.modules_updates_act_cl
#: model:ir.ui.menu,name:base.menu_module_updates #: model:ir.ui.menu,name:base.menu_module_updates
msgid "Updates" msgid "Updates"
msgstr "" msgstr "Шинэчлэлүүд"
#. module: base #. module: base
#: help:res.currency,rate:0 #: help:res.currency,rate:0
@ -16775,7 +16800,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_module_tree #: model:ir.ui.menu,name:base.menu_module_tree
msgid "Installed Modules" msgid "Installed Modules"
msgstr "" msgstr "Суулгасан Модулиуд"
#. module: base #. module: base
#: code:addons/base/res/res_users.py:170 #: code:addons/base/res/res_users.py:170

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:42+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:39+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:37+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -5860,7 +5860,7 @@ msgstr "%w - Weekdag nummer [0(Zondag),6]."
#: field:ir.attachment,res_name:0 #: field:ir.attachment,res_name:0
#: field:ir.ui.view_sc,resource:0 #: field:ir.ui.view_sc,resource:0
msgid "Resource Name" msgid "Resource Name"
msgstr "Naam bron" msgstr "Resourcenaam"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_ir_filters #: model:ir.ui.menu,name:base.menu_ir_filters
@ -7851,7 +7851,7 @@ msgstr "Volgend nummer in deze reeks"
#. module: base #. module: base
#: view:res.partner:0 #: view:res.partner:0
msgid "at" msgid "at"
msgstr "op" msgstr "bij"
#. module: base #. module: base
#: view:ir.rule:0 #: view:ir.rule:0
@ -7925,7 +7925,7 @@ msgstr "Wachtwoord"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_portal_claim #: model:ir.module.module,shortdesc:base.module_portal_claim
msgid "Portal Claim" msgid "Portal Claim"
msgstr "Klachten portaat" msgstr "Klachten portaal"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_pe #: model:ir.module.module,shortdesc:base.module_l10n_pe
@ -9480,7 +9480,7 @@ msgstr "Magazijn"
#: model:ir.module.module,shortdesc:base.module_resource #: model:ir.module.module,shortdesc:base.module_resource
#: field:ir.property,res_id:0 #: field:ir.property,res_id:0
msgid "Resource" msgid "Resource"
msgstr "Bron" msgstr "Resource"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_process #: model:ir.module.module,description:base.module_process
@ -11518,7 +11518,7 @@ msgstr "Methode samenvoeging"
#. module: base #. module: base
#: field:res.partner,tz:0 #: field:res.partner,tz:0
msgid "Timezone" msgid "Timezone"
msgstr "Tijdszone" msgstr "Tijdzone"
#. module: base #. module: base
#: model:ir.model,name:base.model_ir_actions_report_xml #: model:ir.model,name:base.model_ir_actions_report_xml
@ -11938,7 +11938,7 @@ msgstr "Volgende uitvoeringsdatum"
#. module: base #. module: base
#: field:ir.sequence,padding:0 #: field:ir.sequence,padding:0
msgid "Number Padding" msgid "Number Padding"
msgstr "Nummer verspringing" msgstr "Vaste nummerlengte"
#. module: base #. module: base
#: help:multi_company.default,field_id:0 #: help:multi_company.default,field_id:0
@ -13677,7 +13677,7 @@ msgstr "Projecten en projecttaken"
#: field:workflow.instance,res_id:0 #: field:workflow.instance,res_id:0
#: field:workflow.triggers,res_id:0 #: field:workflow.triggers,res_id:0
msgid "Resource ID" msgid "Resource ID"
msgstr "Bron ID" msgstr "Resource ID"
#. module: base #. module: base
#: view:ir.cron:0 #: view:ir.cron:0
@ -14581,7 +14581,7 @@ msgstr "Filiaalbedrijven"
#: view:workflow.instance:0 #: view:workflow.instance:0
#: field:workflow.instance,res_type:0 #: field:workflow.instance,res_type:0
msgid "Resource Object" msgid "Resource Object"
msgstr "Bronobject" msgstr "Resource object"
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_crm_helpdesk #: model:ir.module.module,shortdesc:base.module_crm_helpdesk

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:46+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:43+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:43+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:44+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:43+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:43+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:41+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:44+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:42+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:44+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:42+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:37+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:36+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:43+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:42+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:47+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:46+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:44+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:42+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:44+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:44+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing
@ -640,7 +640,7 @@ msgstr "Kolombiya"
#. module: base #. module: base
#: model:res.partner.title,name:base.res_partner_title_mister #: model:res.partner.title,name:base.res_partner_title_mister
msgid "Mister" msgid "Mister"
msgstr "" msgstr "Bay"
#. module: base #. module: base
#: help:res.country,code:0 #: help:res.country,code:0
@ -682,7 +682,7 @@ msgstr ""
#. module: base #. module: base
#: field:res.company,logo_web:0 #: field:res.company,logo_web:0
msgid "Logo Web" msgid "Logo Web"
msgstr "" msgstr "Logo Web"
#. module: base #. module: base
#: code:addons/base/ir/ir_model.py:339 #: code:addons/base/ir/ir_model.py:339
@ -1780,7 +1780,7 @@ msgstr ""
#. module: base #. module: base
#: model:ir.module.module,shortdesc:base.module_portal_project_issue #: model:ir.module.module,shortdesc:base.module_portal_project_issue
msgid "Portal Issue" msgid "Portal Issue"
msgstr "" msgstr "Portal Sorunu"
#. module: base #. module: base
#: model:ir.ui.menu,name:base.menu_tools #: model:ir.ui.menu,name:base.menu_tools

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:47+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:45+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:43+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2013-02-17 04:46+0000\n" "X-Launchpad-Export-Date: 2013-03-06 05:45+0000\n"
"X-Generator: Launchpad (build 16491)\n" "X-Generator: Launchpad (build 16514)\n"
#. module: base #. module: base
#: model:ir.module.module,description:base.module_account_check_writing #: model:ir.module.module,description:base.module_account_check_writing

View File

@ -243,7 +243,7 @@ class act_window(osv.osv):
def _search_view(self, cr, uid, ids, name, arg, context=None): def _search_view(self, cr, uid, ids, name, arg, context=None):
res = {} res = {}
for act in self.browse(cr, uid, ids, context=context): for act in self.browse(cr, uid, ids, context=context):
field_get = self.pool.get(act.res_model).fields_view_get(cr, uid, field_get = self.pool[act.res_model].fields_view_get(cr, uid,
act.search_view_id and act.search_view_id.id or False, act.search_view_id and act.search_view_id.id or False,
'search', context=context) 'search', context=context)
res[act.id] = str(field_get) res[act.id] = str(field_get)
@ -828,7 +828,7 @@ Launch Manually Once: after having been launched manually, it sets automatically
act_type = self.pool.get('ir.actions.actions').read(cr, uid, wizard.action_id.id, ['type'], context=context) act_type = self.pool.get('ir.actions.actions').read(cr, uid, wizard.action_id.id, ['type'], context=context)
res = self.pool.get(act_type['type']).read(cr, uid, wizard.action_id.id, [], context=context) res = self.pool.get(act_type['type']).read(cr, uid, wizard.action_id.id, [], context=context)
if act_type<>'ir.actions.act_window': if act_type['type'] != 'ir.actions.act_window':
return res return res
res.setdefault('context','{}') res.setdefault('context','{}')
res['nodestroy'] = True res['nodestroy'] = True

View File

@ -933,13 +933,6 @@ class ir_model_data(osv.osv):
elif res_id: elif res_id:
model_obj.write(cr, uid, [res_id], values, context=context) model_obj.write(cr, uid, [res_id], values, context=context)
if xml_id: if xml_id:
self.create(cr, uid, {
'name': xml_id,
'model': model,
'module':module,
'res_id':res_id,
'noupdate': noupdate,
},context=context)
if model_obj._inherits: if model_obj._inherits:
for table in model_obj._inherits: for table in model_obj._inherits:
inherit_id = model_obj.browse(cr, uid, inherit_id = model_obj.browse(cr, uid,
@ -951,17 +944,17 @@ class ir_model_data(osv.osv):
'res_id': inherit_id.id, 'res_id': inherit_id.id,
'noupdate': noupdate, 'noupdate': noupdate,
},context=context) },context=context)
self.create(cr, uid, {
'name': xml_id,
'model': model,
'module':module,
'res_id':res_id,
'noupdate': noupdate,
},context=context)
else: else:
if mode=='init' or (mode=='update' and xml_id): if mode=='init' or (mode=='update' and xml_id):
res_id = model_obj.create(cr, uid, values, context=context) res_id = model_obj.create(cr, uid, values, context=context)
if xml_id: if xml_id:
self.create(cr, uid, {
'name': xml_id,
'model': model,
'module': module,
'res_id': res_id,
'noupdate': noupdate
},context=context)
if model_obj._inherits: if model_obj._inherits:
for table in model_obj._inherits: for table in model_obj._inherits:
inherit_id = model_obj.browse(cr, uid, inherit_id = model_obj.browse(cr, uid,
@ -973,6 +966,13 @@ class ir_model_data(osv.osv):
'res_id': inherit_id.id, 'res_id': inherit_id.id,
'noupdate': noupdate, 'noupdate': noupdate,
},context=context) },context=context)
self.create(cr, uid, {
'name': xml_id,
'model': model,
'module': module,
'res_id': res_id,
'noupdate': noupdate
},context=context)
if xml_id and res_id: if xml_id and res_id:
self.loads[(module, xml_id)] = (model, res_id) self.loads[(module, xml_id)] = (model, res_id)
for table, inherit_field in model_obj._inherits.iteritems(): for table, inherit_field in model_obj._inherits.iteritems():
@ -1060,6 +1060,14 @@ class ir_model_data(osv.osv):
if set(external_ids)-ids_set: if set(external_ids)-ids_set:
# if other modules have defined this record, we must not delete it # if other modules have defined this record, we must not delete it
continue continue
if model == 'ir.model.fields':
# Don't remove the LOG_ACCESS_COLUMNS unless _log_access
# has been turned off on the model.
field = self.pool.get(model).browse(cr, uid, [res_id], context=context)[0]
if field.name in openerp.osv.orm.LOG_ACCESS_COLUMNS and self.pool[field.model]._log_access:
continue
if field.name == 'id':
continue
_logger.info('Deleting %s@%s', res_id, model) _logger.info('Deleting %s@%s', res_id, model)
try: try:
cr.execute('SAVEPOINT record_unlink_save') cr.execute('SAVEPOINT record_unlink_save')

View File

@ -557,7 +557,10 @@ class res_config_settings(osv.osv_memory):
'params': {'modules': to_install_missing_names}, 'params': {'modules': to_install_missing_names},
} }
config = self.pool.get('res.config').next(cr, uid, [], context=context) or {} # After the uninstall/install calls, the self.pool is no longer valid.
# So we reach into the RegistryManager directly.
res_config = openerp.modules.registry.RegistryManager.get(cr.dbname)['res.config']
config = res_config.next(cr, uid, [], context=context) or {}
if config.get('type') not in ('ir.actions.act_window_close',): if config.get('type') not in ('ir.actions.act_window_close',):
return config return config
@ -612,7 +615,7 @@ class res_config_settings(osv.osv_memory):
""" """
Fetch the human readable name of a specified configuration option. Fetch the human readable name of a specified configuration option.
:param string full_field_name: the full name of the field, structured as follows: :param string full_field_name: the full name of the field, structured as follows:
model_name.field_name (e.g.: "sale.config.settings.fetchmail_lead") model_name.field_name (e.g.: "sale.config.settings.fetchmail_lead")
:return string: human readable name of the field (e.g.: "Create leads from incoming mails") :return string: human readable name of the field (e.g.: "Create leads from incoming mails")
""" """
@ -622,7 +625,7 @@ class res_config_settings(osv.osv_memory):
def get_config_warning(self, cr, msg, context=None): def get_config_warning(self, cr, msg, context=None):
""" """
Helper: return a Warning exception with the given message where the %(field:xxx)s Helper: return a Warning exception with the given message where the %(field:xxx)s
and/or %(menu:yyy)s are replaced by the human readable field's name and/or menuitem's and/or %(menu:yyy)s are replaced by the human readable field's name and/or menuitem's
full path. full path.
@ -639,6 +642,14 @@ class res_config_settings(osv.osv_memory):
This will return an exception containing the following message: This will return an exception containing the following message:
Error: this action is prohibited. You should check the field Create leads from incoming mails in Settings/Configuration/Sales. Error: this action is prohibited. You should check the field Create leads from incoming mails in Settings/Configuration/Sales.
What if there is another substitution in the message already?
-------------------------------------------------------------
You could have a situation where the error message you want to upgrade already contains a substitution. Example:
Cannot find any account journal of %s type for this company.\n\nYou can create one in the menu: \nConfiguration\Journals\Journals.
What you want to do here is simply to replace the path by %menu:account.menu_account_config)s, and leave the rest alone.
In order to do that, you can use the double percent (%%) to escape your new substitution, like so:
Cannot find any account journal of %s type for this company.\n\nYou can create one in the %%(menu:account.menu_account_config)s.
""" """
res_config_obj = pooler.get_pool(cr.dbname).get('res.config.settings') res_config_obj = pooler.get_pool(cr.dbname).get('res.config.settings')

View File

@ -77,7 +77,7 @@ addresses belonging to this country.\n\nYou can use the python-style string pate
context=context) context=context)
def write(self, cursor, user, ids, vals, context=None): def write(self, cursor, user, ids, vals, context=None):
if 'code' in vals: if vals.get('code', False):
vals['code'] = vals['code'].upper() vals['code'] = vals['code'].upper()
return super(Country, self).write(cursor, user, ids, vals, return super(Country, self).write(cursor, user, ids, vals,
context=context) context=context)

View File

@ -87,7 +87,7 @@
<field name="city">Wavre</field> <field name="city">Wavre</field>
<field name="zip">1300</field> <field name="zip">1300</field>
<field name="country_id" ref="base.be"/> <field name="country_id" ref="base.be"/>
<field name="street">69 rue de Chimay</field> <field name="street">69 rue de Namur</field>
<field name="email">info@agrolait.com</field> <field name="email">info@agrolait.com</field>
<field name="phone">+32 10 588 558</field> <field name="phone">+32 10 588 558</field>
<field name="website">www.agrolait.com</field> <field name="website">www.agrolait.com</field>

View File

@ -269,7 +269,8 @@
<page string="Sales &amp; Purchases"> <page string="Sales &amp; Purchases">
<group> <group>
<group> <group>
<field name="user_id"/> <field name="user_id"
context="{'default_groups_ref': ['base.group_partner_manager']}"/>
<field name="company_id" groups="base.group_multi_company" widget="selection"/> <field name="company_id" groups="base.group_multi_company" widget="selection"/>
</group> </group>
<group> <group>

View File

@ -744,6 +744,7 @@ class users_view(osv.osv):
def create(self, cr, uid, values, context=None): def create(self, cr, uid, values, context=None):
self._set_reified_groups(values) self._set_reified_groups(values)
return super(users_view, self).create(cr, uid, values, context) return super(users_view, self).create(cr, uid, values, context)
def write(self, cr, uid, ids, values, context=None): def write(self, cr, uid, ids, values, context=None):
@ -782,6 +783,21 @@ class users_view(osv.osv):
fields1 = (fields + ['groups_id']) if group_fields else fields fields1 = (fields + ['groups_id']) if group_fields else fields
values = super(users_view, self).default_get(cr, uid, fields1, context) values = super(users_view, self).default_get(cr, uid, fields1, context)
self._get_reified_groups(group_fields, values) self._get_reified_groups(group_fields, values)
# add "default_groups_ref" inside the context to set default value for group_id with xml values
if 'groups_id' in fields and isinstance(context.get("default_groups_ref"), list):
groups = []
ir_model_data = self.pool.get('ir.model.data')
for group_xml_id in context["default_groups_ref"]:
group_split = group_xml_id.split('.')
if len(group_split) != 2:
raise osv.except_osv(_('Invalid context value'), _('Invalid context default_groups_ref value (model.name_id) : "%s"') % group_xml_id)
try:
temp, group_id = ir_model_data.get_object_reference(cr, uid, group_split[0], group_split[1])
except ValueError:
group_id = False
groups += [group_id]
values['groups_id'] = groups
return values return values
def read(self, cr, uid, ids, fields=None, context=None, load='_classic_read'): def read(self, cr, uid, ids, fields=None, context=None, load='_classic_read'):

View File

@ -84,48 +84,39 @@
</record> </record>
<menuitem action="action_res_groups" id="menu_action_res_groups" parent="base.menu_users" groups="base.group_no_one"/> <menuitem action="action_res_groups" id="menu_action_res_groups" parent="base.menu_users" groups="base.group_no_one"/>
<!-- res.users --> <!-- res.users -->
<record id="view_users_simple_form" model="ir.ui.view"> <record id="view_users_simple_form" model="ir.ui.view">
<field name="name">res.users.simplified.form</field> <field name="name">res.users.simplified.form</field>
<field name="model">res.users</field> <field name="model">res.users</field>
<field name="priority">1</field> <field name="priority">1</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Contact" version="7.0"> <form string="Users" version="7.0">
<sheet> <sheet>
<field name="image" widget='image' class="oe_left oe_avatar" options='{"preview_image": "image_medium", "size": [90, 90]}'/> <field name="id" invisible="1"/>
<div class="oe_title"> <div class="oe_form_box_info oe_text_center" style="margin-bottom: 10px" attrs="{'invisible': [('id', '>', 0)]}">
<div class="oe_edit_only"> You are creating a new user. After saving, the user will receive an invite email containing a link to set its password.
<label for="name"/> </div>
<field name="image" widget='image' class="oe_avatar oe_left" options='{"preview_image": "image_medium"}'/>
<div class="oe_title">
<label for="name" class="oe_edit_only"/>
<h1><field name="name"/></h1>
<label for="login" class="oe_edit_only"/>
<h2><field name="login"/></h2>
<label for="company_id" class="oe_edit_only" groups="base.group_multi_company"/>
<field name="company_id" context="{'user_preference': 0}" groups="base.group_multi_company"/>
</div> </div>
<h1>
<field name="name" default_focus="1" placeholder="Name" />
</h1>
<field name="category_id" widget="many2many_tags" placeholder="Tags..."/>
</div>
<group>
<group> <group>
<label for="street" string="Address"/> <label for="groups_id" string="Access Rights"
<div> attrs="{'invisible': [('id', '>', 0)]}"/>
<field name="street" placeholder="Street..."/> <div attrs="{'invisible': [('id', '>', 0)]}">
<field name="street2"/> <field name="groups_id" readonly="1" widget="many2many_tags" style="display: inline;"/> You will be able to define additional access rights by editing the newly created user under the Settings / Users menu.
<div class="address_format">
<field name="city" placeholder="City" style="width: 40%%"/>
<field name="state_id" class="oe_no_button" placeholder="State" style="width: 37%%" options='{"no_open": True}' on_change="onchange_state(state_id)"/>
<field name="zip" placeholder="ZIP" style="width: 20%%"/>
</div>
<field name="country_id" placeholder="Country" class="oe_no_button" options='{"no_open": True}'/>
</div> </div>
<field name="website" widget="url" placeholder="e.g. www.openerp.com"/>
</group>
<group>
<field name="phone" placeholder="e.g. +32.81.81.37.00"/> <field name="phone" placeholder="e.g. +32.81.81.37.00"/>
<field name="mobile"/> <field name="mobile"/>
<field name="fax"/> <field name="fax"/>
<field name="email" widget="email"/> <field name="email" widget="email" required="True"/>
</group> </group>
</group> </sheet>
</sheet>
</form> </form>
</field> </field>
</record> </record>
@ -134,8 +125,8 @@
<field name="model">res.users</field> <field name="model">res.users</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Users" version="7.0"> <form string="Users" version="7.0">
<field name="id" invisible="1"/>
<sheet> <sheet>
<field name="id" invisible="1"/>
<div class="oe_right oe_button_box"> <div class="oe_right oe_button_box">
<button string="Change Password" type="action" name="%(change_password_wizard_action)d" <button string="Change Password" type="action" name="%(change_password_wizard_action)d"
help="Change the user password."/> help="Change the user password."/>
@ -146,17 +137,29 @@
<h1><field name="name"/></h1> <h1><field name="name"/></h1>
<label for="login" class="oe_edit_only"/> <label for="login" class="oe_edit_only"/>
<h2><field name="login"/></h2> <h2><field name="login"/></h2>
<label for="company_id" class="oe_edit_only" groups="base.group_multi_company"/>
<field name="company_id" context="{'user_preference': 0}" groups="base.group_multi_company"/>
</div> </div>
<group>
<group>
<field name="company_id" context="{'user_preference': 0}"/>
</group>
<group>
<field name="active"/>
</group>
</group>
<notebook colspan="4"> <notebook colspan="4">
<page string="Access Rights">
<group>
<field name="active"/>
</group>
<group string="Allowed Companies" groups="base.group_multi_company">
<field name="company_ids" nolabel="1" widget="many2many_tags"/>
</group>
<group col="4">
<field name="groups_id"/>
</group>
</page>
<page string="Contact">
<group>
<field name="phone" placeholder="e.g. +32.81.81.37.00"/>
<field name="mobile"/>
<field name="fax"/>
<field name="email" widget="email"/>
</group>
</page>
<page string="Preferences"> <page string="Preferences">
<group> <group>
<group name="preferences"> <group name="preferences">
@ -168,24 +171,16 @@
<field domain="[('usage','=','menu')]" name="menu_id" required="True"/> <field domain="[('usage','=','menu')]" name="menu_id" required="True"/>
</group> </group>
</group> </group>
<group> <group string="Email preferences">
<field name="email" widget="email"/>
<field name="signature"/> <field name="signature"/>
</group> </group>
</page> </page>
<page string="Access Rights">
<group string="Allowed Companies" groups="base.group_multi_company">
<field name="company_ids" nolabel="1" widget="many2many_tags"/>
</group>
<group col="4">
<field name="groups_id"/>
</group>
</page>
</notebook> </notebook>
</sheet> </sheet>
</form> </form>
</field> </field>
</record> </record>
<record id="view_users_tree" model="ir.ui.view"> <record id="view_users_tree" model="ir.ui.view">
<field name="name">res.users.tree</field> <field name="name">res.users.tree</field>
<field name="model">res.users</field> <field name="model">res.users</field>

View File

@ -393,6 +393,7 @@
<rng:optional><rng:attribute name="day_length"/></rng:optional> <rng:optional><rng:attribute name="day_length"/></rng:optional>
<rng:optional><rng:attribute name="date_start"/></rng:optional> <rng:optional><rng:attribute name="date_start"/></rng:optional>
<rng:optional><rng:attribute name="date_stop"/></rng:optional> <rng:optional><rng:attribute name="date_stop"/></rng:optional>
<rng:optional><rng:attribute name="progress"/></rng:optional>
<rng:optional><rng:attribute name="date_string"/></rng:optional> <rng:optional><rng:attribute name="date_string"/></rng:optional>
<rng:optional><rng:attribute name="string"/></rng:optional> <rng:optional><rng:attribute name="string"/></rng:optional>
<rng:optional><rng:attribute name="default_group_by"/></rng:optional> <rng:optional><rng:attribute name="default_group_by"/></rng:optional>

View File

@ -47,7 +47,7 @@
with mute_logger('openerp.tools.safe_eval'): with mute_logger('openerp.tools.safe_eval'):
safe_eval('open("/etc/passwd","r")') safe_eval('open("/etc/passwd","r")')
assert False, "safe_eval should not allow calling open() builtin" assert False, "safe_eval should not allow calling open() builtin"
except NameError: except ValueError:
pass pass
- -

View File

@ -39,42 +39,42 @@ class test_res_config(common.TransactionCase):
res = self.res_config.get_option_path(self.cr, self.uid, self.menu_xml_id, context=None) res = self.res_config.get_option_path(self.cr, self.uid, self.menu_xml_id, context=None)
# Check types # Check types
self.assertTrue(isinstance(res, tuple)), "The result of get_option_path() should be a tuple (got %s)" % type(res) self.assertIsInstance(res, tuple)
self.assertTrue(len(res) == 2), "The tuple should contain 2 elements (got %s)" % len(res) self.assertEqual(len(res), 2, "The result should contain 2 elements")
self.assertTrue(isinstance(res[0], basestring)), "The first element of the tuple should be a string (got %s)" % type(res[0]) self.assertIsInstance(res[0], basestring)
self.assertTrue(isinstance(res[1], long)), "The second element of the tuple should be an long (got %s)" % type(res[1]) self.assertIsInstance(res[1], long)
# Check returned values # Check returned values
self.assertTrue(res[0] == self.expected_path), "Result mismatch: expected %s, got %s" % (self.expected_path, res[0]) self.assertEqual(res[0], self.expected_path)
self.assertTrue(res[1] == self.expected_action_id), "Result mismatch: expected %s, got %s" % (self.expected_action_id, res[1]) self.assertEqual(res[1], self.expected_action_id)
def test_10_get_option_name(self): def test_10_get_option_name(self):
""" The get_option_name() method should return a string """ """ The get_option_name() method should return a string """
res = self.res_config.get_option_name(self.cr, self.uid, self.full_field_name, context=None) res = self.res_config.get_option_name(self.cr, self.uid, self.full_field_name, context=None)
# Check type # Check type
self.assertTrue(isinstance(res, basestring)), "Result type mismatch: expected basestring, got %s" % type(res) self.assertIsInstance(res, basestring)
# Check returned value # Check returned value
self.assertTrue(res == self.expected_name), "Result mismatch: expected %s, got %s" % (self.expected_name, res) self.assertEqual(res, self.expected_name)
def test_20_get_config_warning(self): def test_20_get_config_warning(self):
""" The get_config_warning() method should return a RedirectWarning """ """ The get_config_warning() method should return a RedirectWarning """
res = self.res_config.get_config_warning(self.cr, self.error_msg, context=None) res = self.res_config.get_config_warning(self.cr, self.error_msg, context=None)
# Check type # Check type
self.assertTrue(isinstance(res, openerp.exceptions.RedirectWarning)), "Result type mismatch: expected openerp.exceptions.RedirectWarning, got %s" % type(res) self.assertIsInstance(res, openerp.exceptions.RedirectWarning)
# Check returned value # Check returned value
self.assertTrue(res.args[0], self.expected_final_error_msg), "Result mismatch: expected %s, got %s" % (self.expected_final_error_msg, res.args[0]) self.assertEqual(res.args[0], self.expected_final_error_msg)
self.assertTrue(res.args[1], self.expected_action_id), "Result mismatch: expected %s, got %s" % (self.expected_action_id, res.args[1]) self.assertEqual(res.args[1], self.expected_action_id)
def test_30_get_config_warning_wo_menu(self): def test_30_get_config_warning_wo_menu(self):
""" The get_config_warning() method should return a Warning exception """ """ The get_config_warning() method should return a Warning exception """
res = self.res_config.get_config_warning(self.cr, self.error_msg_wo_menu, context=None) res = self.res_config.get_config_warning(self.cr, self.error_msg_wo_menu, context=None)
# Check type # Check type
self.assertTrue(isinstance(res, openerp.exceptions.Warning)), "Result type mismatch: expected openerp.exceptions.Warning, got %s" % type(res) self.assertIsInstance(res, openerp.exceptions.Warning)
# Check returned value # Check returned value
self.assertTrue(res.args[0], self.expected_final_error_msg), "Result mismatch: expected %s, got %s" % (self.expected_final_error_msg_wo_menu, res.args[0]) self.assertEqual(res.args[0], self.expected_final_error_msg_wo_menu)

View File

@ -204,8 +204,8 @@ def log(logger, level, prefix, msg, depth=None):
def dispatch_rpc(service_name, method, params): def dispatch_rpc(service_name, method, params):
""" Handle a RPC call. """ Handle a RPC call.
This is pure Python code, the actual marshalling (from/to XML-RPC or This is pure Python code, the actual marshalling (from/to XML-RPC) is done
NET-RPC) is done in a upper layer. in a upper layer.
""" """
try: try:
rpc_request = logging.getLogger(__name__ + '.rpc.request') rpc_request = logging.getLogger(__name__ + '.rpc.request')
@ -246,12 +246,16 @@ def dispatch_rpc(service_name, method, params):
log(rpc_request,logging.DEBUG, logline, replace_request_password(params), depth=1) log(rpc_request,logging.DEBUG, logline, replace_request_password(params), depth=1)
return result return result
except openerp.osv.orm.except_orm:
raise
except openerp.exceptions.AccessError: except openerp.exceptions.AccessError:
raise raise
except openerp.exceptions.AccessDenied: except openerp.exceptions.AccessDenied:
raise raise
except openerp.exceptions.Warning: except openerp.exceptions.Warning:
raise raise
except openerp.exceptions.RedirectWarning:
raise
except openerp.exceptions.DeferredException, e: except openerp.exceptions.DeferredException, e:
_logger.exception(tools.exception_to_unicode(e)) _logger.exception(tools.exception_to_unicode(e))
post_mortem(e.traceback) post_mortem(e.traceback)

View File

@ -480,7 +480,9 @@ class browse_record(object):
try: try:
return self[name] return self[name]
except KeyError, e: except KeyError, e:
raise AttributeError(e) import sys
exc_info = sys.exc_info()
raise AttributeError, "Got %r while trying to get attribute %s on a %s record." % (e, name, self._table._name), exc_info[2]
def __contains__(self, name): def __contains__(self, name):
return (name in self._table._columns) or (name in self._table._inherit_fields) or hasattr(self._table, name) return (name in self._table._columns) or (name in self._table._inherit_fields) or hasattr(self._table, name)
@ -3589,8 +3591,6 @@ class BaseModel(object):
""" """
if not context:
context = {}
self.check_access_rights(cr, user, 'read') self.check_access_rights(cr, user, 'read')
fields = self.check_field_access_rights(cr, user, 'read', fields) fields = self.check_field_access_rights(cr, user, 'read', fields)
if isinstance(ids, (int, long)): if isinstance(ids, (int, long)):
@ -3600,12 +3600,7 @@ class BaseModel(object):
select = map(lambda x: isinstance(x, dict) and x['id'] or x, select) select = map(lambda x: isinstance(x, dict) and x['id'] or x, select)
result = self._read_flat(cr, user, select, fields, context, load) result = self._read_flat(cr, user, select, fields, context, load)
for r in result: if isinstance(ids, (int, long)):
for key, v in r.items():
if v is None:
r[key] = False
if isinstance(ids, (int, long, dict)):
return result and result[0] or False return result and result[0] or False
return result return result
@ -3739,34 +3734,37 @@ class BaseModel(object):
if field in self._columns: if field in self._columns:
fobj = self._columns[field] fobj = self._columns[field]
if not fobj: if fobj:
continue groups = fobj.read
groups = fobj.read if groups:
if groups: edit = False
edit = False for group in groups:
for group in groups: module = group.split(".")[0]
module = group.split(".")[0] grp = group.split(".")[1]
grp = group.split(".")[1] cr.execute("select count(*) from res_groups_users_rel where gid IN (select res_id from ir_model_data where name=%s and module=%s and model=%s) and uid=%s", \
cr.execute("select count(*) from res_groups_users_rel where gid IN (select res_id from ir_model_data where name=%s and module=%s and model=%s) and uid=%s", \ (grp, module, 'res.groups', user))
(grp, module, 'res.groups', user)) readonly = cr.fetchall()
readonly = cr.fetchall() if readonly[0][0] >= 1:
if readonly[0][0] >= 1: edit = True
edit = True break
break elif readonly[0][0] == 0:
elif readonly[0][0] == 0: edit = False
edit = False else:
else: edit = False
edit = False
if not edit:
if type(vals[field]) == type([]):
vals[field] = []
elif type(vals[field]) == type(0.0):
vals[field] = 0
elif type(vals[field]) == type(''):
vals[field] = '=No Permission='
else:
vals[field] = False
if vals[field] is None:
vals[field] = False
if not edit:
if type(vals[field]) == type([]):
vals[field] = []
elif type(vals[field]) == type(0.0):
vals[field] = 0
elif type(vals[field]) == type(''):
vals[field] = '=No Permission='
else:
vals[field] = False
return res return res
# TODO check READ access # TODO check READ access
@ -5280,7 +5278,10 @@ class BaseModel(object):
assert signal_name assert signal_name
return (lambda *args, **kwargs: return (lambda *args, **kwargs:
self.signal_workflow(*args, signal=signal_name, **kwargs)) self.signal_workflow(*args, signal=signal_name, **kwargs))
return super(BaseModel, self).__getattr__(name) get = getattr(super(BaseModel, self), '__getattr__', None)
if get is not None: return get(name)
raise AttributeError(
"'%s' object has no attribute '%s'" % (type(self).__name__, name))
# keep this import here, at top it will cause dependency cycle errors # keep this import here, at top it will cause dependency cycle errors
import expression import expression
@ -5352,8 +5353,7 @@ def convert_pgerror_23502(model, fields, info, e):
message = _(u"Missing required value for the field '%s'.") % field_name message = _(u"Missing required value for the field '%s'.") % field_name
field = fields.get(field_name) field = fields.get(field_name)
if field: if field:
message = _(u"%s This might be '%s' in the current model, or a field " message = _(u"Missing required value for the field '%s' (%s)") % (field['string'], field_name)
u"of the same name in an o2m.") % (message, field['string'])
return { return {
'message': message, 'message': message,
'field': field_name, 'field': field_name,

View File

@ -1,12 +1,15 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import base64
import contextlib import contextlib
import logging import logging
import os
import threading import threading
import traceback import traceback
from openerp import SUPERUSER_ID from openerp import SUPERUSER_ID
import openerp.pooler import openerp.pooler
import openerp.release
import openerp.sql_db import openerp.sql_db
import openerp.tools import openerp.tools
@ -20,39 +23,44 @@ self_id_protect = threading.Semaphore()
# This should be moved to openerp.modules.db, along side initialize(). # This should be moved to openerp.modules.db, along side initialize().
def _initialize_db(id, db_name, demo, lang, user_password): def _initialize_db(id, db_name, demo, lang, user_password):
cr = None
try: try:
self_actions[id]['progress'] = 0 cr = None
cr = openerp.sql_db.db_connect(db_name).cursor() try:
openerp.modules.db.initialize(cr) # TODO this should be removed as it is done by pooler.restart_pool. self_actions[id]['progress'] = 0
openerp.tools.config['lang'] = lang cr = openerp.sql_db.db_connect(db_name).cursor()
cr.commit() openerp.modules.db.initialize(cr) # TODO this should be removed as it is done by pooler.restart_pool.
cr.close() openerp.tools.config['lang'] = lang
cr.commit()
finally:
if cr:
cr.close()
cr = None
pool = openerp.pooler.restart_pool(db_name, demo, self_actions[id], pool = openerp.pooler.restart_pool(db_name, demo, self_actions[id],
update_module=True)[1] update_module=True)[1]
cr = openerp.sql_db.db_connect(db_name).cursor() try:
cr = openerp.sql_db.db_connect(db_name).cursor()
if lang: if lang:
modobj = pool.get('ir.module.module') modobj = pool.get('ir.module.module')
mids = modobj.search(cr, SUPERUSER_ID, [('state', '=', 'installed')]) mids = modobj.search(cr, SUPERUSER_ID, [('state', '=', 'installed')])
modobj.update_translations(cr, SUPERUSER_ID, mids, lang) modobj.update_translations(cr, SUPERUSER_ID, mids, lang)
# update admin's password and lang # update admin's password and lang
values = {'password': user_password, 'lang': lang} values = {'password': user_password, 'lang': lang}
pool.get('res.users').write(cr, SUPERUSER_ID, [SUPERUSER_ID], values) pool.get('res.users').write(cr, SUPERUSER_ID, [SUPERUSER_ID], values)
cr.execute('SELECT login, password FROM res_users ORDER BY login') cr.execute('SELECT login, password FROM res_users ORDER BY login')
self_actions[id].update(users=cr.dictfetchall(), clean=True) self_actions[id].update(users=cr.dictfetchall(), clean=True)
cr.commit() cr.commit()
cr.close() finally:
if cr:
cr.close()
except Exception, e: except Exception, e:
self_actions[id].update(clean=False, exception=e) self_actions[id].update(clean=False, exception=e)
_logger.exception('CREATE DATABASE failed:') _logger.exception('CREATE DATABASE failed:')
self_actions[id]['traceback'] = traceback.format_exc() self_actions[id]['traceback'] = traceback.format_exc()
if cr:
cr.close()
def dispatch(method, params): def dispatch(method, params):
if method in [ 'create', 'get_progress', 'drop', 'dump', if method in [ 'create', 'get_progress', 'drop', 'dump',
@ -337,7 +345,7 @@ def exp_server_version():
""" Return the version of the server """ Return the version of the server
Used by the client to verify the compatibility with its own version Used by the client to verify the compatibility with its own version
""" """
return release.version return openerp.release.version
def exp_migrate_databases(databases): def exp_migrate_databases(databases):
for db in databases: for db in databases:

View File

@ -98,8 +98,6 @@ def check(f):
if openerp.pooler.get_pool(dbname)._init: if openerp.pooler.get_pool(dbname)._init:
raise openerp.exceptions.Warning('Currently, this database is not fully loaded and can not be used.') raise openerp.exceptions.Warning('Currently, this database is not fully loaded and can not be used.')
return f(dbname, *args, **kwargs) return f(dbname, *args, **kwargs)
except except_orm:
raise
except IntegrityError, inst: except IntegrityError, inst:
osv_pool = openerp.pooler.get_pool(dbname) osv_pool = openerp.pooler.get_pool(dbname)
for key in osv_pool._sql_error.keys(): for key in osv_pool._sql_error.keys():
@ -127,9 +125,6 @@ def check(f):
raise openerp.osv.orm.except_orm(_('Integrity Error'), msg) raise openerp.osv.orm.except_orm(_('Integrity Error'), msg)
else: else:
raise openerp.osv.orm.except_orm(_('Integrity Error'), inst[0]) raise openerp.osv.orm.except_orm(_('Integrity Error'), inst[0])
except Exception:
_logger.exception("Uncaught exception")
raise
return wrapper return wrapper

View File

@ -407,7 +407,7 @@ class WorkerCron(Worker):
while True: while True:
# acquired = openerp.addons.base.ir.ir_cron.ir_cron._acquire_job(db_name) # acquired = openerp.addons.base.ir.ir_cron.ir_cron._acquire_job(db_name)
# TODO why isnt openerp.addons.base defined ? # TODO why isnt openerp.addons.base defined ?
import base import openerp.addons.base as base
acquired = base.ir.ir_cron.ir_cron._acquire_job(db_name) acquired = base.ir.ir_cron.ir_cron._acquire_job(db_name)
if not acquired: if not acquired:
break break

View File

@ -32,8 +32,7 @@ import StringIO
import errno import errno
import logging import logging
import os import platform
import signal
import socket import socket
import sys import sys
import threading import threading
@ -43,7 +42,6 @@ import werkzeug.serving
import werkzeug.contrib.fixers import werkzeug.contrib.fixers
import openerp import openerp
import openerp.modules
import openerp.tools.config as config import openerp.tools.config as config
import websrv_lib import websrv_lib

View File

@ -35,4 +35,34 @@ class m(openerp.osv.osv.Model):
def generate_undefined(self, cr, uid, ids, context=None): def generate_undefined(self, cr, uid, ids, context=None):
self.surely_undefined_symbol self.surely_undefined_symbol
def generate_except_osv_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_except_osv, context)
def generate_except_orm_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_except_orm, context)
def generate_warning_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_warning, context)
def generate_redirect_warning_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_redirect_warning, context)
def generate_access_denied_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_access_denied, context)
def generate_access_error_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_access_error, context)
def generate_exc_access_denied_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_exc_access_denied, context)
def generate_undefined_safe_eval(self, cr, uid, ids, context=None):
self.generate_safe_eval(cr, uid, ids, self.generate_undefined, context)
def generate_safe_eval(self, cr, uid, ids, f, context):
globals_dict = { 'generate': lambda *args: f(cr, uid, ids, context) }
openerp.tools.safe_eval.safe_eval("generate()", mode='exec', globals_dict=globals_dict)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -7,9 +7,11 @@
<field name="model">test.exceptions.model</field> <field name="model">test.exceptions.model</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Test exceptions"> <form string="Test exceptions">
<label string="Each button generates a specific exception on the server. The text on the right is the expected representation of the exception when displayed on the client."/> <label string="Each button generates a specific exception on the server. The text on the right is the expected representation of the exception when displayed on the client. Button marked with a '*' use safe_eval()."/>
<separator string="" colspan="8"/>
<group colspan="8" col="8">
<group colspan="4" col="8">
<group colspan="8" col="8"> <group colspan="8" col="8">
<separator string="" colspan="8"/>
<button name="generate_except_osv" string="except_osv" type="object" icon="gtk-ok" colspan="1"/> <button name="generate_except_osv" string="except_osv" type="object" icon="gtk-ok" colspan="1"/>
<label string="Warning-description"/> <label string="Warning-description"/>
</group> </group>
@ -41,6 +43,42 @@
<button name="generate_undefined" string="Undefined" type="object" icon="gtk-ok" colspan="1"/> <button name="generate_undefined" string="Undefined" type="object" icon="gtk-ok" colspan="1"/>
<label string="Server error-traceback"/> <label string="Server error-traceback"/>
</group> </group>
</group>
<group colspan="4" col="8">
<group colspan="8" col="8">
<button name="generate_except_osv_safe_eval" string="except_osv*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Warning-description"/>
</group>
<group colspan="8" col="8">
<button name="generate_except_orm_safe_eval" string="except_orm*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Warning-description"/>
</group>
<group colspan="8" col="8">
<button name="generate_warning_safe_eval" string="Warning*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Warning-description"/>
</group>
<group colspan="8" col="8">
<button name="generate_redirect_warning_safe_eval" string="RedirectWarning*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Warning-description-redirection button"/>
</group>
<group colspan="8" col="8">
<button name="generate_access_denied_safe_eval" string="AccessDenied*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Access denied-traceback"/>
</group>
<group colspan="8" col="8">
<button name="generate_access_error_safe_eval" string="AccessError*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Access rights error-description"/>
</group>
<group colspan="8" col="8">
<button name="generate_exc_access_denied_safe_eval" string="Exc AccessDenied*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Access denied-traceback"/>
</group>
<group colspan="8" col="8">
<button name="generate_undefined_safe_eval" string="Undefined*" type="object" icon="gtk-ok" colspan="1"/>
<label string="Server error-traceback"/>
</group>
</group>
</group>
</form> </form>
</field> </field>
</record> </record>

View File

@ -393,18 +393,14 @@ class test_required_string_field(ImporterCase):
def test_empty(self): def test_empty(self):
result = self.import_(['value'], [[]]) result = self.import_(['value'], [[]])
self.assertEqual(result['messages'], [message( self.assertEqual(result['messages'], [message(
u"Missing required value for the field 'value'. This might be " u"Missing required value for the field 'unknown' (value)")])
u"'unknown' in the current model, or a field of the same name in "
u"an o2m.")])
self.assertIs(result['ids'], False) self.assertIs(result['ids'], False)
@mute_logger('openerp.sql_db', 'openerp.osv.orm') @mute_logger('openerp.sql_db', 'openerp.osv.orm')
def test_not_provided(self): def test_not_provided(self):
result = self.import_(['const'], [['12']]) result = self.import_(['const'], [['12']])
self.assertEqual(result['messages'], [message( self.assertEqual(result['messages'], [message(
u"Missing required value for the field 'value'. This might be " u"Missing required value for the field 'unknown' (value)")])
u"'unknown' in the current model, or a field of the same name in "
u"an o2m.")])
self.assertIs(result['ids'], False) self.assertIs(result['ids'], False)
class test_text(ImporterCase): class test_text(ImporterCase):

View File

@ -142,17 +142,6 @@ class configmanager(object):
help="specify the private key file for the SSL connection") help="specify the private key file for the SSL connection")
parser.add_option_group(group) parser.add_option_group(group)
# NET-RPC
group = optparse.OptionGroup(parser, "NET-RPC Configuration")
group.add_option("--netrpc-interface", dest="netrpc_interface", my_default='',
help="specify the TCP IP address for the NETRPC protocol")
group.add_option("--netrpc-port", dest="netrpc_port", my_default=8070,
help="specify the TCP port for the NETRPC protocol", type="int")
# Needed a few day for runbot and saas
group.add_option("--no-netrpc", dest="netrpc", action="store_false", my_default=False, help="disable the NETRPC protocol")
group.add_option("--netrpc", dest="netrpc", action="store_true", my_default=False, help="enable the NETRPC protocol")
parser.add_option_group(group)
# WEB # WEB
# TODO move to web addons after MetaOption merge # TODO move to web addons after MetaOption merge
group = optparse.OptionGroup(parser, "Web interface Configuration") group = optparse.OptionGroup(parser, "Web interface Configuration")
@ -182,7 +171,7 @@ class configmanager(object):
# Logging Group # Logging Group
group = optparse.OptionGroup(parser, "Logging Configuration") group = optparse.OptionGroup(parser, "Logging Configuration")
group.add_option("--logfile", dest="logfile", help="file where the server log will be stored") group.add_option("--logfile", dest="logfile", help="file where the server log will be stored")
group.add_option("--no-logrotate", dest="logrotate", action="store_false", my_default=True, help="do not rotate the logfile") group.add_option("--logrotate", dest="logrotate", action="store_true", my_default=False, help="enable logfile rotation")
group.add_option("--syslog", action="store_true", dest="syslog", my_default=False, help="Send the log to the syslog server") group.add_option("--syslog", action="store_true", dest="syslog", my_default=False, help="Send the log to the syslog server")
group.add_option('--log-handler', action="append", default=DEFAULT_LOG_HANDLER, my_default=DEFAULT_LOG_HANDLER, metavar="PREFIX:LEVEL", help='setup a handler at LEVEL for a given PREFIX. An empty PREFIX indicates the root logger. This option can be repeated. Example: "openerp.orm:DEBUG" or "werkzeug:CRITICAL" (default: ":INFO")') group.add_option('--log-handler', action="append", default=DEFAULT_LOG_HANDLER, my_default=DEFAULT_LOG_HANDLER, metavar="PREFIX:LEVEL", help='setup a handler at LEVEL for a given PREFIX. An empty PREFIX indicates the root logger. This option can be repeated. Example: "openerp.orm:DEBUG" or "werkzeug:CRITICAL" (default: ":INFO")')
group.add_option('--log-request', action="append_const", dest="log_handler", const="openerp.netsvc.rpc.request:DEBUG", help='shortcut for --log-handler=openerp.netsvc.rpc.request:DEBUG') group.add_option('--log-request', action="append_const", dest="log_handler", const="openerp.netsvc.rpc.request:DEBUG", help='shortcut for --log-handler=openerp.netsvc.rpc.request:DEBUG')
@ -383,8 +372,8 @@ class configmanager(object):
'db_name', 'db_user', 'db_password', 'db_host', 'db_name', 'db_user', 'db_password', 'db_host',
'db_port', 'db_template', 'logfile', 'pidfile', 'smtp_port', 'db_port', 'db_template', 'logfile', 'pidfile', 'smtp_port',
'email_from', 'smtp_server', 'smtp_user', 'smtp_password', 'email_from', 'smtp_server', 'smtp_user', 'smtp_password',
'netrpc_interface', 'netrpc_port', 'db_maxconn', 'import_partial', 'addons_path', 'db_maxconn', 'import_partial', 'addons_path',
'netrpc', 'xmlrpc', 'syslog', 'without_demo', 'timezone', 'xmlrpc', 'syslog', 'without_demo', 'timezone',
'xmlrpcs_interface', 'xmlrpcs_port', 'xmlrpcs', 'xmlrpcs_interface', 'xmlrpcs_port', 'xmlrpcs',
'static_http_enable', 'static_http_document_root', 'static_http_url_prefix', 'static_http_enable', 'static_http_document_root', 'static_http_url_prefix',
'secure_cert_file', 'secure_pkey_file', 'dbfilter', 'log_handler', 'log_level' 'secure_cert_file', 'secure_pkey_file', 'dbfilter', 'log_handler', 'log_level'
@ -407,7 +396,7 @@ class configmanager(object):
keys = [ keys = [
'language', 'translate_out', 'translate_in', 'overwrite_existing_translations', 'language', 'translate_out', 'translate_in', 'overwrite_existing_translations',
'debug_mode', 'smtp_ssl', 'load_language', 'debug_mode', 'smtp_ssl', 'load_language',
'stop_after_init', 'logrotate', 'without_demo', 'netrpc', 'xmlrpc', 'syslog', 'stop_after_init', 'logrotate', 'without_demo', 'xmlrpc', 'syslog',
'list_db', 'xmlrpcs', 'proxy_mode', 'list_db', 'xmlrpcs', 'proxy_mode',
'test_file', 'test_enable', 'test_commit', 'test_report_directory', 'test_file', 'test_enable', 'test_commit', 'test_report_directory',
'osv_memory_count_limit', 'osv_memory_age_limit', 'max_cron_threads', 'unaccent', 'osv_memory_count_limit', 'osv_memory_age_limit', 'max_cron_threads', 'unaccent',

View File

@ -25,6 +25,7 @@ import logging
import os.path import os.path
import pickle import pickle
import re import re
import sys
# for eval context: # for eval context:
import time import time
@ -61,13 +62,16 @@ from misc import unquote
unsafe_eval = eval unsafe_eval = eval
from safe_eval import safe_eval as eval from safe_eval import safe_eval as eval
class ConvertError(Exception): class ParseError(Exception):
def __init__(self, doc, orig_excpt): def __init__(self, msg, text, filename, lineno):
self.d = doc self.msg = msg
self.orig = orig_excpt self.text = text
self.filename = filename
self.lineno = lineno
def __str__(self): def __str__(self):
return 'Exception:\n\t%s\nUsing file:\n%s' % (self.orig, self.d) return '"%s" while parsing %s:%s, near\n%s' \
% (self.msg, self.filename, self.lineno, self.text)
def _ref(self, cr): def _ref(self, cr):
return lambda x: self.id_get(cr, x) return lambda x: self.id_get(cr, x)
@ -843,13 +847,10 @@ form: module.record_id""" % (xml_id,)
if rec.tag in self._tags: if rec.tag in self._tags:
try: try:
self._tags[rec.tag](self.cr, rec, n) self._tags[rec.tag](self.cr, rec, n)
except: except Exception, e:
_logger.error('Parse error in %s:%d: \n%s',
rec.getroottree().docinfo.URL,
rec.sourceline,
etree.tostring(rec).strip(), exc_info=True)
self.cr.rollback() self.cr.rollback()
raise exc_info = sys.exc_info()
raise ParseError, (misc.ustr(e), etree.tostring(rec).rstrip(), rec.getroottree().docinfo.URL, rec.sourceline), exc_info[2]
return True return True
def __init__(self, cr, module, idref, mode, report=None, noupdate=False): def __init__(self, cr, module, idref, mode, report=None, noupdate=False):

View File

@ -35,6 +35,10 @@ from opcode import HAVE_ARGUMENT, opmap, opname
from types import CodeType from types import CodeType
import logging import logging
from .misc import ustr
import openerp
__all__ = ['test_expr', 'safe_eval', 'const_eval'] __all__ = ['test_expr', 'safe_eval', 'const_eval']
# The time module is usually already provided in the safe_eval environment # The time module is usually already provided in the safe_eval environment
@ -106,11 +110,11 @@ def test_expr(expr, allowed_codes, mode="eval"):
expr = expr.strip() expr = expr.strip()
code_obj = compile(expr, "", mode) code_obj = compile(expr, "", mode)
except (SyntaxError, TypeError): except (SyntaxError, TypeError):
_logger.debug('Invalid eval expression', exc_info=True)
raise raise
except Exception: except Exception, e:
_logger.debug('Disallowed or invalid eval expression', exc_info=True) import sys
raise ValueError("%s is not a valid expression" % expr) exc_info = sys.exc_info()
raise ValueError, '"%s" while compiling\n%r' % (ustr(e), expr), exc_info[2]
for code in _get_opcodes(code_obj): for code in _get_opcodes(code_obj):
if code not in allowed_codes: if code not in allowed_codes:
raise ValueError("opcode %s not allowed (%r)" % (opname[code], expr)) raise ValueError("opcode %s not allowed (%r)" % (opname[code], expr))
@ -237,10 +241,22 @@ def safe_eval(expr, globals_dict=None, locals_dict=None, mode="eval", nocopy=Fal
'set' : set 'set' : set
} }
) )
c = test_expr(expr, _SAFE_OPCODES, mode=mode)
try: try:
return eval(test_expr(expr, _SAFE_OPCODES, mode=mode), globals_dict, locals_dict) return eval(c, globals_dict, locals_dict)
except Exception: except openerp.osv.orm.except_orm:
_logger.exception('Cannot eval %r', expr)
raise raise
except openerp.exceptions.Warning:
raise
except openerp.exceptions.RedirectWarning:
raise
except openerp.exceptions.AccessDenied:
raise
except openerp.exceptions.AccessError:
raise
except Exception, e:
import sys
exc_info = sys.exc_info()
raise ValueError, '"%s" while evaluating\n%r' % (ustr(e), expr), exc_info[2]
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -12,6 +12,5 @@ rm openerp-server.log
--stop-after-init \ --stop-after-init \
--no-xmlrpc \ --no-xmlrpc \
--no-xmlrpcs \ --no-xmlrpcs \
--no-netrpc \
--test-enable \ --test-enable \
--logfile=openerp-server.log --logfile=openerp-server.log