[MERGE] merged trunk.

bzr revid: vmt@openerp.com-20111003144503-lx28ennrz0mt590g
This commit is contained in:
Vo Minh Thu 2011-10-03 16:45:03 +02:00
commit 7b90c7e5de
143 changed files with 12918 additions and 3083 deletions

37
debian/README.source vendored
View File

@ -1,37 +0,0 @@
Package Repositories
--------------------
Backports for the current stable debian distribution as well as snapshots of
unreleased versions may be available in repositories listed on the maintainers
homepage. The current URL of the maintainer homepage can be seen in
debian/copyright.
Source Access
-------------
You can obtain the sources of this package with:
$ apt-get source ${PACKAGE}
whereas '${PACKAGE}' has to be replaced with the actual name of the package.
This package is maintained with the Git version control system. The current git
source tree can be obtained with:
$ git clone ${GIT_URI}
whereas '${GIT_URI}' has to be replaced with the actual URI for the Git
repository. The current Git URI can be seen in debian/control in the extracted
package sources.
More information about Git can be found in the git-core package.
This package may use the Quilt patch system to manage all modifications to the
upstream source. Changes, if any, are stored in the source package as diffs in
debian/diff and are applied during the build. Current modifications can be
applied to the source tree with:
$ QUILT_PATCHES=debian/patches quilt push -a
More information about Quilt can be found in the quilt package.

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
openerp (6.1-1) testing; urgency=low
* New major version, new packaging.
-- Antony Lesuisse <al@openerp.com> Sat, 01 Oct 2011 12:31:00 +0100
openerp-server (6.0.2-1) testing; urgency=low
* Using upstream version 6.0.2

59
debian/control vendored
View File

@ -1,40 +1,49 @@
Source: openerp-server
Source: openerp
Section: net
Priority: optional
Maintainer: OpenERP SA. <xrg@openerp.com>
Uploaders: Xrg <xrg@openerp.com>
Build-Depends: debhelper (>= 7.0.50~), python
Build-Depends-Indep:
python-libxslt1, python-lxml, python-pychart, python-pydot, python-psycopg2,
python-reportlab
Maintainer: OpenERP SA <al@openerp.com>
Build-Depends: debhelper (>= 7.0.50~), python, rsync
Standards-Version: 3.9.1
Homepage: http://www.openerp.com/
Vcs-Browser: http://git.hellug.gr/?p=xrg/openobject-server;a=summary
Vcs-Git: http://members.hellug.gr/xrg/repos/openobject-server
Vcs-Bzr: https://code.launchpad.net/openobject-server
Vcs-Bzr: https://launchpad.net/openobject
Package: openerp-server
Package: openerp
Section: net
Architecture: all
Depends:
${misc:Depends}, adduser, python, python-dateutil, python-libxslt1,
python-lxml, python-psycopg2, python-pydot, python-pychart, python-reportlab,
python-tz, python-pyparsing, python-yaml, python-mako,
postgresql-client (>=8.2)
Conflicts: tinyerp-server
Replaces: tinyerp-server
${misc:Depends},
adduser,
python,
postgresql-client,
python-dateutil,
python-gdata,
python-ldap,
python-libxslt1,
python-lxml,
python-mako,
python-openid,
python-psycopg2,
python-pybabel,
python-pychart,
python-pydot,
python-pyparsing,
python-reportlab,
python-simplejson,
python-tz,
python-vobject,
python-webdav,
python-werkzeug,
python-yaml,
python-zsi
Conflicts: tinyerp-server, openerp-server, openerp-web
Replaces: tinyerp-server, openerp-server, openerp-web
Recommends:
graphviz, ghostscript, postgresql, python-imaging,
python-matplotlib
Suggests: openerp-client
Description: Enterprise Resource Management (server)
Open ERP, previously known as TinyERP, is a complete ERP and CRM. The main
graphviz, ghostscript, postgresql, python-imaging, python-matplotlib
Description: OpenERP Enterprise Resource Management
OpenERP, previously known as TinyERP, is a complete ERP and CRM. The main
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.
.
This package contains the Open ERP server, install openerp-client package for
the client.

View File

@ -1,55 +0,0 @@
# /etc/openerp-server.conf(5) - configuration file for openerp-server(1)
[options]
# Enable the debugging mode (default False).
verbose = False
debug_mode = False
# The file where the server pid will be stored (default False).
#pidfile = /var/run/openerp.pid
# The file where the server log will be stored (default False).
logfile = /var/log/openerp-server.log
# The unix account on behalf openerp is running.
process_user = openerp
# The IP address on which the server will bind.
# If empty, it will bind on all interfaces (default empty).
interface = localhost
# The TCP port on which the server will listen (default 8069).
#port = 8070
# Enable debug mode (default False).
debug_mode = False
# Launch server over https instead of http (default False).
secure = False
# Specify the SMTP server for sending email (default localhost).
smtp_server = localhost
# Specify the SMTP user for sending email (default False).
smtp_user = False
# Specify the SMTP password for sending email (default False).
smtp_password = False
# Specify the database name.
#db_name = openerp
# Specify the database user name (default None).
db_user = openerp
# Specify the database password for db_user (default None).
db_password =
# Specify the database host (default localhost).
db_host =
# Specify the database port (default None).
db_port = 5432
# Specify the price accuracy.
#price_accuracy =

View File

@ -1,10 +0,0 @@
#!/bin/sh
set -e
. /usr/share/debconf/confmodule
db_input low openerp-server/username || true
db_go
db_stop

View File

@ -1,2 +0,0 @@
doc/migrate
doc/tests

View File

@ -1 +0,0 @@
debian/openerp-server.preseed

View File

@ -1 +0,0 @@
doc/openerp-server.conf /etc

View File

@ -1,2 +0,0 @@
/usr/share/man/man5/openerp_serverrc.5.gz /usr/share/man/man5/openerp-server.conf.5.gz
/var/lib/openerp-server/filestore /usr/lib/openerp-server/filestore

View File

@ -1,7 +0,0 @@
# Add-on directories needs data directories, and sometimes they are
# (intentionally) empty, hence overriting the lintian warning.
openerp-server: package-contains-empty-directory
# Add-on directoires contain images sometimes, but it's nothing that is
# worthwile to be splittet out to /usr/share as it's all manual work for each
# release.
openerp-server: image-file-in-usr-lib

View File

@ -1,62 +0,0 @@
#!/bin/sh
set -e
. /usr/share/debconf/confmodule
CONFFILE="/etc/openerp-server.conf"
LOGFILE="/var/log/openerp-server.log"
case "${1}" in
configure)
db_version 2.0
db_get openerp-server/username
_USERNAME="${RET:-openerp}"
db_stop
if ! getent passwd | grep -q "^${_USERNAME}"
then
adduser --system --no-create-home --quiet --gecos 'Open ERP server' --group ${_USERNAME}
else
echo "Open ERP user (${_USERNAME}) already exists, doing nothing."
fi
sed -i -e "s|^process_user.*$|process_user = ${_USERNAME}|" ${CONFFILE}
# Creating log file
touch ${LOGFILE}
chown ${_USERNAME}:adm ${LOGFILE}
chmod 0640 ${LOGFILE}
# Creating local storage directory
mkdir -p /var/lib/openerp-server/filestore
# Setting ownership and permissions
chmod 0640 ${CONFFILE}
chown ${_USERNAME}:${_USERNAME} ${CONFFILE}
chown ${_USERNAME}:${_USERNAME} /var/lib/openerp-server -R
echo
echo "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"
echo "* Open ERP uses a PostgreSQL database to store its data. With the first *"
echo "* generation of packages, you have to setup this database manually. *"
echo "* Please read /usr/share/doc/openerp-server/README.Debian how to do it. *"
echo "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"
echo
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`{$1}'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0

View File

@ -1,41 +0,0 @@
#!/bin/sh
set -e
case "${1}" in
remove)
_USERNAME="openerp"
_GROUPNAME="openerp"
if [ -x /usr/sbin/deluser ]
then
deluser --quiet --system ${_USERNAME}
fi
if [ -x /usr/sbin/delgroup ]
then
delgroup --quiet --system --only-if-empty ${_GROUPNAME} || true
fi
rm -f /usr/lib/openerp-server/addons/__init__.pyc
rmdir --ignore-fail-on-non-empty /usr/lib/openerp-server/addons || true
rmdir --ignore-fail-on-non-empty /usr/lib/openerp-server || true
;;
purge)
rm -rf /var/lib/openerp-server
;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`${1}'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0

View File

@ -1,5 +0,0 @@
################################################################################
## openerp-server
#openerp-server openerp-server/username string openerp
################################################################################

View File

@ -1,9 +0,0 @@
Template: openerp-server/username
Type: string
Default: openerp
_Description: Dedicated system account for the Open ERP server:
The Open ERP server must use a dedicated account for its operation so that
the system's security is not compromised by running it with superuser
privileges.
.
Please choose that account's username.

View File

@ -16,7 +16,7 @@ PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/openerp-server
NAME=openerp-server
DESC=openerp-server
CONFIG=/etc/openerp-server.conf
CONFIG=/etc/openerp/openerp-server.conf
LOGFILE=/var/log/openerp-server.log
USER=openerp

1
debian/openerp.install vendored Normal file
View File

@ -0,0 +1 @@
install/openerp-server.conf /etc/openerp

28
debian/openerp.postinst vendored Normal file
View File

@ -0,0 +1,28 @@
#!/bin/sh
set -e
case "${1}" in
configure)
if ! getent passwd | grep -q "^openerp"; then
adduser --system --no-create-home --quiet --gecos 'OpenERP' --group openerp
fi
# Register "openerp" as a postgres superuser
su - postgres -c "createuser -s openerp" 2> /dev/null || true
chown openerp:openerp /etc/openerp/openerp-server.conf
chmod 0640 /etc/openerp/openerp-server.conf
# Creating log file
touch /var/log/openerp.log
chown openerp:openerp /var/log/openerp.log
chmod 0640 /var/log/openerp.log
# Creating local storage directory
mkdir -p /var/lib/openerp/filestore
chown openerp:openerp -R /var/lib/openerp
;;
*)
;;
esac
#DEBHELPER#
exit 0

26
debian/openerp.postrm vendored Normal file
View File

