merge trunk

bzr revid: nicolas.vanhoren@openerp.com-20121130095319-19yuk44djj2h20m4
This commit is contained in:
niv-openerp 2012-11-30 10:53:19 +01:00
commit 13d385fd6d
32 changed files with 16820 additions and 979 deletions

View File

@ -1,281 +1,7 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
"""
OpenERP - Server
OpenERP is an ERP+CRM program for small and medium businesses.
The whole source code is distributed under the terms of the
GNU Public Licence.
(c) 2003-TODAY, Fabien Pinckaers - OpenERP SA
"""
import logging
import os
import signal
import sys
import threading
import traceback
import time
import openerp
__author__ = openerp.release.author
__version__ = openerp.release.version
# Also use the `openerp` logger for the main script.
_logger = logging.getLogger('openerp')
def check_root_user():
""" Exit if the process's user is 'root' (on POSIX system)."""
if os.name == 'posix':
import pwd
if pwd.getpwuid(os.getuid())[0] == 'root' :
sys.stderr.write("Running as user 'root' is a security risk, aborting.\n")
sys.exit(1)
def check_postgres_user():
""" Exit if the configured database user is 'postgres'.
This function assumes the configuration has been initialized.
"""
config = openerp.tools.config
if config['db_user'] == 'postgres':
sys.stderr.write("Using the database user 'postgres' is a security risk, aborting.")
sys.exit(1)
def report_configuration():
""" Log the server version and some configuration values.
This function assumes the configuration has been initialized.
"""
config = openerp.tools.config
_logger.info("OpenERP version %s", __version__)
for name, value in [('addons paths', config['addons_path']),
('database hostname', config['db_host'] or 'localhost'),
('database port', config['db_port'] or '5432'),
('database user', config['db_user'])]:
_logger.info("%s: %s", name, value)
def setup_pid_file():
""" Create a file with the process id written in it.
This function assumes the configuration has been initialized.
"""
config = openerp.tools.config
if config['pidfile']:
fd = open(config['pidfile'], 'w')
pidtext = "%d" % (os.getpid())
fd.write(pidtext)
fd.close()
def preload_registry(dbname):
""" Preload a registry, and start the cron."""
try:
db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=openerp.tools.config['init'] or openerp.tools.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:
_logger.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:
config = openerp.tools.config
db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=config['init'] or config['update'], pooljobs=False)
cr = db.cursor()
_logger.info('loading test file %s', test_file)
openerp.tools.convert_yaml_import(cr, 'base', file(test_file), 'test', {}, 'test', True)
cr.rollback()
cr.close()
except Exception:
_logger.exception('Failed to initialize database `%s` and run test file `%s`.', dbname, test_file)
def export_translation():
config = openerp.tools.config
dbname = config['db_name']
if config["language"]:
msg = "language %s" % (config["language"],)
else:
msg = "new language"
_logger.info('writing translation file for %s to %s', msg,
config["translate_out"])
fileformat = os.path.splitext(config["translate_out"])[-1][1:].lower()
buf = file(config["translate_out"], "w")
cr = openerp.pooler.get_db(dbname).cursor()
openerp.tools.trans_export(config["language"],
config["translate_modules"] or ["all"], buf, fileformat, cr)
cr.close()
buf.close()
_logger.info('translation file written successfully')
def import_translation():
config = openerp.tools.config
context = {'overwrite': config["overwrite_existing_translations"]}
dbname = config['db_name']
cr = openerp.pooler.get_db(dbname).cursor()
openerp.tools.trans_load( cr, config["translate_in"], config["language"],
context=context)
cr.commit()
cr.close()
# Variable keeping track of the number of calls to the signal handler defined
# below. This variable is monitored by ``quit_on_signals()``.
quit_signals_received = 0
def signal_handler(sig, frame):
""" Signal handler: exit ungracefully on the second handled signal.
:param sig: the signal number
:param frame: the interrupted stack frame or None
"""
global quit_signals_received
quit_signals_received += 1
if quit_signals_received > 1:
# logging.shutdown was already called at this point.
sys.stderr.write("Forced shutdown.\n")
os._exit(0)
def dumpstacks(sig, frame):
""" Signal handler: dump a stack trace for each existing thread."""
# code from http://stackoverflow.com/questions/132058/getting-stack-trace-from-a-running-python-application#answer-2569696
# modified for python 2.5 compatibility
threads_info = dict([(th.ident, {'name': th.name,
'uid': getattr(th,'uid','n/a')})
for th in threading.enumerate()])
code = []
for threadId, stack in sys._current_frames().items():
thread_info = threads_info.get(threadId)
code.append("\n# Thread: %s (id:%s) (uid:%s)" % \
(thread_info and thread_info['name'] or 'n/a',
threadId,
thread_info and thread_info['uid'] or 'n/a'))
for filename, lineno, name, line in traceback.extract_stack(stack):
code.append('File: "%s", line %d, in %s' % (filename, lineno, name))
if line:
code.append(" %s" % (line.strip()))
_logger.info("\n".join(code))
def setup_signal_handlers():
""" Register the signal handler defined above. """
SIGNALS = map(lambda x: getattr(signal, "SIG%s" % x), "INT TERM".split())
if os.name == 'posix':
map(lambda sig: signal.signal(sig, signal_handler), SIGNALS)
signal.signal(signal.SIGQUIT, dumpstacks)
elif os.name == 'nt':
import win32api
win32api.SetConsoleCtrlHandler(lambda sig: signal_handler(sig, None), 1)
def quit_on_signals():
""" Wait for one or two signals then shutdown the server.
The first SIGINT or SIGTERM signal will initiate a graceful shutdown while
a second one if any will force an immediate exit.
"""
# Wait for a first signal to be handled. (time.sleep will be interrupted
# by the signal handler.) The try/except is for the win32 case.
try:
while quit_signals_received == 0:
time.sleep(60)
except KeyboardInterrupt:
pass
config = openerp.tools.config
if config['pidfile']:
os.unlink(config['pidfile'])
openerp.service.stop_services()
sys.exit(0)
def configure_babel_localedata_path():
# Workaround: py2exe and babel.
if hasattr(sys, 'frozen'):
import babel
babel.localedata._dirname = os.path.join(os.path.dirname(sys.executable), 'localedata')
def main():
os.environ["TZ"] = "UTC"
check_root_user()
openerp.tools.config.parse_config(sys.argv[1:])
if openerp.tools.config.options["gevent"]:
_logger.info('Using gevent mode')
import gevent.monkey
gevent.monkey.patch_all()
import gevent_psycopg2
gevent_psycopg2.monkey_patch()
check_postgres_user()
openerp.netsvc.init_logger()
report_configuration()
if openerp.tools.config.options["gevent"]:
_logger.info('Using gevent mode')
config = openerp.tools.config
configure_babel_localedata_path()
setup_signal_handlers()
if config["test_file"]:
run_test_file(config['db_name'], config['test_file'])
sys.exit(0)
if config["translate_out"]:
export_translation()
sys.exit(0)
if config["translate_in"]:
import_translation()
sys.exit(0)
if not config["stop_after_init"]:
setup_pid_file()
# Some module register themselves when they are loaded so we need the
# services to be running before loading any registry.
if config['workers']:
openerp.service.start_services_workers()
else:
openerp.service.start_services()
if config['db_name']:
for dbname in config['db_name'].split(','):
preload_registry(dbname)
if config["stop_after_init"]:
sys.exit(0)
_logger.info('OpenERP server is running, waiting for connections...')
quit_on_signals()
if __name__ == "__main__":
main()
openerp.cli.main()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -26,6 +26,7 @@
SUPERUSER_ID = 1
import addons
import cli
import conf
import loglevels
import modules

View File

