diff --git a/doc/Makefile b/doc/Makefile index 88f0bf1e0f5..c1eff186583 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -2,17 +2,19 @@ # # You can set these variables from the command line. -SPHINXOPTS = +SPHINXOPTS = -q SPHINXBUILD = sphinx-build PAPER = -BUILDDIR = build +BUILDDIR = _build # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +# the i18n builder cannot share the environment and doctrees with the others +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext help: @echo "Please use \`make ' where is one of" @@ -29,6 +31,9 @@ help: @echo " latexpdf to make LaTeX files and run them through pdflatex" @echo " text to make text files" @echo " man to make manual pages" + @echo " texinfo to make Texinfo files" + @echo " info to make Texinfo files and run them through makeinfo" + @echo " gettext to make PO message catalogs" @echo " changes to make an overview of all changed/added/deprecated items" @echo " linkcheck to check all external links for integrity" @echo " doctest to run all doctests embedded in the documentation (if enabled)" @@ -43,6 +48,7 @@ html: dirhtml: $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + sed -i '/-99999/d' _build/dirhtml/_static/flasky.css @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." @@ -72,17 +78,17 @@ qthelp: @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/OpenERPWeb.qhcp" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/OpenERPTechnicalDocumentation.qhcp" @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/OpenERPWeb.qhc" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/OpenERPTechnicalDocumentation.qhc" devhelp: $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp @echo @echo "Build finished." @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/OpenERPWeb" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/OpenERPWeb" + @echo "# mkdir -p $$HOME/.local/share/devhelp/OpenERPTechnicalDocumentation" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/OpenERPTechnicalDocumentation" @echo "# devhelp" epub: @@ -100,7 +106,7 @@ latex: latexpdf: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through pdflatex..." - make -C $(BUILDDIR)/latex all-pdf + $(MAKE) -C $(BUILDDIR)/latex all-pdf @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." text: @@ -113,6 +119,24 @@ man: @echo @echo "Build finished. The manual pages are in $(BUILDDIR)/man." +texinfo: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." + @echo "Run \`make' in that directory to run these through makeinfo" \ + "(use \`make info' here to do that automatically)." + +info: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo "Running Texinfo files through makeinfo..." + make -C $(BUILDDIR)/texinfo info + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." + +gettext: + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale + @echo + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." + changes: $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes @echo diff --git a/doc/_static/openerp.png b/doc/_static/openerp.png new file mode 100644 index 00000000000..d6dbd9d83d1 Binary files /dev/null and b/doc/_static/openerp.png differ diff --git a/doc/_templates/sidebarintro.html b/doc/_templates/sidebarintro.html new file mode 100644 index 00000000000..95b047733e3 --- /dev/null +++ b/doc/_templates/sidebarintro.html @@ -0,0 +1,16 @@ + + +

Other Docs

+ + +

Useful Links

+ diff --git a/doc/_templates/sidebarlogo.html b/doc/_templates/sidebarlogo.html new file mode 100644 index 00000000000..de6e3e5c851 --- /dev/null +++ b/doc/_templates/sidebarlogo.html @@ -0,0 +1,3 @@ + diff --git a/doc/_themes/.gitignore b/doc/_themes/.gitignore new file mode 100644 index 00000000000..66b6e4c2f3b --- /dev/null +++ b/doc/_themes/.gitignore @@ -0,0 +1,3 @@ +*.pyc +*.pyo +.DS_Store diff --git a/doc/_themes/LICENSE b/doc/_themes/LICENSE new file mode 100644 index 00000000000..8daab7ee6ef --- /dev/null +++ b/doc/_themes/LICENSE @@ -0,0 +1,37 @@ +Copyright (c) 2010 by Armin Ronacher. + +Some rights reserved. + +Redistribution and use in source and binary forms of the theme, with or +without modification, are permitted provided that the following conditions +are met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + +* The names of the contributors may not be used to endorse or + promote products derived from this software without specific + prior written permission. + +We kindly ask you to only use these themes in an unmodified manner just +for Flask and Flask-related products, not for unrelated projects. If you +like the visual style and want to use it for your own projects, please +consider making some larger changes to the themes (such as changing +font faces, sizes, colors or margins). + +THIS THEME IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS THEME, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/doc/_themes/README b/doc/_themes/README new file mode 100644 index 00000000000..b3292bdff8e --- /dev/null +++ b/doc/_themes/README @@ -0,0 +1,31 @@ +Flask Sphinx Styles +=================== + +This repository contains sphinx styles for Flask and Flask related +projects. To use this style in your Sphinx documentation, follow +this guide: + +1. put this folder as _themes into your docs folder. Alternatively + you can also use git submodules to check out the contents there. +2. add this to your conf.py: + + sys.path.append(os.path.abspath('_themes')) + html_theme_path = ['_themes'] + html_theme = 'flask' + +The following themes exist: + +- 'flask' - the standard flask documentation theme for large + projects +- 'flask_small' - small one-page theme. Intended to be used by + very small addon libraries for flask. + +The following options exist for the flask_small theme: + + [options] + index_logo = '' filename of a picture in _static + to be used as replacement for the + h1 in the index.rst file. + index_logo_height = 120px height of the index logo + github_fork = '' repository name on github for the + "fork me" badge diff --git a/doc/_themes/flask/layout.html b/doc/_themes/flask/layout.html new file mode 100644 index 00000000000..ad08eccd38d --- /dev/null +++ b/doc/_themes/flask/layout.html @@ -0,0 +1,25 @@ +{%- extends "basic/layout.html" %} +{%- block extrahead %} + {{ super() }} + {% if theme_touch_icon %} + + {% endif %} + +{% endblock %} +{%- block relbar2 %}{% endblock %} +{% block header %} + {{ super() }} + {% if pagename == 'index' %} +
+ {% endif %} +{% endblock %} +{%- block footer %} + + {% if pagename == 'index' %} +
+ {% endif %} +{%- endblock %} diff --git a/doc/_themes/flask/relations.html b/doc/_themes/flask/relations.html new file mode 100644 index 00000000000..3bbcde85bb4 --- /dev/null +++ b/doc/_themes/flask/relations.html @@ -0,0 +1,19 @@ +

Related Topics