@ -0,0 +1,26 @@
#!/bin/sh
set -e
case "${1}" in
remove)
deluser --quiet --system "openerp" || true
delgroup --quiet --system --only-if-empty "openerp" || true
;;
purge)
rm -rf /var/lib/openerp-server
;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`${1}'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0

14
debian/rules vendored
View File

@ -1,12 +1,18 @@
#!/usr/bin/make -f
EXTRA_MODULES_PATH ?= ../addons
%:
dh ${@}
override_dh_installchangelogs:
dh_installchangelogs doc/Changelog
override_dh_pysupport:
echo "rsync"
sh -c "[ -d debian/openerp/usr/lib/python2.6 ] && rsync -av openerp/ debian/openerp/usr/lib/python2.6/dist-packages/openerp/" || true
sh -c "[ -d debian/openerp/usr/lib/python2.7 ] && rsync -av openerp/ debian/openerp/usr/lib/python2.7/dist-packages/openerp/" || true
rm -Rf debian/openerp/usr/openerp debian/openerp/usr/lib/python2.6/dist-packages/tests debian/openerp/usr/lib/python2.7/dist-packages/tests
dh_pysupport
rm -Rf debian/openerp/usr/lib
override_dh_installinit:
dh_installinit --update-rcd-params='defaults 21'

View File

@ -1 +0,0 @@
1.0

View File

@ -1,34 +1,7 @@
[options]
without_demo = True
; This is the password that allows database operations:
; admin_passwd = admin
upgrade = False
verbose = False
netrpc = True
; netrpc_interface =
; netrpc_port =
xmlrpc = True
; xmlrpc_interface =
xmlrpc_port = 8069
db_host = False
db_port = False
; Please uncomment the following line *after* you have created the
; database. It activates the auto module check on startup.
; db_name = terp
db_user = openerp
db_password = False
; Uncomment these for xml-rpc over SSL
; secure = True
; secure_cert_file = /etc/openerp/server.cert
; secure_pkey_file = /etc/openerp/server.key
root_path = None
soap = False
translate_modules = ['all']
demo = {}
addons_path = None
reportgz = False
; Static http parameters
static_http_enable = False
static_http_document_root = /var/www/html
static_http_url_prefix = /

View File

@ -89,15 +89,17 @@ def setup_pid_file():
def preload_registry(dbname):
""" Preload a registry, and start the cron."""
try:
db, pool = openerp.pooler.get_db_and_pool(dbname, update_module=config['init'] or config['update'], pooljobs=False)
pool.get('ir.cron').restart(db.dbname)
db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=config['init'] or config['update'], pooljobs=False)
# jobs will start to be processed later, when openerp.cron.start_master_thread() is called by openerp.service.start_services()
registry.schedule_cron_jobs()
except Exception:
logging.exception('Failed to initialize database `%s`.', dbname)
def run_test_file(dbname, test_file):
""" Preload a registry, possibly run a test file, and start the cron."""
try:
db, pool = openerp.pooler.get_db_and_pool(dbname, update_module=config['init'] or config['update'], pooljobs=False)
db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=config['init'] or config['update'], pooljobs=False)
cr = db.cursor()
logger = logging.getLogger('server')
logger.info('loading test file %s', test_file)

View File

@ -22,6 +22,8 @@
""" OpenERP core library.
"""
# The hard-coded super-user id (a.k.a. administrator, or root user).
SUPERUSER_ID = 1
import addons
import conf

View File

@ -24,6 +24,7 @@ import module
import res
import publisher_warranty
import report
import test
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -92,6 +92,10 @@
'test/test_osv_expression.yml',
'test/test_ir_rule.yml', # <-- These tests modify/add/delete ir_rules.
'test/test_ir_values.yml',
# Commented because this takes some time.
# This must be (un)commented with the corresponding import statement
# in test/__init__.py.
# 'test/test_ir_cron.yml', # <-- These tests perform a roolback.
],
'installable': True,
'active': True,

View File

@ -290,6 +290,7 @@ CREATE TABLE ir_module_module (
state character varying(16),
latest_version character varying(64),
shortdesc character varying(256),
complexity character varying(32),
category_id integer REFERENCES ir_module_category ON DELETE SET NULL,
certificate character varying(64),
description text,

View File

@ -1002,7 +1002,7 @@
</record>
<record id="main_partner" model="res.partner">
<field name="name">OpenERP S.A.</field>
<field name="name">Your Company</field>
<!-- Address and Company ID will be set later -->
<field name="address" eval="[]"/>
<field name="company_id" eval="None"/>
@ -1010,14 +1010,7 @@
</record>
<record id="main_address" model="res.partner.address">
<field name="partner_id" ref="main_partner"/>
<field name="name">Fabien Pinckaers</field>
<field name="street">Chaussee de Namur 40</field>
<field name="zip">1367</field>
<field name="city">Gerompont</field>
<field name="phone">(+32).81.81.37.00</field>
<field name="type">default</field>
<field model="res.country" name="country_id" ref="be"/>
<!-- Company ID will be set later -->
<field name="company_id" eval="None"/>
</record>
@ -1038,19 +1031,14 @@
<!-- Basic Company -->
<record id="main_company" model="res.company">
<field name="name">OpenERP S.A.</field>
<field name="name">Your Company</field>
<field name="partner_id" ref="main_partner"/>
<field name="rml_header1">Free Business Solutions</field>
<field name="rml_footer1">Web: http://www.openerp.com - Tel: (+32).81.81.37.00 - Bank: CPH 126-2013269-07</field>
<field name="rml_footer2">IBAN: BE74 1262 0132 6907 - SWIFT: CPHBBE75 - VAT: BE0477.472.701</field>
<field name="rml_header1">Company business slogan</field>
<field name="rml_footer1">Web: www.companyname.com - Tel: +1-212-555-12345</field>
<field name="rml_footer2">IBAN: XX12 3456 7890 1234 5678 - SWIFT: SWIFTCODE - VAT: Company vat number</field>
<field name="currency_id" ref="base.EUR"/>
</record>
<assert id="main_company" model="res.company">
<test expr="currency_id.name == 'eur'.upper()"/>
<test expr="name">OpenERP S.A.</test>
</assert>
<record model="res.users" id="base.user_root">
<field name="signature">Administrator</field>
<field name="company_id" ref="main_company"/>

View File

@ -196,7 +196,7 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="context" eval="{'default_partner_id':ref('base.main_partner'), 'company_hide':False, 'default_company_id':ref('base.main_company'), 'search_default_my_bank':1}"/>
<field name="help">Configure your company's bank account and select those that must appear on the report footer. You can drag &amp; drop bank in the list view to reorder bank accounts. If you use the accounting application of OpenERP, journals and accounts will be created automatically based on these data.</field>
<field name="help">Configure your company's bank account and select those that must appear on the report footer. You can reorder bank accounts from the list view. If you use the accounting application of OpenERP, journals and accounts will be created automatically based on these data.</field>
</record>
@ -209,7 +209,7 @@
<group colspan="4" col="6">
<group colspan="4" col="4">
<field name="name"/>
<field name="partner_id" readonly="1" required="0"/>
<field name="partner_id" readonly="1" required="0" groups="base.group_extended"/>
<field name="parent_id" groups="base.group_multi_company"/>
</group>
<group colspan="2" col="2">
@ -225,18 +225,17 @@
<field name="city"/>
<field name="country_id"/>
<field name="state_id"/>
<field name="phone"/>
<field name="email"/>
<field name="fax"/>
<field name="website"/>
<field name="vat"/>
<field name="company_registry"/>
<field name="phone" on_change="on_change_header(phone, email, fax, website, vat, company_registry)"/>
<field name="email" on_change="on_change_header(phone, email, fax, website, vat, company_registry)"/>
<field name="fax" on_change="on_change_header(phone, email, fax, website, vat, company_registry)"/>
<field name="website" on_change="on_change_header(phone, email, fax, website, vat, company_registry)"/>
<field name="vat" on_change="on_change_header(phone, email, fax, website, vat, company_registry)"/>
<field name="company_registry" on_change="on_change_header(phone, email, fax, website, vat, company_registry)"/>
<separator string="Header/Footer of Reports" colspan="4"/>
<group colspan="4" col="3">
<field name="rml_header1" colspan="3"/>
<newline/>
<field name="rml_footer1" colspan="2"/>
<button name="generate_header" string="Generate" type="object" icon="gtk-go-forward"/>
<field name="rml_footer1" colspan="3" groups="base.group_extended"/>
<newline/>
<field name="rml_footer2" colspan="2"/>
<button name="%(bank_account_update)d" string="Set Bank Accounts" type="action" icon="gtk-go-forward"/>
@ -245,10 +244,10 @@
<button name="%(preview_report)d" string="Preview Header" type="action" icon="gtk-print"/>
</group>
</page>
<page string="External Template" groups="base.group_extended">
<page string="Header/Footer" groups="base.group_extended">
<field colspan="4" name="rml_header" nolabel="1"/>
</page>
<page string="Internal Template" groups="base.group_extended">
<page string="Internal Header/Footer" groups="base.group_extended">
<separator string="Portrait" colspan="2"/>
<separator string="Landscape" colspan="2"/>
<field colspan="2" name="rml_header2" nolabel="1"/>

View File

@ -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: 2011-09-01 04:38+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:00+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:00+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5430,7 +5430,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -5217,7 +5217,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-16 08:59+0000\n"
"PO-Revision-Date: 2011-09-30 20:32+0000\n"
"Last-Translator: Boris <boris.t.ivanov@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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5572,7 +5572,7 @@ msgstr "Преводи"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Брой на остъпката"
#. module: base
@ -9421,3 +9421,6 @@ msgstr "Шри Ланка"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "руски / русский язык"
#~ msgid "Number padding"
#~ msgstr "Брой на остъпката"

View File

@ -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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5439,7 +5439,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-25 10:50+0000\n"
"Last-Translator: Esther Xaus (Zikzakmedia) <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:08+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5709,7 +5709,7 @@ msgstr "Traduccions"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Omplenat del número"
#. module: base
@ -9665,3 +9665,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Rus / русский язык"
#~ msgid "Number padding"
#~ msgstr "Omplenat del número"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: openobject-server\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-09-16 16:25+0000\n"
"PO-Revision-Date: 2011-09-30 21:07+0000\n"
"Last-Translator: Jiří Hajda <robie@centrum.cz>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-17 04:54+0000\n"
"X-Generator: Launchpad (build 13955)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
"X-Poedit-Language: Czech\n"
#. module: base
@ -5529,7 +5529,7 @@ msgstr "Překlady"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Zarovnání čísla"
#. module: base
@ -9407,3 +9407,6 @@ msgstr "Srí Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Ruština / русский язык"
#~ msgid "Number padding"
#~ msgstr "Zarovnání čísla"

View File

@ -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: 2011-09-25 04:40+0000\n"
"X-Generator: Launchpad (build 14012)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -641,7 +641,7 @@ msgstr "Mine partnere"
#. module: base
#: view:ir.actions.report.xml:0
msgid "XML Report"
msgstr ""
msgstr "XML rapport"
#. module: base
#: model:res.country,name:base.es
@ -681,7 +681,7 @@ msgstr ""
#: field:res.partner,mobile:0
#: field:res.partner.address,mobile:0
msgid "Mobile"
msgstr ""
msgstr "Mobil"
#. module: base
#: model:res.country,name:base.om
@ -5431,7 +5431,7 @@ msgstr "Oversættelser"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -8,15 +8,15 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-18 11:51+0000\n"
"PO-Revision-Date: 2011-09-30 21:28+0000\n"
"Last-Translator: Thorsten Vocks (OpenBig.org) <thorsten.vocks@big-"
"consulting.net>\n"
"Language-Team: German <kde-i18n-doc@kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:40+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5702,7 +5702,7 @@ msgstr "Übersetzungen"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Stellenanzahl"
#. module: base
@ -9656,3 +9656,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russian / русский язык"
#~ msgid "Number padding"
#~ msgstr "Stellenanzahl"

View File

@ -6,14 +6,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-18 08:23+0000\n"
"PO-Revision-Date: 2011-09-30 21:21+0000\n"
"Last-Translator: Dimitris Andavoglou <dimitrisand@gmail.com>\n"
"Language-Team: nls@hellug.gr <nls@hellug.gr>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
"X-Poedit-Country: GREECE\n"
"X-Poedit-Language: Greek\n"
"X-Poedit-SourceCharset: utf-8\n"
@ -5614,7 +5614,7 @@ msgstr "Μεταφράσεις"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Συμπλήρωση αριθμών"
#. module: base
@ -9476,3 +9476,6 @@ msgstr "Σρι Λάνκα / Κευλάνη"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Ρώσσικα / русский язык"
#~ msgid "Number padding"
#~ msgstr "Συμπλήρωση αριθμών"

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-server\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-09-22 14:47+0000\n"
"Last-Translator: John Bradshaw <Unknown>\n"
"PO-Revision-Date: 2011-09-30 20:48+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.com>\n"
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-23 04:38+0000\n"
"X-Generator: Launchpad (build 14012)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5669,8 +5669,8 @@ msgstr "Translations"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgstr "Number padding"
msgid "Number Padding"
msgstr "Number Padding"
#. module: base
#: view:ir.actions.report.xml:0
@ -9564,3 +9564,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russian / русский язык"
#~ msgid "Number padding"
#~ msgstr "Number padding"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-23 17:39+0000\n"
"Last-Translator: Esther Xaus (Zikzakmedia) <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:27+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:05+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5723,7 +5723,7 @@ msgstr "Traducciones"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Relleno del número"
#. module: base
@ -9679,3 +9679,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Ruso / русский язык"
#~ msgid "Number padding"
#~ msgstr "Relleno del número"

View File

@ -4778,7 +4778,7 @@ msgstr "Traducciones"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Relleno del número"
#. module: base

View File

@ -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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5725,8 +5725,8 @@ msgstr "Traducciones"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgstr "Relleno del número"
msgid "Number Padding"
msgstr ""
#. module: base
#: view:ir.actions.report.xml:0
@ -9683,3 +9683,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Ruso / русский язык"
#~ msgid "Number padding"
#~ msgstr "Relleno del número"

View File

@ -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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5712,8 +5712,8 @@ msgstr "Traducciones"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgstr "Relleno del número"
msgid "Number Padding"
msgstr ""
#. module: base
#: view:ir.actions.report.xml:0
@ -9673,3 +9673,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russian / русский язык"
#~ msgid "Number padding"
#~ msgstr "Relleno del número"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-11-30 09:51+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2011-09-30 20:58+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:40+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5488,7 +5488,7 @@ msgstr "Tõlked"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Arvu täidistus"
#. module: base
@ -9318,3 +9318,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Vene keel / русский язык"
#~ msgid "Number padding"
#~ msgstr "Arvu täidistus"

View File

@ -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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -3,14 +3,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-16 08:41+0000\n"
"PO-Revision-Date: 2011-09-30 21:08+0000\n"
"Last-Translator: avion <nat@sethack.com>\n"
"Language-Team: OpenERP Iran <info@openerp-iran.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n"
"X-Poedit-Language: Persian\n"
@ -5496,7 +5496,7 @@ msgstr "برگردان‌ها"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "پیمایش شمارگانی"
#. module: base
@ -9330,3 +9330,6 @@ msgstr "سری‌لانکا"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "روسی / русский язык"
#~ msgid "Number padding"
#~ msgstr "پیمایش شمارگانی"

View File

@ -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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-26 13:00+0000\n"
"PO-Revision-Date: 2011-09-30 21:12+0000\n"
"Last-Translator: Ville Lindfors <villi@iki.fi>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:40+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5664,7 +5664,7 @@ msgstr "Käännökset"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Täytenumerot"
#. module: base
@ -9597,3 +9597,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Venäjä / русский язык"
#~ msgid "Number padding"
#~ msgstr "Täytenumerot"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-18 12:43+0000\n"
"Last-Translator: Aline (OpenERP) <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:11+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:40+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5717,7 +5717,7 @@ msgstr "Traductions"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Remplissage"
#. module: base
@ -9690,3 +9690,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russie / русский язык"
#~ msgid "Number padding"
#~ msgstr "Remplissage"

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-27 08:22+0000\n"
"Last-Translator: David Diz <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:09+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.com>\n"
"Language-Team: Galician <gl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5695,7 +5695,7 @@ msgstr "Traducións"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Número de enchido"
#. module: base
@ -9647,3 +9647,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Rusia / русский язык"
#~ msgid "Number padding"
#~ msgstr "Número de enchido"

View File

@ -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: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5472,7 +5472,7 @@ msgstr "תרגומים"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-17 14:09+0000\n"
"PO-Revision-Date: 2011-09-30 20:43+0000\n"
"Last-Translator: Goran Kliska <gkliska@gmail.com>\n"
"Language-Team: openerp-translators\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:05+0000\n"
"X-Generator: Launchpad (build 14071)\n"
"Language: hr\n"
#. module: base
@ -5553,7 +5553,7 @@ msgstr "Prijevodi"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Dopunjavanje na duljinu"
#. module: base
@ -9427,3 +9427,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Ruski / русский язык"
#~ msgid "Number padding"
#~ msgstr "Dopunjavanje na duljinu"

View File

@ -7,15 +7,15 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-03-03 17:34+0000\n"
"PO-Revision-Date: 2011-09-30 21:29+0000\n"
"Last-Translator: NOVOTRADE RENDSZERHÁZ ( novotrade.hu ) "
"<openerp@novotrade.hu>\n"
"Language-Team: Hungarian <openerp-hungarian-team@lists.launchpad.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5666,8 +5666,8 @@ msgstr "Fordítások"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgstr "Number padding"
msgid "Number Padding"
msgstr "Number Padding"
#. module: base
#: view:ir.actions.report.xml:0
@ -9610,3 +9610,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Orosz / русский язык"
#~ msgid "Number padding"
#~ msgstr "Number padding"

View File

@ -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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:01+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -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: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5435,7 +5435,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -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: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,15 +7,15 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-04-28 13:32+0000\n"
"PO-Revision-Date: 2011-09-30 21:28+0000\n"
"Last-Translator: Lorenzo Battistini - Agile BG - Domsense "
"<lorenzo.battistini@agilebg.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: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5713,7 +5713,7 @@ msgstr "Traduzioni"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Riempimento Numero"
#. module: base
@ -9678,3 +9678,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russian / русский язык"
#~ msgid "Number padding"
#~ msgstr "Riempimento Numero"

View File

@ -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: 2011-09-01 04:41+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -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: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5464,7 +5464,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -4618,7 +4618,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-19 08:19+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:23+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.com>\n"
"Language-Team: Latvian <lv@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:03+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5514,7 +5514,7 @@ msgstr "Tulkojumi"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Ciparu vietas"
#. module: base
@ -9356,3 +9356,6 @@ msgstr "Šrilanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Krievu / русский язык"
#~ msgid "Number padding"
#~ msgstr "Ciparu vietas"

View File

@ -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: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -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: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-16 08:03+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:29+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5533,7 +5533,7 @@ msgstr "Орчуулгууд"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Тоон дугаарын урт"
#. module: base
@ -9369,3 +9369,6 @@ msgstr "Шриланк"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Орос хэл / русский язык"
#~ msgid "Number padding"
#~ msgstr "Тоон дугаарын урт"

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-server\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-03-11 05:06+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:06+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.com>\n"
"Language-Team: Norwegian Bokmal <nb@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5530,7 +5530,7 @@ msgstr "Oversettelser"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Bunnfyll"
#. module: base
@ -9371,3 +9371,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr ""
#~ msgid "Number padding"
#~ msgstr "Bunnfyll"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-19 08:35+0000\n"
"Last-Translator: Stefan Rijnhart (Therp) <Unknown>\n"
"PO-Revision-Date: 2011-09-30 20:44+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:40+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:02+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5702,7 +5702,7 @@ msgstr "Vertalingen"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Nummer verspringing"
#. module: base
@ -9653,3 +9653,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russisch / русский язык"
#~ msgid "Number padding"
#~ msgstr "Nummer verspringing"

View File

@ -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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5447,7 +5447,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -4796,7 +4796,7 @@ msgstr "Vertalingen"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Nummer verspringing"
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-24 19:15+0000\n"
"PO-Revision-Date: 2011-09-30 21:13+0000\n"
"Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) <grzegorz@openglobe.pl>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:42+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5612,7 +5612,7 @@ msgstr "Tłumaczenia"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Liczba cyfr"
#. module: base
@ -9507,3 +9507,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr ""
#~ msgid "Number padding"
#~ msgstr "Liczba cyfr"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-03-16 22:11+0000\n"
"Last-Translator: Paulo Borges <Unknown>\n"
"PO-Revision-Date: 2011-09-30 20:30+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5591,7 +5591,7 @@ msgstr "Traduções"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Dígitos do número"
#. module: base
@ -9471,3 +9471,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russo / русский язык"
#~ msgid "Number padding"
#~ msgstr "Dígitos do número"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: pt_BR\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-05-10 19:52+0000\n"
"PO-Revision-Date: 2011-09-30 21:22+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"Language-Team: <pt@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5687,7 +5687,7 @@ msgstr "Traduções"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Preencher número"
#. module: base
@ -9637,3 +9637,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Russo / русский язык"
#~ msgid "Number padding"
#~ msgstr "Preencher número"

View File

@ -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: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5555,7 +5555,7 @@ msgstr "Traduceri"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-05-26 04:57+0000\n"
"Last-Translator: Pomazan Bogdan <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:03+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:04+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5689,7 +5689,7 @@ msgstr "Переводы"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Выравнивание чисел"
#. module: base
@ -9647,3 +9647,6 @@ msgstr "Шри-Ланка"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Русский / русский язык"
#~ msgid "Number padding"
#~ msgstr "Выравнивание чисел"

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-12-19 08:23+0000\n"
"PO-Revision-Date: 2011-09-30 21:16+0000\n"
"Last-Translator: Peter Kohaut <peter.kohaut@gmail.com>\n"
"Language-Team: Slovak <sk@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:05+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5598,7 +5598,7 @@ msgstr "Preklady"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Zarovanie čísla"
#. module: base
@ -9506,3 +9506,6 @@ msgstr "Srí Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Rusčina / русский язык"
#~ msgid "Number padding"
#~ msgstr "Zarovanie čísla"

File diff suppressed because it is too large Load Diff

View File

@ -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: 2011-09-01 04:39+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:00+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5430,7 +5430,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2010-11-15 08:29+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:23+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.com>\n"
"Language-Team: Serbian <sr@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:05+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5575,7 +5575,7 @@ msgstr "Prevodi"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Dopunjavanje brojeva"
#. module: base
@ -9460,3 +9460,6 @@ msgstr "Šri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Ruski / русский язык"
#~ msgid "Number padding"
#~ msgstr "Dopunjavanje brojeva"

View File

@ -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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-05-13 07:33+0000\n"
"PO-Revision-Date: 2011-09-30 21:31+0000\n"
"Last-Translator: Anders Wallenquist <anders.wallenquist@vertel.se>\n"
"Language-Team: <>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:43+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:05+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5624,7 +5624,7 @@ msgstr "Översättningar"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Numerisk utfyllnad"
#. module: base
@ -9509,3 +9509,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "ryska / русский язык"
#~ msgid "Number padding"
#~ msgstr "Numerisk utfyllnad"

View File

@ -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: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:05+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -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: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5430,7 +5430,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-05-26 05:01+0000\n"
"Last-Translator: Ahmet Altınışık <Unknown>\n"
"PO-Revision-Date: 2011-09-30 21:21+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5637,7 +5637,7 @@ msgstr "Çeviriler"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Numara dolgusu"
#. module: base
@ -9544,3 +9544,6 @@ msgstr "Sri Lanka"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Rusça / русский язык"
#~ msgid "Number padding"
#~ msgstr "Numara dolgusu"

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-02-05 16:25+0000\n"
"Last-Translator: Casufi <Unknown>\n"
"PO-Revision-Date: 2011-09-30 20:34+0000\n"
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.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: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5495,7 +5495,7 @@ msgstr "Переклади"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Вирівнювання номерів"
#. module: base
@ -9321,3 +9321,6 @@ msgstr "Шрі-Ланка"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "Російська / Russian"
#~ msgid "Number padding"
#~ msgstr "Вирівнювання номерів"

View File

@ -4636,7 +4636,7 @@ msgstr "Переклади"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "Вирівнювання номерів"
#. module: base

View File

@ -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: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5431,7 +5431,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -9,13 +9,13 @@ msgstr ""
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-07-23 16:37+0000\n"
"Last-Translator: Phong Nguyen-Thanh <Unknown>\n"
"Last-Translator: OpenBMS JSC <Unknown>\n"
"Language-Team: Vietnamese <vi@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-09-01 04:44+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:06+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5468,7 +5468,7 @@ msgstr ""
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-28 03:33+0000\n"
"PO-Revision-Date: 2011-09-30 21:27+0000\n"
"Last-Translator: Wei \"oldrev\" Li <oldrev@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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -5471,7 +5471,7 @@ msgstr "翻译"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr "数字位数"
#. module: base
@ -9310,3 +9310,6 @@ msgstr "斯里兰卡"
#: selection:base.language.install,lang:0
msgid "Russian / русский язык"
msgstr "俄语 / русский язык"
#~ msgid "Number padding"
#~ msgstr "数字位数"

File diff suppressed because it is too large Load Diff

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-28 02:14+0000\n"
"PO-Revision-Date: 2011-09-29 15:26+0000\n"
"Last-Translator: Walter Cheuk <wwycheuk@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: 2011-09-01 04:45+0000\n"
"X-Generator: Launchpad (build 13827)\n"
"X-Launchpad-Export-Date: 2011-10-01 05:07+0000\n"
"X-Generator: Launchpad (build 14071)\n"
#. module: base
#: view:ir.filters:0
@ -46,7 +46,7 @@ msgstr "日期時間"
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 "many2many 欄位 %s 之第二個引數須為 SQL 表格!您用了並非有效 SQL 表格名稱之 %s。"
msgstr "「多對多(many2many)」欄位 %s 之第二個引數須為 SQL 表格!您用了並非有效 SQL 表格名稱之 %s。"
#. module: base
#: view:ir.values:0
@ -103,7 +103,7 @@ msgstr "工作流程作用於"
#. module: base
#: field:ir.actions.act_window,display_menu_tip:0
msgid "Display Menu Tips"
msgstr "顯示選提示"
msgstr "顯示選提示"
#. module: base
#: view:ir.module.module:0
@ -129,7 +129,7 @@ msgstr ""
#. module: base
#: field:res.partner,ref:0
msgid "Reference"
msgstr "參"
msgstr "參"
#. module: base
#: field:ir.actions.act_window,target:0
@ -154,7 +154,7 @@ msgstr ""
#: code:addons/osv.py:133
#, python-format
msgid "Constraint Error"
msgstr ""
msgstr "約束錯誤"
#. module: base
#: model:ir.model,name:base.model_ir_ui_view_custom
@ -171,12 +171,12 @@ msgstr "史瓦濟蘭"
#: code:addons/orm.py:3653
#, python-format
msgid "created."
msgstr ""
msgstr "已建立。"
#. module: base
#: model:res.partner.category,name:base.res_partner_category_woodsuppliers0
msgid "Wood Suppliers"
msgstr ""
msgstr "木材供應商"
#. module: base
#: code:addons/base/module/module.py:303
@ -224,7 +224,7 @@ msgstr "新"
#. module: base
#: field:ir.actions.report.xml,multi:0
msgid "On multiple doc."
msgstr "作用於多重檔案。"
msgstr "作用於多重文件。"
#. module: base
#: field:ir.module.category,module_nr:0
@ -252,12 +252,12 @@ msgstr "聯絡人名稱"
msgid ""
"Save this document to a %s file and edit it with a specific software or a "
"text editor. The file encoding is UTF-8."
msgstr "將此檔案儲存為%s檔案後可以特定軟體或文字編輯程式修改。檔案編碼為 UTF-8。"
msgstr "將此檔案存為 %s 檔案,並以特定軟體或文字編輯程式修改。檔案編碼為 UTF-8。"
#. module: base
#: sql_constraint:res.lang:0
msgid "The name of the language must be unique !"
msgstr ""
msgstr "語言名稱須與其他不同 !"
#. module: base
#: selection:res.request,state:0
@ -329,7 +329,7 @@ msgstr "欄位名稱"
#: wizard_view:server.action.create,init:0
#: wizard_field:server.action.create,init,type:0
msgid "Select Action Type"
msgstr "選動作類型"
msgstr "選動作類型"
#. module: base
#: model:res.country,name:base.tv
@ -422,7 +422,7 @@ msgstr "哥倫比亞"
#. module: base
#: view:ir.module.module:0
msgid "Schedule Upgrade"
msgstr "排升級"
msgstr "排升級"
#. module: base
#: code:addons/orm.py:838
@ -436,7 +436,7 @@ msgid ""
"The ISO country code in two chars.\n"
"You can use this field for quick search."
msgstr ""
"ISO 國家代碼使用兩個字。\n"
"ISO 國家代碼使用兩個字。\n"
"您可以使用該欄位來快速搜索。"
#. module: base
@ -447,7 +447,7 @@ msgstr "帛琉"
#. module: base
#: view:res.partner:0
msgid "Sales & Purchases"
msgstr "銷售&採購"
msgstr "銷售 及 購貨"
#. module: base
#: view:ir.translation:0
@ -481,7 +481,7 @@ msgstr "自訂欄位名稱開頭必須是 'x_' !"
#. module: base
#: help:ir.actions.server,action_id:0
msgid "Select the Action Window, Report, Wizard to be executed."
msgstr "選擇要執行的動作視窗、報表或精靈。"
msgstr "選取要執行之動作視窗、報表或精靈。"
#. module: base
#: view:res.config.users:0
@ -502,7 +502,7 @@ msgstr "模型說明"
#: help:ir.actions.act_window,src_model:0
msgid ""
"Optional model name of the objects on which this action should be visible"
msgstr ""
msgstr "要可見動作的物件之模型名稱(可有可無)"
#. module: base
#: field:workflow.transition,trigger_expr_id:0
@ -548,7 +548,7 @@ msgstr "是否檢查 Ean "
#. module: base
#: field:ir.values,key2:0
msgid "Event Type"
msgstr "事件類型"
msgstr "活動類型"
#. module: base
#: view:base.language.export:0
@ -684,7 +684,7 @@ msgstr "西班牙文 (UY) / Español (UY)"
#: field:res.partner,mobile:0
#: field:res.partner.address,mobile:0
msgid "Mobile"
msgstr "手"
msgstr "手提電話"
#. module: base
#: model:res.country,name:base.om
@ -741,7 +741,7 @@ msgstr "印度"
#: model:ir.actions.act_window,name:base.res_request_link-act
#: model:ir.ui.menu,name:base.menu_res_request_link_act
msgid "Request Reference Types"
msgstr "請求參類型"
msgstr "請求參類型"
#. module: base
#: view:ir.values:0
@ -812,7 +812,7 @@ msgstr "人力資源儀錶板"
#: code:addons/base/res/res_user.py:507
#, python-format
msgid "Setting empty passwords is not allowed for security reasons!"
msgstr "因安理由密碼不能留空!"
msgstr "因安理由密碼不能留空!"
#. module: base
#: selection:ir.actions.server,state:0
@ -882,7 +882,7 @@ msgstr "刪除存取"
#. module: base
#: model:res.country,name:base.ne
msgid "Niger"
msgstr "尼日"
msgstr "尼日"
#. module: base
#: selection:base.language.install,lang:0
@ -998,7 +998,7 @@ msgstr "儀錶板"
#. module: base
#: model:ir.ui.menu,name:base.menu_purchase_root
msgid "Purchases"
msgstr "購"
msgstr "購"
#. module: base
#: model:res.country,name:base.md
@ -1120,7 +1120,7 @@ msgstr "報表"
msgid ""
"If set to true, the action will not be displayed on the right toolbar of a "
"form view."
msgstr "如設為,該動作不會顯示於表單檢視右側工具欄。"
msgstr "如設為,該動作不會顯示於表單檢視右側工具欄。"
#. module: base
#: field:workflow,on_create:0
@ -1239,7 +1239,7 @@ msgstr "馬爾地夫"
#. module: base
#: help:ir.values,res_id:0
msgid "Keep 0 if the action must appear on all resources."
msgstr "如該動作要顯示於所有資源的話請保持為「0」。"
msgstr "如該動作要顯示於所有資源的話請保持為「0」。"
#. module: base
#: model:ir.model,name:base.model_ir_rule
@ -1325,7 +1325,7 @@ msgstr "優先次序"
#. module: base
#: field:workflow.transition,act_from:0
msgid "Source Activity"
msgstr "來源活動"
msgstr "來源地動態"
#. module: base
#: view:ir.sequence:0
@ -1368,7 +1368,7 @@ msgstr "完整路徑"
#. module: base
#: view:res.request:0
msgid "References"
msgstr "參"
msgstr "參"
#. module: base
#: view:res.lang:0
@ -1510,7 +1510,7 @@ msgstr ""
#. module: base
#: view:workflow.activity:0
msgid "Workflow Activity"
msgstr "工作流程動"
msgstr "工作流程動"
#. module: base
#: view:ir.rule:0
@ -1694,7 +1694,7 @@ msgstr "原始檢視"
#. module: base
#: view:ir.values:0
msgid "Action To Launch"
msgstr "要啟動之動作"
msgstr "要執行之動作"
#. module: base
#: field:ir.actions.url,target:0
@ -1736,7 +1736,7 @@ msgstr ""
#. module: base
#: help:ir.values,action_id:0
msgid "This field is not used, it only helps you to select the right action."
msgstr "欄位並未使用,只是為了幫您選擇正確動作。"
msgstr "欄位並未使用,只是為了幫您選擇正確動作。"
#. module: base
#: field:ir.actions.server,email:0
@ -1916,7 +1916,7 @@ msgstr "諾福克島"
#. module: base
#: selection:base.language.install,lang:0
msgid "Korean (KR) / 한국어 (KR)"
msgstr "韓文 (KR) / 한국어 (KR)"
msgstr "韓文 (北韓) / 한국어 (KR)"
#. module: base
#: help:ir.model.fields,model:0
@ -1927,7 +1927,7 @@ msgstr ""
#: field:ir.actions.server,action_id:0
#: selection:ir.actions.server,state:0
msgid "Client Action"
msgstr "戶端動作"
msgstr "戶端動作"
#. module: base
#: model:res.country,name:base.bd
@ -2007,7 +2007,7 @@ msgstr "屬性"
#: model:ir.model,name:base.model_res_partner_bank_type
#: view:res.partner.bank.type:0
msgid "Bank Account Type"
msgstr "銀行帳類型"
msgstr "銀行帳類型"
#. module: base
#: field:base.language.export,config_logo:0
@ -2171,7 +2171,7 @@ msgstr "西班牙文 (DO) / Español (DO)"
#. module: base
#: model:ir.model,name:base.model_workflow_activity
msgid "workflow.activity"
msgstr "工作流程.動"
msgstr "工作流程.動"
#. module: base
#: help:ir.ui.view_sc,res_id:0
@ -2239,7 +2239,7 @@ msgstr ""
#. module: base
#: field:ir.default,ref_id:0
msgid "ID Ref."
msgstr "ID參"
msgstr "ID參"
#. module: base
#: model:ir.actions.server,name:base.action_start_configurator
@ -2313,7 +2313,7 @@ msgstr "分格格式"
#. module: base
#: selection:publisher_warranty.contract,state:0
msgid "Unvalidated"
msgstr "未驗"
msgstr "未驗"
#. module: base
#: model:ir.ui.menu,name:base.next_id_9
@ -2336,7 +2336,7 @@ msgstr "馬約特"
#: code:addons/base/ir/ir_actions.py:597
#, python-format
msgid "Please specify an action to launch !"
msgstr "請指定執行動作!"
msgstr "請指定執行動作!"
#. module: base
#: view:res.payterm:0
@ -2368,7 +2368,7 @@ msgstr "請檢查所有行數皆有%d個欄位。"
#: view:ir.cron:0
#: model:ir.ui.menu,name:base.menu_ir_cron_act
msgid "Scheduled Actions"
msgstr "計劃的動作"
msgstr "已安排動作"
#. module: base
#: field:res.partner.address,title:0
@ -2412,7 +2412,7 @@ msgstr "建立選單"
msgid ""
"Value Added Tax number. Check the box if the partner is subjected to the "
"VAT. Used by the VAT legal statement."
msgstr "增值稅編號。如該伙伴適用於增值稅,請選擇。用於增值稅申報。"
msgstr "增值稅編號。如該伙伴需要繳交增值稅,請選擇。用於申報增值稅。"
#. module: base
#: model:ir.model,name:base.model_maintenance_contract
@ -2710,7 +2710,7 @@ msgstr "基礎欄位"
#. module: base
#: view:publisher_warranty.contract:0
msgid "Validate"
msgstr "驗"
msgstr "驗"
#. module: base
#: field:ir.actions.todo,restart:0
@ -2795,7 +2795,7 @@ msgstr "向用戶提供目標視窗之額外說明文字,如其用法及用途
#. module: base
#: model:res.country,name:base.va
msgid "Holy See (Vatican City State)"
msgstr "教廷(梵蒂岡)"
msgstr "教廷 (梵蒂岡)"
#. module: base
#: field:base.module.import,module_file:0
@ -2810,7 +2810,7 @@ msgstr ""
#. module: base
#: model:res.partner.category,name:base.res_partner_category_16
msgid "Telecom sector"
msgstr "電範疇"
msgstr "電範疇"
#. module: base
#: field:workflow.transition,trigger_model:0
@ -2820,7 +2820,7 @@ msgstr "觸發器物件"
#. module: base
#: view:res.users:0
msgid "Current Activity"
msgstr "目前活動"
msgstr "當前動態"
#. module: base
#: view:workflow.activity:0
@ -2842,7 +2842,7 @@ msgstr "行銷"
#: view:res.partner.bank:0
#: model:res.partner.bank.type,name:base.bank_normal
msgid "Bank account"
msgstr "銀行帳"
msgstr "銀行帳"
#. module: base
#: selection:base.language.install,lang:0
@ -2857,7 +2857,7 @@ msgstr "序列類型"
#. module: base
#: view:ir.ui.view.custom:0
msgid "Customized Architecture"
msgstr "自訂架構"
msgstr "自訂架構"
#. module: base
#: field:ir.module.module,license:0
@ -2877,7 +2877,7 @@ msgstr "必定"
#. module: base
#: selection:ir.translation,type:0
msgid "SQL Constraint"
msgstr "SQL 限制"
msgstr "SQL 約束"
#. module: base
#: field:ir.actions.server,srcmodel_id:0
@ -3070,7 +3070,7 @@ msgstr "肯亞"
#. module: base
#: view:res.partner.event:0
msgid "Event"
msgstr "事件"
msgstr "活動"
#. module: base
#: model:ir.ui.menu,name:base.menu_custom_reports
@ -3080,7 +3080,7 @@ msgstr "自訂報表"
#. module: base
#: selection:base.language.install,lang:0
msgid "Abkhazian / аҧсуа"
msgstr "阿布哈文 / аҧсуа"
msgstr "阿布哈文 / аҧсуа"
#. module: base
#: view:base.module.configuration:0
@ -3106,7 +3106,7 @@ msgstr "聖馬利諾"
#. module: base
#: model:res.country,name:base.bm
msgid "Bermuda"
msgstr "百慕"
msgstr "百慕"
#. module: base
#: model:res.country,name:base.pe
@ -3180,7 +3180,7 @@ msgstr "完整存取"
#: view:ir.model.fields:0
#: model:ir.ui.menu,name:base.menu_security
msgid "Security"
msgstr "安"
msgstr "安"
#. module: base
#: model:res.widget,title:base.openerp_favorites_twitter_widget
@ -3481,8 +3481,8 @@ msgid ""
"plugin, don't forget to register emails to each contact so that the gateway "
"will automatically attach incoming emails to the right partner."
msgstr ""
"客戶是指您與其做生意者,例如公司或機構。客戶可有多個聯絡人或地址,均屬於其員工。您可用「歷史」分頁追蹤所有有關交易:訂單、電郵、機、退款要求等等。如您用"
"電郵閘道Outlook 或 Thunderbird 外掛程式,別忘了為聯絡人登記電郵,好讓閘道自動為合適伙伴寄送收到之電郵。"
"客戶是指您與其做生意者,例如公司或機構。客戶可有多個聯絡人或地址,均屬於其員工。您可用「歷史」分頁追蹤所有有關交易:訂單、電郵、機、退款要求等等。如您用"
"電郵閘道Outlook 或 Thunderbird 外掛程式,別忘了為聯絡人登記電郵,好讓閘道自動為合適伙伴寄送收到之電郵。"
#. module: base
#: field:ir.actions.report.xml,name:0
@ -3517,7 +3517,7 @@ msgstr "名稱"
msgid ""
"If set to true, the action will not be displayed on the right toolbar of a "
"form view"
msgstr "如設為,該動作不會顯示於表單檢視右側工具欄"
msgstr "如設為,該動作不會顯示於表單檢視右側工具欄"
#. module: base
#: model:res.country,name:base.ms
@ -3543,7 +3543,7 @@ msgstr "應用程式詞彙"
msgid ""
"The user's timezone, used to perform timezone conversions between the server "
"and the client."
msgstr ""
msgstr "用戶之時區,用以為伺服器及用戶端進行時區轉換。"
#. module: base
#: field:ir.module.module,demo:0
@ -3565,7 +3565,7 @@ msgstr "日文 / 日本語"
msgid ""
"Source activity. When this activity is over, the condition is tested to "
"determine if we can start the ACT_TO activity."
msgstr ""
msgstr "來源地動態。當再無動態,會測試條件以決定是否開始 ACT_TO 動態。"
#. module: base
#: model:res.partner.category,name:base.res_partner_category_3
@ -3618,7 +3618,7 @@ msgstr "冷岸及央麥恩群島"
#: model:ir.model,name:base.model_ir_actions_wizard
#: selection:ir.ui.menu,action:0
msgid "ir.actions.wizard"
msgstr ""
msgstr "ir.actions.wizard"
#. module: base
#: view:ir.actions.act_window:0
@ -3753,12 +3753,12 @@ msgstr "無法載入模組基礎!(提示:檢查附加元件路徑)"
#. module: base
#: view:res.partner.bank:0
msgid "Bank Account Owner"
msgstr "銀行帳所有者"
msgstr "銀行帳所有者"
#. module: base
#: model:ir.actions.act_window,name:base.act_values_form
msgid "Client Actions Connections"
msgstr "客戶端動作連接"
msgstr "用戶端動作連線"
#. module: base
#: field:ir.attachment,res_name:0
@ -3836,7 +3836,7 @@ msgstr ""
#. module: base
#: view:ir.actions.server:0
msgid "Client Action Configuration"
msgstr "客戶端動作設置"
msgstr "用戶端動作設定"
#. module: base
#: model:ir.model,name:base.model_res_partner_address
@ -3872,13 +3872,13 @@ msgstr "選取要匯入之模組套件 (.zip 檔)"
#: field:res.partner.event,name:0
#: model:res.widget,title:base.events_widget
msgid "Events"
msgstr "事件"
msgstr "活動"
#. module: base
#: model:ir.model,name:base.model_ir_actions_url
#: selection:ir.ui.menu,action:0
msgid "ir.actions.url"
msgstr ""
msgstr "ir.actions.url"
#. module: base
#: model:res.widget,title:base.currency_converter_widget
@ -4098,7 +4098,7 @@ msgstr "重複錯過的"
#. module: base
#: help:ir.actions.server,state:0
msgid "Type of the Action that is to be executed"
msgstr "要執行動作之類型"
msgstr "要執行動作之類型"
#. module: base
#: field:ir.server.object.lines,server_id:0
@ -4706,7 +4706,7 @@ msgid ""
"Track from where is coming your leads and opportunities by creating specific "
"channels that will be maintained at the creation of a document in the "
"system. Some examples of channels can be: Website, Phone Call, Reseller, etc."
msgstr ""
msgstr "於系統建立文件,以保持特定渠道追蹤潛在客戶及商機之來源。渠道例子有網站、電話查詢、零售商等等。"
#. module: base
#: model:res.partner.bank.type.field,name:base.bank_normal_field
@ -4765,7 +4765,7 @@ msgstr "變改我的偏好設定"
#: code:addons/base/ir/ir_actions.py:164
#, python-format
msgid "Invalid model name in the action definition."
msgstr "動作定義之模型名無效。"
msgstr "動作定義之模型名無效。"
#. module: base
#: field:partner.sms.send,text:0
@ -4900,7 +4900,7 @@ msgstr "如指定,此動作會於此用戶登入時於標準選單以外額外
#. module: base
#: view:ir.values:0
msgid "Client Actions"
msgstr "戶端動作"
msgstr "戶端動作"
#. module: base
#: code:addons/orm.py:1806
@ -4921,12 +4921,12 @@ msgstr ""
#. module: base
#: field:workflow.transition,act_to:0
msgid "Destination Activity"
msgstr "目的地動"
msgstr "目的地動"
#. module: base
#: view:ir.values:0
msgid "Connect Events to Actions"
msgstr "把事件連接動作"
msgstr "把活動關聯到動作"
#. module: base
#: model:ir.model,name:base.model_base_update_translations
@ -5041,7 +5041,7 @@ msgstr "網頁圖示影像"
#. module: base
#: view:ir.values:0
msgid "Values for Event Type"
msgstr "事件類型值"
msgstr "活動類型值"
#. module: base
#: selection:ir.model.fields,select_level:0
@ -5069,6 +5069,8 @@ msgid ""
"installed the CRM, with the history tab, you can track all the interactions "
"with a partner such as opportunities, emails, or sales orders issued."
msgstr ""
"客戶(於系統其他地方又稱「伙伴」)助您管理其他公司,包括潛在客戶、客戶及/或供應商,之通訊錄。「伙伴表單」讓您追蹤及紀錄所有所需資訊,以讓您處理公司地址、"
"聯絡人、報價單等等。如您安裝了客戶關係管理(CRM)模組,以歷史分頁您可追蹤與伙伴有關之所有來往,如商機、電郵或銷售訂單等。"
#. module: base
#: model:res.country,name:base.ph
@ -5445,7 +5447,7 @@ msgstr "翻譯"
#. module: base
#: field:ir.sequence,padding:0
msgid "Number padding"
msgid "Number Padding"
msgstr ""
#. module: base
@ -5552,7 +5554,7 @@ msgstr ""
#: code:addons/base/res/res_config.py:94
#, python-format
msgid "Couldn't find previous ir.actions.todo"
msgstr ""
msgstr "找不到之前的 ir.actions.todo"
#. module: base
#: view:ir.actions.act_window:0
@ -5752,7 +5754,7 @@ msgstr "一年中的星期:%(woy)s"
#. module: base
#: model:res.partner.category,name:base.res_partner_category_14
msgid "Bad customers"
msgstr "客戶"
msgstr "客戶"
#. module: base
#: report:ir.module.reference.graph:0
@ -5792,7 +5794,7 @@ msgstr "宏都拉斯"
#: help:res.users,menu_tips:0
msgid ""
"Check out this box if you want to always display tips on each menu action"
msgstr ""
msgstr "如想於每個選單動作顯示提示,勾選此框"
#. module: base
#: model:res.country,name:base.eg
@ -6078,7 +6080,7 @@ msgstr "建立日期"
msgid ""
"Select the action that will be executed. Loop action will not be avaliable "
"inside loop."
msgstr "選擇將要執行的動作。循環動作在循環內不可用。"
msgstr "選取要執行之動作。循環動作在循環內不可用。"
#. module: base
#: selection:base.language.install,lang:0
@ -6358,7 +6360,7 @@ msgstr "模組更新結果"
#: view:workflow.activity:0
#: field:workflow.workitem,act_id:0
msgid "Activity"
msgstr "動"
msgstr "動"
#. module: base
#: view:res.partner:0
@ -6423,7 +6425,7 @@ msgstr ""
msgid ""
"Customized views are used when users reorganize the content of their "
"dashboard views (via web client)"
msgstr ""
msgstr "當用戶(以 web client重組其 dashboard 檢視即會使用自訂化檢視"
#. module: base
#: field:ir.model,name:0
@ -6494,7 +6496,7 @@ msgstr ""
#: model:ir.actions.act_window,name:base.res_log_act_window
#: model:ir.ui.menu,name:base.menu_res_log_act_window
msgid "Client Logs"
msgstr "戶端日誌"
msgstr "戶端日誌"
#. module: base
#: model:res.country,name:base.al
@ -6534,7 +6536,7 @@ msgstr ""
#: code:addons/base/ir/ir_actions.py:716
#, python-format
msgid "Problem in configuration `Record Id` in Server Action!"
msgstr "於伺服器動作之「Record Id」配置錯誤"
msgstr "伺服器動作之「紀錄 Id」配置有問題"
#. module: base
#: code:addons/orm.py:2306
@ -6587,7 +6589,7 @@ msgstr "電郵"
#: field:res.config.users,action_id:0
#: field:res.users,action_id:0
msgid "Home Action"
msgstr "家動作Home Action"
msgstr "家動作(Home Action)"
#. module: base
#: code:addons/custom.py:558
@ -7603,7 +7605,7 @@ msgstr "要更新模組"
msgid ""
"Important when you deal with multiple actions, the execution order will be "
"decided based on this, low number is higher priority."
msgstr "對於處理多個動作很重要,其決定動作執行順序;小的數字具較高優先次序。"
msgstr "對於處理多重動作很重要,其決定動作執行次序;小的數字具較高優先次序。"
#. module: base
#: field:ir.actions.report.xml,header:0
@ -7756,7 +7758,7 @@ msgstr "格陵蘭"
#. module: base
#: field:res.partner.bank,acc_number:0
msgid "Account Number"
msgstr "帳"
msgstr "帳號"
#. module: base
#: view:res.lang:0
@ -7969,7 +7971,7 @@ msgstr "斯洛伐克文 / Slovenský jazyk"
#: field:ir.ui.menu,icon_pict:0
#: field:publisher_warranty.contract.wizard,state:0
msgid "unknown"
msgstr "不"
msgstr "不"
#. module: base
#: field:res.currency,symbol:0
@ -8032,7 +8034,7 @@ msgstr "CSV 檔"
#. module: base
#: field:res.company,account_no:0
msgid "Account No."
msgstr "帳"
msgstr "帳號"
#. module: base
#: code:addons/base/res/res_lang.py:157
@ -8128,7 +8130,7 @@ msgstr "土耳其文 / Türkçe"
#: view:workflow:0
#: field:workflow,activities:0
msgid "Activities"
msgstr "動"
msgstr "動"
#. module: base
#: field:ir.actions.act_window,auto_refresh:0
@ -8166,7 +8168,7 @@ msgstr ""
#: model:ir.ui.menu,name:base.menu_event_association
#: model:ir.ui.menu,name:base.menu_event_main
msgid "Events Organisation"
msgstr "事件組織"
msgstr "活動組織"
#. module: base
#: model:ir.actions.act_window,name:base.ir_sequence_actions
@ -8247,7 +8249,7 @@ msgstr "添加公司 RML 頁首與否"
#. module: base
#: help:workflow.transition,act_to:0
msgid "The destination activity."
msgstr "目的地活地。"
msgstr "目的地動態。"
#. module: base
#: view:base.module.update:0
@ -8283,7 +8285,7 @@ msgstr "聖誕島"
#. module: base
#: view:ir.actions.server:0
msgid "Other Actions Configuration"
msgstr "其他動作置"
msgstr "其他動作置"
#. module: base
#: view:res.config.installer:0
@ -8307,7 +8309,7 @@ msgstr "額外資訊"
#: model:ir.actions.act_window,name:base.act_values_form_action
#: model:ir.ui.menu,name:base.menu_values_form_action
msgid "Client Events"
msgstr "客戶端事件"
msgstr "用戶端活動"
#. module: base
#: view:ir.module.module:0
@ -8429,7 +8431,7 @@ msgstr "關聯欄位"
#. module: base
#: view:res.partner.event:0
msgid "Event Logs"
msgstr "事件日誌"
msgstr "活動日誌"
#. module: base
#: code:addons/base/module/wizard/base_module_configuration.py:37
@ -8446,7 +8448,7 @@ msgstr "目的地實例"
#: field:ir.actions.act_window,multi:0
#: field:ir.actions.wizard,multi:0
msgid "Action on Multiple Doc."
msgstr "動作作用於多個文件"
msgstr "多重文件之動作。"
#. module: base
#: view:base.language.export:0
@ -8477,7 +8479,7 @@ msgstr "盧森堡"
#: help:ir.values,key2:0
msgid ""
"The kind of action or button in the client side that will trigger the action."
msgstr "客戶端的該類動作或按鈕將觸發此動作。"
msgstr "用戶端的該類動作或按鈕會觸發此動作。"
#. module: base
#: code:addons/base/ir/ir_ui_menu.py:285
@ -8899,7 +8901,7 @@ msgstr "目前視窗"
#. module: base
#: view:ir.values:0
msgid "Action Source"
msgstr "動作來源"
msgstr "動作來源"
#. module: base
#: view:res.config.view:0
@ -9048,7 +9050,7 @@ msgstr "本地化"
#. module: base
#: view:ir.actions.server:0
msgid "Action to Launch"
msgstr "要啟動動作"
msgstr "要執行之動作"
#. module: base
#: view:ir.cron:0
@ -9086,7 +9088,7 @@ msgstr "另存為附件前綴"
msgid ""
"Only one client action will be executed, last client action will be "
"considered in case of multiple client actions."
msgstr "只能執行一個客戶端動作,如有多重動作只考慮最後一個。"
msgstr "只會執行一個用戶端動作,如有多重用戶端動作只考慮最後一個。"
#. module: base
#: view:res.lang:0
@ -9131,7 +9133,7 @@ msgstr "塞席爾"
#: model:ir.model,name:base.model_res_partner_bank
#: view:res.partner.bank:0
msgid "Bank Accounts"
msgstr "銀行帳"
msgstr "銀行帳"
#. module: base
#: model:res.country,name:base.sl
@ -9152,7 +9154,7 @@ msgstr "土克斯及開科斯群島"
#. module: base
#: field:res.partner.bank,owner_name:0
msgid "Account Owner"
msgstr "帳所有者"
msgstr "帳所有者"
#. module: base
#: code:addons/base/res/res_user.py:256

View File

@ -176,6 +176,7 @@
<field name="padding"/>
<field name="number_increment"/>
<field name="number_next"/>
<field name="implementation"/>
<separator colspan="4" string="Legend (for prefix, suffix)"/>
<group col="8" colspan="4">
<group>
@ -215,6 +216,7 @@
<field name="company_id" groups="base.group_multi_company"/>
<field name="number_next"/>
<field name="number_increment"/>
<field name="implementation"/>
</tree>
</field>
</record>
@ -571,6 +573,8 @@
<field name="view_id"/>
</tree>
</field>
<separator string="View Ordering" colspan="4"/>
<field colspan="4" name="help" nolabel="1"/>
</group>
</page>
<page string="Security">
@ -1876,7 +1880,7 @@
<field name="name">Config Wizard Steps</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree editable="bottom" string="Config Wizard Steps">
<tree string="Config Wizard Steps">
<field name="sequence"/>
<field name="action_id"/>
<field name="category_id"/>
@ -2008,23 +2012,19 @@
<field name="name"/>
<field name="sequence"/>
</group>
<notebook colspan="4">
<page string="Configuration">
<group col="2" colspan="4">
<separator string="Connection Information" colspan="4"/>
<field name="smtp_host"/>
<field name="smtp_port"/>
<field name="smtp_debug"/>
</group>
<group col="2" colspan="4">
<separator string="Security and Authentication" colspan="2"/>
<field name="smtp_encryption" on_change="on_change_encryption(smtp_encryption)"/>
<field name="smtp_user"/>
<field name="smtp_pass" password="True"/>
<button name="test_smtp_connection" type="object" string="Test Connection" icon="gtk-network" colspan="2"/>
</group>
</page>
</notebook>
<group col="2" colspan="4">
<separator string="Connection Information" colspan="4"/>
<field name="smtp_host"/>
<field name="smtp_port"/>
<field name="smtp_debug" groups="base.group_extended"/>
</group>
<group col="2" colspan="4">
<separator string="Security and Authentication" colspan="2"/>
<field name="smtp_encryption" on_change="on_change_encryption(smtp_encryption)"/>
<field name="smtp_user"/>
<field name="smtp_pass" password="True"/>
<button name="test_smtp_connection" type="object" string="Test Connection" icon="gtk-network" colspan="2"/>
</group>
</form>
</field>
</record>

View File

@ -810,7 +810,7 @@ ir_actions_todo_category()
# This model use to register action services.
TODO_STATES = [('open', 'To Do'),
('done', 'Done')]
TODO_TYPES = [('manual', 'Launch Manually'),
TODO_TYPES = [('manual', 'Launch Manually'),('once', 'Launch Manually Once'),
('automatic', 'Launch Automatically')]
class ir_actions_todo(osv.osv):
"""
@ -827,7 +827,8 @@ class ir_actions_todo(osv.osv):
'name': fields.char('Name', size=64),
'type': fields.selection(TODO_TYPES, 'Type', required=True,
help="""Manual: Launched manually.
Automatic: Runs whenever the system is reconfigured."""),
Automatic: Runs whenever the system is reconfigured.
Launch Manually Once: after hacing been launched manually, it sets automatically to Done."""),
'groups_id': fields.many2many('res.groups', 'res_groups_action_rel', 'uid', 'gid', 'Groups'),
'note': fields.text('Text', translate=True),
'category_id': fields.many2one('ir.actions.todo.category','Category'),
@ -843,7 +844,7 @@ Automatic: Runs whenever the system is reconfigured."""),
""" Launch Action of Wizard"""
wizard_id = ids and ids[0] or False
wizard = self.browse(cr, uid, wizard_id, context=context)
if wizard.type == 'automatic':
if wizard.type in ('automatic', 'once'):
wizard.write({'state': 'done'})
# Load action
@ -890,13 +891,13 @@ Automatic: Runs whenever the system is reconfigured."""),
done = filter(
groups_match,
self.browse(cr, uid,
self.search(cr, uid, ['&', ('state', '!=', 'open'), ('type', '=', 'manual')], context=context),
self.search(cr, uid, [('state', '!=', 'open')], context=context),
context=context))
total = filter(
groups_match,
self.browse(cr, uid,
self.search(cr, uid, [('type', '=', 'manual')], context=context),
self.search(cr, uid, [], context=context),
context=context))
return {

View File

@ -21,13 +21,20 @@
import time
import logging
import threading
import psycopg2
from datetime import datetime
from dateutil.relativedelta import relativedelta
import netsvc
import tools
from tools.safe_eval import safe_eval as eval
import openerp
import pooler
import tools
from openerp.cron import WAKE_UP_NOW
from osv import fields, osv
from tools import DEFAULT_SERVER_DATETIME_FORMAT
from tools.safe_eval import safe_eval as eval
from tools.translate import _
def str2tuple(s):
return eval('tuple(%s)' % (s or ''))
@ -41,10 +48,15 @@ _intervalTypes = {
'minutes': lambda interval: relativedelta(minutes=interval),
}
class ir_cron(osv.osv, netsvc.Agent):
""" This is the ORM object that periodically executes actions.
Note that we use the netsvc.Agent()._logger member.
class ir_cron(osv.osv):
""" Model describing cron jobs (also called actions or tasks).
"""
# TODO: perhaps in the future we could consider a flag on ir.cron jobs
# that would cause database wake-up even if the database has not been
# loaded yet or was already unloaded (e.g. 'force_db_wakeup' or something)
# See also openerp.cron
_name = "ir.cron"
_order = 'name'
_columns = {
@ -54,17 +66,17 @@ class ir_cron(osv.osv, netsvc.Agent):
'interval_number': fields.integer('Interval Number',help="Repeat every x."),
'interval_type': fields.selection( [('minutes', 'Minutes'),
('hours', 'Hours'), ('work_days','Work Days'), ('days', 'Days'),('weeks', 'Weeks'), ('months', 'Months')], 'Interval Unit'),
'numbercall': fields.integer('Number of Calls', help='Number of time the function is called,\na negative number indicates no limit'),
'doall' : fields.boolean('Repeat Missed', help="Enable this if you want to execute missed occurences as soon as the server restarts."),
'nextcall' : fields.datetime('Next Execution Date', required=True, help="Next planned execution date for this scheduler"),
'model': fields.char('Object', size=64, help="Name of object whose function will be called when this scheduler will run. e.g. 'res.partener'"),
'function': fields.char('Function', size=64, help="Name of the method to be called on the object when this scheduler is executed."),
'args': fields.text('Arguments', help="Arguments to be passed to the method. e.g. (uid,)"),
'priority': fields.integer('Priority', help='0=Very Urgent\n10=Not urgent')
'numbercall': fields.integer('Number of Calls', help='How many times the method is called,\na negative number indicates no limit.'),
'doall' : fields.boolean('Repeat Missed', help="Specify if missed occurrences should be executed when the server restarts."),
'nextcall' : fields.datetime('Next Execution Date', required=True, help="Next planned execution date for this job."),
'model': fields.char('Object', size=64, help="Model name on which the method to be called is located, e.g. 'res.partner'."),
'function': fields.char('Method', size=64, help="Name of the method to be called when this job is processed."),
'args': fields.text('Arguments', help="Arguments to be passed to the method, e.g. (uid,)."),
'priority': fields.integer('Priority', help='The priority of the job, as an integer: 0 means higher priority, 10 means lower priority.')
}
_defaults = {
'nextcall' : lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
'nextcall' : lambda *a: time.strftime(DEFAULT_SERVER_DATETIME_FORMAT),
'priority' : lambda *a: 5,
'user_id' : lambda obj,cr,uid,context: uid,
'interval_number' : lambda *a: 1,
@ -74,6 +86,8 @@ class ir_cron(osv.osv, netsvc.Agent):
'doall' : lambda *a: 1
}
_logger = logging.getLogger('cron')
def _check_args(self, cr, uid, ids, context=None):
try:
for this in self.browse(cr, uid, ids, context):
@ -86,68 +100,164 @@ class ir_cron(osv.osv, netsvc.Agent):
(_check_args, 'Invalid arguments', ['args']),
]
def _handle_callback_exception(self, cr, uid, model, func, args, job_id, job_exception):
cr.rollback()
logger=logging.getLogger('cron')
logger.exception("Call of self.pool.get('%s').%s(cr, uid, *%r) failed in Job %s" % (model, func, args, job_id))
def _handle_callback_exception(self, cr, uid, model_name, method_name, args, job_id, job_exception):
""" Method called when an exception is raised by a job.
def _callback(self, cr, uid, model, func, args, job_id):
Simply logs the exception and rollback the transaction.
:param model_name: model name on which the job method is located.
:param method_name: name of the method to call when this job is processed.
:param args: arguments of the method (without the usual self, cr, uid).
:param job_id: job id.
:param job_exception: exception raised by the job.
"""
cr.rollback()
self._logger.exception("Call of self.pool.get('%s').%s(cr, uid, *%r) failed in Job %s" % (model_name, method_name, args, job_id))
def _callback(self, cr, uid, model_name, method_name, args, job_id):
""" Run the method associated to a given job
It takes care of logging and exception handling.
:param model_name: model name on which the job method is located.
:param method_name: name of the method to call when this job is processed.
:param args: arguments of the method (without the usual self, cr, uid).
:param job_id: job id.
"""
args = str2tuple(args)
m = self.pool.get(model)
if m and hasattr(m, func):
f = getattr(m, func)
model = self.pool.get(model_name)
if model and hasattr(model, method_name):
method = getattr(model, method_name)
try:
netsvc.log('cron', (cr.dbname,uid,'*',model,func)+tuple(args), channel=logging.DEBUG,
netsvc.log('cron', (cr.dbname,uid,'*',model_name,method_name)+tuple(args), channel=logging.DEBUG,
depth=(None if self._logger.isEnabledFor(logging.DEBUG_RPC_ANSWER) else 1), fn='object.execute')
logger = logging.getLogger('execution time')
if logger.isEnabledFor(logging.DEBUG):
start_time = time.time()
f(cr, uid, *args)
method(cr, uid, *args)
if logger.isEnabledFor(logging.DEBUG):
end_time = time.time()
logger.log(logging.DEBUG, '%.3fs (%s, %s)' % (end_time - start_time, model, func))
logger.log(logging.DEBUG, '%.3fs (%s, %s)' % (end_time - start_time, model_name, method_name))
except Exception, e:
self._handle_callback_exception(cr, uid, model, func, args, job_id, e)
self._handle_callback_exception(cr, uid, model_name, method_name, args, job_id, e)
def _poolJobs(self, db_name, check=False):
def _run_job(self, cr, job, now):
""" Run a given job taking care of the repetition.
The cursor has a lock on the job (aquired by _run_jobs_multithread()) and this
method is run in a worker thread (spawned by _run_jobs_multithread())).
:param job: job to be run (as a dictionary).
:param now: timestamp (result of datetime.now(), no need to call it multiple time).
"""
try:
db, pool = pooler.get_db_and_pool(db_name)
except:
return False
nextcall = datetime.strptime(job['nextcall'], DEFAULT_SERVER_DATETIME_FORMAT)
numbercall = job['numbercall']
ok = False
while nextcall < now and numbercall:
if numbercall > 0:
numbercall -= 1
if not ok or job['doall']:
self._callback(cr, job['user_id'], job['model'], job['function'], job['args'], job['id'])
if numbercall:
nextcall += _intervalTypes[job['interval_type']](job['interval_number'])
ok = True
addsql = ''
if not numbercall:
addsql = ', active=False'
cr.execute("UPDATE ir_cron SET nextcall=%s, numbercall=%s"+addsql+" WHERE id=%s",
(nextcall.strftime(DEFAULT_SERVER_DATETIME_FORMAT), numbercall, job['id']))
if numbercall:
# Reschedule our own main cron thread if necessary.
# This is really needed if this job runs longer than its rescheduling period.
nextcall = time.mktime(nextcall.timetuple())
openerp.cron.schedule_wakeup(nextcall, cr.dbname)
finally:
cr.commit()
cr.close()
openerp.cron.release_thread_slot()
def _run_jobs_multithread(self):
# TODO remove 'check' argument from addons/base_action_rule/base_action_rule.py
""" Process the cron jobs by spawning worker threads.
This selects in database all the jobs that should be processed. It then
tries to lock each of them and, if it succeeds, spawns a thread to run
the cron job (if it doesn't succeed, it means the job was already
locked to be taken care of by another thread).
The cursor used to lock the job in database is given to the worker
thread (which has to close it itself).
"""
db = self.pool.db
cr = db.cursor()
db_name = db.dbname
try:
if not pool._init:
now = datetime.now()
cr.execute('select * from ir_cron where numbercall<>0 and active and nextcall<=now() order by priority')
for job in cr.dictfetchall():
nextcall = datetime.strptime(job['nextcall'], '%Y-%m-%d %H:%M:%S')
numbercall = job['numbercall']
jobs = {} # mapping job ids to jobs for all jobs being processed.
now = datetime.now()
# Careful to compare timestamps with 'UTC' - everything is UTC as of v6.1.
cr.execute("""SELECT * FROM ir_cron
WHERE numbercall != 0
AND active AND nextcall <= (now() at time zone 'UTC')
ORDER BY priority""")
for job in cr.dictfetchall():
if not openerp.cron.get_thread_slots():
break
jobs[job['id']] = job
ok = False
while nextcall < now and numbercall:
if numbercall > 0:
numbercall -= 1
if not ok or job['doall']:
self._callback(cr, job['user_id'], job['model'], job['function'], job['args'], job['id'])
if numbercall:
nextcall += _intervalTypes[job['interval_type']](job['interval_number'])
ok = True
addsql = ''
if not numbercall:
addsql = ', active=False'
cr.execute("update ir_cron set nextcall=%s, numbercall=%s"+addsql+" where id=%s", (nextcall.strftime('%Y-%m-%d %H:%M:%S'), numbercall, job['id']))
cr.commit()
task_cr = db.cursor()
try:
# Try to grab an exclusive lock on the job row from within the task transaction
acquired_lock = False
task_cr.execute("""SELECT *
FROM ir_cron
WHERE id=%s
FOR UPDATE NOWAIT""",
(job['id'],), log_exceptions=False)
acquired_lock = True
except psycopg2.OperationalError, e:
if e.pgcode == '55P03':
# Class 55: Object not in prerequisite state; 55P03: lock_not_available
self._logger.debug('Another process/thread is already busy executing job `%s`, skipping it.', job['name'])
continue
else:
# Unexpected OperationalError
raise
finally:
if not acquired_lock:
# we're exiting due to an exception while acquiring the lot
task_cr.close()
# Got the lock on the job row, now spawn a thread to execute it in the transaction with the lock
task_thread = threading.Thread(target=self._run_job, name=job['name'], args=(task_cr, job, now))
# force non-daemon task threads (the runner thread must be daemon, and this property is inherited by default)
task_thread.setDaemon(False)
openerp.cron.take_thread_slot()
task_thread.start()
self._logger.debug('Cron execution thread for job `%s` spawned', job['name'])
cr.execute('select min(nextcall) as min_next_call from ir_cron where numbercall<>0 and active')
next_call = cr.dictfetchone()['min_next_call']
if next_call:
next_call = time.mktime(time.strptime(next_call, '%Y-%m-%d %H:%M:%S'))
# Find next earliest job ignoring currently processed jobs (by this and other cron threads)
find_next_time_query = """SELECT min(nextcall) AS min_next_call
FROM ir_cron WHERE numbercall != 0 AND active"""
if jobs:
cr.execute(find_next_time_query + " AND id NOT IN %s", (tuple(jobs.keys()),))
else:
next_call = int(time.time()) + 3600 # if do not find active cron job from database, it will run again after 1 day
cr.execute(find_next_time_query)
next_call = cr.dictfetchone()['min_next_call']
if not check:
self.setAlarm(self._poolJobs, next_call, db_name, db_name)
if next_call:
next_call = time.mktime(time.strptime(next_call, DEFAULT_SERVER_DATETIME_FORMAT))
else:
# no matching cron job found in database, re-schedule arbitrarily in 1 day,
# this delay will likely be modified when running jobs complete their tasks
next_call = time.time() + (24*3600)
openerp.cron.schedule_wakeup(next_call, db_name)
except Exception, ex:
self._logger.warning('Exception in cron:', exc_info=True)
@ -156,12 +266,8 @@ class ir_cron(osv.osv, netsvc.Agent):
cr.commit()
cr.close()
def restart(self, dbname):
self.cancel(dbname)
# Reschedule cron processing job asap, but not in the current thread
self.setAlarm(self._poolJobs, time.time(), dbname, dbname)
def update_running_cron(self, cr):
""" Schedule as soon as possible a wake-up for this database. """
# Verify whether the server is already started and thus whether we need to commit
# immediately our changes and restart the cron agent in order to apply the change
# immediately. The commit() is needed because as soon as the cron is (re)started it
@ -171,23 +277,37 @@ class ir_cron(osv.osv, netsvc.Agent):
# when the server is only starting or loading modules (hence the test on pool._init).
if not self.pool._init:
cr.commit()
self.restart(cr.dbname)
openerp.cron.schedule_wakeup(WAKE_UP_NOW, self.pool.db.dbname)
def _try_lock(self, cr, uid, ids, context=None):
"""Try to grab a dummy exclusive write-lock to the rows with the given ids,
to make sure a following write() or unlink() will not block due
to a process currently executing those cron tasks"""
try:
cr.execute("""SELECT id FROM "%s" WHERE id IN %%s FOR UPDATE NOWAIT""" % self._table,
(tuple(ids),), log_exceptions=False)
except psycopg2.OperationalError:
cr.rollback() # early rollback to allow translations to work for the user feedback
raise osv.except_osv(_("Record cannot be modified right now"),
_("This cron task is currently being executed and may not be modified, "
"please try again in a few minutes"))
def create(self, cr, uid, vals, context=None):
res = super(ir_cron, self).create(cr, uid, vals, context=context)
self.update_running_cron(cr)
return res
def write(self, cr, user, ids, vals, context=None):
res = super(ir_cron, self).write(cr, user, ids, vals, context=context)
def write(self, cr, uid, ids, vals, context=None):
self._try_lock(cr, uid, ids, context)
res = super(ir_cron, self).write(cr, uid, ids, vals, context=context)
self.update_running_cron(cr)
return res
def unlink(self, cr, uid, ids, context=None):
self._try_lock(cr, uid, ids, context)
res = super(ir_cron, self).unlink(cr, uid, ids, context=context)
self.update_running_cron(cr)
return res
ir_cron()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -145,14 +145,14 @@ class ir_mail_server(osv.osv):
_columns = {
'name': fields.char('Description', size=64, required=True, select=True),
'smtp_host': fields.char('Server Name', size=128, required=True, help="Hostname or IP of SMTP server"),
'smtp_host': fields.char('SMTP Server', size=128, required=True, help="Hostname or IP of SMTP server"),
'smtp_port': fields.integer('SMTP Port', size=5, required=True, help="SMTP Port. Usually 465 for SSL, and 25 or 587 for other cases."),
'smtp_user': fields.char('Username', size=64, help="Optional username for SMTP authentication"),
'smtp_pass': fields.char('Password', size=64, help="Optional password for SMTP authentication"),
'smtp_encryption': fields.selection([('none','None'),
('starttls','TLS (STARTTLS)'),
('ssl','SSL/TLS')],
string='Connection Security',
string='Connection Security', required=True,
help="Choose the connection encryption scheme:\n"
"- None: SMTP sessions are done in cleartext.\n"
"- TLS (STARTTLS): TLS encryption is requested at start of SMTP session (Recommended)\n"

View File

@ -63,7 +63,7 @@ class ir_model(osv.osv):
models = self.browse(cr, uid, ids, context=context)
res = dict.fromkeys(ids)
for model in models:
res[model.id] = isinstance(self.pool.get(model.model), osv.osv_memory)
res[model.id] = self.pool.get(model.model).is_transient()
return res
def _search_osv_memory(self, cr, uid, model, name, domain, context=None):
@ -165,7 +165,7 @@ class ir_model(osv.osv):
pass
x_custom_model._name = model
x_custom_model._module = False
a = x_custom_model.createInstance(self.pool, cr)
a = x_custom_model.create_instance(self.pool, cr)
if (not a._columns) or ('x_name' in a._columns.keys()):
x_name = 'x_name'
else:
@ -481,14 +481,12 @@ class ir_model_access(osv.osv):
if isinstance(model, browse_record):
assert model._table_name == 'ir.model', 'Invalid model object'
model_name = model.name
model_name = model.model
else:
model_name = model
# osv_memory objects can be read by everyone, as they only return
# results that belong to the current user (except for superuser)
model_obj = self.pool.get(model_name)
if isinstance(model_obj, osv.osv_memory):
# TransientModel records have no access rights, only an implicit access rule
if self.pool.get(model_name).is_transient():
return True
# We check if a specific rule exists
@ -523,7 +521,7 @@ class ir_model_access(osv.osv):
}
raise except_orm(_('AccessError'), msgs[mode] % (model_name, groups) )
return r
return r or False
__cache_clearing_methods = []

View File

@ -26,8 +26,7 @@ from functools import partial
import tools
from tools.safe_eval import safe_eval as eval
from tools.misc import unquote as unquote
SUPERUSER_UID = 1
from openerp import SUPERUSER_ID
class ir_rule(osv.osv):
_name = 'ir.rule'
@ -68,7 +67,7 @@ class ir_rule(osv.osv):
return res
def _check_model_obj(self, cr, uid, ids, context=None):
return not any(isinstance(self.pool.get(rule.model_id.model), osv.osv_memory) for rule in self.browse(cr, uid, ids, context))
return not any(self.pool.get(rule.model_id.model).is_transient() for rule in self.browse(cr, uid, ids, context))
_columns = {
'name': fields.char('Name', size=128, select=1),
@ -104,7 +103,7 @@ class ir_rule(osv.osv):
if mode not in self._MODES:
raise ValueError('Invalid mode: %r' % (mode,))
if uid == SUPERUSER_UID:
if uid == SUPERUSER_ID:
return None
cr.execute("""SELECT r.id
FROM ir_rule r
@ -117,10 +116,10 @@ class ir_rule(osv.osv):
rule_ids = [x[0] for x in cr.fetchall()]
if rule_ids:
# browse user as super-admin root to avoid access errors!
user = self.pool.get('res.users').browse(cr, SUPERUSER_UID, uid)
user = self.pool.get('res.users').browse(cr, SUPERUSER_ID, uid)
global_domains = [] # list of domains
group_domains = {} # map: group -> list of domains
for rule in self.browse(cr, SUPERUSER_UID, rule_ids):
for rule in self.browse(cr, SUPERUSER_ID, rule_ids):
# read 'domain' as UID to have the correct eval context for the rule.
rule_domain = self.read(cr, uid, rule.id, ['domain'])['domain']
dom = expression.normalize(rule_domain)

View File

@ -19,83 +19,223 @@
#
##############################################################################
import logging
import time
from osv import fields,osv
import pooler
class ir_sequence_type(osv.osv):
import openerp
_logger = logging.getLogger('ir_sequence')
class ir_sequence_type(openerp.osv.osv.osv):
_name = 'ir.sequence.type'
_order = 'name'
_columns = {
'name': fields.char('Name',size=64, required=True),
'code': fields.char('Code',size=32, required=True),
'name': openerp.osv.fields.char('Name', size=64, required=True),
'code': openerp.osv.fields.char('Code', size=32, required=True),
}
ir_sequence_type()
_sql_constraints = [
('code_unique', 'unique(code)', '`code` must be unique.'),
]
def _code_get(self, cr, uid, context={}):
cr.execute('select code, name from ir_sequence_type')
return cr.fetchall()
class ir_sequence(osv.osv):
class ir_sequence(openerp.osv.osv.osv):
""" Sequence model.
The sequence model allows to define and use so-called sequence objects.
Such objects are used to generate unique identifiers in a transaction-safe
way.
"""
_name = 'ir.sequence'
_order = 'name'
_columns = {
'name': fields.char('Name',size=64, required=True),
'code': fields.selection(_code_get, 'Code',size=64, required=True),
'active': fields.boolean('Active'),
'prefix': fields.char('Prefix',size=64, help="Prefix value of the record for the sequence"),
'suffix': fields.char('Suffix',size=64, help="Suffix value of the record for the sequence"),
'number_next': fields.integer('Next Number', required=True, help="Next number of this sequence"),
'number_increment': fields.integer('Increment Number', required=True, help="The next number of the sequence will be incremented by this number"),
'padding' : fields.integer('Number padding', required=True, help="OpenERP will automatically adds some '0' on the left of the 'Next Number' to get the required padding size."),
'company_id': fields.many2one('res.company', 'Company'),
'name': openerp.osv.fields.char('Name', size=64, required=True),
'code': openerp.osv.fields.selection(_code_get, 'Code', size=64),
'implementation': openerp.osv.fields.selection( # TODO update the view
[('standard', 'Standard'), ('no_gap', 'No gap')],
'Implementation', required=True,
help="Two sequence object implementations are offered: Standard "
"and 'No gap'. The later is slower than the former but forbids any"
" gap in the sequence (while they are possible in the former)."),
'active': openerp.osv.fields.boolean('Active'),
'prefix': openerp.osv.fields.char('Prefix', size=64, help="Prefix value of the record for the sequence"),
'suffix': openerp.osv.fields.char('Suffix', size=64, help="Suffix value of the record for the sequence"),
'number_next': openerp.osv.fields.integer('Next Number', required=True, help="Next number of this sequence"),
'number_increment': openerp.osv.fields.integer('Increment Number', required=True, help="The next number of the sequence will be incremented by this number"),
'padding' : openerp.osv.fields.integer('Number Padding', required=True, help="OpenERP will automatically adds some '0' on the left of the 'Next Number' to get the required padding size."),
'company_id': openerp.osv.fields.many2one('res.company', 'Company'),
}
_defaults = {
'active': lambda *a: True,
'implementation': 'standard',
'active': True,
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'ir.sequence', context=c),
'number_increment': lambda *a: 1,
'number_next': lambda *a: 1,
'padding' : lambda *a : 0,
'number_increment': 1,
'number_next': 1,
'padding' : 0,
}
def _process(self, s):
return (s or '') % {
'year':time.strftime('%Y'),
'month': time.strftime('%m'),
'day':time.strftime('%d'),
'y': time.strftime('%y'),
'doy': time.strftime('%j'),
'woy': time.strftime('%W'),
'weekday': time.strftime('%w'),
'h24': time.strftime('%H'),
'h12': time.strftime('%I'),
'min': time.strftime('%M'),
'sec': time.strftime('%S'),
def init(self, cr):
return # Don't do the following index yet.
# CONSTRAINT/UNIQUE INDEX on (code, company_id)
# /!\ The unique constraint 'unique_name_company_id' is not sufficient, because SQL92
# only support field names in constraint definitions, and we need a function here:
# we need to special-case company_id to treat all NULL company_id as equal, otherwise
# we would allow duplicate (code, NULL) ir_sequences.
cr.execute("""
SELECT indexname FROM pg_indexes WHERE indexname =
'ir_sequence_unique_code_company_id_idx'""")
if not cr.fetchone():
cr.execute("""
CREATE UNIQUE INDEX ir_sequence_unique_code_company_id_idx
ON ir_sequence (code, (COALESCE(company_id,-1)))""")
def _create_sequence(self, cr, id, number_increment, number_next):
""" Create a PostreSQL sequence.
There is no access rights check.
"""
assert isinstance(id, (int, long))
sql = "CREATE SEQUENCE ir_sequence_%03d INCREMENT BY %%s START WITH %%s" % id
cr.execute(sql, (number_increment, number_next))
def _drop_sequence(self, cr, ids):
""" Drop the PostreSQL sequence if it exists.
There is no access rights check.
"""
ids = ids if isinstance(ids, (list, tuple)) else [ids]
assert all(isinstance(i, (int, long)) for i in ids), \
"Only ids in (int, long) allowed."
names = ','.join('ir_sequence_%03d' % i for i in ids)
# RESTRICT is the default; it prevents dropping the sequence if an
# object depends on it.
cr.execute("DROP SEQUENCE IF EXISTS %s RESTRICT " % names)
def _alter_sequence(self, cr, id, number_increment, number_next):
""" Alter a PostreSQL sequence.
There is no access rights check.
"""
assert isinstance(id, (int, long))
cr.execute("""
ALTER SEQUENCE ir_sequence_%03d INCREMENT BY %%s RESTART WITH %%s
""" % id, (number_increment, number_next))
def create(self, cr, uid, values, context=None):
""" Create a sequence, in implementation == standard a fast gaps-allowed PostgreSQL sequence is used.
"""
values = self._add_missing_default_values(cr, uid, values, context)
values['id'] = super(ir_sequence, self).create(cr, uid, values, context)
if values['implementation'] == 'standard':
f = self._create_sequence(cr, values['id'], values['number_increment'], values['number_next'])
return values['id']
def unlink(self, cr, uid, ids, context=None):
super(ir_sequence, self).unlink(cr, uid, ids, context)
self._drop_sequence(cr, ids)
return True
def write(self, cr, uid, ids, values, context=None):
if not isinstance(ids, (list, tuple)):
ids = [ids]
new_implementation = values.get('implementation')
rows = self.read(cr, uid, ids, ['implementation', 'number_increment', 'number_next'], context)
super(ir_sequence, self).write(cr, uid, ids, values, context)
for row in rows:
# 4 cases: we test the previous impl. against the new one.
if row['implementation'] == 'standard':
i = values.get('number_increment', row['number_increment'])
n = values.get('number_next', row['number_next'])
if new_implementation in ('standard', None):
self._alter_sequence(cr, row['id'], i, n)
else:
self._drop_sequence(cr, row['id'])
else:
if new_implementation in ('no_gap', None):
pass
else:
self._create_sequence(cr, row['id'], i, n)
return True
def _interpolate(self, s, d):
if s:
return s % d
return ''
def _interpolation_dict(self):
t = time.localtime() # Actually, the server is always in UTC.
return {
'year': time.strftime('%Y', t),
'month': time.strftime('%m', t),
'day': time.strftime('%d', t),
'y': time.strftime('%y', t),
'doy': time.strftime('%j', t),
'woy': time.strftime('%W', t),
'weekday': time.strftime('%w', t),
'h24': time.strftime('%H', t),
'h12': time.strftime('%I', t),
'min': time.strftime('%M', t),
'sec': time.strftime('%S', t),
}
def get_id(self, cr, uid, sequence_id, test='id', context=None):
assert test in ('code','id')
company_ids = self.pool.get('res.company').search(cr, uid, [], context=context)
cr.execute('''SELECT id, number_next, prefix, suffix, padding
FROM ir_sequence
WHERE %s=%%s
AND active=true
AND (company_id in %%s or company_id is NULL)
ORDER BY company_id, id
FOR UPDATE NOWAIT''' % test,
(sequence_id, tuple(company_ids)))
res = cr.dictfetchone()
if res:
cr.execute('UPDATE ir_sequence SET number_next=number_next+number_increment WHERE id=%s AND active=true', (res['id'],))
if res['number_next']:
return self._process(res['prefix']) + '%%0%sd' % res['padding'] % res['number_next'] + self._process(res['suffix'])
else:
return self._process(res['prefix']) + self._process(res['suffix'])
return False
def _next(self, cr, uid, seq_ids, context=None):
if not seq_ids:
return False
seq = self.read(cr, uid, seq_ids[:1], ['implementation','number_next','prefix','suffix','padding'])[0]
if seq['implementation'] == 'standard':
cr.execute("SELECT nextval('ir_sequence_%03d')" % seq['id'])
seq['number_next'] = cr.fetchone()
else:
cr.execute("SELECT number_next FROM ir_sequence WHERE id=%s FOR UPDATE NOWAIT", (seq['id'],))
cr.execute("UPDATE ir_sequence SET number_next=number_next+number_increment WHERE id=%s ", (seq['id'],))
d = self._interpolation_dict()
interpolated_prefix = self._interpolate(seq['prefix'], d)
interpolated_suffix = self._interpolate(seq['suffix'], d)
return interpolated_prefix + '%%0%sd' % seq['padding'] % seq['number_next'] + interpolated_suffix
def get(self, cr, uid, code):
return self.get_id(cr, uid, code, test='code')
ir_sequence()
def next_by_id(self, cr, uid, sequence_id, context=None):
""" Draw an interpolated string using the specified sequence."""
self.check_read(cr, uid)
company_ids = self.pool.get('res.company').search(cr, uid, [], context=context) + [False]
ids = self.search(cr, uid, ['&',('id','=', sequence_id),('company_id','in',company_ids)])
return self._next(cr, uid, ids, context)
def next_by_code(self, cr, uid, sequence_code, context=None):
""" Draw an interpolated string using the specified sequence."""
self.check_read(cr, uid)
company_ids = self.pool.get('res.company').search(cr, uid, [], context=context) + [False]
ids = self.search(cr, uid, ['&',('code','=', sequence_code),('company_id','in',company_ids)])
return self._next(cr, uid, ids, context)
def get_id(self, cr, uid, sequence_code_or_id, code_or_id='id', context=None):
""" Draw an interpolated string using the specified sequence.
The sequence to use is specified by the ``sequence_code_or_id``
argument, which can be a code or an id (as controlled by the
``code_or_id`` argument. This method is deprecated.
"""
_logger.warning("ir_sequence.get() and ir_sequence.get_id() are deprecated. "
"Please use ir_sequence.next_by_code() or ir_sequence.next_by_id().")
if code_or_id == 'id':
return self.next_by_id(cr, uid, sequence_code_or_id, context)
else:
return self.next_by_code(cr, uid, sequence_code_or_id, context)
def get(self, cr, uid, code, context=None):
""" Draw an interpolated string using the specified sequence.
The sequence to use is specified by its code. This method is
deprecated.
"""
return self.get_id(cr, uid, code, 'code', context)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -19,18 +19,15 @@
#
##############################################################################
from osv import osv
from osv.orm import orm_memory
import openerp
class osv_memory_autovacuum(osv.osv_memory):
class osv_memory_autovacuum(openerp.osv.osv.osv_memory):
""" Expose the osv_memory.vacuum() method to the cron jobs mechanism. """
_name = 'osv_memory.autovacuum'
def power_on(self, cr, uid, context=None):
for model in self.pool.obj_list():
obj = self.pool.get(model)
if isinstance(obj, orm_memory):
obj.vaccum(cr, uid)
for model in self.pool.models.values():
if model.is_transient():
model._transient_vacuum(cr, uid)
return True
osv_memory_autovacuum()

Some files were not shown because too many files have changed in this diff Show More