bzr revid: nicolas.vanhoren@openerp.com-20110705085322-9maq2605k6dvnfho
This commit is contained in:
niv-openerp 2011-07-05 10:53:22 +02:00
commit f7851b64ae
131 changed files with 613 additions and 239 deletions

2
debian/po/bg.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/ca.po vendored
View File

@ -15,7 +15,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/cs.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/de.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/el.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/en_GB.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/es.po vendored
View File

@ -15,7 +15,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/es_CL.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/es_EC.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/fa.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/fi.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/fr.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/gl.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/he.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/hr.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/hu.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/it.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/ja.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/ko.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/lv.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/mn.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/nb.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/nl.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/pl.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/pt.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/pt_BR.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/ro.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/ru.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/sk.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/sq.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/sr.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/sv.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
"X-Poedit-Language: Swedish\n"

2
debian/po/tr.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/uk.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/vi.po vendored
View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/zh_CN.po vendored
View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. Type: string

2
debian/po/zh_TW.po vendored
View File

@ -12,7 +12,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:46+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
"X-Poedit-Country: TAIWAN\n"
"X-Poedit-Language: Chinese\n"

1
openerp/.apidoc Normal file
View File

@ -0,0 +1 @@
excludes: pychart release openerp-server test run_tests addons/base_quality_interrogation

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:34+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:54+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:34+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:54+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:34+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:54+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base
@ -23,7 +23,7 @@ msgstr ""
#: field:ir.rule,domain_force:0
#: field:res.partner.title,domain:0
msgid "Domain"
msgstr ""
msgstr "النطاق"
#. module: base
#: model:res.country,name:base.sh
@ -33,12 +33,12 @@ msgstr "سانت هيلينا"
#. module: base
#: view:ir.actions.report.xml:0
msgid "Other Configuration"
msgstr ""
msgstr "عدادت أخري"
#. module: base
#: selection:ir.property,type:0
msgid "DateTime"
msgstr ""
msgstr "الوقت و التاريخ"
#. module: base
#: code:addons/fields.py:534
@ -52,18 +52,18 @@ msgstr ""
#: view:ir.values:0
#: field:ir.values,meta_unpickle:0
msgid "Metadata"
msgstr "الفوقية"
msgstr "بيانات وصفية"
#. module: base
#: field:ir.ui.view,arch:0
#: field:ir.ui.view.custom,arch:0
msgid "View Architecture"
msgstr ""
msgstr "العرض الهندسي"
#. module: base
#: field:base.language.import,code:0
msgid "Code (eg:en__US)"
msgstr ""
msgstr "الرمز (مثال: ar_EG)"
#. module: base
#: view:workflow:0
@ -73,32 +73,32 @@ msgstr ""
#: field:workflow.transition,wkf_id:0
#: field:workflow.workitem,wkf_id:0
msgid "Workflow"
msgstr ""
msgstr "مسار العمل"
#. module: base
#: view:partner.sms.send:0
msgid "SMS - Gateway: clickatell"
msgstr ""
msgstr "بوابة خدمة الرسائل القصيرة: كليكاتل (clickatell)"
#. module: base
#: selection:base.language.install,lang:0
msgid "Hungarian / Magyar"
msgstr "المجرية / Magyar"
msgstr "المجرية"
#. module: base
#: selection:ir.model.fields,select_level:0
msgid "Not Searchable"
msgstr ""
msgstr "لا يمكن البحث"
#. module: base
#: selection:base.language.install,lang:0
msgid "Spanish (VE) / Español (VE)"
msgstr ""
msgstr "الأسبانية"
#. module: base
#: field:ir.actions.server,wkf_model_id:0
msgid "Workflow On"
msgstr ""
msgstr "سير العمل نشط"
#. module: base
#: field:ir.actions.act_window,display_menu_tip:0

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:35+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:55+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:35+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:55+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:35+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:55+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:35+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:55+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:36+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:56+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -15,7 +15,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:37+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:57+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -12,7 +12,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:37+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:57+0000\n"
"X-Generator: Launchpad (build 13168)\n"
"X-Poedit-Country: GREECE\n"
"X-Poedit-Language: Greek\n"

View File