+ diff --git a/doc/_themes/flask/static/flasky.css_t b/doc/_themes/flask/static/flasky.css_t new file mode 100644 index 00000000000..0280e159455 --- /dev/null +++ b/doc/_themes/flask/static/flasky.css_t @@ -0,0 +1,395 @@ +/* + * flasky.css_t + * ~~~~~~~~~~~~ + * + * :copyright: Copyright 2010 by Armin Ronacher. + * :license: Flask Design License, see LICENSE for details. + */ + +{% set page_width = '80em' %} +{% set sidebar_width = '16em' %} + +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: 'Georgia', serif; + font-size: 15px; + background-color: white; + color: #000; + margin: 0; + padding: 0; +} + +div.document { + width: {{ page_width }}; + margin: 30px auto 0 auto; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 0 0 0 {{ sidebar_width }}; +} + +div.sphinxsidebar { + width: {{ sidebar_width }}; +} + +hr { + border: 1px solid #B1B4B6; +} + +div.body { + background-color: #ffffff; + color: #3E4349; + padding: 0 0px 0 0px; +} + +img.floatingflask { + padding: 0 0 10px 10px; + float: right; +} + +div.footer { + width: {{ page_width }}; + margin: 20px auto 30px auto; + font-size: 12px; + color: #888; + text-align: right; +} + +div.footer a { + color: #888; +} + +div.related { + display: none; +} + +div.sphinxsidebar a { + color: #444; + text-decoration: none; + border-bottom: 1px dotted #999; +} + +div.sphinxsidebar a:hover { + border-bottom: 1px solid #999; +} + +div.sphinxsidebar { + font-size: 12px; + line-height: 1.5; +} + +div.sphinxsidebarwrapper { + padding: 0px 10px; +} + +div.sphinxsidebarwrapper p.logo { + padding: 0 0 20px 0; + margin: 0; + text-align: center; +} + +div.sphinxsidebar h3, +div.sphinxsidebar h4 { + font-family: 'Garamond', 'Georgia', serif; + color: #444; + font-size: 22px; + font-weight: normal; + margin: 0 0 5px 0; + padding: 0; +} + +div.sphinxsidebar h4 { + font-size: 18px; +} + +div.sphinxsidebar h3 a { + color: #444; +} + +div.sphinxsidebar p.logo a, +div.sphinxsidebar h3 a, +div.sphinxsidebar p.logo a:hover, +div.sphinxsidebar h3 a:hover { + border: none; +} + +div.sphinxsidebar p { + color: #555; + margin: 10px 0; +} + +div.sphinxsidebar ul { + margin: 10px 0; + padding: 0; + color: #000; +} + +div.sphinxsidebar input { + border: 1px solid #ccc; + font-family: 'Georgia', serif; + font-size: 1em; +} + +/* -- body styles ----------------------------------------------------------- */ + +a { + color: #004B6B; + text-decoration: underline; +} + +a:hover { + color: #6D4100; + text-decoration: underline; +} + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: 'Garamond', 'Georgia', serif; + font-weight: normal; + margin: 30px 0px 10px 0px; + padding: 0; +} + +{% if theme_index_logo %} +div.indexwrapper h1 { + text-indent: -999999px; + background: url({{ theme_index_logo }}) no-repeat center center; + height: {{ theme_index_logo_height }}; +} +{% endif %} + +div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; } +div.body h2 { font-size: 180%; } +div.body h3 { font-size: 150%; } +div.body h4 { font-size: 130%; } +div.body h5 { font-size: 100%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: #ddd; + padding: 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + color: #444; + background: #eaeaea; +} + +div.body p, div.body dd, div.body li { + line-height: 1.4em; +} + +div.admonition { + background: #fafafa; + margin: 20px -30px; + padding: 10px 30px; + border-top: 1px solid #ccc; + border-bottom: 1px solid #ccc; +} + +div.admonition tt.xref, div.admonition a tt { + border-bottom: 1px solid #fafafa; +} + +dd div.admonition { + margin-left: -60px; + padding-left: 60px; +} + +div.admonition p.admonition-title { + font-family: 'Garamond', 'Georgia', serif; + font-weight: normal; + font-size: 22px; + margin: 0 0 10px 0; + padding: 0; + line-height: 1; +} + +div.admonition p.last { + margin-bottom: 0; +} + +div.highlight { + background-color: white; +} + +dt:target, .highlight { + background: #FAF3E8; +} + +div.note { + background-color: #eee; + border: 1px solid #ccc; +} + +div.seealso { + background-color: #ffc; + border: 1px solid #ff6; +} + +div.topic { + background-color: #eee; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre, tt { + font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 0.9em; +} + +img.screenshot { +} + +tt.descname, tt.descclassname { + font-size: 0.95em; +} + +tt.descname { + padding-right: 0.08em; +} + +img.screenshot { + -moz-box-shadow: 2px 2px 4px #eee; + -webkit-box-shadow: 2px 2px 4px #eee; + box-shadow: 2px 2px 4px #eee; +} + +table.docutils { + border: 1px solid #888; + -moz-box-shadow: 2px 2px 4px #eee; + -webkit-box-shadow: 2px 2px 4px #eee; + box-shadow: 2px 2px 4px #eee; +} + +table.docutils td, table.docutils th { + border: 1px solid #888; + padding: 0.25em 0.7em; +} + +table.field-list, table.footnote { + border: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + +table.footnote { + margin: 15px 0; + width: 100%; + border: 1px solid #eee; + background: #fdfdfd; + font-size: 0.9em; +} + +table.footnote + table.footnote { + margin-top: -15px; + border-top: none; +} + +table.field-list th { + padding: 0 0.8em 0 0; +} + +table.field-list td { + padding: 0; +} + +table.footnote td.label { + width: 0px; + padding: 0.3em 0 0.3em 0.5em; +} + +table.footnote td { + padding: 0.3em 0.5em; +} + +dl { + margin: 0; + padding: 0; +} + +dl dd { + margin-left: 30px; +} + +blockquote { + margin: 0 0 0 30px; + padding: 0; +} + +ul, ol { + margin: 10px 0 10px 30px; + padding: 0; +} + +pre { + background: #eee; + padding: 7px 30px; + margin: 15px -30px; + line-height: 1.3em; +} + +dl pre, blockquote pre, li pre { + margin-left: -60px; + padding-left: 60px; +} + +dl dl pre { + margin-left: -90px; + padding-left: 90px; +} + +tt { + background-color: #ecf0f3; + color: #222; + /* padding: 1px 2px; */ +} + +tt.xref, a tt { + background-color: #FBFBFB; + border-bottom: 1px solid white; +} + +a.reference { + text-decoration: none; + border-bottom: 1px dotted #004B6B; +} + +a.reference:hover { + border-bottom: 1px solid #6D4100; +} + +a.footnote-reference { + text-decoration: none; + font-size: 0.7em; + vertical-align: top; + border-bottom: 1px dotted #004B6B; +} + +a.footnote-reference:hover { + border-bottom: 1px solid #6D4100; +} + +a:hover tt { + background: #EEE; +} diff --git a/doc/_themes/flask/static/small_flask.css b/doc/_themes/flask/static/small_flask.css new file mode 100644 index 00000000000..1c6df309edc --- /dev/null +++ b/doc/_themes/flask/static/small_flask.css @@ -0,0 +1,70 @@ +/* + * small_flask.css_t + * ~~~~~~~~~~~~~~~~~ + * + * :copyright: Copyright 2010 by Armin Ronacher. + * :license: Flask Design License, see LICENSE for details. + */ + +body { + margin: 0; + padding: 20px 30px; +} + +div.documentwrapper { + float: none; + background: white; +} + +div.sphinxsidebar { + display: block; + float: none; + width: 102.5%; + margin: 50px -30px -20px -30px; + padding: 10px 20px; + background: #333; + color: white; +} + +div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p, +div.sphinxsidebar h3 a { + color: white; +} + +div.sphinxsidebar a { + color: #aaa; +} + +div.sphinxsidebar p.logo { + display: none; +} + +div.document { + width: 100%; + margin: 0; +} + +div.related { + display: block; + margin: 0; + padding: 10px 0 20px 0; +} + +div.related ul, +div.related ul li { + margin: 0; + padding: 0; +} + +div.footer { + display: none; +} + +div.bodywrapper { + margin: 0; +} + +div.body { + min-height: 0; + padding: 0; +} diff --git a/doc/_themes/flask/theme.conf b/doc/_themes/flask/theme.conf new file mode 100644 index 00000000000..18c720f804c --- /dev/null +++ b/doc/_themes/flask/theme.conf @@ -0,0 +1,9 @@ +[theme] +inherit = basic +stylesheet = flasky.css +pygments_style = flask_theme_support.FlaskyStyle + +[options] +index_logo = '' +index_logo_height = 120px +touch_icon = diff --git a/doc/_themes/flask_small/layout.html b/doc/_themes/flask_small/layout.html new file mode 100644 index 00000000000..aa1716aaff0 --- /dev/null +++ b/doc/_themes/flask_small/layout.html @@ -0,0 +1,22 @@ +{% extends "basic/layout.html" %} +{% block header %} + {{ super() }} + {% if pagename == 'index' %} +
+ {% endif %} +{% endblock %} +{% block footer %} + {% if pagename == 'index' %} +
+ {% endif %} +{% endblock %} +{# do not display relbars #} +{% block relbar1 %}{% endblock %} +{% block relbar2 %} + {% if theme_github_fork %} + Fork me on GitHub + {% endif %} +{% endblock %} +{% block sidebar1 %}{% endblock %} +{% block sidebar2 %}{% endblock %} diff --git a/doc/_themes/flask_small/static/flasky.css_t b/doc/_themes/flask_small/static/flasky.css_t new file mode 100644 index 00000000000..fe2141c565e --- /dev/null +++ b/doc/_themes/flask_small/static/flasky.css_t @@ -0,0 +1,287 @@ +/* + * flasky.css_t + * ~~~~~~~~~~~~ + * + * Sphinx stylesheet -- flasky theme based on nature theme. + * + * :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: 'Georgia', serif; + font-size: 17px; + color: #000; + background: white; + margin: 0; + padding: 0; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 40px auto 0 auto; + width: 700px; +} + +hr { + border: 1px solid #B1B4B6; +} + +div.body { + background-color: #ffffff; + color: #3E4349; + padding: 0 30px 30px 30px; +} + +img.floatingflask { + padding: 0 0 10px 10px; + float: right; +} + +div.footer { + text-align: right; + color: #888; + padding: 10px; + font-size: 14px; + width: 650px; + margin: 0 auto 40px auto; +} + +div.footer a { + color: #888; + text-decoration: underline; +} + +div.related { + line-height: 32px; + color: #888; +} + +div.related ul { + padding: 0 0 0 10px; +} + +div.related a { + color: #444; +} + +/* -- body styles ----------------------------------------------------------- */ + +a { + color: #004B6B; + text-decoration: underline; +} + +a:hover { + color: #6D4100; + text-decoration: underline; +} + +div.body { + padding-bottom: 40px; /* saved for footer */ +} + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: 'Garamond', 'Georgia', serif; + font-weight: normal; + margin: 30px 0px 10px 0px; + padding: 0; +} + +{% if theme_index_logo %} +div.indexwrapper h1 { + text-indent: -999999px; + background: url({{ theme_index_logo }}) no-repeat center center; + height: {{ theme_index_logo_height }}; +} +{% endif %} + +div.body h2 { font-size: 180%; } +div.body h3 { font-size: 150%; } +div.body h4 { font-size: 130%; } +div.body h5 { font-size: 100%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: white; + padding: 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + color: #444; + background: #eaeaea; +} + +div.body p, div.body dd, div.body li { + line-height: 1.4em; +} + +div.admonition { + background: #fafafa; + margin: 20px -30px; + padding: 10px 30px; + border-top: 1px solid #ccc; + border-bottom: 1px solid #ccc; +} + +div.admonition p.admonition-title { + font-family: 'Garamond', 'Georgia', serif; + font-weight: normal; + font-size: 24px; + margin: 0 0 10px 0; + padding: 0; + line-height: 1; +} + +div.admonition p.last { + margin-bottom: 0; +} + +div.highlight{ + background-color: white; +} + +dt:target, .highlight { + background: #FAF3E8; +} + +div.note { + background-color: #eee; + border: 1px solid #ccc; +} + +div.seealso { + background-color: #ffc; + border: 1px solid #ff6; +} + +div.topic { + background-color: #eee; +} + +div.warning { + background-color: #ffe4e4; + border: 1px solid #f66; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre, tt { + font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 0.85em; +} + +img.screenshot { +} + +tt.descname, tt.descclassname { + font-size: 0.95em; +} + +tt.descname { + padding-right: 0.08em; +} + +img.screenshot { + -moz-box-shadow: 2px 2px 4px #eee; + -webkit-box-shadow: 2px 2px 4px #eee; + box-shadow: 2px 2px 4px #eee; +} + +table.docutils { + border: 1px solid #888; + -moz-box-shadow: 2px 2px 4px #eee; + -webkit-box-shadow: 2px 2px 4px #eee; + box-shadow: 2px 2px 4px #eee; +} + +table.docutils td, table.docutils th { + border: 1px solid #888; + padding: 0.25em 0.7em; +} + +table.field-list, table.footnote { + border: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + +table.footnote { + margin: 15px 0; + width: 100%; + border: 1px solid #eee; +} + +table.field-list th { + padding: 0 0.8em 0 0; +} + +table.field-list td { + padding: 0; +} + +table.footnote td { + padding: 0.5em; +} + +dl { + margin: 0; + padding: 0; +} + +dl dd { + margin-left: 30px; +} + +pre { + padding: 0; + margin: 15px -30px; + padding: 8px; + line-height: 1.3em; + padding: 7px 30px; + background: #eee; + border-radius: 2px; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; +} + +dl pre { + margin-left: -60px; + padding-left: 60px; +} + +tt { + background-color: #ecf0f3; + color: #222; + /* padding: 1px 2px; */ +} + +tt.xref, a tt { + background-color: #FBFBFB; +} + +a:hover tt { + background: #EEE; +} diff --git a/doc/_themes/flask_small/theme.conf b/doc/_themes/flask_small/theme.conf new file mode 100644 index 00000000000..542b462515d --- /dev/null +++ b/doc/_themes/flask_small/theme.conf @@ -0,0 +1,10 @@ +[theme] +inherit = basic +stylesheet = flasky.css +nosidebar = true +pygments_style = flask_theme_support.FlaskyStyle + +[options] +index_logo = '' +index_logo_height = 120px +github_fork = '' diff --git a/doc/_themes/flask_theme_support.py b/doc/_themes/flask_theme_support.py new file mode 100644 index 00000000000..33f47449c11 --- /dev/null +++ b/doc/_themes/flask_theme_support.py @@ -0,0 +1,86 @@ +# flasky extensions. flasky pygments style based on tango style +from pygments.style import Style +from pygments.token import Keyword, Name, Comment, String, Error, \ + Number, Operator, Generic, Whitespace, Punctuation, Other, Literal + + +class FlaskyStyle(Style): + background_color = "#f8f8f8" + default_style = "" + + styles = { + # No corresponding class for the following: + #Text: "", # class: '' + Whitespace: "underline #f8f8f8", # class: 'w' + Error: "#a40000 border:#ef2929", # class: 'err' + Other: "#000000", # class 'x' + + Comment: "italic #8f5902", # class: 'c' + Comment.Preproc: "noitalic", # class: 'cp' + + Keyword: "bold #004461", # class: 'k' + Keyword.Constant: "bold #004461", # class: 'kc' + Keyword.Declaration: "bold #004461", # class: 'kd' + Keyword.Namespace: "bold #004461", # class: 'kn' + Keyword.Pseudo: "bold #004461", # class: 'kp' + Keyword.Reserved: "bold #004461", # class: 'kr' + Keyword.Type: "bold #004461", # class: 'kt' + + Operator: "#582800", # class: 'o' + Operator.Word: "bold #004461", # class: 'ow' - like keywords + + Punctuation: "bold #000000", # class: 'p' + + # because special names such as Name.Class, Name.Function, etc. + # are not recognized as such later in the parsing, we choose them + # to look the same as ordinary variables. + Name: "#000000", # class: 'n' + Name.Attribute: "#c4a000", # class: 'na' - to be revised + Name.Builtin: "#004461", # class: 'nb' + Name.Builtin.Pseudo: "#3465a4", # class: 'bp' + Name.Class: "#000000", # class: 'nc' - to be revised + Name.Constant: "#000000", # class: 'no' - to be revised + Name.Decorator: "#888", # class: 'nd' - to be revised + Name.Entity: "#ce5c00", # class: 'ni' + Name.Exception: "bold #cc0000", # class: 'ne' + Name.Function: "#000000", # class: 'nf' + Name.Property: "#000000", # class: 'py' + Name.Label: "#f57900", # class: 'nl' + Name.Namespace: "#000000", # class: 'nn' - to be revised + Name.Other: "#000000", # class: 'nx' + Name.Tag: "bold #004461", # class: 'nt' - like a keyword + Name.Variable: "#000000", # class: 'nv' - to be revised + Name.Variable.Class: "#000000", # class: 'vc' - to be revised + Name.Variable.Global: "#000000", # class: 'vg' - to be revised + Name.Variable.Instance: "#000000", # class: 'vi' - to be revised + + Number: "#990000", # class: 'm' + + Literal: "#000000", # class: 'l' + Literal.Date: "#000000", # class: 'ld' + + String: "#4e9a06", # class: 's' + String.Backtick: "#4e9a06", # class: 'sb' + String.Char: "#4e9a06", # class: 'sc' + String.Doc: "italic #8f5902", # class: 'sd' - like a comment + String.Double: "#4e9a06", # class: 's2' + String.Escape: "#4e9a06", # class: 'se' + String.Heredoc: "#4e9a06", # class: 'sh' + String.Interpol: "#4e9a06", # class: 'si' + String.Other: "#4e9a06", # class: 'sx' + String.Regex: "#4e9a06", # class: 'sr' + String.Single: "#4e9a06", # class: 's1' + String.Symbol: "#4e9a06", # class: 'ss' + + Generic: "#000000", # class: 'g' + Generic.Deleted: "#a40000", # class: 'gd' + Generic.Emph: "italic #000000", # class: 'ge' + Generic.Error: "#ef2929", # class: 'gr' + Generic.Heading: "bold #000080", # class: 'gh' + Generic.Inserted: "#00A000", # class: 'gi' + Generic.Output: "#888", # class: 'go' + Generic.Prompt: "#745334", # class: 'gp' + Generic.Strong: "bold #000000", # class: 'gs' + Generic.Subheading: "bold #800080", # class: 'gu' + Generic.Traceback: "bold #a40000", # class: 'gt' + } diff --git a/doc/api/core.rst b/doc/api/core.rst new file mode 100644 index 00000000000..05ddf177698 --- /dev/null +++ b/doc/api/core.rst @@ -0,0 +1,10 @@ + +.. _openerp library: + +Server-side library +------------------- + +.. automodule:: openerp + :members: + :undoc-members: + diff --git a/doc/api/models.rst b/doc/api/models.rst new file mode 100644 index 00000000000..143147c0f48 --- /dev/null +++ b/doc/api/models.rst @@ -0,0 +1,7 @@ + +ORM and models +-------------- + +.. automodule:: openerp.osv.orm + :members: + :undoc-members: diff --git a/doc/api/startup.rst b/doc/api/startup.rst new file mode 100644 index 00000000000..98e8f6ac3c3 --- /dev/null +++ b/doc/api/startup.rst @@ -0,0 +1,20 @@ + +Start-up script +--------------- + +To run the OpenERP server, the conventional approach is to use the +`openerp-server` script. It loads the :ref:`openerp library`, sets a few +configuration variables corresponding to command-line arguments, and starts to +listen to incoming connections from clients. + +Depending on your deployment needs, you can write such a start-up script very +easily. We also recommend you take a look at an alternative tool called +`openerp-command` that can, among other things, launch the server. + +.. versionadded:: 6.1 + +Yet another alternative is to use a WSGI-compatible HTTP server and let it call +into one of the WSGI entry points of the server. + +.. versionadded:: 6.1 + diff --git a/doc/conf.py b/doc/conf.py new file mode 100644 index 00000000000..54deb11eb2d --- /dev/null +++ b/doc/conf.py @@ -0,0 +1,256 @@ +# -*- coding: utf-8 -*- +# +# OpenERP Technical Documentation configuration file, created by +# sphinx-quickstart on Fri Feb 17 16:14:06 2012. +# +# This file is execfile()d with the current directory set to its containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys, os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) +sys.path.append(os.path.abspath('_themes')) +sys.path.append(os.path.abspath('..')) + +# -- General configuration ----------------------------------------------------- + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be extensions +# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.viewcode'] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'OpenERP Server Developers Documentation' +copyright = u'2012, OpenERP s.a.' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '6.1' +# The full version, including alpha/beta/rc tags. +release = '6.1' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = ['_build'] + +# The reST default role (used for this markup: `text`) to use for all documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + + +# -- Options for HTML output --------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'flask' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +html_theme_path = ['_themes'] + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +html_sidebars = { + 'index': ['sidebarintro.html', 'sourcelink.html', 'searchbox.html'], + '**': ['sidebarlogo.html', 'localtoc.html', 'relations.html', + 'sourcelink.html', 'searchbox.html'] +} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'openerp-server-doc' + + +# -- Options for LaTeX output -------------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, documentclass [howto/manual]). +latex_documents = [ + ('index', 'openerp-server-doc.tex', u'OpenERP Server Developers Documentation', + u'OpenERP s.a.', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output -------------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'openerp-server-doc', u'OpenERP Server Developers Documentation', + [u'OpenERP s.a.'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------------ + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + ('index', 'OpenERPServerDocumentation', u'OpenERP Server Developers Documentation', + u'OpenERP s.a.', 'OpenERPServerDocumentation', 'Developers documentation for the openobject-server project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = { + 'python': ('http://docs.python.org/', None), + 'openerpweb': ('http://doc.openerp.com/trunk/developers/web', None), + 'openerpdev': ('http://doc.openerp.com/trunk/developers', None), +} diff --git a/doc/index.rst b/doc/index.rst new file mode 100644 index 00000000000..5d5b4f8e0bd --- /dev/null +++ b/doc/index.rst @@ -0,0 +1,6 @@ +:orphan: + +OpenERP Server Developers Documentation +======================================= + +.. include:: index.rst.inc diff --git a/doc/index.rst.inc b/doc/index.rst.inc new file mode 100644 index 00000000000..05c4a53640b --- /dev/null +++ b/doc/index.rst.inc @@ -0,0 +1,8 @@ + +OpenERP Server +'''''''''''''' + +.. toctree:: + :maxdepth: 1 + + test-framework diff --git a/doc/test-framework.rst b/doc/test-framework.rst new file mode 100644 index 00000000000..56951b1a8e1 --- /dev/null +++ b/doc/test-framework.rst @@ -0,0 +1,100 @@ +.. _test-framework: + +Test framework +============== + +In addition to the YAML-based tests, OpenERP uses the unittest2_ testing +framework to test both the core ``openerp`` package and its addons. For the +core and each addons, tests are divided between three (overlapping) sets: + +1. A test suite that comprises all the tests that can be run right after the + addons is installed (or, for the core, right after a database is created). + That suite is called ``fast_suite`` and must contain only tests that can be run + frequently. Actually most of the tests should be considered fast enough to be + included in that ``fast_suite`` list and only tests that take a long time to run + (e.g. more than a minute) should not be listed. Those long tests should come up + pretty rarely. + +2. A test suite called ``checks`` provides sanity checks. These tests are + invariants that must be full-filled at any time. They are expected to always + pass: obviously they must pass right after the module is installed (i.e. just + like the ``fast_suite`` tests), but they must also pass after any other module is + installed, after a migration, or even after the database was put in production + for a few months. + +3. The third suite is made of all the tests: those provided by the two above + suites, but also tests that are not explicitely listed in ``fast_suite`` or + ``checks``. They are not explicitely listed anywhere and are discovered + automatically. + +As the sanity checks provide stronger guarantees about the code and database +structure, new tests must be added to the ``checks`` suite whenever it is +possible. Said with other words: one should try to avoid writing tests that +assume a freshly installed/unaltered module or database. + +It is possible to have tests that are not listed in ``fast_suite`` or +``checks``. This is useful if a test takes a lot of time. By default, when +using the testing infrastructure, tests should run fast enough so that people +can use them frequently. One can also use that possiblity for tests that +require some complex setup before they can be successfuly run. + +As a rule of thumb when writing a new test, try to add it to the ``checks`` +suite. If it really needs that the module it belongs to is freshly installed, +add it to ``fast_suite``. Finally, if it can not be run in an acceptable time +frame, don't add it to any explicit list. + +Writing tests +------------- + +The tests must be developed under ``.tests`` (or ``openerp.tests`` +for the core). For instance, with respect to the tests, a module ``foo`` +should be organized as follow:: + + foo/ + __init__.py # does not import .tests + tests/ + __init__.py # import some of the tests sub-modules, and + # list them in fast_suite or checks + test_bar.py # contains unittest2 classes + test_baz.py # idem + ... and so on ... + +The two explicit lists of tests are thus the variables ``foo.tests.fast_suite`` +and ``foo.tests.checks``. As an example, you can take a look at the +``openerp.tests`` module (which follows exactly the same conventions even if it +is not an addons). + +Note that the ``fast_suite`` and ``checks`` variables are really lists of +module objects. They could be directly unittest2 suite objects if necessary in +the future. + +Running the tests +----------------- + +To run the tests (see :ref:`above ` to learn how tests are +organized), the simplest way is to use the ``oe`` command (provided by the +``openerp-command`` project). + +:: + + > oe run-tests # will run all the fast_suite tests + > oe run-tests -m openerp # will run all the fast_suite tests defined in `openerp.tests` + > oe run-tests -m sale # will run all the fast_suite tests defined in `openerp.addons.sale.tests` + > oe run-tests -m foo.test_bar # will run the tests defined in `openerp.addons.foo.tests.test_bar` + +In addition to the above possibilities, when invoked with a non-existing module +(or module.sub-module) name, oe will reply with a list of available test +sub-modules. + +Depending on the unittest2_ class that is used to write the tests (see +``openerp.tests.common`` for some helper classes that you can re-use), a database +may be created before the test is run, and the module providing the test will +be installed on that database. + +Because creating a database, installing modules, and then dropping it is +expensive, it is possible to interleave the run of the ``fast_suite`` tests +with the initialization of a new database: the dabase is created, and after +each requested module is installed, its fast_suite tests are run. The database +is thus created and dropped (and the modules installed) only once. + +.. _unittest2: http://pypi.python.org/pypi/unittest2 diff --git a/openerp/addons/base/__openerp__.py b/openerp/addons/base/__openerp__.py index 4e9687e4ea4..802a0510e28 100644 --- a/openerp/addons/base/__openerp__.py +++ b/openerp/addons/base/__openerp__.py @@ -91,7 +91,6 @@ 'test/bug_lp541545.xml', 'test/test_osv_expression.yml', 'test/test_ir_rule.yml', # <-- These tests modify/add/delete ir_rules. - 'test/test_ir_values.yml', # Commented because this takes some time. # This must be (un)commented with the corresponding import statement # in test/__init__.py. diff --git a/openerp/addons/base/i18n/ab.po b/openerp/addons/base/i18n/ab.po index 583c8f52d8b..c7c478ea188 100644 --- a/openerp/addons/base/i18n/ab.po +++ b/openerp/addons/base/i18n/ab.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-28 05:47+0000\n" -"X-Generator: Launchpad (build 14874)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/af.po b/openerp/addons/base/i18n/af.po index 750498c192f..be7e38a5f2f 100644 --- a/openerp/addons/base/i18n/af.po +++ b/openerp/addons/base/i18n/af.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:45+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/am.po b/openerp/addons/base/i18n/am.po index c1e1faad680..3c8bfae8ae8 100644 --- a/openerp/addons/base/i18n/am.po +++ b/openerp/addons/base/i18n/am.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:46+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/ar.po b/openerp/addons/base/i18n/ar.po index 72c254eedb6..04cb8090b73 100644 --- a/openerp/addons/base/i18n/ar.po +++ b/openerp/addons/base/i18n/ar.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:46+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -90,7 +90,7 @@ msgstr "مسار العمل" #. module: base #: selection:ir.sequence,implementation:0 msgid "No gap" -msgstr "" +msgstr "لا توجد فجوة" #. module: base #: selection:base.language.install,lang:0 @@ -100,7 +100,7 @@ msgstr "المجرية" #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (PY) / Español (PY)" -msgstr "" +msgstr "الأسبانية / Español (PY)" #. module: base #: model:ir.module.category,description:base.module_category_project_management @@ -108,6 +108,7 @@ msgid "" "Helps you manage your projects and tasks by tracking them, generating " "plannings, etc..." msgstr "" +"يساعدك على إدارة مشاريعك ومهامك عن طريق متابعتهم وإصدار الخطط وما إلى ذلك." #. module: base #: field:ir.actions.act_window,display_menu_tip:0 @@ -163,7 +164,7 @@ msgstr "المرجع" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_be_invoice_bba msgid "Belgium - Structured Communication" -msgstr "" +msgstr "بلجيكا - الإتصالات المنظمة" #. module: base #: field:ir.actions.act_window,target:0 @@ -173,12 +174,12 @@ msgstr "النافذة الهدف" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_analytic_plans msgid "Sales Analytic Distribution" -msgstr "" +msgstr "تحليل لتوزيعات المبيعات" #. module: base #: model:ir.module.module,shortdesc:base.module_web_process msgid "Process" -msgstr "" +msgstr "عمليّة" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate @@ -232,12 +233,12 @@ msgstr "تمّ الإنشاء" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_tr msgid "Turkey - Accounting" -msgstr "" +msgstr "محاسبة تركيا" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp_subproduct msgid "MRP Subproducts" -msgstr "" +msgstr "المنتجات الفرعية من تخطيط مصدر التصنيع" #. module: base #: code:addons/base/module/module.py:390 @@ -270,7 +271,7 @@ msgstr "إنكتيتوتية / ᐃᓄᒃᑎᑐᑦ" #: model:ir.module.category,name:base.module_category_sales_management #: model:ir.module.module,shortdesc:base.module_sale msgid "Sales Management" -msgstr "" +msgstr "إدارة المبيعات" #. module: base #: view:res.partner:0 @@ -371,12 +372,12 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_customer_relationship_management msgid "Customer Relationship Management" -msgstr "" +msgstr "إدارة علاقات العملاء" #. module: base #: view:ir.module.module:0 msgid "Extra" -msgstr "" +msgstr "إضافي" #. module: base #: code:addons/orm.py:2526 @@ -866,7 +867,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_document_webdav msgid "Shared Repositories (WebDAV)" -msgstr "" +msgstr "مستودعات مشتركة (WebDav)" #. module: base #: model:ir.module.module,description:base.module_import_google @@ -1060,7 +1061,7 @@ msgstr "النوع" #. module: base #: field:ir.mail_server,smtp_user:0 msgid "Username" -msgstr "" +msgstr "اسم المستخدم" #. module: base #: code:addons/orm.py:398 @@ -1235,7 +1236,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_web_tests msgid "Tests" -msgstr "" +msgstr "إختبارات" #. module: base #: field:ir.ui.view_sc,res_id:0 @@ -1362,7 +1363,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_account_sequence msgid "Entries Sequence Numbering" -msgstr "" +msgstr "ترقيم مسلسل المدخلات" #. module: base #: model:ir.model,name:base.model_ir_exports @@ -1470,6 +1471,8 @@ msgid "" "Helps you manage your purchase-related processes such as requests for " "quotations, supplier invoices, etc..." msgstr "" +"يساعدك على إدارة العمليات المتعلقة بالشراء مثل طلبات التسعير وفواتير " +"الموردين وما إلى ذلك." #. module: base #: help:base.language.install,overwrite:0 @@ -1566,7 +1569,7 @@ msgstr "عشري" #: model:ir.module.category,name:base.module_category_warehouse_management #: model:ir.module.module,shortdesc:base.module_stock msgid "Warehouse Management" -msgstr "" +msgstr "إدارة المخازن و المستودعات" #. module: base #: model:ir.model,name:base.model_res_request_link @@ -1739,6 +1742,8 @@ msgid "" "simplified payment mode encoding, automatic picking lists generation and " "more." msgstr "" +"يساعدك على تشغيل نقاط البيع بكفاءة عن طريق تسجيل عمليات البيع بسرعة وتوفير " +"وضع مبسط للدفع وإصدار تلقائي لقوائم الالتقاط وغير ذلك." #. module: base #: model:res.country,name:base.mv @@ -1779,7 +1784,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_html_view msgid "Html View" -msgstr "" +msgstr "عرض HTML" #. module: base #: field:res.currency,position:0 @@ -2007,12 +2012,12 @@ msgstr "فنلندا" #: code:addons/base/res/res_company.py:156 #, python-format msgid "Website: " -msgstr "" +msgstr "الموقع : " #. module: base #: model:ir.ui.menu,name:base.menu_administration msgid "Settings" -msgstr "" +msgstr "إعدادات" #. module: base #: selection:ir.actions.act_window,view_type:0 @@ -2191,7 +2196,7 @@ msgstr "عدد الوحدات البرمجية التي تمّ نحديثها" #. module: base #: field:ir.cron,function:0 msgid "Method" -msgstr "" +msgstr "طريقة" #. module: base #: view:res.partner.event:0 @@ -2326,7 +2331,7 @@ msgstr "" #. module: base #: field:ir.mail_server,smtp_debug:0 msgid "Debugging" -msgstr "" +msgstr "تنقيح" #. module: base #: model:ir.module.module,description:base.module_crm_helpdesk @@ -2435,12 +2440,12 @@ msgstr "السعر الحالي" #. module: base #: model:ir.module.module,shortdesc:base.module_idea msgid "Ideas" -msgstr "" +msgstr "أفكار" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_crm msgid "Opportunity to Quotation" -msgstr "" +msgstr "فرصة إلي عرض مالي" #. module: base #: model:ir.module.module,description:base.module_sale_analytic_plans @@ -2477,7 +2482,7 @@ msgstr "" #. module: base #: model:ir.ui.menu,name:base.menu_invoiced msgid "Invoicing" -msgstr "" +msgstr "الفواتير" #. module: base #: field:ir.ui.view_sc,name:0 @@ -2518,7 +2523,7 @@ msgstr "" #: field:ir.model.data,res_id:0 #: field:ir.values,res_id:0 msgid "Record ID" -msgstr "" +msgstr "تسجيل الهوية" #. module: base #: field:ir.actions.server,email:0 @@ -2602,7 +2607,7 @@ msgstr "خطأ أثناء الاتصال بخادم ضمان الناشر." #: model:res.groups,name:base.group_sale_manager #: model:res.groups,name:base.group_tool_manager msgid "Manager" -msgstr "" +msgstr "المدير" #. module: base #: model:ir.ui.menu,name:base.menu_custom @@ -2639,7 +2644,7 @@ msgstr "" #. module: base #: view:res.groups:0 msgid "Inherited" -msgstr "" +msgstr "موروث" #. module: base #: field:ir.model.fields,serialization_field_id:0 @@ -2651,7 +2656,7 @@ msgstr "" msgid "" "Lets you install various tools to simplify and enhance OpenERP's report " "creation." -msgstr "" +msgstr "يمكّنك من تثبيت عدة أدوات تسهل وتحسن إنشاء التقارير." #. module: base #: view:res.lang:0 @@ -2662,7 +2667,7 @@ msgstr "%y - السنة دون القرن [00،99]" #: code:addons/base/res/res_company.py:155 #, python-format msgid "Fax: " -msgstr "" +msgstr "فاكس: " #. module: base #: model:res.country,name:base.si @@ -2789,14 +2794,14 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_stock_planning msgid "Master Procurement Schedule" -msgstr "" +msgstr "جدول الاستاذ للمشتريات" #. module: base #: model:ir.model,name:base.model_ir_module_category #: field:ir.module.module,application:0 #: field:res.groups,category_id:0 msgid "Application" -msgstr "" +msgstr "تطبيق" #. module: base #: selection:publisher_warranty.contract,state:0 @@ -3018,7 +3023,7 @@ msgstr "قطاع الموارد البشرية" #. module: base #: model:ir.ui.menu,name:base.menu_dashboard_admin msgid "Administration Dashboard" -msgstr "" +msgstr "لوحة تحكم المشرفين" #. module: base #: code:addons/orm.py:4408 @@ -3163,7 +3168,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_survey msgid "Survey" -msgstr "" +msgstr "إستفتاء" #. module: base #: view:base.language.import:0 @@ -3286,7 +3291,7 @@ msgstr "" #. module: base #: selection:base.language.install,lang:0 msgid "Portugese / Português" -msgstr "" +msgstr "البرتغالية / Português" #. module: base #: model:res.partner.title,name:base.res_partner_title_sir @@ -3456,7 +3461,7 @@ msgstr "" #: model:ir.module.category,name:base.module_category_generic_modules_accounting #: view:res.company:0 msgid "Accounting" -msgstr "" +msgstr "المحاسبة" #. module: base #: model:ir.module.module,description:base.module_account_payment @@ -3610,7 +3615,7 @@ msgstr "" #. module: base #: selection:ir.sequence,implementation:0 msgid "Standard" -msgstr "" +msgstr "قياسي" #. module: base #: model:ir.model,name:base.model_maintenance_contract @@ -3643,7 +3648,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_human_resources msgid "Human Resources" -msgstr "" +msgstr "الموارد البشرية" #. module: base #: model:ir.actions.act_window,name:base.action_country @@ -4053,7 +4058,7 @@ msgstr "Xor" #. module: base #: model:ir.module.category,name:base.module_category_localization_account_charts msgid "Account Charts" -msgstr "" +msgstr "شجرة الحسابات" #. module: base #: view:res.request:0 @@ -4131,7 +4136,7 @@ msgstr "" msgid "" "Your OpenERP Publisher's Warranty Contract unique key, also called serial " "number." -msgstr "" +msgstr "شفرة ضمان الناشر لأوبنيرب." #. module: base #: model:ir.module.module,description:base.module_base_setup @@ -4156,7 +4161,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_pl msgid "Poland - Accounting" -msgstr "" +msgstr "محاسبة بولندا" #. module: base #: view:ir.cron:0 @@ -4207,7 +4212,7 @@ msgstr "الملخّص" #. module: base #: model:ir.module.category,name:base.module_category_hidden_dependency msgid "Dependency" -msgstr "" +msgstr "الاعتمادية" #. module: base #: field:multi_company.default,expression:0 @@ -4266,7 +4271,7 @@ msgstr "المقعد المقدّس (ولاية مدينة الفاتيكان)" #. module: base #: field:base.module.import,module_file:0 msgid "Module .ZIP file" -msgstr "" +msgstr "موديول لملف ZIP" #. module: base #: model:res.partner.category,name:base.res_partner_category_16 @@ -4281,7 +4286,7 @@ msgstr "" #. module: base #: sql_constraint:ir.sequence.type:0 msgid "`code` must be unique." -msgstr "" +msgstr "\"كود\" لابد أن يكون فريداً" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_expense @@ -4307,7 +4312,7 @@ msgstr "سورينام" #. module: base #: model:ir.module.module,shortdesc:base.module_project_timesheet msgid "Bill Time on Tasks" -msgstr "" +msgstr "الوقت الإلزامي للمهمة" #. module: base #: model:ir.module.category,name:base.module_category_marketing @@ -4324,17 +4329,17 @@ msgstr "الحساب المصرفي" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_gr msgid "Greece - Accounting" -msgstr "" +msgstr "محاسبة اليونان" #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (HN) / Español (HN)" -msgstr "" +msgstr "الأسبانية / Español (HN)" #. module: base #: view:ir.sequence.type:0 msgid "Sequence Type" -msgstr "" +msgstr "نوع المسلسل" #. module: base #: view:ir.ui.view.custom:0 @@ -4344,7 +4349,7 @@ msgstr "هيكل مخصص" #. module: base #: model:ir.module.module,shortdesc:base.module_web_gantt msgid "web Gantt" -msgstr "" +msgstr "خرائط جانت" #. module: base #: field:ir.module.module,license:0 @@ -4354,7 +4359,7 @@ msgstr "الرخصة" #. module: base #: model:ir.module.module,shortdesc:base.module_web_graph msgid "web Graph" -msgstr "" +msgstr "الرسوم البيانية" #. module: base #: field:ir.attachment,url:0 @@ -4364,7 +4369,7 @@ msgstr "العنوان الإلكتروني (URL)" #. module: base #: selection:ir.translation,type:0 msgid "SQL Constraint" -msgstr "" +msgstr "قيود الـ SQL" #. module: base #: help:ir.ui.menu,groups_id:0 @@ -4444,7 +4449,7 @@ msgstr "استيراد وحدة برمجية" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_ch msgid "Switzerland - Accounting" -msgstr "" +msgstr "محاسبة سوسرا" #. module: base #: field:res.bank,zip:0 @@ -4490,7 +4495,7 @@ msgstr "" #. module: base #: model:ir.module.category,description:base.module_category_marketing msgid "Helps you manage your marketing campaigns step by step." -msgstr "" +msgstr "يساعدك على إدارة حملاتك التسويقية خطوة بخطوة." #. module: base #: selection:base.language.install,lang:0 @@ -4534,7 +4539,7 @@ msgstr "القواعد" #. module: base #: field:ir.mail_server,smtp_host:0 msgid "SMTP Server" -msgstr "" +msgstr "خادم SMTP" #. module: base #: code:addons/base/module/module.py:256 @@ -4550,7 +4555,7 @@ msgstr "تمّ تثبيت / تحديث الوحدات البرمجية المخ #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (PR) / Español (PR)" -msgstr "" +msgstr "الأسبانية / Español (PR)" #. module: base #: model:res.country,name:base.gt @@ -4588,7 +4593,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_specific_industry_applications msgid "Specific Industry Applications" -msgstr "" +msgstr "تطبيقات خاصة بصناعة معينة" #. module: base #: model:res.partner.category,name:base.res_partner_category_retailers0 @@ -4624,7 +4629,7 @@ msgstr "كينيا" #: model:ir.actions.act_window,name:base.action_translation #: model:ir.ui.menu,name:base.menu_action_translation msgid "Translated Terms" -msgstr "" +msgstr "مصطلحات مترجمة" #. module: base #: view:res.partner.event:0 @@ -4744,12 +4749,12 @@ msgstr "ذلك العقد قد تمّ تسجيله في النظام سابقا #: model:ir.actions.act_window,name:base.action_res_partner_bank_type_form #: model:ir.ui.menu,name:base.menu_action_res_partner_bank_typeform msgid "Bank Account Types" -msgstr "" +msgstr "أنواع حسابات البنك" #. module: base #: help:ir.sequence,suffix:0 msgid "Suffix value of the record for the sequence" -msgstr "" +msgstr "قيمة لاحقة من السجل للمسلسل" #. module: base #: help:ir.mail_server,smtp_user:0 @@ -4789,7 +4794,7 @@ msgstr "" #. module: base #: field:partner.sms.send,app_id:0 msgid "API ID" -msgstr "" +msgstr "هوية API" #. module: base #: code:addons/base/ir/ir_model.py:533 @@ -4803,7 +4808,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_web_chat msgid "Web Chat" -msgstr "" +msgstr "المحادثة" #. module: base #: field:res.company,rml_footer2:0 @@ -4856,7 +4861,7 @@ msgstr "مثبَّت" #. module: base #: selection:base.language.install,lang:0 msgid "Ukrainian / українська" -msgstr "" +msgstr "الأوكرانية / українська" #. module: base #: model:res.country,name:base.sn @@ -4884,7 +4889,7 @@ msgstr "المجر" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_recruitment msgid "Recruitment Process" -msgstr "" +msgstr "عمليات التوظيف" #. module: base #: model:res.country,name:base.br @@ -4914,12 +4919,12 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_publisher_warranty_contract_wizard msgid "publisher_warranty.contract.wizard" -msgstr "" +msgstr "publisher_warranty.contract.wizard" #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (PA) / Español (PA)" -msgstr "" +msgstr "الأسبانية / Español (PA)" #. module: base #: view:res.currency:0 @@ -4950,7 +4955,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_localization msgid "Localization" -msgstr "" +msgstr "التوطين" #. module: base #: model:ir.module.module,description:base.module_sale_mrp @@ -5015,7 +5020,7 @@ msgstr "القائمة الرئيسية" #. module: base #: field:res.partner.bank,owner_name:0 msgid "Account Owner Name" -msgstr "" +msgstr "أسم صاحب الحساب" #. module: base #: field:ir.rule,perm_unlink:0 @@ -5043,7 +5048,7 @@ msgstr "فاصل الخانات العشرية" #: view:ir.module.module:0 #, python-format msgid "Install" -msgstr "" +msgstr "تثبيت" #. module: base #: model:ir.actions.act_window,help:base.action_res_groups @@ -5059,7 +5064,7 @@ msgstr "" #. module: base #: field:ir.filters,name:0 msgid "Filter Name" -msgstr "" +msgstr "اسم مرشح" #. module: base #: view:res.partner:0 @@ -5279,7 +5284,7 @@ msgstr "مونتسيرات" #. module: base #: model:ir.module.module,shortdesc:base.module_decimal_precision msgid "Decimal Precision Configuration" -msgstr "" +msgstr "إعدادت دقة الأرقام العشرية" #. module: base #: model:ir.ui.menu,name:base.menu_translation_app @@ -5551,12 +5556,12 @@ msgstr "رمز الولاية (ثلاثة حروف).\n" #. module: base #: model:res.country,name:base.sj msgid "Svalbard and Jan Mayen Islands" -msgstr "" +msgstr "جزر سفالبارد وجان ماين" #. module: base #: model:ir.module.category,name:base.module_category_hidden_test msgid "Test" -msgstr "" +msgstr "إختبار" #. module: base #: model:ir.module.module,shortdesc:base.module_web_kanban @@ -5646,7 +5651,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_accounting_and_finance msgid "Accounting & Finance" -msgstr "" +msgstr "الحسابات و المالية" #. module: base #: field:ir.actions.server,write_id:0 @@ -5674,7 +5679,7 @@ msgstr "" #: model:ir.module.category,name:base.module_category_usability #: view:res.users:0 msgid "Usability" -msgstr "" +msgstr "سهولة الاستخدام" #. module: base #: field:ir.actions.act_window,domain:0 @@ -5725,7 +5730,7 @@ msgstr "لا يمكن أن يبدأ اسم المجموعة بـ '-'" #. module: base #: view:ir.module.module:0 msgid "Apps" -msgstr "" +msgstr "تطبيقات" #. module: base #: view:ir.ui.view_sc:0 @@ -5780,13 +5785,13 @@ msgstr "مالِك الحساب المصرفي" #. module: base #: model:ir.module.category,name:base.module_category_uncategorized msgid "Uncategorized" -msgstr "" +msgstr "غير مصنف" #. module: base #: field:ir.attachment,res_name:0 #: field:ir.ui.view_sc,resource:0 msgid "Resource Name" -msgstr "" +msgstr "إسم المصدر" #. module: base #: model:ir.model,name:base.model_ir_default @@ -14996,7 +15001,7 @@ msgstr "اسم طريقة العرض" #. module: base #: model:ir.module.module,shortdesc:base.module_document_ftp msgid "Shared Repositories (FTP)" -msgstr "" +msgstr "مستودعات مشتركة (FTP)" #. module: base #: model:ir.model,name:base.model_res_groups @@ -15052,7 +15057,7 @@ msgstr "حقل المعالج" #. module: base #: help:ir.sequence,prefix:0 msgid "Prefix value of the record for the sequence" -msgstr "" +msgstr "القيمة السابقة من التسجيل للمسلسل" #. module: base #: model:res.country,name:base.sc @@ -15117,12 +15122,12 @@ msgstr "جورجيا" msgid "" "Helps you manage your manufacturing processes and generate reports on those " "processes." -msgstr "" +msgstr "يساعدك على إدارة عمليات التصنيع و إصدار تقارير عن هذه العمليات." #. module: base #: help:ir.sequence,number_increment:0 msgid "The next number of the sequence will be incremented by this number" -msgstr "" +msgstr "سيتم زيادة الرقم التالي للمسلسل بهذا الرقم" #. module: base #: code:addons/orm.py:341 @@ -15147,6 +15152,7 @@ msgid "" "Manage relations with prospects and customers using leads, opportunities, " "requests or issues." msgstr "" +"لإدارة العلاقات بين الفرصة و العميل بإستخدام الفرصة و الطلب و الإصدار." #. module: base #: selection:res.partner.address,type:0 @@ -15162,7 +15168,7 @@ msgstr "شركة" #. module: base #: model:ir.module.module,shortdesc:base.module_purchase_requisition msgid "Purchase Requisitions" -msgstr "" +msgstr "طلبات الشراء" #. module: base #: selection:ir.cron,interval_type:0 @@ -15172,7 +15178,7 @@ msgstr "شهور" #. module: base #: view:workflow.instance:0 msgid "Workflow Instances" -msgstr "" +msgstr "حالات مسار العمل" #. module: base #: code:addons/base/res/res_partner.py:284 @@ -15183,7 +15189,7 @@ msgstr "الشركاء: " #. module: base #: field:res.partner.bank,name:0 msgid "Bank Account" -msgstr "" +msgstr "حساب البنك" #. module: base #: model:res.country,name:base.kp @@ -15204,12 +15210,12 @@ msgstr "سياق" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_mrp msgid "Sales and MRP Management" -msgstr "" +msgstr "ادارة مخططات مصادر التصنيع و المبيعات" #. module: base #: model:ir.actions.act_window,name:base.action_partner_sms_send msgid "Send an SMS" -msgstr "" +msgstr "إرسال SMS" #. module: base #: model:res.partner.category,name:base.res_partner_category_1 @@ -15219,7 +15225,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 diff --git a/openerp/addons/base/i18n/bg.po b/openerp/addons/base/i18n/bg.po index b44b49136f9..49971c73f86 100644 --- a/openerp/addons/base/i18n/bg.po +++ b/openerp/addons/base/i18n/bg.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:47+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -108,6 +108,8 @@ msgid "" "Helps you manage your projects and tasks by tracking them, generating " "plannings, etc..." msgstr "" +"Помага ви да управлявате своите проекти и задачи, като ги проследяване, " +"генерирайки планиране и др .." #. module: base #: field:ir.actions.act_window,display_menu_tip:0 @@ -166,7 +168,7 @@ msgstr "" #. module: base #: field:ir.actions.act_window,target:0 msgid "Target Window" -msgstr "Прозорец цел" +msgstr "Целеви прозорец" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_analytic_plans @@ -176,7 +178,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_web_process msgid "Process" -msgstr "" +msgstr "Обработка" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate @@ -249,7 +251,7 @@ msgstr "" #. module: base #: field:ir.sequence,number_increment:0 msgid "Increment Number" -msgstr "Число за увеличаване" +msgstr "Стъпка на нарастване" #. module: base #: model:ir.actions.act_window,name:base.action_res_company_tree @@ -267,7 +269,7 @@ msgstr "" #: model:ir.module.category,name:base.module_category_sales_management #: model:ir.module.module,shortdesc:base.module_sale msgid "Sales Management" -msgstr "" +msgstr "Управление на продажби" #. module: base #: view:res.partner:0 @@ -368,12 +370,12 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_customer_relationship_management msgid "Customer Relationship Management" -msgstr "" +msgstr "Управление на връзки с клиенти" #. module: base #: view:ir.module.module:0 msgid "Extra" -msgstr "" +msgstr "Допълнителни" #. module: base #: code:addons/orm.py:2526 diff --git a/openerp/addons/base/i18n/bs.po b/openerp/addons/base/i18n/bs.po index 8b489f353b9..09e81008031 100644 --- a/openerp/addons/base/i18n/bs.po +++ b/openerp/addons/base/i18n/bs.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:46+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/ca.po b/openerp/addons/base/i18n/ca.po index e9e3c958f8f..26dd52c8873 100644 --- a/openerp/addons/base/i18n/ca.po +++ b/openerp/addons/base/i18n/ca.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:47+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/cs.po b/openerp/addons/base/i18n/cs.po index 9d7f5fd42da..8185e5917cc 100644 --- a/openerp/addons/base/i18n/cs.po +++ b/openerp/addons/base/i18n/cs.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-10 04:45+0000\n" -"X-Generator: Launchpad (build 14771)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" "X-Poedit-Language: Czech\n" #. module: base diff --git a/openerp/addons/base/i18n/da.po b/openerp/addons/base/i18n/da.po index fc56fd78eba..5436c766743 100644 --- a/openerp/addons/base/i18n/da.po +++ b/openerp/addons/base/i18n/da.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:47+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/de.po b/openerp/addons/base/i18n/de.po index 401ede6d3f9..c3860d723e1 100644 --- a/openerp/addons/base/i18n/de.po +++ b/openerp/addons/base/i18n/de.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-10 04:45+0000\n" -"X-Generator: Launchpad (build 14771)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:48+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -12171,7 +12171,7 @@ msgstr "Report Type" #: field:workflow.instance,state:0 #: field:workflow.workitem,state:0 msgid "State" -msgstr "Bundesland/Kanton/Region/Provinz" +msgstr "Status" #. module: base #: model:ir.module.module,description:base.module_hr_evaluation diff --git a/openerp/addons/base/i18n/el.po b/openerp/addons/base/i18n/el.po index eca0eba1ee5..fc78faae39f 100644 --- a/openerp/addons/base/i18n/el.po +++ b/openerp/addons/base/i18n/el.po @@ -12,8 +12,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:48+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:48+0000\n" +"X-Generator: Launchpad (build 14914)\n" "X-Poedit-Country: GREECE\n" "X-Poedit-Language: Greek\n" "X-Poedit-SourceCharset: utf-8\n" diff --git a/openerp/addons/base/i18n/en_GB.po b/openerp/addons/base/i18n/en_GB.po index 83aaa8edf8e..184c3f42bce 100644 --- a/openerp/addons/base/i18n/en_GB.po +++ b/openerp/addons/base/i18n/en_GB.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-25 05:13+0000\n" -"X-Generator: Launchpad (build 14860)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:53+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/es.po b/openerp/addons/base/i18n/es.po index 36fa343ac69..1fb91fcf744 100644 --- a/openerp/addons/base/i18n/es.po +++ b/openerp/addons/base/i18n/es.po @@ -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-02-08 00:44+0000\n" -"PO-Revision-Date: 2012-02-20 08:50+0000\n" +"PO-Revision-Date: 2012-03-12 08:10+0000\n" "Last-Translator: German Figueredo \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-02-21 05:54+0000\n" -"X-Generator: Launchpad (build 14838)\n" +"X-Launchpad-Export-Date: 2012-03-13 05:07+0000\n" +"X-Generator: Launchpad (build 14933)\n" #. module: base #: model:res.country,name:base.sh @@ -105,7 +105,7 @@ msgstr "Flujo" #. module: base #: selection:ir.sequence,implementation:0 msgid "No gap" -msgstr "" +msgstr "Sin hueco" #. module: base #: selection:base.language.install,lang:0 @@ -115,7 +115,7 @@ msgstr "Húngaro / Magyar" #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (PY) / Español (PY)" -msgstr "Español (PY) / Español (PY)" +msgstr "Español (UY) / Español (UY)" #. module: base #: model:ir.module.category,description:base.module_category_project_management @@ -203,7 +203,7 @@ msgstr "Distribución Analítica de Ventas" #. module: base #: model:ir.module.module,shortdesc:base.module_web_process msgid "Process" -msgstr "" +msgstr "Proceso" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate @@ -242,7 +242,7 @@ msgstr "ir.ui.view.custom" #: code:addons/base/ir/ir_model.py:313 #, python-format msgid "Renaming sparse field \"%s\" is not allowed" -msgstr "" +msgstr "No está permitido renombrar el campo \"%s\"" #. module: base #: model:res.country,name:base.sz @@ -370,6 +370,11 @@ msgid "" " - tree_but_open\n" "For defaults, an optional condition" msgstr "" +"Para accciones, uno de los posibles slots:\n" +" - client_action_multi\n" +" - client_print_multi\n" +" - client_action_relate\n" +" - tree_but_open" #. module: base #: sql_constraint:res.lang:0 @@ -419,7 +424,7 @@ msgstr "group_by no válido" #. module: base #: field:ir.module.category,child_ids:0 msgid "Child Applications" -msgstr "" +msgstr "Aplicaciones hijas" #. module: base #: field:res.partner,credit_limit:0 @@ -439,7 +444,7 @@ msgstr "Fecha de actualización" #. module: base #: model:ir.module.module,shortdesc:base.module_base_action_rule msgid "Automated Action Rules" -msgstr "" +msgstr "Reglas de acción automáticas" #. module: base #: view:ir.attachment:0 @@ -500,7 +505,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_pad_project msgid "Specifications on PADs" -msgstr "" +msgstr "Especificaciones en PADs" #. module: base #: help:ir.filters,user_id:0 @@ -508,6 +513,8 @@ msgid "" "The user this filter is available to. When left empty the filter is usable " "by the system only." msgstr "" +"El filtro está disponible para el usuario. Cuando se deja vacío el filtro se " +"puede utilizar por el único sistema." #. module: base #: help:res.partner,website:0 @@ -572,7 +579,7 @@ msgstr "" #. module: base #: view:ir.values:0 msgid "Action Binding" -msgstr "" +msgstr "Acción vinculada" #. module: base #: model:res.country,name:base.gf @@ -601,7 +608,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_layout msgid "Sales Orders Print Layout" -msgstr "" +msgstr "Diseño de la Impresión de Órdenes de Venta" #. module: base #: selection:base.language.install,lang:0 @@ -845,6 +852,10 @@ msgid "" "Launch Manually Once: after hacing been launched manually, it sets " "automatically to Done." msgstr "" +"Manual: Se lanza manualmente.\n" +"Automático: Se ejecuta cuando el sistema se reconfigura.\n" +"Manual una vez: después de lanzarlo manualmente, automáticamente se marca " +"como Aceptado" #. module: base #: selection:base.language.install,lang:0 @@ -924,6 +935,8 @@ msgid "" "The module adds google contact in partner address and add google calendar " "events details in Meeting" msgstr "" +"El módulo añade contacto de google en la dirección de la empresa y " +"calendario de google en las reuniones." #. module: base #: view:res.users:0 @@ -1070,6 +1083,12 @@ msgid "" "If Value type is selected, the value will be used directly without " "evaluation." msgstr "" +"Expresión que contiene una especificación de valor.\n" +"Cuando se selecciona el tipo fórmula, este campo puede ser una expresión " +"Python que puede utilizar los mismos valores para el campo de condición de " +"la acción del servidor.\n" +"Si se selecciona el tipo valor, el valor se puede utilizar directamente sin " +"evaluación." #. module: base #: model:res.country,name:base.ad @@ -1363,7 +1382,7 @@ msgstr "" #. module: base #: field:ir.module.category,parent_id:0 msgid "Parent Application" -msgstr "" +msgstr "Aplicación padre" #. module: base #: code:addons/base/res/res_users.py:222 @@ -1380,7 +1399,7 @@ msgstr "Para exportar un nuevo idioma, no seleccione un idioma." #: model:ir.module.module,shortdesc:base.module_document #: model:ir.module.module,shortdesc:base.module_knowledge msgid "Document Management System" -msgstr "" +msgstr "Gestión documental" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_claim diff --git a/openerp/addons/base/i18n/es_AR.po b/openerp/addons/base/i18n/es_AR.po index 198845ea2ea..3c38314dda2 100644 --- a/openerp/addons/base/i18n/es_AR.po +++ b/openerp/addons/base/i18n/es_AR.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-28 05:47+0000\n" -"X-Generator: Launchpad (build 14874)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:53+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/es_CL.po b/openerp/addons/base/i18n/es_CL.po index 9f432778665..27b02a5c77a 100644 --- a/openerp/addons/base/i18n/es_CL.po +++ b/openerp/addons/base/i18n/es_CL.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:54+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:53+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/es_CR.po b/openerp/addons/base/i18n/es_CR.po index e5e6a7f4e3f..bfc772fa92d 100644 --- a/openerp/addons/base/i18n/es_CR.po +++ b/openerp/addons/base/i18n/es_CR.po @@ -9,13 +9,13 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-02-08 00:44+0000\n" "PO-Revision-Date: 2012-02-10 17:23+0000\n" -"Last-Translator: Freddy Gonzalez \n" +"Last-Translator: Freddy Gonzalez \n" "Language-Team: Spanish (Costa Rica) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-11 05:06+0000\n" -"X-Generator: Launchpad (build 14771)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:54+0000\n" +"X-Generator: Launchpad (build 14914)\n" "Language: \n" #. module: base diff --git a/openerp/addons/base/i18n/es_EC.po b/openerp/addons/base/i18n/es_EC.po index dfd3f325733..040f187f0c6 100644 --- a/openerp/addons/base/i18n/es_EC.po +++ b/openerp/addons/base/i18n/es_EC.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:55+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:54+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/et.po b/openerp/addons/base/i18n/et.po index 0ad14eaff39..69e9df6728b 100644 --- a/openerp/addons/base/i18n/et.po +++ b/openerp/addons/base/i18n/et.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:47+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/eu.po b/openerp/addons/base/i18n/eu.po index f63e1b6dc4f..4cf2f03ef8b 100644 --- a/openerp/addons/base/i18n/eu.po +++ b/openerp/addons/base/i18n/eu.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:46+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/fa.po b/openerp/addons/base/i18n/fa.po index 5e55e009c97..3295cf71698 100644 --- a/openerp/addons/base/i18n/fa.po +++ b/openerp/addons/base/i18n/fa.po @@ -9,8 +9,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:51+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" "X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n" "X-Poedit-Language: Persian\n" diff --git a/openerp/addons/base/i18n/fa_AF.po b/openerp/addons/base/i18n/fa_AF.po index 2b467ff72d1..a9f1c9ebe88 100644 --- a/openerp/addons/base/i18n/fa_AF.po +++ b/openerp/addons/base/i18n/fa_AF.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:55+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:54+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/fi.po b/openerp/addons/base/i18n/fi.po index 4141bdfaa8b..45eba73ec83 100644 --- a/openerp/addons/base/i18n/fi.po +++ b/openerp/addons/base/i18n/fi.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-24 04:47+0000\n" -"X-Generator: Launchpad (build 14860)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/fr.po b/openerp/addons/base/i18n/fr.po index fee48a48733..2d17872b088 100644 --- a/openerp/addons/base/i18n/fr.po +++ b/openerp/addons/base/i18n/fr.po @@ -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-02-08 00:44+0000\n" -"PO-Revision-Date: 2012-02-22 23:42+0000\n" -"Last-Translator: t.o \n" +"PO-Revision-Date: 2012-03-12 08:58+0000\n" +"Last-Translator: Numérigraphe \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-02-24 04:47+0000\n" -"X-Generator: Launchpad (build 14860)\n" +"X-Launchpad-Export-Date: 2012-03-13 05:07+0000\n" +"X-Generator: Launchpad (build 14933)\n" #. module: base #: model:res.country,name:base.sh @@ -101,7 +101,7 @@ msgstr "Code (ex:fr__FR)" #: field:workflow.transition,wkf_id:0 #: field:workflow.workitem,wkf_id:0 msgid "Workflow" -msgstr "Flux métier" +msgstr "Workflow" #. module: base #: selection:ir.sequence,implementation:0 @@ -508,7 +508,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_pad_project msgid "Specifications on PADs" -msgstr "Spécifications relatives aux PADs" +msgstr "Spécifications sur projets" #. module: base #: help:ir.filters,user_id:0 @@ -587,7 +587,7 @@ msgstr "" #. module: base #: view:ir.values:0 msgid "Action Binding" -msgstr "" +msgstr "Action : Relier" #. module: base #: model:res.country,name:base.gf @@ -755,7 +755,7 @@ msgstr "Les champs personnalisés doivent avoir un nom commençant par 'x_' !" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_mx msgid "Mexico - Accounting" -msgstr "Comptabilité - Mexique" +msgstr "Mexique - Comptabilité" #. module: base #: help:ir.actions.server,action_id:0 @@ -870,7 +870,7 @@ msgid "" "online interface to synchronize all translations efforts." msgstr "" "Les traductions d'OpenERP (cœur, modules, clients) sont gérées sur " -"Launchpad.net, notre site de gestion de projet. Nous utilisons leur " +"Launchpad.net, le site de gestion du projet OpenERP. Nous utilisons son " "interface interactive pour synchroniser toutes les contributions à la " "traduction." @@ -971,7 +971,7 @@ msgstr "" #. module: base #: view:res.users:0 msgid "Email Preferences" -msgstr "Préférences du mail" +msgstr "Préférences de messageie électronique" #. module: base #: model:ir.module.module,description:base.module_audittrail @@ -1038,7 +1038,7 @@ msgstr "" #: model:ir.actions.act_window,name:base.action_view_base_module_upgrade #: model:ir.model,name:base.model_base_module_upgrade msgid "Module Upgrade" -msgstr "Mise à jour de module" +msgstr "Mise à jour de module(s)" #. module: base #: selection:base.language.install,lang:0 @@ -1330,7 +1330,7 @@ msgstr "" "Pour améliorer ou étendre les traductions officielles, utilisez directement " "l'interface web de Lauchpad (Rosetta). Si vous souhaitez effectuer une " "traduction globale, Launchpad permet de télécharger la totalité des fichiers " -".po en une opération." +".po en une seule opération." #. module: base #: selection:base.language.install,lang:0 @@ -2134,7 +2134,7 @@ msgstr "Parent de gauche" #. module: base #: model:ir.module.module,shortdesc:base.module_project_mrp msgid "Create Tasks on SO" -msgstr "Créer des tâches sur des commandes de vente" +msgstr "Création de tâches sur les commandes de vente" #. module: base #: field:ir.attachment,res_model:0 @@ -2286,6 +2286,46 @@ msgid "" "today don't come with any additional paid permission for online use of " "'private modules'." msgstr "" +"\n" +"Module de base pour la localisation du Brésil\n" +"==========================================\n" +"\n" +"Ce module comporte :\n" +"\n" +"- La plan comptable brésilien générique\n" +"- Las taxes brésiliennes telles que:\n" +"\n" +" - IPI\n" +" - ICMS\n" +" - PIS\n" +" - COFINS\n" +" - ISS\n" +" - IR\n" +" - IRPJ\n" +" - CSLL\n" +"\n" +"- le Code de situation fiscale (CST) requis pour la facturation fiscale " +"électronique (ENF)\n" +"\n" +"Le champ tax_discount a également été ajoutée dans les objets " +"account.tax.template et account.tax pour permettre le calcul correct de " +"certaines TVA brésiliennes tels que le ICMS. L'assistant de création du plan " +"comptable a été étendu afin de propager ces nouvelles données correctement.\n" +"\n" +"Il est important de noter cependant que ce module ne dispose de toutes les " +"implémentations à utiliser pour qu'OpenERP fonctionne bien au Brésil. Ces " +"implémentations (comme la facturation électronique fiscale qui est déjà " +"opérationnelle) sont portées par plus de 15 modules additionnels à la " +"localisation du projet brésilien (Launchpad https://launchpad.net/openerp.pt-" +"br-localiz) et de leurs dépendances dans \"extra addons branch\". Ces " +"modules respectent la remarquable modularité d'OpenERP, c'est pourquoi ils " +"sont nombreux et petits. Une des raisons du maintien de ces modules à part " +"est que les responsables de la localisation brésilienne ont besoin de " +"souplesse pour laisser les entreprises investir sur les prérequis juridiques " +"restants (tels que les livres fiscaux, la comptabilité SPED, l'exercice " +"fiscal SPED et PAF ECF qui manquent toujours en Septembre 2011). Ces modules " +"sont strictement distribués sous licence AGPL v3 et bloquent l'utilisation " +"en ligne de 'modules privés' payants." #. module: base #: view:res.request:0 @@ -2322,7 +2362,7 @@ msgstr "Site internet: " #. module: base #: model:ir.ui.menu,name:base.menu_administration msgid "Settings" -msgstr "Préférences" +msgstr "Configuration" #. module: base #: selection:ir.actions.act_window,view_type:0 @@ -2562,7 +2602,7 @@ msgstr "Description générale" #. module: base #: view:workflow.activity:0 msgid "Workflow Activity" -msgstr "Activité du flux" +msgstr "Activité du workflow" #. module: base #: model:ir.actions.act_window,help:base.action_ui_view @@ -2678,7 +2718,7 @@ msgstr "" #. module: base #: view:workflow:0 msgid "Workflow Editor" -msgstr "Editeur de Flux" +msgstr "Éditeur de workflow" #. module: base #: selection:ir.module.module,state:0 @@ -2721,6 +2761,17 @@ msgid "" "and categorize your interventions with a channel and a priority level.\n" " " msgstr "" +"\n" +"Gestion de Support (Helpdesk).\n" +"====================\n" +"\n" +"Les dossiers et le traitement des réclamations sont bien suivis et tracés " +"avec le Helpdesk.\n" +"Ce menu est plus adapté à la communication orale, ce qui n'est pas " +"nécessairement lié à une réclamation. \n" +"Sélectionnez un client, ajoutez des notes\n" +"et classez vos interventions selon le canal et un niveau de priorité.\n" +" " #. module: base #: sql_constraint:ir.ui.view_sc:0 @@ -2834,7 +2885,7 @@ msgstr "Taux actuel" #. module: base #: model:ir.module.module,shortdesc:base.module_idea msgid "Ideas" -msgstr "" +msgstr "Idées" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_crm @@ -3178,6 +3229,11 @@ msgid "" "==================================================\n" " " msgstr "" +"\n" +"Ce module ajoute un bloc de saisie à toutes les vues 'kanban' de tous les " +"projets\n" +"==================================================\n" +" " #. module: base #: model:ir.actions.act_window,help:base.action_country @@ -3224,7 +3280,7 @@ msgstr "Bengladesh" #. module: base #: model:ir.module.module,shortdesc:base.module_project_retro_planning msgid "Project Retro-planning" -msgstr "Projet rétro-planning" +msgstr "Gestion du rétro-planning sur les projets" #. module: base #: model:ir.module.module,shortdesc:base.module_stock_planning @@ -3581,7 +3637,7 @@ msgstr "Vue diagramme OpenERP web" #. module: base #: model:res.groups,name:base.group_hr_user msgid "HR Officer" -msgstr "" +msgstr "Responsable RH" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_contract @@ -3667,7 +3723,7 @@ msgid "" "Unicode) when the translator exports it." msgstr "" "Veuillez vérifier que l'encodage du fichier soit UTF-8 (également appelé " -"Unicode) lorsque le traducteur l'exporte" +"Unicode) lorsque le traducteur l'exporte." #. module: base #: selection:base.language.install,lang:0 @@ -4418,6 +4474,9 @@ msgid "" "la moneda Lempira. -- Adds accounting chart for Honduras. It also includes " "taxes and the Lempira currency" msgstr "" +"Agrega una nomenclatura contable para Honduras. También incluye impuestos y " +"la moneda Lempira. -- Adds accounting chart for Honduras. It also includes " +"taxes and the Lempira currency" #. module: base #: selection:ir.actions.act_window,view_type:0 @@ -4438,6 +4497,12 @@ msgid "" "Italian accounting chart and localization.\n" " " msgstr "" +"\n" +"Piano dei conti italiano di un'impresa generica.\n" +"================================================\n" +"\n" +"Italian accounting chart and localization.\n" +" " #. module: base #: model:res.country,name:base.me @@ -4588,7 +4653,7 @@ msgstr "Portugal" #. module: base #: model:ir.module.module,shortdesc:base.module_share msgid "Share any Document" -msgstr "Partager les documents" +msgstr "Partage de documents" #. module: base #: field:ir.module.module,certificate:0 @@ -4730,7 +4795,7 @@ msgstr "Xor" #. module: base #: model:ir.module.category,name:base.module_category_localization_account_charts msgid "Account Charts" -msgstr "" +msgstr "Plans comtables" #. module: base #: view:res.request:0 @@ -5338,7 +5403,7 @@ msgstr "" #: model:ir.ui.menu,name:base.menu_workflow #: model:ir.ui.menu,name:base.menu_workflow_root msgid "Workflows" -msgstr "Processus" +msgstr "Workflows" #. module: base #: model:ir.module.module,description:base.module_profile_tools @@ -5374,7 +5439,7 @@ msgstr "Revendeurs" #. module: base #: model:ir.module.module,shortdesc:base.module_web_uservoice msgid "Receive User Feedback" -msgstr "" +msgstr "Assistance en direct de l'utilisateur" #. module: base #: model:res.country,name:base.ls @@ -5513,6 +5578,19 @@ msgid "" "of the survey\n" " " msgstr "" +"\n" +"Ce module est utilisé pour les enquêtes, questionnaires, sondages ou " +"évaluations.\n" +"====================================================================\n" +"\n" +"Il est utilisé pour recueillir les réponses ou avis d'utilisateurs.\n" +"Une enquête peut avoir plusieurs pages. Chaque page peut contenir plusieurs " +"questions et chaque question peut recevoir des réponses multiples.\n" +"Les utilisateurs peuvent répondre aux questions de manière à réaliser un " +"sondage.\n" +"Les partenaires reçoivent un courriel avec nom d'utilisateur et mot de passe " +"comme invitation participer à l'enquête.\n" +" " #. module: base #: model:res.country,name:base.bm @@ -5555,7 +5633,7 @@ msgstr "Valeur du suffixe de l'enregistrement pour la séquence" #. module: base #: help:ir.mail_server,smtp_user:0 msgid "Optional username for SMTP authentication" -msgstr "" +msgstr "Nom d'utilisateur (facultatif) pour l'authentification SMTP" #. module: base #: model:ir.model,name:base.model_ir_actions_actions @@ -5610,12 +5688,12 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_web_chat msgid "Web Chat" -msgstr "" +msgstr "Messagerie instantannée Web" #. module: base #: field:res.company,rml_footer2:0 msgid "Bank Accounts Footer" -msgstr "" +msgstr "Pied de page des comptes bancaires" #. module: base #: model:res.country,name:base.mu @@ -5857,7 +5935,7 @@ msgstr "Nom du titulaire du compte" #. module: base #: field:ir.rule,perm_unlink:0 msgid "Apply For Delete" -msgstr "Appliquer pour supprimer" +msgstr "Applicable en suppression" #. module: base #: code:addons/base/ir/ir_model.py:359 @@ -6528,7 +6606,7 @@ msgstr "Base Kanban" #: view:ir.actions.server:0 #: view:res.request:0 msgid "Group By" -msgstr "Grouper par" +msgstr "Regrouper par" #. module: base #: view:res.config:0 @@ -6673,7 +6751,7 @@ msgstr "Valeur du domaine" #. module: base #: model:ir.module.module,shortdesc:base.module_base_module_quality msgid "Analyse Module Quality" -msgstr "Module assurance qualité" +msgstr "Assurance qualité" #. module: base #: selection:base.language.install,lang:0 @@ -6715,7 +6793,7 @@ msgstr "Le nom du groupe ne peut pas commencer par \"-\"" #. module: base #: view:ir.module.module:0 msgid "Apps" -msgstr "" +msgstr "Applications" #. module: base #: view:ir.ui.view_sc:0 @@ -6897,7 +6975,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_project_scrum msgid "Methodology: SCRUM" -msgstr "Methodologie SCRUM" +msgstr "Méthodologie SCRUM" #. module: base #: view:ir.attachment:0 @@ -6937,6 +7015,9 @@ msgid "" "If enabled, the full output of SMTP sessions will be written to the server " "log at DEBUG level(this is very verbose and may include confidential info!)" msgstr "" +"Si activé, les messages de sessions SMTP seront écrits dans le journal du " +"serveur au niveau DEBUG (ce qui est très verbeux et peut inclure des " +"informations confidentielles!)" #. module: base #: model:ir.module.module,shortdesc:base.module_base_report_creator @@ -6980,6 +7061,42 @@ msgid "" "\n" " " msgstr "" +"\n" +"Un sous-système générique de courriels avec stockage des messages et files " +"d'attente\n" +"================================================== ========\n" +"\n" +"Ce sous-système de courriel n'est pas destiné à être utilisé comme une " +"application en mode\n" +"autonome, mais à fournir une gestion unifiée des courriels que toutes les\n" +"autres applications peuvent utiliser.\n" +"\n" +"Les principales caractéristiques sont les suivantes:\n" +"\n" +" * Repose sur les serveurs globaux de courriels sortants configurés dans " +"le\n" +" Menu Administration pour la distribution des courriels sortants;\n" +" * Fournit une API pour envoyer des messages et leur archivage,\n" +" regroupés par conversation\n" +" * Tout document OpenERP peut agir comme un sujet de conversation, à " +"condition\n" +" qu'il comprenne les éléments nécessaires pour la manipulation des " +"courriels entrants\n" +" (voir la classe mail.thread pour plus de détails).\n" +" * Comprend un mécanisme de file d'attente avec ordonnanceur\n" +" configurable automatisé \n" +" * Comprend un assistant de composition de courriels générique , qui peut " +"se transformer\n" +" en un assistant de publipostage qui est capable d'interpréter\n" +" des champs de publipostage * expressions * qui seront remplacés par\n" +" des données dynamiques avant l'envoi du courriel.\n" +" Grâce à des extensions, cet assistant générique peut facilement " +"fournir des\n" +" caractéristiques avancées (voir email_template par exemple, qui ajoute " +"des modèles\n" +" de courriels à cet assistant)\n" +"\n" +" " #. module: base #: view:res.lang:0 @@ -7073,7 +7190,7 @@ msgstr "vsep" #. module: base #: model:res.widget,title:base.openerp_favorites_twitter_widget msgid "OpenERP Tweets" -msgstr "" +msgstr "Tweets OpenERP" #. module: base #: code:addons/base/module/module.py:392 @@ -7174,6 +7291,16 @@ msgid "" "using the\n" "FTP client.\n" msgstr "" +"\n" +"Il s'agit d'une interface de support FTP avec le système de gestion de " +"documents.\n" +"================================================== ==============\n" +"\n" +"Avec ce module, vous ne serait pas seulement en mesure d'accéder aux " +"documents par le biais OpenERP\n" +"mais vous aurez la possibilité de vous connecter avec eux à travers le " +"système de fichiers en utilisant un\n" +"Client FTP.\n" #. module: base #: field:ir.model.fields,size:0 @@ -7203,7 +7330,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_audittrail msgid "Audit Trail" -msgstr "" +msgstr "Rapport de l' audit" #. module: base #: model:res.country,name:base.sd @@ -7237,7 +7364,7 @@ msgstr "Menus" #. module: base #: selection:ir.actions.todo,type:0 msgid "Launch Manually Once" -msgstr "" +msgstr "Lancer manuellement une fois" #. module: base #: model:ir.module.category,name:base.module_category_hidden @@ -7262,7 +7389,7 @@ msgstr "OHADA - Comptabilité" #. module: base #: help:res.bank,bic:0 msgid "Sometimes called BIC or Swift." -msgstr "" +msgstr "Parfois appelé BIC ou Swift" #. module: base #: model:ir.module.module,description:base.module_l10n_mx @@ -7421,7 +7548,7 @@ msgstr "Cocher cette case si le partenaire est un des employés" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_profiling msgid "Customer Profiling" -msgstr "" +msgstr "Segmentation des clients" #. module: base #: model:ir.module.module,shortdesc:base.module_project_issue @@ -7457,6 +7584,8 @@ msgid "" "Please check that all your lines have %d columns.Stopped around line %d " "having %d columns." msgstr "" +"Merci de vérifier que toutes vos lignes ont %d colonnes. Arrêté vers la " +"ligne %d qui a %d colonnes." #. module: base #: field:base.language.export,advice:0 @@ -7551,7 +7680,7 @@ msgstr "Terme source" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_timesheet_sheet msgid "Timesheets Validation" -msgstr "Validation des feuilles de temps" +msgstr "Gestion des feuilles de temps" #. module: base #: model:ir.ui.menu,name:base.menu_main_pm @@ -7626,7 +7755,7 @@ msgstr "Contrat de maintenance" #: model:res.groups,name:base.group_user #: field:res.partner,employee:0 msgid "Employee" -msgstr "Employée" +msgstr "Employé" #. module: base #: field:ir.model.access,perm_create:0 @@ -7818,7 +7947,7 @@ msgstr "" "Les comptes bancaires peuvent être saisis dans l'onglet comptabilité du " "formulaire du partenaire en spécifiant le type de compte \"RIB\". Les quatre " "champs RIB standard deviendront alors obligatoires:\n" -" - code de la banque\n" +" - code banque\n" " - code guichet\n" " - numéro du compte\n" " - clé RIB \n" @@ -7890,7 +8019,7 @@ msgstr "Vendeur" #. module: base #: model:ir.module.module,shortdesc:base.module_account_accountant msgid "Accounting and Finance" -msgstr "Finance et comptabilité" +msgstr "Comptabilité et finance" #. module: base #: code:addons/base/module/module.py:429 @@ -8261,7 +8390,7 @@ msgstr "" #. module: base #: view:workflow.workitem:0 msgid "Workflow Workitems" -msgstr "Workflow Workitems" +msgstr "Tâches de Workflow" #. module: base #: model:res.country,name:base.vc @@ -9211,7 +9340,7 @@ msgstr "Dominique" #. module: base #: model:ir.module.module,shortdesc:base.module_base_module_record msgid "Record and Create Modules" -msgstr "Enregistrer et créer des modules" +msgstr "Enregistrement et création de modules" #. module: base #: model:ir.model,name:base.model_partner_sms_send @@ -9274,7 +9403,7 @@ msgstr "Routes avancées" #. module: base #: model:ir.module.module,shortdesc:base.module_pad msgid "Collaborative Pads" -msgstr "" +msgstr "Pads collaboratifs" #. module: base #: model:ir.module.module,shortdesc:base.module_account_anglo_saxon @@ -9325,6 +9454,14 @@ msgid "" "for Wiki Quality Manual.\n" " " msgstr "" +"\n" +"Modèle de manuel Qualité.\n" +"========================\n" +"\n" +"Il fournit des données de démonstration, créant ainsi un groupe de Wiki et " +"une page Wiki\n" +"pour le manuel Qualité de la société.\n" +" " #. module: base #: model:ir.actions.act_window,name:base.act_values_form_action @@ -9368,6 +9505,17 @@ msgid "" "memberships, membership products (schemes), etc.\n" " " msgstr "" +"\n" +"Ce module permet de configurer les modules liés à une association.\n" +"==============================================================\n" +"\n" +"Il installe le profil pour les associations qui aide à la gestion des " +"événements, des inscriptions, des adhésions, des licences ou cotisations, " +"etc.\n" +"\n" +"\n" +"module: la base\n" +" " #. module: base #: code:addons/orm.py:2693 @@ -9459,7 +9607,7 @@ msgstr "Mexique" #: code:addons/base/ir/ir_mail_server.py:414 #, python-format msgid "Missing SMTP Server" -msgstr "" +msgstr "Serveur SMTP manquant" #. module: base #: field:ir.attachment,name:0 @@ -9749,6 +9897,17 @@ msgid "" "* Date\n" " " msgstr "" +"Définissez des valeurs par défaut pour vos comptes analytiques\n" +"Permet de sélectionner automatiquement les comptes analytiques basés sur les " +"critères:\n" +"=====================================================================\n" +"\n" +"* produit\n" +"* partenaire\n" +"* utilisateur\n" +"* société\n" +"* date\n" +" " #. module: base #: model:res.country,name:base.ae @@ -9809,6 +9968,12 @@ msgid "" "Keep track of Wiki groups, pages, and history.\n" " " msgstr "" +"\n" +"Module de base pour gérer les documents (wiki).\n" +"==========================================\n" +"\n" +"Gardez une trace des groupes Wiki, des pages, et de l'historique.\n" +" " #. module: base #: model:ir.module.module,shortdesc:base.module_mrp_repair @@ -10273,6 +10438,39 @@ msgid "" "* Maximal difference between timesheet and attendances\n" " " msgstr "" +"\n" +"Ce module vous permet de saisir et valider les travaux réalisés sur vos " +"tâches ainsi que les heures de présence dans le même formulaire.\n" +"=============================================================================" +"======================\n" +"\n" +"Le formulaire est constitué de plusieurs onglets :\n" +"\n" +"* Le premier onglet contient la feuille de temps journalière elle même " +"divisée en 2 parties :\n" +" - la partie supérieure peut servir de pointeuse pour tracer les heures " +"de présence (pointages des entrées/sorties) des utilisateurs.\n" +" - la partie inférieure sert à l'enregistrement des tâches effectuées et " +"à leur imputation dans la comptabilité analytique.\n" +"\n" +"* Le deuxième onglet contient des vues statistiques pour vous aider à " +"analyser votre\n" +"temps ou le temps de votre équipe:\n" +" - Le temps passé par jour comparé avec les heures de présence " +"enregistrées\n" +" - Temps passé par le projet\n" +"\n" +"Ce module implémente également un processus de validation des feuilles de " +"temps complet:\n" +" - Feuille de temps créée et remplie par l'utilisateur\n" +" - Confirmation à la fin de la période par l'utilisateur\n" +" - Validation par le responsable\n" +"\n" +"La période de validation peut être configurée pour la société:\n" +" - Durée de période (jour, semaine, mois, année)\n" +" - Différence maximale entre le temps saisi dans la feuille de temps et " +"les heures de présence\n" +" " #. module: base #: model:res.country,name:base.bn @@ -10319,7 +10517,7 @@ msgstr "Date de création" #. module: base #: help:ir.actions.server,trigger_name:0 msgid "The workflow signal to trigger" -msgstr "" +msgstr "Le signal de workflow à déclencher" #. module: base #: model:ir.module.module,description:base.module_mrp @@ -10418,12 +10616,12 @@ msgstr "Modèles" #: code:addons/base/ir/ir_cron.py:292 #, python-format msgid "Record cannot be modified right now" -msgstr "" +msgstr "L'enregistrement ne peut pas être modifié en ce moment" #. module: base #: selection:ir.actions.todo,type:0 msgid "Launch Manually" -msgstr "" +msgstr "Lancer manuellement" #. module: base #: model:res.country,name:base.be @@ -10433,7 +10631,7 @@ msgstr "Belgique" #. module: base #: view:res.company:0 msgid "Preview Header" -msgstr "" +msgstr "Pré-visualiser l'en-tête" #. module: base #: field:res.company,paper_format:0 @@ -10468,7 +10666,7 @@ msgstr "Sociétés" #. module: base #: help:res.currency,symbol:0 msgid "Currency sign, to be used when printing amounts." -msgstr "" +msgstr "Signe de la devise, utilisé lors de l'impression des montants" #. module: base #: view:res.lang:0 @@ -10482,6 +10680,8 @@ msgid "" "Your server does not seem to support SSL, you may want to try STARTTLS " "instead" msgstr "" +"Votre serveur ne semble pas prendre en charge le SSL, vous pouvez essayer " +"de STARTTLS à la lace" #. module: base #: model:ir.model,name:base.model_res_widget @@ -10511,7 +10711,7 @@ msgstr "Ordonnancement en Juste-à-Temps" #. module: base #: model:ir.module.module,shortdesc:base.module_account_bank_statement_extensions msgid "Bank Statement extensions to support e-banking" -msgstr "" +msgstr "Extension de relevé bancaire supportant le e-banking" #. module: base #: view:ir.actions.server:0 @@ -10663,6 +10863,13 @@ msgid "" "This module is the base module for other multi-company modules.\n" " " msgstr "" +"\n" +"Ce module permet de gérer un environnement multi-sociétés.\n" +"================================================== =====\n" +"\n" +"Ce module est le module de base pour le fonctionnement d'autres modules " +"multi-sociétés.\n" +" " #. module: base #: sql_constraint:res.currency:0 @@ -10710,6 +10917,49 @@ msgid "" "mail. \n" " " msgstr "" +"\n" +"Récupérer des courriels entrants sur des serveurs POP / IMAP\n" +"=================================================\n" +"\n" +"Entrez les paramètres de votre (vos) compte(s) POP / IMAP, et tous les " +"courriels entrants\n" +"de ces comptes seront automatiquement téléchargés dans votre système " +"OpenERP.\n" +"Tous les serveurs compatible POP3/IMAP sont pris en charge , y compris ceux\n" +"qui nécessitent une connexion cryptée SSL / TLS.\n" +"\n" +"Ce module peut être utilisé pour créer facilement des workflows à partir des " +"courriels pour un\n" +"grand nombre de documents OpenERP, tels que:\n" +"\n" +" * CRM : Pistes et opportunités\n" +" * CRM : Réclamations\n" +" * Incidents (projets)\n" +" * Tâches de projet\n" +" * Recrutements de candidats (gestion des ressources humaines)\n" +" * etc.\n" +"\n" +"Il suffit d'installer l'application correspondante, et vous pouvez assigner " +"n'importe quel\n" +"type de documents (pistes, incidents liés au projet, etc) à un comptes de " +"messagerie\n" +"entrant (ex : jobs@masociete.com). Les nouveaux courriels vont " +"automatiquement générer\n" +"de nouveaux documents du type choisi dans OpenERP.\n" +"\n" +"Il est nécessaire de créer une boîte aux lettres pour permettre " +"l'intégration par OpenERP. \n" +"Encore mieux: ces documents agissent directement en tant que\n" +"mini-conversations synchronisées par courriel. Vous pouvez répondre à partir " +"d'OpenERP,\n" +"et les réponses seront automatiquement associées et quand\n" +"elles reviennent attachées à la discussion.\n" +"\n" +"Pour des besoins plus spécifiques, vous pouvez également attribuer des " +"actions définies sur mesure\n" +"(techniquement: Actions du serveur) pouvant être déclenchées par chaque " +"courriel entrant. \n" +" " #. module: base #: help:ir.actions.server,email:0 @@ -10729,6 +10979,9 @@ msgid "" " OpenERP Web example module.\n" " " msgstr "" +"\n" +" Module exemple OpenERP Web .\n" +" " #. module: base #: model:res.country,name:base.gy @@ -10844,6 +11097,12 @@ msgid "" "- SSL/TLS: SMTP sessions are encrypted with SSL/TLS through a dedicated port " "(default: 465)" msgstr "" +"Choisissez la méthode de chiffrement pour la connexion:\n" +"- Aucun : les sessions SMTP sont faites en clair.\n" +"- TLS (STARTTLS) : le chiffrement TLS est demandé au début de la session " +"SMTP (recommandé)\n" +"- SSL /TLS : les sessions SMTP sont cryptées avec SSL / TLS par le biais " +"d'un port dédié (par défaut: 465)" #. module: base #: view:ir.model:0 @@ -10866,12 +11125,12 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_base_synchro msgid "Multi-DB Synchronization" -msgstr "" +msgstr "Synchronisation multi-BDD" #. module: base #: selection:ir.module.module,complexity:0 msgid "Expert" -msgstr "" +msgstr "Expert" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_holidays @@ -10891,7 +11150,7 @@ msgstr "Gestion des congés" #: view:res.partner.address:0 #: view:workflow.activity:0 msgid "Group By..." -msgstr "Grouper par..." +msgstr "Regrouper par..." #. module: base #: view:ir.model.fields:0 @@ -10907,6 +11166,9 @@ msgid "" "Todo list for CRM leads and opportunities.\n" " " msgstr "" +"\n" +"Todo list pour les pistes et opportunités.\n" +" " #. module: base #: field:ir.actions.act_window.view,view_id:0 @@ -10965,6 +11227,13 @@ msgid "" "outlook, Sunbird, ical, ...\n" " " msgstr "" +"\n" +"Permet de synchroniser les calendriers avec d'autres applications.\n" +"========================================================\n" +"\n" +"Vous permettra de synchroniser vos calendriers OpenERP avec votre " +"téléphone, Outlook, Sunbird, iCal, ...\n" +" " #. module: base #: model:res.country,name:base.lr @@ -11054,7 +11323,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_google_map msgid "Google Maps on Customers" -msgstr "" +msgstr "Clients sur Google Maps" #. module: base #: model:ir.actions.report.xml,name:base.preview_report @@ -11169,12 +11438,12 @@ msgstr "Campagne marketing - Démo" #. module: base #: model:ir.module.module,shortdesc:base.module_fetchmail_hr_recruitment msgid "eMail Gateway for Applicants" -msgstr "" +msgstr "Passerelle de courriels pour les candidats" #. module: base #: model:ir.module.module,shortdesc:base.module_account_coda msgid "Belgium - Import bank CODA statements" -msgstr "" +msgstr "Belgique - Import des relevés de banque CODA" #. module: base #: field:ir.cron,interval_type:0 @@ -11196,7 +11465,7 @@ msgstr "La méthode n'existe plus" #. module: base #: model:ir.module.module,shortdesc:base.module_import_google msgid "Google Import" -msgstr "" +msgstr "Import Google" #. module: base #: model:res.partner.category,name:base.res_partner_category_12 @@ -11242,12 +11511,12 @@ msgstr "" #. module: base #: help:ir.model.data,res_id:0 msgid "ID of the target record in the database" -msgstr "" +msgstr "ID de l'enregistrement cible dans la base de données" #. module: base #: model:ir.module.module,shortdesc:base.module_account_analytic_analysis msgid "Contracts Management" -msgstr "" +msgstr "Gestion des contrats" #. module: base #: selection:base.language.install,lang:0 @@ -11272,7 +11541,7 @@ msgstr "À faire" #. module: base #: model:ir.module.module,shortdesc:base.module_product_visible_discount msgid "Prices Visible Discounts" -msgstr "" +msgstr "Prix ​​avec remises visibles" #. module: base #: field:ir.attachment,datas:0 @@ -11360,12 +11629,12 @@ msgstr "Nom du service" #. module: base #: model:ir.module.module,shortdesc:base.module_import_base msgid "Framework for complex import" -msgstr "" +msgstr "Système pour les imports complexes" #. module: base #: view:ir.actions.todo.category:0 msgid "Wizard Category" -msgstr "" +msgstr "Catégorie d'assistant" #. module: base #: model:ir.module.module,description:base.module_account_cancel @@ -11378,6 +11647,22 @@ msgid "" "journal. If set to true it allows user to cancel entries & invoices.\n" " " msgstr "" +"\n" +"Module permettant d'annuler les écritures comptables.\n" +"==============================================\n" +"\n" +"Ce module ajoute une case à cocher sur le formulaire du journal qui " +"permet,quand elle est cochée, l'annulation des écritures.\n" +"\n" +"L'utilisateur peut ainsi annuler les écritures liées aux factures et ainsi " +"supprimer les factures. \n" +"\n" +"Attention :\n" +"- Sans modification de la séquence des factures, cette annulation induit un " +"\"trou\" dans la numérotation des factures ;\n" +"- Suivant les règles comptables du pays, cette annulation peut ne pas être " +"autorisée.\n" +" " #. module: base #: model:ir.actions.act_window,name:base.action_rule @@ -11410,6 +11695,11 @@ msgid "" "\n" "Adds a Claim link to the delivery order.\n" msgstr "" +"\n" +"Créer une réclamation à partir d'un bon de livraison.\n" +"=====================================\n" +"\n" +"Ajoute un lien réclamation au bon de livraison.\n" #. module: base #: view:ir.model:0 @@ -11486,6 +11776,12 @@ msgid "" "Provide Templates for Chart of Accounts, Taxes for Uruguay\n" "\n" msgstr "" +"\n" +"Plan Comptable Général\n" +"=========================\n" +"\n" +"Fournit des modèles pour le plan de comptes, et impôts pour l'Uruguay\n" +"\n" #. module: base #: help:res.company,bank_ids:0 @@ -11514,6 +11810,8 @@ msgstr "Terminé" msgid "" "Specify if missed occurrences should be executed when the server restarts." msgstr "" +"Défini si les occurrences manquées doivent être exécutées lorsque le serveur " +"redémarre." #. module: base #: model:res.partner.title,name:base.res_partner_title_miss @@ -11581,6 +11879,12 @@ msgid "" "\n" "Using this you can directly open Google Map from the URL widget." msgstr "" +"\n" +"Ce module ajoute un champ Google Map à l'adresse du partenaire.\n" +"================================================== ==\n" +"\n" +"Vous pouvez ainsi ouvrir directement la carte Google à partir de l'adresse " +"URL." #. module: base #: field:workflow.activity,action:0 @@ -11602,6 +11906,19 @@ msgid "" " http://files.me.com/nbessi/06n92k.mov\n" " " msgstr "" +"\n" +"Exemples destinés au moteur de rapports Webkit (module report_webkit ).\n" +"============================================================\n" +"\n" +"Un exemple de rapport (facture) est inclus dans ce module, ainsi qu'un " +"assistant pour\n" +"ajouter des entrées Webkit sur ​​n'importe quel document dans le système.\n" +"\n" +"Vous devez créer des boutons d'impression pour appeler cet assistant. Pour " +"de plus amples détails, voir:\n" +"\n" +"http://files.me.com/nbessi/06n92k.mov\n" +" " #. module: base #: selection:base.language.install,lang:0 @@ -11689,7 +12006,7 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_ir_actions_todo_category msgid "Configuration Wizard Category" -msgstr "" +msgstr "Catégorie d'assistant de configuration" #. module: base #: view:base.module.update:0 @@ -11726,6 +12043,15 @@ msgid "" "accounts with a single statement.\n" " " msgstr "" +"\n" +"Ce module installe la base pour les comptes bancaires IBAN (International " +"Bank Account Number) et vérifie leur validité.\n" +"\n" +"=============================================================================" +"======================================\n" +"Extraction les comptes nationaux correctement saisis à partir des codes " +"IBAN avec une seule instruction.\n" +" " #. module: base #: model:ir.model,name:base.model_ir_mail_server @@ -11745,6 +12071,13 @@ msgid "" "the bounds of global ones. The first group rules restrict further than " "global rules, but any additional group rule will add more permissions" msgstr "" +"Les règles globales (non spécifiques à un groupe) sont restrictives et ne " +"peuvent pas être contournées. \r\n" +"Les règles propres à un groupe permettent d'accorder des autorisations " +"supplémentaires, mais elles sont limitées par celles définies au niveau " +"globale. Les règles du premier groupe sont plus restrictives que les règles " +"globales, mais n'importe quel groupe de règles supplémentaire va ajouter " +"plus d'autorisations." #. module: base #: field:res.currency.rate,rate:0 @@ -11787,6 +12120,12 @@ msgid "" "Thai accounting chart and localization.\n" " " msgstr "" +"\n" +"Plan comptable pour la Thaïlande.\n" +"===============================\n" +"\n" +"Plan comptable Thai et sa localisation.\n" +" " #. module: base #: model:res.country,name:base.kn @@ -11857,6 +12196,8 @@ msgid "" "Checked if this is an OpenERP Publisher's Warranty contract (versus older " "contract types" msgstr "" +"Coché si c'est un contrat de garantie de l'éditeur OpenERP (par opposition " +"aux anciens types de contrats)" #. module: base #: field:ir.model.fields,model:0 @@ -11965,7 +12306,7 @@ msgstr "Ou" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_br msgid "Brazilian - Accounting" -msgstr "" +msgstr "Brésil - Comptabilité" #. module: base #: model:res.country,name:base.pk @@ -11996,6 +12337,10 @@ msgid "" "Level of difficulty of module. Easy: intuitive and easy to use for everyone. " "Normal: easy to use for business experts. Expert: requires technical skills." msgstr "" +"Niveau de difficulté des modules : \r\n" +" - Facile : intuitif et facile à utiliser pour tout le monde.\r\n" +" - Normal : facile à utiliser pour les experts métiers.\r\n" +" - Expert : nécessite des compétences techniques." #. module: base #: code:addons/base/res/res_lang.py:191 @@ -12099,7 +12444,7 @@ msgstr "Action page d'accueil" #. module: base #: model:ir.module.module,shortdesc:base.module_event_project msgid "Retro-Planning on Events" -msgstr "" +msgstr "Rétro-planning des événements" #. module: base #: code:addons/custom.py:555 @@ -12143,6 +12488,8 @@ msgstr "" msgid "" "2. Group-specific rules are combined together with a logical OR operator" msgstr "" +"2. Règles spécifiques au groupe combinées ensemble avec un opérateur logique " +"OU" #. module: base #: model:res.partner.category,name:base.res_partner_category_woodsuppliers0 @@ -12172,7 +12519,7 @@ msgstr "Tout arrêter" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_user_function msgid "Jobs on Contracts" -msgstr "" +msgstr "Fonctions des utilisateurs" #. module: base #: model:ir.module.module,description:base.module_import_sugarcrm @@ -12523,7 +12870,7 @@ msgstr "ir.wizard.screen" #. module: base #: model:ir.model,name:base.model_workflow msgid "workflow" -msgstr "processus" +msgstr "workflow" #. module: base #: code:addons/base/ir/ir_model.py:255 @@ -12567,6 +12914,16 @@ msgid "" "it to all the users.\n" " " msgstr "" +"\n" +"Ce module fournit la possibilité d'envoyer des messages au sein d'un " +"projet.\n" +"================================================================\n" +"\n" +"Un utilisateur peut envoyer des messages individuels à d'autres " +"utilisateurs.\n" +"En ne précisant aucun destinataire particulier, il peut aussi les diffuser à " +"tous les utilisateurs.\n" +" " #. module: base #: model:ir.module.module,shortdesc:base.module_hr @@ -13092,7 +13449,7 @@ msgstr "Guatemala - Comptabilité" #. module: base #: help:ir.cron,args:0 msgid "Arguments to be passed to the method, e.g. (uid,)." -msgstr "" +msgstr "Arguments à transmettre à la méthode, par exemple (uid,)." #. module: base #: model:res.partner.category,name:base.res_partner_category_5 @@ -13451,7 +13808,7 @@ msgstr "Costa Rica" #. module: base #: model:ir.module.module,shortdesc:base.module_base_module_doc_rst msgid "Generate Docs of Modules" -msgstr "Génère la documentation des modules" +msgstr "Documentation des modules" #. module: base #: model:res.company,overdue_msg:base.main_company @@ -13561,7 +13918,7 @@ msgstr "" #. module: base #: view:ir.rule:0 msgid "Rule definition (domain filter)" -msgstr "" +msgstr "Définition de la règle (filtre du domaine)" #. module: base #: model:ir.model,name:base.model_workflow_instance @@ -13660,7 +14017,7 @@ msgstr "Objets bas niveau" #. module: base #: help:ir.values,model:0 msgid "Model to which this entry applies" -msgstr "" +msgstr "Modèle sur lequel cette saisie s'applique" #. module: base #: field:res.country,address_format:0 @@ -13697,12 +14054,12 @@ msgstr "" #: view:ir.model.data:0 #: model:ir.ui.menu,name:base.ir_model_data_menu msgid "External Identifiers" -msgstr "" +msgstr "Identifiants externes" #. module: base #: model:res.groups,name:base.group_sale_salesman msgid "User - Own Leads Only" -msgstr "" +msgstr "Utilisateur - propres pistes" #. module: base #: model:res.country,name:base.cd @@ -13811,6 +14168,9 @@ msgid "" " OpenERP Web kanban view.\n" " " msgstr "" +"\n" +" vue kanban OpenERP Web.\n" +" " #. module: base #: model:ir.ui.menu,name:base.menu_project_management_time_tracking @@ -14165,7 +14525,7 @@ msgstr "" #. module: base #: field:ir.values,model_id:0 msgid "Model (change only)" -msgstr "" +msgstr "Modèle (modifier seulement)" #. module: base #: model:ir.module.module,description:base.module_marketing_campaign_crm_demo @@ -14228,6 +14588,8 @@ msgid "" "The object that should receive the workflow signal (must have an associated " "workflow)" msgstr "" +"L'objet qui doit recevoir le signal du workflow (doit avoir un workflow " +"associé)" #. module: base #: model:ir.module.category,description:base.module_category_account_voucher @@ -14749,7 +15111,7 @@ msgstr "Grèce" #. module: base #: model:ir.module.module,shortdesc:base.module_web_calendar msgid "web calendar" -msgstr "" +msgstr "calendrier web" #. module: base #: field:ir.model.data,name:0 @@ -14771,7 +15133,7 @@ msgstr "Les règles ne sont pas compatibles avec les objets osv_memory !" #: model:ir.module.module,shortdesc:base.module_event #: model:ir.ui.menu,name:base.menu_event_main msgid "Events Organisation" -msgstr "Organisation des evènements" +msgstr "Organisation d'évènements" #. module: base #: model:ir.actions.act_window,name:base.ir_sequence_actions @@ -14906,7 +15268,7 @@ msgstr "L'activité de destination" #. module: base #: model:ir.module.module,shortdesc:base.module_account_check_writing msgid "Check writing" -msgstr "Impression du chèque" +msgstr "Impression de chèques" #. module: base #: model:ir.module.module,description:base.module_sale_layout @@ -15401,6 +15763,8 @@ msgstr "Et" msgid "" "Database identifier of the record to which this applies. 0 = for all records" msgstr "" +"Identifiant de la base de données de l'enregistrement auquel cela " +"s'applique. = 0 pour tous les enregistrements" #. module: base #: field:ir.model.fields,relation:0 @@ -15614,8 +15978,8 @@ msgid "" "Supported file formats: *.csv (Comma-separated values) or *.po (GetText " "Portable Objects)" msgstr "" -"Formats de fichier supportés: *.csv (Valeur séparé par des virgules) ou *.po " -"(Objet portable GetText)" +"Formats de fichier supportés: *.csv (valeurs séparées par des virgules) ou " +"*.po (objets portables GetText)" #. module: base #: code:addons/base/ir/ir_model.py:534 @@ -15916,7 +16280,7 @@ msgstr "Avertissement" #. module: base #: model:ir.module.module,shortdesc:base.module_edi msgid "Electronic Data Interchange (EDI)" -msgstr "Electronic Data Interchange (EDI)" +msgstr "Échange de Données Informatisées (EDI)" #. module: base #: model:ir.module.category,name:base.module_category_tools @@ -16181,7 +16545,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_plugin_thunderbird msgid "Thunderbird Plug-In" -msgstr "Module pour Thunderbird" +msgstr "Extension pour Thunderbird" #. module: base #: model:ir.model,name:base.model_res_country @@ -16598,7 +16962,7 @@ msgstr "Mois" #. module: base #: view:workflow.instance:0 msgid "Workflow Instances" -msgstr "Instances du processus" +msgstr "Instances de workflow" #. module: base #: code:addons/base/res/res_partner.py:284 @@ -16630,7 +16994,7 @@ msgstr "Contexte" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_mrp msgid "Sales and MRP Management" -msgstr "" +msgstr "Module de gestion des ventes et du MRP" #. module: base #: model:ir.actions.act_window,name:base.action_partner_sms_send @@ -16645,7 +17009,7 @@ msgstr "Prospect" #. module: base #: model:ir.module.module,shortdesc:base.module_stock_invoice_directly msgid "Invoice Picking Directly" -msgstr "" +msgstr "Facturer directement le prélèvement" #. module: base #: selection:base.language.install,lang:0 @@ -16744,6 +17108,30 @@ msgid "" "module.\n" " " msgstr "" +"\n" +"Module de génération de modules sans développement.\n" +"======================================================================\n" +"\n" +"Il enregistre toutes les opérations sur les objets lors de leur " +"configuration et génère un module .ZIP. Ceci permet de créer un module " +"directement à partir du client OpenERP.\n" +"\n" +"Cette version fonctionne pour créer et mettre à jour des enregistrements " +"existants. Elle recalcule les dépendances et les relie avec tous les types " +"de composants graphiques (many2one, many2many, ...).\n" +"Elles supporte aussi les workflows, les données de démonstration et les " +"données de mise à jour.\n" +"\n" +"Ceci devrait vous aider à créer facilement des modules publiables et " +"réutilisables pour adapter des configurations et des données de " +"test/démonstration.\n" +"\n" +"Mode d'emploi :\n" +"Lancer Administration/Customization/Module Creation/Export Customizations " +"comme assistant de module.\n" +"Sélectionner le critère datetime of recording et les objets à enregistrer " +"puis enregistrer le module.\n" +" " #. module: base #: selection:base.language.install,lang:0 diff --git a/openerp/addons/base/i18n/gl.po b/openerp/addons/base/i18n/gl.po index e166e224d57..2ab21d7f7c7 100644 --- a/openerp/addons/base/i18n/gl.po +++ b/openerp/addons/base/i18n/gl.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:48+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:48+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/gu.po b/openerp/addons/base/i18n/gu.po index 7b33dfce401..934f47b2e60 100644 --- a/openerp/addons/base/i18n/gu.po +++ b/openerp/addons/base/i18n/gu.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-server\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:44+0000\n" -"PO-Revision-Date: 2012-02-19 15:41+0000\n" +"PO-Revision-Date: 2012-03-09 06:40+0000\n" "Last-Translator: Serpent Consulting Services \n" "Language-Team: Gujarati \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-20 05:39+0000\n" -"X-Generator: Launchpad (build 14833)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:48+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -169,7 +169,7 @@ msgstr "સંદર્ભ" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_be_invoice_bba msgid "Belgium - Structured Communication" -msgstr "" +msgstr "બેલ્જીયમ - સંરચિત સંચાર" #. module: base #: field:ir.actions.act_window,target:0 @@ -179,7 +179,7 @@ msgstr "લક્ષ્યાંક વિન્ડો" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_analytic_plans msgid "Sales Analytic Distribution" -msgstr "" +msgstr "વેંચાણ વિશ્લેષણાત્મક વર્ગીકરણ" #. module: base #: model:ir.module.module,shortdesc:base.module_web_process @@ -189,7 +189,7 @@ msgstr "પ્રક્રિયા" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate msgid "Billing Rates on Contracts" -msgstr "" +msgstr "કરાર પર ના બિલ માટે ના દર" #. module: base #: code:addons/base/res/res_users.py:558 @@ -222,7 +222,7 @@ msgstr "ir.ui.view.custom" #: code:addons/base/ir/ir_model.py:313 #, python-format msgid "Renaming sparse field \"%s\" is not allowed" -msgstr "" +msgstr "સ્પાર્સ ફિલ્ડ \"%s\" નુ નામ બદલવુ માન્ય નથી." #. module: base #: model:res.country,name:base.sz @@ -238,12 +238,12 @@ msgstr "સર્જન કર્યુ." #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_tr msgid "Turkey - Accounting" -msgstr "" +msgstr "તુર્કી - નામા પધ્ધ્તી" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp_subproduct msgid "MRP Subproducts" -msgstr "" +msgstr "એમ.આર.પી. પેટા-ઉત્પાદનો" #. module: base #: code:addons/base/module/module.py:390 @@ -277,7 +277,7 @@ msgstr "ઇનુક્રિટૂત / ᐃᓄᒃᑎᑐᑦ" #: model:ir.module.category,name:base.module_category_sales_management #: model:ir.module.module,shortdesc:base.module_sale msgid "Sales Management" -msgstr "" +msgstr "વેચાણ વ્યવસ્થા" #. module: base #: view:res.partner:0 @@ -321,7 +321,7 @@ msgstr "મહત્તમ પરિમાણ" #: model:ir.ui.menu,name:base.next_id_73 #: model:ir.ui.menu,name:base.reporting_menu msgid "Reporting" -msgstr "" +msgstr "અહેવાલીકરણ" #. module: base #: view:res.partner:0 @@ -699,7 +699,7 @@ msgstr "" #. module: base #: help:ir.actions.server,action_id:0 msgid "Select the Action Window, Report, Wizard to be executed." -msgstr "" +msgstr "ચલિત કરવા માટે ની એકશન વિન્ડો, અહેવાલ(રિપોર્ટ) કે વિઝાર્ડ પસંદ કરો." #. module: base #: model:res.country,name:base.ai @@ -709,7 +709,7 @@ msgstr "" #. module: base #: view:base.language.export:0 msgid "Export done" -msgstr "" +msgstr "નિકાસ સંપુર્ણ" #. module: base #: model:ir.module.module,shortdesc:base.module_plugin_outlook @@ -720,23 +720,23 @@ msgstr "" #: view:ir.model:0 #: field:ir.model,name:0 msgid "Model Description" -msgstr "" +msgstr "મોડેલ નુ વર્ણન" #. module: base #: help:ir.actions.act_window,src_model:0 msgid "" "Optional model name of the objects on which this action should be visible" -msgstr "" +msgstr "ઓબ્જેક્ટ્સ ન મોડેલ નુ ગૌણ નામ કે જેના પર આ એકશન દ્રશ્યમાન થવુ જોઇયે." #. module: base #: field:workflow.transition,trigger_expr_id:0 msgid "Trigger Expression" -msgstr "" +msgstr "સમીકરણ(એક્સપ્રેશન) ચલિત કરવુ" #. module: base #: model:res.country,name:base.jo msgid "Jordan" -msgstr "" +msgstr "જોર્ડન" #. module: base #: help:ir.cron,nextcall:0 @@ -752,7 +752,7 @@ msgstr "" #. module: base #: model:res.country,name:base.er msgid "Eritrea" -msgstr "" +msgstr "એરિટ્રીયા" #. module: base #: sql_constraint:res.company:0 @@ -769,7 +769,7 @@ msgstr "વર્ણન" #: model:ir.ui.menu,name:base.menu_base_action_rule #: model:ir.ui.menu,name:base.menu_base_action_rule_admin msgid "Automated Actions" -msgstr "" +msgstr "સ્વયંચાલિતકાર્યો(એકશન્સ)" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_ro @@ -779,7 +779,7 @@ msgstr "" #. module: base #: view:partner.wizard.ean.check:0 msgid "Want to check Ean ? " -msgstr "" +msgstr "ઈ.એ.એન(EAN) સંકેત ચેક કરાવવુ છે? " #. module: base #: help:ir.actions.server,mobile:0 @@ -801,6 +801,9 @@ msgid "" "Launchpad.net, our open source project management facility. We use their " "online interface to synchronize all translations efforts." msgstr "" +"ઓપન ઈ આર પી ભાષાંતરો(કેન્દ્ર્ભુત,મોડ્યુલો,ક્લાઈન્ટ્સ) Launchpad.net વડે " +"સંચાલિત છે, કે જે અમારી ઓપન સોર્સ પ્રોજેક્ટ સંચાલન સુવિધા છે. બધાજ ભાષાંતરો " +"ના પ્રયત્નો ને સમકાલીન કરવા માટે અમે તેનુ ઓનલાઈન ઇન્ટરફેસ વાપરીયે છે." #. module: base #: help:ir.actions.todo,type:0 @@ -814,22 +817,22 @@ msgstr "" #. module: base #: selection:base.language.install,lang:0 msgid "Swedish / svenska" -msgstr "" +msgstr "સ્વિડીશ / svenska" #. module: base #: model:res.country,name:base.rs msgid "Serbia" -msgstr "" +msgstr "સર્બિયા" #. module: base #: selection:ir.translation,type:0 msgid "Wizard View" -msgstr "" +msgstr "વિઝાર્ડ નુ દ્રશ્ય" #. module: base #: model:res.country,name:base.kh msgid "Cambodia, Kingdom of" -msgstr "" +msgstr "કંબોડિયા, નુ રાજ્ય" #. module: base #: field:base.language.import,overwrite:0 @@ -840,7 +843,7 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_base_language_import msgid "Language Import" -msgstr "" +msgstr "ભાષા આયાત" #. module: base #: help:ir.cron,interval_number:0 @@ -850,17 +853,17 @@ msgstr "" #. module: base #: selection:base.language.install,lang:0 msgid "Albanian / Shqip" -msgstr "" +msgstr "અલ્બેનિયન / Shqip" #. module: base #: model:ir.ui.menu,name:base.menu_crm_config_opportunity msgid "Opportunities" -msgstr "" +msgstr "તકો" #. module: base #: model:ir.model,name:base.model_base_language_export msgid "base.language.export" -msgstr "" +msgstr "base.language.export" #. module: base #: help:ir.actions.server,write_id:0 @@ -873,6 +876,8 @@ msgstr "" #: help:ir.actions.report.xml,report_type:0 msgid "Report Type, e.g. pdf, html, raw, sxw, odt, html2html, mako2html, ..." msgstr "" +"અહેવાલ પ્રકાર, ઉદાહરણ તરીકે pdf, html, raw, sxw, odt, html2html, mako2html, " +"..." #. module: base #: model:ir.module.module,shortdesc:base.module_document_webdav @@ -908,27 +913,27 @@ msgstr "" #. module: base #: model:res.partner.category,name:base.res_partner_category_4 msgid "Basic Partner" -msgstr "" +msgstr "સામાન્ય ભાગીદાર" #. module: base #: report:ir.module.reference.graph:0 msgid "," -msgstr "" +msgstr "," #. module: base #: view:res.partner:0 msgid "My Partners" -msgstr "" +msgstr "મારા ભાગીદારો" #. module: base #: view:ir.actions.report.xml:0 msgid "XML Report" -msgstr "" +msgstr "એક્સ.એમ.એલ(XML) અહેવાલ" #. module: base #: model:res.country,name:base.es msgid "Spain" -msgstr "" +msgstr "સ્પેન" #. module: base #: view:base.module.update:0 @@ -940,28 +945,30 @@ msgstr "" msgid "" "Optional domain filtering of the destination data, as a Python expression" msgstr "" +"ગૌણ શરતી ક્ષેત્ર(ડોમેઈન) કે જે લક્ષ્યાંક માહિતી(ડેટા) ને ફિલ્ટર કરે છે, " +"પાયથન સમીકરણ તરીકે." #. module: base #: model:ir.actions.act_window,name:base.action_view_base_module_upgrade #: model:ir.model,name:base.model_base_module_upgrade msgid "Module Upgrade" -msgstr "" +msgstr "મોડ્યુલ અદ્યતનીકરણ" #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (UY) / Español (UY)" -msgstr "" +msgstr "સ્પેનિશ (UY) / Español (UY)" #. module: base #: field:res.partner,mobile:0 #: field:res.partner.address,mobile:0 msgid "Mobile" -msgstr "" +msgstr "મોબાઇલ" #. module: base #: model:res.country,name:base.om msgid "Oman" -msgstr "" +msgstr "ઓમાન" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp @@ -976,7 +983,7 @@ msgstr "" #. module: base #: model:res.country,name:base.nu msgid "Niue" -msgstr "" +msgstr "ન્યુએઇ" #. module: base #: model:ir.module.module,shortdesc:base.module_membership @@ -986,24 +993,24 @@ msgstr "" #. module: base #: selection:ir.module.module,license:0 msgid "Other OSI Approved Licence" -msgstr "" +msgstr "બીજુ ઓ.એસ.આઇ(OSI) માન્ય લાઇસન્સ" #. module: base #: model:ir.actions.act_window,name:base.act_menu_create #: view:wizard.ir.model.menu.create:0 msgid "Create Menu" -msgstr "" +msgstr "મેનુ સર્જન" #. module: base #: model:res.country,name:base.in msgid "India" -msgstr "" +msgstr "ભારત" #. module: base #: model:ir.actions.act_window,name:base.res_request_link-act #: model:ir.ui.menu,name:base.menu_res_request_link_act msgid "Request Reference Types" -msgstr "" +msgstr "વિનંતી સંદર્ભ પ્રકારો" #. module: base #: model:ir.module.module,shortdesc:base.module_google_base_account @@ -1023,22 +1030,22 @@ msgstr "" #. module: base #: model:res.country,name:base.ad msgid "Andorra, Principality of" -msgstr "" +msgstr "એન્ડોર્રા, ની હકૂમત" #. module: base #: field:res.partner.category,child_ids:0 msgid "Child Categories" -msgstr "" +msgstr "વંશજ વર્ગ(શ્રેણી)" #. module: base #: model:ir.model,name:base.model_ir_config_parameter msgid "ir.config_parameter" -msgstr "" +msgstr "ir.config_parameter" #. module: base #: selection:base.language.export,format:0 msgid "TGZ Archive" -msgstr "" +msgstr "TGZ Archive" #. module: base #: view:res.groups:0 @@ -1049,7 +1056,7 @@ msgstr "" #. module: base #: view:res.lang:0 msgid "%B - Full month name." -msgstr "" +msgstr "%B - મહિના નુ પુરૂ નામ" #. module: base #: field:ir.actions.todo,type:0 @@ -1066,7 +1073,7 @@ msgstr "" #: view:res.partner:0 #: view:res.partner.address:0 msgid "Type" -msgstr "" +msgstr "પ્રકાર" #. module: base #: field:ir.mail_server,smtp_user:0 @@ -1080,17 +1087,19 @@ msgid "" "Language with code \"%s\" is not defined in your system !\n" "Define it through the Administration menu." msgstr "" +"\"%s\" સંકેત વાળી ભાષા તમારા સિસ્ટમ મા સ્થાપિત નથી.!\n" +"સંચાલક મેનુ વળે તેને સ્થાપિત કરો." #. module: base #: model:res.country,name:base.gu msgid "Guam (USA)" -msgstr "" +msgstr "ગુઆમ (યુએસએ)" #. module: base #: code:addons/base/res/res_users.py:558 #, python-format msgid "Setting empty passwords is not allowed for security reasons!" -msgstr "" +msgstr "સુરક્ષા કારણો થી ખાલી પાસવર્ડ સેટ કરવા માન્ય નથી!" #. module: base #: code:addons/base/ir/ir_mail_server.py:192 @@ -1102,40 +1111,40 @@ msgstr "" #: selection:ir.actions.server,state:0 #: selection:workflow.activity,kind:0 msgid "Dummy" -msgstr "" +msgstr "નકલી" #. module: base #: constraint:ir.ui.view:0 msgid "Invalid XML for View Architecture!" -msgstr "" +msgstr "દ્રશ્ય બંધારણ માટે અમાન્ય એક્સ.એમ.એલ!" #. module: base #: model:res.country,name:base.ky msgid "Cayman Islands" -msgstr "" +msgstr "કેમેન ટાપુઓ" #. module: base #: model:res.country,name:base.kr msgid "South Korea" -msgstr "" +msgstr "દક્ષિણ કોરિયા" #. module: base #: model:ir.actions.act_window,name:base.action_workflow_transition_form #: model:ir.ui.menu,name:base.menu_workflow_transition #: view:workflow.activity:0 msgid "Transitions" -msgstr "" +msgstr "ભાષાંતરો" #. module: base #: code:addons/orm.py:4615 #, python-format msgid "Record #%d of %s not found, cannot copy!" -msgstr "" +msgstr "રેકોર્ડ #%d કે જે %s નો છે તે મળેલ નથી, પ્રતિકૃતિ અશક્ય!" #. module: base #: field:ir.module.module,contributors:0 msgid "Contributors" -msgstr "" +msgstr "યોગદાન આપનારાઓ" #. module: base #: model:ir.module.module,description:base.module_project_planning @@ -1161,7 +1170,7 @@ msgstr "" #. module: base #: selection:ir.property,type:0 msgid "Char" -msgstr "" +msgstr "અક્ષરીય" #. module: base #: selection:base.language.install,lang:0 @@ -1171,32 +1180,32 @@ msgstr "" #. module: base #: selection:base.language.install,lang:0 msgid "Spanish (AR) / Español (AR)" -msgstr "" +msgstr "સ્પેનિશ (AR) / Español (AR)" #. module: base #: model:res.country,name:base.ug msgid "Uganda" -msgstr "" +msgstr "યુગાન્ડા" #. module: base #: field:ir.model.access,perm_unlink:0 msgid "Delete Access" -msgstr "" +msgstr "એક્સેસ રદ" #. module: base #: model:res.country,name:base.ne msgid "Niger" -msgstr "" +msgstr "નાઇઝર" #. module: base #: selection:base.language.install,lang:0 msgid "Chinese (HK)" -msgstr "" +msgstr "ચાઇનીસ (HK)" #. module: base #: model:res.country,name:base.ba msgid "Bosnia-Herzegovina" -msgstr "" +msgstr "બોસ્નિયા-હેર્ઝેગોવિના" #. module: base #: view:base.language.export:0 @@ -1248,39 +1257,39 @@ msgstr "" #. module: base #: model:res.country,name:base.gs msgid "S. Georgia & S. Sandwich Isls." -msgstr "" +msgstr "દ.જોર્જિયા અને દ.સેન્ડવિચ ટાપુઓ" #. module: base #: field:ir.actions.url,url:0 msgid "Action URL" -msgstr "" +msgstr "એકશન યુ.આર.એલ (URL)" #. module: base #: field:base.module.import,module_name:0 msgid "Module Name" -msgstr "" +msgstr "મોડ્યુલ નુ નામ" #. module: base #: model:res.country,name:base.mh msgid "Marshall Islands" -msgstr "" +msgstr "માર્શલ ટાપુઓ" #. module: base #: code:addons/base/ir/ir_model.py:368 #, python-format msgid "Changing the model of a field is forbidden!" -msgstr "" +msgstr "ફિલ્ડ નુ મોડેલ બદલવુ પ્રતિબંધિત છે!" #. module: base #: model:res.country,name:base.ht msgid "Haiti" -msgstr "" +msgstr "હેઇટી" #. module: base #: view:ir.ui.view:0 #: selection:ir.ui.view,type:0 msgid "Search" -msgstr "" +msgstr "શોધ" #. module: base #: code:addons/osv.py:132 @@ -1291,6 +1300,10 @@ msgid "" "reference it\n" "- creation/update: a mandatory field is not correctly set" msgstr "" +"પ્રક્રિયા સંપુર્ણ થઈ શકે તેમ નથી, કદાચ નીચેના કારણોસર:\n" +"- વિનાશ : તમે જે રેકોર્ડ નો નાશ(ડિલીટ) કરવા માંગો છો તેના પર બીજા રેકોર્ડ " +"આધારિત છે.\n" +"- સર્જન/સુધાર : ફરજિયાત ફિલ્ડ ને યોગ્ય રીતે સેટ કરી નથી." #. module: base #: field:ir.module.category,parent_id:0 @@ -1301,12 +1314,12 @@ msgstr "" #: code:addons/base/res/res_users.py:222 #, python-format msgid "Operation Canceled" -msgstr "" +msgstr "પ્રક્રિયા રદ્" #. module: base #: help:base.language.export,lang:0 msgid "To export a new language, do not select a language." -msgstr "" +msgstr "નવી ભાષા ને નિકાસ કરવા માટે ભાષા પસંદ ન કરો." #. module: base #: model:ir.module.module,shortdesc:base.module_document @@ -1322,17 +1335,17 @@ msgstr "" #. module: base #: model:ir.ui.menu,name:base.menu_purchase_root msgid "Purchases" -msgstr "" +msgstr "ખરીદીઓ" #. module: base #: model:res.country,name:base.md msgid "Moldavia" -msgstr "" +msgstr "મોલ્ડવિયા" #. module: base #: view:ir.module.module:0 msgid "Features" -msgstr "" +msgstr "લાક્ષણિકતાઓ" #. module: base #: model:ir.actions.act_window,help:base.bank_account_update @@ -1347,7 +1360,7 @@ msgstr "" #: view:ir.module.module:0 #: report:ir.module.reference.graph:0 msgid "Version" -msgstr "" +msgstr "આવૃત્તિ" #. module: base #: model:ir.module.module,description:base.module_sale_order_dates @@ -1370,13 +1383,13 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_ir_exports msgid "ir.exports" -msgstr "" +msgstr "ir.exports" #. module: base #: code:addons/base/module/wizard/base_update_translations.py:38 #, python-format msgid "No language with code \"%s\" exists" -msgstr "" +msgstr "\"%s\" સંકેત વાળી કોઇ પણ ભાષા અસ્તિત્વ મા નથી." #. module: base #: model:ir.module.module,description:base.module_document @@ -1406,7 +1419,7 @@ msgstr "" #. module: base #: view:res.lang:0 msgid "%Y - Year with century." -msgstr "" +msgstr "%Y - વર્ષ, શતક સાથે." #. module: base #: model:ir.module.module,description:base.module_web_gantt @@ -1419,7 +1432,7 @@ msgstr "" #. module: base #: report:ir.module.reference.graph:0 msgid "-" -msgstr "" +msgstr "-" #. module: base #: view:publisher_warranty.contract.wizard:0 @@ -1449,7 +1462,7 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_ir_exports_line msgid "ir.exports.line" -msgstr "" +msgstr "ir.exports.line" #. module: base #: model:ir.module.module,description:base.module_html_view @@ -1478,18 +1491,20 @@ msgid "" "If you check this box, your customized translations will be overwritten and " "replaced by the official ones." msgstr "" +"જો તમે આ બોક્સ ચેક કરશો તો તમારા પોતાના ભાષાંતરો મુખ્ય ભાષાંતરો વડે બદલાયી " +"જશે." #. module: base #: field:ir.actions.report.xml,report_rml:0 msgid "Main report file path" -msgstr "" +msgstr "મુખ્ય અહેવાલ ફાઇલ નો પાથ" #. module: base #: model:ir.actions.act_window,name:base.ir_action_report_xml #: field:ir.module.module,reports_by_module:0 #: model:ir.ui.menu,name:base.menu_ir_action_report_xml msgid "Reports" -msgstr "" +msgstr "અહેવાલો" #. module: base #: help:ir.actions.act_window.view,multi:0 @@ -1498,11 +1513,13 @@ msgid "" "If set to true, the action will not be displayed on the right toolbar of a " "form view." msgstr "" +"જો ખરુ કરેલ હશે તો એકશન ફોર્મ દ્રશ્ય(વ્યુ) ના જમણી બાજુ ના ટૂલબાર મ દેખાશે " +"નહી." #. module: base #: field:workflow,on_create:0 msgid "On Create" -msgstr "" +msgstr "સર્જન પર" #. module: base #: code:addons/base/ir/ir_model.py:681 @@ -1511,12 +1528,15 @@ msgid "" "'%s' contains too many dots. XML ids should not contain dots ! These are " "used to refer to other modules data, as in module.reference_id" msgstr "" +"'%s' ઘણા બધા પૂર્ણવિરામો નો સમાવેશ કરે છે. એક્સ.એમ.એલ ઓળખ (આઇ.ડી.) મા " +"પૂર્ણવિરામો નો સમાવેશ થવો ન જોઇયે! તેઓ બીજા મોડ્યુલો ના ડેટા ને સંદર્ભે છે, " +"જેમકે, module.reference_id" #. module: base #: field:partner.sms.send,user:0 #: field:res.users,login:0 msgid "Login" -msgstr "" +msgstr "લોગ ઇન" #. module: base #: view:base.update.translations:0 @@ -1531,6 +1551,8 @@ msgid "" "Access all the fields related to the current object using expressions, i.e. " "object.partner_id.name " msgstr "" +"વર્તમાન ઓબ્જેકટ સાથે સંક્ળાયેલ ફિલ્ડો નો ઉપયોગ સમિકરણ ની મદદ થી કરી શકાય છે. " +"જેમકે, object.partner_id.name " #. module: base #: model:ir.module.module,description:base.module_event @@ -1558,7 +1580,7 @@ msgstr "" #. module: base #: selection:ir.property,type:0 msgid "Float" -msgstr "" +msgstr "ફ્લોટ" #. module: base #: model:ir.module.category,name:base.module_category_warehouse_management @@ -2467,7 +2489,7 @@ msgstr "" #. module: base #: model:res.country,name:base.pg msgid "Papua New Guinea" -msgstr "" +msgstr "પાપુઆ ન્યુ ગુએના" #. module: base #: model:res.country,name:base.zw @@ -2482,7 +2504,7 @@ msgstr "" #. module: base #: model:ir.ui.menu,name:base.menu_translation_export msgid "Import / Export" -msgstr "" +msgstr "આયાત / નિકાસ" #. module: base #: model:ir.actions.todo.category,name:base.category_tools_customization_config @@ -2572,6 +2594,8 @@ msgstr "" #, python-format msgid "Error during communication with the publisher warranty server." msgstr "" +"પ્રકાશક ખાતરી સહાયક (પબ્લિશર વોરન્ટી સર્વર) સાથે સંદેશાવ્યવહાર કરતી વખતે " +"આવતી ભૂલ." #. module: base #: model:res.groups,name:base.group_sale_manager @@ -4021,7 +4045,7 @@ msgstr "" #. module: base #: view:res.request:0 msgid "Request Date" -msgstr "" +msgstr "વિનંતી તારિખ" #. module: base #: code:addons/base/module/wizard/base_export_language.py:52 @@ -4709,7 +4733,7 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_ir_actions_actions msgid "ir.actions.actions" -msgstr "" +msgstr "ir.actions.actions" #. module: base #: selection:ir.model.fields,select_level:0 @@ -6228,7 +6252,7 @@ msgstr "" #: model:ir.actions.act_window,name:base.action_payterm_form #: model:ir.model,name:base.model_res_payterm msgid "Payment term" -msgstr "" +msgstr "ચુકવણી મુદદ્ત" #. module: base #: view:ir.actions.report.xml:0 @@ -6363,7 +6387,7 @@ msgstr "" #. module: base #: selection:ir.cron,interval_type:0 msgid "Work Days" -msgstr "" +msgstr "કાર્ય દિવસો" #. module: base #: model:ir.module.module,shortdesc:base.module_multi_company @@ -9959,7 +9983,7 @@ msgstr "" #: field:ir.model.access,perm_read:0 #: view:ir.rule:0 msgid "Read Access" -msgstr "" +msgstr "વાંચન પરવાનગી" #. module: base #: help:ir.actions.server,loop_action:0 @@ -10485,7 +10509,7 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_res_country_state msgid "Country state" -msgstr "" +msgstr "દેશ નુ રાજ્ય" #. module: base #: model:ir.ui.menu,name:base.next_id_5 @@ -11023,7 +11047,7 @@ msgstr "" #: view:ir.sequence:0 #: model:ir.ui.menu,name:base.menu_ir_sequence_form msgid "Sequences" -msgstr "" +msgstr "અનુક્રમો" #. module: base #: model:res.partner.title,shortcut:base.res_partner_title_miss @@ -13038,7 +13062,7 @@ msgstr "" #: model:ir.actions.act_window,name:base.action_publisher_warranty_contract_form #: model:ir.ui.menu,name:base.menu_publisher_warranty_contract msgid "Contracts" -msgstr "" +msgstr "કરારો" #. module: base #: field:base.language.export,state:0 @@ -15227,3 +15251,54 @@ msgstr "" #~ msgid "Schedule Upgrade" #~ msgstr "નિર્ધારિત નવીનીકરણ" + +#~ msgid "Certified" +#~ msgstr "પ્રમાણિત" + +#~ msgid "New User" +#~ msgstr "નવો વપરાશકર્તા" + +#~ msgid "Partner Form" +#~ msgstr "ભાગીદાર નુ ફોર્મ" + +#~ msgid "Event Type" +#~ msgstr "કાર્યક્રમ નો પ્રકાર" + +#~ msgid "res.config.users" +#~ msgstr "res.config.users" + +#~ msgid "" +#~ "Groups are used to define access rights on objects and the visibility of " +#~ "screens and menus" +#~ msgstr "" +#~ "સમુદાય નો ઉપયોગ ઓબ્જેકટ્સ ઉપર ઉપયોગ ના અધિકારો આપવા અને મેનુ અને " +#~ "દ્રશ્યો(વ્યુ) ને દ્રશ્યમાન કરવા માટે થાય છે." + +#~ msgid "" +#~ "Sets the language for the user's user interface, when UI translations are " +#~ "available" +#~ msgstr "" +#~ "વપરાશ્કર્તા ના યુઝર ઇન્ટરફેસ ની ભાષા ગોઠવે છે કે જ્યારે તે યુઝર ઇન્ટરફેસ ના " +#~ "ભાષાંતરો ઉપલબ્ધ હોય." + +#, python-format +#~ msgid "The unlink method is not implemented on this object !" +#~ msgstr "આ ઓબ્જેક્ટ ઉપર અનલિંક મેથડ પ્રસ્થાપિત કરેલ નથી!" + +#~ msgid "client_action_multi, client_action_relate" +#~ msgstr "client_action_multi, client_action_relate" + +#~ msgid "Human Resources Dashboard" +#~ msgstr "માનવ સંશાધન ડેશબોર્ડ" + +#~ msgid "" +#~ "2. Group-specific rules are combined together with a logical AND operator" +#~ msgstr "" +#~ "૨. સમુદાય માટે ના નિયમો તાર્કિક કારક એન્ડ (AND) ની મદદ થી એકસાથે જોડાય છે." + +#~ msgid "Dashboard" +#~ msgstr "ડેશબોર્ડ" + +#, python-format +#~ msgid "The search method is not implemented on this object !" +#~ msgstr "સર્ચ મેથડ આ ઓબ્જેક્ટ પર પ્રસ્થાપિત કરેલ નથી!" diff --git a/openerp/addons/base/i18n/he.po b/openerp/addons/base/i18n/he.po index 191882068f0..b3d9b8387f2 100644 --- a/openerp/addons/base/i18n/he.po +++ b/openerp/addons/base/i18n/he.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:48+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:48+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/hr.po b/openerp/addons/base/i18n/hr.po index 65fab4e5c30..2f3e99956d2 100644 --- a/openerp/addons/base/i18n/hr.po +++ b/openerp/addons/base/i18n/hr.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:52+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:51+0000\n" +"X-Generator: Launchpad (build 14914)\n" "Language: hr\n" #. module: base diff --git a/openerp/addons/base/i18n/hu.po b/openerp/addons/base/i18n/hu.po index 6894d272558..91cee982916 100644 --- a/openerp/addons/base/i18n/hu.po +++ b/openerp/addons/base/i18n/hu.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:49+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/hy.po b/openerp/addons/base/i18n/hy.po index 11c3cd40faf..6095a3374fb 100644 --- a/openerp/addons/base/i18n/hy.po +++ b/openerp/addons/base/i18n/hy.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:46+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/id.po b/openerp/addons/base/i18n/id.po index a62ce35ff65..baaff920339 100644 --- a/openerp/addons/base/i18n/id.po +++ b/openerp/addons/base/i18n/id.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:49+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/is.po b/openerp/addons/base/i18n/is.po index 87a31071d27..d91187ac393 100644 --- a/openerp/addons/base/i18n/is.po +++ b/openerp/addons/base/i18n/is.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:49+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/it.po b/openerp/addons/base/i18n/it.po index bdd5121563a..5d82f36eede 100644 --- a/openerp/addons/base/i18n/it.po +++ b/openerp/addons/base/i18n/it.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-17 04:57+0000\n" -"X-Generator: Launchpad (build 14814)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -71,6 +71,20 @@ msgid "" " * Graph of My Remaining Hours by Project\n" " " msgstr "" +"\n" +"Il modulo Gestione Progetti tiene traccia dei progetti multi-livello, " +"attività, esecuzioni sulle attività, etc etc.\n" +"=============================================================================" +"=========\n" +"E' in grado di creare pianificazioni, ordinare attività e altro.\n" +"\n" +"La Dashboard della gestione progetti include:\n" +"--------------------------------------------\n" +" * Lista delle mie attività aperte\n" +" * Lista delle mie attività delegate\n" +" * Grafico dei Miei Progetti: Ore Pianificate vs Ore Totali\n" +" * Grafico delle Mie Ore Rimanenti per Progetto\n" +" " #. module: base #: field:base.language.import,code:0 @@ -90,7 +104,7 @@ msgstr "Workflow" #. module: base #: selection:ir.sequence,implementation:0 msgid "No gap" -msgstr "" +msgstr "Nessun gap" #. module: base #: selection:base.language.install,lang:0 @@ -108,6 +122,8 @@ msgid "" "Helps you manage your projects and tasks by tracking them, generating " "plannings, etc..." msgstr "" +"Ti aiuta a gestire i tuoi progetti e le tue attività tenendone traccia, " +"generando pianificazioni, etc..." #. module: base #: field:ir.actions.act_window,display_menu_tip:0 @@ -119,6 +135,8 @@ msgstr "Mostra suggerimenti menù" msgid "" "Model name on which the method to be called is located, e.g. 'res.partner'." msgstr "" +"Nome del modulo sul quale è localizzato il metodo che verrà richiamato, es: " +"'res.partner'." #. module: base #: view:ir.module.module:0 @@ -144,6 +162,12 @@ msgid "" "\n" "This module allows you to create retro planning for managing your events.\n" msgstr "" +"\n" +"Organizzazione e gestione di eventi.\n" +"======================================\n" +"\n" +"Questo modulo ti aiuta a gestire i tuoi eventi tramite la retro " +"pianificazione.\n" #. module: base #: help:ir.model.fields,domain:0 @@ -184,7 +208,7 @@ msgstr "Processo" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate msgid "Billing Rates on Contracts" -msgstr "" +msgstr "Tariffe sui Contratti" #. module: base #: code:addons/base/res/res_users.py:558 @@ -218,7 +242,7 @@ msgstr "ir.ui.view.custom" #: code:addons/base/ir/ir_model.py:313 #, python-format msgid "Renaming sparse field \"%s\" is not allowed" -msgstr "" +msgstr "Non è possibile rinominare il campo \"%s\"" #. module: base #: model:res.country,name:base.sz @@ -234,7 +258,7 @@ msgstr "creato." #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_tr msgid "Turkey - Accounting" -msgstr "" +msgstr "Turchia - Contabilità" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp_subproduct @@ -345,6 +369,12 @@ msgid "" " - tree_but_open\n" "For defaults, an optional condition" msgstr "" +"Come azioni, una tra le seguenti possibilità: \n" +" - client_action_multi\n" +" - client_print_multi\n" +" - client_action_relate\n" +" - tree_but_open\n" +"Come defaults, una condizione opzionale" #. module: base #: sql_constraint:res.lang:0 @@ -359,6 +389,11 @@ msgid "" " complex data from other software\n" " " msgstr "" +"\n" +" Questo modulo mette a disposizione una classe import_framework che " +"facilita l'importazione \n" +" di dati complessi da altri software\n" +" " #. module: base #: field:ir.actions.wizard,wiz_name:0 @@ -373,7 +408,7 @@ msgstr "Partner Manager" #. module: base #: model:ir.module.category,name:base.module_category_customer_relationship_management msgid "Customer Relationship Management" -msgstr "" +msgstr "Customer Relationship Management" #. module: base #: view:ir.module.module:0 @@ -389,7 +424,7 @@ msgstr "group_by non valido" #. module: base #: field:ir.module.category,child_ids:0 msgid "Child Applications" -msgstr "" +msgstr "Applicazioni Figlie" #. module: base #: field:res.partner,credit_limit:0 @@ -399,7 +434,7 @@ msgstr "Limite Credito" #. module: base #: model:ir.module.module,description:base.module_web_graph msgid "Openerp web graph view" -msgstr "" +msgstr "Openerp vista grafico web" #. module: base #: field:ir.model.data,date_update:0 @@ -409,7 +444,7 @@ msgstr "Data Aggiornamento" #. module: base #: model:ir.module.module,shortdesc:base.module_base_action_rule msgid "Automated Action Rules" -msgstr "" +msgstr "Regole Azione Automatiche" #. module: base #: view:ir.attachment:0 @@ -424,7 +459,7 @@ msgstr "Oggetto Origine" #. module: base #: model:res.partner.bank.type,format_layout:base.bank_normal msgid "%(bank_name)s: %(acc_number)s" -msgstr "" +msgstr "%(bank_name)s: %(acc_number)s" #. module: base #: view:ir.actions.todo:0 @@ -454,6 +489,8 @@ msgid "" "Invalid date/time format directive specified. Please refer to the list of " "allowed directives, displayed when you edit a language." msgstr "" +"Formato data/tempo non valido. Fare riferimento alla lista delle direttive " +"ammesse, mostrate quando viene modificata la lungua." #. module: base #: code:addons/orm.py:3895 @@ -468,7 +505,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_pad_project msgid "Specifications on PADs" -msgstr "" +msgstr "Specifiche su PAD" #. module: base #: help:ir.filters,user_id:0 @@ -476,11 +513,13 @@ msgid "" "The user this filter is available to. When left empty the filter is usable " "by the system only." msgstr "" +"L'utente per il quale questo filtro è disponibile. Se lasciato vuoto, il " +"filtro è usabile solo dal sistema." #. module: base #: help:res.partner,website:0 msgid "Website of Partner." -msgstr "" +msgstr "Sito web del Partner." #. module: base #: help:ir.actions.act_window,views:0 @@ -509,7 +548,7 @@ msgstr "Formato data" #. module: base #: model:ir.module.module,shortdesc:base.module_base_report_designer msgid "OpenOffice Report Designer" -msgstr "" +msgstr "OpenOffice Report Designer" #. module: base #: field:res.bank,email:0 @@ -540,7 +579,7 @@ msgstr "" #. module: base #: view:ir.values:0 msgid "Action Binding" -msgstr "" +msgstr "Binding Azione" #. module: base #: model:res.country,name:base.gf @@ -570,7 +609,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_layout msgid "Sales Orders Print Layout" -msgstr "" +msgstr "Layout Stampa Ordine di Vendita" #. module: base #: selection:base.language.install,lang:0 @@ -580,7 +619,7 @@ msgstr "Spanish (VE) / Español (VE)" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_timesheet_invoice msgid "Invoice on Timesheets" -msgstr "" +msgstr "Fatturazione su Timesheet" #. module: base #: view:base.module.upgrade:0 @@ -686,7 +725,7 @@ msgstr "I Campi personalizzati devono avere un nome che inizia con 'x_' !" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_mx msgid "Mexico - Accounting" -msgstr "" +msgstr "Messico - Contabilità" #. module: base #: help:ir.actions.server,action_id:0 @@ -706,7 +745,7 @@ msgstr "Esportazione Completata" #. module: base #: model:ir.module.module,shortdesc:base.module_plugin_outlook msgid "Outlook Plug-In" -msgstr "" +msgstr "Plug-In Outlook" #. module: base #: view:ir.model:0 @@ -735,7 +774,7 @@ msgstr "Giordania" #. module: base #: help:ir.cron,nextcall:0 msgid "Next planned execution date for this job." -msgstr "" +msgstr "Prossima data di esecuzione pianificata per questo job." #. module: base #: code:addons/base/ir/ir_model.py:139 @@ -751,7 +790,7 @@ msgstr "Eritrea" #. module: base #: sql_constraint:res.company:0 msgid "The company name must be unique !" -msgstr "" +msgstr "Il nome azienda deve essere unico!" #. module: base #: view:res.config:0 @@ -768,7 +807,7 @@ msgstr "Azioni automatiche" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_ro msgid "Romania - Accounting" -msgstr "" +msgstr "Romania - Contabilità" #. module: base #: view:partner.wizard.ean.check:0 @@ -789,7 +828,7 @@ msgstr "" #. module: base #: view:ir.mail_server:0 msgid "Security and Authentication" -msgstr "" +msgstr "Sicurezza ed Autenticazione" #. module: base #: view:base.language.export:0 @@ -880,7 +919,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_document_webdav msgid "Shared Repositories (WebDAV)" -msgstr "" +msgstr "Archivi Condivisi (WebDAV)" #. module: base #: model:ir.module.module,description:base.module_import_google @@ -888,11 +927,13 @@ msgid "" "The module adds google contact in partner address and add google calendar " "events details in Meeting" msgstr "" +"Questo modulo aggiunge i contatti Google tra gli indirizzi partner e " +"aggiunge gli appuntamenti di Google Calendar negli Appuntamenti." #. module: base #: view:res.users:0 msgid "Email Preferences" -msgstr "" +msgstr "Preferenze Email" #. module: base #: model:ir.module.module,description:base.module_audittrail @@ -971,7 +1012,7 @@ msgstr "Oman" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp msgid "MRP" -msgstr "" +msgstr "MRP" #. module: base #: report:ir.module.reference.graph:0 @@ -986,7 +1027,7 @@ msgstr "Niue" #. module: base #: model:ir.module.module,shortdesc:base.module_membership msgid "Membership Management" -msgstr "" +msgstr "Gestione Associati" #. module: base #: selection:ir.module.module,license:0 @@ -1013,7 +1054,7 @@ msgstr "Tipo richiesta di riferimento" #. module: base #: model:ir.module.module,shortdesc:base.module_google_base_account msgid "Google Users" -msgstr "" +msgstr "Utenti Google" #. module: base #: help:ir.server.object.lines,value:0 @@ -1076,7 +1117,7 @@ msgstr "Tipo" #. module: base #: field:ir.mail_server,smtp_user:0 msgid "Username" -msgstr "" +msgstr "Utente" #. module: base #: code:addons/orm.py:398 @@ -1103,7 +1144,7 @@ msgstr "Non è permesso impostare password vuote per motivi di sicurezza!" #: code:addons/base/ir/ir_mail_server.py:192 #, python-format msgid "Connection test failed!" -msgstr "" +msgstr "Test connessione fallito!" #. module: base #: selection:ir.actions.server,state:0 @@ -1225,12 +1266,12 @@ msgstr "Spanish (GT) / Español (GT)" #. module: base #: field:ir.mail_server,smtp_port:0 msgid "SMTP Port" -msgstr "" +msgstr "Porta SMTP" #. module: base #: model:ir.module.module,shortdesc:base.module_import_sugarcrm msgid "SugarCRM Import" -msgstr "" +msgstr "Importazione SugarCRM" #. module: base #: view:res.lang:0 @@ -1247,12 +1288,12 @@ msgstr "" #: code:addons/base/module/wizard/base_language_install.py:55 #, python-format msgid "Language Pack" -msgstr "" +msgstr "Language Pack" #. module: base #: model:ir.module.module,shortdesc:base.module_web_tests msgid "Tests" -msgstr "" +msgstr "Test" #. module: base #: field:ir.ui.view_sc,res_id:0 @@ -1331,12 +1372,12 @@ msgstr "Per esportare una nuova lingua, non selezionare una lingua" #: model:ir.module.module,shortdesc:base.module_document #: model:ir.module.module,shortdesc:base.module_knowledge msgid "Document Management System" -msgstr "" +msgstr "Document Management System" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_claim msgid "Claims Management" -msgstr "" +msgstr "Gestione Reclami" #. module: base #: model:ir.ui.menu,name:base.menu_purchase_root @@ -2047,7 +2088,7 @@ msgstr "" #. module: base #: model:ir.ui.menu,name:base.menu_administration msgid "Settings" -msgstr "" +msgstr "Configurazione" #. module: base #: selection:ir.actions.act_window,view_type:0 @@ -9321,7 +9362,7 @@ msgstr "completato" #. module: base #: view:ir.actions.act_window:0 msgid "General Settings" -msgstr "Impostazioni generali" +msgstr "Impostazioni Generali" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_uy diff --git a/openerp/addons/base/i18n/ja.po b/openerp/addons/base/i18n/ja.po index 857c7c89d51..31643b45dd5 100644 --- a/openerp/addons/base/i18n/ja.po +++ b/openerp/addons/base/i18n/ja.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-29 04:41+0000\n" -"X-Generator: Launchpad (build 14874)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/kk.po b/openerp/addons/base/i18n/kk.po index 0205a66a540..d6a74877126 100644 --- a/openerp/addons/base/i18n/kk.po +++ b/openerp/addons/base/i18n/kk.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:49+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/ko.po b/openerp/addons/base/i18n/ko.po index c5026451183..05b24a3857d 100644 --- a/openerp/addons/base/i18n/ko.po +++ b/openerp/addons/base/i18n/ko.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:50+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/lt.po b/openerp/addons/base/i18n/lt.po index 66ff76f538c..cfc7a6f739c 100644 --- a/openerp/addons/base/i18n/lt.po +++ b/openerp/addons/base/i18n/lt.po @@ -8,13 +8,13 @@ msgstr "" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-02-08 00:44+0000\n" "PO-Revision-Date: 2011-01-16 11:33+0000\n" -"Last-Translator: Paulius Sladkevičius \n" +"Last-Translator: Paulius Sladkevičius \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-02-09 05:50+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/lv.po b/openerp/addons/base/i18n/lv.po index eedaf5de4fb..43227792179 100644 --- a/openerp/addons/base/i18n/lv.po +++ b/openerp/addons/base/i18n/lv.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:50+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:49+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -13981,7 +13981,7 @@ msgstr "" #: model:ir.ui.menu,name:base.menu_config_address_book #: model:ir.ui.menu,name:base.menu_procurement_management_supplier msgid "Address Book" -msgstr "" +msgstr "Adrešu grāmata" #. module: base #: model:ir.module.module,description:base.module_l10n_ma diff --git a/openerp/addons/base/i18n/mk.po b/openerp/addons/base/i18n/mk.po index 0544dbb6017..9d394e92286 100644 --- a/openerp/addons/base/i18n/mk.po +++ b/openerp/addons/base/i18n/mk.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:50+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -25,7 +25,7 @@ msgstr "Света Елена" #. module: base #: view:ir.actions.report.xml:0 msgid "Other Configuration" -msgstr "" +msgstr "Останати поставки" #. module: base #: selection:ir.property,type:0 @@ -111,7 +111,7 @@ msgstr "" #. module: base #: field:ir.actions.act_window,display_menu_tip:0 msgid "Display Menu Tips" -msgstr "Прикажи ги советите во менито" +msgstr "" #. module: base #: help:ir.cron,model:0 @@ -175,7 +175,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_web_process msgid "Process" -msgstr "" +msgstr "Процес" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate @@ -515,7 +515,7 @@ msgstr "Холандски антили" #. module: base #: model:res.country,name:base.ro msgid "Romania" -msgstr "" +msgstr "Романија" #. module: base #: code:addons/base/res/res_users.py:396 diff --git a/openerp/addons/base/i18n/mn.po b/openerp/addons/base/i18n/mn.po index b3f470baadd..08b4227ff74 100644 --- a/openerp/addons/base/i18n/mn.po +++ b/openerp/addons/base/i18n/mn.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:50+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/nb.po b/openerp/addons/base/i18n/nb.po index 42f7fd2da30..c5c4d828c4d 100644 --- a/openerp/addons/base/i18n/nb.po +++ b/openerp/addons/base/i18n/nb.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:50+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/nl.po b/openerp/addons/base/i18n/nl.po index 4a0f8372d35..08eca307244 100644 --- a/openerp/addons/base/i18n/nl.po +++ b/openerp/addons/base/i18n/nl.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-20 05:39+0000\n" -"X-Generator: Launchpad (build 14833)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:47+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -90,7 +90,7 @@ msgstr "Werkschema" #. module: base #: selection:ir.sequence,implementation:0 msgid "No gap" -msgstr "Geen kloof" +msgstr "Aaneengesloten" #. module: base #: selection:base.language.install,lang:0 @@ -186,7 +186,7 @@ msgstr "Verwerken" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate msgid "Billing Rates on Contracts" -msgstr "" +msgstr "Factureertarieven op contracten" #. module: base #: code:addons/base/res/res_users.py:558 @@ -371,7 +371,7 @@ msgstr "Naam assistent" #. module: base #: model:res.groups,name:base.group_partner_manager msgid "Partner Manager" -msgstr "Partner beheer" +msgstr "Relatie manager" #. module: base #: model:ir.module.category,name:base.module_category_customer_relationship_management @@ -412,7 +412,7 @@ msgstr "Wijzigingsdatum" #. module: base #: model:ir.module.module,shortdesc:base.module_base_action_rule msgid "Automated Action Rules" -msgstr "Automatische aktie regels" +msgstr "Automatische actie regels" #. module: base #: view:ir.attachment:0 @@ -1569,7 +1569,7 @@ msgstr "Gebruiker" #: model:ir.actions.act_window,name:base.action_wizard_update_translations #: model:ir.ui.menu,name:base.menu_wizard_update_translations msgid "Synchronize Terms" -msgstr "Synchroniseer Terms" +msgstr "Synchroniseer termen" #. module: base #: view:ir.actions.server:0 @@ -1865,7 +1865,7 @@ msgstr " (kopie)" #. module: base #: field:res.company,rml_footer1:0 msgid "General Information Footer" -msgstr "Algemene Info Voettekst" +msgstr "Algemene informatie voettekst" #. module: base #: view:res.lang:0 @@ -2331,7 +2331,7 @@ msgstr "Beginpagina componenten beheer" #. module: base #: field:res.company,rml_header1:0 msgid "Report Header / Company Slogan" -msgstr "Rapporthoofd / Bedrijfs slogan" +msgstr "Rapport koptekst / Bedrijfsslogan" #. module: base #: model:res.country,name:base.pl @@ -2661,7 +2661,7 @@ msgstr "Fout tijdens communicatie met de uitgevers garantie server." #: model:res.groups,name:base.group_sale_manager #: model:res.groups,name:base.group_tool_manager msgid "Manager" -msgstr "Beheer" +msgstr "Manager" #. module: base #: model:ir.ui.menu,name:base.menu_custom @@ -3283,7 +3283,7 @@ msgstr "Uruguay" #. module: base #: model:ir.module.module,shortdesc:base.module_fetchmail_crm msgid "eMail Gateway for Leads" -msgstr "eMail Gateway voor Leads" +msgstr "E-Mail Gateway voor Leads" #. module: base #: selection:base.language.install,lang:0 @@ -3918,7 +3918,7 @@ msgstr "iCal ondersteuning" #. module: base #: model:ir.module.module,shortdesc:base.module_fetchmail msgid "Email Gateway" -msgstr "Email Gateway" +msgstr "E-mail Gateway" #. module: base #: code:addons/base/ir/ir_mail_server.py:439 @@ -4143,7 +4143,7 @@ msgstr "Xor" #. module: base #: model:ir.module.category,name:base.module_category_localization_account_charts msgid "Account Charts" -msgstr "" +msgstr "Rekeningschema's" #. module: base #: view:res.request:0 @@ -4382,7 +4382,7 @@ msgstr "`code`moet uniek zijn." #. module: base #: model:ir.module.module,shortdesc:base.module_hr_expense msgid "Expenses Management" -msgstr "" +msgstr "Uitgave beheer" #. module: base #: view:workflow.activity:0 @@ -4713,7 +4713,7 @@ msgstr "Lesotho" #. module: base #: model:ir.module.module,shortdesc:base.module_base_vat msgid "VAT Number Validation" -msgstr "BTW nummer validaatie" +msgstr "BTW nummer validatie" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_partner_assign @@ -4849,7 +4849,7 @@ msgstr "Dat contract is al geregisteerd in het systeem." #: model:ir.actions.act_window,name:base.action_res_partner_bank_type_form #: model:ir.ui.menu,name:base.menu_action_res_partner_bank_typeform msgid "Bank Account Types" -msgstr "" +msgstr "Bankrekening soorten" #. module: base #: help:ir.sequence,suffix:0 @@ -4919,7 +4919,7 @@ msgstr "Web Chat" #. module: base #: field:res.company,rml_footer2:0 msgid "Bank Accounts Footer" -msgstr "" +msgstr "Bankrekening voettekst" #. module: base #: model:res.country,name:base.mu @@ -6636,7 +6636,7 @@ msgstr "" #. module: base #: selection:res.currency,position:0 msgid "After Amount" -msgstr "" +msgstr "Achter bedrag" #. module: base #: selection:base.language.install,lang:0 @@ -7143,7 +7143,7 @@ msgstr "Aangemaakte menu's" #. module: base #: model:ir.module.module,shortdesc:base.module_account_analytic_default msgid "Account Analytic Defaults" -msgstr "" +msgstr "Standaard kostenplaatsen" #. module: base #: model:ir.module.module,description:base.module_hr_contract @@ -7212,7 +7212,7 @@ msgstr "" #. module: base #: view:res.log:0 msgid "My Logs" -msgstr "Mijn logboeVken" +msgstr "Mijn logboeken" #. module: base #: model:res.country,name:base.bt @@ -7275,7 +7275,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_payroll msgid "Payroll" -msgstr "Loonlijst" +msgstr "Loonadministratie" #. module: base #: model:ir.actions.act_window,help:base.action_country_state @@ -8755,6 +8755,16 @@ msgid "" "* Date\n" " " msgstr "" +"Stelt standaard waarden in voor kostenplaatsen\n" +"Maakt het mogelijk om automatisch kostenplaatsen te selecteren op basis van " +"criteria:\n" +"======================================================================\n" +"* Product\n" +"* Relatie\n" +"* Gebruiker\n" +"* Bedrijf\n" +"* Datum\n" +" " #. module: base #: model:res.country,name:base.ae @@ -9161,7 +9171,7 @@ msgstr "Vertalingen" #. module: base #: model:ir.module.module,shortdesc:base.module_project_gtd msgid "Todo Lists" -msgstr "" +msgstr "Todo lijst" #. module: base #: view:ir.actions.report.xml:0 @@ -9780,6 +9790,33 @@ msgid "" "module named account_voucher.\n" " " msgstr "" +"\n" +"Boekhouding en Financieel management.\n" +"=================================\n" +"Financial and accounting module that covers:\n" +"--------------------------------------------\n" +"General accountings\n" +"Cost / Analytic accounting\n" +"Third party accounting\n" +"Taxes management\n" +"Budgets\n" +"Customer and Supplier Invoices\n" +"Bank statements\n" +"Reconciliation process by partner\n" +"\n" +"Creates a dashboard for accountants that includes:\n" +"--------------------------------------------------\n" +"* List of Customer Invoice to Approve\n" +"* Company Analysis\n" +"* Graph of Aged Receivables\n" +"* Graph of Treasury\n" +"\n" +"The processes like maintaining of general ledger is done through the defined " +"financial Journals (entry move line or\n" +"grouping is maintained through journal) for a particular financial year and " +"for preparation of vouchers there is a\n" +"module named account_voucher.\n" +" " #. module: base #: help:ir.actions.act_window,view_type:0 @@ -11590,7 +11627,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_hr msgid "Employee Directory" -msgstr "Medewerkers map" +msgstr "Werknemers map" #. module: base #: view:ir.cron:0 @@ -13138,7 +13175,7 @@ msgstr "Onderwerp" #. module: base #: selection:res.currency,position:0 msgid "Before Amount" -msgstr "" +msgstr "Voor bedrag" #. module: base #: field:res.request,act_from:0 @@ -13212,7 +13249,7 @@ msgstr "Huidige gebruiker" #. module: base #: field:res.company,company_registry:0 msgid "Company Registry" -msgstr "" +msgstr "KvK gegevens" #. module: base #: view:ir.actions.report.xml:0 @@ -13580,7 +13617,7 @@ msgstr "" #. module: base #: field:res.company,vat:0 msgid "Tax ID" -msgstr "BTW Id" +msgstr "BTW Nr." #. module: base #: field:ir.model.fields,field_description:0 @@ -14247,6 +14284,9 @@ msgid "" "later is slower than the former but forbids any gap in the sequence (while " "they are possible in the former)." msgstr "" +"Twee reeksen object implementaties worden aangeboden: standaard en " +"'Aaneengesloten'. De laatste is langzamer dan de eerste, maar verbiedt een " +"gat in de reeks (terwijl ze wel mogelijk zijn in de eerste)." #. module: base #: model:res.country,name:base.gn @@ -14397,7 +14437,7 @@ msgstr "Object relatie" #. module: base #: model:ir.module.module,shortdesc:base.module_account_voucher msgid "eInvoicing & Payments" -msgstr "eFacturering & Betalingen" +msgstr "Bonnen & Betalingen" #. module: base #: view:ir.rule:0 diff --git a/openerp/addons/base/i18n/nl_BE.po b/openerp/addons/base/i18n/nl_BE.po index 526625a6597..307d333f0d3 100644 --- a/openerp/addons/base/i18n/nl_BE.po +++ b/openerp/addons/base/i18n/nl_BE.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:54+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:53+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/pl.po b/openerp/addons/base/i18n/pl.po index f78e5733b36..343c1002350 100644 --- a/openerp/addons/base/i18n/pl.po +++ b/openerp/addons/base/i18n/pl.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:51+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -88,7 +88,7 @@ msgstr "Obieg" #. module: base #: selection:ir.sequence,implementation:0 msgid "No gap" -msgstr "" +msgstr "Bez przerw" #. module: base #: selection:base.language.install,lang:0 @@ -105,7 +105,7 @@ msgstr "" msgid "" "Helps you manage your projects and tasks by tracking them, generating " "plannings, etc..." -msgstr "" +msgstr "Pomaga prowadzić projekty i zadania, pomaga w planowaniu itd..." #. module: base #: field:ir.actions.act_window,display_menu_tip:0 @@ -117,6 +117,8 @@ msgstr "Wyświetlaj wskazówki menu" msgid "" "Model name on which the method to be called is located, e.g. 'res.partner'." msgstr "" +"Nazwa modelu, w którym wywoływana metoda jest zdefiniowana, n.p. " +"'res.partner'." #. module: base #: view:ir.module.module:0 @@ -130,6 +132,8 @@ msgid "" "You can not write in this document (%s) ! Be sure your user belongs to one " "of these groups: %s." msgstr "" +"Nie możesz pisać w tym dokumencie (%s) ! Upewnij się, że należysz do jednej " +"z tych grup: %s." #. module: base #: model:ir.module.module,description:base.module_event_project @@ -177,7 +181,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_journal_billing_rate msgid "Billing Rates on Contracts" -msgstr "" +msgstr "Stawki dla umów" #. module: base #: code:addons/base/res/res_users.py:558 @@ -229,7 +233,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp_subproduct msgid "MRP Subproducts" -msgstr "" +msgstr "Produkty uboczne" #. module: base #: code:addons/base/module/module.py:390 @@ -263,12 +267,12 @@ msgstr "" #: model:ir.module.category,name:base.module_category_sales_management #: model:ir.module.module,shortdesc:base.module_sale msgid "Sales Management" -msgstr "" +msgstr "Sprzedaż" #. module: base #: view:res.partner:0 msgid "Search Partner" -msgstr "Szukaj partnera" +msgstr "Szukanie partnera" #. module: base #: code:addons/base/module/wizard/base_export_language.py:60 @@ -364,7 +368,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_customer_relationship_management msgid "Customer Relationship Management" -msgstr "" +msgstr "Relacje z klientami (CRM)" #. module: base #: view:ir.module.module:0 @@ -380,7 +384,7 @@ msgstr "" #. module: base #: field:ir.module.category,child_ids:0 msgid "Child Applications" -msgstr "" +msgstr "Aplikacje podrzędne" #. module: base #: field:res.partner,credit_limit:0 @@ -570,7 +574,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_timesheet_invoice msgid "Invoice on Timesheets" -msgstr "" +msgstr "Fakturuj wg kart czasu pracy" #. module: base #: view:base.module.upgrade:0 @@ -621,7 +625,7 @@ msgstr "Kolumbia" #: code:addons/orm.py:1390 #, python-format msgid "Key/value '%s' not found in selection field '%s'" -msgstr "" +msgstr "Klucz/wartość '%s' nie odnaleziona w wybranym polu '%s'" #. module: base #: help:res.country,code:0 @@ -695,7 +699,7 @@ msgstr "Eksport wykonano" #. module: base #: model:ir.module.module,shortdesc:base.module_plugin_outlook msgid "Outlook Plug-In" -msgstr "" +msgstr "Wtyczka Outlook" #. module: base #: view:ir.model:0 @@ -740,7 +744,7 @@ msgstr "Erytrea" #. module: base #: sql_constraint:res.company:0 msgid "The company name must be unique !" -msgstr "" +msgstr "Nazwa firmy musi być unikalna !" #. module: base #: view:res.config:0 @@ -865,7 +869,7 @@ msgstr "Typ raportu, czyli pdf, html, raw, sxw, odt, ...." #. module: base #: model:ir.module.module,shortdesc:base.module_document_webdav msgid "Shared Repositories (WebDAV)" -msgstr "" +msgstr "Współdzielone repozytoria (WebDAV)" #. module: base #: model:ir.module.module,description:base.module_import_google @@ -1035,6 +1039,8 @@ msgstr "Archiwum TGZ" msgid "" "Users added to this group are automatically added in the following groups." msgstr "" +"Użytkownicy dodani do tej grupy zostaną automatycznie dodani do " +"następujących grup." #. module: base #: view:res.lang:0 @@ -1061,7 +1067,7 @@ msgstr "Typ" #. module: base #: field:ir.mail_server,smtp_user:0 msgid "Username" -msgstr "" +msgstr "Użytkownik" #. module: base #: code:addons/orm.py:398 @@ -1198,6 +1204,10 @@ msgid "" "Lauchpad's web interface (Rosetta). If you need to perform mass translation, " "Launchpad also allows uploading full .po files at once" msgstr "" +"Aby poprawić lub rozszerzyć oficjalne tłumaczenie, powinieneś użyć " +"bezpośrednio przeglądarkowego środowiska Lauchpad'a (Rosetta). Jeśli chcesz " +"przeprowadzić tłumaczenie masowo, Lauchpad umożliwia załadowanie całego " +"pliku .po tłumaczenia" #. module: base #: selection:base.language.install,lang:0 @@ -1207,7 +1217,7 @@ msgstr "" #. module: base #: field:ir.mail_server,smtp_port:0 msgid "SMTP Port" -msgstr "" +msgstr "Port SMTP" #. module: base #: model:ir.module.module,shortdesc:base.module_import_sugarcrm @@ -1234,7 +1244,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_web_tests msgid "Tests" -msgstr "" +msgstr "Testy" #. module: base #: field:ir.ui.view_sc,res_id:0 @@ -1276,7 +1286,7 @@ msgstr "Haiti" #: view:ir.ui.view:0 #: selection:ir.ui.view,type:0 msgid "Search" -msgstr "Wyszukaj" +msgstr "Szukanie" #. module: base #: code:addons/osv.py:132 @@ -1295,7 +1305,7 @@ msgstr "" #. module: base #: field:ir.module.category,parent_id:0 msgid "Parent Application" -msgstr "" +msgstr "Aplikacja nadrzędna" #. module: base #: code:addons/base/res/res_users.py:222 @@ -1365,7 +1375,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_account_sequence msgid "Entries Sequence Numbering" -msgstr "" +msgstr "Numeracja zapisów" #. module: base #: model:ir.model,name:base.model_ir_exports @@ -1471,6 +1481,8 @@ msgid "" "Helps you manage your purchase-related processes such as requests for " "quotations, supplier invoices, etc..." msgstr "" +"Pomaga organizować procesy zakupów jak zapytania ofertowe, faktury od " +"dostawców itp." #. module: base #: help:base.language.install,overwrite:0 @@ -1571,7 +1583,7 @@ msgstr "Zmiennoprzecinkowy" #: model:ir.module.category,name:base.module_category_warehouse_management #: model:ir.module.module,shortdesc:base.module_stock msgid "Warehouse Management" -msgstr "" +msgstr "Magazyn" #. module: base #: model:ir.model,name:base.model_res_request_link @@ -1744,6 +1756,8 @@ msgid "" "simplified payment mode encoding, automatic picking lists generation and " "more." msgstr "" +"Pomaga stosować system jako punkt sprzedaży, gdzie funkcje sprzedaży są " +"przygotowane do szybkich działań." #. module: base #: model:res.country,name:base.mv @@ -1794,7 +1808,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_process msgid "Enterprise Process" -msgstr "" +msgstr "Proces przedsiębiorstwa" #. module: base #: help:ir.cron,function:0 @@ -1804,7 +1818,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_evaluation msgid "Employee Appraisals" -msgstr "" +msgstr "Podwyżki dla pracowników" #. module: base #: selection:ir.actions.server,state:0 @@ -1821,7 +1835,7 @@ msgstr " (kopia)" #. module: base #: field:res.company,rml_footer1:0 msgid "General Information Footer" -msgstr "" +msgstr "Ogólna stopka informacyjna" #. module: base #: view:res.lang:0 @@ -1843,7 +1857,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_project_mrp msgid "Create Tasks on SO" -msgstr "" +msgstr "Utwórz zadania z ZS" #. module: base #: field:ir.attachment,res_model:0 @@ -1853,7 +1867,7 @@ msgstr "Model powiązany" #. module: base #: field:res.partner.bank,footer:0 msgid "Display on Reports" -msgstr "" +msgstr "Wyświetlaj na raportach" #. module: base #: model:ir.module.module,description:base.module_l10n_cn @@ -1928,7 +1942,7 @@ msgstr "%s (kopia)" #. module: base #: model:ir.module.module,shortdesc:base.module_account_chart msgid "Template of Charts of Accounts" -msgstr "" +msgstr "Szablon planu kont" #. module: base #: field:res.partner.address,type:0 @@ -2020,7 +2034,7 @@ msgstr "" #. module: base #: model:ir.ui.menu,name:base.menu_administration msgid "Settings" -msgstr "" +msgstr "Ustawienia" #. module: base #: selection:ir.actions.act_window,view_type:0 @@ -2199,7 +2213,7 @@ msgstr "Liczba zaktualizowanych modułów" #. module: base #: field:ir.cron,function:0 msgid "Method" -msgstr "" +msgstr "Metoda" #. module: base #: view:res.partner.event:0 @@ -2451,7 +2465,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_crm msgid "Opportunity to Quotation" -msgstr "" +msgstr "Szansa do oferty" #. module: base #: model:ir.module.module,description:base.module_sale_analytic_plans @@ -2473,22 +2487,22 @@ msgstr "Cel akcji" #. module: base #: model:ir.module.module,shortdesc:base.module_base_calendar msgid "Calendar Layer" -msgstr "" +msgstr "Warstwa kalendarza" #. module: base #: model:ir.actions.report.xml,name:base.report_ir_model_overview msgid "Model Overview" -msgstr "" +msgstr "Opis modelu" #. module: base #: model:ir.module.module,shortdesc:base.module_product_margin msgid "Margins by Products" -msgstr "" +msgstr "Marże wg produktów" #. module: base #: model:ir.ui.menu,name:base.menu_invoiced msgid "Invoicing" -msgstr "" +msgstr "Fakturowanie" #. module: base #: field:ir.ui.view_sc,name:0 @@ -2523,13 +2537,13 @@ msgstr "Import / Eksport" #. module: base #: model:ir.actions.todo.category,name:base.category_tools_customization_config msgid "Tools / Customization" -msgstr "" +msgstr "Narzędzia / Dostosowanie" #. module: base #: field:ir.model.data,res_id:0 #: field:ir.values,res_id:0 msgid "Record ID" -msgstr "" +msgstr "ID rekordu" #. module: base #: field:ir.actions.server,email:0 @@ -2613,7 +2627,7 @@ msgstr "" #: model:res.groups,name:base.group_sale_manager #: model:res.groups,name:base.group_tool_manager msgid "Manager" -msgstr "" +msgstr "Menedżer" #. module: base #: model:ir.ui.menu,name:base.menu_custom @@ -2650,7 +2664,7 @@ msgstr "" #. module: base #: view:res.groups:0 msgid "Inherited" -msgstr "" +msgstr "Dziedziczone" #. module: base #: field:ir.model.fields,serialization_field_id:0 @@ -2662,7 +2676,7 @@ msgstr "" msgid "" "Lets you install various tools to simplify and enhance OpenERP's report " "creation." -msgstr "" +msgstr "Pozwala instalować różne narzędzia do tworzenia raportów w OpenERP." #. module: base #: view:res.lang:0 @@ -2683,7 +2697,7 @@ msgstr "Słowenia" #. module: base #: help:res.currency,name:0 msgid "Currency Code (ISO 4217)" -msgstr "" +msgstr "Kod waluty (ISO 4217)" #. module: base #: model:ir.actions.act_window,name:base.res_log_act_window @@ -2800,14 +2814,14 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_stock_planning msgid "Master Procurement Schedule" -msgstr "" +msgstr "Główny planista zapotrzebowania (MPS)" #. module: base #: model:ir.model,name:base.model_ir_module_category #: field:ir.module.module,application:0 #: field:res.groups,category_id:0 msgid "Application" -msgstr "" +msgstr "Aplikacja" #. module: base #: selection:publisher_warranty.contract,state:0 @@ -3029,7 +3043,7 @@ msgstr "Sektor zas. ludz." #. module: base #: model:ir.ui.menu,name:base.menu_dashboard_admin msgid "Administration Dashboard" -msgstr "" +msgstr "Konsola administracyjna" #. module: base #: code:addons/orm.py:4408 @@ -3167,7 +3181,7 @@ msgstr "Tytuły kontaktu" #. module: base #: model:ir.module.module,shortdesc:base.module_product_manufacturer msgid "Products Manufacturers" -msgstr "" +msgstr "Producenci produktu" #. module: base #: code:addons/base/ir/ir_mail_server.py:217 @@ -3222,7 +3236,7 @@ msgstr "Urugwaj" #. module: base #: model:ir.module.module,shortdesc:base.module_fetchmail_crm msgid "eMail Gateway for Leads" -msgstr "" +msgstr "Bramka eMail dla sygnałów" #. module: base #: selection:base.language.install,lang:0 @@ -3232,7 +3246,7 @@ msgstr "" #. module: base #: field:ir.rule,perm_write:0 msgid "Apply For Write" -msgstr "" +msgstr "Zastosuj do zapisu" #. module: base #: field:ir.sequence,prefix:0 @@ -3402,7 +3416,7 @@ msgstr "Instancje" #. module: base #: help:ir.mail_server,smtp_host:0 msgid "Hostname or IP of SMTP server" -msgstr "" +msgstr "Nazwa hosta lub IP serwera SMTP" #. module: base #: selection:base.language.install,lang:0 @@ -3432,7 +3446,7 @@ msgstr "Format separatora" #. module: base #: constraint:res.partner.bank:0 msgid "The RIB and/or IBAN is not valid" -msgstr "" +msgstr "Niedozwolony RIB lub IBAN" #. module: base #: model:ir.module.module,shortdesc:base.module_report_webkit @@ -3464,13 +3478,13 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_todo msgid "Tasks on CRM" -msgstr "" +msgstr "Zadania z CRM" #. module: base #: model:ir.module.category,name:base.module_category_generic_modules_accounting #: view:res.company:0 msgid "Accounting" -msgstr "" +msgstr "Księgowość" #. module: base #: model:ir.module.module,description:base.module_account_payment @@ -3548,6 +3562,9 @@ msgid "" "or data in your OpenERP instance. To install some modules, click on the " "button \"Install\" from the form view and then click on \"Start Upgrade\"." msgstr "" +"Możesz instalować nowe moduły, aby aktywować nowe funkcjonalności, menu lub " +"dane w tej bazie OpenERP. Aby zainstalować moduł, kliknij na Instaluj w " +"widoku formularza, a potem kliknij na Uruchom aktualizację." #. module: base #: model:ir.actions.act_window,name:base.ir_cron_act @@ -3591,7 +3608,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_point_of_sale msgid "Point Of Sale" -msgstr "" +msgstr "Punkt sprzedaży" #. module: base #: code:addons/base/module/module.py:302 @@ -3659,7 +3676,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_human_resources msgid "Human Resources" -msgstr "" +msgstr "Kadry" #. module: base #: model:ir.actions.act_window,name:base.action_country @@ -3675,7 +3692,7 @@ msgstr "" #. module: base #: sql_constraint:ir.translation:0 msgid "Language code of translation item must be among known languages" -msgstr "" +msgstr "Kod języka tłumaczenia musi być znanym kodem językowym" #. module: base #: view:ir.rule:0 @@ -3719,7 +3736,7 @@ msgstr "NIP" #. module: base #: field:res.users,new_password:0 msgid "Set password" -msgstr "" +msgstr "Ustal hasło" #. module: base #: view:res.lang:0 @@ -3787,6 +3804,8 @@ msgid "" "Operation prohibited by access rules, or performed on an already deleted " "document (Operation: read, Document type: %s)." msgstr "" +"Operacja zabroniona przez reguły dostępu lub wykonywana na usuniętym " +"dokumencie (Operacja: czytanie, Typ dokumentu: %s)." #. module: base #: model:res.country,name:base.nr @@ -3956,7 +3975,7 @@ msgstr "" #: code:addons/orm.py:2134 #, python-format msgid "Invalid Architecture!" -msgstr "" +msgstr "Niedozwolona architektura !" #. module: base #: model:res.country,name:base.pt @@ -3966,7 +3985,7 @@ msgstr "Portugalia" #. module: base #: model:ir.module.module,shortdesc:base.module_share msgid "Share any Document" -msgstr "" +msgstr "Współdziel dowolny dokument" #. module: base #: field:ir.module.module,certificate:0 @@ -4067,7 +4086,7 @@ msgstr "XOR" #. module: base #: model:ir.module.category,name:base.module_category_localization_account_charts msgid "Account Charts" -msgstr "" +msgstr "Plany kont" #. module: base #: view:res.request:0 @@ -4222,7 +4241,7 @@ msgstr "Podsumowanie" #. module: base #: model:ir.module.category,name:base.module_category_hidden_dependency msgid "Dependency" -msgstr "" +msgstr "Zależność" #. module: base #: field:multi_company.default,expression:0 @@ -4299,7 +4318,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_expense msgid "Expenses Management" -msgstr "" +msgstr "Zarządzanie wydatkami" #. module: base #: view:workflow.activity:0 @@ -4320,7 +4339,7 @@ msgstr "Surinam" #. module: base #: model:ir.module.module,shortdesc:base.module_project_timesheet msgid "Bill Time on Tasks" -msgstr "" +msgstr "Fakturowanie czasu zadań" #. module: base #: model:ir.module.category,name:base.module_category_marketing @@ -4352,7 +4371,7 @@ msgstr "Typ numeracji" #. module: base #: view:ir.ui.view.custom:0 msgid "Customized Architecture" -msgstr "" +msgstr "Dostosowana architektura" #. module: base #: model:ir.module.module,shortdesc:base.module_web_gantt @@ -4506,7 +4525,7 @@ msgstr "" #. module: base #: model:ir.module.category,description:base.module_category_marketing msgid "Helps you manage your marketing campaigns step by step." -msgstr "" +msgstr "Pomaga prowadzić kampanie marketingowe" #. module: base #: selection:base.language.install,lang:0 @@ -4550,7 +4569,7 @@ msgstr "Reguły" #. module: base #: field:ir.mail_server,smtp_host:0 msgid "SMTP Server" -msgstr "" +msgstr "Serwer SMTP" #. module: base #: code:addons/base/module/module.py:256 @@ -4605,7 +4624,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_specific_industry_applications msgid "Specific Industry Applications" -msgstr "" +msgstr "Aplikacje branżowe" #. module: base #: model:res.partner.category,name:base.res_partner_category_retailers0 @@ -4625,12 +4644,12 @@ msgstr "Lesoto" #. module: base #: model:ir.module.module,shortdesc:base.module_base_vat msgid "VAT Number Validation" -msgstr "" +msgstr "Walidacja numeru NIP" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_partner_assign msgid "Partners Geo-Localization" -msgstr "" +msgstr "Geo-lokalizacja partnerów" #. module: base #: model:res.country,name:base.ke @@ -4641,7 +4660,7 @@ msgstr "Kenia" #: model:ir.actions.act_window,name:base.action_translation #: model:ir.ui.menu,name:base.menu_action_translation msgid "Translated Terms" -msgstr "" +msgstr "Terminy przetłumaczone" #. module: base #: view:res.partner.event:0 @@ -4761,7 +4780,7 @@ msgstr "Umowa została zarejestrowana w systemie." #: model:ir.actions.act_window,name:base.action_res_partner_bank_type_form #: model:ir.ui.menu,name:base.menu_action_res_partner_bank_typeform msgid "Bank Account Types" -msgstr "" +msgstr "Typy kont bankowych" #. module: base #: help:ir.sequence,suffix:0 @@ -4771,7 +4790,7 @@ msgstr "Sufiks dla numeracji." #. module: base #: help:ir.mail_server,smtp_user:0 msgid "Optional username for SMTP authentication" -msgstr "" +msgstr "Opcjonalna nazwa użytkownika dla SMTP" #. module: base #: model:ir.model,name:base.model_ir_actions_actions @@ -4819,6 +4838,8 @@ msgid "" "You can not create this document (%s) ! Be sure your user belongs to one of " "these groups: %s." msgstr "" +"Nie możesz utworzyć tego dokumentu (%s) ! Upewnij się, że należysz do jednej " +"z grup: %s." #. module: base #: model:ir.module.module,shortdesc:base.module_web_chat @@ -4904,7 +4925,7 @@ msgstr "Węgry" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_recruitment msgid "Recruitment Process" -msgstr "" +msgstr "Proces rekrutacji" #. module: base #: model:res.country,name:base.br @@ -4965,12 +4986,12 @@ msgstr "Aktualizacja systemu zakończona" #. module: base #: sql_constraint:ir.model:0 msgid "Each model must be unique!" -msgstr "" +msgstr "Każdy model musi być unikalny" #. module: base #: model:ir.module.category,name:base.module_category_localization msgid "Localization" -msgstr "" +msgstr "Lokalizacja" #. module: base #: model:ir.module.module,description:base.module_sale_mrp @@ -5040,7 +5061,7 @@ msgstr "" #. module: base #: field:ir.rule,perm_unlink:0 msgid "Apply For Delete" -msgstr "" +msgstr "Dotyczy usuwania" #. module: base #: code:addons/base/ir/ir_model.py:359 @@ -5063,7 +5084,7 @@ msgstr "Separator dziesiętny" #: view:ir.module.module:0 #, python-format msgid "Install" -msgstr "" +msgstr "Instaluj" #. module: base #: model:ir.actions.act_window,help:base.action_res_groups @@ -5083,7 +5104,7 @@ msgstr "" #. module: base #: field:ir.filters,name:0 msgid "Filter Name" -msgstr "" +msgstr "Nazwa filtra" #. module: base #: view:res.partner:0 @@ -5190,7 +5211,7 @@ msgstr "Pole" #. module: base #: model:ir.module.module,shortdesc:base.module_project_long_term msgid "Long Term Projects" -msgstr "" +msgstr "Projekty długoterminowe" #. module: base #: model:res.country,name:base.ve @@ -5210,7 +5231,7 @@ msgstr "Zambia" #. module: base #: view:ir.actions.todo:0 msgid "Launch Configuration Wizard" -msgstr "" +msgstr "Uruchom kreatora konfiguracji" #. module: base #: help:res.partner,user_id:0 @@ -5310,7 +5331,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_decimal_precision msgid "Decimal Precision Configuration" -msgstr "" +msgstr "Konfiguracja precyzji dziesiętnej" #. module: base #: model:ir.ui.menu,name:base.menu_translation_app @@ -5679,7 +5700,7 @@ msgstr "Właściwość przy usuwaniu pól many2one" #. module: base #: model:ir.module.category,name:base.module_category_accounting_and_finance msgid "Accounting & Finance" -msgstr "" +msgstr "Księgowość" #. module: base #: field:ir.actions.server,write_id:0 @@ -5701,13 +5722,13 @@ msgstr "Nazwisko nowego użytkownika. Stosowane do wyszukiwań i listowania" #: model:ir.ui.menu,name:base.menu_values_form_defaults #: view:ir.values:0 msgid "User-defined Defaults" -msgstr "" +msgstr "Wartości domyślne definiowane" #. module: base #: model:ir.module.category,name:base.module_category_usability #: view:res.users:0 msgid "Usability" -msgstr "" +msgstr "Użyteczność" #. module: base #: field:ir.actions.act_window,domain:0 @@ -5812,7 +5833,7 @@ msgstr "Właściciel konta bankowego" #. module: base #: model:ir.module.category,name:base.module_category_uncategorized msgid "Uncategorized" -msgstr "" +msgstr "Bez kategorii" #. module: base #: field:ir.attachment,res_name:0 @@ -5859,7 +5880,7 @@ msgstr "" #: code:addons/base/res/res_lang.py:191 #, python-format msgid "User Error" -msgstr "" +msgstr "Błąd użytkownika" #. module: base #: help:workflow.transition,signal:0 @@ -5962,7 +5983,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_base_report_creator msgid "Query Builder" -msgstr "" +msgstr "Kreator zapytań" #. module: base #: selection:ir.actions.todo,type:0 @@ -6100,12 +6121,12 @@ msgstr "" #: code:addons/base/module/module.py:392 #, python-format msgid "Uninstall" -msgstr "" +msgstr "Odinstaluj" #. module: base #: model:ir.module.module,shortdesc:base.module_account_budget msgid "Budgets Management" -msgstr "" +msgstr "Budżetowanie" #. module: base #: field:workflow.triggers,workitem_id:0 @@ -6237,7 +6258,7 @@ msgstr "Sudan" #: field:res.currency.rate,currency_rate_type_id:0 #: view:res.currency.rate.type:0 msgid "Currency Rate Type" -msgstr "" +msgstr "Typ kursu waluty" #. module: base #: model:res.country,name:base.fm @@ -6263,7 +6284,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_hidden msgid "Hidden" -msgstr "" +msgstr "Ukryty" #. module: base #: selection:base.language.install,lang:0 @@ -6283,7 +6304,7 @@ msgstr "" #. module: base #: help:res.bank,bic:0 msgid "Sometimes called BIC or Swift." -msgstr "" +msgstr "Czasem nazywany BIC lub Swift." #. module: base #: model:ir.module.module,description:base.module_l10n_mx @@ -6389,7 +6410,7 @@ msgstr "Mapowanie obiektu" #. module: base #: field:ir.ui.view,xml_id:0 msgid "External ID" -msgstr "" +msgstr "Identyfikator zewnętrzny" #. module: base #: help:res.currency.rate,rate:0 @@ -6446,7 +6467,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_project_issue msgid "Issues Tracker" -msgstr "" +msgstr "Obsługa problemów" #. module: base #: selection:ir.cron,interval_type:0 @@ -6456,7 +6477,7 @@ msgstr "Dni robocze" #. module: base #: model:ir.module.module,shortdesc:base.module_multi_company msgid "Multi-Company" -msgstr "" +msgstr "Wielofirmowość" #. module: base #: field:ir.actions.report.xml,report_rml_content:0 @@ -6493,7 +6514,7 @@ msgstr "" #: view:res.users:0 #, python-format msgid "Applications" -msgstr "" +msgstr "Aplikacje" #. module: base #: model:ir.model,name:base.model_ir_attachment @@ -6567,7 +6588,7 @@ msgstr "Termin źródłowy" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_timesheet_sheet msgid "Timesheets Validation" -msgstr "" +msgstr "Zatwierdzane karty czasu pracy" #. module: base #: model:ir.ui.menu,name:base.menu_main_pm @@ -6577,7 +6598,7 @@ msgstr "Projekty" #. module: base #: field:ir.ui.menu,web_icon_hover_data:0 msgid "Web Icon Image (hover)" -msgstr "" +msgstr "Ikona Web (hover)" #. module: base #: view:base.module.import:0 @@ -6598,7 +6619,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_timesheet msgid "Timesheets" -msgstr "" +msgstr "Karty czasu pracy" #. module: base #: field:res.partner,function:0 @@ -6671,7 +6692,7 @@ msgstr "" #: view:res.partner:0 #: view:res.partner.address:0 msgid "Edit" -msgstr "" +msgstr "Edytuj" #. module: base #: field:ir.actions.client,params:0 @@ -6711,7 +6732,7 @@ msgstr "Przy usuwaniu" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_multilang msgid "Multi Language Chart of Accounts" -msgstr "" +msgstr "Wielojęzyczny plan kont" #. module: base #: selection:res.lang,direction:0 @@ -6747,7 +6768,7 @@ msgstr "Podpis" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_caldav msgid "Meetings Synchronization" -msgstr "" +msgstr "Synchronizacja spotkań" #. module: base #: field:ir.actions.act_window,context:0 @@ -6779,7 +6800,7 @@ msgstr "Nazwa modułu musi być unikalna !" #. module: base #: model:ir.module.module,shortdesc:base.module_base_contact msgid "Contacts Management" -msgstr "" +msgstr "Kontakty" #. module: base #: model:ir.module.module,description:base.module_l10n_fr_rib @@ -6856,14 +6877,14 @@ msgstr "Sprzedawca" #. module: base #: model:ir.module.module,shortdesc:base.module_account_accountant msgid "Accounting and Finance" -msgstr "" +msgstr "Księgowość" #. module: base #: code:addons/base/module/module.py:429 #: view:ir.module.module:0 #, python-format msgid "Upgrade" -msgstr "" +msgstr "Aktualizacja" #. module: base #: field:res.partner,address:0 @@ -6879,7 +6900,7 @@ msgstr "" #. module: base #: field:ir.mail_server,smtp_encryption:0 msgid "Connection Security" -msgstr "" +msgstr "Bezpieczeństwo połączenia" #. module: base #: code:addons/base/ir/ir_actions.py:653 @@ -6948,7 +6969,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_report_intrastat msgid "Intrastat Reporting" -msgstr "" +msgstr "Raportowanie Intrastat" #. module: base #: code:addons/base/res/res_users.py:222 @@ -7143,17 +7164,17 @@ msgstr "Odczyt" #. module: base #: model:ir.module.module,shortdesc:base.module_association msgid "Associations Management" -msgstr "" +msgstr "Organizacje" #. module: base #: help:ir.model,modules:0 msgid "List of modules in which the object is defined or inherited" -msgstr "" +msgstr "Lista modułów, w których obiekt jest zdefiniowany lub dziedziczony" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_payroll msgid "Payroll" -msgstr "" +msgstr "Lista płac" #. module: base #: model:ir.actions.act_window,help:base.action_country_state @@ -7270,7 +7291,7 @@ msgstr "Wewnętrzny nagłówek RML" #. module: base #: field:ir.actions.act_window,search_view_id:0 msgid "Search View Ref." -msgstr "" +msgstr "Odn. widoku szukania" #. module: base #: field:ir.module.module,installed_version:0 @@ -7280,7 +7301,7 @@ msgstr "Ostatnia wersja" #. module: base #: view:ir.mail_server:0 msgid "Test Connection" -msgstr "" +msgstr "Test połączenia" #. module: base #: model:ir.actions.act_window,name:base.action_partner_address_form @@ -7296,7 +7317,7 @@ msgstr "" #. module: base #: help:ir.model.fields,modules:0 msgid "List of modules in which the field is defined" -msgstr "" +msgstr "Lista modułów, w których to pole jest zdefiniowane" #. module: base #: selection:base.language.install,lang:0 @@ -7331,7 +7352,7 @@ msgstr "" #. module: base #: field:res.currency,rounding:0 msgid "Rounding Factor" -msgstr "" +msgstr "Zaokrąglenie" #. module: base #: model:res.country,name:base.ca @@ -7558,17 +7579,17 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_knowledge_management msgid "Knowledge Management" -msgstr "" +msgstr "Zarządzanie wiedzą" #. module: base #: model:ir.actions.act_window,name:base.bank_account_update msgid "Company Bank Accounts" -msgstr "" +msgstr "Konta bankowe firmy" #. module: base #: help:ir.mail_server,smtp_pass:0 msgid "Optional password for SMTP authentication" -msgstr "" +msgstr "Opcjonalne hasło dla SMTP" #. module: base #: model:ir.module.module,description:base.module_project_mrp @@ -7625,7 +7646,7 @@ msgstr "" #. module: base #: model:res.partner.bank.type,name:base.bank_normal msgid "Normal Bank Account" -msgstr "" +msgstr "Zwykłe konto bankowe" #. module: base #: view:ir.actions.wizard:0 @@ -7783,7 +7804,7 @@ msgstr "" #. module: base #: selection:ir.module.module,complexity:0 msgid "Easy" -msgstr "" +msgstr "Prosty" #. module: base #: view:ir.values:0 @@ -7854,7 +7875,7 @@ msgstr "" #: model:ir.module.category,name:base.module_category_project_management #: model:ir.module.module,shortdesc:base.module_project msgid "Project Management" -msgstr "" +msgstr "Projekty" #. module: base #: model:res.country,name:base.us @@ -7864,7 +7885,7 @@ msgstr "Stany Zjednoczone" #. module: base #: model:ir.module.module,shortdesc:base.module_crm_fundraising msgid "Fundraising" -msgstr "" +msgstr "Zwiększenie funduszy" #. module: base #: view:ir.module.module:0 @@ -7881,7 +7902,7 @@ msgstr "Komunikacja" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic msgid "Analytic Accounting" -msgstr "" +msgstr "Księgowość analityczna" #. module: base #: view:ir.actions.report.xml:0 @@ -8069,7 +8090,7 @@ msgstr "" #. module: base #: model:res.groups,name:base.group_extended msgid "Extended View" -msgstr "" +msgstr "Widok rozszerzony" #. module: base #: model:res.country,name:base.pf @@ -8142,7 +8163,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_stock_location msgid "Advanced Routes" -msgstr "" +msgstr "Zaawansowane marszruty" #. module: base #: model:ir.module.module,shortdesc:base.module_pad @@ -8162,24 +8183,24 @@ msgstr "Nepal" #. module: base #: help:res.groups,implied_ids:0 msgid "Users of this group automatically inherit those groups" -msgstr "" +msgstr "Uzytkownicy tej grupy należą równiez do grup" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_attendance msgid "Attendances" -msgstr "" +msgstr "Obecności" #. module: base #: field:ir.module.category,visible:0 msgid "Visible" -msgstr "" +msgstr "Widoczne" #. module: base #: model:ir.actions.act_window,name:base.action_ui_view_custom #: model:ir.ui.menu,name:base.menu_action_ui_view_custom #: view:ir.ui.view.custom:0 msgid "Customized Views" -msgstr "" +msgstr "Dostosowane widoki" #. module: base #: view:partner.sms.send:0 @@ -8297,7 +8318,7 @@ msgstr "Odczytaj ponownie z załącznika" #. module: base #: view:ir.module.module:0 msgid "Hide technical modules" -msgstr "" +msgstr "Ukryj moduły techniczne" #. module: base #: model:ir.module.module,description:base.module_procurement @@ -8329,7 +8350,7 @@ msgstr "Meksyk" #: code:addons/base/ir/ir_mail_server.py:414 #, python-format msgid "Missing SMTP Server" -msgstr "" +msgstr "Brak serwera SMTP" #. module: base #: field:ir.attachment,name:0 @@ -8522,12 +8543,12 @@ msgstr "Wybieralny" #: code:addons/base/ir/ir_mail_server.py:199 #, python-format msgid "Everything seems properly set up!" -msgstr "" +msgstr "Wsyztsko wygląda na poprawnie ustawione !" #. module: base #: field:res.users,date:0 msgid "Latest Connection" -msgstr "" +msgstr "Ostatnie połączenie" #. module: base #: view:res.request.link:0 @@ -8577,12 +8598,12 @@ msgstr "Iteracja" #. module: base #: model:ir.module.module,shortdesc:base.module_project_planning msgid "Resources Planing" -msgstr "" +msgstr "Planowanie zasobów" #. module: base #: field:ir.module.module,complexity:0 msgid "Complexity" -msgstr "" +msgstr "Złożoność" #. module: base #: selection:ir.actions.act_window,target:0 @@ -9018,7 +9039,7 @@ msgstr "Tłumaczenia" #. module: base #: model:ir.module.module,shortdesc:base.module_project_gtd msgid "Todo Lists" -msgstr "" +msgstr "Lista czynności do wykonania" #. module: base #: view:ir.actions.report.xml:0 @@ -9033,6 +9054,8 @@ msgid "" "instead.If SSL is needed, an upgrade to Python 2.6 on the server-side should " "do the trick." msgstr "" +"Twój serwer nie obsługuje SMTP-over-SSL. Możesz za to stosować STARTTLS. " +"Jeśli SSL jest wymagane, to musisz zrobić upgrade pythona 2.6 na serwerze." #. module: base #: model:res.country,name:base.ua @@ -9049,7 +9072,7 @@ msgstr "Strona WWW" #. module: base #: selection:ir.mail_server,smtp_encryption:0 msgid "None" -msgstr "" +msgstr "Brak" #. module: base #: view:ir.module.category:0 @@ -9069,7 +9092,7 @@ msgstr "Skrócony podręcznik" #. module: base #: view:ir.values:0 msgid "Default Value Scope" -msgstr "" +msgstr "Zakres wartości domyślnej" #. module: base #: view:ir.ui.view:0 @@ -9148,6 +9171,8 @@ msgid "" "\n" " " msgstr "" +"\n" +" " #. module: base #: view:ir.actions.act_window:0 @@ -9177,7 +9202,7 @@ msgstr "Data utworzenia" #. module: base #: help:ir.actions.server,trigger_name:0 msgid "The workflow signal to trigger" -msgstr "" +msgstr "Sygnał obiegu do wyzwolenia" #. module: base #: model:ir.module.module,description:base.module_mrp @@ -9226,7 +9251,7 @@ msgstr "" #. module: base #: model:ir.module.module,description:base.module_google_base_account msgid "The module adds google user in res user" -msgstr "" +msgstr "Moduł dodaje użytkownika google do res user" #. module: base #: selection:base.language.install,state:0 @@ -9263,25 +9288,25 @@ msgstr "Algieria" #. module: base #: model:ir.module.module,shortdesc:base.module_plugin msgid "CRM Plugins" -msgstr "" +msgstr "Wtyczki CRM" #. module: base #: model:ir.actions.act_window,name:base.action_model_model #: model:ir.model,name:base.model_ir_model #: model:ir.ui.menu,name:base.ir_model_model_menu msgid "Models" -msgstr "" +msgstr "Modele" #. module: base #: code:addons/base/ir/ir_cron.py:292 #, python-format msgid "Record cannot be modified right now" -msgstr "" +msgstr "Nie można teraz modyfikować rekordu" #. module: base #: selection:ir.actions.todo,type:0 msgid "Launch Manually" -msgstr "" +msgstr "Uruchom ręcznie" #. module: base #: model:res.country,name:base.be @@ -9291,12 +9316,12 @@ msgstr "Belgia" #. module: base #: view:res.company:0 msgid "Preview Header" -msgstr "" +msgstr "Podgląd nagłówka" #. module: base #: field:res.company,paper_format:0 msgid "Paper Format" -msgstr "" +msgstr "Format papieru" #. module: base #: field:base.language.export,lang:0 @@ -9326,7 +9351,7 @@ msgstr "Firmy" #. module: base #: help:res.currency,symbol:0 msgid "Currency sign, to be used when printing amounts." -msgstr "" +msgstr "Znak waluty do druku w raportach." #. module: base #: view:res.lang:0 @@ -9339,7 +9364,7 @@ msgstr "%H - Godzina (czas 24-godzinny) [00,23]." msgid "" "Your server does not seem to support SSL, you may want to try STARTTLS " "instead" -msgstr "" +msgstr "Twój serwer nie obsługuje SSL. Możesz stosować STARTTLS." #. module: base #: model:ir.model,name:base.model_res_widget @@ -9364,12 +9389,12 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_mrp_jit msgid "Just In Time Scheduling" -msgstr "" +msgstr "Planowanie natychmiastowe (JIT)" #. module: base #: model:ir.module.module,shortdesc:base.module_account_bank_statement_extensions msgid "Bank Statement extensions to support e-banking" -msgstr "" +msgstr "Rozszerzenie wyciągu do obsługi e-bankingu." #. module: base #: view:ir.actions.server:0 @@ -9452,7 +9477,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_sale_margin msgid "Margins in Sales Orders" -msgstr "" +msgstr "Marże w zamówieniach sprzedaży" #. module: base #: model:res.partner.category,name:base.res_partner_category_9 @@ -9463,7 +9488,7 @@ msgstr "Dostawca komponentów" #: model:ir.module.category,name:base.module_category_purchase_management #: model:ir.module.module,shortdesc:base.module_purchase msgid "Purchase Management" -msgstr "" +msgstr "Zakupy" #. module: base #: field:ir.module.module,published_version:0 @@ -9525,7 +9550,7 @@ msgstr "" #. module: base #: sql_constraint:res.currency:0 msgid "The currency code must be unique per company!" -msgstr "" +msgstr "Kod waluty musi być unikalny w firmie !" #. module: base #: model:ir.model,name:base.model_ir_property @@ -9576,6 +9601,9 @@ msgid "" "same values as for the condition field.\n" "Example: object.invoice_address_id.email, or 'me@example.com'" msgstr "" +"Wyrażenie które zwraca adres dla odbiorcy. Może być budowane na polach " +"warunkowych.\n" +"Przykład: object.invoice_address_id.email, or 'me@example.com'" #. module: base #: model:ir.module.module,description:base.module_web_hello @@ -9593,7 +9621,7 @@ msgstr "Gujana" #. module: base #: model:ir.module.module,shortdesc:base.module_product_expiry msgid "Products Expiry Date" -msgstr "" +msgstr "Data przydatności produktów" #. module: base #: model:ir.module.module,description:base.module_account @@ -9723,12 +9751,12 @@ msgstr "" #. module: base #: selection:ir.module.module,complexity:0 msgid "Expert" -msgstr "" +msgstr "Zaawansowane" #. module: base #: model:ir.module.module,shortdesc:base.module_hr_holidays msgid "Leaves Management" -msgstr "" +msgstr "Urlopy" #. module: base #: view:ir.actions.todo:0 @@ -9759,6 +9787,9 @@ msgid "" "Todo list for CRM leads and opportunities.\n" " " msgstr "" +"\n" +"Lista czynności dla sygnałów i szans CRM.\n" +" " #. module: base #: field:ir.actions.act_window.view,view_id:0 @@ -9797,7 +9828,7 @@ msgstr "Baza" #: field:ir.model.data,model:0 #: field:ir.values,model:0 msgid "Model Name" -msgstr "" +msgstr "Nazwa modelu" #. module: base #: selection:base.language.install,lang:0 @@ -9877,7 +9908,7 @@ msgstr "Monako" #. module: base #: view:base.module.import:0 msgid "Please be patient, this operation may take a few minutes..." -msgstr "" +msgstr "Ta operacja może trwać kilka minut..." #. module: base #: selection:ir.cron,interval_type:0 @@ -9887,7 +9918,7 @@ msgstr "Minuty" #. module: base #: view:res.currency:0 msgid "Display" -msgstr "" +msgstr "Wyświetlanie" #. module: base #: selection:ir.translation,type:0 @@ -9903,17 +9934,17 @@ msgstr "Jeśli określono, to akcja zamieni standardowe menu dla użytkownika." #. module: base #: model:ir.module.module,shortdesc:base.module_google_map msgid "Google Maps on Customers" -msgstr "" +msgstr "Google Maps dla klientów" #. module: base #: model:ir.actions.report.xml,name:base.preview_report msgid "Preview Report" -msgstr "" +msgstr "Podgląd raportu" #. module: base #: model:ir.module.module,shortdesc:base.module_purchase_analytic_plans msgid "Purchase Analytic Plans" -msgstr "" +msgstr "Plany analizy zakupów" #. module: base #: model:ir.module.module,description:base.module_analytic_journal_billing_rate @@ -9995,7 +10026,7 @@ msgstr "Tygodni" #: code:addons/base/res/res_company.py:157 #, python-format msgid "VAT: " -msgstr "" +msgstr "NIP: " #. module: base #: model:res.country,name:base.af @@ -10064,7 +10095,7 @@ msgstr "Utworzono" #. module: base #: view:ir.module.module:0 msgid "Keywords" -msgstr "" +msgstr "Słowa kluczowe" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_cn @@ -10089,12 +10120,12 @@ msgstr "" #. module: base #: help:ir.model.data,res_id:0 msgid "ID of the target record in the database" -msgstr "" +msgstr "ID rekordu w bazie danych" #. module: base #: model:ir.module.module,shortdesc:base.module_account_analytic_analysis msgid "Contracts Management" -msgstr "" +msgstr "Umowy" #. module: base #: selection:base.language.install,lang:0 @@ -10119,7 +10150,7 @@ msgstr "Do wykonania" #. module: base #: model:ir.module.module,shortdesc:base.module_product_visible_discount msgid "Prices Visible Discounts" -msgstr "" +msgstr "Widoczne upusty cen" #. module: base #: field:ir.attachment,datas:0 @@ -10207,12 +10238,12 @@ msgstr "Nazwa usługi" #. module: base #: model:ir.module.module,shortdesc:base.module_import_base msgid "Framework for complex import" -msgstr "" +msgstr "Narzędzie do grupowych importów" #. module: base #: view:ir.actions.todo.category:0 msgid "Wizard Category" -msgstr "" +msgstr "Kategoria kreatora" #. module: base #: model:ir.module.module,description:base.module_account_cancel @@ -10281,6 +10312,8 @@ msgid "" "Please define BIC/Swift code on bank for bank type IBAN Account to make " "valid payments" msgstr "" +"\n" +"Zdefiniuj kod BIC/Swift dla banku konta typu IBAN" #. module: base #: view:res.lang:0 @@ -10290,7 +10323,7 @@ msgstr "%A - Pełna nazwa dnia tygodnia." #. module: base #: help:ir.values,user_id:0 msgid "If set, action binding only applies for this user." -msgstr "" +msgstr "Jeśli ustawione, to akcja dotyczy tylko tego żuytkownika" #. module: base #: model:res.country,name:base.gw @@ -10300,7 +10333,7 @@ msgstr "" #. module: base #: field:ir.actions.act_window,search_view:0 msgid "Search View" -msgstr "Widok wyszukiwania" +msgstr "Widok szukania" #. module: base #: view:base.language.import:0 @@ -10334,7 +10367,7 @@ msgstr "" #. module: base #: help:res.company,bank_ids:0 msgid "Bank accounts related to this company" -msgstr "" +msgstr "Konta związane z tą firmą" #. module: base #: model:ir.ui.menu,name:base.menu_base_partner @@ -10358,6 +10391,7 @@ msgstr "Wykonano" msgid "" "Specify if missed occurrences should be executed when the server restarts." msgstr "" +"Podaj, jeśli niedokonane operację mają być wykonane przy restarcie serwera." #. module: base #: model:res.partner.title,name:base.res_partner_title_miss @@ -10529,7 +10563,7 @@ msgstr "" #. module: base #: model:ir.model,name:base.model_ir_actions_todo_category msgid "Configuration Wizard Category" -msgstr "" +msgstr "Kategoria kreatora konfiguracji" #. module: base #: view:base.module.update:0 @@ -10615,7 +10649,7 @@ msgstr "Region kraju" #. module: base #: model:ir.ui.menu,name:base.next_id_5 msgid "Sequences & Identifiers" -msgstr "" +msgstr "Numeracje i identyfikatory" #. module: base #: model:ir.module.module,description:base.module_l10n_th @@ -10636,7 +10670,7 @@ msgstr "" #. module: base #: model:ir.module.category,name:base.module_category_point_of_sale msgid "Point of Sales" -msgstr "" +msgstr "Punkt sprzedaży" #. module: base #: model:ir.module.module,description:base.module_hr_payroll_account @@ -10734,11 +10768,13 @@ msgid "" "Helps you manage your human resources by encoding your employees structure, " "generating work sheets, tracking attendance and more." msgstr "" +"Pomaga zarządzać danymi kadrowymi. Definiuje strukturę pracowników, " +"obsługuje karty czasu pracy, rejestruje nieobecności." #. module: base #: help:ir.model.fields,model_id:0 msgid "The model this field belongs to" -msgstr "" +msgstr "To pole modelu należy do" #. module: base #: model:res.country,name:base.mq @@ -10947,7 +10983,7 @@ msgstr "" #. module: base #: view:res.partner.bank:0 msgid "Information About the Bank" -msgstr "" +msgstr "Informacje o banku" #. module: base #: help:ir.actions.server,condition:0 @@ -11000,7 +11036,7 @@ msgstr "Zatrzymaj wszystko" #. module: base #: model:ir.module.module,shortdesc:base.module_analytic_user_function msgid "Jobs on Contracts" -msgstr "" +msgstr "Stanowiska do umów" #. module: base #: model:ir.module.module,description:base.module_import_sugarcrm @@ -11054,6 +11090,7 @@ msgid "" "Lets you install addons geared towards sharing knowledge with and between " "your employees." msgstr "" +"Pozwala instalować moduły do współdzielenia informacji pomiędzy pracownikami." #. module: base #: selection:base.language.install,lang:0 @@ -11078,7 +11115,7 @@ msgstr "Komentarz" #. module: base #: model:res.groups,name:base.group_hr_manager msgid "HR Manager" -msgstr "" +msgstr "Dyrektor kadrowy" #. module: base #: view:ir.filters:0 @@ -11092,7 +11129,7 @@ msgstr "Domena" #. module: base #: model:ir.module.module,shortdesc:base.module_marketing_campaign msgid "Marketing Campaigns" -msgstr "" +msgstr "Kampanie marketingowe" #. module: base #: code:addons/base/publisher_warranty/publisher_warranty.py:144 @@ -11272,7 +11309,7 @@ msgstr "Otwórz okno" #. module: base #: field:ir.actions.act_window,auto_search:0 msgid "Auto Search" -msgstr "" +msgstr "Autoszukanie" #. module: base #: field:ir.actions.act_window,filter:0 @@ -12032,7 +12069,7 @@ msgstr "" #: code:addons/base/ir/ir_model.py:74 #, python-format msgid "Invalid search criterions" -msgstr "" +msgstr "Niedozwolone kryteria szukania" #. module: base #: view:ir.mail_server:0 @@ -14510,7 +14547,7 @@ msgstr "" #. module: base #: view:res.partner.address:0 msgid "Search Contact" -msgstr "Szukaj kontaktu" +msgstr "Szukanie kontaktu" #. module: base #: view:ir.attachment:0 diff --git a/openerp/addons/base/i18n/pt.po b/openerp/addons/base/i18n/pt.po index edec4cffb17..7794f970f91 100644 --- a/openerp/addons/base/i18n/pt.po +++ b/openerp/addons/base/i18n/pt.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:51+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:50+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/pt_BR.po b/openerp/addons/base/i18n/pt_BR.po index 1ac541bb4f4..b1cbf8a8999 100644 --- a/openerp/addons/base/i18n/pt_BR.po +++ b/openerp/addons/base/i18n/pt_BR.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-16 05:03+0000\n" -"X-Generator: Launchpad (build 14781)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:53+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh @@ -102,7 +102,7 @@ msgstr "Código (ex: pt__BR)" #: field:workflow.transition,wkf_id:0 #: field:workflow.workitem,wkf_id:0 msgid "Workflow" -msgstr "Fluxo de Trabalho" +msgstr "Fluxo de trabalho" #. module: base #: selection:ir.sequence,implementation:0 @@ -372,6 +372,12 @@ msgid "" " - tree_but_open\n" "For defaults, an optional condition" msgstr "" +"Para ações, uma das possíveis ações abaixo: \n" +" - client_action_multi\n" +" - client_print_multi\n" +" - client_action_relate\n" +" - tree_but_open\n" +"Por padrão, uma condição opcional" #. module: base #: sql_constraint:res.lang:0 @@ -526,6 +532,10 @@ msgid "" "and reference view. The result is returned as an ordered list of pairs " "(view_id,view_mode)." msgstr "" +"Esta função de campo calcula uma lista ordenada das views que devem estar " +"habilitadas quando mostrando o resultado de uma ação, modo federado de " +"visão, visões e visões de referência. O resultado é retornado como uma lista " +"ordenada de pares (view_id, view_mode)." #. module: base #: model:res.country,name:base.tv @@ -652,6 +662,32 @@ msgid "" " Accounting/Reporting/Generic Reporting/Partners/Follow-ups Sent\n" "\n" msgstr "" +"\n" +"Modulo para automatizar emissão de cartas para faturas não conciliadas, com " +"rechamadas de nível múltipo.\n" +"=============================================================================" +"==========\n" +"\n" +"Você pode definir seus níveis múltiplos de carta de cobrança através do " +"menu:\n" +"Contabilidade / Configuração / Diversos / Acompanhamento\n" +"\n" +"Quando isto é definido, você pode imprimir automaticamente e diariamente " +"a(s) carta(s)-lembrete através de um simples clique no menu:\n" +"Contabilidade / Processamentos periódicos / Faturamento / Enviar " +"acompanhamento\n" +"\n" +"Isso irá gerar um PDF com todas as cartas de acordo com os diferentes níveis " +"de lembrete definido.\n" +"Você pode definir diferentes políticas para diferentes empresas. Você também " +"pode enviar correspondência\n" +"para os clientes.\n" +"\n" +"Lembre-se de que se você quiser verificar o nível de acompanhamento para um " +"dado parceiro / entrada de conta, você pode fazê-lo do menu :\n" +"Contabilidade / Relatórios / Relatórios genéricos / Parceiros / Envio de " +"acompanhamento\n" +"\n" #. module: base #: field:res.country,name:0 @@ -947,6 +983,16 @@ msgid "" "delete on objects and can check logs.\n" " " msgstr "" +"\n" +"Este módulo permite aos administradores a traçabilidate de cada operação dos " +"usuários em todos os objetos do sistema.\n" +"=============================================================================" +"=======================\n" +"\n" +"O Administrador pode atribuir regras para leitura, escrita e deleção nos " +"objetos\n" +"e pode também verificar os logs.\n" +" " #. module: base #: model:res.partner.category,name:base.res_partner_category_4 @@ -1806,6 +1852,20 @@ msgid "" "\n" " " msgstr "" +"\n" +"Este módulo adiciona um botão de compartilhamento que está disponível no " +"client WEB para compartilhar qualquer tipo de dados OpenERP com colegas, " +"clientes, amigos, etc.\n" +"\n" +"O sistema ira criar novos usuários, e grupos automaticamente, e pela " +"combinação apropriada de direitors de acessos e regras poderá assegurar que " +"os novos usuários apenas tenham acesso aos dados que tenham sido " +"compartilhados com eles.\n" +"\n" +"Isto é extremamente útil para um trabalho colaborativo, compartilhamento de " +"conhecimento, sincronização com outras empresas, etc.\n" +"\n" +" " #. module: base #: field:res.currency,accuracy:0 @@ -1922,6 +1982,20 @@ msgid "" "The managers can obtain an easy view of best ideas from all the users.\n" "Once installed, check the menu 'Ideas' in the 'Tools' main menu." msgstr "" +"\n" +"Este modulo permite a seu usuário fácil e eficientemente de participar do " +"processo de inovação da empresa.\n" +"=============================================================================" +"==============\n" +"\n" +"Ele permite a qualquer pessoa expressar idéias sobre diferentes assuntos.\n" +"Então, outros usuários poderão comentar sobre as idéias postadas e votar em " +"idéias postadas.\n" +"Cada idéia tem sua pontuação baseada nas diferentes votações.\n" +"Os gerentes podem obter uma visão fácil das melhores idéias de todas essas " +"pessoas.\n" +"Uma vez instalado, verifique o menu \"Idéias\" do menu principal " +"\"Utilitários\"." #. module: base #: model:ir.model,name:base.model_ir_rule @@ -2149,6 +2223,47 @@ msgid "" "today don't come with any additional paid permission for online use of " "'private modules'." msgstr "" +"\n" +"Módulo base para a localização Brasileira\n" +"================================\n" +"\n" +"Este módulo consiste em de :\n" +"\n" +" - Plano de contas brasileiro genérico\n" +" - Impostos brasileiros, tais como :\n" +"\n" +" - IPI\n" +" - ICMS\n" +" - PIS\n" +" - COFINS\n" +" - ISS\n" +" - IR\n" +" - IRPJ\n" +" - CSLL\n" +"\n" +" - Código de situação tributária (CST) necessário para a nota fiscal " +"eletrônica (NFe)\n" +"\n" +"O campo tax_discount foi também adicionado nos objetos account.tax.template " +"e account.tax para permitir o melhor cálculo de alguns impostos brasileiros " +"tais como ICMS. O assistente de criação do plano de contas foi estendido " +"para propagar estas novas propriedades de dados.\n" +"\n" +"É importante notar, entretanto, que este modulo ainda precisa de várias " +"implementações para se usar o OpenERP regularmente no Brasil. Estas " +"implementações (tais como a Nota Fiscal Eletrônica, que já está operacional) " +"foram incorporadas por mais de 15 módulos adicionais de projetos da " +"Launchpad da localização brasileira https://launchpad.net/openerp.pt-br-" +"localiz e suas dependências no branch de addons extra. O objetivo desses " +"módulos é manter a remarcável modularidade do OpenERP, e é por isso que são " +"muitos, mas pequenos. Uma das razões para a manutenção desses módulos " +"separadamente é que os líderes da localização Brasileira precisam ter " +"agilidade para a confirmação das mudanças para completar a localização como " +"as empresas que financiam os requerimentos legais faltantes (tais como em " +"breve a contabilidade fiscal, contabilidade SPED, SPED fiscal e PAF ECF que " +"ainda estão faltando desde Setembro de 2011). Esses módulos também são " +"estritamente licenciados sob AGPL V3 e atualmente não vem com permissão paga " +"adicional para uso online dos 'modulos privados'." #. module: base #: view:res.request:0 @@ -3640,7 +3755,7 @@ msgstr "" #. module: base #: model:ir.module.module,shortdesc:base.module_report_webkit msgid "Webkit Report Engine" -msgstr "" +msgstr "Motor de Relatório Webkit" #. module: base #: selection:publisher_warranty.contract,state:0 @@ -4071,6 +4186,8 @@ msgid "" "Mail delivery failed via SMTP server '%s'.\n" "%s: %s" msgstr "" +"Entrega de email falhou servidor SMTP '%s'.\n" +"%s:%s" #. module: base #: view:ir.cron:0 @@ -6575,7 +6692,7 @@ msgstr "OHADA - contabilidade" #. module: base #: help:res.bank,bic:0 msgid "Sometimes called BIC or Swift." -msgstr "" +msgstr "As vezes chamado de BIC ou Swift." #. module: base #: model:ir.module.module,description:base.module_l10n_mx @@ -7326,7 +7443,7 @@ msgstr "Ativo" #. module: base #: model:ir.module.module,shortdesc:base.module_l10n_ma msgid "Maroc - Accounting" -msgstr "" +msgstr "Plano de contas Marroquino" #. module: base #: model:res.country,name:base.mn diff --git a/openerp/addons/base/i18n/ro.po b/openerp/addons/base/i18n/ro.po index 3e947cbbfc9..929b9dcf2de 100644 --- a/openerp/addons/base/i18n/ro.po +++ b/openerp/addons/base/i18n/ro.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:51+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:51+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/ru.po b/openerp/addons/base/i18n/ru.po index 62c4e6698cd..dc9a11028a1 100644 --- a/openerp/addons/base/i18n/ru.po +++ b/openerp/addons/base/i18n/ru.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:51+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:51+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/sk.po b/openerp/addons/base/i18n/sk.po index 46f537ae09e..ce96f6e6e62 100644 --- a/openerp/addons/base/i18n/sk.po +++ b/openerp/addons/base/i18n/sk.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:52+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:51+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/sl.po b/openerp/addons/base/i18n/sl.po index a344ffba70b..9110ed58a9e 100644 --- a/openerp/addons/base/i18n/sl.po +++ b/openerp/addons/base/i18n/sl.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:52+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:51+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/sq.po b/openerp/addons/base/i18n/sq.po index 38896cd6a56..d700ce822ed 100644 --- a/openerp/addons/base/i18n/sq.po +++ b/openerp/addons/base/i18n/sq.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:45+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:46+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/sr.po b/openerp/addons/base/i18n/sr.po index ad02d9eec00..2496d711225 100644 --- a/openerp/addons/base/i18n/sr.po +++ b/openerp/addons/base/i18n/sr.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:52+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:51+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/sr@latin.po b/openerp/addons/base/i18n/sr@latin.po index 33da07c056d..0415e0026a2 100644 --- a/openerp/addons/base/i18n/sr@latin.po +++ b/openerp/addons/base/i18n/sr@latin.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-16 05:04+0000\n" -"X-Generator: Launchpad (build 14781)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:54+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/sv.po b/openerp/addons/base/i18n/sv.po index ddb985cb2a8..3cab56df70e 100644 --- a/openerp/addons/base/i18n/sv.po +++ b/openerp/addons/base/i18n/sv.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:53+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/th.po b/openerp/addons/base/i18n/th.po index 5dc4e9d0386..b9216dacb46 100644 --- a/openerp/addons/base/i18n/th.po +++ b/openerp/addons/base/i18n/th.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:53+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/tlh.po b/openerp/addons/base/i18n/tlh.po index b2500e94c1e..995b1f293d4 100644 --- a/openerp/addons/base/i18n/tlh.po +++ b/openerp/addons/base/i18n/tlh.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:53+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/tr.po b/openerp/addons/base/i18n/tr.po index 49dea1a9448..8651c21f7c6 100644 --- a/openerp/addons/base/i18n/tr.po +++ b/openerp/addons/base/i18n/tr.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-10 04:46+0000\n" -"X-Generator: Launchpad (build 14771)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/uk.po b/openerp/addons/base/i18n/uk.po index 8a22baa55ba..82a14810516 100644 --- a/openerp/addons/base/i18n/uk.po +++ b/openerp/addons/base/i18n/uk.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:53+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/ur.po b/openerp/addons/base/i18n/ur.po index b9467f4518a..ce96680e588 100644 --- a/openerp/addons/base/i18n/ur.po +++ b/openerp/addons/base/i18n/ur.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:53+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/vi.po b/openerp/addons/base/i18n/vi.po index d12ece2051f..cbd14f74f5a 100644 --- a/openerp/addons/base/i18n/vi.po +++ b/openerp/addons/base/i18n/vi.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:54+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/zh_CN.po b/openerp/addons/base/i18n/zh_CN.po index e7a932b838e..e690525be69 100644 --- a/openerp/addons/base/i18n/zh_CN.po +++ b/openerp/addons/base/i18n/zh_CN.po @@ -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-02-08 00:44+0000\n" -"PO-Revision-Date: 2012-02-22 15:34+0000\n" -"Last-Translator: Jeff Wang \n" +"PO-Revision-Date: 2012-03-11 06:21+0000\n" +"Last-Translator: Wei \"oldrev\" Li \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-02-23 04:38+0000\n" -"X-Generator: Launchpad (build 14855)\n" +"X-Launchpad-Export-Date: 2012-03-12 04:39+0000\n" +"X-Generator: Launchpad (build 14933)\n" #. module: base #: model:res.country,name:base.sh @@ -10426,7 +10426,7 @@ msgstr "此处决定是否在用户执行操作时显示提示信息" #: model:ir.module.module,shortdesc:base.module_base #: field:res.currency,base:0 msgid "Base" -msgstr "基本信息" +msgstr "本位币" #. module: base #: field:ir.model.data,model:0 diff --git a/openerp/addons/base/i18n/zh_HK.po b/openerp/addons/base/i18n/zh_HK.po index 30dc4956d39..8611aac6b97 100644 --- a/openerp/addons/base/i18n/zh_HK.po +++ b/openerp/addons/base/i18n/zh_HK.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:54+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:52+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/i18n/zh_TW.po b/openerp/addons/base/i18n/zh_TW.po index cacb85a6f34..cea5df866cb 100644 --- a/openerp/addons/base/i18n/zh_TW.po +++ b/openerp/addons/base/i18n/zh_TW.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-02-09 05:55+0000\n" -"X-Generator: Launchpad (build 14763)\n" +"X-Launchpad-Export-Date: 2012-03-10 04:53+0000\n" +"X-Generator: Launchpad (build 14914)\n" #. module: base #: model:res.country,name:base.sh diff --git a/openerp/addons/base/test/test_ir_values.yml b/openerp/addons/base/test/test_ir_values.yml deleted file mode 100644 index c26e7257afd..00000000000 --- a/openerp/addons/base/test/test_ir_values.yml +++ /dev/null @@ -1,87 +0,0 @@ -- - Create some default value for some (non-existing) model, for all users. -- - !python {model: ir.values }: | - # use the old API - self.set(cr, uid, 'default', False, 'my_test_field',['unexisting_model'], 'global value') - # use the new API - self.set_default(cr, uid, 'other_unexisting_model', 'my_other_test_field', 'conditional value', condition='foo=bar') -- - Retrieve them. -- - !python {model: ir.values }: | - # d is a list of triplets (id, name, value) - # Old API - d = self.get(cr, uid, 'default', False, ['unexisting_model']) - assert len(d) == 1, "Only one single value should be retrieved for this model" - assert d[0][1] == 'my_test_field', "Can't retrieve the created default value. (1)" - assert d[0][2] == 'global value', "Can't retrieve the created default value. (2)" - - # New API, Conditional version - d = self.get_defaults(cr, uid, 'other_unexisting_model') - assert len(d) == 0, "No value should be retrieved, the condition is not met" - d = self.get_defaults(cr, uid, 'other_unexisting_model', condition="foo=eggs") - assert len(d) == 0, 'Condition is not met either, no defaults should be returned' - d = self.get_defaults(cr, uid, 'other_unexisting_model', condition="foo=bar") - assert len(d) == 1, "Only one single value should be retrieved" - assert d[0][1] == 'my_other_test_field', "Can't retrieve the created default value. (5)" - assert d[0][2] == 'conditional value', "Can't retrieve the created default value. (6)" -- - Do it again but for a specific user. -- - !python {model: ir.values }: | - self.set(cr, uid, 'default', False, 'my_test_field',['unexisting_model'], 'specific value', preserve_user=True) -- - Retrieve it and check it is the one for the current user. -- - !python {model: ir.values }: | - d = self.get(cr, uid, 'default', False, ['unexisting_model']) - assert len(d) == 1, "Only one default must be returned per field" - assert d[0][1] == 'my_test_field', "Can't retrieve the created default value." - assert d[0][2] == 'specific value', "Can't retrieve the created default value." -- - Create some action bindings for a non-existing model -- - !python {model: ir.values }: | - self.set(cr, uid, 'action', 'tree_but_open', 'OnDblClick Action', ['unexisting_model'], 'ir.actions.act_window,10', isobject=True) - self.set(cr, uid, 'action', 'tree_but_open', 'OnDblClick Action 2', ['unexisting_model'], 'ir.actions.act_window,11', isobject=True) - self.set(cr, uid, 'action', 'client_action_multi', 'Side Wizard', ['unexisting_model'], 'ir.actions.act_window,12', isobject=True) - self.set(cr, uid, 'action', 'client_print_multi', 'Nice Report', ['unexisting_model'], 'ir.actions.report.xml,2', isobject=True) - self.set(cr, uid, 'action', 'client_action_relate', 'Related Stuff', ['unexisting_model'], 'ir.actions.act_window,14', isobject=True) -- - Replace one action binding to set a new name -- - !python {model: ir.values }: | - self.set(cr, uid, 'action', 'tree_but_open', 'OnDblClick Action New', ['unexisting_model'], 'ir.actions.act_window,10', isobject=True) -- - Retrieve the action bindings and check they're correct -- - !python {model: ir.values }: | - actions = self.get(cr, uid, 'action', 'tree_but_open', ['unexisting_model']) - assert len(actions) == 2, "Mismatching number of bound actions" - #first action - assert len(actions[0]) == 3, "Malformed action definition" - assert actions[0][1] == 'OnDblClick Action 2', 'Bound action does not match definition' - assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 11, 'Bound action does not match definition' - #second action - this ones comes last because it was re-created with a different name - assert len(actions[1]) == 3, "Malformed action definition" - assert actions[1][1] == 'OnDblClick Action New', 'Re-Registering an action should replace it' - assert isinstance(actions[1][2], dict) and actions[1][2]['id'] == 10, 'Bound action does not match definition' - - actions = self.get(cr, uid, 'action', 'client_action_multi', ['unexisting_model']) - assert len(actions) == 1, "Mismatching number of bound actions" - assert len(actions[0]) == 3, "Malformed action definition" - assert actions[0][1] == 'Side Wizard', 'Bound action does not match definition' - assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 12, 'Bound action does not match definition' - - actions = self.get(cr, uid, 'action', 'client_print_multi', ['unexisting_model']) - assert len(actions) == 1, "Mismatching number of bound actions" - assert len(actions[0]) == 3, "Malformed action definition" - assert actions[0][1] == 'Nice Report', 'Bound action does not match definition' - assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 2, 'Bound action does not match definition' - - actions = self.get(cr, uid, 'action', 'client_action_relate', ['unexisting_model']) - assert len(actions) == 1, "Mismatching number of bound actions" - assert len(actions[0]) == 3, "Malformed action definition" - assert actions[0][1] == 'Related Stuff', 'Bound action does not match definition' - assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 14, 'Bound action does not match definition' diff --git a/openerp/addons/base/test/test_osv_expression.yml b/openerp/addons/base/test/test_osv_expression.yml index d9a1b215000..618108ef316 100644 --- a/openerp/addons/base/test/test_osv_expression.yml +++ b/openerp/addons/base/test/test_osv_expression.yml @@ -440,16 +440,6 @@ assert res_2 == expected assert res_3 == expected assert res_4 == expected -- - Verify that normalize_domain() works. -- - !python {model: res.partner}: | - from osv import expression - norm_domain = domain = ['&',(1,'=',1),('a','=','b')] - assert norm_domain == expression.normalize(domain), "Normalized domains should be left untouched" - domain = [('x','in',['y','z']),('a.v','=','e'),'|','|',('a','=','b'),'!',('c','>','d'),('e','!=','f'),('g','=','h')] - norm_domain = ['&','&','&'] + domain - assert norm_domain == expression.normalize(domain), "Non-normalized domains should be properly normalized" - Unaccent. Create a company with an accent in its name. - diff --git a/openerp/addons/base/tests/__init__.py b/openerp/addons/base/tests/__init__.py new file mode 100644 index 00000000000..5ea7654c008 --- /dev/null +++ b/openerp/addons/base/tests/__init__.py @@ -0,0 +1,5 @@ +import test_ir_values + +checks = [ + test_ir_values, +] diff --git a/openerp/addons/base/tests/test_ir_values.py b/openerp/addons/base/tests/test_ir_values.py new file mode 100644 index 00000000000..e2871a0d199 --- /dev/null +++ b/openerp/addons/base/tests/test_ir_values.py @@ -0,0 +1,95 @@ +import unittest2 + +import openerp.tests.common as common + +class test_ir_values(common.TransactionCase): + + def test_00(self): + # Create some default value for some (non-existing) model, for all users. + + ir_values = self.registry('ir.values') + # use the old API + ir_values.set(self.cr, self.uid, 'default', False, 'my_test_field', + ['unexisting_model'], 'global value') + # use the new API + ir_values.set_default(self.cr, self.uid, 'other_unexisting_model', + 'my_other_test_field', 'conditional value', condition='foo=bar') + + + # Retrieve them. + + ir_values = self.registry('ir.values') + # d is a list of triplets (id, name, value) + # Old API + d = ir_values.get(self.cr, self.uid, 'default', False, ['unexisting_model']) + assert len(d) == 1, "Only one single value should be retrieved for this model" + assert d[0][1] == 'my_test_field', "Can't retrieve the created default value. (1)" + assert d[0][2] == 'global value', "Can't retrieve the created default value. (2)" + + # New API, Conditional version + d = ir_values.get_defaults(self.cr, self.uid, 'other_unexisting_model') + assert len(d) == 0, "No value should be retrieved, the condition is not met" + d = ir_values.get_defaults(self.cr, self.uid, 'other_unexisting_model', condition="foo=eggs") + assert len(d) == 0, 'Condition is not met either, no defaults should be returned' + d = ir_values.get_defaults(self.cr, self.uid, 'other_unexisting_model', condition="foo=bar") + assert len(d) == 1, "Only one single value should be retrieved" + assert d[0][1] == 'my_other_test_field', "Can't retrieve the created default value. (5)" + assert d[0][2] == 'conditional value', "Can't retrieve the created default value. (6)" + + # Do it again but for a specific user. + + ir_values = self.registry('ir.values') + ir_values.set(self.cr, self.uid, 'default', False, 'my_test_field',['unexisting_model'], 'specific value', preserve_user=True) + + # Retrieve it and check it is the one for the current user. + ir_values = self.registry('ir.values') + d = ir_values.get(self.cr, self.uid, 'default', False, ['unexisting_model']) + assert len(d) == 1, "Only one default must be returned per field" + assert d[0][1] == 'my_test_field', "Can't retrieve the created default value." + assert d[0][2] == 'specific value', "Can't retrieve the created default value." + + # Create some action bindings for a non-existing model. + + ir_values = self.registry('ir.values') + ir_values.set(self.cr, self.uid, 'action', 'tree_but_open', 'OnDblClick Action', ['unexisting_model'], 'ir.actions.act_window,10', isobject=True) + ir_values.set(self.cr, self.uid, 'action', 'tree_but_open', 'OnDblClick Action 2', ['unexisting_model'], 'ir.actions.act_window,11', isobject=True) + ir_values.set(self.cr, self.uid, 'action', 'client_action_multi', 'Side Wizard', ['unexisting_model'], 'ir.actions.act_window,12', isobject=True) + ir_values.set(self.cr, self.uid, 'action', 'client_print_multi', 'Nice Report', ['unexisting_model'], 'ir.actions.report.xml,2', isobject=True) + ir_values.set(self.cr, self.uid, 'action', 'client_action_relate', 'Related Stuff', ['unexisting_model'], 'ir.actions.act_window,14', isobject=True) + + # Replace one action binding to set a new name. + + ir_values = self.registry('ir.values') + ir_values.set(self.cr, self.uid, 'action', 'tree_but_open', 'OnDblClick Action New', ['unexisting_model'], 'ir.actions.act_window,10', isobject=True) + + # Retrieve the action bindings and check they're correct + + ir_values = self.registry('ir.values') + actions = ir_values.get(self.cr, self.uid, 'action', 'tree_but_open', ['unexisting_model']) + assert len(actions) == 2, "Mismatching number of bound actions" + #first action + assert len(actions[0]) == 3, "Malformed action definition" + assert actions[0][1] == 'OnDblClick Action 2', 'Bound action does not match definition' + assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 11, 'Bound action does not match definition' + #second action - this ones comes last because it was re-created with a different name + assert len(actions[1]) == 3, "Malformed action definition" + assert actions[1][1] == 'OnDblClick Action New', 'Re-Registering an action should replace it' + assert isinstance(actions[1][2], dict) and actions[1][2]['id'] == 10, 'Bound action does not match definition' + + actions = ir_values.get(self.cr, self.uid, 'action', 'client_action_multi', ['unexisting_model']) + assert len(actions) == 1, "Mismatching number of bound actions" + assert len(actions[0]) == 3, "Malformed action definition" + assert actions[0][1] == 'Side Wizard', 'Bound action does not match definition' + assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 12, 'Bound action does not match definition' + + actions = ir_values.get(self.cr, self.uid, 'action', 'client_print_multi', ['unexisting_model']) + assert len(actions) == 1, "Mismatching number of bound actions" + assert len(actions[0]) == 3, "Malformed action definition" + assert actions[0][1] == 'Nice Report', 'Bound action does not match definition' + assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 2, 'Bound action does not match definition' + + actions = ir_values.get(self.cr, self.uid, 'action', 'client_action_relate', ['unexisting_model']) + assert len(actions) == 1, "Mismatching number of bound actions" + assert len(actions[0]) == 3, "Malformed action definition" + assert actions[0][1] == 'Related Stuff', 'Bound action does not match definition' + assert isinstance(actions[0][2], dict) and actions[0][2]['id'] == 14, 'Bound action does not match definition' diff --git a/openerp/modules/loading.py b/openerp/modules/loading.py index b3f831f9709..ce16869a304 100644 --- a/openerp/modules/loading.py +++ b/openerp/modules/loading.py @@ -50,6 +50,7 @@ import openerp.pooler as pooler import openerp.release as release import openerp.tools as tools import openerp.tools.osutil as osutil +import openerp.tools.assertion_report as assertion_report from openerp.tools.safe_eval import safe_eval as eval from openerp.tools.translate import _ @@ -94,19 +95,20 @@ def load_module_graph(cr, graph, status=None, perform_checks=True, skip_modules= def load_test(module_name, idref, mode): cr.commit() - if not tools.config.options['test_disable']: - try: - threading.currentThread().testing = True - _load_data(cr, module_name, idref, mode, 'test') - except Exception, e: - _logger.exception( - 'Tests failed to execute in module %s', module_name) - finally: - threading.currentThread().testing = False - if tools.config.options['test_commit']: - cr.commit() - else: - cr.rollback() + try: + threading.currentThread().testing = True + _load_data(cr, module_name, idref, mode, 'test') + return True + except Exception, e: + _logger.error( + 'module %s: an exception occurred in a test', module_name) + return False + finally: + threading.currentThread().testing = False + if tools.config.options['test_commit']: + cr.commit() + else: + cr.rollback() def _load_data(cr, module_name, idref, mode, kind): """ @@ -133,7 +135,7 @@ def load_module_graph(cr, graph, status=None, perform_checks=True, skip_modules= elif ext == '.sql': process_sql_file(cr, fp) elif ext == '.yml': - tools.convert_yaml_import(cr, module_name, fp, idref, mode, noupdate) + tools.convert_yaml_import(cr, module_name, fp, idref, mode, noupdate, report) else: tools.convert_xml_import(cr, module_name, fp, idref, mode, noupdate, report) finally: @@ -201,7 +203,14 @@ def load_module_graph(cr, graph, status=None, perform_checks=True, skip_modules= # on demo data. Other tests can be added into the regular # 'data' section, but should probably not alter the data, # as there is no rollback. - load_test(module_name, idref, mode) + if tools.config.options['test_enable']: + report.record_result(load_test(module_name, idref, mode)) + + # Run the `fast_suite` and `checks` tests given by the module. + if module_name == 'base': + # Also run the core tests after the database is created. + report.record_result(openerp.modules.module.run_unit_tests('openerp')) + report.record_result(openerp.modules.module.run_unit_tests(module_name)) processed_modules.append(package.name) @@ -282,7 +291,6 @@ def load_modules(db, force_demo=False, status=None, update_module=False): # This is a brand new pool, just created in pooler.get_db_and_pool() pool = pooler.get_pool(cr.dbname) - report = tools.assertion_report() if 'base' in tools.config['update'] or 'all' in tools.config['update']: cr.execute("update ir_module_module set state=%s where name=%s and state=%s", ('to upgrade', 'base', 'installed')) @@ -295,6 +303,7 @@ def load_modules(db, force_demo=False, status=None, update_module=False): # processed_modules: for cleanup step after install # loaded_modules: to avoid double loading + report = assertion_report.assertion_report() loaded_modules, processed_modules = load_module_graph(cr, graph, status, perform_checks=(not update_module), report=report) if tools.config['load_language']: @@ -414,7 +423,10 @@ def load_modules(db, force_demo=False, status=None, update_module=False): cr.execute("update ir_module_module set state=%s where state=%s", ('uninstalled', 'to remove',)) cr.commit() - _logger.info('Modules loaded.') + if report.failures: + _logger.error('At least one test failed when loading the modules.') + else: + _logger.info('Modules loaded.') finally: cr.close() diff --git a/openerp/modules/module.py b/openerp/modules/module.py index 6238aadaed0..bc8e21bee7e 100644 --- a/openerp/modules/module.py +++ b/openerp/modules/module.py @@ -20,9 +20,12 @@ # ############################################################################## -import os, sys, imp -from os.path import join as opj +import imp import itertools +import os +from os.path import join as opj +import sys +import types import zipimport import openerp @@ -460,5 +463,124 @@ def get_modules_with_version(): continue return res +def get_test_modules(module, submodule, explode): + """ + Return a list of submodules containing tests. + `submodule` can be: + - None + - the name of a submodule + - '__fast_suite__' + - '__sanity_checks__' + """ + # Turn command-line module, submodule into importable names. + if module is None: + pass + elif module == 'openerp': + module = 'openerp.tests' + else: + module = 'openerp.addons.' + module + '.tests' + + # Try to import the module + try: + __import__(module) + except Exception, e: + if explode: + print 'Can not `import %s`.' % module + import logging + logging.exception('') + sys.exit(1) + else: + if str(e) == 'No module named tests': + # It seems the module has no `tests` sub-module, no problem. + pass + else: + print 'Can not `import %s`.' % module + return [] + + # Discover available test sub-modules. + m = sys.modules[module] + submodule_names = sorted([x for x in dir(m) \ + if x.startswith('test_') and \ + isinstance(getattr(m, x), types.ModuleType)]) + submodules = [getattr(m, x) for x in submodule_names] + + def show_submodules_and_exit(): + if submodule_names: + print 'Available submodules are:' + for x in submodule_names: + print ' ', x + sys.exit(1) + + if submodule is None: + # Use auto-discovered sub-modules. + ms = submodules + elif submodule == '__fast_suite__': + # Obtain the explicit test sub-modules list. + ms = getattr(sys.modules[module], 'fast_suite', None) + # `suite` was used before the 6.1 release instead of `fast_suite`. + ms = ms if ms else getattr(sys.modules[module], 'suite', None) + if ms is None: + if explode: + print 'The module `%s` has no defined test suite.' % (module,) + show_submodules_and_exit() + else: + ms = [] + elif submodule == '__sanity_checks__': + ms = getattr(sys.modules[module], 'checks', None) + if ms is None: + if explode: + print 'The module `%s` has no defined sanity checks.' % (module,) + show_submodules_and_exit() + else: + ms = [] + else: + # Pick the command-line-specified test sub-module. + m = getattr(sys.modules[module], submodule, None) + ms = [m] + + if m is None: + if explode: + print 'The module `%s` has no submodule named `%s`.' % \ + (module, submodule) + show_submodules_and_exit() + else: + ms = [] + + return ms + +def run_unit_tests(module_name): + """ + Return True or False if some tests were found and succeeded or failed. + Return None if no test was found. + """ + import unittest2 + ms = get_test_modules(module_name, '__fast_suite__', explode=False) + ms.extend(get_test_modules(module_name, '__sanity_checks__', explode=False)) + suite = unittest2.TestSuite() + for m in ms: + suite.addTests(unittest2.TestLoader().loadTestsFromModule(m)) + if ms: + _logger.info('module %s: executing %s `fast_suite` and/or `checks` sub-modules', module_name, len(ms)) + # Use a custom stream object to log the test executions. + class MyStream(object): + def __init__(self): + self.r = re.compile(r'^-*$|^ *... *$|^ok$') + def flush(self): + pass + def write(self, s): + if self.r.match(s): + return + first = True + for c in s.split('\n'): + if not first: + c = '` ' + c + first = False + _logger.log(logging.TEST, c) + result = unittest2.TextTestRunner(verbosity=2, stream=MyStream()).run(suite) + if result.wasSuccessful(): + return True + else: + _logger.error('module %s: at least one error occurred in a test', module_name) + return False # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/openerp/service/__init__.py b/openerp/service/__init__.py index c387d272e26..511d62c5862 100644 --- a/openerp/service/__init__.py +++ b/openerp/service/__init__.py @@ -48,6 +48,8 @@ import openerp.wsgi _logger = logging.getLogger(__name__) +# TODO block until the server is really up, accepting connections +# TODO be idemptotent (as long as stop_service was not called). def start_services(): """ Start all services. diff --git a/openerp/tests/__init__.py b/openerp/tests/__init__.py index 6d29053b93c..5fccb07a082 100644 --- a/openerp/tests/__init__.py +++ b/openerp/tests/__init__.py @@ -1,15 +1,24 @@ # -*- coding: utf-8 -*- -import unittest2 +""" +Tests for the OpenERP library. -import test_orm +This module groups a few sub-modules containing unittest2 test cases. + +Tests can be explicitely added to the `fast_suite` or `checks` lists or not. +See the :ref:`test-framework` section in the :ref:`features` list. +""" + +import test_expression import test_ir_sequence -import test_xmlrpc +import test_orm -# Explicit declaration list of test sub-modules. -suite = [ - test_xmlrpc, # Creates a database - test_ir_sequence, # Assume an existing database - test_orm, # Assume an existing database +fast_suite = [ + test_ir_sequence, + ] + +checks = [ + test_expression, + test_orm, ] # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/openerp/tests/common.py b/openerp/tests/common.py index 44696384ce7..ef5b0586136 100644 --- a/openerp/tests/common.py +++ b/openerp/tests/common.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- import os import time +import unittest2 import xmlrpclib import openerp @@ -16,15 +17,6 @@ ADMIN_USER = 'admin' ADMIN_USER_ID = 1 ADMIN_PASSWORD = 'admin' -common_proxy_60 = None -db_proxy_60 = None -object_proxy_60 = None - -common_proxy_61 = None -db_proxy_61 = None -model_proxy_61 = None -model_uri_61 = None - def start_openerp(): """ Start the OpenERP server similary to the openerp-server script. @@ -34,33 +26,59 @@ def start_openerp(): # Ugly way to ensure the server is listening. time.sleep(2) -def create_xmlrpc_proxies(): +def stop_openerp(): """ - setup some xmlrpclib proxies. + Shutdown the OpenERP server similarly to a single ctrl-c. """ - global common_proxy_60 - global db_proxy_60 - global object_proxy_60 - - # Use the old (pre 6.1) API. - url = 'http://%s:%d/xmlrpc/' % (HOST, PORT) - common_proxy_60 = xmlrpclib.ServerProxy(url + 'common') - db_proxy_60 = xmlrpclib.ServerProxy(url + 'db') - object_proxy_60 = xmlrpclib.ServerProxy(url + 'object') - - global common_proxy_61 - global db_proxy_61 - global model_proxy_61 - global model_uri_61 - - # Use the new (6.1) API. - model_uri_61 = 'http://%s:%d/openerp/xmlrpc/1/' % (HOST, PORT) - common_proxy_61 = xmlrpclib.ServerProxy(model_uri_61 + 'common') - db_proxy_61 = xmlrpclib.ServerProxy(model_uri_61 + 'db') - model_proxy_61 = xmlrpclib.ServerProxy(model_uri_61 + 'model/' + DB) - -def tearDownModule(): - """ Shutdown the OpenERP server similarly to a single ctrl-c. """ openerp.service.stop_services() +class TransactionCase(unittest2.TestCase): + """ + Subclass of TestCase with a single transaction, rolled-back at the end of + the tests. + """ + + def setUp(self): + self.cr = openerp.modules.registry.RegistryManager.get(DB).db.cursor() + self.uid = openerp.SUPERUSER_ID + + def tearDown(self): + self.cr.rollback() + self.cr.close() + + def registry(self, model): + return openerp.modules.registry.RegistryManager.get(DB)[model] + +class RpcCase(unittest2.TestCase): + """ + Subclass of TestCase with a few XML-RPC proxies. + """ + + def __init__(self, name): + super(RpcCase, self).__init__(name) + + class A(object): + pass + self.proxy = A() + + # Use the old (pre 6.1) API. + self.proxy.url_60 = url_60 = 'http://%s:%d/xmlrpc/' % (HOST, PORT) + self.proxy.common_60 = xmlrpclib.ServerProxy(url_60 + 'common') + self.proxy.db_60 = xmlrpclib.ServerProxy(url_60 + 'db') + self.proxy.object_60 = xmlrpclib.ServerProxy(url_60 + 'object') + + # Use the new (6.1) API. + self.proxy.url_61 = url_61 = 'http://%s:%d/openerp/xmlrpc/1/' % (HOST, PORT) + self.proxy.common_61 = xmlrpclib.ServerProxy(url_61 + 'common') + self.proxy.db_61 = xmlrpclib.ServerProxy(url_61 + 'db') + self.proxy.model_61 = xmlrpclib.ServerProxy(url_61 + 'model/' + DB) + + @classmethod + def generate_database_name(cls): + if hasattr(cls, '_database_id'): + cls._database_id += 1 + else: + cls._database_id = 0 + return '_fresh_name_' + str(cls._database_id) + '_' + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/openerp/tests/test_expression.py b/openerp/tests/test_expression.py new file mode 100644 index 00000000000..dd78e3fa88c --- /dev/null +++ b/openerp/tests/test_expression.py @@ -0,0 +1,12 @@ +import unittest2 + +import openerp + +class test_domain_normalization(unittest2.TestCase): + def test_normalize_domain(self): + expression = openerp.osv.expression + norm_domain = domain = ['&',(1,'=',1),('a','=','b')] + assert norm_domain == expression.normalize(domain), "Normalized domains should be left untouched" + domain = [('x','in',['y','z']),('a.v','=','e'),'|','|',('a','=','b'),'!',('c','>','d'),('e','!=','f'),('g','=','h')] + norm_domain = ['&','&','&'] + domain + assert norm_domain == expression.normalize(domain), "Non-normalized domains should be properly normalized" diff --git a/openerp/tests/test_ir_sequence.py b/openerp/tests/test_ir_sequence.py index 2e9623c09b9..ce4c19695dc 100644 --- a/openerp/tests/test_ir_sequence.py +++ b/openerp/tests/test_ir_sequence.py @@ -16,11 +16,6 @@ import common DB = common.DB ADMIN_USER_ID = common.ADMIN_USER_ID -def setUpModule(): - common.create_xmlrpc_proxies() - -tearDownModule = common.tearDownModule - def registry(model): return openerp.modules.registry.RegistryManager.get(DB)[model] @@ -174,8 +169,7 @@ class test_ir_sequence_generate(unittest2.TestCase): def test_ir_sequence_create_no_gap(self): """ Try to create a sequence object. """ cr = cursor() - d = dict(code='test_sequence_type_6', name='Test sequence type', - implementation='no_gap') + d = dict(code='test_sequence_type_6', name='Test sequence type') c = registry('ir.sequence.type').create(cr, ADMIN_USER_ID, d, {}) assert c d = dict(code='test_sequence_type_6', name='Test sequence') diff --git a/openerp/tests/test_orm.py b/openerp/tests/test_orm.py index c11d4cd19d2..0c4046df2a4 100644 --- a/openerp/tests/test_orm.py +++ b/openerp/tests/test_orm.py @@ -2,9 +2,10 @@ import os import unittest2 import openerp +import common -UID = 1 -DB = openerp.tools.config['db_name'] +UID = common.ADMIN_USER_ID +DB = common.DB CREATE = lambda values: (0, False, values) UPDATE = lambda id, values: (1, id, values) @@ -14,16 +15,12 @@ LINK_TO = lambda id: (4, id, False) DELETE_ALL = lambda: (5, False, False) REPLACE_WITH = lambda ids: (6, False, ids) -class TestO2MSerialization(unittest2.TestCase): +class TestO2MSerialization(common.TransactionCase): def setUp(self): - self.cr = openerp.modules.registry.RegistryManager.get(DB).db.cursor() - self.partner = openerp.modules.registry.RegistryManager.get(DB)['res.partner'] - self.address = openerp.modules.registry.RegistryManager.get(DB)['res.partner.address'] - - def tearDown(self): - self.cr.rollback() - self.cr.close() + super(TestO2MSerialization, self).setUp() + self.partner = self.registry('res.partner') + self.address = self.registry('res.partner.address') def test_no_command(self): " empty list of commands yields an empty list of records " diff --git a/openerp/tests/test_xmlrpc.py b/openerp/tests/test_xmlrpc.py index 954d3447360..37655e72718 100644 --- a/openerp/tests/test_xmlrpc.py +++ b/openerp/tests/test_xmlrpc.py @@ -13,56 +13,64 @@ import xmlrpclib import openerp import common -DB = common.DB +DB = None ADMIN_USER = common.ADMIN_USER ADMIN_USER_ID = common.ADMIN_USER_ID ADMIN_PASSWORD = common.ADMIN_PASSWORD def setUpModule(): - common.start_openerp() - common.create_xmlrpc_proxies() + common.start_openerp() + global DB + DB = common.RpcCase.generate_database_name() -tearDownModule = common.tearDownModule +tearDownModule = common.stop_openerp -class test_xmlrpc(unittest2.TestCase): +class test_xmlrpc(common.RpcCase): def test_00_xmlrpc_create_database_polling(self): """ Simulate a OpenERP client requesting the creation of a database and polling the server until the creation is complete. """ - progress_id = common.db_proxy_60.create(ADMIN_PASSWORD, DB, True, - False, ADMIN_PASSWORD) + progress_id = self.proxy.db_60.create(ADMIN_PASSWORD,DB, True, False, + ADMIN_PASSWORD) while True: time.sleep(1) - progress, users = common.db_proxy_60.get_progress(ADMIN_PASSWORD, + progress, users = self.proxy.db_60.get_progress(ADMIN_PASSWORD, progress_id) if progress == 1.0: break def test_xmlrpc_login(self): """ Try to login on the common service. """ - uid = common.common_proxy_60.login(DB, ADMIN_USER, ADMIN_PASSWORD) + uid = self.proxy.common_60.login(DB, ADMIN_USER, ADMIN_PASSWORD) assert uid == ADMIN_USER_ID def test_xmlrpc_ir_model_search(self): """ Try a search on the object service. """ - ids = common.object_proxy_60.execute(DB, ADMIN_USER_ID, ADMIN_PASSWORD, + ids = self.proxy.object_60.execute(DB, ADMIN_USER_ID, ADMIN_PASSWORD, 'ir.model', 'search', []) assert ids - ids = common.object_proxy_60.execute(DB, ADMIN_USER_ID, ADMIN_PASSWORD, + ids = self.proxy.object_60.execute(DB, ADMIN_USER_ID, ADMIN_PASSWORD, 'ir.model', 'search', [], {}) assert ids def test_xmlrpc_61_ir_model_search(self): """ Try a search on the object service. """ - proxy = xmlrpclib.ServerProxy(common.model_uri_61 + 'model/' + DB + '/ir.model') + proxy = xmlrpclib.ServerProxy(self.proxy.url_61 + 'model/' + DB + + '/ir.model') ids = proxy.execute(ADMIN_USER_ID, ADMIN_PASSWORD, 'search', []) assert ids ids = proxy.execute(ADMIN_USER_ID, ADMIN_PASSWORD, 'search', [], {}) assert ids + def test_zz_xmlrpc_drop_database(self): + """ + Simulate a OpenERP client requesting the deletion of a database. + """ + assert self.proxy.db_60.drop(ADMIN_PASSWORD, DB) is True + if __name__ == '__main__': unittest2.main() diff --git a/openerp/tools/assertion_report.py b/openerp/tools/assertion_report.py new file mode 100644 index 00000000000..60606d10d9c --- /dev/null +++ b/openerp/tools/assertion_report.py @@ -0,0 +1,29 @@ + +class assertion_report(object): + """ + Simple pair of success and failures counts (used to record YAML and XML + `assert` tags as well as unittest2 tests outcome (in this case, not + individual `assert`)). + """ + def __init__(self): + self.successes = 0 + self.failures = 0 + + def record_success(self): + self.successes += 1 + + def record_failure(self): + self.failures += 1 + + def record_result(self, result): + if result is None: + pass + elif result is True: + self.record_success() + elif result is False: + self.record_failure() + + def __str__(self): + res = 'Assertions report: %s successes, %s failures' % (self.successes, self.failures) + return res + diff --git a/openerp/tools/config.py b/openerp/tools/config.py index a92ad443c7b..3a4329433eb 100644 --- a/openerp/tools/config.py +++ b/openerp/tools/config.py @@ -168,13 +168,10 @@ class configmanager(object): help="Launch a YML test file.") group.add_option("--test-report-directory", dest="test_report_directory", my_default=False, help="If set, will save sample of all reports in this directory.") - group.add_option("--test-disable", action="store_true", dest="test_disable", - my_default=False, help="Disable loading test files.") + group.add_option("--test-enable", action="store_true", dest="test_enable", + my_default=False, help="Enable YAML and unit tests.") group.add_option("--test-commit", action="store_true", dest="test_commit", - my_default=False, help="Commit database changes performed by tests.") - group.add_option("--assert-exit-level", dest='assert_exit_level', type="choice", choices=self._LOGLEVELS.keys(), - my_default='error', - help="specify the level at which a failed assertion will stop the server. Accepted values: %s" % (self._LOGLEVELS.keys(),)) + my_default=False, help="Commit database changes performed by YAML or XML tests.") parser.add_option_group(group) # Logging Group @@ -395,7 +392,7 @@ class configmanager(object): 'debug_mode', 'smtp_ssl', 'load_language', 'stop_after_init', 'logrotate', 'without_demo', 'netrpc', 'xmlrpc', 'syslog', 'list_db', 'xmlrpcs', 'proxy_mode', - 'test_file', 'test_disable', 'test_commit', 'test_report_directory', + 'test_file', 'test_enable', 'test_commit', 'test_report_directory', 'osv_memory_count_limit', 'osv_memory_age_limit', 'max_cron_threads', 'virtual_memory_limit', 'virtual_memory_reset', 'cpu_time_limit', 'unaccent', ] @@ -408,11 +405,6 @@ class configmanager(object): elif isinstance(self.options[arg], basestring) and self.casts[arg].type in optparse.Option.TYPE_CHECKER: self.options[arg] = optparse.Option.TYPE_CHECKER[self.casts[arg].type](self.casts[arg], arg, self.options[arg]) - if opt.assert_exit_level: - self.options['assert_exit_level'] = self._LOGLEVELS[opt.assert_exit_level] - else: - self.options['assert_exit_level'] = self._LOGLEVELS.get(self.options['assert_exit_level']) or int(self.options['assert_exit_level']) - self.options['root_path'] = os.path.abspath(os.path.expanduser(os.path.expandvars(os.path.dirname(openerp.__file__)))) if not self.options['addons_path'] or self.options['addons_path']=='None': self.options['addons_path'] = os.path.join(self.options['root_path'], 'addons') @@ -582,7 +574,7 @@ class configmanager(object): continue if opt in self.blacklist_for_save: continue - if opt in ('log_level', 'assert_exit_level'): + if opt in ('log_level',): p.set('options', opt, loglevelnames.get(self.options[opt], self.options[opt])) else: p.set('options', opt, self.options[opt]) diff --git a/openerp/tools/convert.py b/openerp/tools/convert.py index ec096a87218..c2c610c16af 100644 --- a/openerp/tools/convert.py +++ b/openerp/tools/convert.py @@ -30,6 +30,8 @@ import re import time import openerp.release as release +import assertion_report + _logger = logging.getLogger(__name__) try: @@ -200,35 +202,6 @@ escape_re = re.compile(r'(?= config['assert_exit_level']: - # TODO: define a dedicated exception - raise Exception('Severe assertion failure') + _logger.error(msg) return assert ids is not None,\ @@ -759,20 +727,16 @@ form: module.record_id""" % (xml_id,) expected_value = _eval_xml(self, test, self.pool, cr, uid, self.idref, context=context) or True expression_value = unsafe_eval(f_expr, globals_dict) if expression_value != expected_value: # assertion failed - self.assert_report.record_assertion(False, severity) + self.assertion_report.record_failure() msg = 'assertion "%s" failed!\n' \ ' xmltag: %s\n' \ ' expected value: %r\n' \ ' obtained value: %r\n' \ % (rec_string, etree.tostring(test), expected_value, expression_value) - sevval = getattr(logging, severity.upper()) - _logger.log(sevval, msg) - if sevval >= config['assert_exit_level']: - # TODO: define a dedicated exception - raise Exception('Severe assertion failure') + _logger.error(msg) return else: # all tests were successful for this assertion tag (no break) - self.assert_report.record_assertion(True, severity) + self.assertion_report.record_success() def _tag_record(self, cr, rec, data_node=None): rec_model = rec.get("model").encode('ascii') @@ -906,8 +870,8 @@ form: module.record_id""" % (xml_id,) self.pool = pooler.get_pool(cr.dbname) self.uid = 1 if report is None: - report = assertion_report() - self.assert_report = report + report = assertion_report.assertion_report() + self.assertion_report = report self.noupdate = noupdate self._tags = { 'menuitem': self._tag_menuitem, diff --git a/openerp/tools/yaml_import.py b/openerp/tools/yaml_import.py index c36376ba1b7..082b6487baa 100644 --- a/openerp/tools/yaml_import.py +++ b/openerp/tools/yaml_import.py @@ -19,6 +19,8 @@ from lxml import etree unsafe_eval = eval from safe_eval import safe_eval as eval +import assertion_report + _logger = logging.getLogger(__name__) class YamlImportException(Exception): @@ -85,33 +87,6 @@ def is_ir_set(node): def is_string(node): return isinstance(node, basestring) -class TestReport(object): - def __init__(self): - self._report = {} - - def record(self, success, severity): - """ - Records the result of an assertion for the failed/success count. - Returns success. - """ - if severity in self._report: - self._report[severity][success] += 1 - else: - self._report[severity] = {success: 1, not success: 0} - return success - - def __str__(self): - res = [] - res.append('\nAssertions report:\nLevel\tsuccess\tfailure') - success = failure = 0 - for severity in self._report: - res.append("%s\t%s\t%s" % (severity, self._report[severity][True], self._report[severity][False])) - success += self._report[severity][True] - failure += self._report[severity][False] - res.append("total\t%s\t%s" % (success, failure)) - res.append("end of report (%s assertion(s) checked)" % (success + failure)) - return "\n".join(res) - class RecordDictWrapper(dict): """ Used to pass a record as locals in eval: @@ -125,13 +100,15 @@ class RecordDictWrapper(dict): return dict.__getitem__(self, key) class YamlInterpreter(object): - def __init__(self, cr, module, id_map, mode, filename, noupdate=False): + def __init__(self, cr, module, id_map, mode, filename, report=None, noupdate=False): self.cr = cr self.module = module self.id_map = id_map self.mode = mode self.filename = filename - self.assert_report = TestReport() + if report is None: + report = assertion_report.assertion_report() + self.assertion_report = report self.noupdate = noupdate self.pool = pooler.get_pool(cr.dbname) self.uid = 1 @@ -210,18 +187,9 @@ class YamlInterpreter(object): def process_comment(self, node): return node - def _log_assert_failure(self, severity, msg, *args): - if isinstance(severity, types.StringTypes): - levelname = severity.strip().upper() - level = logging.getLevelName(levelname) - else: - level = severity - levelname = logging.getLevelName(level) - self.assert_report.record(False, levelname) - _logger.log(level, msg, *args) - if level >= config['assert_exit_level']: - raise YamlImportAbortion('Severe assertion failure (%s), aborting.' % levelname) - return + def _log_assert_failure(self, msg, *args): + self.assertion_report.record_failure() + _logger.error(msg, *args) def _get_assertion_id(self, assertion): if assertion.id: @@ -250,7 +218,7 @@ class YamlInterpreter(object): ' expected count: %d\n' \ ' obtained count: %d\n' args = (assertion.string, assertion.count, len(ids)) - self._log_assert_failure(assertion.severity, msg, *args) + self._log_assert_failure(msg, *args) else: context = self.get_context(assertion, self.eval_context) for id in ids: @@ -283,10 +251,10 @@ class YamlInterpreter(object): args += ( lmsg, aop, rmsg ) break - self._log_assert_failure(assertion.severity, msg, *args) + self._log_assert_failure(msg, *args) return else: # all tests were successful for this assertion tag (no break) - self.assert_report.record(True, assertion.severity) + self.assertion_report.record_success() def _coerce_bool(self, value, default=False): if isinstance(value, types.BooleanType): @@ -528,13 +496,13 @@ class YamlInterpreter(object): code_obj = compile(statements, self.filename, 'exec') unsafe_eval(code_obj, {'ref': self.get_id}, code_context) except AssertionError, e: - self._log_assert_failure(python.severity, 'AssertionError in Python code %s: %s', python.name, e) + self._log_assert_failure('AssertionError in Python code %s: %s', python.name, e) return except Exception, e: _logger.debug('Exception during evaluation of !python block in yaml_file %s.', self.filename, exc_info=True) raise else: - self.assert_report.record(True, python.severity) + self.assertion_report.record_success() def process_workflow(self, node): workflow, values = node.items()[0] @@ -827,7 +795,7 @@ class YamlInterpreter(object): """ Empty node or commented node should not pass silently. """ - self._log_assert_failure(logging.WARNING, "You have an empty block in your tests.") + self._log_assert_failure("You have an empty block in your tests.") def process(self, yaml_string): @@ -900,11 +868,11 @@ class YamlInterpreter(object): is_preceded_by_comment = False return is_preceded_by_comment -def yaml_import(cr, module, yamlfile, idref=None, mode='init', noupdate=False): +def yaml_import(cr, module, yamlfile, idref=None, mode='init', noupdate=False, report=None): if idref is None: idref = {} yaml_string = yamlfile.read() - yaml_interpreter = YamlInterpreter(cr, module, idref, mode, filename=yamlfile.name, noupdate=noupdate) + yaml_interpreter = YamlInterpreter(cr, module, idref, mode, filename=yamlfile.name, report=report, noupdate=noupdate) yaml_interpreter.process(yaml_string) # keeps convention of convert.py