@ -149,7 +149,6 @@ CREATE TABLE res_users (
active boolean default True,
login varchar(64) NOT NULL UNIQUE,
password varchar(64) default null,
tz varchar(64) default null,
lang varchar(64) default '',
-- No FK references below, will be added later by ORM
-- (when the destination rows exist)

View File

@ -88,6 +88,7 @@ gk//2Q==</field>
<record model="res.partner" id="base.partner_root">
<field name="email">admin@example.com</field>
<field name="tz">Europe/Brussels</field>
<field name="image">/9j/4AAQSkZJRgABAQEBLAEsAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEP
ERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e
Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCACmAKYDASIA

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-08-20 15:29+0000\n"
"Last-Translator: Rudolf Schnapka <rs@techno-flex.de>\n"
"PO-Revision-Date: 2012-11-29 21:23+0000\n"
"Last-Translator: Felix Schubert <Unknown>\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: 2012-11-25 05:27+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-30 05:05+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -25,6 +25,10 @@ msgid ""
"================================================\n"
" "
msgstr ""
"\n"
"Modul zum Schreiben und Drucken von Schecks.\n"
"================================================\n"
" "
#. module: base
#: model:res.country,name:base.sh
@ -60,7 +64,7 @@ msgstr "Aufbau des Ansichts-Formulars"
#. module: base
#: model:ir.module.module,summary:base.module_sale_stock
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
msgstr ""
msgstr "Angebots-, Auftrags-, Lieferungs- und Rechnungskontrolle"
#. module: base
#: selection:ir.sequence,implementation:0
@ -89,12 +93,12 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops"
msgstr ""
msgstr "Touchscreen Oberfläche für Shops"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
msgid "Indian Payroll"
msgstr ""
msgstr "Indische Lohnkonten"
#. module: base
#: help:ir.cron,model:0
@ -124,6 +128,17 @@ msgid ""
" * Product Attributes\n"
" "
msgstr ""
"\n"
"A module that adds manufacturers and attributes on the product form.\n"
"====================================================================\n"
"\n"
"Sie können jetzt die folgenden Produktparameter definieren:\n"
"-----------------------------------------------\n"
" * Hersteller\n"
" * Produktbezeichnung des Herstellers\n"
" * Artikelnummer des Herstellers\n"
" * Produkt Eigenschaften\n"
" "
#. module: base
#: field:ir.actions.client,params:0
@ -137,11 +152,14 @@ msgid ""
"The module adds google user in res user.\n"
"========================================\n"
msgstr ""
"\n"
"Das Modul speichert den Google Zugang in res.user.\n"
"========================================\n"
#. module: base
#: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee."
msgstr ""
msgstr "Aktivieren, wenn der Kontakt ein Mitarbeiter ist."
#. module: base
#: help:ir.model.fields,domain:0
@ -193,6 +211,15 @@ msgid ""
"revenue\n"
"reports."
msgstr ""
"\n"
"Erzeugen Sie Rechnungen auf Basis von Spesen und Zeiterfassungseinträgen.\n"
"========================================================\n"
"\n"
"Modul zur Erzeugung von Rechnung auf Basis von Personalkosten "
"(Zeiterfassungseinträge, Spesen, ...).\n"
"\n"
"Sie können Preislisten im Analytischen Account definieren und Auswertungen\n"
"erzeugen."
#. module: base
#: model:ir.module.module,description:base.module_crm
@ -227,6 +254,34 @@ msgid ""
"* Planned Revenue by Stage and User (graph)\n"
"* Opportunities by Stage (graph)\n"
msgstr ""
"\n"
"OpenERP Customer Reletionship Management\n"
"=====================================================\n"
"\n"
"Diese Anwendung ermöglicht Ihrem Vertrieb intelligent und effizient Leads, "
"Opportunities, Verabredungen und Telefonanrufe zu verwalten.\n"
"\n"
"Sie verwaltet Schlüsselaufgaben wie die Kommunikation, Identifikation, "
"Priorisierung, Zuweisung und Benachrichtigungen.\n"
"\n"
"OpenERP stellt sicher, das alle Prozesse von Benutzern, Kunden und "
"Lieferanten dokumentiert werden. Das System sendet automatisch Erinnerungen, "
"eskaliert Anfragen, löst Methoden und Aktionen basierend auf Ihren eigenen "
"Regeln aus.\n"
"\n"
"Das CRM Modul verfügt über ein eigenes E-Mail Gateway, zur Syncronisierung "
"zwischen Ihrem Mailserver und OpenERP. Auf diese Weise kann auch ein Trouble-"
"Ticket-System realisiert werden.\n"
"\n"
"OpenERP stellt sicher, das Sie sich für Nachrichten automatisch bedanken, "
"die Verteilung von Nachrichten automatisiert wird und das die Kommunikation "
"bei den richtigen Mitarbeitern landet.\n"
"\n"
"\n"
"Das CRM-Dashboard umfasst standardmässig:\n"
"-------------------------------\n"
"* Geplanter Umsatz sortiert nach Stufen und Benutzer (Graph)\n"
"* Opportunities sortiert nach Stufen (Graph)\n"
#. module: base
#: code:addons/base/ir/ir_model.py:394
@ -270,7 +325,7 @@ msgstr "erstellt."
#. module: base
#: field:ir.actions.report.xml,report_xsl:0
msgid "XSL Path"
msgstr ""
msgstr "XSL Pfad"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_tr
@ -296,7 +351,7 @@ msgstr "Inuktitut / ᐃᓄᒃᑎᑐᑦ"
#. module: base
#: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies"
msgstr ""
msgstr "Mehrwährung"
#. module: base
#: model:ir.module.module,description:base.module_l10n_cl
@ -320,6 +375,8 @@ msgid ""
"The internal user that is in charge of communicating with this contact if "
"any."
msgstr ""
"Der interne Benutzer, der verantwortlich für die Kommunikation mit dem "
"Kontakt verantwortlich ist (falls gewählt)."
#. module: base
#: view:res.partner:0
@ -354,6 +411,15 @@ msgid ""
" * Commitment Date\n"
" * Effective Date\n"
msgstr ""
"\n"
"Fügt zusätzliche Datumsinformationen auf Aufträgen hinzu.\n"
"===================================================\n"
"\n"
"Sie können folgende zusätliche Daten auf Ihren Aufträgen hinzufügen:\n"
"-----------------------------------------------------------\n"
" * Anfragedatum\n"
" * Auftragsdatum\n"
" * Bestätigungsdatum\n"
#. module: base
#: help:ir.actions.act_window,res_id:0
@ -361,6 +427,8 @@ msgid ""
"Database ID of record to open in form view, when ``view_mode`` is set to "
"'form' only"
msgstr ""
"Datenbank ID des Datensatzes des Form Views, wenn als Ansichtsmodus nur "
"'Form' gewählt wurde"
#. module: base
#: field:res.partner.address,name:0
@ -429,6 +497,14 @@ msgid ""
"invoices from picking, OpenERP is able to add and compute the shipping "
"line.\n"
msgstr ""
"\n"
"Erlaubt die Definition von Lieferarten in Aufträgen und Lieferscheinen.\n"
"==============================================================\n"
"\n"
"Sie können Ihre eigenen Speditions- und Liefermatrizen definieren. Wenn Sie "
"Rechnungen\n"
"aus Lieferscheinen erzeugen, kann OpenERP die Lieferkosten hinzufügen und "
"berechnen.\n"
#. module: base
#: code:addons/base/ir/ir_filters.py:83
@ -437,6 +513,8 @@ msgid ""
"There is already a shared filter set as default for %(model)s, delete or "
"change it before setting a new default"
msgstr ""
"Es wurde bereits ein Filter als Standardfilter für %(model)s definiert, "
"löschen oder ändern Sie diesen bevor Sie einen neuen als Standard setzen"
#. module: base
#: code:addons/orm.py:2639
@ -532,7 +610,7 @@ msgstr ""
#. module: base
#: field:ir.model.relation,name:0
msgid "Relation Name"
msgstr ""
msgstr "Bezugsname"
#. module: base
#: model:res.country,name:base.tv
@ -572,7 +650,7 @@ msgstr ""
#. module: base
#: view:workflow.transition:0
msgid "Workflow Transition"
msgstr ""
msgstr "Workflow Übergang"
#. module: base
#: model:res.country,name:base.gf
@ -582,7 +660,7 @@ msgstr "Französich Guyana"
#. module: base
#: model:ir.module.module,summary:base.module_hr
msgid "Jobs, Departments, Employees Details"
msgstr ""
msgstr "Stellen-, Abteilungs-, Mitabeiterdetails"
#. module: base
#: model:ir.module.module,description:base.module_analytic
@ -695,7 +773,7 @@ msgstr "Kolumbien"
#. module: base
#: model:res.partner.title,name:base.res_partner_title_mister
msgid "Mister"
msgstr ""
msgstr "Herr"
#. module: base
#: help:res.country,code:0
@ -724,7 +802,7 @@ msgstr "Nicht übersetzt"
#. module: base
#: view:ir.mail_server:0
msgid "Outgoing Mail Server"
msgstr ""
msgstr "Postausgangsserver"
#. module: base
#: help:ir.actions.act_window,context:0
@ -902,7 +980,7 @@ msgstr "Sicherheit und Berechtigungen"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar
msgid "Web Calendar"
msgstr ""
msgstr "Web Kalender"
#. module: base
#: selection:base.language.install,lang:0
@ -913,7 +991,7 @@ msgstr "Swedish / svenska"
#: field:base.language.export,name:0
#: field:ir.attachment,datas_fname:0
msgid "File Name"
msgstr ""
msgstr "Dateiname"
#. module: base
#: model:res.country,name:base.rs
@ -1008,7 +1086,7 @@ msgstr "EMail Optionen"
#: code:addons/base/ir/ir_fields.py:196
#, python-format
msgid "'%s' does not seem to be a valid date for field '%%(field)s'"
msgstr ""
msgstr "'%s' ist kein gültiges Datumsformat für das Feld '%%(field)s'"
#. module: base
#: view:res.partner:0
@ -1025,6 +1103,7 @@ msgstr "Simbabwe"
msgid ""
"Type of the constraint: `f` for a foreign key, `u` for other constraints."
msgstr ""
"Typ der Bedingung: 'f' für Fremdschlüssel, 'u' für andere Bedingungen"
#. module: base
#: view:ir.actions.report.xml:0
@ -1138,7 +1217,7 @@ msgstr "Google-Benutzer"
#. module: base
#: model:ir.module.module,shortdesc:base.module_fleet
msgid "Fleet Management"
msgstr ""
msgstr "Fuhrpark Verwaltung"
#. module: base
#: help:ir.server.object.lines,value:0
@ -1191,7 +1270,7 @@ msgstr ""
#: code:addons/base/ir/ir_model.py:724
#, python-format
msgid "Document model"
msgstr ""
msgstr "Dokumenten Model"
#. module: base
#: view:res.lang:0
@ -1241,7 +1320,7 @@ msgstr "Der Name des Landes muss eindeutig sein!"
#. module: base
#: field:ir.module.module,installed_version:0
msgid "Latest Version"
msgstr ""
msgstr "Neueste Version"
#. module: base
#: code:addons/base/ir/ir_mail_server.py:213
@ -1263,7 +1342,7 @@ msgstr "Fehlerhafter xml Code für diese Ansicht!"
#. module: base
#: view:res.partner:0
msgid "Tel:"
msgstr ""
msgstr "Tel.:"
#. module: base
#: model:res.country,name:base.ky
@ -1273,7 +1352,7 @@ msgstr "Cayman Inseln"
#. module: base
#: view:ir.rule:0
msgid "Record Rule"
msgstr ""
msgstr "Datensatz Regel"
#. module: base
#: model:res.country,name:base.kr
@ -1403,7 +1482,7 @@ msgstr "Tests"
#. module: base
#: field:ir.actions.report.xml,attachment:0
msgid "Save as Attachment Prefix"
msgstr ""
msgstr "Speichern als Anhangsprefix"
#. module: base
#: field:ir.ui.view_sc,res_id:0
@ -1440,7 +1519,7 @@ msgstr "Haiti"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_fr_hr_payroll
msgid "French Payroll"
msgstr ""
msgstr "Französische Lohnkonten"
#. module: base
#: view:ir.ui.view:0
@ -1594,7 +1673,7 @@ msgstr ""
#. module: base
#: model:res.country,name:base.mf
msgid "Saint Martin (French part)"
msgstr ""
msgstr "Saint-Martin (franz. Teil)"
#. module: base
#: model:ir.model,name:base.model_ir_exports
@ -1611,7 +1690,7 @@ msgstr "Es existiert keine Sprache mit dem Code \"%s\""
#: model:ir.module.category,name:base.module_category_social_network
#: model:ir.module.module,shortdesc:base.module_mail
msgid "Social Network"
msgstr ""
msgstr "Soziales Netzwerk"
#. module: base
#: view:res.lang:0
@ -1621,12 +1700,12 @@ msgstr "%Y - Jahr mit Jahrhundert."
#. module: base
#: view:res.company:0
msgid "Report Footer Configuration"
msgstr ""
msgstr "Konfiguration der Fußzeile von Berichten"
#. module: base
#: field:ir.translation,comments:0
msgid "Translation comments"
msgstr ""
msgstr "Übersetzungskommentar"
#. module: base
#: model:ir.module.module,description:base.module_lunch
@ -1692,7 +1771,7 @@ msgstr ""
#. module: base
#: help:res.partner,website:0
msgid "Website of Partner or Company"
msgstr ""
msgstr "Webseite des Partners oder der Firma"
#. module: base
#: help:base.language.install,overwrite:0
@ -1739,7 +1818,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_sale
msgid "Quotations, Sale Orders, Invoicing"
msgstr ""
msgstr "Angebote, Aufträge, Rechnungen"
#. module: base
#: field:res.users,login:0
@ -1758,7 +1837,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_portal_project_issue
msgid "Portal Issue"
msgstr ""
msgstr "Portal Problem"
#. module: base
#: model:ir.ui.menu,name:base.menu_tools
@ -1778,11 +1857,15 @@ msgid ""
"Launch Manually Once: after having been launched manually, it sets "
"automatically to Done."
msgstr ""
"Manuell: Manuell gestartet.\n"
"Automatisch: Wird gestartet, wenn das System neu konfiguriert wird.\n"
"Einmalig manuell starten: Nachdem einmalig manuell gestartet wurde, wird es "
"automatisch auf Erledigt gesetzt."
#. module: base
#: field:res.partner,image_small:0
msgid "Small-sized image"
msgstr ""
msgstr "Kleines Bild"
#. module: base
#: model:ir.module.module,shortdesc:base.module_stock
@ -1894,6 +1977,14 @@ msgid ""
"It assigns manager and user access rights to the Administrator and only user "
"rights to the Demo user. \n"
msgstr ""
"\n"
"Finanzen Zugriffsrechte\n"
"========================\n"
"Gibt dem Administrator Benutzerrechte zum Zugriff auf alle Funktionalitäten "
"des Finanzmoduls, wie z.B. Journal Einträge und Kontenplan.\n"
"\n"
"Dem Administrator werden Verwaltungs- und Benutzer Rechte zugewiesen, der "
"Demo Benutzer erhält nur Benutzer Rechte. \n"
#. module: base
#: field:ir.attachment,res_id:0
@ -1921,6 +2012,7 @@ msgstr ""
#, python-format
msgid "Unknown value '%s' for boolean field '%%(field)s', assuming '%s'"
msgstr ""
"Unbekannter Wert '%s' für ein Bool'sches Feld '%%(field)s', vermutlich '%s'"
#. module: base
#: model:res.country,name:base.nl
@ -1935,7 +2027,7 @@ msgstr ""
#. module: base
#: selection:ir.translation,state:0
msgid "Translation in Progress"
msgstr ""
msgstr "Übersetzung in Arbeit"
#. module: base
#: model:ir.model,name:base.model_ir_rule
@ -1950,7 +2042,7 @@ msgstr "Tage"
#. module: base
#: model:ir.module.module,summary:base.module_fleet
msgid "Vehicle, leasing, insurances, costs"
msgstr ""
msgstr "Fahrzeuge, Leasing, Versicherungen, Kosten"
#. module: base
#: view:ir.model.access:0

File diff suppressed because it is too large Load Diff

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: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-11-24 11:07+0000\n"
"Last-Translator: lholivier <olivier.lenoir@free.fr>\n"
"PO-Revision-Date: 2012-11-29 16:10+0000\n"
"Last-Translator: Cyril Rebreyend <cr@homeware.fr>\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: 2012-11-25 05:26+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-30 05:04+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -24,6 +24,10 @@ msgid ""
"================================================\n"
" "
msgstr ""
"\n"
"Module pour l'écriture et l'impression de chèques.\n"
"================================================\n"
" "
#. module: base
#: model:res.country,name:base.sh
@ -88,12 +92,12 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops"
msgstr ""
msgstr "Interface tactile pour boutiques"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
msgid "Indian Payroll"
msgstr ""
msgstr "Paie Indienne"
#. module: base
#: help:ir.cron,model:0
@ -123,6 +127,17 @@ msgid ""
" * Product Attributes\n"
" "
msgstr ""
"\n"
"Ce module ajoute des fabricants et des attributs sur le formulaire produit.\n"
"==========================================================\n"
"\n"
"Vous pouvez maintenant définir pour un produit:\n"
"-------------------------------------------------------------------\n"
" * un fabricant\n"
" * le nom du produit chez le fabricant\n"
" * le code produit chez le fabricant\n"
" * les attributs du produit\n"
" "
#. module: base
#: field:ir.actions.client,params:0
@ -136,11 +151,14 @@ msgid ""
"The module adds google user in res user.\n"
"========================================\n"
msgstr ""
"\n"
"Ce module ajoute les utilisateurs Google dans res.user.\n"
"========================================\n"
#. module: base
#: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee."
msgstr ""
msgstr "Cochez cette case si ce contact est un employé."
#. module: base
#: help:ir.model.fields,domain:0
@ -171,7 +189,7 @@ msgstr "Fenêtre cible"
#. module: base
#: field:ir.actions.report.xml,report_rml:0
msgid "Main Report File Path"
msgstr ""
msgstr "Chemin vers les fichier de rapport principal"
#. module: base
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
@ -192,6 +210,14 @@ msgid ""
"revenue\n"
"reports."
msgstr ""
"\n"
"Génère vos factures à partir des dépenses et des feuilles de temps.\n"
"=====================================================\n"
"\n"
"Module pour générer les factures basées sur les coûts (RH, dépenses…).\n"
"\n"
"Vous pouvez définir les listes de prix dans la comptabilité analytique et "
"fabriquer des rapports de revenus théoriques."
#. module: base
#: model:ir.module.module,description:base.module_crm
@ -269,7 +295,7 @@ msgstr "créé."
#. module: base
#: field:ir.actions.report.xml,report_xsl:0
msgid "XSL Path"
msgstr ""
msgstr "Chemin XSL"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_tr
@ -319,6 +345,8 @@ msgid ""
"The internal user that is in charge of communicating with this contact if "
"any."
msgstr ""
"L'utilisateur interne qui est en charge de la communication avec ce contact, "
"le cas échéant."
#. module: base
#: view:res.partner:0
@ -533,7 +561,7 @@ msgstr ""
#. module: base
#: field:ir.model.relation,name:0
msgid "Relation Name"
msgstr ""
msgstr "Nom de la relation"
#. module: base
#: model:res.country,name:base.tv
@ -574,7 +602,7 @@ msgstr ""
#. module: base
#: view:workflow.transition:0
msgid "Workflow Transition"
msgstr ""
msgstr "Transition du flux de travail"
#. module: base
#: model:res.country,name:base.gf
@ -584,7 +612,7 @@ msgstr "Guyane Française"
#. module: base
#: model:ir.module.module,summary:base.module_hr
msgid "Jobs, Departments, Employees Details"
msgstr ""
msgstr "Postes, Départements, Détail des Employés"
#. module: base
#: model:ir.module.module,description:base.module_analytic
@ -697,7 +725,7 @@ msgstr "Colombie"
#. module: base
#: model:res.partner.title,name:base.res_partner_title_mister
msgid "Mister"
msgstr ""
msgstr "Monsieur"
#. module: base
#: help:res.country,code:0
@ -820,6 +848,16 @@ msgid ""
" </p>\n"
" "
msgstr ""
"<p class=\"oe_view_nocontent_create\">\n"
" Cliquez pour ajouter un contact dans votre carnet "
"d'adresses.\n"
" </p><p>\n"
" OpenERP vous aide à suivre toutes les activités avec un "
"client : \n"
" les discussions, l'historiques des opportunités, \n"
" les documents, etc.\n"
" </p>\n"
" "
#. module: base
#: model:ir.module.module,description:base.module_web_linkedin
@ -877,7 +915,7 @@ msgstr "Roumanie_Comptabilité"
#. module: base
#: model:ir.model,name:base.model_res_config_settings
msgid "res.config.settings"
msgstr ""
msgstr "res.config.settings"
#. module: base
#: help:res.partner,image_small:0
@ -886,6 +924,9 @@ msgid ""
"image, with aspect ratio preserved. Use this field anywhere a small image is "
"required."
msgstr ""
"La miniature de l'image de ce contact. Elle est automatiquement retaillée en "
"64x64px tout en conservant le ratio. Utilisez ce champ à chaque fois qu'une "
"miniature est nécessaire."
#. module: base
#: help:ir.actions.server,mobile:0
@ -907,7 +948,7 @@ msgstr "Sécurité et authentification"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar
msgid "Web Calendar"
msgstr ""
msgstr "Calendrier Web"
#. module: base
#: selection:base.language.install,lang:0
@ -918,7 +959,7 @@ msgstr "Suédois / svenska"
#: field:base.language.export,name:0
#: field:ir.attachment,datas_fname:0
msgid "File Name"
msgstr ""
msgstr "Nom du fichier"
#. module: base
#: model:res.country,name:base.rs
@ -1015,7 +1056,7 @@ msgstr "Préférences de messagerie électronique"
#: code:addons/base/ir/ir_fields.py:196
#, python-format
msgid "'%s' does not seem to be a valid date for field '%%(field)s'"
msgstr ""
msgstr "'%s' n'est pas une date valide pour le champ '%%(field)s'"
#. module: base
#: view:res.partner:0
@ -1032,6 +1073,7 @@ msgstr "Zimbabwe"
msgid ""
"Type of the constraint: `f` for a foreign key, `u` for other constraints."
msgstr ""
"Type de la contrainte : `f` pour une clé étrangère, `u` pour les autres."
#. module: base
#: view:ir.actions.report.xml:0
@ -1120,7 +1162,7 @@ msgstr "Autre licence approuvée par l'OSI"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_gantt
msgid "Web Gantt"
msgstr ""
msgstr "Diagramme de Gantt (Web)"
#. module: base
#: model:ir.actions.act_window,name:base.act_menu_create
@ -1147,7 +1189,7 @@ msgstr "Utilisateurs Google"
#. module: base
#: model:ir.module.module,shortdesc:base.module_fleet
msgid "Fleet Management"
msgstr ""
msgstr "Gestion de flotte"
#. module: base
#: help:ir.server.object.lines,value:0
@ -1203,7 +1245,7 @@ msgstr ""
#: code:addons/base/ir/ir_model.py:724
#, python-format
msgid "Document model"
msgstr ""
msgstr "Modèle de document"
#. module: base
#: view:res.lang:0
@ -8259,7 +8301,7 @@ msgstr "base.update.translations"
#: code:addons/base/res/res_users.py:470
#, python-format
msgid "Warning!"
msgstr "Avertissement !"
msgstr "Attention !"
#. module: base
#: field:res.partner.category,parent_id:0

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-11-23 10:47+0000\n"
"PO-Revision-Date: 2012-11-28 12:43+0000\n"
"Last-Translator: Juhász Krisztián <Unknown>\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: 2012-11-25 05:28+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-29 05:12+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -69,7 +69,7 @@ msgstr "Nincs rés"
#. module: base
#: selection:base.language.install,lang:0
msgid "Hungarian / Magyar"
msgstr "Magyar"
msgstr "Magyar / Hungarian"
#. module: base
#: selection:base.language.install,lang:0
@ -330,7 +330,7 @@ msgstr "Modulok Száma"
#. module: base
#: help:multi_company.default,company_dest_id:0
msgid "Company to store the current record"
msgstr "Vállalat a jelenlegi rekord tárolására"
msgstr "Cég a jelenlegi rekord tárolására"
#. module: base
#: field:res.partner.bank.type.field,size:0
@ -716,7 +716,7 @@ msgstr "Lefordítatlan"
#. module: base
#: view:ir.mail_server:0
msgid "Outgoing Mail Server"
msgstr ""
msgstr "Kimenő Mail szerver"
#. module: base
#: help:ir.actions.act_window,context:0
@ -851,7 +851,7 @@ msgstr "Eritrea"
#. module: base
#: sql_constraint:res.company:0
msgid "The company name must be unique !"
msgstr "A válláalkozás nevének egyedinek kell lennie"
msgstr "A cég nevének egyedinek kell lennie"
#. module: base
#: model:ir.ui.menu,name:base.menu_base_action_rule_admin
@ -895,7 +895,7 @@ msgstr "Biztonság és Hitelesítés"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar
msgid "Web Calendar"
msgstr ""
msgstr "Web Naptár"
#. module: base
#: selection:base.language.install,lang:0
@ -906,7 +906,7 @@ msgstr "Svéd"
#: field:base.language.export,name:0
#: field:ir.attachment,datas_fname:0
msgid "File Name"
msgstr ""
msgstr "Fájl Név"
#. module: base
#: model:res.country,name:base.rs
@ -1098,7 +1098,7 @@ msgstr "Egyéb OSI Által Engedélyezett Licensz"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_gantt
msgid "Web Gantt"
msgstr ""
msgstr "Web Gantt"
#. module: base
#: model:ir.actions.act_window,name:base.act_menu_create
@ -1125,7 +1125,7 @@ msgstr "Google felhasználók"
#. module: base
#: model:ir.module.module,shortdesc:base.module_fleet
msgid "Fleet Management"
msgstr ""
msgstr "Flotta Kezelő"
#. module: base
#: help:ir.server.object.lines,value:0
@ -1247,7 +1247,7 @@ msgstr "Érvénytelen XML a nézet felépítéshez!"
#. module: base
#: view:res.partner:0
msgid "Tel:"
msgstr ""
msgstr "Tel:"
#. module: base
#: model:res.country,name:base.ky
@ -1552,10 +1552,10 @@ msgid ""
"use the accounting application of OpenERP, journals and accounts will be "
"created automatically based on these data."
msgstr ""
"A vállalata bank számláinak beállítása és a jelentés lábjegyzetben "
"megjelenítani kívánt számla kiválasztása. A bankszámokat újrarendezheti a "
"lista nézetből. Ha használja az OpenERP könyvelését akkor naplók és "
"folyószámlák lesznek létrehozva automatikussan ezekből az adatokból."
"Állítsa be a cége bankszámláit és válassza ki azokat, melyeket riport "
"lábjegyzetben megjeleníteni kíván. A bankszámokat újrarendezheti a lista "
"nézetből. Ha használja az OpenERP könyvelését akkor naplók és folyószámlák "
"ezekből az adatokból automatikussan létre lesznek hozva."
#. module: base
#: report:ir.module.reference:0
@ -2475,9 +2475,9 @@ msgid ""
"order in Object, and you can have loop on the sales order line. Expression = "
"`object.order_line`."
msgstr ""
"Adja meg a mezőt/kifejezést, ami visszaadja a listát. Pl. válassza ki az "
"értékesítési megbízást az Objektumban, és a ciklus lehet az értékesítési "
"megbízási soron. Kifejezés= 'object.orde_line'."
"Adja meg a mezőt/kifejezést, ami visszaadja a listát. Pl. válassza ki a "
"vevői rendelés az Objektumban, és a ciklus lehet a vevői rendelés soron. "
"Kifejezés= 'object.orde_line'."
#. module: base
#: field:ir.mail_server,smtp_debug:0
@ -2578,7 +2578,7 @@ msgstr ""
#. module: base
#: field:res.company,rml_header1:0
msgid "Company Slogan"
msgstr ""
msgstr "Cég Szlogen"
#. module: base
#: model:res.country,name:base.bb
@ -2643,12 +2643,11 @@ msgid ""
" "
msgstr ""
"\n"
"Elemzések osztályozásának és vevői rendeléseknek az alap rendszerező "
"modulja.\n"
"Gyűjtő osztályozásának és vevői rendeléseknek az alap rendszerező modulja.\n"
"=================================================================\n"
"\n"
"Ezzel a modullal elemzési számlákat lehet hozzárendelni a vevői "
"megrendelésekhez.\n"
"Ezzel a modullal gyüjtő számlákat lehet hozzárendelni a vevői "
"rendelésekhez.\n"
" "
#. module: base
@ -2765,7 +2764,7 @@ msgstr "Rekordazonosító ID"
#. module: base
#: view:ir.filters:0
msgid "My Filters"
msgstr ""
msgstr "Szűrőim"
#. module: base
#: field:ir.actions.server,email:0
@ -2970,7 +2969,7 @@ msgstr "Örökölt"
#: code:addons/base/ir/ir_fields.py:147
#, python-format
msgid "yes"
msgstr ""
msgstr "igen"
#. module: base
#: field:ir.model.fields,serialization_field_id:0
@ -3061,7 +3060,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_linkedin
msgid "LinkedIn Integration"
msgstr ""
msgstr "LinkedIn Integráció"
#. module: base
#: code:addons/orm.py:2012
@ -3102,7 +3101,7 @@ msgstr "Ismétlési műveletek"
#. module: base
#: help:multi_company.default,company_id:0
msgid "Company where the user is connected"
msgstr "A vállalat, ahová a felhasználó kapcsolódik"
msgstr "A Cég, melyhez a felhasználó kapcsolódik"
#. module: base
#: model:res.groups,comment:base.group_sale_manager
@ -3447,7 +3446,7 @@ msgstr "Függőségek"
#. module: base
#: field:multi_company.default,company_id:0
msgid "Main Company"
msgstr "Fő vállalat"
msgstr "Fő Cég"
#. module: base
#: field:ir.ui.menu,web_icon_hover:0
@ -3916,7 +3915,7 @@ msgstr ""
#. module: base
#: field:res.company,name:0
msgid "Company Name"
msgstr "Vállalat neve"
msgstr "Cég neve"
#. module: base
#: code:addons/orm.py:2796
@ -4042,7 +4041,7 @@ msgstr ""
#. module: base
#: model:res.country,name:base.sk
msgid "Slovakia"
msgstr ""
msgstr "Szlovákia"
#. module: base
#: model:res.country,name:base.nr
@ -4203,7 +4202,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_crm
msgid "Leads, Opportunities, Phone Calls"
msgstr ""
msgstr "Érdeklődők, Lehetőségek, Telefonhívások"
#. module: base
#: view:res.lang:0
@ -4213,7 +4212,7 @@ msgstr "6. %d, %m ==> 05, 12"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_it
msgid "Italy - Accounting"
msgstr ""
msgstr "Olasz - Könyvelés"
#. module: base
#: field:ir.actions.act_url,help:0
@ -4305,7 +4304,7 @@ msgstr ""
#: model:ir.ui.menu,name:base.menu_partner_form
#: view:res.partner:0
msgid "Customers"
msgstr "Vásárlók"
msgstr "Vevők"
#. module: base
#: model:res.country,name:base.au
@ -4349,7 +4348,7 @@ msgstr "res.config"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_pl
msgid "Poland - Accounting"
msgstr ""
msgstr "Lengyel - Könyvelés"
#. module: base
#: view:ir.cron:0
@ -4440,7 +4439,7 @@ msgstr ""
#. module: base
#: field:res.partner,parent_id:0
msgid "Related Company"
msgstr ""
msgstr "Kapcsolt Cég"
#. module: base
#: help:ir.actions.act_url,help:0
@ -4481,7 +4480,7 @@ msgstr "Objektum Indítása"
#. module: base
#: sql_constraint:ir.sequence.type:0
msgid "`code` must be unique."
msgstr ""
msgstr "'kód'-nak egyedinek kell lennie."
#. module: base
#: model:ir.module.module,shortdesc:base.module_knowledge
@ -4563,7 +4562,7 @@ msgstr "Sorszám típus"
#. module: base
#: view:base.language.export:0
msgid "Unicode/UTF-8"
msgstr ""
msgstr "Unicode/UTF-8"
#. module: base
#: selection:base.language.install,lang:0
@ -4575,12 +4574,12 @@ msgstr "Hindi / हिंदी"
#: model:ir.actions.act_window,name:base.action_view_base_language_install
#: model:ir.ui.menu,name:base.menu_view_base_language_install
msgid "Load a Translation"
msgstr ""
msgstr "Fordítás Betöltése"
#. module: base
#: field:ir.module.module,latest_version:0
msgid "Installed Version"
msgstr ""
msgstr "Telepített Verzió"
#. module: base
#: field:ir.module.module,license:0
@ -4728,7 +4727,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_ch
msgid "Switzerland - Accounting"
msgstr ""
msgstr "Svájc - Könyvelés"
#. module: base
#: field:res.bank,zip:0
@ -4809,7 +4808,7 @@ msgstr "Szabályok"
#. module: base
#: field:ir.mail_server,smtp_host:0
msgid "SMTP Server"
msgstr ""
msgstr "SMTP Szerver"
#. module: base
#: code:addons/base/module/module.py:269
@ -4909,7 +4908,7 @@ msgstr ""
#: code:addons/base/ir/ir_fields.py:328
#, python-format
msgid "name"
msgstr ""
msgstr "név"
#. module: base
#: model:ir.module.module,description:base.module_mrp_operations
@ -5032,7 +5031,7 @@ msgstr "NULL-ra állítás"
#. module: base
#: view:res.users:0
msgid "Save"
msgstr ""
msgstr "Mentés"
#. module: base
#: field:ir.actions.report.xml,report_xml:0
@ -5237,7 +5236,7 @@ msgstr ""
#: model:ir.module.category,name:base.module_category_localization
#: model:ir.ui.menu,name:base.menu_localisation
msgid "Localization"
msgstr ""
msgstr "Lokalizáció"
#. module: base
#: model:ir.module.module,description:base.module_web_api
@ -5379,7 +5378,7 @@ msgstr ""
#: view:ir.filters:0
#: field:ir.filters,name:0
msgid "Filter Name"
msgstr ""
msgstr "Szűrő Neve"
#. module: base
#: view:ir.attachment:0
@ -5391,7 +5390,7 @@ msgstr "Előzmények"
#. module: base
#: model:res.country,name:base.im
msgid "Isle of Man"
msgstr ""
msgstr "Man Sziget"
#. module: base
#: help:ir.actions.client,res_model:0
@ -5554,7 +5553,7 @@ msgstr ""
#. module: base
#: model:res.groups,name:base.group_sale_salesman_all_leads
msgid "See all Leads"
msgstr ""
msgstr "Minden Érdeklődőt mutat"
#. module: base
#: model:res.country,name:base.ci
@ -6642,7 +6641,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_syscohada
msgid "OHADA - Accounting"
msgstr ""
msgstr "OHADA - Könyvelés"
#. module: base
#: help:res.bank,bic:0
@ -6652,7 +6651,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in
msgid "Indian - Accounting"
msgstr ""
msgstr "Indiai - Könyvelés"
#. module: base
#: field:res.partner,mobile:0
@ -6745,7 +6744,7 @@ msgstr ""
#. module: base
#: field:res.users,id:0
msgid "ID"
msgstr ""
msgstr "ID"
#. module: base
#: field:ir.cron,doall:0
@ -6767,7 +6766,7 @@ msgstr "Objektum feltérképezése"
#: field:ir.module.category,xml_id:0
#: field:ir.ui.view,xml_id:0
msgid "External ID"
msgstr ""
msgstr "Külső ID"
#. module: base
#: help:res.currency.rate,rate:0
@ -6809,7 +6808,7 @@ msgstr "Partner cégformák"
#: code:addons/base/ir/ir_fields.py:228
#, python-format
msgid "Use the format '%s'"
msgstr ""
msgstr "Használja a '%s' formátumot"
#. module: base
#: help:ir.actions.act_window,auto_refresh:0
@ -7016,7 +7015,7 @@ msgstr "Szomália"
#. module: base
#: model:res.partner.title,shortcut:base.res_partner_title_doctor
msgid "Dr."
msgstr ""
msgstr "Dr."
#. module: base
#: model:res.groups,name:base.group_user
@ -7222,12 +7221,12 @@ msgstr "Több dokumentumon"
#: view:res.users:0
#: view:wizard.ir.model.menu.create:0
msgid "or"
msgstr ""
msgstr "vagy"
#. module: base
#: model:ir.module.module,shortdesc:base.module_account_accountant
msgid "Accounting and Finance"
msgstr ""
msgstr "Könyvelés és Pénzügy"
#. module: base
#: view:ir.module.module:0
@ -7281,7 +7280,7 @@ msgstr "Kérem nevezzen meg egy végrehajtandó műveletet !"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_ec
msgid "Ecuador - Accounting"
msgstr ""
msgstr "Ecuador - Könyvelés"
#. module: base
#: field:res.partner.category,name:0
@ -7296,7 +7295,7 @@ msgstr "Északi-Mariana-szigetek"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_hn
msgid "Honduras - Accounting"
msgstr ""
msgstr "Honduras - Könyvelés"
#. module: base
#: model:ir.module.module,shortdesc:base.module_report_intrastat
@ -7365,12 +7364,12 @@ msgstr ""
#. module: base
#: model:res.partner.category,name:base.res_partner_category_14
msgid "Manufacturer"
msgstr ""
msgstr "Gyártó"
#. module: base
#: help:res.users,company_id:0
msgid "The company this user is currently working for."
msgstr "A vállalat,amelynek a jelenlegi felhasznál dolgozik."
msgstr "A cég,amelynek a jelenlegi felhasználó dolgozik."
#. module: base
#: model:ir.model,name:base.model_wizard_ir_model_menu_create
@ -7546,7 +7545,7 @@ msgstr ""
#: model:ir.module.category,name:base.module_category_localization_payroll
#: model:ir.module.module,shortdesc:base.module_hr_payroll
msgid "Payroll"
msgstr ""
msgstr "Bérszámfejtés"
#. module: base
#: model:ir.actions.act_window,help:base.action_country_state
@ -8140,7 +8139,7 @@ msgstr "Kapcsolattartó"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_at
msgid "Austria - Accounting"
msgstr ""
msgstr "Osztrák - Könyvelés"
#. module: base
#: model:ir.model,name:base.model_ir_ui_menu
@ -8198,7 +8197,7 @@ msgstr "ir.server.object.lines"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_be
msgid "Belgium - Accounting"
msgstr ""
msgstr "Belga - Könyvelés"
#. module: base
#: view:ir.model.access:0
@ -8546,10 +8545,9 @@ msgid ""
"(You can click on Cancel in the User Preferences now)"
msgstr ""
"Kérem vegye figyelembe, hogy a jelenleg megjelenített dokumentumok nem "
"lesznek aktuálisak miután átváltott egy másik vállalatra. Ha van mentetlen "
"változtatása, kérem mentsen és zárjon be minden űrlapot, mielőtt átvált egy "
"másik vállalatra. (Most rákattinthat a Mégse gombra a Felhasználói "
"beállításokban)"
"lesznek aktuálisak miután átváltott egy másik cégre. Ha nem mentette el a "
"változásokat, kérem mentsen és zárjon be minden űrlapot, mielőtt átvált egy "
"másik cégre. (Most rákattinthat a Mégse gombra a Felhasználói beállításokban)"
#. module: base
#: code:addons/orm.py:2806
@ -8712,7 +8710,7 @@ msgstr ""
#. module: base
#: field:multi_company.default,company_dest_id:0
msgid "Default Company"
msgstr "Alapértelmezett Vállalat"
msgstr "Alapértelmezett Cég"
#. module: base
#: selection:base.language.install,lang:0
@ -9937,7 +9935,7 @@ msgstr "Létrehozás dátuma"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_cn
msgid "中国会计科目表 - Accounting"
msgstr ""
msgstr "Kinai - Könyvelés"
#. module: base
#: sql_constraint:ir.model.constraint:0
@ -10594,7 +10592,7 @@ msgstr "Vagy"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_br
msgid "Brazilian - Accounting"
msgstr ""
msgstr "Brazil - Könyvelés"
#. module: base
#: model:res.country,name:base.pk
@ -11650,7 +11648,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_uk
msgid "UK - Accounting"
msgstr ""
msgstr "Egyesült Királyság - Könyvelés"
#. module: base
#: model:res.partner.title,shortcut:base.res_partner_title_madam
@ -11702,7 +11700,7 @@ msgstr "Csak olvasható"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_gt
msgid "Guatemala - Accounting"
msgstr ""
msgstr "Guatemala - Könyvelés"
#. module: base
#: help:ir.cron,args:0
@ -11832,7 +11830,7 @@ msgstr ""
#. module: base
#: model:res.partner.title,name:base.res_partner_title_prof
msgid "Professor"
msgstr ""
msgstr "Professzor"
#. module: base
#: model:res.country,name:base.hm
@ -11943,7 +11941,7 @@ msgstr "Bináris"
#. module: base
#: model:res.partner.title,name:base.res_partner_title_doctor
msgid "Doctor"
msgstr ""
msgstr "Doktor"
#. module: base
#: model:ir.module.module,description:base.module_mrp_repair
@ -12162,7 +12160,7 @@ msgstr ""
#. module: base
#: model:res.partner.title,shortcut:base.res_partner_title_mister
msgid "Mr."
msgstr ""
msgstr "Úr"
#. module: base
#: model:res.country,name:base.mv
@ -12401,7 +12399,7 @@ msgstr "Görögország"
#. module: base
#: view:res.config:0
msgid "Apply"
msgstr ""
msgstr "Alkalmaz"
#. module: base
#: field:res.request,trigger_date:0
@ -12427,7 +12425,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_gr
msgid "Greece - Accounting"
msgstr ""
msgstr "Görög - Könyvelés"
#. module: base
#: sql_constraint:res.country:0
@ -12624,7 +12622,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_th
msgid "Thailand - Accounting"
msgstr ""
msgstr "Thaiföld - Könyvelés"
#. module: base
#: view:res.lang:0
@ -12649,7 +12647,7 @@ msgstr "Ciprus"
#. module: base
#: field:res.users,new_password:0
msgid "Set Password"
msgstr ""
msgstr "Jelszó beállítás"
#. module: base
#: field:ir.actions.server,subject:0
@ -12988,7 +12986,7 @@ msgstr "Fordítás szinkronizálása"
#: view:res.partner.bank:0
#: field:res.partner.bank,bank_name:0
msgid "Bank Name"
msgstr ""
msgstr "Bank Neve"
#. module: base
#: model:res.country,name:base.ki
@ -13133,7 +13131,7 @@ msgstr "Információ"
#: code:addons/base/ir/ir_fields.py:147
#, python-format
msgid "false"
msgstr ""
msgstr "hamis"
#. module: base
#: model:ir.module.module,description:base.module_account_analytic_analysis
@ -13287,7 +13285,7 @@ msgstr "Diagram"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_es
msgid "Spanish - Accounting (PGCE 2008)"
msgstr ""
msgstr "Spanyol - Könyvelés (PGCE 2008)"
#. module: base
#: constraint:res.partner:0
@ -13443,7 +13441,7 @@ msgstr "Export"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_ma
msgid "Maroc - Accounting"
msgstr ""
msgstr "Marokkó - Könyvelés"
#. module: base
#: field:res.bank,bic:0
@ -13567,7 +13565,7 @@ msgstr ""
#. module: base
#: view:res.partner:0
msgid "Supplier Partners"
msgstr ""
msgstr "Szállítói Partnerek"
#. module: base
#: view:res.config.installer:0
@ -13582,7 +13580,7 @@ msgstr ""
#. module: base
#: view:res.partner:0
msgid "Customer Partners"
msgstr ""
msgstr "Vevői Partnerek"
#. module: base
#: sql_constraint:res.users:0
@ -13645,7 +13643,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_crm
msgid "CRM"
msgstr ""
msgstr "CRM"
#. module: base
#: model:ir.module.module,description:base.module_base_report_designer
@ -13724,7 +13722,7 @@ msgstr ""
#: code:addons/base/ir/ir_fields.py:147
#, python-format
msgid "no"
msgstr ""
msgstr "nem"
#. module: base
#: field:ir.actions.server,trigger_obj_id:0
@ -13884,7 +13882,7 @@ msgstr "Luxemburg"
#. module: base
#: model:ir.module.module,summary:base.module_base_calendar
msgid "Personal & Shared Calendar"
msgstr ""
msgstr "Személyes és Megosztott Naptár"
#. module: base
#: selection:res.request,priority:0
@ -14279,7 +14277,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_de
msgid "Deutschland - Accounting"
msgstr ""
msgstr "Németország - Könyvelés"
#. module: base
#: view:ir.sequence:0
@ -14559,7 +14557,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_fr
msgid "France - Accounting"
msgstr ""
msgstr "Franciaország - Könyvelés"
#. module: base
#: view:ir.actions.todo:0
@ -14846,7 +14844,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_nl
msgid "Netherlands - Accounting"
msgstr ""
msgstr "Hollandia - Könyvelés"
#. module: base
#: model:res.country,name:base.gs
@ -14952,7 +14950,7 @@ msgstr "ir.actions.server"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_ca
msgid "Canada - Accounting"
msgstr ""
msgstr "Kanada - Könyvelés"
#. module: base
#: model:ir.actions.act_window,name:base.act_ir_actions_todo_form
@ -14993,7 +14991,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_ve
msgid "Venezuela - Accounting"
msgstr ""
msgstr "Venezuela - Könyvelés"
#. module: base
#: model:res.country,name:base.cl
@ -15275,14 +15273,14 @@ msgstr "Partnerek: "
#. module: base
#: view:res.partner:0
msgid "Is a Company?"
msgstr ""
msgstr "Ez egy Cég?"
#. module: base
#: code:addons/base/res/res_company.py:159
#: field:res.partner.bank,name:0
#, python-format
msgid "Bank Account"
msgstr ""
msgstr "Bankszámla"
#. module: base
#: model:res.country,name:base.kp

View File

@ -7,15 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-08-20 15:28+0000\n"
"Last-Translator: Leonardo Pistone - Agile BG - Domsense "
"<leonardo.pistone@domsense.com>\n"
"PO-Revision-Date: 2012-11-28 20:04+0000\n"
"Last-Translator: Massimiliano Casa <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 05:28+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-29 05:12+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -25,6 +24,10 @@ msgid ""
"================================================\n"
" "
msgstr ""
"\n"
"Modulo per la compilazione e la stampa di assegni.\n"
"================================================\n"
" "
#. module: base
#: model:res.country,name:base.sh
@ -60,7 +63,7 @@ msgstr "Visualizza Architettura"
#. module: base
#: model:ir.module.module,summary:base.module_sale_stock
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
msgstr ""
msgstr "Preventivi, Ordini di vendita, Spedizioni & Controllo Fatturazione"
#. module: base
#: selection:ir.sequence,implementation:0
@ -70,7 +73,7 @@ msgstr "Nessun gap"
#. module: base
#: selection:base.language.install,lang:0
msgid "Hungarian / Magyar"
msgstr "Ungherese / Magiaro"
msgstr "Hungarian / Magyar"
#. module: base
#: selection:base.language.install,lang:0
@ -89,12 +92,12 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops"
msgstr ""
msgstr "Interfaccia Touchscreen per Negozzi"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
msgid "Indian Payroll"
msgstr ""
msgstr "Gestione Paghe Indiana"
#. module: base
#: help:ir.cron,model:0
@ -128,7 +131,7 @@ msgstr ""
#. module: base
#: field:ir.actions.client,params:0
msgid "Supplementary arguments"
msgstr ""
msgstr "Argomenti supplementari"
#. module: base
#: model:ir.module.module,description:base.module_google_base_account
@ -141,7 +144,7 @@ msgstr ""
#. module: base
#: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee."
msgstr ""
msgstr "Seleziona questo box se il contatto è un Impiegato."
#. module: base
#: help:ir.model.fields,domain:0
@ -172,7 +175,7 @@ msgstr "Finestra di Destinazione"
#. module: base
#: field:ir.actions.report.xml,report_rml:0
msgid "Main Report File Path"
msgstr ""
msgstr "Percorso Principale del Report"
#. module: base
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
@ -270,7 +273,7 @@ msgstr "creato."
#. module: base
#: field:ir.actions.report.xml,report_xsl:0
msgid "XSL Path"
msgstr ""
msgstr "Percorso XSL"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_tr
@ -296,7 +299,7 @@ msgstr "Inuktitut / ᐃᓄᒃᑎᑐᑦ"
#. module: base
#: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies"
msgstr ""
msgstr "Multi Valuta"
#. module: base
#: model:ir.module.module,description:base.module_l10n_cl
@ -354,6 +357,15 @@ msgid ""
" * Commitment Date\n"
" * Effective Date\n"
msgstr ""
"\n"
"Aggiungere informazioni addizionali all'ordine di vendita.\n"
"====================================================\n"
"\n"
"Puoi aggiungere le seguenti date aggiuntive all'ordine di vendita:\n"
"----------------------------------------------------------\n"
" * Data della richiesta\n"
" * Data dell'ordine\n"
" * Data effettiva\n"
#. module: base
#: help:ir.actions.act_window,res_id:0

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: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-08-20 15:28+0000\n"
"Last-Translator: Bayuka <bayuka1988@gmail.com>\n"
"PO-Revision-Date: 2012-11-28 13:28+0000\n"
"Last-Translator: gobi <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 05:29+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-29 05:13+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -24,6 +24,10 @@ msgid ""
"================================================\n"
" "
msgstr ""
"\n"
"Чек бичих болон Чек хэвлэх модуль.\n"
"================================================\n"
" "
#. module: base
#: model:res.country,name:base.sh
@ -59,7 +63,7 @@ msgstr "Дэлгэцийн архитектур"
#. module: base
#: model:ir.module.module,summary:base.module_sale_stock
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
msgstr ""
msgstr "Үнийн санал, Борлуулалтын захиалга, Хүргэлт & Нэхэмжлэлийн хяналт"
#. module: base
#: selection:ir.sequence,implementation:0
@ -88,12 +92,12 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops"
msgstr ""
msgstr "Дэлгүүрт зориулагдсан маажих дэлгэц"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
msgid "Indian Payroll"
msgstr ""
msgstr "Энэтхэг Цалин"
#. module: base
#: help:ir.cron,model:0
@ -121,6 +125,17 @@ msgid ""
" * Product Attributes\n"
" "
msgstr ""
"\n"
"Барааны маягт дээр үйлдвэрлэгч болон үзүүлэлтүүд нэмдэг модуль.\n"
"====================================================================\n"
"\n"
"Бараанд дараах зүйлсийг тодорхойлох боломжтой болно:\n"
"-----------------------------------------------\n"
" * Үйлдвэрлэгч\n"
" * Барааны Үйлдвэрлэгчийн өгсөн нэр\n"
" * Барааны Үйлдвэрлэгчийн өгсөн код\n"
" * Барааны үзүүлэлтүүд\n"
" "
#. module: base
#: field:ir.actions.client,params:0
@ -134,11 +149,14 @@ msgid ""
"The module adds google user in res user.\n"
"========================================\n"
msgstr ""
"\n"
"Энэ модуль нь res_user-т google хэрэглэгчийг нэмдэг.\n"
"========================================\n"
#. module: base
#: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee."
msgstr ""
msgstr "Хэрэв холбогч нь ажилтан бол үүнийг тэмдэглэ."
#. module: base
#: help:ir.model.fields,domain:0
@ -168,7 +186,7 @@ msgstr "Ашиглах цонх"
#. module: base
#: field:ir.actions.report.xml,report_rml:0
msgid "Main Report File Path"
msgstr ""
msgstr "Тайлангийн Үндсэн Файлын Зам"
#. module: base
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
@ -189,6 +207,14 @@ msgid ""
"revenue\n"
"reports."
msgstr ""
"\n"
"Зардал, Цагийн хуудсын бичилтээс нэхэмжлэлийг үүсгэдэг.\n"
"========================================================\n"
"\n"
"Өртөг (хүний нөөц, зардал, ...) дээр суурилан нэхэмжлэл үүсгэдэг модуль .\n"
"\n"
"Шинжилгээний данс дээр зарах үнийн хүснэгт үүсгэж орох ашгийн онолийн "
"тайланг үүсгэж болно."
#. module: base
#: model:ir.module.module,description:base.module_crm
@ -223,6 +249,33 @@ msgid ""
"* Planned Revenue by Stage and User (graph)\n"
"* Opportunities by Stage (graph)\n"
msgstr ""
"\n"
"OpenERP-н Захиалагчийн Харилцааны Менежмент (CRM)-н ерөнхий модуль\n"
"=====================================================\n"
"\n"
"Энэ модуль нь хүмүүсийн бүлэгүүд сэжим, боломж, уулзалт, утасны дуудлагыг "
"ухаалаг бөгөөд оновчтой зохион байгуулах боломжийг олгодог.\n"
"\n"
"Түүнчлэн харилцах, олж таних, эрэмбэлэх, оноох, шийдэх, мэдэгдэх гэх мэт "
"түлхүүр даалгавруудыг удирддаг.\n"
"\n"
"OpenERP нь бүх хэрэгүүд хэрэглэгч, захиалагч, нийлүүлэгчээр амжилттай "
"хөтлөгдөх баталгааг хангадаг. Автомат сануулга илгээх, хүсэлтийг дээд шат "
"рүү хүргэх, байгууллагын дүрэм дээр тулгуурласан маш олон төрлийн "
"үйлдлүүдийг гүйцэтгэх боломжтой. \n"
"\n"
"Системийн гайхалтай тал нь хэрэглэгчид ямар нэг нарийвчилсан ажил хийх "
"шаардлагагүй байдаг. CRM модуль нь имэйл болон OpenERP-г хооронд нь холбох "
"имэйл үүдтэй. Иймээс зөвхөн имэйл илгээх замаар сэжим үүсгэж боломж "
"олгодог.\n"
"\n"
"OpenERP нь талархлын мессеж илгээгээд имэйлийг харгалзах ажилтан руу илгээж "
"цаашид авах бүх арга хэмжээг авч зөв боловсруулалтыг хийлгэдэг.\n"
"\n"
"CRM-н хянах самбар дараах зүйлсийг агуулдаг:\n"
"-------------------------------\n"
"* Төлөвлөсөн орлого үеээр болон хэрэглэгчээр (graph)\n"
"* Боломж үеээр (график)\n"
#. module: base
#: code:addons/base/ir/ir_model.py:394
@ -266,7 +319,7 @@ msgstr "үүсгэгдсэн."
#. module: base
#: field:ir.actions.report.xml,report_xsl:0
msgid "XSL Path"
msgstr ""
msgstr "XSL зам"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_tr
@ -292,7 +345,7 @@ msgstr "Инуит хэл / ᐃᓄᒃᑎᑐᑦ"
#. module: base
#: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies"
msgstr ""
msgstr "Олон валютууд"
#. module: base
#: model:ir.module.module,description:base.module_l10n_cl
@ -315,7 +368,7 @@ msgstr "Борлуулалтын менежмент"
msgid ""
"The internal user that is in charge of communicating with this contact if "
"any."
msgstr ""
msgstr "Энэ холбогчтой харилцах дотоод хэрэглэгч (хэрэв байгаа бол)."
#. module: base
#: view:res.partner:0
@ -350,6 +403,15 @@ msgid ""
" * Commitment Date\n"
" * Effective Date\n"
msgstr ""
"\n"
"Борлуулалтын захиалгад огнооны нэмэлт мэдээлэл нэмдэг .\n"
"===================================================\n"
"\n"
"Борлуулалтын захиалгад дараах огноонуудыг нэмж болно:\n"
"-----------------------------------------------------------\n"
" * Хүссэн Огноо\n"
" * Амласан Огноо\n"
" * Зохистой Огноо\n"
#. module: base
#: help:ir.actions.act_window,res_id:0
@ -357,6 +419,8 @@ msgid ""
"Database ID of record to open in form view, when ``view_mode`` is set to "
"'form' only"
msgstr ""
"Форм харагдацийг нээх бичлэгийн өгөгдлийн баазын ID, зөвхөн ``view_mode`` нь "
"'form' гэж тохируулагдсан үед."
#. module: base
#: field:res.partner.address,name:0
@ -407,6 +471,13 @@ msgid ""
"document and Wiki based Hidden.\n"
" "
msgstr ""
"\n"
"Нууцлагдсан мэдлэгийн санг суулгагч.\n"
"=====================================\n"
"\n"
"Мэдлэг Програмын Тохируулагчийг ил болгож нууцлагдсан байдаг баримт болон "
"Викиг суулгах боломжтой болгодог.\n"
" "
#. module: base
#: model:ir.module.category,name:base.module_category_customer_relationship_management
@ -425,6 +496,14 @@ msgid ""
"invoices from picking, OpenERP is able to add and compute the shipping "
"line.\n"
msgstr ""
"\n"
"Борлуулалтын захиалга болон бэлтгэх баримтанд хүргэх аргыг нэмэх боломжийг "
"олгодог.\n"
"==============================================================\n"
"\n"
"Өөрийн тээвэрлэгчид болон хүргэлтийн сүлжээг үнэнд зориулан тодорхойлж "
"болно. Бэлтгэх баримтаас нэхэмжлэх үүсгэхэд OpenERP нь хүргэлтийн мөрийг "
"нэмж тооцоолж чаддаг.\n"
#. module: base
#: code:addons/base/ir/ir_filters.py:83
@ -433,6 +512,8 @@ msgid ""
"There is already a shared filter set as default for %(model)s, delete or "
"change it before setting a new default"
msgstr ""
"%(model)s-д анхны шүүлтүүр аль хэдийнээ тохируулагдсан байна, шинийг "
"тохируулахыг тулд хуучныг нь устгах буюу солино уу"
#. module: base
#: code:addons/orm.py:2639
@ -528,7 +609,7 @@ msgstr ""
#. module: base
#: field:ir.model.relation,name:0
msgid "Relation Name"
msgstr ""
msgstr "Харьцааны Нэр"
#. module: base
#: model:res.country,name:base.tv
@ -568,7 +649,7 @@ msgstr ""
#. module: base
#: view:workflow.transition:0
msgid "Workflow Transition"
msgstr ""
msgstr "Ажлын урсгалын шилжилт"
#. module: base
#: model:res.country,name:base.gf
@ -578,7 +659,7 @@ msgstr "Франц Гуана"
#. module: base
#: model:ir.module.module,summary:base.module_hr
msgid "Jobs, Departments, Employees Details"
msgstr ""
msgstr "Ажлууд, Хэлтсүүд, Ажилчдийн дэлгэрэнгүй"
#. module: base
#: model:ir.module.module,description:base.module_analytic
@ -594,6 +675,15 @@ msgid ""
"that have no counterpart in the general financial accounts.\n"
" "
msgstr ""
"\n"
"Шинжилгээний обьект тодорхойлох модуль.\n"
"===============================================\n"
"\n"
"OpenERP-д шинжилгээний дансд нь ерөнхий дансдадтай холбогддог боловч \n"
"бүрэн үл хамаарах байдаг. Иймээс ерөнхий санхүүгийн данс эсрэг тал нь болгох "
"албагүй \n"
"бөгөөд төрөл бүрийн шинжилгээний үйлдлүүдийг оруулж болно.\n"
" "
#. module: base
#: field:ir.ui.view.custom,ref_id:0
@ -617,6 +707,18 @@ msgid ""
"* Use emails to automatically confirm and send acknowledgements for any "
"event registration\n"
msgstr ""
"\n"
"Үйл явдлуудын зохион байгуулалт болон менежмент.\n"
"======================================\n"
"\n"
"Үйл явдал модуль нь үйл явдлыг оновчтой зохион байгуулж холбогдох бүх "
"даалгаврыг менеж хийдэг. \n"
"Үүнд: төлөвлөх, бүргэлийг хөтлөх, ирц гэх мэт зүйлс хамаарна.\n"
"\n"
"Түлхүүр Онцлогууд\n"
"------------\n"
"* Үйл явдлын бүртгэлийг менеж хийнэ\n"
"* Имэйл ашиглан үйл явдлын бүртгэлийн магадлагааг автоматаар илгээнэ\n"
#. module: base
#: selection:base.language.install,lang:0
@ -642,6 +744,21 @@ msgid ""
"requested it.\n"
" "
msgstr ""
"\n"
"Gengo API-н тусламжтай автомат орчуулга\n"
"----------------------------------------\n"
"\n"
"Энэ модуль нь Gengo API-г ашиглан автомат орчуулгын идэлвхгүй товлогдсон "
"үйлдлийг суулгадаг.\n"
"Идэвхжүүлэхийн тулд:\n"
"1) Gengo эрхийн тохиргоог `Тохиргоо > Компаниуд > Gengo параметрүүд`-д "
"тохируулах ёстой\n"
"2) `Тохиргоо > Програмын нэр томъёо > Gengo: Орчуулгын Гар хүсэлт` харилцах "
"цонхыг дуудаж тохиргоог хийнэ.\n"
"\n"
"Энэ харилцах цонх нь CRON даалгавр болон Товлогчийг идэвхжүүлдэг бөгөөд таны "
"хүссэн бүх нэр томъёог Gengo сервисээр автомат орчуулж эхэлдэг.\n"
" "
#. module: base
#: help:ir.actions.report.xml,attachment_use:0
@ -691,7 +808,7 @@ msgstr "Колумб"
#. module: base
#: model:res.partner.title,name:base.res_partner_title_mister
msgid "Mister"
msgstr ""
msgstr "Ноён"
#. module: base
#: help:res.country,code:0
@ -720,7 +837,7 @@ msgstr "Орчуулагдаагүй"
#. module: base
#: view:ir.mail_server:0
msgid "Outgoing Mail Server"
msgstr ""
msgstr "Гарах Мэйл Сервер"
#. module: base
#: help:ir.actions.act_window,context:0
@ -794,6 +911,32 @@ msgid ""
"module named account_voucher.\n"
" "
msgstr ""
"\n"
"Санхүү болон санхүүгийн менежмент\n"
"====================================\n"
"\n"
"Санхүү, НББ модулийн хамрах хүрээ:\n"
"--------------------------------------------\n"
" * Ерөнхий санхүү\n"
" * Өртөг/Шинжилгээний санхүү\n"
" * Гуравдагч этгээдийн санхүү\n"
" * Татварын менежмент\n"
" * Төсөв\n"
" * Захиалагч болон Нийлүүлэгчийн нэхэмжлэл\n"
" * Банкны хуулга\n"
" * Харилцагчаарх тулгалт\n"
"\n"
"Нягтлангуудад зориулсан хянах самбар үүсгэдэг бөгөөд агууламж нь:\n"
"--------------------------------------------------\n"
" * Захиалагчийн батлах нэхэмжлэх\n"
" * Компаний шинжилгээ\n"
" * Мөнгөн сангийн график\n"
"\n"
"Ерөнхий дэвтэр хөтөлдөг шиг боловсруулалт нь тухайлсан санхүүгийн жилд "
"тодорхойлогдсон санхүүүгийн журналуудаар хийгддэг (бичилтийн мөрүүдийн "
"шилжилт, бүлэглэлт зэрэг нь журналаар хийгддэг) \n"
"бөгөөд account_voucher гэсэн нэртэй ваучер бэлддэг модуль байдаг.\n"
" "
#. module: base
#: view:ir.model:0
@ -813,6 +956,14 @@ msgid ""
" </p>\n"
" "
msgstr ""
"<p class=\"oe_view_nocontent_create\">\n"
" Хаягийн дэвтэрт холбогчийг нэмэхийн тулд дарна уу.\n"
" </p><p>\n"
" OpenERP нь захиалагчтай холбогдох бүх харилцааг хялбархан \n"
" боломж олгодог: харилцаа, бизнес боломжуудын түүх,\n"
" баримтууд, гм.\n"
" </p>\n"
" "
#. module: base
#: model:ir.module.module,description:base.module_web_linkedin
@ -823,6 +974,11 @@ msgid ""
"This module provides the Integration of the LinkedIn with OpenERP.\n"
" "
msgstr ""
"\n"
"OpenERP Вебийн LinkedIn модуль.\n"
"============================\n"
"Энэ модуль нь OpenERP-г LinkedIn-тэй холбодог.\n"
" "
#. module: base
#: help:ir.actions.act_window,src_model:0
@ -868,7 +1024,7 @@ msgstr "Руминь - Санхүү"
#. module: base
#: model:ir.model,name:base.model_res_config_settings
msgid "res.config.settings"
msgstr ""
msgstr "res.config.settings"
#. module: base
#: help:res.partner,image_small:0
@ -877,6 +1033,9 @@ msgid ""
"image, with aspect ratio preserved. Use this field anywhere a small image is "
"required."
msgstr ""
"Холбогчийн жижиг хэмжээтэй зураг. Энэ нь автоматаар харьцаа нь хадгалагдан "
"64x64px хэмжээтэй болдог. Энэ талбарыг жижиг зураг хэрэг болсон газар бүрт "
"хэрэглэж болно."
#. module: base
#: help:ir.actions.server,mobile:0
@ -896,7 +1055,7 @@ msgstr "Нууцлал ба Эрх олголт"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar
msgid "Web Calendar"
msgstr ""
msgstr "Веб Цаглабар"
#. module: base
#: selection:base.language.install,lang:0
@ -907,7 +1066,7 @@ msgstr "Швед хэл / svenska"
#: field:base.language.export,name:0
#: field:ir.attachment,datas_fname:0
msgid "File Name"
msgstr ""
msgstr "Файлын нэр"
#. module: base
#: model:res.country,name:base.rs
@ -958,6 +1117,30 @@ msgid ""
"also possible in order to automatically create a meeting when a holiday "
"request is accepted by setting up a type of meeting in Leave Type.\n"
msgstr ""
"\n"
"Амралт, чөлөө болон амралт, чөлөөний хуваарилалтын хүсэлтүүдийг менеж хийнэ\n"
"=====================================\n"
"\n"
"Энэ програм нь компаний амралтын товыг хянадаг. Энэ модуль нь ажилчид "
"амралтаа хүсэх боломжийг олгогдог. Менежер дараад нь амралтын хүсэлтийг "
"хянаж зөвшөөрөх юмуу татгалздаг. Ийм байдлаар байгууллагыг бүхэлд нь буюу "
"хэлтсээр нь бүх амралтыг хянадаг. \n"
"\n"
"Амралт чөлөөний хэд хэдэн төрөл (өвчний, баяр ёслолын, цалинтай, ...)-г "
"тохируулж болдог бөгөөд ажилчинд эсвэл хэлтэст амралт, чөлөөг хуваарилах "
"хүсэлтийг үүсгэх замаар хуваарилж өгдөг. Ажилчин нь мөн амралт, чөлөөг шинэ "
"хуваарилалт үүсгэх байдлаар хүсч болдог. Хэрэв хүсэлт зөвшөөрөгдвөл тухайн "
"төрөлийн амралт чөлөөний хуваарилагдсан хугацаа нь нэмэгддэг.\n"
"\n"
"Амралт, чөлөөг дараах төрөл бүрийн тайлангуудын тусламжтайгаар хянах "
"боломжтой: \n"
"\n"
"* Амралт чөлөөний товчоо\n"
"* Амралт, чөлөө хэлтсээр\n"
"* Амралт, чөлөөний шинжилгээ\n"
"\n"
"Захиалагчийн харилцагчийн CRM модульд уулзалт үүсгэсэн тохиолдолд уулзалт "
"төрөлтэй чөлөө үүсч дотоод цагалбарт ижилтгэгддэг.\n"
#. module: base
#: selection:base.language.install,lang:0
@ -1003,7 +1186,7 @@ msgstr "Имэйл тохиргоо"
#: code:addons/base/ir/ir_fields.py:196
#, python-format
msgid "'%s' does not seem to be a valid date for field '%%(field)s'"
msgstr ""
msgstr "'%s' нь '%%(field)s' гэсэн огноо талбарт тохирохгүй бололтой"
#. module: base
#: view:res.partner:0
@ -1020,6 +1203,7 @@ msgstr "Зимбаб"
msgid ""
"Type of the constraint: `f` for a foreign key, `u` for other constraints."
msgstr ""
"Хязгаарлалтын төрөл: `f` нь гадаад түлхүүр, `u` нь бусад хязгаарлалт."
#. module: base
#: view:ir.actions.report.xml:0
@ -1105,7 +1289,7 @@ msgstr "Бусад батлагдсан OSI лиценз"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_gantt
msgid "Web Gantt"
msgstr ""
msgstr "Веб Гант"
#. module: base
#: model:ir.actions.act_window,name:base.act_menu_create
@ -1132,7 +1316,7 @@ msgstr "Google Хэрэглэгчид"
#. module: base
#: model:ir.module.module,shortdesc:base.module_fleet
msgid "Fleet Management"
msgstr ""
msgstr "Машин Зогсоолын Менежмент"
#. module: base
#: help:ir.server.object.lines,value:0
@ -1187,7 +1371,7 @@ msgstr ""
#: code:addons/base/ir/ir_model.py:724
#, python-format
msgid "Document model"
msgstr ""
msgstr "Баримтын модель"
#. module: base
#: view:res.lang:0
@ -1237,7 +1421,7 @@ msgstr "Улсын нэр давхцахгүй байх ёстой !"
#. module: base
#: field:ir.module.module,installed_version:0
msgid "Latest Version"
msgstr ""
msgstr "Сүүлийн Хувилбар"
#. module: base
#: code:addons/base/ir/ir_mail_server.py:213
@ -1259,7 +1443,7 @@ msgstr "Дэлгэцийн XML алдаатай!"
#. module: base
#: view:res.partner:0
msgid "Tel:"
msgstr ""
msgstr "Утас:"
#. module: base
#: model:res.country,name:base.ky
@ -1269,7 +1453,7 @@ msgstr "Кайманы арлууд"
#. module: base
#: view:ir.rule:0
msgid "Record Rule"
msgstr ""
msgstr "Бичлэгийн Дүрэм"
#. module: base
#: model:res.country,name:base.kr
@ -1312,7 +1496,7 @@ msgstr "Харагдхуйц"
#. module: base
#: model:ir.actions.client,name:base.action_client_base_menu
msgid "Open Settings Menu"
msgstr ""
msgstr "Тохиргооны Менюг Нээх"
#. module: base
#: selection:base.language.install,lang:0
@ -1612,12 +1796,12 @@ msgstr "%Y - Зуунтай хамт он."
#. module: base
#: view:res.company:0
msgid "Report Footer Configuration"
msgstr ""
msgstr "Тайлангийн Хөлний Тохиргоо"
#. module: base
#: field:ir.translation,comments:0
msgid "Translation comments"
msgstr ""
msgstr "Орчуулгын Сэтгэгдлүүд"
#. module: base
#: model:ir.module.module,description:base.module_lunch
@ -2170,7 +2354,7 @@ msgstr "Бүтэн зам"
#. module: base
#: view:base.language.export:0
msgid "The next step depends on the file format:"
msgstr ""
msgstr "Дараагийн алхам файлын форматаас хамаарна:"
#. module: base
#: model:ir.module.module,shortdesc:base.module_idea

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

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: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-08-20 15:34+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2012-11-28 08:41+0000\n"
"Last-Translator: Ahmet Altınışık <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-11-25 05:32+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-29 05:13+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -24,6 +24,10 @@ msgid ""
"================================================\n"
" "
msgstr ""
"\n"
"Çek yazımı ve basımı için modül.\n"
"================================================\n"
" "
#. module: base
#: model:res.country,name:base.sh
@ -59,7 +63,7 @@ msgstr "Görünüm Yapısı"
#. module: base
#: model:ir.module.module,summary:base.module_sale_stock
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
msgstr ""
msgstr "Teklif, Satış Siparişi, Teslimat & Faturalama Kontrolü"
#. module: base
#: selection:ir.sequence,implementation:0
@ -88,12 +92,12 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_point_of_sale
msgid "Touchscreen Interface for Shops"
msgstr ""
msgstr "Satış noktaları için dokunmatik ekran arayüzü"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
msgid "Indian Payroll"
msgstr ""
msgstr "Hindistan Bordro"
#. module: base
#: help:ir.cron,model:0
@ -134,11 +138,14 @@ msgid ""
"The module adds google user in res user.\n"
"========================================\n"
msgstr ""
"\n"
"Bu modül res user a google kullanıcıları ekler.\n"
"========================================\n"
#. module: base
#: help:res.partner,employee:0
msgid "Check this box if this contact is an Employee."
msgstr ""
msgstr "Bu kontak bir çalışan ise bu kutuyu işaretleyin"
#. module: base
#: help:ir.model.fields,domain:0
@ -166,7 +173,7 @@ msgstr "Hedef Pencere"
#. module: base
#: field:ir.actions.report.xml,report_rml:0
msgid "Main Report File Path"
msgstr ""
msgstr "Ana rapor dosya yolu"
#. module: base
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
@ -263,7 +270,7 @@ msgstr "Oluşturuldu."
#. module: base
#: field:ir.actions.report.xml,report_xsl:0
msgid "XSL Path"
msgstr ""
msgstr "XSL Yolu"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_tr
@ -289,7 +296,7 @@ msgstr "Eskimo / ᐃᓄᒃᑎᑐᑦ"
#. module: base
#: model:res.groups,name:base.group_multi_currency
msgid "Multi Currencies"
msgstr ""
msgstr "Çoklu Para birimleri"
#. module: base
#: model:ir.module.module,description:base.module_l10n_cl
@ -513,7 +520,7 @@ msgstr ""
#. module: base
#: field:ir.model.relation,name:0
msgid "Relation Name"
msgstr ""
msgstr "İlişki Adı"
#. module: base
#: model:res.country,name:base.tv
@ -553,7 +560,7 @@ msgstr ""
#. module: base
#: view:workflow.transition:0
msgid "Workflow Transition"
msgstr ""
msgstr "İşakışı Geçişi"
#. module: base
#: model:res.country,name:base.gf
@ -563,7 +570,7 @@ msgstr "Fransız Guyanası"
#. module: base
#: model:ir.module.module,summary:base.module_hr
msgid "Jobs, Departments, Employees Details"
msgstr ""
msgstr "İşler, Bölümler, Çalışan Bilgileri"
#. module: base
#: model:ir.module.module,description:base.module_analytic
@ -705,7 +712,7 @@ msgstr "Çevrilmemiş"
#. module: base
#: view:ir.mail_server:0
msgid "Outgoing Mail Server"
msgstr ""
msgstr "Giden Posta Sunucusu"
#. module: base
#: help:ir.actions.act_window,context:0
@ -808,6 +815,11 @@ msgid ""
"This module provides the Integration of the LinkedIn with OpenERP.\n"
" "
msgstr ""
"\n"
"OpenERP Web LinkedIn modülü.\n"
"============================\n"
"Bu modül OpenERP ye LinkedIn bağlantısını katar.\n"
" "
#. module: base
#: help:ir.actions.act_window,src_model:0
@ -853,7 +865,7 @@ msgstr "Romanya - Muhasebe"
#. module: base
#: model:ir.model,name:base.model_res_config_settings
msgid "res.config.settings"
msgstr ""
msgstr "res.config.settings"
#. module: base
#: help:res.partner,image_small:0
@ -862,6 +874,9 @@ msgid ""
"image, with aspect ratio preserved. Use this field anywhere a small image is "
"required."
msgstr ""
"Bu carinin küçük boylu resmi. Bu resim otomatik olarak 64x64 pixele en boy "
"oranını koruyarak küçültülür. Bu alanı küçük resim gerektiğinde "
"kullanabilirsiniz."
#. module: base
#: help:ir.actions.server,mobile:0
@ -882,7 +897,7 @@ msgstr "Güvenlik ve Kimlik Doğrulama"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_calendar
msgid "Web Calendar"
msgstr ""
msgstr "Web Takvimi"
#. module: base
#: selection:base.language.install,lang:0
@ -893,7 +908,7 @@ msgstr "İsveçce / Svenska"
#: field:base.language.export,name:0
#: field:ir.attachment,datas_fname:0
msgid "File Name"
msgstr ""
msgstr "Dosya Adı"
#. module: base
#: model:res.country,name:base.rs
@ -1085,7 +1100,7 @@ msgstr "Diğer OSI onaylı lisans"
#. module: base
#: model:ir.module.module,shortdesc:base.module_web_gantt
msgid "Web Gantt"
msgstr ""
msgstr "Web Gantt"
#. module: base
#: model:ir.actions.act_window,name:base.act_menu_create
@ -1112,7 +1127,7 @@ msgstr "Google Kullanıcıları"
#. module: base
#: model:ir.module.module,shortdesc:base.module_fleet
msgid "Fleet Management"
msgstr ""
msgstr "Filo Yönetimi"
#. module: base
#: help:ir.server.object.lines,value:0
@ -1132,7 +1147,7 @@ msgstr "Andorra"
#. module: base
#: field:ir.rule,perm_read:0
msgid "Apply for Read"
msgstr ""
msgstr "Okunma için Başvur"
#. module: base
#: model:res.country,name:base.mn
@ -1161,7 +1176,7 @@ msgstr ""
#: code:addons/base/ir/ir_model.py:724
#, python-format
msgid "Document model"
msgstr ""
msgstr "Döküman Modeli"
#. module: base
#: view:res.lang:0
@ -1211,7 +1226,7 @@ msgstr "Ülke adı tekil olmalı !"
#. module: base
#: field:ir.module.module,installed_version:0
msgid "Latest Version"
msgstr ""
msgstr "En son Sürüm"
#. module: base
#: code:addons/base/ir/ir_mail_server.py:213
@ -1233,7 +1248,7 @@ msgstr "Görüntüleme mimarisi için Geçersiz XML"
#. module: base
#: view:res.partner:0
msgid "Tel:"
msgstr ""
msgstr "Tel:"
#. module: base
#: model:res.country,name:base.ky
@ -1243,7 +1258,7 @@ msgstr "Cayman Adaları"
#. module: base
#: view:ir.rule:0
msgid "Record Rule"
msgstr ""
msgstr "Kayıt Kuralı"
#. module: base
#: model:res.country,name:base.kr
@ -1271,7 +1286,7 @@ msgstr "Destekleyenler"
#. module: base
#: field:ir.rule,perm_unlink:0
msgid "Apply for Delete"
msgstr ""
msgstr "Silinme için başvur"
#. module: base
#: selection:ir.property,type:0
@ -1286,7 +1301,7 @@ msgstr "Görünür"
#. module: base
#: model:ir.actions.client,name:base.action_client_base_menu
msgid "Open Settings Menu"
msgstr ""
msgstr "Ayarlar Menüsünü Aç"
#. module: base
#: selection:base.language.install,lang:0
@ -1409,7 +1424,7 @@ msgstr "Haiti"
#. module: base
#: model:ir.module.module,shortdesc:base.module_l10n_fr_hr_payroll
msgid "French Payroll"
msgstr ""
msgstr "Fransa Bodro"
#. module: base
#: view:ir.ui.view:0
@ -1557,7 +1572,7 @@ msgstr ""
#. module: base
#: model:res.country,name:base.mf
msgid "Saint Martin (French part)"
msgstr ""
msgstr "Sen Martin (Fransız bölümü)"
#. module: base
#: model:ir.model,name:base.model_ir_exports
@ -1574,7 +1589,7 @@ msgstr "\"%s\" kodu ile tanımlı dil yok"
#: model:ir.module.category,name:base.module_category_social_network
#: model:ir.module.module,shortdesc:base.module_mail
msgid "Social Network"
msgstr ""
msgstr "Sosyal Ağ"
#. module: base
#: view:res.lang:0
@ -1584,12 +1599,12 @@ msgstr "%Y - Yüzyıl ile birlikte yıl"
#. module: base
#: view:res.company:0
msgid "Report Footer Configuration"
msgstr ""
msgstr "Rapor tabanı Ayarları"
#. module: base
#: field:ir.translation,comments:0
msgid "Translation comments"
msgstr ""
msgstr "Çeviri yorumları"
#. module: base
#: model:ir.module.module,description:base.module_lunch
@ -1699,7 +1714,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,summary:base.module_sale
msgid "Quotations, Sale Orders, Invoicing"
msgstr ""
msgstr "Teklifler, Satış Siparişleri, Faturalama"
#. module: base
#: field:res.users,login:0
@ -1742,7 +1757,7 @@ msgstr ""
#. module: base
#: field:res.partner,image_small:0
msgid "Small-sized image"
msgstr ""
msgstr "Küçük-boylu resim"
#. module: base
#: model:ir.module.module,shortdesc:base.module_stock
@ -1894,7 +1909,7 @@ msgstr ""
#. module: base
#: selection:ir.translation,state:0
msgid "Translation in Progress"
msgstr ""
msgstr "Çeviri yapılıyor"
#. module: base
#: model:ir.model,name:base.model_ir_rule
@ -1909,7 +1924,7 @@ msgstr "Günler"
#. module: base
#: model:ir.module.module,summary:base.module_fleet
msgid "Vehicle, leasing, insurances, costs"
msgstr ""
msgstr "Araç, leasing, sigortalar, maliyetler"
#. module: base
#: view:ir.model.access:0
@ -2208,7 +2223,7 @@ msgstr "Korece (KP) / 한국어 (KP)"
#. module: base
#: model:res.country,name:base.ax
msgid "Åland Islands"
msgstr ""
msgstr "Åland Adaları"
#. module: base
#: field:res.company,logo:0
@ -2244,7 +2259,7 @@ msgstr "Bahamalar"
#. module: base
#: field:ir.rule,perm_create:0
msgid "Apply for Create"
msgstr ""
msgstr "Oluşturulma için başvur"
#. module: base
#: code:addons/base/res/res_partner.py:522
@ -2554,7 +2569,7 @@ msgstr ""
#. module: base
#: field:res.company,rml_header1:0
msgid "Company Slogan"
msgstr ""
msgstr "Şirket Sloganı"
#. module: base
#: model:res.country,name:base.bb
@ -2598,7 +2613,7 @@ msgstr "Yunanca / Ελληνικά"
#. module: base
#: field:res.company,custom_footer:0
msgid "Custom Footer"
msgstr ""
msgstr "Özel Sayfa Altlığı"
#. module: base
#: model:ir.module.module,shortdesc:base.module_sale_crm
@ -2659,7 +2674,7 @@ msgstr "Kısayol Adı"
#. module: base
#: field:res.partner,contact_address:0
msgid "Complete Address"
msgstr ""
msgstr "Tam Adres"
#. module: base
#: help:ir.actions.act_window,limit:0
@ -2865,7 +2880,7 @@ msgstr "Fiji"
#. module: base
#: view:ir.actions.report.xml:0
msgid "Report Xml"
msgstr ""
msgstr "Xml raporla"
#. module: base
#: model:ir.module.module,description:base.module_purchase

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: 2012-11-24 02:51+0000\n"
"PO-Revision-Date: 2012-11-25 09:34+0000\n"
"Last-Translator: Joshua Jan(SHINEIT) <popkar77@gmail.com>\n"
"PO-Revision-Date: 2012-11-29 15:48+0000\n"
"Last-Translator: ccdos <ccdos@163.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: 2012-11-26 04:40+0000\n"
"X-Generator: Launchpad (build 16293)\n"
"X-Launchpad-Export-Date: 2012-11-30 05:05+0000\n"
"X-Generator: Launchpad (build 16319)\n"
#. module: base
#: model:ir.module.module,description:base.module_account_check_writing
@ -558,7 +558,7 @@ msgstr "您不能删除 admin 用户,因为其由 OpenERP 创建并被系统
#. module: base
#: view:workflow.transition:0
msgid "Workflow Transition"
msgstr ""
msgstr "工作流迁移"
#. module: base
#: model:res.country,name:base.gf
@ -863,7 +863,7 @@ msgid ""
"Small-sized image of this contact. It is automatically resized as a 64x64px "
"image, with aspect ratio preserved. Use this field anywhere a small image is "
"required."
msgstr ""
msgstr "联系人小尺寸图片。自动缩放为64x64px ,保留纵横比。此字段用于任何需要小图片的场合"
#. module: base
#: help:ir.actions.server,mobile:0
@ -1112,7 +1112,7 @@ msgstr "Google 账户"
#. module: base
#: model:ir.module.module,shortdesc:base.module_fleet
msgid "Fleet Management"
msgstr ""
msgstr "车辆管理"
#. module: base
#: help:ir.server.object.lines,value:0
@ -1257,7 +1257,7 @@ msgstr "韩国"
#: model:ir.ui.menu,name:base.menu_workflow_transition
#: view:workflow.activity:0
msgid "Transitions"
msgstr "移"
msgstr "移"
#. module: base
#: code:addons/orm.py:4839
@ -1873,7 +1873,7 @@ msgstr "荷兰"
#. module: base
#: model:ir.module.module,shortdesc:base.module_portal_event
msgid "Portal Event"
msgstr ""
msgstr "门户活动"
#. module: base
#: selection:ir.translation,state:0
@ -2541,7 +2541,7 @@ msgstr ""
#. module: base
#: field:res.company,rml_header1:0
msgid "Company Slogan"
msgstr ""
msgstr "公司标语"
#. module: base
#: model:res.country,name:base.bb
@ -2777,7 +2777,7 @@ msgstr "和视图标签一起发送给客户端的参数"
#. module: base
#: model:ir.module.module,summary:base.module_contacts
msgid "Contacts, People and Companies"
msgstr ""
msgstr "联系人、个人和公司"
#. module: base
#: model:res.country,name:base.tt
@ -3511,7 +3511,7 @@ msgstr "Finnish / Suomi"
#. module: base
#: view:ir.config_parameter:0
msgid "System Properties"
msgstr ""
msgstr "系统属性"
#. module: base
#: field:ir.sequence,prefix:0
@ -4131,7 +4131,7 @@ msgstr "有限公司"
msgid ""
"Error! You cannot define a rounding factor for the company's main currency "
"that is smaller than the decimal precision of 'Account'."
msgstr ""
msgstr "错误!公司本位币的舍入系数不能定义得小于”科目“的小数位数"
#. module: base
#: field:res.partner,ean13:0
@ -4452,7 +4452,7 @@ msgstr "知识管理系统"
#: view:workflow.activity:0
#: field:workflow.activity,in_transitions:0
msgid "Incoming Transitions"
msgstr "传入转换"
msgstr "转入迁移"
#. module: base
#: field:ir.values,value_unpickle:0
@ -6229,7 +6229,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_auth_reset_password
msgid "Reset Password"
msgstr ""
msgstr "重置密码"
#. module: base
#: view:ir.attachment:0
@ -7324,7 +7324,7 @@ msgstr "wizard.ir.model.menu.create"
#. module: base
#: view:workflow.transition:0
msgid "Transition"
msgstr "转换"
msgstr "迁移"
#. module: base
#: field:ir.cron,active:0
@ -8972,6 +8972,8 @@ msgid ""
"Allow users to reset their password from the login page.\n"
"========================================================\n"
msgstr ""
"\n"
"允许用户从他们的登录页面重置密码\n"
#. module: base
#: model:ir.module.module,description:base.module_process
@ -9962,7 +9964,7 @@ msgstr "巴拿马"
#: help:workflow.transition,group_id:0
msgid ""
"The group that a user must have to be authorized to validate this transition."
msgstr "用户组中的用户需要授权才能确认此转换。"
msgstr "用户组中的用户需要授权才能确认此迁移。"
#. module: base
#: constraint:res.users:0
@ -10449,7 +10451,7 @@ msgstr "未安装的模块"
#: view:workflow.activity:0
#: field:workflow.activity,out_transitions:0
msgid "Outgoing Transitions"
msgstr "传出转换"
msgstr "传出迁移"
#. module: base
#: field:ir.module.module,icon_image:0
@ -12559,7 +12561,7 @@ msgstr "塞浦路斯"
#. module: base
#: field:res.users,new_password:0
msgid "Set Password"
msgstr ""
msgstr "设置密码"
#. module: base
#: field:ir.actions.server,subject:0
@ -13367,7 +13369,7 @@ msgstr ""
#. module: base
#: model:ir.module.module,shortdesc:base.module_base_crypt
msgid "DB Password Encryption"
msgstr ""
msgstr "数据库密码加密"
#. module: base
#: help:workflow.transition,act_to:0
@ -14970,7 +14972,7 @@ msgstr "系统更新"
#: field:ir.actions.report.xml,report_sxw_content:0
#: field:ir.actions.report.xml,report_sxw_content_data:0
msgid "SXW Content"
msgstr ""
msgstr "SXW内容"
#. module: base
#: help:ir.sequence,prefix:0
@ -14985,7 +14987,7 @@ msgstr "塞舌尔"
#. module: base
#: model:res.partner.category,name:base.res_partner_category_4
msgid "Gold"
msgstr ""
msgstr "黄金"
#. module: base
#: code:addons/base/res/res_company.py:159
@ -15012,7 +15014,7 @@ msgstr "一般信息"
#. module: base
#: field:ir.model.data,complete_name:0
msgid "Complete ID"
msgstr ""
msgstr "完整ID"
#. module: base
#: model:res.country,name:base.tc
@ -15063,7 +15065,7 @@ msgstr "切换公司警告"
msgid ""
"Helps you manage your manufacturing processes and generate reports on those "
"processes."
msgstr ""
msgstr "帮助您管理您的生产和其生成的报表。"
#. module: base
#: help:ir.sequence,number_increment:0
@ -15125,12 +15127,12 @@ msgstr "公司"
#. module: base
#: model:ir.module.module,shortdesc:base.module_purchase_requisition
msgid "Purchase Requisitions"
msgstr ""
msgstr "采购申请"
#. module: base
#: selection:ir.actions.act_window,target:0
msgid "Inline Edit"
msgstr ""
msgstr "行内编辑"
#. module: base
#: selection:ir.cron,interval_type:0
@ -15151,7 +15153,7 @@ msgstr "业务伙伴: "
#. module: base
#: view:res.partner:0
msgid "Is a Company?"
msgstr ""
msgstr "是一个公司?"
#. module: base
#: code:addons/base/res/res_company.py:159
@ -15173,7 +15175,7 @@ msgstr "创建对象"
#. module: base
#: model:res.country,name:base.ss
msgid "South Sudan"
msgstr ""
msgstr "苏丹南部"
#. module: base
#: field:ir.filters,context:0
@ -15206,7 +15208,7 @@ msgstr "潜在客户"
#. module: base
#: model:ir.module.module,shortdesc:base.module_stock_invoice_directly
msgid "Invoice Picking Directly"
msgstr ""
msgstr "根据装箱单开发票"
#. module: base
#: selection:base.language.install,lang:0

View File

@ -66,9 +66,11 @@
<field name="name" string="Record Rule"/>
<filter string="Global" icon="terp-stage" domain="[('global','=',True)]"/>
<separator/>
<filter string="Full Access" icon="terp-gtk-select-all" domain="[('perm_read','=',True),('perm_write','=',True),('perm_create','=',True),('perm_unlink','=',True)]"/>
<filter string="Read Access" icon="terp-stock_align_left_24" domain="[('perm_read','=',True)]"/>
<filter string="Write Access" icon="terp-tools" domain="[('perm_write','=',True)]"/>
<filter string="Full Access Right" domain="[('perm_read','=',True),('perm_write','=',True),('perm_create','=',True),('perm_unlink','=',True)]"/>
<filter string="Read Access Right" domain="[('perm_read','=',True)]"/>
<filter string="Write Access Right" domain="[('perm_write','=',True)]"/>
<filter string="Create Access Right" domain="[('perm_create','=',True)]"/>
<filter string="Delete Access Right" domain="[('perm_unlink','=',True)]"/>
<field name="model_id"/>
<field name="groups"/>
</search>

View File

@ -22,6 +22,9 @@
import logging
import time
from osv import osv, fields
from tools.translate import _
import openerp
_logger = logging.getLogger(__name__)
@ -98,6 +101,8 @@ class ir_sequence(openerp.osv.osv.osv):
There is no access rights check.
"""
if number_increment == 0:
raise osv.except_osv(_('Warning!'),_("Increment number must not be zero."))
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))
@ -122,6 +127,8 @@ class ir_sequence(openerp.osv.osv.osv):
There is no access rights check.
"""
if number_increment == 0:
raise osv.except_osv(_('Warning!'),_("Increment number must not be zero."))
assert isinstance(id, (int, long))
cr.execute("""
ALTER SEQUENCE ir_sequence_%03d INCREMENT BY %%s RESTART WITH %%s

View File

@ -54,12 +54,12 @@
<record id="view_translation_tree" model="ir.ui.view">
<field name="model">ir.translation</field>
<field name="arch" type="xml">
<tree string="Translations" editable="bottom">
<field name="src" readonly="True"/>
<tree string="Translations" editable="top">
<field name="src"/>
<field name="value"/>
<field name="name" readonly="True"/>
<field name="lang" readonly="True"/>
<field name="type" readonly="True"/>
<field name="name"/>
<field name="lang"/>
<field name="type"/>
</tree>
</field>
</record>

View File

@ -3,7 +3,7 @@
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
# Copyright (C) 2010-2011 OpenERP SA (<http://openerp.com>).
# Copyright (C) 2010-2012 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@ -62,7 +62,7 @@ class ir_ui_menu(osv.osv):
modelaccess = self.pool.get('ir.model.access')
user_groups = set(self.pool.get('res.users').read(cr, SUPERUSER_ID, uid, ['groups_id'])['groups_id'])
result = []
for menu in self.browse(cr, uid, ids, context=context):
for menu in self.browse(cr, SUPERUSER_ID, ids, context=context):
# this key works because user access rights are all based on user's groups (cfr ir_model_access.check)
key = (cr.dbname, menu.id, tuple(user_groups))
if key in self._cache:

View File

@ -20,7 +20,10 @@
##############################################################################
import base64
from docutils import io, nodes
from docutils.core import publish_string
from docutils.transforms import Transform, writer_aux
from docutils.writers.html4css1 import Writer
import imp
import logging
import re
@ -28,6 +31,7 @@ import urllib
import zipimport
from openerp import modules, pooler, release, tools, addons
from openerp.modules.db import create_categories
from openerp.tools.parse_version import parse_version
from openerp.tools.translate import _
from openerp.osv import fields, osv, orm
@ -80,6 +84,32 @@ class module_category(osv.osv):
'visible' : 1,
}
class MyFilterMessages(Transform):
"""
Custom docutils transform to remove `system message` for a document and
generate warnings.
(The standard filter removes them based on some `report_level` passed in
the `settings_override` dictionary, but if we use it, we can't see them
and generate warnings.)
"""
default_priority = 870
def apply(self):
for node in self.document.traverse(nodes.system_message):
_logger.warning("docutils' system message present: %s", str(node))
node.parent.remove(node)
class MyWriter(Writer):
"""
Custom docutils html4ccs1 writer that doesn't add the warnings to the
output document.
"""
def get_transforms(self):
return [MyFilterMessages, writer_aux.Admonitions]
class module(osv.osv):
_name = "ir.module.module"
_rec_name = "shortdesc"
@ -100,7 +130,7 @@ class module(osv.osv):
res = dict.fromkeys(ids, '')
for module in self.browse(cr, uid, ids, context=context):
overrides = dict(embed_stylesheet=False, doctitle_xform=False, output_encoding='unicode')
output = publish_string(source=module.description, writer_name='html', settings_overrides=overrides)
output = publish_string(source=module.description, settings_overrides=overrides, writer=MyWriter())
res[module.id] = output
return res
@ -609,21 +639,8 @@ class module(osv.osv):
categs = category.split('/')
if categs != current_category_path:
p_id = None
while categs:
if p_id is not None:
cr.execute('SELECT id FROM ir_module_category WHERE name=%s AND parent_id=%s', (categs[0], p_id))
else:
cr.execute('SELECT id FROM ir_module_category WHERE name=%s AND parent_id is NULL', (categs[0],))
c_id = cr.fetchone()
if not c_id:
cr.execute('INSERT INTO ir_module_category (name, parent_id) VALUES (%s, %s) RETURNING id', (categs[0], p_id))
c_id = cr.fetchone()[0]
else:
c_id = c_id[0]
p_id = c_id
categs = categs[1:]
self.write(cr, uid, [mod_browse.id], {'category_id': p_id})
cat_id = create_categories(cr, categs)
mod_browse.write({'category_id': cat_id})
def update_translations(self, cr, uid, ids, filter_lang=None, context=None):
if not filter_lang:

View File

@ -2,7 +2,7 @@
<openerp>
<data>
<record model="ir.module.category" id="module_category_hidden">
<field name="name">Hidden</field>
<field name="name">Technical Settings</field>
<field name="sequence">0</field>
<field name="visible" eval="0" />
</record>

View File

@ -166,7 +166,7 @@
<field name="name">ir.module.module.tree</field>
<field name="model">ir.module.module</field>
<field name="arch" type="xml">
<tree colors="blue:state=='to upgrade' or state=='to install';red:state=='uninstalled';grey:state=='uninstallable';black:state=='installed'" string="Modules">
<tree colors="blue:state=='to upgrade' or state=='to install';red:state=='uninstalled';grey:state=='uninstallable';black:state=='installed'" create="false" string="Modules">
<field name="shortdesc"/>
<field name="name" groups="base.group_no_one"/>
<field name="author"/>

View File

@ -20,8 +20,8 @@
<field name="arch" type="xml">
<form string="Company" version="7.0">
<sheet>
<div class="oe_right oe_avatar">
<field name="logo" nolabel="1" widget="image"/>
<div>
<field name="logo" nolabel="1" widget="image" class="oe_avatar oe_left"/>
</div>
<div class="oe_right oe_button_box" name="button_box">
<button name="%(preview_report)d" string="Preview Header/Footer" type="action" icon="gtk-print" class="oe_inline oe_right"/>

View File

@ -19,6 +19,7 @@
#
##############################################################################
import datetime
import math
import openerp
from osv import osv, fields
@ -178,6 +179,12 @@ class res_partner(osv.osv, format_address):
result[obj.id] = tools.image_get_resized_images(obj.image)
return result
def _get_tz_offset(self, cr, uid, ids, name, args, context=None):
result = dict.fromkeys(ids, False)
for obj in self.browse(cr, uid, ids, context=context):
result[obj.id] = datetime.datetime.now(pytz.timezone(obj.tz or 'GMT')).strftime('%z')
return result
def _set_image(self, cr, uid, id, name, value, args, context=None):
return self.write(cr, uid, [id], {'image': tools.image_resize_image_big(value)}, context=context)
@ -195,6 +202,7 @@ class res_partner(osv.osv, format_address):
help="The partner's timezone, used to output proper date and time values inside printed reports. "
"It is important to set a value for this field. You should use the same timezone "
"that is otherwise used to pick and render date and time values: your computer's timezone."),
'tz_offset': fields.function(_get_tz_offset, type='char', size=5, string='Timezone offset', store=True),
'user_id': fields.many2one('res.users', 'Salesperson', help='The internal user that is in charge of communicating with this contact if any.'),
'vat': fields.char('TIN', size=32, help="Tax Identification Number. Check the box if this contact is subjected to taxes. Used by the some of the legal statements."),
'bank_ids': fields.one2many('res.partner.bank', 'partner_id', 'Banks'),
@ -508,23 +516,6 @@ class res_partner(osv.osv, format_address):
result[adr] = address_dict.get(adr, default_address)
return result
def gen_next_ref(self, cr, uid, ids):
if len(ids) != 1:
return True
# compute the next number ref
cr.execute("select ref from res_partner where ref is not null order by char_length(ref) desc, ref desc limit 1")
res = cr.dictfetchall()
ref = res and res[0]['ref'] or '0'
try:
nextref = int(ref)+1
except:
raise osv.except_osv(_('Warning'), _("Couldn't generate the next id because some partners have an alphabetic id !"))
# update the current partner
cr.execute("update res_partner set ref=%s where id=%s", (nextref, ids[0]))
return True
def view_header_get(self, cr, uid, view_id, view_type, context):
res = super(res_partner, self).view_header_get(cr, uid, view_id, view_type, context)
if res: return res

View File

@ -148,7 +148,7 @@
<group>
<group>
<label for="type" attrs="{'invisible': [('parent_id','=', False)]}"/>
<div attrs="{'invisible': [('parent_id','=', False)]}" invisible="1" name="div_type">
<div attrs="{'invisible': [('parent_id','=', False)]}" name="div_type">
<field class="oe_inline"
name="type"/>
<label for="use_parent_address" class="oe_edit_only"/>
@ -295,7 +295,7 @@
<filter string="Customers" name="customer" icon="terp-personal" domain="[('customer','=',1)]" help="Customer Partners"/>
<separator/>
<filter string="Suppliers" name="supplier" icon="terp-personal" domain="[('supplier','=',1)]" help="Supplier Partners"/>
<field name="category_id" string="Category" filter_domain="[('category_id','ilike', self)]"/>
<field name="category_id" string="Tag" filter_domain="[('category_id','ilike', self)]"/>
<field name="user_id"/>
<field name="parent_id" filter_domain="[('parent_id','child_of',[self])]"/>
<group expand="0" string="Group By...">
@ -345,8 +345,6 @@
<li t-if="record.city.raw_value and !record.country.raw_value"><field name="city"/></li>
<li t-if="!record.city.raw_value and record.country.raw_value"><field name="country"/></li>
<li t-if="record.city.raw_value and record.country.raw_value"><field name="city"/>, <field name="country"/></li>
<li t-if="record.phone.raw_value">Tel: <field name="phone"/></li>
<li t-if="record.mobile.raw_value">Mobile: <field name="mobile"/></li>
<li t-if="record.email.raw_value"><a t-attf-href="mailto:#{record.email.raw_value}"><field name="email"/></a></li>
</ul>
</div>
@ -527,7 +525,7 @@
<field name="help">Manage the partner categories in order to better classify them for tracking and analysis purposes. A partner may belong to several categories and categories have a hierarchy structure: a partner belonging to a category also belong to his parent category.</field>
</record>
<menuitem action="action_partner_category_form" id="menu_partner_category_form" name="Partner Categories" sequence="4" parent="menu_config_address_book" groups="base.group_no_one"/>
<menuitem action="action_partner_category_form" id="menu_partner_category_form" name="Partner Tags" sequence="4" parent="menu_config_address_book" groups="base.group_no_one"/>
</data>
</openerp>

View File

@ -343,7 +343,7 @@ class res_users(osv.osv):
for k in self._all_columns.keys():
if k.startswith('context_'):
context_key = k[8:]
elif k in ['lang', 'tz']:
elif k in ['lang', 'tz', 'tz_offset']:
context_key = k
else:
context_key = False

44
openerp/cli/__init__.py Normal file
View File

@ -0,0 +1,44 @@
import logging
import sys
import openerp
_logger = logging.getLogger(__name__)
commands = {}
class CommandType(type):
def __init__(cls, name, bases, attrs):
super(CommandType, cls).__init__(name, bases, attrs)
name = getattr(cls, name, cls.__name__.lower())
cls.name = name
if name != 'command':
commands[name] = cls
class Command(object):
"""Subclass this class to define new openerp subcommands """
__metaclass__ = CommandType
def run(self, args):
pass
class Help(Command):
def run(self, args):
print "Available commands:\n"
for k, v in commands.items():
print " %s" % k
import server
def main():
args = sys.argv[1:]
command = "server"
if len(args) and not args[0].startswith("-"):
command = args[0]
args = args[1:]
if command in commands:
o = commands[command]()
o.run(args)
# vim:et:ts=4:sw=4:

285
openerp/cli/server.py Normal file
View File

@ -0,0 +1,285 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
"""
OpenERP - Server
OpenERP is an ERP+CRM program for small and medium businesses.
The whole source code is distributed under the terms of the
GNU Public Licence.
(c) 2003-TODAY, Fabien Pinckaers - OpenERP SA
"""
import logging
import os
import signal
import sys
import threading
import traceback
import time
import openerp
from . import Command
__author__ = openerp.release.author
__version__ = openerp.release.version
# Also use the `openerp` logger for the main script.
_logger = logging.getLogger('openerp')
def check_root_user():
""" Exit if the process's user is 'root' (on POSIX system)."""
if os.name == 'posix':
import pwd
if pwd.getpwuid(os.getuid())[0] == 'root' :
sys.stderr.write("Running as user 'root' is a security risk, aborting.\n")
sys.exit(1)
def check_postgres_user():
""" Exit if the configured database user is 'postgres'.
This function assumes the configuration has been initialized.
"""
config = openerp.tools.config
if config['db_user'] == 'postgres':
sys.stderr.write("Using the database user 'postgres' is a security risk, aborting.")
sys.exit(1)
def report_configuration():
""" Log the server version and some configuration values.
This function assumes the configuration has been initialized.
"""
config = openerp.tools.config
_logger.info("OpenERP version %s", __version__)
for name, value in [('addons paths', config['addons_path']),
('database hostname', config['db_host'] or 'localhost'),
('database port', config['db_port'] or '5432'),
('database user', config['db_user'])]:
_logger.info("%s: %s", name, value)
def setup_pid_file():
""" Create a file with the process id written in it.
This function assumes the configuration has been initialized.
"""
config = openerp.tools.config
if config['pidfile']:
fd = open(config['pidfile'], 'w')
pidtext = "%d" % (os.getpid())
fd.write(pidtext)
fd.close()
def preload_registry(dbname):
""" Preload a registry, and start the cron."""
try:
db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=openerp.tools.config['init'] or openerp.tools.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:
_logger.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:
config = openerp.tools.config
db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=config['init'] or config['update'], pooljobs=False)
cr = db.cursor()
_logger.info('loading test file %s', test_file)
openerp.tools.convert_yaml_import(cr, 'base', file(test_file), 'test', {}, 'test', True)
cr.rollback()
cr.close()
except Exception:
_logger.exception('Failed to initialize database `%s` and run test file `%s`.', dbname, test_file)
def export_translation():
config = openerp.tools.config
dbname = config['db_name']
if config["language"]:
msg = "language %s" % (config["language"],)
else:
msg = "new language"
_logger.info('writing translation file for %s to %s', msg,
config["translate_out"])
fileformat = os.path.splitext(config["translate_out"])[-1][1:].lower()
buf = file(config["translate_out"], "w")
cr = openerp.pooler.get_db(dbname).cursor()
openerp.tools.trans_export(config["language"],
config["translate_modules"] or ["all"], buf, fileformat, cr)
cr.close()
buf.close()
_logger.info('translation file written successfully')
def import_translation():
config = openerp.tools.config
context = {'overwrite': config["overwrite_existing_translations"]}
dbname = config['db_name']
cr = openerp.pooler.get_db(dbname).cursor()
openerp.tools.trans_load( cr, config["translate_in"], config["language"],
context=context)
cr.commit()
cr.close()
# Variable keeping track of the number of calls to the signal handler defined
# below. This variable is monitored by ``quit_on_signals()``.
quit_signals_received = 0
def signal_handler(sig, frame):
""" Signal handler: exit ungracefully on the second handled signal.
:param sig: the signal number
:param frame: the interrupted stack frame or None
"""
global quit_signals_received
quit_signals_received += 1
if quit_signals_received > 1:
# logging.shutdown was already called at this point.
sys.stderr.write("Forced shutdown.\n")
os._exit(0)
def dumpstacks(sig, frame):
""" Signal handler: dump a stack trace for each existing thread."""
# code from http://stackoverflow.com/questions/132058/getting-stack-trace-from-a-running-python-application#answer-2569696
# modified for python 2.5 compatibility
threads_info = dict([(th.ident, {'name': th.name,
'uid': getattr(th,'uid','n/a')})
for th in threading.enumerate()])
code = []
for threadId, stack in sys._current_frames().items():
thread_info = threads_info.get(threadId)
code.append("\n# Thread: %s (id:%s) (uid:%s)" % \
(thread_info and thread_info['name'] or 'n/a',
threadId,
thread_info and thread_info['uid'] or 'n/a'))
for filename, lineno, name, line in traceback.extract_stack(stack):
code.append('File: "%s", line %d, in %s' % (filename, lineno, name))
if line:
code.append(" %s" % (line.strip()))
_logger.info("\n".join(code))
def setup_signal_handlers():
""" Register the signal handler defined above. """
SIGNALS = map(lambda x: getattr(signal, "SIG%s" % x), "INT TERM".split())
if os.name == 'posix':
map(lambda sig: signal.signal(sig, signal_handler), SIGNALS)
signal.signal(signal.SIGQUIT, dumpstacks)
elif os.name == 'nt':
import win32api
win32api.SetConsoleCtrlHandler(lambda sig: signal_handler(sig, None), 1)
def quit_on_signals():
""" Wait for one or two signals then shutdown the server.
The first SIGINT or SIGTERM signal will initiate a graceful shutdown while
a second one if any will force an immediate exit.
"""
# Wait for a first signal to be handled. (time.sleep will be interrupted
# by the signal handler.) The try/except is for the win32 case.
try:
while quit_signals_received == 0:
time.sleep(60)
except KeyboardInterrupt:
pass
config = openerp.tools.config
if config['pidfile']:
os.unlink(config['pidfile'])
openerp.service.stop_services()
sys.exit(0)
def configure_babel_localedata_path():
# Workaround: py2exe and babel.
if hasattr(sys, 'frozen'):
import babel
babel.localedata._dirname = os.path.join(os.path.dirname(sys.executable), 'localedata')
def main(args):
os.environ["TZ"] = "UTC"
check_root_user()
openerp.tools.config.parse_config(args)
if openerp.tools.config.options["gevent"]:
_logger.info('Using gevent mode')
import gevent.monkey
gevent.monkey.patch_all()
import gevent_psycopg2
gevent_psycopg2.monkey_patch()
check_postgres_user()
openerp.netsvc.init_logger()
report_configuration()
if openerp.tools.config.options["gevent"]:
_logger.info('Using gevent mode')
config = openerp.tools.config
configure_babel_localedata_path()
setup_signal_handlers()
if config["test_file"]:
run_test_file(config['db_name'], config['test_file'])
sys.exit(0)
if config["translate_out"]:
export_translation()
sys.exit(0)
if config["translate_in"]:
import_translation()
sys.exit(0)
if not config["stop_after_init"]:
setup_pid_file()
# Some module register themselves when they are loaded so we need the
# services to be running before loading any registry.
if config['workers']:
openerp.service.start_services_workers()
else:
openerp.service.start_services()
if config['db_name']:
for dbname in config['db_name'].split(','):
preload_registry(dbname)
if config["stop_after_init"]:
sys.exit(0)
_logger.info('OpenERP server is running, waiting for connections...')
quit_on_signals()
class Server(Command):
def run(self, args):
main(args)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -3,7 +3,7 @@
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
# Copyright (C) 2010 OpenERP s.a. (<http://openerp.com>).
# Copyright (C) 2010-2012 OpenERP s.a. (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@ -119,21 +119,17 @@ def create_categories(cr, categories):
category = []
while categories:
category.append(categories[0])
if p_id is not None:
cr.execute('SELECT id \
FROM ir_module_category \
WHERE name=%s AND parent_id=%s', (categories[0], p_id))
else:
cr.execute('SELECT id \
FROM ir_module_category \
WHERE name=%s AND parent_id IS NULL', (categories[0],))
xml_id = 'module_category_' + ('_'.join(map(lambda x: x.lower(), category))).replace('&', 'and').replace(' ', '_')
# search via xml_id (because some categories are renamed)
cr.execute("SELECT res_id FROM ir_model_data WHERE name=%s AND module=%s AND model=%s",
(xml_id, "base", "ir.module.category"))
c_id = cr.fetchone()
if not c_id:
cr.execute('INSERT INTO ir_module_category \
(name, parent_id) \
VALUES (%s, %s) RETURNING id', (categories[0], p_id))
c_id = cr.fetchone()[0]
xml_id = 'module_category_' + ('_'.join(map(lambda x: x.lower(), category))).replace('&', 'and').replace(' ', '_')
cr.execute('INSERT INTO ir_model_data (module, name, res_id, model) \
VALUES (%s, %s, %s, %s)', ('base', xml_id, c_id, 'ir.module.category'))
else:

View File

@ -196,10 +196,15 @@ class db(netsvc.ExportService):
# Try to terminate all other connections that might prevent
# dropping the database
try:
cr.execute("""SELECT pg_terminate_backend(procpid)
# PostgreSQL 9.2 renamed pg_stat_activity.procpid to pid:
# http://www.postgresql.org/docs/9.2/static/release-9-2.html#AEN110389
pid_col = 'pid' if cr._cnx.server_version >= 90200 else 'procpid'
cr.execute("""SELECT pg_terminate_backend(%(pid_col)s)
FROM pg_stat_activity
WHERE datname = %s AND
procpid != pg_backend_pid()""",
WHERE datname = %%s AND
%(pid_col)s != pg_backend_pid()""" % {'pid_col': pid_col},
(db_name,))
except Exception:
pass

View File

@ -1140,6 +1140,10 @@ class test_datetime(ImporterCase):
""" If there is no tz either in the context or on the user, falls back
to UTC
"""
self.registry('res.users').write(
self.cr, openerp.SUPERUSER_ID, [openerp.SUPERUSER_ID],
{'tz': False})
result = self.import_(['value'], [['2012-02-03 11:11:11']])
self.assertFalse(result['messages'])
self.assertEqual(

View File

@ -46,6 +46,8 @@ def _eval_expr(cr, ident, workitem, action):
assert action, 'You used a NULL action in a workflow, use dummy node instead.'
for line in action.split('\n'):
line = line.strip()
if not line:
continue
uid=ident[0]
model=ident[1]
ids=[ident[2]]

View File

@ -64,7 +64,7 @@ def py2exe_options():
"skip_archive": 1,
"optimize": 2,
"dist_dir": 'dist',
"packages": [ "DAV", "HTMLParser", "PIL", "asynchat", "asyncore", "commands", "dateutil", "decimal", "email", "encodings", "imaplib", "lxml", "lxml._elementpath", "lxml.builder", "lxml.etree", "lxml.objectify", "mako", "openerp", "poplib", "pychart", "pydot", "pyparsing", "reportlab", "select", "simplejson", "smtplib", "uuid", "vatnumber", "vobject", "xml", "xml.dom", "yaml", ],
"packages": [ "DAV", "HTMLParser", "PIL", "asynchat", "asyncore", "commands", "dateutil", "decimal", "docutils", "email", "encodings", "imaplib", "lxml", "lxml._elementpath", "lxml.builder", "lxml.etree", "lxml.objectify", "mako", "openerp", "poplib", "pychart", "pydot", "pyparsing", "reportlab", "select", "simplejson", "smtplib", "uuid", "vatnumber", "vobject", "xml", "xml.dom", "yaml", ],
"excludes" : ["Tkconstants","Tkinter","tcl"],
}
}