@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: openobject-server\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-06-27 13:53+0000\n"
"PO-Revision-Date: 2011-06-30 15:19+0000\n"
"Last-Translator: John Bradshaw <Unknown>\n"
"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-28 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:03+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base
@ -2348,7 +2348,7 @@ msgstr "Sir"
#: code:addons/orm.py:1622
#, python-format
msgid "There is no view of type '%s' defined for the structure!"
msgstr ""
msgstr "There is no view of type '%s' defined for the structure!"
#. module: base
#: field:ir.default,ref_id:0
@ -2494,7 +2494,7 @@ msgstr "Title"
#. module: base
#: help:ir.property,res_id:0
msgid "If not set, acts as a default value for new resources"
msgstr ""
msgstr "If not set, acts as a default value for new resources"
#. module: base
#: code:addons/orm.py:3448
@ -3618,7 +3618,7 @@ msgstr "Kazakhstan"
#. module: base
#: view:res.lang:0
msgid "%w - Weekday number [0(Sunday),6]."
msgstr ""
msgstr "%w - Weekday number [0(Sunday),6]."
#. module: base
#: model:ir.actions.act_window,help:base.action_partner_form

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:42+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:02+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:44+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:03+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:04+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:36+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:56+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:34+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:55+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -9,7 +9,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:40+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:59+0000\n"
"X-Generator: Launchpad (build 13168)\n"
"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n"
"X-Poedit-Language: Persian\n"

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:04+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:36+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:56+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:37+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:57+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:37+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:57+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:37+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:57+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:41+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:01+0000\n"
"X-Generator: Launchpad (build 13168)\n"
"Language: hr\n"

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:38+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:57+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:34+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:54+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:38+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:58+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:38+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:58+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:38+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:58+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:38+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:58+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:58+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:59+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:58+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:59+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:59+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:59+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:36+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:56+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:44+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:04+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:40+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:00+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:40+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:00+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:43+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:03+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:40+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:00+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:41+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:00+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base
@ -3897,7 +3897,7 @@ msgstr "Название группы не может начинаться с \"
#: view:ir.ui.view_sc:0
#: field:res.partner.title,shortcut:0
msgid "Shortcut"
msgstr "Закладка"
msgstr "Сокращение"
#. module: base
#: field:ir.model.data,date_init:0
@ -4902,7 +4902,7 @@ msgstr "Внутренний заголовок RML"
#. module: base
#: field:ir.actions.act_window,search_view_id:0
msgid "Search View Ref."
msgstr "Поиск ссылки на обзор"
msgstr "Ссылка на поиск вида"
#. module: base
#: field:ir.module.module,installed_version:0
@ -5811,7 +5811,7 @@ msgstr "Основные параметры"
#. module: base
#: model:ir.ui.menu,name:base.menu_administration_shortcut
msgid "Custom Shortcuts"
msgstr "Пользовательские комбинации клавиш"
msgstr "Пользовательские закладки"
#. module: base
#: selection:base.language.install,lang:0

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:41+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:01+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:42+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:01+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:34+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 04:54+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:41+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:01+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:45+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:05+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:42+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:02+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:42+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:02+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:42+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:02+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:43+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:02+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base
@ -80,7 +80,7 @@ msgstr "İş Akışı"
#. module: base
#: view:partner.sms.send:0
msgid "SMS - Gateway: clickatell"
msgstr "SMS - Gateway: Clickatell Hizmeti"
msgstr "SMS - Geçidi: Clickatell Hizmeti"
#. module: base
#: selection:base.language.install,lang:0

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:43+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:02+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:43+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:03+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:43+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:03+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:44+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:04+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-06-27 04:44+0000\n"
"X-Launchpad-Export-Date: 2011-07-02 05:04+0000\n"
"X-Generator: Launchpad (build 13168)\n"
#. module: base

View File

@ -57,6 +57,9 @@ def close_socket(sock):
sock.close()
#.apidoc title: Common Services: netsvc
#.apidoc module-mods: member-order: bysource
class Service(object):
""" Base class for *Local* services
@ -242,19 +245,22 @@ def init_alternative_logger():
logger.setLevel(logging.ERROR)
class Agent(object):
"""Singleton that keeps track of cancellable tasks to run at a given
timestamp.
The tasks are caracterised by:
""" Singleton that keeps track of cancellable tasks to run at a given
timestamp.
The tasks are characterised by:
* a timestamp
* the database on which the task run
* the function to call
* the arguments and keyword arguments to pass to the function
Implementation details:
Tasks are stored as list, allowing the cancellation by setting
the timestamp to 0.
A heapq is used to store tasks, so we don't need to sort
tasks ourself.
- Tasks are stored as list, allowing the cancellation by setting
the timestamp to 0.
- A heapq is used to store tasks, so we don't need to sort
tasks ourself.
"""
__tasks = []
__tasks_by_db = {}

