[MERGE] Sync with trunk.
bzr revid: tde@openerp.com-20130305082618-o63zlhwa13r1994u
This commit is contained in:
commit
a5f44c67dd
|
@ -7,7 +7,7 @@ graft win32
|
|||
include README
|
||||
include LICENSE
|
||||
include MANIFEST.in
|
||||
include gunicorn.conf.py
|
||||
include openerp-wsgi.py
|
||||
include openerp-server
|
||||
include setup*
|
||||
global-exclude *pyc *~ # Exclude possible garbage from previous graft.
|
||||
|
|
|
@ -52,6 +52,6 @@ Description: OpenERP Enterprise Resource Management
|
|||
features are accounting (analytic and financial), stock management, sales and
|
||||
purchases management, tasks automation, marketing campaigns, help desk, POS,
|
||||
etc. Technical features include a distributed server, flexible workflows, an
|
||||
object database, a dynamic GUI, customizable reports, and NET-RPC and XML-RPC
|
||||
interfaces.
|
||||
object database, a dynamic GUI, customizable reports, and an XML-RPC
|
||||
interface.
|
||||
|
||||
|
|
|
@ -103,9 +103,6 @@ General Options
|
|||
--logfile=LOGFILE file where the server log will be stored
|
||||
-n INTERFACE, --interface=INTERFACE specify the TCP IP address
|
||||
-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
|
||||
-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)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
========================================
|
||||
============
|
||||
Architecture
|
||||
========================================
|
||||
============
|
||||
|
||||
OpenERP as a multitenant three-tiers architecture
|
||||
=================================================
|
||||
|
@ -180,6 +180,7 @@ OpenERP follows the MVC semantic with
|
|||
|
||||
Network communications and WSGI
|
||||
===============================
|
||||
|
||||
OpenERP is an HTTP web server and may also be deployed as an WSGI-compliant
|
||||
application.
|
||||
|
||||
|
@ -207,3 +208,45 @@ As such, it can be run as a stand-alone HTTP server or embedded inside OpenERP.
|
|||
The HTTP namespaces /openerp/ /object/ /common/ are reserved for the XML-RPC
|
||||
layer, every module restrict it's HTTP namespace to /<name_of_the_module>/
|
||||
|
||||
Process model
|
||||
=============
|
||||
|
||||
In the past, the OpenERP server was using threads to handle HTTP requests
|
||||
concurrently or to process cron jobs. Using threads is still the default
|
||||
behavior when running the ``openerp-server`` script but not the recommended
|
||||
one: it is in fact recommended to use the ``--workers`` option.
|
||||
|
||||
By using the ``--workers`` option, the OpenERP server will spawn a fixed number
|
||||
of processes instead of spawning a new thread for each incoming request.
|
||||
|
||||
This has a number of advantages:
|
||||
|
||||
- Processes do not suffer from CPython's Global Interpreter Lock.
|
||||
- Processes can be gracefully recycled while requests are still handled by the
|
||||
server.
|
||||
- Resources such as CPU time and memory made available to a process can be
|
||||
monitored on a per-process basis.
|
||||
|
||||
When using the ``--workers`` options, two types of processes may be spawned:
|
||||
web process, and cron process.
|
||||
|
||||
.. versionadded:: 7.1
|
||||
|
||||
.. _longpolling-worker:
|
||||
|
||||
When using the ``--workers`` options, three types of processes may be spawned:
|
||||
web process, and cron process, just as previsouly, but also an evented (using
|
||||
gevent) web process is started. It is used for long-polling as needed by the
|
||||
upcoming Instant Messaging feature. As for now, that process is listening on a
|
||||
different port than the main web processes. A reverse proxy (e.g. Nginx) to
|
||||
listen on a unique port, mapping all requests to the normal port, but mapping
|
||||
the ``/longpolling`` route to the evented process is necessary (the web
|
||||
interface cannot issue requests to different ports).
|
||||
|
||||
(It is possible to make the threaded server evented by passing the ``--gevent``
|
||||
flag.)
|
||||
|
||||
The goal is to drop support for the threaded model, and also make all web
|
||||
processes evented; there would be no more distinction between "normal" and
|
||||
"longpolling" processes. For this to happen, further testing is needed.
|
||||
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
.. _changelog:
|
||||
|
||||
Changelog
|
||||
=========
|
||||
|
||||
`trunk`
|
||||
-------
|
||||
|
||||
- Removed support for the ``NET-RPC`` protocol.
|
||||
- Added the :ref:`Long polling <longpolling-worker>` worker type.
|
||||
- Added :ref:`orm-workflows` to the ORM.
|
||||
- Added :ref:`routing-decorators` to the RPC and WSGI stack.
|
||||
- Removed support for ``__terp__.py`` descriptor files.
|
||||
- Removed support for ``<terp>`` root element in XML files.
|
||||
- Removed support for the non-openerp namespace (e.g. importing ``tools``
|
||||
instead of ``openerp.tools`` in an addons).
|
||||
- Add a new type of exception that allows redirections:
|
||||
``openerp.exceptions.RedirectWarning``.
|
||||
- Give a pair of new methods to ``res.config.settings`` and a helper to make
|
||||
them easier to use: ``get_config_warning()``.
|
|
@ -0,0 +1,73 @@
|
|||
.. _using-mod-wsgi:
|
||||
|
||||
Deploying with ``mod_wsgi``
|
||||
===========================
|
||||
|
||||
``mod_wsgi`` makes it possible to run a WSGI_ application (such as OpenERP)
|
||||
under the Apache_ HTTP server.
|
||||
|
||||
.. _WSGI: http://en.wikipedia.org/wiki/Web_Server_Gateway_Interface
|
||||
.. _Apache: https://httpd.apache.org/
|
||||
|
||||
Summary
|
||||
-------
|
||||
|
||||
Similarly to :doc:`deployment-gunicorn`, running OpenERP behind Apache with
|
||||
``mod_wsgi`` requires to modify the sample ``openerp-wsgi.py`` script. Then
|
||||
that Python script can be set in the Apache configuration.
|
||||
|
||||
Python (WSGI) application
|
||||
-------------------------
|
||||
|
||||
Apache needs a Python script providing the WSGI application. By default the
|
||||
symbol looked up by Apache is ``application`` but it can be overidden with the
|
||||
``WSGICallableObject`` directive if necessary. A sample script
|
||||
``openerp-wsgi.py`` is provided with OpenERP and you can adapt it to your
|
||||
needs. For instance, make sure to correctly set the ``addons_path``
|
||||
configuration (using absolute paths).
|
||||
|
||||
.. note ::
|
||||
The script provided to Apache has often the extension ``.wsgi`` but the
|
||||
``openerp-wsgi.py`` script will do just as fine.
|
||||
|
||||
Apache Configuration
|
||||
--------------------
|
||||
|
||||
In Apache's configuration, add the following line to activate ``mod_wsgi``::
|
||||
|
||||
LoadModule wsgi_module modules/mod_wsgi.so
|
||||
|
||||
Then a possible (straightforward, with e.g. no virtual server) configuration is
|
||||
as follow::
|
||||
|
||||
WSGIScriptAlias / /home/thu/repos/server/trunk/openerp-wsgi.py
|
||||
WSGIDaemonProcess oe user=thu group=users processes=2 python-path=/home/thu/repos/server/trunk/ display-name=apache-openerp
|
||||
WSGIProcessGroup oe
|
||||
|
||||
<Directory /home/thu/repos/server/trunk>
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
</Directory>
|
||||
|
||||
The ``WSGIScriptAlias`` directive indicates that any URL matching ``/`` will
|
||||
run the application defined in the ``openerp-wsgi.py`` script.
|
||||
|
||||
The ``WSGIDaemonProcess`` and ``WSGIProcessGroup`` directives create a process
|
||||
configuration. The configuration makes it possible for isntance to specify
|
||||
which user runs the OpenERP process. The ``display-name`` option will make the
|
||||
processes appear as ``apache-openerp`` in ``ps`` (instead of the normal
|
||||
``httpd``).
|
||||
|
||||
Finally, it is necessary to make sure the source directory where the script can
|
||||
be found is allowed by Apache with the ``Directory`` block.
|
||||
|
||||
``mod_wsgi`` supports a lot of directives, please see this ``mod_wsgi`` wiki
|
||||
page for more details:
|
||||
http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives.
|
||||
|
||||
Running
|
||||
-------
|
||||
|
||||
When the Apache configuration changes, it is necessary to restart Apache, e.g. with::
|
||||
|
||||
/etc/init.d/httpd restart
|
|
@ -17,6 +17,7 @@ OpenERP Server
|
|||
05_test_framework
|
||||
06_misc
|
||||
deployment-gunicorn
|
||||
deployment-mod-wsgi
|
||||
|
||||
OpenERP Command
|
||||
'''''''''''''''
|
||||
|
@ -34,7 +35,17 @@ OpenERP Server API
|
|||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
orm-methods.rst
|
||||
api_models.rst
|
||||
routing.rst
|
||||
|
||||
Changelog
|
||||
'''''''''
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
changelog.rst
|
||||
|
||||
Concepts
|
||||
''''''''
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
.. _orm-methods:
|
||||
|
||||
ORM methods
|
||||
===========
|
||||
|
||||
.. _orm-workflows:
|
||||
|
||||
Workflow-related methods
|
||||
------------------------
|
||||
|
||||
.. versionadded:: 7.1
|
||||
|
||||
Creating, deleting, or otherwise manipulating workflow instances is possible
|
||||
right from a Model instance. (Previously, workflows were handled throught a
|
||||
call to ``LocalService('workflow')``. Using the ORM methods is now the preferred
|
||||
way.)
|
||||
|
||||
.. currentmodule:: openerp.osv.orm
|
||||
|
||||
.. automethod:: BaseModel.create_workflow
|
||||
:noindex:
|
||||
|
||||
This is used instead of ``LocalService('workflow').trg_create()``.
|
||||
|
||||
.. automethod:: BaseModel.delete_workflow
|
||||
:noindex:
|
||||
|
||||
This is used instead of ``LocalService('workflow').trg_delete()``.
|
||||
|
||||
.. automethod:: BaseModel.step_workflow
|
||||
:noindex:
|
||||
|
||||
This is used instead of ``LocalService('workflow').trg_write()``.
|
||||
|
||||
.. automethod:: BaseModel.redirect_workflow
|
||||
:noindex:
|
||||
|
||||
.. automethod:: BaseModel.signal_workflow
|
||||
:noindex:
|
||||
|
||||
This is used instead of ``LocalService('workflow').trg_validate()``.
|
||||
|
||||
.. method:: BaseModel.signal_xxx(cr, uid, ids)
|
||||
:noindex:
|
||||
|
||||
Sends a signal ``xxx`` to the workflow instances bound to the given record
|
||||
IDs. (This is implemented using ``__getattr__`` so no source link is
|
||||
rendered on the right.)
|
||||
|
||||
This is used instead of ``LocalService('workflow').trg_validate()``.
|
||||
|
||||
|
||||
.. note::
|
||||
Low-level access to the workflows is still possible by using the
|
||||
``openerp.workflow`` module, that is, in a similar way to what was possible
|
||||
with the previous ``LocalService('workflow')`` access. This may be useful
|
||||
when looking-up a model in the registry and/or its records is not necessary.
|
||||
For instance when working with raw model names and record IDs is preferred (to
|
||||
avoid hitting unnecessarily the database). But this is something that should be
|
||||
carefully considered as it would bypass the ORM methods (and thus any inherited
|
||||
behaviors).
|
|
@ -0,0 +1,29 @@
|
|||
.. _routing:
|
||||
|
||||
Routing
|
||||
=======
|
||||
|
||||
.. versionchanged:: 7.1
|
||||
|
||||
The OpenERP framework, as an HTTP server, serves a few hard-coded URLs
|
||||
(``models``, ``db``, ...) to expose RPC endpoints. When running the web addons
|
||||
(which is almost always the case), it also serves URLs without them being RPC
|
||||
endpoints.
|
||||
|
||||
In older version of OpenERP, adding RPC endpoints was done by subclassing the
|
||||
``openerp.netsvc.ExportService`` class. Adding WSGI handlers was done by
|
||||
registering them with the :py:func:`openerp.wsgi.register_wsgi_handler`
|
||||
function.
|
||||
|
||||
Starting with OpenERP 7.1, exposing a new arbitrary WSGI handler is done with
|
||||
the :py:func:`openerp.http.handler` decorator while adding an RPC endpoint is
|
||||
done with the :py:func:`openerp.http.rpc` decorator.
|
||||
|
||||
.. _routing-decorators:
|
||||
|
||||
Routing decorators
|
||||
------------------
|
||||
|
||||
.. automodule:: openerp.http
|
||||
:members:
|
||||
:undoc-members:
|
|
@ -80,17 +80,6 @@ specify the certificate file for the SSL connection
|
|||
\fB\-\-pkey\-file\fR=\fISECURE_PKEY_FILE\fR
|
||||
specify the private key file for the SSL connection
|
||||
.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:
|
||||
.TP
|
||||
\fB\-\-static\-http\-enable\fR
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
excludes: pychart release openerp-server test run_tests addons/base_quality_interrogation
|
|
@ -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
|
||||
automation, marketing campaigns, help desk, POS, etc. Technical features include
|
||||
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
|
||||
Platform: Linux, Win32
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
|
@ -15,7 +15,7 @@
|
|||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
|
@ -28,6 +28,7 @@ SUPERUSER_ID = 1
|
|||
import addons
|
||||
import cli
|
||||
import conf
|
||||
import http
|
||||
import loglevels
|
||||
import modules
|
||||
import netsvc
|
||||
|
@ -35,10 +36,8 @@ import osv
|
|||
import pooler
|
||||
import release
|
||||
import report
|
||||
import run_tests
|
||||
import service
|
||||
import sql_db
|
||||
import test
|
||||
import tools
|
||||
import workflow
|
||||
# backward compatilbility
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:12+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:58+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:12+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:58+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:12+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:58+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
|
||||
"PO-Revision-Date: 2012-11-25 18:53+0000\n"
|
||||
"Last-Translator: waleed bazaza <waleed_bazaza@yahoo.com>\n"
|
||||
"PO-Revision-Date: 2013-02-16 09:04+0000\n"
|
||||
"Last-Translator: Ahmad Khayyat <Unknown>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:12+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:58+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -953,7 +953,7 @@ msgstr "مستودعات مشتركة (WebDav)"
|
|||
#. module: base
|
||||
#: view:res.users:0
|
||||
msgid "Email Preferences"
|
||||
msgstr "تفضيلات البريد الالكتروني"
|
||||
msgstr "تفضيلات البريد الإلكتروني"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_fields.py:195
|
||||
|
@ -1328,7 +1328,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.actions.client,name:base.action_client_base_menu
|
||||
msgid "Open Settings Menu"
|
||||
msgstr ""
|
||||
msgstr "فتح قائمة الإعدادات"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -2169,7 +2169,7 @@ msgstr ""
|
|||
#: model:ir.ui.menu,name:base.menu_administration
|
||||
#: model:res.groups,name:base.group_system
|
||||
msgid "Settings"
|
||||
msgstr "إعدادات"
|
||||
msgstr "الإعدادات"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.actions.act_window,view_type:0
|
||||
|
@ -4039,7 +4039,7 @@ msgstr "الجبل الأسود"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_fetchmail
|
||||
msgid "Email Gateway"
|
||||
msgstr "بوابة البريد الالكتروني"
|
||||
msgstr "بوابة البريد الإلكتروني"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_mail_server.py:465
|
||||
|
@ -4544,7 +4544,7 @@ msgstr "الهندية / हिंदी"
|
|||
#: model:ir.actions.act_window,name:base.action_view_base_language_install
|
||||
#: model:ir.ui.menu,name:base.menu_view_base_language_install
|
||||
msgid "Load a Translation"
|
||||
msgstr ""
|
||||
msgstr "تحميل ترجمة"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.module.module,latest_version:0
|
||||
|
@ -5254,7 +5254,7 @@ msgstr "الأسعار"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_email_template
|
||||
msgid "Email Templates"
|
||||
msgstr ""
|
||||
msgstr "قوالب البريد الإلكتروني"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sy
|
||||
|
@ -11302,7 +11302,7 @@ msgstr "لا يمكن أن يكون حجم الحقل أقل من 1 !"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_mrp_operations
|
||||
msgid "Manufacturing Operations"
|
||||
msgstr ""
|
||||
msgstr "عمليات التصنيع"
|
||||
|
||||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -24,6 +24,10 @@ msgid ""
|
|||
"================================================\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Модул за проверка на писането и печата.\n"
|
||||
"================================================\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sh
|
||||
|
@ -60,6 +64,7 @@ msgstr "Преглед на архитектурата"
|
|||
#: model:ir.module.module,summary:base.module_sale_stock
|
||||
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
|
||||
msgstr ""
|
||||
"Запитване за ..., Поръчки за продажба, доставка и контрол на фактурирането"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.sequence,implementation:0
|
||||
|
@ -88,18 +93,20 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_point_of_sale
|
||||
msgid "Touchscreen Interface for Shops"
|
||||
msgstr ""
|
||||
msgstr "Сензорен интерфейс, чрез докосване за магазини"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
|
||||
msgid "Indian Payroll"
|
||||
msgstr ""
|
||||
msgstr "Индийски ТРЗ"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.cron,model:0
|
||||
msgid ""
|
||||
"Model name on which the method to be called is located, e.g. 'res.partner'."
|
||||
msgstr ""
|
||||
"Името на модела към метода, който се нарича или открива, например "
|
||||
"\"Res.partner\"."
|
||||
|
||||
#. module: base
|
||||
#: view:ir.module.module:0
|
||||
|
@ -121,11 +128,22 @@ msgid ""
|
|||
" * Product Attributes\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Модулът добавя - производител и атрибутите във формуляра на на продукта.\n"
|
||||
"====================================================================\n"
|
||||
"\n"
|
||||
"Можете да дефинирате следната информация за продукт:\n"
|
||||
"-----------------------------------------------\n"
|
||||
" * Производител\n"
|
||||
" * Името на продукта от производителя\n"
|
||||
" * Кода на продукта от производителя\n"
|
||||
" * Атрибути на продукта\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.client,params:0
|
||||
msgid "Supplementary arguments"
|
||||
msgstr ""
|
||||
msgstr "Допълнителни аргументи"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_google_base_account
|
||||
|
@ -134,11 +152,14 @@ msgid ""
|
|||
"The module adds google user in res user.\n"
|
||||
"========================================\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Модулът добавя Google потребител като вътрешен.\n"
|
||||
"========================================\n"
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,employee:0
|
||||
msgid "Check this box if this contact is an Employee."
|
||||
msgstr ""
|
||||
msgstr "Маркирайте тази отметка, ако това лице е служител."
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,domain:0
|
||||
|
@ -147,6 +168,9 @@ msgid ""
|
|||
"specified as a Python expression defining a list of triplets. For example: "
|
||||
"[('color','=','red')]"
|
||||
msgstr ""
|
||||
"Опцията за областта ограничаваща възможните стойности за свързаните полета, "
|
||||
"посочени като Python изрази, определени като списък на тризнаци. Например: "
|
||||
"[(\"цвят\", \"=\", \"червен\")]"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,ref:0
|
||||
|
@ -156,7 +180,7 @@ msgstr "Означение"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_be_invoice_bba
|
||||
msgid "Belgium - Structured Communication"
|
||||
msgstr ""
|
||||
msgstr "Белгия - структурирано съобщение"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.act_window,target:0
|
||||
|
@ -166,12 +190,12 @@ msgstr "Целеви прозорец"
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_rml:0
|
||||
msgid "Main Report File Path"
|
||||
msgstr ""
|
||||
msgstr "Пътя до файла със справки"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
|
||||
msgid "Sales Analytic Distribution"
|
||||
msgstr ""
|
||||
msgstr "Анализ на продажбите от доставки"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_hr_timesheet_invoice
|
||||
|
@ -187,6 +211,16 @@ msgid ""
|
|||
"revenue\n"
|
||||
"reports."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Генериране на вашите фактури на база разходи, Работни графици.\n"
|
||||
"========================================================\n"
|
||||
"\n"
|
||||
"Модул за генериране на фактури, базирани на разходи (човешки ресурси, "
|
||||
"разходи ...).\n"
|
||||
"\n"
|
||||
"Можете да дефинирате ценови листи в аналитичните сметки,както и някои "
|
||||
"теоретични приходни\n"
|
||||
"справки."
|
||||
|
||||
#. module: base
|
||||
#: 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 "
|
||||
"them through Python code, preferably through a custom addon!"
|
||||
msgstr ""
|
||||
"Свойства на базови полета, които не могат да се променят! Може да ги "
|
||||
"промените, чрез Python код, най добре чрез добавка!"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/osv.py:132
|
||||
|
@ -219,7 +255,7 @@ msgstr "ir.ui.view.custom"
|
|||
#: code:addons/base/ir/ir_model.py:368
|
||||
#, python-format
|
||||
msgid "Renaming sparse field \"%s\" is not allowed"
|
||||
msgstr ""
|
||||
msgstr "Промяна частично на полето \"%s\" не е възможно"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sz
|
||||
|
@ -235,12 +271,12 @@ msgstr "създаден."
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_xsl:0
|
||||
msgid "XSL Path"
|
||||
msgstr ""
|
||||
msgstr "XSL Път"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_tr
|
||||
msgid "Turkey - Accounting"
|
||||
msgstr ""
|
||||
msgstr "Турция - Сметкоплан"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.sequence,number_increment:0
|
||||
|
@ -256,12 +292,12 @@ msgstr "Структура на компанията"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Inuktitut / ᐃᓄᒃᑎᑐᑦ"
|
||||
msgstr ""
|
||||
msgstr "Инуктитут / ᐃᓄᒃᑎᑐᑦ"
|
||||
|
||||
#. module: base
|
||||
#: model:res.groups,name:base.group_multi_currency
|
||||
msgid "Multi Currencies"
|
||||
msgstr ""
|
||||
msgstr "Множество валути"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_cl
|
||||
|
@ -14425,7 +14461,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_purchase
|
||||
msgid "Purchase Orders, Receptions, Supplier Invoices"
|
||||
msgstr ""
|
||||
msgstr "Заявка за доставка, Пристигания, Фактури от доставчик"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_hr_payroll
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -59,12 +59,12 @@ msgstr "Codi vista"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_sale_stock
|
||||
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
|
||||
msgstr ""
|
||||
msgstr "Cotització, ordres de venda, lliurament i Control de facturació"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.sequence,implementation:0
|
||||
msgid "No gap"
|
||||
msgstr ""
|
||||
msgstr "No hi ha espai"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -82,11 +82,13 @@ msgid ""
|
|||
"Helps you manage your projects and tasks by tracking them, generating "
|
||||
"plannings, etc..."
|
||||
msgstr ""
|
||||
"L'ajuda a gestionar els seus projectes i tasques per fer-ne el seguiment, "
|
||||
"generar planificacions, etc .."
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_point_of_sale
|
||||
msgid "Touchscreen Interface for Shops"
|
||||
msgstr ""
|
||||
msgstr "Interfície de pantalla tàctil per Botigues"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
|
||||
|
@ -98,6 +100,8 @@ msgstr ""
|
|||
msgid ""
|
||||
"Model name on which the method to be called is located, e.g. 'res.partner'."
|
||||
msgstr ""
|
||||
"Nom del model en el qual es troba el mètode que es dirà, per exemple, "
|
||||
"'Res.partner'."
|
||||
|
||||
#. module: base
|
||||
#: view:ir.module.module:0
|
||||
|
@ -123,7 +127,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:ir.actions.client,params:0
|
||||
msgid "Supplementary arguments"
|
||||
msgstr ""
|
||||
msgstr "Temes suplementaris"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_google_base_account
|
||||
|
@ -136,7 +140,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: help:res.partner,employee:0
|
||||
msgid "Check this box if this contact is an Employee."
|
||||
msgstr ""
|
||||
msgstr "Marqueu aquesta casella si aquest contacte és un empleat."
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,domain:0
|
||||
|
@ -167,12 +171,12 @@ msgstr "Destí finestra"
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_rml:0
|
||||
msgid "Main Report File Path"
|
||||
msgstr ""
|
||||
msgstr "Ruta de l'arxiu d'informe principal"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
|
||||
msgid "Sales Analytic Distribution"
|
||||
msgstr ""
|
||||
msgstr "Vendes de Distribució Analítica"
|
||||
|
||||
#. module: base
|
||||
#: 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
|
||||
#, python-format
|
||||
msgid "Renaming sparse field \"%s\" is not allowed"
|
||||
msgstr ""
|
||||
msgstr "Canvi de nom de camp \"% s\" no està permès"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sz
|
||||
|
@ -265,7 +269,7 @@ msgstr "Inuktitut / ᐃᓄᒃᑎᑐᑦ"
|
|||
#. module: base
|
||||
#: model:res.groups,name:base.group_multi_currency
|
||||
msgid "Multi Currencies"
|
||||
msgstr ""
|
||||
msgstr "Monedes múltiples"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_cl
|
||||
|
@ -281,7 +285,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale
|
||||
msgid "Sales Management"
|
||||
msgstr ""
|
||||
msgstr "Gestió de vendes"
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,user_id:0
|
||||
|
@ -289,6 +293,8 @@ msgid ""
|
|||
"The internal user that is in charge of communicating with this contact if "
|
||||
"any."
|
||||
msgstr ""
|
||||
"Si n'hi ha, usuari intern que s'encarrega de la comunicació amb aquest "
|
||||
"contacte."
|
||||
|
||||
#. module: base
|
||||
#: view:res.partner:0
|
||||
|
@ -359,7 +365,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_customer_relationship_management
|
||||
msgid "Customer Relationship Management"
|
||||
msgstr ""
|
||||
msgstr "Gestió de les relacions amb el client (CRM)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_delivery
|
||||
|
@ -391,7 +397,7 @@ msgstr "group_by no vàlid"
|
|||
#. module: base
|
||||
#: field:ir.module.category,child_ids:0
|
||||
msgid "Child Applications"
|
||||
msgstr ""
|
||||
msgstr "Aplicacions filles"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,credit_limit:0
|
||||
|
@ -408,7 +414,7 @@ msgstr "Data revisió"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_base_action_rule
|
||||
msgid "Automated Action Rules"
|
||||
msgstr ""
|
||||
msgstr "Regles automatitzades d'acció"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.attachment:0
|
||||
|
@ -449,6 +455,8 @@ msgid ""
|
|||
"Invalid date/time format directive specified. Please refer to the list of "
|
||||
"allowed directives, displayed when you edit a language."
|
||||
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
|
||||
#: code:addons/orm.py:4152
|
||||
|
@ -792,7 +800,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: help:ir.cron,nextcall:0
|
||||
msgid "Next planned execution date for this job."
|
||||
msgstr ""
|
||||
msgstr "Propera data d'execució prevista per aquest treball."
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_ui_view
|
||||
|
@ -807,7 +815,7 @@ msgstr "Eritrea"
|
|||
#. module: base
|
||||
#: sql_constraint:res.company:0
|
||||
msgid "The company name must be unique !"
|
||||
msgstr ""
|
||||
msgstr "El nom de l'empresa ha de ser únic!"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_base_action_rule_admin
|
||||
|
@ -846,7 +854,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:ir.mail_server:0
|
||||
msgid "Security and Authentication"
|
||||
msgstr ""
|
||||
msgstr "Seguretat i autenticació"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_calendar
|
||||
|
@ -949,7 +957,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:res.users:0
|
||||
msgid "Email Preferences"
|
||||
msgstr ""
|
||||
msgstr "Preferències del correu electrònic"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_fields.py:195
|
||||
|
@ -1014,7 +1022,7 @@ msgstr "Oman"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_mrp
|
||||
msgid "MRP"
|
||||
msgstr ""
|
||||
msgstr "MRP"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_hr_attendance
|
||||
|
@ -1036,7 +1044,7 @@ msgstr "Niue"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_membership
|
||||
msgid "Membership Management"
|
||||
msgstr ""
|
||||
msgstr "Administració d'afiliacions"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.module.module,license:0
|
||||
|
@ -1068,7 +1076,7 @@ msgstr "Tipus de referències en sol·licituds"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_google_base_account
|
||||
msgid "Google Users"
|
||||
msgstr ""
|
||||
msgstr "Usuaris de Google"
|
||||
|
||||
#. module: base
|
||||
#: 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 "
|
||||
"evaluation."
|
||||
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
|
||||
#: model:res.country,name:base.ad
|
||||
|
@ -1144,6 +1158,8 @@ msgstr "Fitxer TGZ"
|
|||
msgid ""
|
||||
"Users added to this group are automatically added in the following groups."
|
||||
msgstr ""
|
||||
"Els usuaris afegits a aquest grup s'agreguen automàticament en els següents "
|
||||
"grups."
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_model.py:725
|
||||
|
@ -1263,7 +1279,7 @@ msgstr ""
|
|||
#: code:addons/base/ir/ir_mail_server.py:212
|
||||
#, python-format
|
||||
msgid "Connection test failed!"
|
||||
msgstr ""
|
||||
msgstr "La prova de connexió ha fallat!"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.actions.server,state:0
|
||||
|
@ -1401,7 +1417,7 @@ msgstr ""
|
|||
#: code:addons/base/module/wizard/base_language_install.py:53
|
||||
#, python-format
|
||||
msgid "Language Pack"
|
||||
msgstr ""
|
||||
msgstr "Paquet d'idioma"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_tests
|
||||
|
@ -1473,7 +1489,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:ir.module.category,parent_id:0
|
||||
msgid "Parent Application"
|
||||
msgstr ""
|
||||
msgstr "Aplicació pare"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.ir_action_wizard
|
||||
|
@ -1491,12 +1507,12 @@ msgstr "Operació cancel·lada"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_document
|
||||
msgid "Document Management System"
|
||||
msgstr ""
|
||||
msgstr "Sistema de gestió de documents"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_crm_claim
|
||||
msgid "Claims Management"
|
||||
msgstr ""
|
||||
msgstr "Gestió de demandes"
|
||||
|
||||
#. module: base
|
||||
#: 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 "
|
||||
"created automatically based on these data."
|
||||
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
|
||||
#: report:ir.module.reference:0
|
||||
|
@ -2169,7 +2190,7 @@ msgstr ""
|
|||
#: model:ir.ui.menu,name:base.menu_administration
|
||||
#: model:res.groups,name:base.group_system
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
msgstr "Configuració"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.actions.act_window,view_type:0
|
||||
|
@ -2674,7 +2695,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_invoiced
|
||||
msgid "Invoicing"
|
||||
msgstr ""
|
||||
msgstr "Facturació"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.view_sc,name:0
|
||||
|
@ -5036,7 +5057,7 @@ msgstr "Kenia"
|
|||
#: model:ir.actions.act_window,name:base.action_translation
|
||||
#: model:ir.ui.menu,name:base.menu_action_translation
|
||||
msgid "Translated Terms"
|
||||
msgstr ""
|
||||
msgstr "Termes traduïts"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -6572,7 +6593,7 @@ msgstr "Acció"
|
|||
#. module: base
|
||||
#: view:ir.actions.server:0
|
||||
msgid "Email Configuration"
|
||||
msgstr "Configuració Email"
|
||||
msgstr "Configuració correu electrònic"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_cron
|
||||
|
@ -8693,7 +8714,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_account
|
||||
msgid "eInvoicing"
|
||||
msgstr ""
|
||||
msgstr "Facturació electrònica"
|
||||
|
||||
#. module: base
|
||||
#: 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.ui.menu,name:base.menu_wizard_update_translations
|
||||
msgid "Synchronize Terms"
|
||||
msgstr ""
|
||||
msgstr "Sincronitzar els termes"
|
||||
|
||||
#. module: base
|
||||
#: field:res.lang,thousands_sep:0
|
||||
|
@ -10975,7 +10996,7 @@ msgstr "Laos"
|
|||
#: field:res.partner,email:0
|
||||
#, python-format
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
msgstr "Correu electrònic"
|
||||
|
||||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_12
|
||||
|
@ -12909,7 +12930,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: help:ir.cron,function:0
|
||||
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
|
||||
#: field:ir.actions.client,tag:0
|
||||
|
@ -13000,7 +13021,7 @@ msgstr "Sàhara Occidental"
|
|||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_account_voucher
|
||||
msgid "Invoicing & Payments"
|
||||
msgstr ""
|
||||
msgstr "Facturació i pagaments"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,help:base.action_res_company_form
|
||||
|
@ -14134,7 +14155,7 @@ msgstr "Relació objecte"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_account_voucher
|
||||
msgid "eInvoicing & Payments"
|
||||
msgstr ""
|
||||
msgstr "Facturació electrònica i pagaments"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
|
@ -14335,7 +14356,7 @@ msgstr "Aplica actualitzacions programades"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale_journal
|
||||
msgid "Invoicing Journals"
|
||||
msgstr ""
|
||||
msgstr "Diaris de facturació"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.ui.view,groups_id:0
|
||||
|
@ -14352,7 +14373,7 @@ msgstr "Persa / فارس"
|
|||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
msgid "Export Settings"
|
||||
msgstr ""
|
||||
msgstr "Exporta la configuració"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.act_window,src_model:0
|
||||
|
@ -14799,7 +14820,7 @@ msgstr "Finestra actual"
|
|||
#: model:ir.module.category,name:base.module_category_hidden
|
||||
#: view:res.users:0
|
||||
msgid "Technical Settings"
|
||||
msgstr ""
|
||||
msgstr "Configuració tècnica"
|
||||
|
||||
#. module: base
|
||||
#: 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 "
|
||||
"suggest you to install only the Invoicing."
|
||||
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
|
||||
#: model:ir.module.module,shortdesc:base.module_plugin_thunderbird
|
||||
|
@ -15535,9 +15558,6 @@ msgstr ""
|
|||
#~ msgid "Select Action Type"
|
||||
#~ msgstr "Seleccioneu tipus d'acció"
|
||||
|
||||
#~ msgid "E-Mail"
|
||||
#~ msgstr "Email"
|
||||
|
||||
#~ msgid "Schedule Upgrade"
|
||||
#~ msgstr "Programa actualització"
|
||||
|
||||
|
@ -15809,9 +15829,6 @@ msgstr ""
|
|||
#~ msgid "Select Report"
|
||||
#~ msgstr "Seleccioneu informe"
|
||||
|
||||
#~ msgid "Sender's email"
|
||||
#~ msgstr "Email remitent"
|
||||
|
||||
#~ msgid "Connect Events to Actions"
|
||||
#~ msgstr "Connecta esdeveniments a accions"
|
||||
|
||||
|
@ -15931,9 +15948,6 @@ msgstr ""
|
|||
#~ msgid "Python code to be executed"
|
||||
#~ msgstr "Codi Python a executar-se"
|
||||
|
||||
#~ msgid "Send Email"
|
||||
#~ msgstr "Envia email"
|
||||
|
||||
#~ msgid "Next"
|
||||
#~ msgstr "Següent"
|
||||
|
||||
|
@ -17157,3 +17171,50 @@ msgstr ""
|
|||
#~ msgstr ""
|
||||
#~ "Tipus de vista: 'Arbre' per a una vista d'arbre jeràrquica, o 'Formulari' "
|
||||
#~ "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"
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
"X-Poedit-Language: Czech\n"
|
||||
|
||||
#. module: base
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:00+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -25,6 +25,10 @@ msgid ""
|
|||
"================================================\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Modul for check-skrivning og -udprint.\n"
|
||||
"================================================\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sh
|
||||
|
@ -48,6 +52,8 @@ msgid ""
|
|||
"The second argument of the many2many field %s must be a SQL table !You used "
|
||||
"%s, which is not a valid SQL table name."
|
||||
msgstr ""
|
||||
"Det andet argument i many2many-feltet %s skal være en SQL-tabel. !Du brugte "
|
||||
"%s, som ikke er et gyldigt tabelnavn."
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.view,arch:0
|
||||
|
@ -73,7 +79,7 @@ msgstr "Ungarsk / Magyar"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (PY) / Español (PY)"
|
||||
msgstr ""
|
||||
msgstr "Spanish (PY) / Spansk (PY)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,description:base.module_category_project_management
|
||||
|
@ -81,11 +87,13 @@ msgid ""
|
|||
"Helps you manage your projects and tasks by tracking them, generating "
|
||||
"plannings, etc..."
|
||||
msgstr ""
|
||||
"Hjælper dig med at administrere dine projekter og opgaver ved at spore dem, "
|
||||
"generere planlægning, osv. .."
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_point_of_sale
|
||||
msgid "Touchscreen Interface for Shops"
|
||||
msgstr ""
|
||||
msgstr "Touchscreen-grænseflade for butikker"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
|
||||
|
@ -101,7 +109,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:ir.module.module:0
|
||||
msgid "Created Views"
|
||||
msgstr ""
|
||||
msgstr "Oprettede visninger"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_product_manufacturer
|
||||
|
@ -118,11 +126,22 @@ msgid ""
|
|||
" * Product Attributes\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Et modul som tilføjer producenterne og attributter på produkt formularen.\n"
|
||||
"====================================================================\n"
|
||||
"\n"
|
||||
"Du kan nu definere følgende for et produkt:\n"
|
||||
"-----------------------------------------------\n"
|
||||
" * Producent\n"
|
||||
" * Producentens produktnavn\n"
|
||||
" * Producentens produktkode\n"
|
||||
" * Produktattributter\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.client,params:0
|
||||
msgid "Supplementary arguments"
|
||||
msgstr ""
|
||||
msgstr "Supplerende argumenter"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_google_base_account
|
||||
|
@ -131,11 +150,14 @@ msgid ""
|
|||
"The module adds google user in res user.\n"
|
||||
"========================================\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Modulet tilføjer google user i res user.\n"
|
||||
"========================================\n"
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,employee:0
|
||||
msgid "Check this box if this contact is an Employee."
|
||||
msgstr ""
|
||||
msgstr "Afkryds denne boks hvis kontakten er en medarbejder."
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,domain:0
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -12,8 +12,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
"X-Poedit-Country: GREECE\n"
|
||||
"X-Poedit-Language: Greek\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:21+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:19+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -7758,7 +7758,7 @@ msgstr "Acción"
|
|||
#. module: base
|
||||
#: view:ir.actions.server:0
|
||||
msgid "Email Configuration"
|
||||
msgstr "Configuración Email"
|
||||
msgstr "Configuración del correo electrónico"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_cron
|
||||
|
@ -8436,7 +8436,7 @@ msgstr "Territorio británico del Océano Índico"
|
|||
#. module: base
|
||||
#: model:ir.actions.server,name:base.action_server_module_immediate_install
|
||||
msgid "Module Immediate Install"
|
||||
msgstr "Módulo de instalación inmediata"
|
||||
msgstr "Instalación inmediata del módulo(s)"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.actions.server:0
|
||||
|
@ -16623,7 +16623,7 @@ msgstr "Se requiere acceso como administrador para desinstalar un módulo"
|
|||
#. module: base
|
||||
#: model:ir.model,name:base.model_base_module_configuration
|
||||
msgid "base.module.configuration"
|
||||
msgstr "base.modulo.configuracion"
|
||||
msgstr "Configuración del módulo base"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_point_of_sale
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:21+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:21+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:08+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
"Language: \n"
|
||||
|
||||
#. module: base
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:21+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:22+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:08+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -578,7 +578,7 @@ msgstr "Guayana francesa"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_hr
|
||||
msgid "Jobs, Departments, Employees Details"
|
||||
msgstr ""
|
||||
msgstr "Trabajos, Departamentos, Detalle de Empleados"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_analytic
|
||||
|
@ -656,7 +656,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (VE) / Español (VE)"
|
||||
msgstr "Spanish (es_EC) / Español (es_EC)"
|
||||
msgstr "Spanish (es_VE) / Español (es_VE)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_timesheet_invoice
|
||||
|
@ -729,7 +729,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.company,logo_web:0
|
||||
msgid "Logo Web"
|
||||
msgstr ""
|
||||
msgstr "Logo Web"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_model.py:339
|
||||
|
@ -1220,7 +1220,7 @@ msgstr "Modelo de documento"
|
|||
#. module: base
|
||||
#: view:res.users:0
|
||||
msgid "Change the user password."
|
||||
msgstr ""
|
||||
msgstr "Cambiar password de usuario"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -1849,7 +1849,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_project_issue
|
||||
msgid "Portal Issue"
|
||||
msgstr ""
|
||||
msgstr "Tarea de Portal"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_tools
|
||||
|
@ -1873,7 +1873,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.partner,image_small:0
|
||||
msgid "Small-sized image"
|
||||
msgstr ""
|
||||
msgstr "Tamaño pequeño de imagen"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_stock
|
||||
|
@ -1975,7 +1975,7 @@ msgstr ""
|
|||
#: code:addons/base/ir/ir_fields.py:164
|
||||
#, python-format
|
||||
msgid "Unknown value '%s' for boolean field '%%(field)s', assuming '%s'"
|
||||
msgstr ""
|
||||
msgstr "Valor desconocido '%s' para campo lógico '%%(field)s', sumiendo '%s'"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.nl
|
||||
|
@ -1985,12 +1985,12 @@ msgstr "Países Bajos-Holanda"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_event
|
||||
msgid "Portal Event"
|
||||
msgstr ""
|
||||
msgstr "Evento de Portal"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.translation,state:0
|
||||
msgid "Translation in Progress"
|
||||
msgstr ""
|
||||
msgstr "Traducción en Progreso"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_rule
|
||||
|
@ -2005,7 +2005,7 @@ msgstr "Días"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_fleet
|
||||
msgid "Vehicle, leasing, insurances, costs"
|
||||
msgstr ""
|
||||
msgstr "Vehículo, arrendamiento, seguros, costos"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.model.access:0
|
||||
|
@ -2016,7 +2016,7 @@ msgstr "Acceso de lectura"
|
|||
#. module: base
|
||||
#: help:ir.attachment,res_id:0
|
||||
msgid "The record id this is attached to"
|
||||
msgstr ""
|
||||
msgstr "El id de registro está adjunto a"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_share
|
||||
|
@ -2097,7 +2097,7 @@ msgstr "Crear Tareas en SO"
|
|||
#: code:addons/base/ir/ir_model.py:318
|
||||
#, python-format
|
||||
msgid "This column contains module data and cannot be removed!"
|
||||
msgstr ""
|
||||
msgstr "Esta columna contiene datos del módulo y no puede ser eliminado !"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner.bank,footer:0
|
||||
|
@ -2235,7 +2235,7 @@ msgstr "Ruta de acceso completa"
|
|||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
msgid "The next step depends on the file format:"
|
||||
msgstr ""
|
||||
msgstr "El siguiente paso, depende el formato de archivo:"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -2251,7 +2251,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
msgid "PO(T) format: you should edit it with a PO editor such as"
|
||||
msgstr ""
|
||||
msgstr "PO(T) formato: Debes editarlo con un Editor de archivos PO."
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_administration
|
||||
|
@ -2275,7 +2275,7 @@ msgstr "Crear / Escribir / Copiar"
|
|||
#. module: base
|
||||
#: view:ir.sequence:0
|
||||
msgid "Second: %(sec)s"
|
||||
msgstr ""
|
||||
msgstr "Segundo: %(sec)s"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.act_window,view_mode:0
|
||||
|
@ -2340,12 +2340,12 @@ msgstr "Bahamas"
|
|||
#. module: base
|
||||
#: field:ir.rule,perm_create:0
|
||||
msgid "Apply for Create"
|
||||
msgstr ""
|
||||
msgstr "Aplicar para Creación"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_tools
|
||||
msgid "Extra Tools"
|
||||
msgstr ""
|
||||
msgstr "Herramientas Extras"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.attachment:0
|
||||
|
@ -2363,6 +2363,8 @@ msgid ""
|
|||
"Appears by default on the top right corner of your printed documents (report "
|
||||
"header)."
|
||||
msgstr ""
|
||||
"Aparece por defecto en la esquina superior derecha de sus documentos "
|
||||
"impresos (cabecera de reporte)"
|
||||
|
||||
#. module: base
|
||||
#: field:base.module.update,update:0
|
||||
|
@ -2377,7 +2379,7 @@ msgstr "Método"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_auth_crypt
|
||||
msgid "Password Encryption"
|
||||
msgstr ""
|
||||
msgstr "Encriptación de Contraseña"
|
||||
|
||||
#. module: base
|
||||
#: view:workflow.activity:0
|
||||
|
@ -2417,11 +2419,13 @@ msgstr ""
|
|||
msgid ""
|
||||
"No matching record found for %(field_type)s '%(value)s' in field '%%(field)s'"
|
||||
msgstr ""
|
||||
"No se encuentra un registro para %(field_type)s '%(value)s' en campo "
|
||||
"'%%(field)s'"
|
||||
|
||||
#. module: base
|
||||
#: field:change.password.user,new_passwd:0
|
||||
msgid "New Password"
|
||||
msgstr ""
|
||||
msgstr "Nueva Contraseña"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,help:base.action_ui_view
|
||||
|
@ -2695,7 +2699,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_auth_oauth_signup
|
||||
msgid "Signup with OAuth2 Authentication"
|
||||
msgstr ""
|
||||
msgstr "Ingreos con OAuth2"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.model,state:0
|
||||
|
@ -2722,7 +2726,7 @@ msgstr "Greek / Ελληνικά"
|
|||
#. module: base
|
||||
#: field:res.company,custom_footer:0
|
||||
msgid "Custom Footer"
|
||||
msgstr ""
|
||||
msgstr "Pie de página personalizado"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale_crm
|
||||
|
@ -2790,7 +2794,7 @@ msgstr "Nombre de acceso rápido"
|
|||
#. module: base
|
||||
#: field:res.partner,contact_address:0
|
||||
msgid "Complete Address"
|
||||
msgstr ""
|
||||
msgstr "Dirección Completa"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.act_window,limit:0
|
||||
|
@ -2873,7 +2877,7 @@ msgstr "Id de registro"
|
|||
#. module: base
|
||||
#: view:ir.filters:0
|
||||
msgid "My Filters"
|
||||
msgstr ""
|
||||
msgstr "Mis filtros"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,email:0
|
||||
|
@ -2893,6 +2897,7 @@ msgstr ""
|
|||
#, python-format
|
||||
msgid "Found multiple matches for field '%%(field)s' (%d matches)"
|
||||
msgstr ""
|
||||
"Se encontró multiples resultados para el campo '%%(field)s' (%d ocurrencias)"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -2926,7 +2931,7 @@ msgstr "Argumentos enviados al cliente junto con el tag view"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_contacts
|
||||
msgid "Contacts, People and Companies"
|
||||
msgstr ""
|
||||
msgstr "Contactos personas y Empresas"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.tt
|
||||
|
@ -2972,7 +2977,7 @@ msgstr "Gerente"
|
|||
#: code:addons/base/ir/ir_model.py:719
|
||||
#, python-format
|
||||
msgid "Sorry, you are not allowed to access this document."
|
||||
msgstr ""
|
||||
msgstr "Perdón, no estas permitido para acceder a este documento."
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.py
|
||||
|
@ -2987,7 +2992,7 @@ msgstr "Fiji"
|
|||
#. module: base
|
||||
#: view:ir.actions.report.xml:0
|
||||
msgid "Report Xml"
|
||||
msgstr ""
|
||||
msgstr "Reporte Xml"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_purchase
|
||||
|
@ -3058,7 +3063,7 @@ msgstr "Heredado"
|
|||
#: code:addons/base/ir/ir_fields.py:146
|
||||
#, python-format
|
||||
msgid "yes"
|
||||
msgstr ""
|
||||
msgstr "si"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.model.fields,serialization_field_id:0
|
||||
|
@ -3088,7 +3093,7 @@ msgstr ""
|
|||
#: code:addons/base/ir/ir_fields.py:174
|
||||
#, python-format
|
||||
msgid "'%s' does not seem to be an integer for field '%%(field)s'"
|
||||
msgstr ""
|
||||
msgstr "'%s' no parece ser un entero para el campo '%%(field)s'"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,description:base.module_category_report_designer
|
||||
|
@ -3198,6 +3203,8 @@ msgid ""
|
|||
"the user will have an access to the sales configuration as well as statistic "
|
||||
"reports."
|
||||
msgstr ""
|
||||
"el usuario tendra acceso a la configuración de ventas así como a las "
|
||||
"estadísticas."
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.nz
|
||||
|
@ -3327,7 +3334,7 @@ msgstr "Tipo de reporte desconocido: %s"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_hr_expense
|
||||
msgid "Expenses Validation, Invoicing"
|
||||
msgstr ""
|
||||
msgstr "Validación de gastos, Facturación"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_be_hr_payroll_account
|
||||
|
@ -3346,7 +3353,7 @@ msgstr "Armenia"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_hr_evaluation
|
||||
msgid "Periodical Evaluations, Appraisals, Surveys"
|
||||
msgstr ""
|
||||
msgstr "Evaluaciones periódicas, valoraciones, encuentas"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.ir_property_form
|
||||
|
@ -3367,7 +3374,7 @@ msgstr "Suecia"
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_file:0
|
||||
msgid "Report File"
|
||||
msgstr ""
|
||||
msgstr "Archivo de reporte"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.actions.act_window.view,view_mode:0
|
||||
|
@ -3400,7 +3407,7 @@ msgstr ""
|
|||
#: code:addons/orm.py:3870
|
||||
#, python-format
|
||||
msgid "Missing document(s)"
|
||||
msgstr ""
|
||||
msgstr "Documento faltante"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_res_partner_bank_type
|
||||
|
@ -3465,7 +3472,7 @@ msgstr "Calendario"
|
|||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_knowledge_management
|
||||
msgid "Knowledge"
|
||||
msgstr ""
|
||||
msgstr "Gestión de Conocimiento"
|
||||
|
||||
#. module: base
|
||||
#: field:workflow.activity,signal_send:0
|
||||
|
@ -3608,7 +3615,7 @@ msgstr "workflow.actividad"
|
|||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
msgid "Export Complete"
|
||||
msgstr ""
|
||||
msgstr "Exportación completa"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.ui.view_sc,res_id:0
|
||||
|
@ -3637,7 +3644,7 @@ msgstr "Finlandes"
|
|||
#. module: base
|
||||
#: view:ir.config_parameter:0
|
||||
msgid "System Properties"
|
||||
msgstr ""
|
||||
msgstr "Propiedades del sistema"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.sequence,prefix:0
|
||||
|
@ -3681,12 +3688,12 @@ msgstr "Seleccione el Paquete del Módulo de Importación (Archivo zip.):"
|
|||
#. module: base
|
||||
#: view:ir.filters:0
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
msgstr "Personal"
|
||||
|
||||
#. module: base
|
||||
#: field:base.language.export,modules:0
|
||||
msgid "Modules To Export"
|
||||
msgstr ""
|
||||
msgstr "Módulos a exportar"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.mt
|
||||
|
@ -3699,6 +3706,8 @@ msgstr "Malta"
|
|||
msgid ""
|
||||
"Only users with the following access level are currently allowed to do that"
|
||||
msgstr ""
|
||||
"Sólo los usuarios con los siguientes niveles de acceso están permitidos a "
|
||||
"hacer eso"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,fields_lines:0
|
||||
|
@ -3789,7 +3798,7 @@ msgstr "Antártida"
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Persons"
|
||||
msgstr ""
|
||||
msgstr "Personas"
|
||||
|
||||
#. module: base
|
||||
#: view:base.language.import:0
|
||||
|
@ -3849,7 +3858,7 @@ msgstr "Interacción entre reglas"
|
|||
#: field:res.company,rml_footer:0
|
||||
#: field:res.company,rml_footer_readonly:0
|
||||
msgid "Report Footer"
|
||||
msgstr ""
|
||||
msgstr "Píe de Página de Reporte"
|
||||
|
||||
#. module: base
|
||||
#: selection:res.lang,direction:0
|
||||
|
@ -3950,7 +3959,7 @@ msgstr "Togo"
|
|||
#: field:ir.actions.act_window,res_model:0
|
||||
#: field:ir.actions.client,res_model:0
|
||||
msgid "Destination Model"
|
||||
msgstr ""
|
||||
msgstr "Modelo destino"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.sequence,implementation:0
|
||||
|
@ -3974,7 +3983,7 @@ msgstr "Tayiko / اردو"
|
|||
#: code:addons/orm.py:3901
|
||||
#, python-format
|
||||
msgid "Access Denied"
|
||||
msgstr ""
|
||||
msgstr "Acceso Denegado"
|
||||
|
||||
#. module: base
|
||||
#: field:res.company,name:0
|
||||
|
@ -4084,7 +4093,7 @@ msgstr "%x - Representación apropiada de fecha."
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Tag"
|
||||
msgstr ""
|
||||
msgstr "Tag"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -4135,7 +4144,7 @@ msgstr "Nauru"
|
|||
#: code:addons/base/res/res_company.py:166
|
||||
#, python-format
|
||||
msgid "Reg"
|
||||
msgstr ""
|
||||
msgstr "Reg"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_property
|
||||
|
@ -4299,7 +4308,7 @@ msgstr "S.L."
|
|||
#. module: base
|
||||
#: model:ir.actions.server,name:base.action_run_ir_action_todo
|
||||
msgid "Run Remaining Action Todo"
|
||||
msgstr ""
|
||||
msgstr "Correr acciones pendientes"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,ean13:0
|
||||
|
@ -4396,7 +4405,7 @@ msgstr "Plan de Cuentas"
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_event_main
|
||||
msgid "Events Organization"
|
||||
msgstr ""
|
||||
msgstr "Organización de Eventos"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.action_partner_customer_form
|
||||
|
@ -4424,7 +4433,7 @@ msgstr "Campo base"
|
|||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_managing_vehicles_and_contracts
|
||||
msgid "Managing vehicles and contracts"
|
||||
msgstr ""
|
||||
msgstr "Gestión de Vehículos y contratos"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_base_setup
|
||||
|
@ -4540,12 +4549,12 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_sale
|
||||
msgid "Quotations, Sales Orders, Invoicing"
|
||||
msgstr ""
|
||||
msgstr "Cotizaciones, Ordenes de Venta, Facturación"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,parent_id:0
|
||||
msgid "Related Company"
|
||||
msgstr ""
|
||||
msgstr "Compañía Relacionada"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.act_url,help:0
|
||||
|
@ -4591,7 +4600,7 @@ msgstr "'código' debe ser único"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_knowledge
|
||||
msgid "Knowledge Management System"
|
||||
msgstr ""
|
||||
msgstr "Gestión del Conocimiento"
|
||||
|
||||
#. module: base
|
||||
#: view:workflow.activity:0
|
||||
|
@ -4687,12 +4696,12 @@ msgstr "Hindi / हिंदी"
|
|||
#: model:ir.actions.act_window,name:base.action_view_base_language_install
|
||||
#: model:ir.ui.menu,name:base.menu_view_base_language_install
|
||||
msgid "Load a Translation"
|
||||
msgstr ""
|
||||
msgstr "Cargar Traducción"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.module.module,latest_version:0
|
||||
msgid "Installed Version"
|
||||
msgstr ""
|
||||
msgstr "Versión Instalada"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_test
|
||||
|
@ -4806,7 +4815,7 @@ msgstr "Vista"
|
|||
#: code:addons/base/ir/ir_fields.py:146
|
||||
#, python-format
|
||||
msgid "no"
|
||||
msgstr ""
|
||||
msgstr "no"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_crm_partner_assign
|
||||
|
@ -4840,7 +4849,7 @@ msgstr "Guinea ecuatorial"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_api
|
||||
msgid "OpenERP Web API"
|
||||
msgstr ""
|
||||
msgstr "Web API OpenERP"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_fr_rib
|
||||
|
@ -5047,7 +5056,7 @@ msgstr "Flujos"
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.next_id_73
|
||||
msgid "Purchase"
|
||||
msgstr ""
|
||||
msgstr "Compra"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -5062,12 +5071,12 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
msgid "This file was generated using the universal"
|
||||
msgstr ""
|
||||
msgstr "Este archivo fue generado usando el universal"
|
||||
|
||||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_7
|
||||
msgid "IT Services"
|
||||
msgstr ""
|
||||
msgstr "Servicios de TI"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_specific_industry_applications
|
||||
|
@ -5077,7 +5086,7 @@ msgstr "Aplicaciones para Industrias Específicas"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_google_docs
|
||||
msgid "Google Docs integration"
|
||||
msgstr ""
|
||||
msgstr "Integración con Google Docs"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.attachment,res_model:0
|
||||
|
@ -5088,7 +5097,7 @@ msgstr ""
|
|||
#: code:addons/base/ir/ir_fields.py:327
|
||||
#, python-format
|
||||
msgid "name"
|
||||
msgstr ""
|
||||
msgstr "nombre"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_mrp_operations
|
||||
|
@ -5134,7 +5143,7 @@ msgstr "Saltar"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_event_sale
|
||||
msgid "Events Sales"
|
||||
msgstr ""
|
||||
msgstr "Eventos de Ventas"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.ls
|
||||
|
@ -5144,7 +5153,7 @@ msgstr "Lesotho"
|
|||
#. module: base
|
||||
#: view:base.language.export:0
|
||||
msgid ", or your preferred text editor"
|
||||
msgstr ""
|
||||
msgstr ", o tu editor de texto preferido"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_crm_partner_assign
|
||||
|
@ -5186,7 +5195,7 @@ msgstr "Genérico"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_document_ftp
|
||||
msgid "Shared Repositories (FTP)"
|
||||
msgstr ""
|
||||
msgstr "Appraisals, Surveys\""
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sm
|
||||
|
@ -5211,12 +5220,12 @@ msgstr "Establecer a NULL"
|
|||
#. module: base
|
||||
#: view:res.users:0
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
msgstr "Appraisals, Surveys\""
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_xml:0
|
||||
msgid "XML Path"
|
||||
msgstr ""
|
||||
msgstr "Path XML"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.bj
|
||||
|
@ -5404,7 +5413,7 @@ msgstr "Tasas"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_email_template
|
||||
msgid "Email Templates"
|
||||
msgstr ""
|
||||
msgstr "Plantillas de Correo"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sy
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:22+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:08+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -673,7 +673,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_mx
|
||||
msgid "Mexico - Accounting"
|
||||
msgstr ""
|
||||
msgstr "México - Contabilidad"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.server,action_id:0
|
||||
|
@ -8634,7 +8634,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.country,name:base.mx
|
||||
msgid "Mexico"
|
||||
msgstr ""
|
||||
msgstr "México"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/orm.py:3902
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:00+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -9,8 +9,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:03+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n"
|
||||
"X-Poedit-Language: Persian\n"
|
||||
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:22+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:08+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:00+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:00+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -42,7 +42,7 @@ msgstr "Autre configuration"
|
|||
#. module: base
|
||||
#: selection:ir.property,type:0
|
||||
msgid "DateTime"
|
||||
msgstr "Horodatage"
|
||||
msgstr "Date/Heure"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/fields.py:643
|
||||
|
@ -698,6 +698,22 @@ msgid ""
|
|||
" A + B + C -> D + E\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ce module vous permet de produire plusieurs produits à partir d'un ordre de "
|
||||
"production.\n"
|
||||
"======================================================================\n"
|
||||
"\n"
|
||||
"Vous pouvez configurer des sous-produits dans la nomenclature des "
|
||||
"matériaux.\n"
|
||||
"\n"
|
||||
"Sans ce module :\n"
|
||||
"----------------------\n"
|
||||
" A + B + C -> D\n"
|
||||
"\n"
|
||||
"Avec ce module : \n"
|
||||
"-----------------------\n"
|
||||
" A + B + C -> D + E\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -2217,7 +2233,7 @@ msgstr "Accès en lecture"
|
|||
#. module: base
|
||||
#: help:ir.attachment,res_id:0
|
||||
msgid "The record id this is attached to"
|
||||
msgstr ""
|
||||
msgstr "L'ID de l'enregistrement est attaché à"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_share
|
||||
|
@ -3594,7 +3610,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.company,rml_header1:0
|
||||
msgid "Company Tagline"
|
||||
msgstr ""
|
||||
msgstr "Slogan de la société"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_users.py:668
|
||||
|
@ -3612,6 +3628,8 @@ msgid ""
|
|||
"the user will have an access to the human resources configuration as well as "
|
||||
"statistic reports."
|
||||
msgstr ""
|
||||
"l'utilisateur aura un accès à la configuration des ressources humaines comme "
|
||||
"aux rapports statistiques."
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_pl
|
||||
|
@ -4409,6 +4427,18 @@ msgid ""
|
|||
"If you need to manage your meetings, you should install the CRM module.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ceci est un système complet d'agenda.\n"
|
||||
"===============================\n"
|
||||
"\n"
|
||||
"Il supporte :\n"
|
||||
"---------------\n"
|
||||
" - L'agenda des événements,\n"
|
||||
" - Les événements récurrents.\n"
|
||||
"\n"
|
||||
"Si vous souhaitez gérer vos rendez-vous, vous devriez installer le module "
|
||||
"CRM.\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.je
|
||||
|
@ -4438,7 +4468,7 @@ msgstr "%x - Représentation de date appropriée"
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Tag"
|
||||
msgstr ""
|
||||
msgstr "Étiquette"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -4478,7 +4508,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.country,name:base.sk
|
||||
msgid "Slovakia"
|
||||
msgstr ""
|
||||
msgstr "Slovaquie"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.nr
|
||||
|
@ -4719,6 +4749,18 @@ msgid ""
|
|||
"comptable\n"
|
||||
"Seddik au cours du troisième trimestre 2010."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ce module de base permet de gérer le plan comptable pour le Maroc.\n"
|
||||
"=================================================================\n"
|
||||
"\n"
|
||||
"Ce Module charge le modèle du plan de comptes standard Marocain et permet "
|
||||
"de\n"
|
||||
"générer les états comptables aux normes marocaines (Bilan, CPC (comptes de\n"
|
||||
"produits et charges), balance générale à 6 colonnes, Grand livre "
|
||||
"cumulatif...).\n"
|
||||
"L'intégration comptable a été validé avec l'aide du Cabinet d'expertise "
|
||||
"comptable\n"
|
||||
"Seddik au cours du troisième trimestre 2010."
|
||||
|
||||
#. module: base
|
||||
#: help:ir.module.module,auto_install:0
|
||||
|
@ -4753,7 +4795,7 @@ msgstr "Plans comtables"
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_event_main
|
||||
msgid "Events Organization"
|
||||
msgstr ""
|
||||
msgstr "Organisation d'évènements"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.action_partner_customer_form
|
||||
|
@ -4781,7 +4823,7 @@ msgstr "Champ de base"
|
|||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_managing_vehicles_and_contracts
|
||||
msgid "Managing vehicles and contracts"
|
||||
msgstr ""
|
||||
msgstr "Gestion de véhicules et de contrats"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_base_setup
|
||||
|
@ -4908,12 +4950,12 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_sale
|
||||
msgid "Quotations, Sales Orders, Invoicing"
|
||||
msgstr ""
|
||||
msgstr "Devis, commandes, facturation"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,parent_id:0
|
||||
msgid "Related Company"
|
||||
msgstr ""
|
||||
msgstr "Société parente"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.act_url,help:0
|
||||
|
@ -4959,7 +5001,7 @@ msgstr "`code` doit être unique."
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_knowledge
|
||||
msgid "Knowledge Management System"
|
||||
msgstr ""
|
||||
msgstr "Base de connaissances"
|
||||
|
||||
#. module: base
|
||||
#: view:workflow.activity:0
|
||||
|
@ -4983,6 +5025,14 @@ msgid ""
|
|||
"invite.\n"
|
||||
"\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ce module met à jour les notes dans OpenERP, en utilisant un éditeur "
|
||||
"externe\n"
|
||||
"===============================================================\n"
|
||||
"\n"
|
||||
"Utilisez le pour mettre à jour vos notes en temps réel, avec les "
|
||||
"utilisateurs invités.\n"
|
||||
"\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_sequence
|
||||
|
@ -5002,6 +5052,23 @@ msgid ""
|
|||
" * Number Padding\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Ce module permet de paramétrer les séquences de numérotation interne des "
|
||||
"écritures comptables.\n"
|
||||
"============================================================================="
|
||||
"=\n"
|
||||
"\n"
|
||||
"Il permet de configurer les séquences comptables\n"
|
||||
"\n"
|
||||
"Vous pouvez personnaliser les attributs suivants de la séquence : \n"
|
||||
"-----------------------------------------------------------------------------"
|
||||
"-----------\n"
|
||||
" * Préfixe\n"
|
||||
" * Suffixe\n"
|
||||
" * Nombre suivant\n"
|
||||
" * Incrément\n"
|
||||
" * Espacement.\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_project_timesheet
|
||||
|
@ -10516,7 +10583,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.partner,use_parent_address:0
|
||||
msgid "Use Company Address"
|
||||
msgstr ""
|
||||
msgstr "Utiliser l'adresse de la société"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_hr_holidays
|
||||
|
@ -13513,7 +13580,7 @@ msgstr "Chypre"
|
|||
#. module: base
|
||||
#: field:res.users,new_password:0
|
||||
msgid "Set Password"
|
||||
msgstr ""
|
||||
msgstr "Définir le mot de passe"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,subject:0
|
||||
|
@ -14748,7 +14815,7 @@ msgstr "Thaïlande"
|
|||
#. module: base
|
||||
#: model:ir.model,name:base.model_change_password_wizard
|
||||
msgid "Change Password Wizard"
|
||||
msgstr ""
|
||||
msgstr "Assistant de changement de mot de passe"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_account_voucher
|
||||
|
@ -14867,7 +14934,7 @@ msgstr "Taux de la devise"
|
|||
#: view:base.module.upgrade:0
|
||||
#: field:base.module.upgrade,module_info:0
|
||||
msgid "Modules to Update"
|
||||
msgstr ""
|
||||
msgstr "Modules à mettre à jour"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_custom_multicompany
|
||||
|
@ -14956,7 +15023,7 @@ msgstr "Utilisation de l'action"
|
|||
#. module: base
|
||||
#: field:ir.module.module,name:0
|
||||
msgid "Technical Name"
|
||||
msgstr ""
|
||||
msgstr "Nom technique"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_workflow_workitem
|
||||
|
@ -15020,7 +15087,7 @@ msgstr "Allemagne - Comptabilité"
|
|||
#. module: base
|
||||
#: view:ir.sequence:0
|
||||
msgid "Day of the Year: %(doy)s"
|
||||
msgstr ""
|
||||
msgstr "Jour de l'année: %(doy)s"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.menu,web_icon:0
|
||||
|
@ -15043,6 +15110,8 @@ msgid ""
|
|||
"If this field is empty, the view applies to all users. Otherwise, the view "
|
||||
"applies to the users of those groups only."
|
||||
msgstr ""
|
||||
"Si ce champ est vide, la vue s'applique à tous les utilisateurs. Sinon, la "
|
||||
"vue s'applique aux utilisateurs de ces groupes uniquement."
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -15057,12 +15126,12 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:ir.actions.act_window,src_model:0
|
||||
msgid "Source Model"
|
||||
msgstr ""
|
||||
msgstr "Classe source"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.sequence:0
|
||||
msgid "Day of the Week (0:Monday): %(weekday)s"
|
||||
msgstr ""
|
||||
msgstr "Jour de la semaine (0: lundi): %(weekday)s"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/wizard/base_module_upgrade.py:84
|
||||
|
@ -15076,7 +15145,7 @@ msgstr "Dépendance non trouvé !"
|
|||
#: code:addons/base/ir/ir_model.py:1024
|
||||
#, python-format
|
||||
msgid "Administrator access is required to uninstall a module"
|
||||
msgstr ""
|
||||
msgstr "L'accès administrateur est nécessaire pour désinstaller un module"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_base_module_configuration
|
||||
|
@ -15780,7 +15849,7 @@ msgstr "Chili"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_view_editor
|
||||
msgid "View Editor"
|
||||
msgstr ""
|
||||
msgstr "Editeur de vue"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.cron:0
|
||||
|
@ -15860,6 +15929,8 @@ msgid ""
|
|||
"Do you confirm the uninstallation of this module? This will permanently "
|
||||
"erase all data currently stored by the module!"
|
||||
msgstr ""
|
||||
"Confirmez-vous la désinstallation de ce module ? Cela efface définitivement "
|
||||
"toutes les données actuellement stockées par le module !"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,mobile:0
|
||||
|
@ -16077,7 +16148,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Internal Notes"
|
||||
msgstr ""
|
||||
msgstr "Notes internes"
|
||||
|
||||
#. module: base
|
||||
#: model:res.partner.title,name:base.res_partner_title_pvt_ltd
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -2774,15 +2774,15 @@ msgstr ""
|
|||
"szolgáltatás (belépés/Kilépés) és munka kódolás (időkimutatás) szervezését. "
|
||||
"Időkimutatás bevitelét minden nap a munkások biztosítják. Egy meghatározott "
|
||||
"periódus végén, a munkavállalók érvényesítik az időkimutatásukat és a "
|
||||
"vezetőjüknek kell nyugtáznia a csoport beírásait. A periódusok a vállalkozás "
|
||||
"osztályaihoz lesznek meghatározva és beállíthatóak havi vagy heti "
|
||||
"futtatásra.\n"
|
||||
"vezetőjüknek kell jóváhagynia a csoport beírásait. A periódusok a "
|
||||
"vállalkozás osztályaihoz lesznek meghatározva és beállíthatóak havi vagy "
|
||||
"heti futtatásra.\n"
|
||||
"\n"
|
||||
"A teljes időkimutatás érvényesítési folyamat a következő:\n"
|
||||
"---------------------------------------------\n"
|
||||
"* Terve lap\n"
|
||||
"* Munkavállalók érvényesítései a periódus végén\n"
|
||||
"* A projekt vezető nyugtázása\n"
|
||||
"* A projekt vezető jóváhagyása\n"
|
||||
"\n"
|
||||
"A nyugtázást a vállalatnál be lehet állítani:\n"
|
||||
"------------------------------------------------\n"
|
||||
|
@ -4107,18 +4107,18 @@ msgstr ""
|
|||
"\n"
|
||||
"Ez az alkalmazás lehetővé teszi a munkavállalók napi kiadásainak kezelését. "
|
||||
"Hozzáférést biztosít a munkavállalók kiadás jegyzékéhez valamint joga van "
|
||||
"kiegészíteni és érvényesíteni illetve elutasítani azokat. Érvényesítés után "
|
||||
"kiegészíteni és jóváhagyni illetve elutasítani azokat. Érvényesítés után "
|
||||
"számlát állít ki a munkavállaló részére.\n"
|
||||
"A munkavállalók beiktathatják a kiadásaikat amit az érvényesítés után a "
|
||||
"könyveléshez iktathat az érvényesítésre jogosultak.\n"
|
||||
"A munkavállalók beiktathatják a kiadásaikat amit a jóváhagyás után a "
|
||||
"könyveléshez iktathat a jóváhagyásra jogosultak.\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"A következő iktatási folyamat van beépítve:\n"
|
||||
"---------------------------------\n"
|
||||
"* Tervezett kiadás\n"
|
||||
"* A munkavállalók által jóváhagyott jegyzetek\n"
|
||||
"* Az osztályvezető általi érvényesítés\n"
|
||||
"* A könyvelő általi érvényesítés és nyugta kiadás\n"
|
||||
"* Az osztályvezető általi jóváhagyás\n"
|
||||
"* A könyvelő általi jóváhagyás és nyugta kiadás\n"
|
||||
"\n"
|
||||
"Ez a modul az könyvelés elemzőt is használja és kompatibilis a számlázó és "
|
||||
"az időkimutatás modullal, így automatikus ügyfél kiadás újra-számlázást is "
|
||||
|
@ -7584,7 +7584,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Ha a műveleti átmenet a kliens űrlapon található gomb megnyomásával "
|
||||
"történik, a jelző ellenőrzi a megnyomott gomb nevét. Ha a jel NULLA, nem "
|
||||
"szükséges gomb az átmenet érvényesítéséhez."
|
||||
"szükséges gomb az átmenet jóváhagyásához."
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.view.custom,ref_id:0
|
||||
|
@ -10067,7 +10067,7 @@ msgstr ""
|
|||
"Ha a számlának ez a sora érvényesítve lesz, ez generálni fog 3 elemző sort, "
|
||||
"egy könyvelési bejegyzéshez.\n"
|
||||
"\n"
|
||||
"Az elemzési terv érvényesíti a minimum és maximum százalékot a megoszlási "
|
||||
"Az elemzési terv jóváhagyja a minimum és maximum százalékot a megoszlási "
|
||||
"modell létrehozásakor.\n"
|
||||
" "
|
||||
|
||||
|
@ -13383,7 +13383,7 @@ msgstr "Probléma a 'Rekord Azonosító' beállításánál a Szerver müveletbe
|
|||
#: code:addons/orm.py:2816
|
||||
#, python-format
|
||||
msgid "ValidateError"
|
||||
msgstr "ValidateError"
|
||||
msgstr "Jóváhagyásihiba"
|
||||
|
||||
#. module: base
|
||||
#: view:base.module.import:0
|
||||
|
@ -13714,7 +13714,7 @@ msgstr "Normál"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_purchase_double_validation
|
||||
msgid "Double Validation on Purchases"
|
||||
msgstr "A vásárlásokra kétszeres érvényesítés"
|
||||
msgstr "A vásárlásokra kétszeres jóváhagyás"
|
||||
|
||||
#. module: base
|
||||
#: field:res.bank,street2:0
|
||||
|
@ -14414,11 +14414,11 @@ msgstr ""
|
|||
"\n"
|
||||
"A jelentésnek van felelőse és különböző állapot színekből alakul ki:\n"
|
||||
"-----------------------------------------------------------------\n"
|
||||
" * terv, nyitott, megszakított, végrehajtott.\n"
|
||||
" * terv, nyitott, visszavont, végrehajtott.\n"
|
||||
"\n"
|
||||
"Kötegelt végrehajtások egy különálló jelentésen kezelhetők az összes eladás "
|
||||
"egyszeri\n"
|
||||
"visszaigazolására, érvényesítésére vagy számla csomagra.\n"
|
||||
"visszaigazolására, jóváhagyásra vagy számla csomagra.\n"
|
||||
"\n"
|
||||
"Támogatja a kötegelt számlázási módot mely beállítható partnerekre és "
|
||||
"megrendelésekre, például:\n"
|
||||
|
@ -16039,7 +16039,7 @@ msgstr ""
|
|||
"=========================================================\n"
|
||||
"\n"
|
||||
"Ez a modul módosítja a vásárlás munkafolyamatot úgy, hogy a varázslóval "
|
||||
"beállított minimum mennyiséget elért vásárlás után érvényesíteni kell a "
|
||||
"beállított minimum mennyiséget elért vásárlás után jóvá kell hagyni a "
|
||||
"vásárlást\n"
|
||||
" "
|
||||
|
||||
|
@ -16205,7 +16205,7 @@ msgstr "Függőségek :"
|
|||
#. module: base
|
||||
#: field:res.company,vat:0
|
||||
msgid "Tax ID"
|
||||
msgstr "Adó azonosító"
|
||||
msgstr "Közösségi adószám"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_account_bank_statement_extensions
|
||||
|
@ -17983,7 +17983,7 @@ msgstr "Jamaika"
|
|||
#. module: base
|
||||
#: field:res.partner,color:0
|
||||
msgid "Color Index"
|
||||
msgstr "Szín mutató"
|
||||
msgstr "Szín meghatározó"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,help:base.action_partner_category_form
|
||||
|
@ -17994,10 +17994,10 @@ msgid ""
|
|||
"also belong to his parent category."
|
||||
msgstr ""
|
||||
"Rendszerezze a partner kategóriákat annak érdekében, hogy hatékonyabban "
|
||||
"tudja osztályozni őket a nyomonkövetési és analitikai célokra. Egy partner "
|
||||
"több kategóriához is tartozhat és a kategóriák hierarchikus szerkezettel is "
|
||||
"rendelkezhetnek: egy partner, aki egy adott kategóriához tartozik szintén "
|
||||
"tartozhat a szülőkategóriához is."
|
||||
"tudja osztályozni őket a nyomonkövetési és analitikai, elemzési célokra. Egy "
|
||||
"partner több kategóriához is tartozhat és a kategóriák hierarchikus "
|
||||
"szerkezettel is rendelkezhetnek: egy partner, aki egy adott kategóriához "
|
||||
"tartozik, szintén tartozhat a szülőkategóriához is."
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_survey
|
||||
|
@ -18029,7 +18029,7 @@ msgstr ""
|
|||
"választ adhat a \n"
|
||||
"különböző kérdésekre ha a felmérés elkészült. Partnerek is küldhetnek emailt "
|
||||
"a felhasználó\n"
|
||||
"nevével és jelszóval meghívásként a felmérésben való részvételhez.\n"
|
||||
"nevével és jelszóval, meghívásként a felmérésben való részvételhez.\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
|
|
|
@ -9,8 +9,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -8258,7 +8258,7 @@ msgstr "Numero successivo di questa sequenza"
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "at"
|
||||
msgstr "alle"
|
||||
msgstr "di"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:03+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:03+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:03+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0.0-rc1\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
|
||||
"PO-Revision-Date: 2012-12-18 05:45+0000\n"
|
||||
"Last-Translator: gobi <Unknown>\n"
|
||||
"PO-Revision-Date: 2013-02-07 04:04+0000\n"
|
||||
"Last-Translator: Tenuun Khangaitan <tenuun.khangaitan@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:03+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -5396,7 +5396,7 @@ msgstr ""
|
|||
#: field:ir.model.relation,model:0
|
||||
#: view:ir.values:0
|
||||
msgid "Model"
|
||||
msgstr "Загвар"
|
||||
msgstr "Модел"
|
||||
|
||||
#. module: base
|
||||
#: view:base.language.install:0
|
||||
|
@ -7983,7 +7983,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: selection:res.currency,position:0
|
||||
msgid "After Amount"
|
||||
msgstr "Дараах Дүн"
|
||||
msgstr "Дүнгийн ард"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -10680,7 +10680,7 @@ msgstr "дууссан"
|
|||
#. module: base
|
||||
#: view:ir.actions.act_window:0
|
||||
msgid "General Settings"
|
||||
msgstr "Ерөнхий тохируулга"
|
||||
msgstr "Ерөнхий Тохиргоо"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_in
|
||||
|
@ -12386,7 +12386,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:ir.attachment,res_model:0
|
||||
msgid "Resource Model"
|
||||
msgstr ""
|
||||
msgstr "Нөөцийн модел"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/custom.py:555
|
||||
|
@ -15179,7 +15179,7 @@ msgstr "Үндсэн компаниуд"
|
|||
#. module: base
|
||||
#: field:ir.translation,src:0
|
||||
msgid "Source"
|
||||
msgstr "Эх"
|
||||
msgstr "Эх үүсвэр"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.model.constraint,date_init:0
|
||||
|
@ -15354,7 +15354,7 @@ msgstr "Олон баримт дээрх үйлдэл"
|
|||
#: model:ir.actions.act_window,name:base.action_partner_title_partner
|
||||
#: model:ir.ui.menu,name:base.menu_partner_title_partner
|
||||
msgid "Titles"
|
||||
msgstr ""
|
||||
msgstr "Гарчигууд"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_anonymization
|
||||
|
@ -15824,7 +15824,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:ir.actions.act_window,src_model:0
|
||||
msgid "Source Model"
|
||||
msgstr ""
|
||||
msgstr "Эх модел"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.sequence:0
|
||||
|
@ -16879,7 +16879,7 @@ msgstr "Харилцагчид: "
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Is a Company?"
|
||||
msgstr ""
|
||||
msgstr "Компаний нэр"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_company.py:173
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:03+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:21+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -4031,7 +4031,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.country,name:base.sk
|
||||
msgid "Slovakia"
|
||||
msgstr "Slovakia"
|
||||
msgstr "Słowacja"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.nr
|
||||
|
@ -5474,7 +5474,7 @@ msgstr "Historia"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.im
|
||||
msgid "Isle of Man"
|
||||
msgstr "Isle of Man"
|
||||
msgstr "Wyspa Man"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.client,res_model:0
|
||||
|
@ -7353,7 +7353,7 @@ msgstr "Kontakty"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.fo
|
||||
msgid "Faroe Islands"
|
||||
msgstr "Faroe Islands"
|
||||
msgstr "Wyspy Owcze"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.mail_server,smtp_encryption:0
|
||||
|
@ -11307,7 +11307,7 @@ msgstr "Użytkownik"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.pr
|
||||
msgid "Puerto Rico"
|
||||
msgstr "Puerto Rico"
|
||||
msgstr "Portoryko"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_tests_demo
|
||||
|
@ -14618,7 +14618,7 @@ msgstr "Uruchom"
|
|||
#. module: base
|
||||
#: selection:res.partner,type:0
|
||||
msgid "Shipping"
|
||||
msgstr "Przewoźnik"
|
||||
msgstr "Dostawa"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_project_mrp
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:18+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -11110,7 +11110,7 @@ msgstr "Email"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_12
|
||||
msgid "Office Supplies"
|
||||
msgstr ""
|
||||
msgstr "Materiais de Escritórios"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.attachment,res_model:0
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:18+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -489,7 +489,7 @@ msgstr "Obiect Sursa"
|
|||
#. module: base
|
||||
#: model:res.partner.bank.type,format_layout:base.bank_normal
|
||||
msgid "%(bank_name)s: %(acc_number)s"
|
||||
msgstr "%(nume_banca)s: %(numar_cont)s"
|
||||
msgstr "%(bank_name)s: %(acc_number)s"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.actions.todo:0
|
||||
|
@ -8921,7 +8921,7 @@ msgstr "Tip Camp"
|
|||
#. module: base
|
||||
#: field:res.country.state,code:0
|
||||
msgid "State Code"
|
||||
msgstr "Cod Stat"
|
||||
msgstr "Cod judet"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_multilang
|
||||
|
@ -11497,11 +11497,12 @@ msgid ""
|
|||
msgstr ""
|
||||
"Stimate Domn/Doamna,\n"
|
||||
"\n"
|
||||
"Inregistrarile noastre indica faptul ca unii parametrii din contul "
|
||||
"dumneavoastra sunt inca scadente. Aveti toate detaliile mai jos.\n"
|
||||
"Daca suma a fost deja platita, va rugam sa ignorati acest aviz. In cazul in "
|
||||
"care nu a fost platita inca, va rugam sa efectuati plata restanta.\n"
|
||||
"Daca aveti intrebari in legatura cu acest cont, va rugam sa ne contactati.\n"
|
||||
"Inregistrarile noastre indica faptul ca aveti unele plati inca scadente. "
|
||||
"Gasiti toate detaliile mai jos.\n"
|
||||
"Daca suma a fost deja platita, va rugam sa ignorati acest aviz. In cazul "
|
||||
"contrar, va rugam sa efectuati plata restanta descrisa mai jos.\n"
|
||||
"Daca aveti intrebari in legatura cu contul dumneavoastra, va rugam sa ne "
|
||||
"contactati.\n"
|
||||
"\n"
|
||||
"Va multumim anticipat pentru cooperarea dumneavoastra.\n"
|
||||
"Cu stima,"
|
||||
|
@ -13642,7 +13643,7 @@ msgstr "Campanii de Marketing"
|
|||
#. module: base
|
||||
#: field:res.country.state,name:0
|
||||
msgid "State Name"
|
||||
msgstr "Numele starii"
|
||||
msgstr "Nume judet"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.attachment,type:0
|
||||
|
@ -14386,7 +14387,7 @@ msgstr "Declanseaza Semnalul"
|
|||
#: model:ir.actions.act_window,name:base.action_country_state
|
||||
#: model:ir.ui.menu,name:base.menu_country_state_partner
|
||||
msgid "Fed. States"
|
||||
msgstr "State federale"
|
||||
msgstr "Judete"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.model:0
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-25 05:24+0000\n"
|
||||
"X-Generator: Launchpad (build 16445)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -3969,7 +3969,7 @@ msgstr "Отчетность"
|
|||
#: field:res.partner,title:0
|
||||
#: field:res.partner.title,name:0
|
||||
msgid "Title"
|
||||
msgstr "Название"
|
||||
msgstr "Обращение"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.property,res_id:0
|
||||
|
@ -8275,8 +8275,7 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" Нажмите чтобы добавить контакт в вашу адресную книгу.\n"
|
||||
"Нажмите чтобы добавить контакт в вашу адресную книгу.\n"
|
||||
" </p><p>\n"
|
||||
" OpenERP помогает вам легко отслеживать всю активность "
|
||||
"связанную с\n"
|
||||
|
@ -9746,7 +9745,7 @@ msgstr "сделано"
|
|||
#. module: base
|
||||
#: view:ir.actions.act_window:0
|
||||
msgid "General Settings"
|
||||
msgstr "Основные параметры"
|
||||
msgstr "Общие настройки"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_in
|
||||
|
@ -10335,6 +10334,14 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"Нажмите чтобы добавить контакт в вашу адресную книгу.\n"
|
||||
" </p><p>\n"
|
||||
" OpenERP помогает вам легко отслеживать всю активность "
|
||||
"связанную с\n"
|
||||
" поставщиком: общение, историю закупок, \n"
|
||||
" документы и т.д.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.lr
|
||||
|
@ -15953,6 +15960,14 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"Нажмите чтобы добавить контакт в вашу адресную книгу.\n"
|
||||
" </p><p>\n"
|
||||
" OpenERP помогает вам легко отслеживать всю активность "
|
||||
"связанную с\n"
|
||||
" клиентом: общение, историю деловых возможностей, \n"
|
||||
" документы и т.д.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_2
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:18+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:19+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:12+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 04:58+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:18+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:04+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:22+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:09+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:19+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:19+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:05+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:19+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:21+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:08+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-01-19 05:20+0000\n"
|
||||
"X-Generator: Launchpad (build 16430)\n"
|
||||
"X-Launchpad-Export-Date: 2013-02-26 05:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16506)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -28,6 +28,7 @@ import time
|
|||
from openerp import SUPERUSER_ID
|
||||
from openerp import netsvc, tools
|
||||
from openerp.osv import fields, osv
|
||||
import openerp.report.interface
|
||||
from openerp.report.report_sxw import report_sxw, report_rml
|
||||
from openerp.tools.config import config
|
||||
from openerp.tools.safe_eval import safe_eval as eval
|
||||
|
@ -93,9 +94,9 @@ class report_xml(osv.osv):
|
|||
opj = os.path.join
|
||||
cr.execute("SELECT * FROM ir_act_report_xml WHERE auto=%s ORDER BY id", (True,))
|
||||
result = cr.dictfetchall()
|
||||
svcs = netsvc.Service._services
|
||||
reports = openerp.report.interface.report_int._reports
|
||||
for r in result:
|
||||
if svcs.has_key('report.'+r['report_name']):
|
||||
if reports.has_key('report.'+r['report_name']):
|
||||
continue
|
||||
if r['report_rml'] or r['report_rml_content_data']:
|
||||
report_sxw('report.'+r['report_name'], r['model'],
|
||||
|
|
|
@ -21,12 +21,15 @@
|
|||
|
||||
import hashlib
|
||||
import itertools
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
|
||||
from openerp import tools
|
||||
from openerp.osv import fields,osv
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
class ir_attachment(osv.osv):
|
||||
"""Attachments are used to link binary files or url to any openerp document.
|
||||
|
||||
|
|
|
@ -120,11 +120,13 @@ class ir_cron(osv.osv):
|
|||
:param args: arguments of the method (without the usual self, cr, uid).
|
||||
:param job_id: job id.
|
||||
"""
|
||||
args = str2tuple(args)
|
||||
model = self.pool.get(model_name)
|
||||
if model and hasattr(model, method_name):
|
||||
method = getattr(model, method_name)
|
||||
try:
|
||||
try:
|
||||
args = str2tuple(args)
|
||||
openerp.modules.registry.RegistryManager.check_registry_signaling(cr.dbname)
|
||||
registry = openerp.pooler.get_pool(cr.dbname)
|
||||
model = registry.get(model_name)
|
||||
if model and hasattr(model, method_name):
|
||||
method = getattr(model, method_name)
|
||||
log_depth = (None if _logger.isEnabledFor(logging.DEBUG) else 1)
|
||||
netsvc.log(_logger, logging.DEBUG, 'cron.object.execute', (cr.dbname,uid,'*',model_name,method_name)+tuple(args), depth=log_depth)
|
||||
if _logger.isEnabledFor(logging.DEBUG):
|
||||
|
@ -133,12 +135,13 @@ class ir_cron(osv.osv):
|
|||
if _logger.isEnabledFor(logging.DEBUG):
|
||||
end_time = time.time()
|
||||
_logger.debug('%.3fs (%s, %s)' % (end_time - start_time, model_name, method_name))
|
||||
except Exception, e:
|
||||
self._handle_callback_exception(cr, uid, model_name, method_name, args, job_id, e)
|
||||
else:
|
||||
msg = "Method `%s.%s` do not exist." % (model._name, method_name) \
|
||||
if model else "Model `%s` do not exist." % model._name
|
||||
_logger.warning(msg)
|
||||
openerp.modules.registry.RegistryManager.signal_caches_change(cr.dbname)
|
||||
else:
|
||||
msg = "Method `%s.%s` does not exist." % (model_name, method_name) \
|
||||
if model else "Model `%s` does not exist." % model_name
|
||||
_logger.warning(msg)
|
||||
except Exception, e:
|
||||
self._handle_callback_exception(cr, uid, model_name, method_name, args, job_id, e)
|
||||
|
||||
def _process_job(self, job_cr, job, cron_cr):
|
||||
""" Run a given job taking care of the repetition.
|
||||
|
@ -220,10 +223,8 @@ class ir_cron(osv.osv):
|
|||
_logger.debug('Starting job `%s`.', job['name'])
|
||||
job_cr = db.cursor()
|
||||
try:
|
||||
openerp.modules.registry.RegistryManager.check_registry_signaling(db_name)
|
||||
registry = openerp.pooler.get_pool(db_name)
|
||||
registry[cls._name]._process_job(job_cr, job, lock_cr)
|
||||
openerp.modules.registry.RegistryManager.signal_caches_change(db_name)
|
||||
except Exception:
|
||||
_logger.exception('Unexpected exception while processing cron job %r', job)
|
||||
finally:
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
<field name="name"/>
|
||||
<field name="user_id"/>
|
||||
<field name="model_id"/>
|
||||
<field name="is_default"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="domain"/>
|
||||
|
@ -35,6 +36,7 @@
|
|||
<field name="name"/>
|
||||
<field name="model_id"/>
|
||||
<field name="user_id"/>
|
||||
<field name="is_default"/>
|
||||
<field name="domain" groups="base.group_no_one"/>
|
||||
<field name="context" groups="base.group_no_one"/>
|
||||
</tree>
|
||||
|
@ -45,12 +47,14 @@
|
|||
<field name="arch" type="xml">
|
||||
<search string="Filters">
|
||||
<field name="name" string="Filter Name"/>
|
||||
<filter string="Personal" domain="[('user_id','!=',False)]" help="Filters visible only for one user"/>
|
||||
<filter string="Shared" domain="[('user_id','=',False)]" help="Filters shared with all users"/>
|
||||
<filter string="User" domain="[('user_id','!=',False)]" name="user" help="Filters visible only for one user"/>
|
||||
<filter string="Shared" domain="[('user_id','=',False)]" name="shared" help="Filters shared with all users"/>
|
||||
<filter string="My filters" domain="[('user_id','=',uid)]" name="my_filters" help="Filters created by myself"/>
|
||||
<separator/>
|
||||
<filter icon="terp-personal" domain="[('user_id','in',(uid, False))]"
|
||||
name="my_filters"
|
||||
string="My Filters"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="User" domain="[]" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Model" domain="[]" context="{'group_by':'model_id'}"/>
|
||||
</group>
|
||||
<field name="model_id"/>
|
||||
<field name="user_id"/>
|
||||
</search>
|
||||
|
|
|
@ -1062,9 +1062,13 @@ class ir_model_data(osv.osv):
|
|||
continue
|
||||
_logger.info('Deleting %s@%s', res_id, model)
|
||||
try:
|
||||
cr.execute('SAVEPOINT record_unlink_save')
|
||||
self.pool.get(model).unlink(cr, uid, [res_id], context=context)
|
||||
except Exception:
|
||||
_logger.info('Unable to delete %s@%s', res_id, model, exc_info=True)
|
||||
cr.execute('ROLLBACK TO SAVEPOINT record_unlink_save')
|
||||
else:
|
||||
cr.execute('RELEASE SAVEPOINT record_unlink_save')
|
||||
|
||||
# Remove non-model records first, then model fields, and finish with models
|
||||
unlink_if_refcount((model, res_id) for model, res_id in to_unlink
|
||||
|
|
|
@ -30,6 +30,8 @@ from openerp.osv import fields, osv
|
|||
from openerp.tools.translate import _
|
||||
from openerp import SUPERUSER_ID
|
||||
|
||||
MENU_ITEM_SEPARATOR = "/"
|
||||
|
||||
def one_in(setA, setB):
|
||||
"""Check the presence of an element of setA in setB
|
||||
"""
|
||||
|
@ -154,7 +156,7 @@ class ir_ui_menu(osv.osv):
|
|||
if level<=0:
|
||||
return '...'
|
||||
if elmt.parent_id:
|
||||
parent_path = self._get_one_full_name(elmt.parent_id, level-1) + "/"
|
||||
parent_path = self._get_one_full_name(elmt.parent_id, level-1) + MENU_ITEM_SEPARATOR
|
||||
else:
|
||||
parent_path = ''
|
||||
return parent_path + elmt.name
|
||||
|
|
|
@ -28,7 +28,7 @@ class osv_memory_autovacuum(openerp.osv.osv.osv_memory):
|
|||
def power_on(self, cr, uid, context=None):
|
||||
for model in self.pool.models.values():
|
||||
if model.is_transient():
|
||||
model._transient_vacuum(cr, uid)
|
||||
model._transient_vacuum(cr, uid, force=True)
|
||||
return True
|
||||
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2012 OpenERP S.A. (<http://openerp.com>).
|
||||
# Copyright (C) 2004-2013 OpenERP S.A. (<http://openerp.com>).
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
|
@ -254,9 +254,9 @@ class module(osv.osv):
|
|||
'website': fields.char("Website", size=256, readonly=True),
|
||||
|
||||
# attention: Incorrect field names !!
|
||||
# installed_version refer the latest version (the one on disk)
|
||||
# latest_version refer the installed version (the one in database)
|
||||
# published_version refer the version available on the repository
|
||||
# installed_version refers the latest version (the one on disk)
|
||||
# latest_version refers the installed version (the one in database)
|
||||
# published_version refers the version available on the repository
|
||||
'installed_version': fields.function(_get_latest_version, string='Latest Version', type='char'),
|
||||
'latest_version': fields.char('Installed Version', size=64, readonly=True),
|
||||
'published_version': fields.char('Published Version', size=64, readonly=True),
|
||||
|
@ -500,6 +500,7 @@ class module(osv.osv):
|
|||
raise orm.except_orm(_('Error'), _("The `base` module cannot be uninstalled"))
|
||||
dep_ids = self.downstream_dependencies(cr, uid, ids, context=context)
|
||||
self.write(cr, uid, ids + dep_ids, {'state': 'to remove'})
|
||||
openerp.modules.registry.RegistryManager.signal_registry_change(cr.dbname)
|
||||
return dict(ACTION_DICT, name=_('Uninstall'))
|
||||
|
||||
def button_uninstall_cancel(self, cr, uid, ids, context=None):
|
||||
|
@ -656,32 +657,38 @@ class module(osv.osv):
|
|||
def install_from_urls(self, cr, uid, urls, context=None):
|
||||
OPENERP = 'openerp'
|
||||
tmp = tempfile.mkdtemp()
|
||||
_logger.debug('Install from url: %r', urls)
|
||||
try:
|
||||
# 1. Download & unzip missing modules
|
||||
for module_name, url in urls.items():
|
||||
if not url:
|
||||
continue # nothing to download, local version is already the last one
|
||||
try:
|
||||
_logger.info('Downloading module `%s` from OpenERP Apps', module_name)
|
||||
content = urllib2.urlopen(url).read()
|
||||
except Exception, e:
|
||||
_logger.exception('ggr')
|
||||
raise osv.except_osv('grrr', e)
|
||||
except Exception:
|
||||
_logger.exception('Failed to fetch module %s', module_name)
|
||||
raise osv.except_osv(_('Module not found'),
|
||||
_('The `%s` module appears to be unavailable at the moment, please try again later.') % module_name)
|
||||
else:
|
||||
zipfile.ZipFile(StringIO(content)).extractall(tmp)
|
||||
assert os.path.isdir(os.path.join(tmp, module_name))
|
||||
|
||||
for module_name in urls:
|
||||
if module_name == OPENERP:
|
||||
continue # special case. handled below
|
||||
# 2a. Copy/Replace module source in addons path
|
||||
for module_name, url in urls.items():
|
||||
if module_name == OPENERP or not url:
|
||||
continue # OPENERP is special case, handled below, and no URL means local module
|
||||
module_path = modules.get_module_path(module_name, downloaded=True, display_warning=False)
|
||||
bck = backup(module_path, False)
|
||||
_logger.info('Copy downloaded module `%s` to `%s`', module_name, module_path)
|
||||
shutil.move(os.path.join(tmp, module_name), module_path)
|
||||
if bck:
|
||||
shutil.rmtree(bck)
|
||||
|
||||
# 2b. Copy/Replace server+base module source if downloaded
|
||||
if urls.get(OPENERP, None):
|
||||
# special case. it containt the server and the base module.
|
||||
# special case. it contains the server and the base module.
|
||||
# extract path is not the same
|
||||
|
||||
base_path = os.path.dirname(modules.get_module_path('base'))
|
||||
|
||||
# copy all modules in the SERVER/openerp/addons directory to the new "openerp" module (except base itself)
|
||||
|
@ -693,15 +700,22 @@ class module(osv.osv):
|
|||
# then replace the server by the new "base" module
|
||||
server_dir = openerp.tools.config['root_path'] # XXX or dirname()
|
||||
bck = backup(server_dir)
|
||||
_logger.info('Copy downloaded module `openerp` to `%s`', server_dir)
|
||||
shutil.move(os.path.join(tmp, OPENERP), server_dir)
|
||||
#if bck:
|
||||
# shutil.rmtree(bck)
|
||||
|
||||
self.update_list(cr, uid, context=context)
|
||||
|
||||
ids = self.search(cr, uid, [('name', 'in', urls.keys())], context=context)
|
||||
if self.search_count(cr, uid, [('id', 'in', ids), ('state', '=', 'installed')], context=context):
|
||||
# if any to update
|
||||
with_urls = [m for m, u in urls.items() if u]
|
||||
downloaded_ids = self.search(cr, uid, [('name', 'in', with_urls)], context=context)
|
||||
already_installed = self.search(cr, uid, [('id', 'in', downloaded_ids), ('state', '=', 'installed')], context=context)
|
||||
|
||||
to_install_ids = self.search(cr, uid, [('name', 'in', urls.keys()), ('state', '=', 'uninstalled')], context=context)
|
||||
post_install_action = self.button_immediate_install(cr, uid, to_install_ids, context=context)
|
||||
|
||||
if already_installed:
|
||||
# in this case, force server restart to reload python code...
|
||||
cr.commit()
|
||||
openerp.service.restart_server()
|
||||
return {
|
||||
|
@ -709,7 +723,7 @@ class module(osv.osv):
|
|||
'tag': 'home',
|
||||
'params': {'wait': True},
|
||||
}
|
||||
return self.button_immediate_install(cr, uid, ids, context=context)
|
||||
return post_install_action
|
||||
finally:
|
||||
shutil.rmtree(tmp)
|
||||
|
||||
|
|
|
@ -171,23 +171,18 @@
|
|||
</field>
|
||||
</record>
|
||||
<record id="open_module_tree" model="ir.actions.act_window">
|
||||
<!-- uncomment on released
|
||||
<field name="name">Installed Modules</field>
|
||||
-->
|
||||
<field name="name">Modules</field>
|
||||
<field name="res_model">ir.module.module</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">kanban,tree,form</field>
|
||||
<!-- uncomment on released
|
||||
<field name="context">{'search_default_installed':1}</field>
|
||||
-->
|
||||
<field name="search_view_id" ref="view_module_filter"/>
|
||||
<field name="help" type="html">
|
||||
<p><b>No module found!</b></p>
|
||||
<p>You should try others search criteria.</p>
|
||||
</field>
|
||||
</record>
|
||||
<menuitem id="menu_module_tree" parent="menu_management" name="Installed Modules" sequence="10" action="open_module_tree"/>
|
||||
<menuitem id="menu_module_tree" parent="menu_management" name="Installed Modules" sequence="30" action="open_module_tree" />
|
||||
|
||||
|
||||
<!-- Apps modules -->
|
||||
|
@ -195,20 +190,14 @@
|
|||
<field name="name">Apps</field>
|
||||
<field name="tag">apps</field>
|
||||
</record>
|
||||
<!-- uncomment on released
|
||||
<menuitem id="module_mi" parent="base.menu_management" sequence="3" action="modules_act_cl"/>
|
||||
-->
|
||||
<menuitem id="module_mi" parent="base.menu_management" sequence="20" action="modules_act_cl"/>
|
||||
<menuitem id="module_mi" parent="base.menu_management" sequence="10" action="modules_act_cl"/>
|
||||
|
||||
<record model="ir.actions.client" id="modules_updates_act_cl">
|
||||
<field name="name">Updates</field>
|
||||
<field name="tag">apps.updates</field>
|
||||
<field name="params">{}</field>
|
||||
</record>
|
||||
<!-- uncomment on released
|
||||
<menuitem id="menu_module_updates" parent="base.menu_management" sequence="7" action="modules_updates_act_cl"/>
|
||||
-->
|
||||
<menuitem id="menu_module_updates" parent="base.menu_management" sequence="30" action="modules_updates_act_cl"/>
|
||||
<menuitem id="menu_module_updates" parent="base.menu_management" sequence="20" action="modules_updates_act_cl"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -1,74 +0,0 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of the
|
||||
# License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
import os
|
||||
import glob
|
||||
import imp
|
||||
import zipfile
|
||||
|
||||
from openerp import tools
|
||||
from openerp.osv import osv
|
||||
|
||||
class base_module_scan(osv.osv_memory):
|
||||
""" scan module """
|
||||
|
||||
_name = "base.module.scan"
|
||||
_description = "scan module"
|
||||
|
||||
def watch_dir(self, cr, uid, ids, context):
|
||||
mod_obj = self.pool.get('ir.module.module')
|
||||
all_mods = mod_obj.read(cr, uid, mod_obj.search(cr, uid, []), ['name', 'state'])
|
||||
known_modules = [x['name'] for x in all_mods]
|
||||
ls_ad = glob.glob(os.path.join(tools.config['addons_path'], '*', '__terp__.py'))
|
||||
modules = [module_name_re.match(name).group(1) for name in ls_ad]
|
||||
for fname in os.listdir(tools.config['addons_path']):
|
||||
if zipfile.is_zipfile(fname):
|
||||
modules.append( fname.split('.')[0])
|
||||
for module in modules:
|
||||
if module in known_modules:
|
||||
continue
|
||||
terp = mod_obj.get_module_info(module)
|
||||
if not terp.get('installable', True):
|
||||
continue
|
||||
|
||||
# XXX check if this code is correct...
|
||||
fm = imp.find_module(module)
|
||||
try:
|
||||
imp.load_module(module, *fm)
|
||||
finally:
|
||||
if fm[0]:
|
||||
fm[0].close()
|
||||
|
||||
values = mod_obj.get_values_from_terp(terp)
|
||||
mod_id = mod_obj.create(cr, uid, dict(name=module, state='uninstalled', **values))
|
||||
dependencies = terp.get('depends', [])
|
||||
for d in dependencies:
|
||||
cr.execute('insert into ir_module_module_dependency (module_id,name) values (%s, %s)', (mod_id, d))
|
||||
for module in known_modules:
|
||||
terp = mod_obj.get_module_info(module)
|
||||
if terp.get('installable', True):
|
||||
for mod in all_mods:
|
||||
if mod['name'] == module and mod['state'] == 'uninstallable':
|
||||
mod_obj.write(cr, uid, [mod['id']], {'state': 'uninstalled'})
|
||||
return {}
|
||||
|
||||
base_module_scan()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -21,7 +21,8 @@
|
|||
|
||||
import time
|
||||
|
||||
from openerp.osv import osv,fields
|
||||
from openerp.osv import osv, fields
|
||||
from openerp.osv.orm import browse_record
|
||||
from openerp.tools.misc import attrgetter
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
|
@ -111,7 +112,7 @@ class ir_property(osv.osv):
|
|||
raise osv.except_osv('Error', 'Invalid type')
|
||||
|
||||
if field == 'value_reference':
|
||||
if isinstance(value, osv.orm.browse_record):
|
||||
if isinstance(value, browse_record):
|
||||
value = '%s,%d' % (value._name, value.id)
|
||||
elif isinstance(value, (int, long)):
|
||||
field_id = values.get('fields_id')
|
||||
|
|
|
@ -125,6 +125,7 @@
|
|||
<field name="model">res.partner.bank</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Bank Accounts">
|
||||
<field name="state" invisible="1"/>
|
||||
<field name="sequence" invisible="1"/>
|
||||
<field name="acc_number"/>
|
||||
<field name="bank_name"/>
|
||||
|
|
|
@ -318,7 +318,7 @@ class res_company(osv.osv):
|
|||
<lines>1.3cm %s 20cm %s</lines>
|
||||
<drawRightString x="20cm" y="%s">[[ company.rml_header1 ]]</drawRightString>
|
||||
<drawString x="1.3cm" y="%s">[[ company.partner_id.name ]]</drawString>
|
||||
<place x="1.3cm" y="%s" height="1.55cm" width="15.0cm">
|
||||
<place x="1.3cm" y="%s" height="1.8cm" width="15.0cm">
|
||||
<para style="main_header">[[ display_address(company.partner_id) or '' ]]</para>
|
||||
</place>
|
||||
<drawString x="1.3cm" y="%s">Phone:</drawString>
|
||||
|
@ -344,8 +344,8 @@ class res_company(osv.osv):
|
|||
</pageTemplate>
|
||||
</header>"""
|
||||
|
||||
_header_a4 = _header_main % ('23.0cm', '27.6cm', '27.7cm', '27.7cm', '27.8cm', '27.4cm', '25.8cm', '26.0cm', '26.0cm', '25.6cm', '25.6cm', '25.5cm', '25.5cm')
|
||||
_header_letter = _header_main % ('21.3cm', '25.9cm', '26.0cm', '26.0cm', '26.1cm', '25.7cm', '24.1cm', '24.3cm', '24.3cm', '23.9cm', '23.9cm', '23.8cm', '23.8cm')
|
||||
_header_a4 = _header_main % ('23.0cm', '27.6cm', '27.7cm', '27.7cm', '27.8cm', '27.3cm', '25.3cm', '25.0cm', '25.0cm', '24.6cm', '24.6cm', '24.5cm', '24.5cm')
|
||||
_header_letter = _header_main % ('21.3cm', '25.9cm', '26.0cm', '26.0cm', '26.1cm', '25.6cm', '23.6cm', '23.3cm', '23.3cm', '22.9cm', '22.9cm', '22.8cm', '22.8cm')
|
||||
|
||||
def onchange_paper_format(self, cr, uid, ids, paper_format, context=None):
|
||||
if paper_format == 'us_letter':
|
||||
|
|
|
@ -20,11 +20,14 @@
|
|||
##############################################################################
|
||||
import logging
|
||||
from operator import attrgetter
|
||||
import re
|
||||
|
||||
from openerp import pooler
|
||||
import openerp
|
||||
from openerp import pooler, SUPERUSER_ID
|
||||
from openerp.osv import osv, fields
|
||||
from openerp.tools import ustr
|
||||
from openerp.tools.translate import _
|
||||
from openerp import exceptions
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
|
@ -358,7 +361,8 @@ class res_config_installer(osv.osv_memory):
|
|||
cr, uid,
|
||||
modules.search(cr, uid, [('name','in',to_install)]),
|
||||
'to install', ['uninstalled'], context=context)
|
||||
cr.commit() #TOFIX: after remove this statement, installation wizard is fail
|
||||
cr.commit()
|
||||
openerp.modules.registry.RegistryManager.signal_registry_change(cr.dbname)
|
||||
new_db, self.pool = pooler.restart_pool(cr.dbname, update_module=True)
|
||||
|
||||
res_config_installer()
|
||||
|
@ -570,17 +574,17 @@ class res_config_settings(osv.osv_memory):
|
|||
if action_ids:
|
||||
return act_window.read(cr, uid, action_ids[0], [], context=context)
|
||||
return {}
|
||||
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
""" Override name_get method to return an appropriate configuration wizard
|
||||
name, and not the generated name."""
|
||||
|
||||
|
||||
if not ids:
|
||||
return []
|
||||
# name_get may receive int id instead of an id list
|
||||
if isinstance(ids, (int, long)):
|
||||
ids = [ids]
|
||||
|
||||
|
||||
act_window = self.pool.get('ir.actions.act_window')
|
||||
action_ids = act_window.search(cr, uid, [('res_model', '=', self._name)], context=context)
|
||||
name = self._name
|
||||
|
@ -588,4 +592,83 @@ class res_config_settings(osv.osv_memory):
|
|||
name = act_window.read(cr, uid, action_ids[0], ['name'], context=context)['name']
|
||||
return [(record.id, name) for record in self.browse(cr, uid , ids, context=context)]
|
||||
|
||||
def get_option_path(self, cr, uid, menu_xml_id, context=None):
|
||||
"""
|
||||
Fetch the path to a specified configuration view and the action id to access it.
|
||||
|
||||
:param string menu_xml_id: the xml id of the menuitem where the view is located,
|
||||
structured as follows: module_name.menuitem_xml_id (e.g.: "base.menu_sale_config")
|
||||
:return tuple:
|
||||
- t[0]: string: full path to the menuitem (e.g.: "Settings/Configuration/Sales")
|
||||
- t[1]: long: id of the menuitem's action
|
||||
"""
|
||||
module_name, menu_xml_id = menu_xml_id.split('.')
|
||||
dummy, menu_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, module_name, menu_xml_id)
|
||||
ir_ui_menu = self.pool.get('ir.ui.menu').browse(cr, uid, menu_id, context=context)
|
||||
|
||||
return (ir_ui_menu.complete_name, ir_ui_menu.action.id)
|
||||
|
||||
def get_option_name(self, cr, uid, full_field_name, context=None):
|
||||
"""
|
||||
Fetch the human readable name of a specified configuration option.
|
||||
|
||||
: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")
|
||||
:return string: human readable name of the field (e.g.: "Create leads from incoming mails")
|
||||
"""
|
||||
model_name, field_name = full_field_name.rsplit('.', 1)
|
||||
|
||||
return self.pool.get(model_name).fields_get(cr, uid, allfields=[field_name], context=context)[field_name]['string']
|
||||
|
||||
def get_config_warning(self, cr, msg, context=None):
|
||||
"""
|
||||
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
|
||||
full path.
|
||||
|
||||
Usage:
|
||||
------
|
||||
Just include in your error message %(field:model_name.field_name)s to obtain the human
|
||||
readable field's name, and/or %(menu:module_name.menuitem_xml_id)s to obtain the menuitem's
|
||||
full path.
|
||||
|
||||
Example of use:
|
||||
---------------
|
||||
from openerp.addons.base.res.res_config import get_warning_config
|
||||
raise get_warning_config(cr, _("Error: this action is prohibited. You should check the field %(field:sale.config.settings.fetchmail_lead)s in %(menu:base.menu_sale_config)s."), context=context)
|
||||
|
||||
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.
|
||||
|
||||
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')
|
||||
regex_path = r'%\(((?:menu|field):[a-z_\.]*)\)s'
|
||||
|
||||
# Process the message
|
||||
# 1/ find the menu and/or field references, put them in a list
|
||||
references = re.findall(regex_path, msg, flags=re.I)
|
||||
|
||||
# 2/ fetch the menu and/or field replacement values (full path and
|
||||
# human readable field's name) and the action_id if any
|
||||
values = {}
|
||||
action_id = None
|
||||
for item in references:
|
||||
ref_type, ref = item.split(':')
|
||||
if ref_type == 'menu':
|
||||
values[item], action_id = res_config_obj.get_option_path(cr, SUPERUSER_ID, ref, context=context)
|
||||
elif ref_type == 'field':
|
||||
values[item] = res_config_obj.get_option_name(cr, SUPERUSER_ID, ref, context=context)
|
||||
|
||||
# 3/ substitute and return the result
|
||||
if (action_id):
|
||||
return exceptions.RedirectWarning(msg % values, action_id, _('Go to the configuration panel'))
|
||||
return exceptions.Warning(msg % values)
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -71,13 +71,13 @@ addresses belonging to this country.\n\nYou can use the python-style string pate
|
|||
name_search = location_name_search
|
||||
|
||||
def create(self, cursor, user, vals, context=None):
|
||||
if 'code' in vals:
|
||||
if vals.get('code'):
|
||||
vals['code'] = vals['code'].upper()
|
||||
return super(Country, self).create(cursor, user, vals,
|
||||
context=context)
|
||||
|
||||
def write(self, cursor, user, ids, vals, context=None):
|
||||
if 'code' in vals:
|
||||
if vals.get('code', False):
|
||||
vals['code'] = vals['code'].upper()
|
||||
return super(Country, self).write(cursor, user, ids, vals,
|
||||
context=context)
|
||||
|
|
|
@ -228,45 +228,6 @@ class lang(osv.osv):
|
|||
|
||||
lang()
|
||||
|
||||
def original_group(s, grouping, thousands_sep=''):
|
||||
|
||||
if not grouping:
|
||||
return s, 0
|
||||
|
||||
result = ""
|
||||
seps = 0
|
||||
spaces = ""
|
||||
|
||||
if s[-1] == ' ':
|
||||
sp = s.find(' ')
|
||||
spaces = s[sp:]
|
||||
s = s[:sp]
|
||||
|
||||
while s and grouping:
|
||||
# if grouping is -1, we are done
|
||||
if grouping[0] == -1:
|
||||
break
|
||||
# 0: re-use last group ad infinitum
|
||||
elif grouping[0] != 0:
|
||||
#process last group
|
||||
group = grouping[0]
|
||||
grouping = grouping[1:]
|
||||
if result:
|
||||
result = s[-group:] + thousands_sep + result
|
||||
seps += 1
|
||||
else:
|
||||
result = s[-group:]
|
||||
s = s[:-group]
|
||||
if s and s[-1] not in "0123456789":
|
||||
# the leading string is only spaces and signs
|
||||
return s + result + spaces, seps
|
||||
if not result:
|
||||
return s + spaces, seps
|
||||
if s:
|
||||
result = s + thousands_sep + result
|
||||
seps += 1
|
||||
return result + spaces, seps
|
||||
|
||||
def split(l, counts):
|
||||
"""
|
||||
|
||||
|
@ -317,52 +278,4 @@ def intersperse(string, counts, separator=''):
|
|||
res = separator.join(map(reverse, reverse(splits)))
|
||||
return left + res + right, len(splits) > 0 and len(splits) -1 or 0
|
||||
|
||||
# TODO rewrite this with a unit test library
|
||||
def _group_examples():
|
||||
for g in [original_group, intersperse]:
|
||||
# print "asserts on", g.func_name
|
||||
assert g("", []) == ("", 0)
|
||||
assert g("0", []) == ("0", 0)
|
||||
assert g("012", []) == ("012", 0)
|
||||
assert g("1", []) == ("1", 0)
|
||||
assert g("12", []) == ("12", 0)
|
||||
assert g("123", []) == ("123", 0)
|
||||
assert g("1234", []) == ("1234", 0)
|
||||
assert g("123456789", []) == ("123456789", 0)
|
||||
assert g("&ab%#@1", []) == ("&ab%#@1", 0)
|
||||
|
||||
assert g("0", []) == ("0", 0)
|
||||
assert g("0", [1]) == ("0", 0)
|
||||
assert g("0", [2]) == ("0", 0)
|
||||
assert g("0", [200]) == ("0", 0)
|
||||
|
||||
# breaks original_group:
|
||||
if g.func_name == 'intersperse':
|
||||
assert g("12345678", [0], '.') == ('12345678', 0)
|
||||
assert g("", [1], '.') == ('', 0)
|
||||
assert g("12345678", [1], '.') == ('1234567.8', 1)
|
||||
assert g("12345678", [1], '.') == ('1234567.8', 1)
|
||||
assert g("12345678", [2], '.') == ('123456.78', 1)
|
||||
assert g("12345678", [2,1], '.') == ('12345.6.78', 2)
|
||||
assert g("12345678", [2,0], '.') == ('12.34.56.78', 3)
|
||||
assert g("12345678", [-1,2], '.') == ('12345678', 0)
|
||||
assert g("12345678", [2,-1], '.') == ('123456.78', 1)
|
||||
assert g("12345678", [2,0,1], '.') == ('12.34.56.78', 3)
|
||||
assert g("12345678", [2,0,0], '.') == ('12.34.56.78', 3)
|
||||
assert g("12345678", [2,0,-1], '.') == ('12.34.56.78', 3)
|
||||
assert g("12345678", [3,3,3,3], '.') == ('12.345.678', 2)
|
||||
|
||||
assert original_group("abc1234567xy", [2], '.') == ('abc1234567.xy', 1)
|
||||
assert original_group("abc1234567xy8", [2], '.') == ('abc1234567xy8', 0) # difference here...
|
||||
assert original_group("abc12", [3], '.') == ('abc12', 0)
|
||||
assert original_group("abc12", [2], '.') == ('abc12', 0)
|
||||
assert original_group("abc12", [1], '.') == ('abc1.2', 1)
|
||||
|
||||
assert intersperse("abc1234567xy", [2], '.') == ('abc1234567.xy', 1)
|
||||
assert intersperse("abc1234567xy8", [2], '.') == ('abc1234567x.y8', 1) # ... w.r.t. here.
|
||||
assert intersperse("abc12", [3], '.') == ('abc12', 0)
|
||||
assert intersperse("abc12", [2], '.') == ('abc12', 0)
|
||||
assert intersperse("abc12", [1], '.') == ('abc1.2', 1)
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -316,6 +316,7 @@
|
|||
<group expand="0" string="Group By...">
|
||||
<filter string="Salesperson" icon="terp-personal" domain="[]" context="{'group_by' : 'user_id'}" />
|
||||
<filter string="Company" context="{'group_by': 'parent_id'}"/>
|
||||
<filter string="Country" context="{'group_by': 'country_id'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
import sys
|
||||
import openerp
|
||||
|
||||
# TODO this loop will be exposed as open_openerp_namespace()
|
||||
# once trunk-cleaning-vmt is merged.
|
||||
for k, v in list(sys.modules.items()):
|
||||
if k.startswith('openerp.') and sys.modules.get(k[8:]) is None:
|
||||
sys.modules[k[8:]] = v
|
||||
|
||||
import openerp.addons.base.res.res_lang as res_lang
|
||||
res_lang._group_examples()
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -1,27 +0,0 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2011-TODAY OpenERP S.A. <http://www.openerp.com>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of the
|
||||
# License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# Useful for manual testing of cron jobs scheduling.
|
||||
# This must be (un)commented with the corresponding yml file
|
||||
# in ../__openerp__.py.
|
||||
# import test_ir_cron
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -5,7 +5,7 @@
|
|||
1. Try a few common expressions to verify they work with safe_eval
|
||||
-
|
||||
!python {model: ir.model}: |
|
||||
from tools.safe_eval import safe_eval
|
||||
from openerp.tools.safe_eval import safe_eval
|
||||
expected = (1, {"a": 9 * 2}, (True, False, None))
|
||||
actual = safe_eval('(1, {"a": 9 * 2}, (True, False, None))')
|
||||
assert actual == expected, "Simple python expressions are not working with safe_eval"
|
||||
|
@ -41,8 +41,8 @@
|
|||
5. Try forbidden expressions in safe_eval to verify they are not allowed (open)
|
||||
-
|
||||
!python {model: ir.model}: |
|
||||
from tools.safe_eval import safe_eval
|
||||
from tools.misc import mute_logger
|
||||
from openerp.tools.safe_eval import safe_eval
|
||||
from openerp.tools.misc import mute_logger
|
||||
try:
|
||||
with mute_logger('openerp.tools.safe_eval'):
|
||||
safe_eval('open("/etc/passwd","r")')
|
||||
|
@ -146,7 +146,7 @@
|
|||
"Float precision tests: verify that float rounding methods are working correctly via res.currency"
|
||||
-
|
||||
!python {model: res.currency}: |
|
||||
from tools import float_repr
|
||||
from openerp.tools import float_repr
|
||||
from math import log10
|
||||
currency = self.browse(cr, uid, ref('base.EUR'))
|
||||
def try_round(amount, expected, self=self, cr=cr, currency=currency, float_repr=float_repr,
|
||||
|
@ -197,7 +197,7 @@
|
|||
"Float precision tests: verify that float rounding methods are working correctly via tools"
|
||||
-
|
||||
!python {model: res.currency}: |
|
||||
from tools import float_compare, float_is_zero, float_round, float_repr
|
||||
from openerp.tools import float_compare, float_is_zero, float_round, float_repr
|
||||
def try_round(amount, expected, precision_digits=3, float_round=float_round, float_repr=float_repr):
|
||||
result = float_repr(float_round(amount, precision_digits=precision_digits),
|
||||
precision_digits=precision_digits)
|
||||
|
@ -271,7 +271,7 @@
|
|||
!python {model: res.currency}: |
|
||||
currency = self.browse(cr, uid, ref('base.EUR'))
|
||||
res_currency_rate = self.pool.get('res.currency.rate')
|
||||
from tools import float_compare, float_is_zero, float_round, float_repr
|
||||
from openerp.tools import float_compare, float_is_zero, float_round, float_repr
|
||||
def try_roundtrip(value, expected, self=self, cr=cr, currency=currency,
|
||||
res_currency_rate=res_currency_rate):
|
||||
rate_id = res_currency_rate.create(cr, 1, {'name':'2000-01-01',
|
||||
|
@ -289,7 +289,7 @@
|
|||
"Float precision tests: verify that invalid parameters are forbidden"
|
||||
-
|
||||
!python {model: res.currency}: |
|
||||
from tools import float_compare, float_is_zero, float_round
|
||||
from openerp.tools import float_compare, float_is_zero, float_round
|
||||
try:
|
||||
float_is_zero(0.01, precision_digits=3, precision_rounding=0.01)
|
||||
except AssertionError:
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue