[MERGE]: Merge with lp:openobject-server

bzr revid: atp@tinyerp.com-20120313133708-lc4x4ekn2xv517b8
This commit is contained in:
Atul Patel (OpenERP) 2012-03-13 19:07:08 +05:30
commit 85dd5f6164
103 changed files with 3261 additions and 963 deletions

View File

@ -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 <target>' where <target> 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

BIN
doc/_static/openerp.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

16
doc/_templates/sidebarintro.html vendored Normal file
View File

@ -0,0 +1,16 @@
<p class="logo"><a href="http://doc.openerp.com/">
<img class="logo" src="{{ pathto('_static/openerp.png', 1) }}" alt="Logo"/>
</a></p>
<h3>Other Docs</h3>
<ul>
<li><a href="http://doc.openerp.com/trunk/developers">OpenERP Developers Documentation</a></li>
<li><a href="http://doc.openerp.com/trunk/developers/web">OpenERP Web Developers Documentation</a></li>
<li><a href="http://doc.openerp.com/trunk/users">OpenERP Users Documentation</a></li>
</ul>
<h3>Useful Links</h3>
<ul>
<li><a href="http://www.openerp.com/">The OpenERP website</a></li>
<li><a href="http://python.org/">The Python programming language</a></li>
</ul>

3
doc/_templates/sidebarlogo.html vendored Normal file
View File

@ -0,0 +1,3 @@
<p class="logo"><a href="{{ pathto(master_doc) }}">
<img class="logo" src="{{ pathto('_static/openerp.png', 1) }}" alt="Logo"/>
</a></p>

3
doc/_themes/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*.pyc
*.pyo
.DS_Store

37
doc/_themes/LICENSE vendored Normal file
View File

@ -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.

31
doc/_themes/README vendored Normal file
View File

@ -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

25
doc/_themes/flask/layout.html vendored Normal file
View File

@ -0,0 +1,25 @@
{%- extends "basic/layout.html" %}
{%- block extrahead %}
{{ super() }}
{% if theme_touch_icon %}
<link rel="apple-touch-icon" href="{{ pathto('_static/' ~ theme_touch_icon, 1) }}" />
{% endif %}
<link media="only screen and (max-device-width: 480px)" href="{{
pathto('_static/small_flask.css', 1) }}" type= "text/css" rel="stylesheet" />
{% endblock %}
{%- block relbar2 %}{% endblock %}
{% block header %}
{{ super() }}
{% if pagename == 'index' %}
<div class=indexwrapper>
{% endif %}
{% endblock %}
{%- block footer %}
<div class="footer">
&copy; Copyright {{ copyright }}
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> and a modified <a href="https://github.com/mitsuhiko/flask-sphinx-themes">Flask theme</a>.
</div>
{% if pagename == 'index' %}
</div>
{% endif %}
{%- endblock %}

19
doc/_themes/flask/relations.html vendored Normal file
View File

@ -0,0 +1,19 @@
<h3>Related Topics</h3>
<ul>
<li><a href="{{ pathto(master_doc) }}">Documentation overview</a><ul>
{%- for parent in parents %}
<li><a href="{{ parent.link|e }}">{{ parent.title }}</a><ul>
{%- endfor %}
{%- if prev %}
<li>Previous: <a href="{{ prev.link|e }}" title="{{ _('previous chapter')
}}">{{ prev.title }}</a></li>
{%- endif %}
{%- if next %}
<li>Next: <a href="{{ next.link|e }}" title="{{ _('next chapter')
}}">{{ next.title }}</a></li>
{%- endif %}
{%- for parent in parents %}
</ul></li>
{%- endfor %}
</ul></li>
</ul>

395
doc/_themes/flask/static/flasky.css_t vendored Normal file
View File

@ -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;
}

View File

@ -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;
}

9
doc/_themes/flask/theme.conf vendored Normal file
View File

@ -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 =

22
doc/_themes/flask_small/layout.html vendored Normal file
View File

@ -0,0 +1,22 @@
{% extends "basic/layout.html" %}
{% block header %}
{{ super() }}
{% if pagename == 'index' %}
<div class=indexwrapper>
{% endif %}
{% endblock %}
{% block footer %}
{% if pagename == 'index' %}
</div>
{% endif %}
{% endblock %}
{# do not display relbars #}
{% block relbar1 %}{% endblock %}
{% block relbar2 %}
{% if theme_github_fork %}
<a href="http://github.com/{{ theme_github_fork }}"><img style="position: fixed; top: 0; right: 0; border: 0;"
src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>
{% endif %}
{% endblock %}
{% block sidebar1 %}{% endblock %}
{% block sidebar2 %}{% endblock %}

View File

@ -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;
}

10
doc/_themes/flask_small/theme.conf vendored Normal file
View File

@ -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 = ''

86
doc/_themes/flask_theme_support.py vendored Normal file
View File

@ -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'
}

10
doc/api/core.rst Normal file
View File

@ -0,0 +1,10 @@
.. _openerp library:
Server-side library
-------------------
.. automodule:: openerp
:members:
:undoc-members:

7
doc/api/models.rst Normal file
View File

@ -0,0 +1,7 @@
ORM and models
--------------
.. automodule:: openerp.osv.orm
:members:
:undoc-members:

20
doc/api/startup.rst Normal file
View File

@ -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

256
doc/conf.py Normal file
View File

@ -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
# "<project> v<release> 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 <link> 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),
}

6
doc/index.rst Normal file
View File

@ -0,0 +1,6 @@
:orphan:
OpenERP Server Developers Documentation
=======================================
.. include:: index.rst.inc

8
doc/index.rst.inc Normal file
View File

@ -0,0 +1,8 @@
OpenERP Server
''''''''''''''
.. toctree::
:maxdepth: 1
test-framework

100
doc/test-framework.rst Normal file
View File

@ -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 ``<addons-name>.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 <test-framework>` 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

View File

@ -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.

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -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"

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-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 <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -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 <freddy.gonzalez@clearcorp.co.cr>\n"
"Last-Translator: Freddy Gonzalez <freddy.gonzalez.contreras@gmail.com>\n"
"Language-Team: Spanish (Costa Rica) <es_CR@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -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"

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

File diff suppressed because it is too large Load Diff

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-server\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 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 <Unknown>\n"
"Language-Team: Gujarati <gu@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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 "સર્ચ મેથડ આ ઓબ્જેક્ટ પર પ્રસ્થાપિત કરેલ નથી!"

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -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 <komsas@gmail.com>\n"
"Last-Translator: Paulius Sladkevičius <paulius@hacbee.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

File diff suppressed because it is too large Load Diff

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 00:44+0000\n"
"PO-Revision-Date: 2012-02-22 15:34+0000\n"
"Last-Translator: Jeff Wang <wjfonhand@hotmail.com>\n"
"PO-Revision-Date: 2012-03-11 06:21+0000\n"
"Last-Translator: Wei \"oldrev\" Li <oldrev@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 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

View File

@ -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'

View File

@ -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.
-

View File

@ -0,0 +1,5 @@
import test_ir_values
checks = [
test_ir_values,
]

View File

@ -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'

View File

@ -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']:
@ -416,7 +425,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()

View File

@ -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:

View File

@ -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.

View File

@ -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:

View File

@ -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:

View File

@ -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"

View File

@ -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')

View File

@ -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 "

View File

@ -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()

View File

@ -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

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