View File

@ -22,6 +22,7 @@
import osv
import fields
#.apidoc title: Object Services and Relational Mapping
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -23,6 +23,8 @@
from openerp.tools import flatten, reverse_enumerate
import fields
#.apidoc title: Domain Expressions
NOT_OPERATOR = '!'
OR_OPERATOR = '|'
AND_OPERATOR = '&'

View File

@ -19,18 +19,19 @@
#
##############################################################################
# . Fields:
# - simple
# - relations (one2many, many2one, many2many)
# - function
#
# Fields Attributes:
# _classic_read: is a classic sql fields
# _type : field type
# readonly
# required
# size
#
""" Fields:
- simple
- relations (one2many, many2one, many2many)
- function
Fields Attributes:
* _classic_read: is a classic sql fields
* _type : field type
* readonly
* required
* size
"""
import datetime as DT
import string
import sys
@ -51,6 +52,12 @@ def _symbol_set(symb):
class _column(object):
""" Base of all fields, a database column
An instance of this object is a *description* of a database column. It will
not hold any data, but only provide the methods to manipulate data of an
ORM record or even prepare/update the database to hold such a field of data.
"""
_classic_read = True
_classic_write = True
_prefetch = True
@ -746,6 +753,192 @@ def sanitize_binary_value(value):
# Function fields
# ---------------------------------------------------------
class function(_column):
"""
A field whose value is computed by a function (rather
than being read from the database).
:param fnct: the callable that will compute the field value.
:param arg: arbitrary value to be passed to ``fnct`` when computing the value.
:param fnct_inv: the callable that will allow writing values in that field
(if not provided, the field is read-only).
:param fnct_inv_arg: arbitrary value to be passed to ``fnct_inv`` when
writing a value.
:param str type: type of the field simulated by the function field
:param fnct_search: the callable that allows searching on the field
(if not provided, search will not return any result).
:param store: store computed value in database
(see :ref:`The *store* parameter <field-function-store>`).
:type store: True or dict specifying triggers for field computation
:param multi: name of batch for batch computation of function fields.
All fields with the same batch name will be computed by
a single function call. This changes the signature of the
``fnct`` callable.
.. _field-function-fnct: The ``fnct`` parameter
.. rubric:: The ``fnct`` parameter
The callable implementing the function field must have the following signature:
.. function:: fnct(model, cr, uid, ids, field_name(s), arg, context)
Implements the function field.
:param orm_template model: model to which the field belongs (should be ``self`` for
a model method)
:param field_name(s): name of the field to compute, or if ``multi`` is provided,
list of field names to compute.
:type field_name(s): str | [str]
:param arg: arbitrary value passed when declaring the function field
:rtype: dict
:return: mapping of ``ids`` to computed values, or if multi is provided,
to a map of field_names to computed values
The values in the returned dictionary must be of the type specified by the type
argument in the field declaration.
Here is an example with a simple function ``char`` function field::
# declarations
def compute(self, cr, uid, ids, field_name, arg, context):
result = {}
# ...
return result
_columns['my_char'] = fields.function(compute, type='char', size=50)
# when called with ``ids=[1,2,3]``, ``compute`` could return:
{
1: 'foo',
2: 'bar',
3: False # null values should be returned explicitly too
}
If ``multi`` is set, then ``field_name`` is replaced by ``field_names``: a list
of the field names that should be computed. Each value in the returned
dictionary must then be a dictionary mapping field names to values.
Here is an example where two function fields (``name`` and ``age``)
are both computed by a single function field::
# declarations
def compute(self, cr, uid, ids, field_names, arg, context):
result = {}
# ...
return result
_columns['name'] = fields.function(compute_person_data, type='char',\
size=50, multi='person_data')
_columns[''age'] = fields.function(compute_person_data, type='integer',\
multi='person_data')
# when called with ``ids=[1,2,3]``, ``compute_person_data`` could return:
{
1: {'name': 'Bob', 'age': 23},
2: {'name': 'Sally', 'age': 19},
3: {'name': 'unknown', 'age': False}
}
.. _field-function-fnct-inv:
.. rubric:: The ``fnct_inv`` parameter
This callable implements the write operation for the function field
and must have the following signature:
.. function:: fnct_inv(model, cr, uid, ids, field_name, field_value, fnct_inv_arg, context)
Callable that implements the ``write`` operation for the function field.
:param orm_template model: model to which the field belongs (should be ``self`` for
a model method)
:param str field_name: name of the field to set
:param fnct_inv_arg: arbitrary value passed when declaring the function field
:return: True
When writing values for a function field, the ``multi`` parameter is ignored.
.. _field-function-fnct-search:
.. rubric:: The ``fnct_search`` parameter
This callable implements the search operation for the function field
and must have the following signature:
.. function:: fnct_search(model, cr, uid, model_again, field_name, criterion, context)
Callable that implements the ``search`` operation for the function field by expanding
a search criterion based on the function field into a new domain based only on
columns that are stored in the database.
:param orm_template model: model to which the field belongs (should be ``self`` for
a model method)
:param orm_template model_again: same value as ``model`` (seriously! this is for backwards
compatibility)
:param str field_name: name of the field to search on
:param list criterion: domain component specifying the search criterion on the field.
:rtype: list
:return: domain to use instead of ``criterion`` when performing the search.
This new domain must be based only on columns stored in the database, as it
will be used directly without any translation.
The returned value must be a domain, that is, a list of the form [(field_name, operator, operand)].
The most generic way to implement ``fnct_search`` is to directly search for the records that
match the given ``criterion``, and return their ``ids`` wrapped in a domain, such as
``[('id','in',[1,3,5])]``.
.. _field-function-store:
.. rubric:: The ``store`` parameter
The ``store`` parameter allows caching the result of the field computation in the
database, and defining the triggers that will invalidate that cache and force a
recomputation of the function field.
When not provided, the field is computed every time its value is read.
The value of ``store`` may be either ``True`` (to recompute the field value whenever
any field in the same record is modified), or a dictionary specifying a more
flexible set of recomputation triggers.
A trigger specification is a dictionary that maps the names of the models that
will trigger the computation, to a tuple describing the trigger rule, in the
following form::
store = {
'trigger_model': (mapping_function,
['trigger_field1', 'trigger_field2'],
priority),
}
A trigger rule is defined by a 3-item tuple where:
* The ``mapping_function`` is defined as follows:
.. function:: mapping_function(trigger_model, cr, uid, trigger_ids, context)
Callable that maps record ids of a trigger model to ids of the
corresponding records in the source model (whose field values
need to be recomputed).
:param orm_template model: trigger_model
:param list trigger_ids: ids of the records of trigger_model that were
modified
:rtype: list
:return: list of ids of the source model whose function field values
need to be recomputed
* The second item is a list of the fields who should act as triggers for
the computation. If an empty list is given, all fields will act as triggers.
* The last item is the priority, used to order the triggers when processing them
after any write operation on a model that has function field triggers. The
default priority is 10.
In fact, setting store = True is the same as using the following trigger dict::
store = {
'model_itself': (lambda self, cr, uid, ids, context: ids,
[],
10)
}
"""
_classic_read = False
_classic_write = False
_prefetch = False
@ -755,10 +948,9 @@ class function(_column):
#
# multi: compute several fields in one call
#
def __init__(self, fnct, arg=None, fnct_inv=None, fnct_inv_arg=None, type='float', fnct_search=None, obj=None, method=False, store=False, multi=False, **args):
def __init__(self, fnct, arg=None, fnct_inv=None, fnct_inv_arg=None, type='float', fnct_search=None, obj=None, store=False, multi=False, **args):
_column.__init__(self, **args)
self._obj = obj
self._method = method
self._fnct = fnct
self._fnct_inv = fnct_inv
self._arg = arg
@ -839,11 +1031,7 @@ class function(_column):
return result
def get(self, cr, obj, ids, name, uid=False, context=None, values=None):
result = {}
if self._method:
result = self._fnct(obj, cr, uid, ids, name, self._arg, context)
else:
result = self._fnct(cr, obj._table, ids, name, self._arg, context)
result = self._fnct(obj, cr, uid, ids, name, self._arg, context)
for id in ids:
if self._multi and id in result:
for field, value in result[id].iteritems():
@ -867,6 +1055,15 @@ class function(_column):
# ---------------------------------------------------------
class related(function):
"""Field that points to some data inside another field of the current record.
Example::
_columns = {
'foo_id': fields.many2one('my.foo', 'Foo'),
'bar': fields.related('frol', 'foo_id', type='char', string='Frol of Foo'),
}
"""
def _fnct_search(self, tobj, cr, uid, obj=None, name=None, domain=None, context=None):
self._field_get2(cr, uid, obj, context)
@ -964,7 +1161,7 @@ class related(function):
def __init__(self, *arg, **args):
self.arg = arg
self._relations = []
super(related, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, method=True, fnct_search=self._fnct_search, **args)
super(related, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, fnct_search=self._fnct_search, **args)
if self.store is True:
# TODO: improve here to change self.store = {...} according to related objects
pass
@ -1001,7 +1198,7 @@ class dummy(function):
def __init__(self, *arg, **args):
self.arg = arg
self._relations = []
super(dummy, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, method=True, fnct_search=None, **args)
super(dummy, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, fnct_search=None, **args)
# ---------------------------------------------------------
# Serialized fields
@ -1160,7 +1357,6 @@ def field_to_dict(self, cr, user, context, field):
res['fnct_inv'] = field._fnct_inv and field._fnct_inv.func_name or False
res['fnct_inv_arg'] = field._fnct_inv_arg or False
res['func_obj'] = field._obj or False
res['func_method'] = field._method
if isinstance(field, many2many):
res['related_columns'] = list((field._id1, field._id2))
res['third_table'] = field._rel

View File

@ -19,24 +19,28 @@
#
##############################################################################
#
# Object relationnal mapping to postgresql module
# . Hierarchical structure
# . Constraints consistency, validations
# . Object meta Data depends on its status
# . Optimised processing by complex query (multiple actions at once)
# . Default fields value
# . Permissions optimisation
# . Persistant object: DB postgresql
# . Datas conversions
# . Multi-level caching system
# . 2 different inheritancies
# . Fields:
# - classicals (varchar, integer, boolean, ...)
# - relations (one2many, many2one, many2many)
# - functions
#
#
#.apidoc title: Object Relational Mapping
#.apidoc module-mods: member-order: bysource
"""
Object relational mapping to database (postgresql) module
* Hierarchical structure
* Constraints consistency, validations
* Object meta Data depends on its status
* Optimised processing by complex query (multiple actions at once)
* Default fields value
* Permissions optimisation
* Persistant object: DB postgresql
* Datas conversions
* Multi-level caching system
* 2 different inheritancies
* Fields:
- classicals (varchar, integer, boolean, ...)
- relations (one2many, many2one, many2many)
- functions
"""
import calendar
import copy
import datetime
@ -125,8 +129,9 @@ class except_orm(Exception):
class BrowseRecordError(Exception):
pass
# Readonly python database object browser
class browse_null(object):
""" Readonly python database object browser
"""
def __init__(self):
self.id = False
@ -154,6 +159,11 @@ class browse_null(object):
# TODO: execute an object method on browse_record_list
#
class browse_record_list(list):
""" Collection of browse objects
Such an instance will be returned when doing a ``browse([ids..])``
and will be iterable, yielding browse() objects
"""
def __init__(self, lst, context=None):
if not context:
@ -163,13 +173,25 @@ class browse_record_list(list):
class browse_record(object):
""" An object that behaves like a row of an object's table.
It has attributes after the columns of the corresponding object.
Examples::
uobj = pool.get('res.users')
user_rec = uobj.browse(cr, uid, 104)
name = user_rec.name
"""
logger = netsvc.Logger()
def __init__(self, cr, uid, id, table, cache, context=None, list_class=None, fields_process=None):
'''
table : the object (inherited from orm)
context : dictionary with an optional context
'''
"""
@param cache a dictionary of model->field->data to be shared accross browse
objects, thus reducing the SQL read()s . It can speed up things a lot,
but also be disastrous if not discarded after write()/unlink() operations
@param table the object (inherited from orm)
@param context dictionary with an optional context
"""
if fields_process is None:
fields_process = {}
if context is None:
@ -363,10 +385,10 @@ class browse_record(object):
def get_pg_type(f):
'''
"""
returns a tuple
(type returned by postgres when the column was created, type expression to create the column)
'''
"""
type_dict = {
fields.boolean: 'bool',
@ -732,7 +754,7 @@ class orm_template(object):
:param cr: database cursor
:param user: current user id
:param select: id or list of ids
:param select: id or list of ids.
:param context: context arguments, like lang, time zone
:rtype: object or list of objects requested

View File

@ -19,9 +19,7 @@
#
##############################################################################
#
# OSV: Objects Services
#
#.apidoc title: Objects Services (OSV)
import orm
import openerp.netsvc as netsvc

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