[tryton-debian-vcs] tryton-modules-product branch upstream updated. upstream/2.8.1-1-gf5f0248

git repository hosting tryton-debian-vcs at m9s.biz
Mon Nov 25 19:35:42 UTC 2013


The following commit has been merged in the upstream branch:
http://debian.tryton.org/gitweb/?p=packages/tryton-modules-product.git;a=commitdiff;h=upstream/2.8.1-1-gf5f0248

commit f5f024831f94e09ceff432fcc690218e4c708a50
Author: Mathias Behrle <mathiasb at m9s.biz>
Date:   Sun Nov 24 17:27:25 2013 +0100

    Adding upstream version 3.0.0.

diff --git a/CHANGELOG b/CHANGELOG
index 28df943..3bb38a0 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,4 @@
-Version 2.8.1 - 2013-10-01
+Version 3.0.0 - 2013-10-21
 * Bug fixes (see mercurial logs for details)
 
 Version 2.8.0 - 2013-04-22
diff --git a/INSTALL b/INSTALL
index b821262..f86a464 100644
--- a/INSTALL
+++ b/INSTALL
@@ -6,6 +6,7 @@ Prerequisites
 
  * Python 2.6 or later (http://www.python.org/)
  * trytond (http://www.tryton.org/)
+ * python-sql (http://code.google.com/p/python-sql/)
 
 Installation
 ------------
diff --git a/PKG-INFO b/PKG-INFO
index 7b95c39..6fe687d 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: trytond_product
-Version: 2.8.1
+Version: 3.0.0
 Summary: Tryton module with products
 Home-page: http://www.tryton.org/
 Author: Tryton
 Author-email: UNKNOWN
 License: GPL-3
-Download-URL: http://downloads.tryton.org/2.8/
+Download-URL: http://downloads.tryton.org/3.0/
 Description: trytond_product
         ===============
         
@@ -60,6 +60,7 @@ Classifier: Natural Language :: English
 Classifier: Natural Language :: French
 Classifier: Natural Language :: German
 Classifier: Natural Language :: Russian
+Classifier: Natural Language :: Slovenian
 Classifier: Natural Language :: Spanish
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python :: 2.6
diff --git a/category.xml b/category.xml
index fb008df..7cfc937 100644
--- a/category.xml
+++ b/category.xml
@@ -25,7 +25,7 @@ this repository contains the full copyright notices and license terms. -->
         <record model="ir.action.act_window" id="act_category_tree">
             <field name="name">Categories</field>
             <field name="res_model">product.category</field>
-            <field name="domain">[('parent', '=', False)]</field>
+            <field name="domain">[('parent', '=', None)]</field>
         </record>
         <record model="ir.action.act_window.view" id="act_category_tree_view1">
             <field name="sequence" eval="10"/>
diff --git a/locale/ca_ES.po b/locale/ca_ES.po
index ea268d1..c4e988d 100644
--- a/locale/ca_ES.po
+++ b/locale/ca_ES.po
@@ -7,8 +7,8 @@ msgid ""
 "If the UOM is still not used, you can delete it otherwise you can deactivate"
 " it and create a new one."
 msgstr ""
-"Si no s'ha usat la UdM, pot esborrar-la, en cas contrari, pot desactivar-la "
-"i crear-ne una de nova."
+"Si no s'ha usat la UdM, podeu esborrar-la, en cas contrari, podeu "
+"desactivar-la i crear-ne una de nova."
 
 msgctxt "error:product.uom:"
 msgid "Invalid Factor and Rate values in UOM \"%s\"."
@@ -218,7 +218,7 @@ msgstr "Nom"
 
 msgctxt "field:product.uom,rate:"
 msgid "Rate"
-msgstr "Conversió"
+msgstr "Ràtio"
 
 msgctxt "field:product.uom,rec_name:"
 msgid "Name"
@@ -296,7 +296,6 @@ msgctxt "model:ir.action,name:act_category_tree"
 msgid "Categories"
 msgstr "Categories"
 
-#, fuzzy
 msgctxt "model:ir.action,name:act_product_form"
 msgid "Variants"
 msgstr "Productes"
@@ -329,7 +328,6 @@ msgctxt "model:ir.ui.menu,name:menu_main_product"
 msgid "Product"
 msgstr "Producte"
 
-#, fuzzy
 msgctxt "model:ir.ui.menu,name:menu_product"
 msgid "Variants"
 msgstr "Variants"
diff --git a/locale/de_DE.po b/locale/de_DE.po
index 53f2048..18f71f7 100644
--- a/locale/de_DE.po
+++ b/locale/de_DE.po
@@ -300,11 +300,11 @@ msgstr ""
 
 msgctxt "model:ir.action,name:act_category_list"
 msgid "Categories"
-msgstr "Parteikategorien"
+msgstr "Artikelkategorien"
 
 msgctxt "model:ir.action,name:act_category_tree"
 msgid "Categories"
-msgstr "Parteikategorien"
+msgstr "Artikelkategorien"
 
 msgctxt "model:ir.action,name:act_product_form"
 msgid "Variants"
diff --git a/locale/es_CO.po b/locale/es_CO.po
index f93bc16..33eac95 100644
--- a/locale/es_CO.po
+++ b/locale/es_CO.po
@@ -94,7 +94,7 @@ msgstr "ID"
 
 msgctxt "field:product.product,list_price_uom:"
 msgid "List Price"
-msgstr "Precio de Lista"
+msgstr "Precio de Venta"
 
 msgctxt "field:product.product,rec_name:"
 msgid "Name"
@@ -134,7 +134,7 @@ msgstr "Precio de Costo"
 
 msgctxt "field:product.template,cost_price_method:"
 msgid "Cost Method"
-msgstr "Método de Costo"
+msgstr "Método de Costeo"
 
 msgctxt "field:product.template,create_date:"
 msgid "Create Date"
@@ -158,7 +158,7 @@ msgstr "ID"
 
 msgctxt "field:product.template,list_price:"
 msgid "List Price"
-msgstr "Precio de Lista"
+msgstr "Precio de Venta"
 
 msgctxt "field:product.template,name:"
 msgid "Name"
@@ -166,7 +166,7 @@ msgstr "Nombre"
 
 msgctxt "field:product.template,products:"
 msgid "Variants"
-msgstr "Productos"
+msgstr "Variantes"
 
 msgctxt "field:product.template,rec_name:"
 msgid "Name"
@@ -298,7 +298,7 @@ msgstr "Categorías"
 
 msgctxt "model:ir.action,name:act_product_form"
 msgid "Variants"
-msgstr "Variedad"
+msgstr "Variantes"
 
 msgctxt "model:ir.action,name:act_template_by_category"
 msgid "Product by Category"
@@ -306,7 +306,7 @@ msgstr "Producto por Categoría"
 
 msgctxt "model:ir.action,name:act_template_form"
 msgid "Products"
-msgstr "Productos"
+msgstr "Catálogo de Productos"
 
 msgctxt "model:ir.action,name:act_uom_category_form"
 msgid "Categories of Unit of Measure"
@@ -326,15 +326,15 @@ msgstr "Categorías"
 
 msgctxt "model:ir.ui.menu,name:menu_main_product"
 msgid "Product"
-msgstr "Producto"
+msgstr "Productos"
 
 msgctxt "model:ir.ui.menu,name:menu_product"
 msgid "Variants"
-msgstr "Variedad"
+msgstr "Variedades"
 
 msgctxt "model:ir.ui.menu,name:menu_template"
 msgid "Products"
-msgstr "Productos"
+msgstr "Catálogo de Productos"
 
 msgctxt "model:ir.ui.menu,name:menu_uom_category_form"
 msgid "Categories"
@@ -704,12 +704,10 @@ msgctxt "view:product.template:"
 msgid "General"
 msgstr "General"
 
-#, fuzzy
 msgctxt "view:product.template:"
 msgid "Product"
-msgstr "Productos"
+msgstr "Producto"
 
-#, fuzzy
 msgctxt "view:product.template:"
 msgid "Products"
 msgstr "Productos"
diff --git a/locale/es_ES.po b/locale/es_ES.po
index ba5ca44..bd32654 100644
--- a/locale/es_ES.po
+++ b/locale/es_ES.po
@@ -12,7 +12,7 @@ msgstr ""
 
 msgctxt "error:product.uom:"
 msgid "Invalid Factor and Rate values in UOM \"%s\"."
-msgstr "Valores de factor y ratio en UdM \"%s\" no es correcto."
+msgstr "Valores de factor y ratio en UdM \"%s\" no correctos."
 
 msgctxt "error:product.uom:"
 msgid "Rate and factor can not be both equal to zero."
@@ -296,7 +296,6 @@ msgctxt "model:ir.action,name:act_category_tree"
 msgid "Categories"
 msgstr "Categorías"
 
-#, fuzzy
 msgctxt "model:ir.action,name:act_product_form"
 msgid "Variants"
 msgstr "Productos"
@@ -329,7 +328,6 @@ msgctxt "model:ir.ui.menu,name:menu_main_product"
 msgid "Product"
 msgstr "Productos"
 
-#, fuzzy
 msgctxt "model:ir.ui.menu,name:menu_product"
 msgid "Variants"
 msgstr "Variantes"
diff --git a/locale/fr_FR.po b/locale/fr_FR.po
index f671ccc..e158985 100644
--- a/locale/fr_FR.po
+++ b/locale/fr_FR.po
@@ -19,14 +19,6 @@ msgstr ""
 "désactiver et en créer une nouvelle."
 
 msgctxt "error:product.uom:"
-msgid ""
-"If the UOM is still not used, you can delete it otherwise you can deactivate"
-" it and create a new one."
-msgstr ""
-"Si l'UDM n'est pas utilisée, vous pouvez la supprimer, sinon vous pouvez la "
-"désactiver et en créer une nouvelle."
-
-msgctxt "error:product.uom:"
 msgid "Invalid Factor and Rate values in UOM \"%s\"."
 msgstr "Facteur et taux non valides sur l'UDM \"%s\""
 
@@ -35,16 +27,6 @@ msgid "Rate and factor can not be both equal to zero."
 msgstr "Le taux et le facteur ne peuvent pas être égaux à zéro."
 
 msgctxt "error:product.uom:"
-msgid "Rate and factor can not be both equal to zero."
-msgstr "Le taux et le facteur ne peuvent pas être égaux à zéro."
-
-msgctxt "error:product.uom:"
-msgid "You cannot change Rate, Factor or Category on a Unit of Measure. "
-msgstr ""
-"Vous ne pouvez pas changer le taux, le facteur ou la catégorie d'une unité "
-"de mesure."
-
-msgctxt "error:product.uom:"
 msgid "You cannot change Rate, Factor or Category on a Unit of Measure. "
 msgstr ""
 "Vous ne pouvez pas changer le taux, le facteur ou la catégorie d'une unité "
@@ -691,14 +673,6 @@ msgid "Average"
 msgstr "Moyenne"
 
 msgctxt "selection:product.template,cost_price_method:"
-msgid "Average"
-msgstr "Moyenne"
-
-msgctxt "selection:product.template,cost_price_method:"
-msgid "Fixed"
-msgstr "Fixe"
-
-msgctxt "selection:product.template,cost_price_method:"
 msgid "Fixed"
 msgstr "Fixe"
 
@@ -714,14 +688,6 @@ msgctxt "selection:product.template,type:"
 msgid "Service"
 msgstr "Service"
 
-msgctxt "selection:product.template,type:"
-msgid "Service"
-msgstr "Service"
-
-msgctxt "view:product.category:"
-msgid "Children"
-msgstr "Enfants"
-
 msgctxt "view:product.category:"
 msgid "Children"
 msgstr "Enfants"
@@ -731,14 +697,6 @@ msgid "Product Categories"
 msgstr "Catégories de produit"
 
 msgctxt "view:product.category:"
-msgid "Product Categories"
-msgstr "Catégories de produit"
-
-msgctxt "view:product.category:"
-msgid "Product Category"
-msgstr "Catégorie de produit"
-
-msgctxt "view:product.category:"
 msgid "Product Category"
 msgstr "Catégorie de produit"
 
@@ -750,14 +708,6 @@ msgctxt "view:product.product:"
 msgid "Products"
 msgstr "Produits"
 
-msgctxt "view:product.product:"
-msgid "Products"
-msgstr "Produits"
-
-msgctxt "view:product.template:"
-msgid "General"
-msgstr "Général"
-
 msgctxt "view:product.template:"
 msgid "General"
 msgstr "Général"
@@ -775,14 +725,6 @@ msgid "Categories of Unit of Measure"
 msgstr "Catégories d'Unité de mesure"
 
 msgctxt "view:product.uom.category:"
-msgid "Categories of Unit of Measure"
-msgstr "Catégories d'Unité de mesure"
-
-msgctxt "view:product.uom.category:"
-msgid "Category of Unit of Measure"
-msgstr "Catégorie d'unité de mesure"
-
-msgctxt "view:product.uom.category:"
 msgid "Category of Unit of Measure"
 msgstr "Catégorie d'unité de mesure"
 
@@ -791,13 +733,5 @@ msgid "Unit of Measure"
 msgstr "Unité de mesure"
 
 msgctxt "view:product.uom:"
-msgid "Unit of Measure"
-msgstr "Unité de mesure"
-
-msgctxt "view:product.uom:"
-msgid "Units of Measure"
-msgstr "Unités de mesure"
-
-msgctxt "view:product.uom:"
 msgid "Units of Measure"
 msgstr "Unités de mesure"
diff --git a/locale/ca_ES.po b/locale/sl_SI.po
similarity index 77%
copy from locale/ca_ES.po
copy to locale/sl_SI.po
index ea268d1..6767a3f 100644
--- a/locale/ca_ES.po
+++ b/locale/sl_SI.po
@@ -7,34 +7,33 @@ msgid ""
 "If the UOM is still not used, you can delete it otherwise you can deactivate"
 " it and create a new one."
 msgstr ""
-"Si no s'ha usat la UdM, pot esborrar-la, en cas contrari, pot desactivar-la "
-"i crear-ne una de nova."
+"Če ME še vendno ni uporabljena, jo lahko zbrišete ali pa izklopite in "
+"ustvarite novo."
 
 msgctxt "error:product.uom:"
 msgid "Invalid Factor and Rate values in UOM \"%s\"."
-msgstr "Valors de factor i ratio a UdM \"%s\" incorrectes."
+msgstr "Neveljavna faktor in razmerje v ME\"%s\"."
 
 msgctxt "error:product.uom:"
 msgid "Rate and factor can not be both equal to zero."
-msgstr "Conversió i factor no poden ser zero simultàniament."
+msgstr "Oba, razmerje in faktor, ne moreta biti enaka ničli."
 
 msgctxt "error:product.uom:"
 msgid "You cannot change Rate, Factor or Category on a Unit of Measure. "
 msgstr ""
-"No podeu canviar la conversió, el factor o la categoria d'una unitat de "
-"mesura."
+"Pri merski enoti ni možno popraviti razmerja, faktorja ali kategorije."
 
 msgctxt "field:product.category,childs:"
 msgid "Children"
-msgstr "Fills"
+msgstr "Podkategorije"
 
 msgctxt "field:product.category,create_date:"
 msgid "Create Date"
-msgstr "Data creació"
+msgstr "Ustvarjeno"
 
 msgctxt "field:product.category,create_uid:"
 msgid "Create User"
-msgstr "Usuari creació"
+msgstr "Ustvaril"
 
 msgctxt "field:product.category,id:"
 msgid "ID"
@@ -42,51 +41,51 @@ msgstr "ID"
 
 msgctxt "field:product.category,name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Naziv"
 
 msgctxt "field:product.category,parent:"
 msgid "Parent"
-msgstr "Pare"
+msgstr "Matična kategorija"
 
 msgctxt "field:product.category,rec_name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Ime"
 
 msgctxt "field:product.category,write_date:"
 msgid "Write Date"
-msgstr "Data modificació"
+msgstr "Zapisano"
 
 msgctxt "field:product.category,write_uid:"
 msgid "Write User"
-msgstr "Usuari modificació"
+msgstr "Zapisal"
 
 msgctxt "field:product.product,active:"
 msgid "Active"
-msgstr "Actiu"
+msgstr "Aktivno"
 
 msgctxt "field:product.product,code:"
 msgid "Code"
-msgstr "Codi"
+msgstr "Šifra"
 
 msgctxt "field:product.product,cost_price_uom:"
 msgid "Cost Price"
-msgstr "Preu de cost"
+msgstr "Nabavna cena"
 
 msgctxt "field:product.product,create_date:"
 msgid "Create Date"
-msgstr "Data creació"
+msgstr "Ustvarjeno"
 
 msgctxt "field:product.product,create_uid:"
 msgid "Create User"
-msgstr "Usuari creació"
+msgstr "Ustvaril"
 
 msgctxt "field:product.product,default_uom:"
 msgid "Default UOM"
-msgstr "UdM per defecte"
+msgstr "Privzeta ME"
 
 msgctxt "field:product.product,description:"
 msgid "Description"
-msgstr "Descripció"
+msgstr "Opis"
 
 msgctxt "field:product.product,id:"
 msgid "ID"
@@ -94,63 +93,63 @@ msgstr "ID"
 
 msgctxt "field:product.product,list_price_uom:"
 msgid "List Price"
-msgstr "Preu de venda"
+msgstr "Prodajna cena"
 
 msgctxt "field:product.product,rec_name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Ime"
 
 msgctxt "field:product.product,template:"
 msgid "Product Template"
-msgstr "Plantilla de producte"
+msgstr "Predloga"
 
 msgctxt "field:product.product,type:"
 msgid "Type"
-msgstr "Tipus"
+msgstr "Tip"
 
 msgctxt "field:product.product,write_date:"
 msgid "Write Date"
-msgstr "Data modificació"
+msgstr "Zapisano"
 
 msgctxt "field:product.product,write_uid:"
 msgid "Write User"
-msgstr "Usuari modificació"
+msgstr "Zapisal"
 
 msgctxt "field:product.template,active:"
 msgid "Active"
-msgstr "Actiu"
+msgstr "Aktivno"
 
 msgctxt "field:product.template,category:"
 msgid "Category"
-msgstr "Categoria"
+msgstr "Kategorija"
 
 msgctxt "field:product.template,consumable:"
 msgid "Consumable"
-msgstr "Consumible"
+msgstr "Potrošni material"
 
 msgctxt "field:product.template,cost_price:"
 msgid "Cost Price"
-msgstr "Preu de cost"
+msgstr "Nabavna cena"
 
 msgctxt "field:product.template,cost_price_method:"
 msgid "Cost Method"
-msgstr "Mètode de cost"
+msgstr "Obračun"
 
 msgctxt "field:product.template,create_date:"
 msgid "Create Date"
-msgstr "Data creació"
+msgstr "Ustvarjeno"
 
 msgctxt "field:product.template,create_uid:"
 msgid "Create User"
-msgstr "Usuari creació"
+msgstr "Ustvaril"
 
 msgctxt "field:product.template,default_uom:"
 msgid "Default UOM"
-msgstr "UdM per defecte"
+msgstr "Privzeta ME"
 
 msgctxt "field:product.template,default_uom_category:"
 msgid "Default UOM Category"
-msgstr "Categoria per defecte UdM"
+msgstr "Kategorija privzete ME"
 
 msgctxt "field:product.template,id:"
 msgid "ID"
@@ -158,55 +157,55 @@ msgstr "ID"
 
 msgctxt "field:product.template,list_price:"
 msgid "List Price"
-msgstr "Preu de venda"
+msgstr "Prodajna cena"
 
 msgctxt "field:product.template,name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Naziv"
 
 msgctxt "field:product.template,products:"
 msgid "Variants"
-msgstr "Variants"
+msgstr "Različice"
 
 msgctxt "field:product.template,rec_name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Ime"
 
 msgctxt "field:product.template,type:"
 msgid "Type"
-msgstr "Tipus"
+msgstr "Tip"
 
 msgctxt "field:product.template,write_date:"
 msgid "Write Date"
-msgstr "Data modificació"
+msgstr "Zapisano"
 
 msgctxt "field:product.template,write_uid:"
 msgid "Write User"
-msgstr "Usuari modificació"
+msgstr "Zapisal"
 
 msgctxt "field:product.uom,active:"
 msgid "Active"
-msgstr "Actiu"
+msgstr "Aktivno"
 
 msgctxt "field:product.uom,category:"
 msgid "UOM Category"
-msgstr "Categoria d'UdM"
+msgstr "Kategorija"
 
 msgctxt "field:product.uom,create_date:"
 msgid "Create Date"
-msgstr "Data creació"
+msgstr "Ustvarjeno"
 
 msgctxt "field:product.uom,create_uid:"
 msgid "Create User"
-msgstr "Usuari creació"
+msgstr "Ustvaril"
 
 msgctxt "field:product.uom,digits:"
 msgid "Display Digits"
-msgstr "Decimals a mostrar"
+msgstr "Decimalke"
 
 msgctxt "field:product.uom,factor:"
 msgid "Factor"
-msgstr "Factor"
+msgstr "Faktor"
 
 msgctxt "field:product.uom,id:"
 msgid "ID"
@@ -214,39 +213,39 @@ msgstr "ID"
 
 msgctxt "field:product.uom,name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Naziv"
 
 msgctxt "field:product.uom,rate:"
 msgid "Rate"
-msgstr "Conversió"
+msgstr "Razmerje"
 
 msgctxt "field:product.uom,rec_name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Ime"
 
 msgctxt "field:product.uom,rounding:"
 msgid "Rounding Precision"
-msgstr "Precisió d'arrodoniment"
+msgstr "Zaokroževanje"
 
 msgctxt "field:product.uom,symbol:"
 msgid "Symbol"
-msgstr "Símbol"
+msgstr "Simbol"
 
 msgctxt "field:product.uom,write_date:"
 msgid "Write Date"
-msgstr "Data modificació"
+msgstr "Zapisano"
 
 msgctxt "field:product.uom,write_uid:"
 msgid "Write User"
-msgstr "Usuari modificació"
+msgstr "Zapisal"
 
 msgctxt "field:product.uom.category,create_date:"
 msgid "Create Date"
-msgstr "Data creació"
+msgstr "Ustvarjeno"
 
 msgctxt "field:product.uom.category,create_uid:"
 msgid "Create User"
-msgstr "Usuari creació"
+msgstr "Ustvaril"
 
 msgctxt "field:product.uom.category,id:"
 msgid "ID"
@@ -254,241 +253,239 @@ msgstr "ID"
 
 msgctxt "field:product.uom.category,name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Naziv"
 
 msgctxt "field:product.uom.category,rec_name:"
 msgid "Name"
-msgstr "Nom"
+msgstr "Ime"
 
 msgctxt "field:product.uom.category,uoms:"
 msgid "Unit of Measures"
-msgstr "Unitats de mesura"
+msgstr "Merske enote"
 
 msgctxt "field:product.uom.category,write_date:"
 msgid "Write Date"
-msgstr "Data modificació"
+msgstr "Zapisano"
 
 msgctxt "field:product.uom.category,write_uid:"
 msgid "Write User"
-msgstr "Usuari modificació"
+msgstr "Zapisal"
 
 msgctxt "help:product.uom,factor:"
 msgid ""
 "The coefficient for the formula:\n"
 "coef (base unit) = 1 (this unit)"
 msgstr ""
-"El coeficient de la fórmula:\n"
-"coeficient (unitat base) = 1 (aquesta unitat)"
+"Koeficient za formulo:\n"
+"koef * (osnovna enota) = 1 (ta enota)"
 
 msgctxt "help:product.uom,rate:"
 msgid ""
 "The coefficient for the formula:\n"
 "1 (base unit) = coef (this unit)"
 msgstr ""
-"El coeficient de la fórmula:\n"
-"1 (unitat base) = coeficient (aquesta unitat)"
+"Koeficient za formulo:\n"
+"1 (osnovna enota) = koef * (ta enota)"
 
 msgctxt "model:ir.action,name:act_category_list"
 msgid "Categories"
-msgstr "Categories"
+msgstr "Kategorije"
 
 msgctxt "model:ir.action,name:act_category_tree"
 msgid "Categories"
-msgstr "Categories"
+msgstr "Kategorije"
 
-#, fuzzy
 msgctxt "model:ir.action,name:act_product_form"
 msgid "Variants"
-msgstr "Productes"
+msgstr "Različice"
 
 msgctxt "model:ir.action,name:act_template_by_category"
 msgid "Product by Category"
-msgstr "Productes per categoria"
+msgstr "Izdelki po kategorijah"
 
 msgctxt "model:ir.action,name:act_template_form"
 msgid "Products"
-msgstr "Productes"
+msgstr "Izdelki"
 
 msgctxt "model:ir.action,name:act_uom_category_form"
 msgid "Categories of Unit of Measure"
-msgstr "Categories de la unitat de mesura"
+msgstr "Kategorije merskih enot"
 
 msgctxt "model:ir.action,name:act_uom_form"
 msgid "Units of Measure"
-msgstr "Unitats de mesura"
+msgstr "Merske enote"
 
 msgctxt "model:ir.ui.menu,name:menu_category_list"
 msgid "Categories"
-msgstr "Categories"
+msgstr "Kategorije"
 
 msgctxt "model:ir.ui.menu,name:menu_category_tree"
 msgid "Categories"
-msgstr "Categories"
+msgstr "Kategorije"
 
 msgctxt "model:ir.ui.menu,name:menu_main_product"
 msgid "Product"
-msgstr "Producte"
+msgstr "Izdelek"
 
-#, fuzzy
 msgctxt "model:ir.ui.menu,name:menu_product"
 msgid "Variants"
-msgstr "Variants"
+msgstr "Različice"
 
 msgctxt "model:ir.ui.menu,name:menu_template"
 msgid "Products"
-msgstr "Productes"
+msgstr "Izdelki"
 
 msgctxt "model:ir.ui.menu,name:menu_uom_category_form"
 msgid "Categories"
-msgstr "Categories"
+msgstr "Kategorije"
 
 msgctxt "model:ir.ui.menu,name:menu_uom_form"
 msgid "Units of Measure"
-msgstr "Unitats de mesura"
+msgstr "Merske enote"
 
 msgctxt "model:product.category,name:"
 msgid "Product Category"
-msgstr "Categoria de producte"
+msgstr "Kategorija izdelkov"
 
 msgctxt "model:product.product,name:"
 msgid "Product Variant"
-msgstr "Variant de producte"
+msgstr "Različica"
 
 msgctxt "model:product.template,name:"
 msgid "Product Template"
-msgstr "Plantilla de producte"
+msgstr "Predloga izdelka"
 
 msgctxt "model:product.uom,name:"
 msgid "Unit of measure"
-msgstr "Unitat de mesura"
+msgstr "Merska enota"
 
 msgctxt "model:product.uom,name:uom_are"
 msgid "Are"
-msgstr "Àrea"
+msgstr "ar"
 
 msgctxt "model:product.uom,name:uom_carat"
 msgid "Carat"
-msgstr "Quirat"
+msgstr "karat"
 
 msgctxt "model:product.uom,name:uom_centimeter"
 msgid "centimeter"
-msgstr "centímetre"
+msgstr "centimeter"
 
 msgctxt "model:product.uom,name:uom_cubic_centimeter"
 msgid "Cubic centimeter"
-msgstr "Centímetre cúbic"
+msgstr "kubični centimeter"
 
 msgctxt "model:product.uom,name:uom_cubic_foot"
 msgid "Cubic foot"
-msgstr "Peu cúbic"
+msgstr "kubični čevelj"
 
 msgctxt "model:product.uom,name:uom_cubic_inch"
 msgid "Cubic inch"
-msgstr "Polzada cúbica"
+msgstr "kubični palec"
 
 msgctxt "model:product.uom,name:uom_cubic_meter"
 msgid "Cubic meter"
-msgstr "Metre cúbic"
+msgstr "kubični meter"
 
 msgctxt "model:product.uom,name:uom_day"
 msgid "Day"
-msgstr "Dia"
+msgstr "dan"
 
 msgctxt "model:product.uom,name:uom_foot"
 msgid "Foot"
-msgstr "Peu"
+msgstr "čevelj"
 
 msgctxt "model:product.uom,name:uom_gallon"
 msgid "Gallon"
-msgstr "Galó"
+msgstr "galona"
 
 msgctxt "model:product.uom,name:uom_gram"
 msgid "Gram"
-msgstr "Gram"
+msgstr "gram"
 
 msgctxt "model:product.uom,name:uom_hectare"
 msgid "Hectare"
-msgstr "Hectàrea"
+msgstr "hektar"
 
 msgctxt "model:product.uom,name:uom_hour"
 msgid "Hour"
-msgstr "Hora"
+msgstr "ura"
 
 msgctxt "model:product.uom,name:uom_inch"
 msgid "Inch"
-msgstr "Polzada"
+msgstr "palec"
 
 msgctxt "model:product.uom,name:uom_kilogram"
 msgid "Kilogram"
-msgstr "Quilogram"
+msgstr "kilogram"
 
 msgctxt "model:product.uom,name:uom_kilometer"
 msgid "Kilometer"
-msgstr "Quilòmetre"
+msgstr "kilometer"
 
 msgctxt "model:product.uom,name:uom_liter"
 msgid "Liter"
-msgstr "Litre"
+msgstr "liter"
 
 msgctxt "model:product.uom,name:uom_meter"
 msgid "Meter"
-msgstr "Metre"
+msgstr "meter"
 
 msgctxt "model:product.uom,name:uom_mile"
 msgid "Mile"
-msgstr "Milla"
+msgstr "milja"
 
 msgctxt "model:product.uom,name:uom_millimeter"
 msgid "Millimeter"
-msgstr "Mil·límetre"
+msgstr "milimeter"
 
 msgctxt "model:product.uom,name:uom_minute"
 msgid "Minute"
-msgstr "Minut"
+msgstr "minuta"
 
 msgctxt "model:product.uom,name:uom_ounce"
 msgid "Ounce"
-msgstr "Unça"
+msgstr "unča"
 
 msgctxt "model:product.uom,name:uom_pound"
 msgid "Pound"
-msgstr "Lliura"
+msgstr "funt"
 
 msgctxt "model:product.uom,name:uom_second"
 msgid "Second"
-msgstr "Segon"
+msgstr "sekunda"
 
 msgctxt "model:product.uom,name:uom_square_centimeter"
 msgid "Square centimeter"
-msgstr "Centímetre quadrat"
+msgstr "kvadratni centimeter"
 
 msgctxt "model:product.uom,name:uom_square_foot"
 msgid "Square foot"
-msgstr "Peu quadrat"
+msgstr "kvadratni čevelj"
 
 msgctxt "model:product.uom,name:uom_square_inch"
 msgid "Square inch"
-msgstr "Polzada quadrada"
+msgstr "kvadratni palec"
 
 msgctxt "model:product.uom,name:uom_square_meter"
 msgid "Square meter"
-msgstr "Metre quadrat"
+msgstr "kvadratni meter"
 
 msgctxt "model:product.uom,name:uom_square_yard"
 msgid "Square yard"
-msgstr "Iarda quadrada"
+msgstr "kvadratni jard"
 
 msgctxt "model:product.uom,name:uom_unit"
 msgid "Unit"
-msgstr "Unitat"
+msgstr "enota"
 
 msgctxt "model:product.uom,name:uom_work_day"
 msgid "Work Day"
-msgstr "Dia de treball"
+msgstr "Delovni dan"
 
 msgctxt "model:product.uom,name:uom_yard"
 msgid "Yard"
-msgstr "Iarda"
+msgstr "jard"
 
 msgctxt "model:product.uom,symbol:uom_are"
 msgid "a"
@@ -508,11 +505,11 @@ msgstr "cm³"
 
 msgctxt "model:product.uom,symbol:uom_cubic_foot"
 msgid "ft³"
-msgstr "peu³"
+msgstr "ft³"
 
 msgctxt "model:product.uom,symbol:uom_cubic_inch"
 msgid "in³"
-msgstr "pul³"
+msgstr "in³"
 
 msgctxt "model:product.uom,symbol:uom_cubic_meter"
 msgid "m³"
@@ -524,7 +521,7 @@ msgstr "d"
 
 msgctxt "model:product.uom,symbol:uom_foot"
 msgid "ft"
-msgstr "peu"
+msgstr "ft"
 
 msgctxt "model:product.uom,symbol:uom_gallon"
 msgid "gal"
@@ -544,7 +541,7 @@ msgstr "h"
 
 msgctxt "model:product.uom,symbol:uom_inch"
 msgid "in"
-msgstr "pul"
+msgstr "in"
 
 msgctxt "model:product.uom,symbol:uom_kilogram"
 msgid "kg"
@@ -592,11 +589,11 @@ msgstr "cm²"
 
 msgctxt "model:product.uom,symbol:uom_square_foot"
 msgid "ft²"
-msgstr "peu²"
+msgstr "ft²"
 
 msgctxt "model:product.uom,symbol:uom_square_inch"
 msgid "in²"
-msgstr "pul²"
+msgstr "in²"
 
 msgctxt "model:product.uom,symbol:uom_square_meter"
 msgid "m²"
@@ -608,11 +605,11 @@ msgstr "yd²"
 
 msgctxt "model:product.uom,symbol:uom_unit"
 msgid "u"
-msgstr "u"
+msgstr "e"
 
 msgctxt "model:product.uom,symbol:uom_work_day"
 msgid "wd"
-msgstr "wd"
+msgstr "dd"
 
 msgctxt "model:product.uom,symbol:uom_yard"
 msgid "yd"
@@ -620,112 +617,112 @@ msgstr "yd"
 
 msgctxt "model:product.uom.category,name:"
 msgid "Product uom category"
-msgstr "Categoria d'UdM de producte"
+msgstr "Kategorija ME izdelkov"
 
 msgctxt "model:product.uom.category,name:uom_cat_length"
 msgid "Length"
-msgstr "Longitud"
+msgstr "Dolžina"
 
 msgctxt "model:product.uom.category,name:uom_cat_surface"
 msgid "Surface"
-msgstr "Superfície"
+msgstr "Površina"
 
 msgctxt "model:product.uom.category,name:uom_cat_time"
 msgid "Time"
-msgstr "Temps"
+msgstr "Čas"
 
 msgctxt "model:product.uom.category,name:uom_cat_unit"
 msgid "Units"
-msgstr "Unitats"
+msgstr "Enote"
 
 msgctxt "model:product.uom.category,name:uom_cat_volume"
 msgid "Volume"
-msgstr "Volum"
+msgstr "Prostornina"
 
 msgctxt "model:product.uom.category,name:uom_cat_weight"
 msgid "Weight"
-msgstr "Pes"
+msgstr "Teža"
 
 msgctxt "model:res.group,name:group_product_admin"
 msgid "Product Administration"
-msgstr "Administració de productes"
+msgstr "Izdelek - vodenje"
 
 msgctxt "selection:product.product,type:"
 msgid "Assets"
-msgstr "Actius"
+msgstr "Osnovna sredstva"
 
 msgctxt "selection:product.product,type:"
 msgid "Goods"
-msgstr "Béns"
+msgstr "Blago"
 
 msgctxt "selection:product.product,type:"
 msgid "Service"
-msgstr "Serveis"
+msgstr "Storitev"
 
 msgctxt "selection:product.template,cost_price_method:"
 msgid "Average"
-msgstr "Mitjana"
+msgstr "Povprečna cena"
 
 msgctxt "selection:product.template,cost_price_method:"
 msgid "Fixed"
-msgstr "Fix"
+msgstr "Fiksna"
 
 msgctxt "selection:product.template,type:"
 msgid "Assets"
-msgstr "Actius"
+msgstr "Osnovna sredstva"
 
 msgctxt "selection:product.template,type:"
 msgid "Goods"
-msgstr "Béns"
+msgstr "Blago"
 
 msgctxt "selection:product.template,type:"
 msgid "Service"
-msgstr "Serveis"
+msgstr "Storitev"
 
 msgctxt "view:product.category:"
 msgid "Children"
-msgstr "Fills"
+msgstr "Podkategorije"
 
 msgctxt "view:product.category:"
 msgid "Product Categories"
-msgstr "Categories de producte"
+msgstr "Kategorije"
 
 msgctxt "view:product.category:"
 msgid "Product Category"
-msgstr "Categoria de producte"
+msgstr "Kategorija"
 
 msgctxt "view:product.product:"
 msgid "Product"
-msgstr "Producte"
+msgstr "Izdelek"
 
 msgctxt "view:product.product:"
 msgid "Products"
-msgstr "Productes"
+msgstr "Izdelki"
 
 msgctxt "view:product.template:"
 msgid "General"
-msgstr "General"
+msgstr "Splošno"
 
 msgctxt "view:product.template:"
 msgid "Product"
-msgstr "Producte"
+msgstr "Izdelek"
 
 msgctxt "view:product.template:"
 msgid "Products"
-msgstr "Productes"
+msgstr "Izdelki"
 
 msgctxt "view:product.uom.category:"
 msgid "Categories of Unit of Measure"
-msgstr "Categories d'unitats de mesura"
+msgstr "Kategorije merskih enot"
 
 msgctxt "view:product.uom.category:"
 msgid "Category of Unit of Measure"
-msgstr "Categoria d'unitat de mesura"
+msgstr "Kategorija merskih enot"
 
 msgctxt "view:product.uom:"
 msgid "Unit of Measure"
-msgstr "Unitat de mesura"
+msgstr "Merska enota"
 
 msgctxt "view:product.uom:"
 msgid "Units of Measure"
-msgstr "Unitats de mesura"
+msgstr "Merske enote"
diff --git a/product.py b/product.py
index b99a117..d79dc58 100644
--- a/product.py
+++ b/product.py
@@ -4,7 +4,7 @@ from trytond.model import ModelView, ModelSQL, fields
 from trytond.pyson import Eval
 from trytond.transaction import Transaction
 from trytond.pool import Pool
-from trytond.backend import TableHandler
+from trytond import backend
 from trytond.const import OPERATORS
 
 __all__ = ['Template', 'Product']
@@ -49,14 +49,17 @@ class Template(ModelSQL, ModelView):
     default_uom_category = fields.Function(
         fields.Many2One('product.uom.category', 'Default UOM Category',
             on_change_with=['default_uom']),
-        'on_change_with_default_uom_category')
+        'on_change_with_default_uom_category',
+        searcher='search_default_uom_category')
     active = fields.Boolean('Active', select=True)
     products = fields.One2Many('product.product', 'template', 'Variants',
         states=STATES, depends=DEPENDS)
 
     @classmethod
     def __register__(cls, module_name):
+        TableHandler = backend.get('TableHandler')
         cursor = Transaction().cursor
+        sql_table = cls.__table__()
 
         super(Template, cls).__register__(module_name)
 
@@ -65,11 +68,14 @@ class Template(ModelSQL, ModelView):
         table.not_null_action('category', 'remove')
 
         # Migration from 2.2: new types
-        cursor.execute('UPDATE "' + cls._table + '" '
-            'SET consumable = %s WHERE type = %s', (True, 'consumable'))
-        cursor.execute('UPDATE "' + cls._table + '" '
-            'SET type = %s WHERE type IN (%s, %s)',
-            ('goods', 'stockable', 'consumable'))
+        cursor.execute(*sql_table.update(
+                columns=[sql_table.consumable],
+                values=[True],
+                where=sql_table.type == 'consumable'))
+        cursor.execute(*sql_table.update(
+                columns=[sql_table.type],
+                values=['goods'],
+                where=sql_table.type.in_(['stockable', 'consumable'])))
 
     @staticmethod
     def default_active():
@@ -102,6 +108,10 @@ class Template(ModelSQL, ModelView):
         if self.default_uom:
             return self.default_uom.category.id
 
+    @classmethod
+    def search_default_uom_category(cls, name, clause):
+        return [('default_uom.category',) + tuple(clause[1:])]
+
 
 class Product(ModelSQL, ModelView):
     "Product Variant"
@@ -126,12 +136,19 @@ class Product(ModelSQL, ModelView):
         digits=(16, 4)), 'get_price_uom')
 
     @classmethod
-    def __setup__(cls):
-        super(Product, cls).__setup__()
-        # XXX order by id until order by joined name is possible
-        # but at least products are grouped
-        cls.rec_name.order_field = ("%(table)s.code %(order)s, "
-            "%(table)s.id %(order)s")
+    def order_rec_name(cls, tables):
+        pool = Pool()
+        Template = pool.get('product.template')
+        product, _ = tables[None]
+        if 'template' not in tables:
+            template = Template.__table__()
+            tables['template'] = {
+                None: (template, product.template == template.id),
+                }
+        else:
+            template = tables['template']
+        return [product.code] + Template.name.convert_order('name',
+            tables['template'], Template)
 
     @staticmethod
     def default_active():
@@ -152,12 +169,12 @@ class Product(ModelSQL, ModelView):
 
     @classmethod
     def search_rec_name(cls, name, clause):
-        ids = map(int, cls.search([('code',) + clause[1:]], order=[]))
+        ids = map(int, cls.search([('code',) + tuple(clause[1:])], order=[]))
         if ids:
-            ids += map(int, cls.search([('template.name',) + clause[1:]],
-                    order=[]))
+            ids += map(int,
+                cls.search([('template.name',) + tuple(clause[1:])], order=[]))
             return [('id', 'in', ids)]
-        return [('template.name',) + clause[1:]]
+        return [('template.name',) + tuple(clause[1:])]
 
     def get_default_uom(self, name):
         return self.template.default_uom.id
@@ -209,7 +226,9 @@ class Product(ModelSQL, ModelView):
                     field = arg[0].split('.', 1)[0]
                     if not getattr(cls, field, None):
                         field = 'template.' + arg[0]
-                    result.append((field,) + tuple(arg[1:]))
+                        result.append((field,) + tuple(arg[1:]))
+                    else:
+                        result.append(arg)
                 elif isinstance(arg, list):
                     # sub-domain
                     result.append(convert_domain(arg))
diff --git a/setup.py b/setup.py
index d4f82ad..ca5f08c 100644
--- a/setup.py
+++ b/setup.py
@@ -21,7 +21,7 @@ major_version, minor_version, _ = info.get('version', '0.0.1').split('.', 2)
 major_version = int(major_version)
 minor_version = int(minor_version)
 
-requires = []
+requires = ['python-sql']
 for dep in info.get('depends', []):
     if not re.match(r'(ir|res|webdav)(\W|$)', dep):
         requires.append('trytond_%s >= %s.%s, < %s.%s' %
@@ -64,6 +64,7 @@ setup(name='trytond_product',
         'Natural Language :: French',
         'Natural Language :: German',
         'Natural Language :: Russian',
+        'Natural Language :: Slovenian',
         'Natural Language :: Spanish',
         'Operating System :: OS Independent',
         'Programming Language :: Python :: 2.6',
diff --git a/tests/__init__.py b/tests/__init__.py
index e00cc8d..2c5a660 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -2,3 +2,5 @@
 #this repository contains the full copyright notices and license terms.
 
 from .test_product import suite
+
+__all__ = ['suite']
diff --git a/tests/test_product.py b/tests/test_product.py
index 666a1af..e113161 100644
--- a/tests/test_product.py
+++ b/tests/test_product.py
@@ -26,6 +26,9 @@ class ProductTestCase(unittest.TestCase):
         trytond.tests.test_tryton.install_module('product')
         self.uom = POOL.get('product.uom')
         self.uom_category = POOL.get('product.uom.category')
+        self.template = POOL.get('product.template')
+        self.product = POOL.get('product.product')
+        self.category = POOL.get('product.category')
 
     def test0005views(self):
         '''
@@ -189,6 +192,101 @@ class ProductTestCase(unittest.TestCase):
                 self.assertEqual(result, self.uom.compute_price(from_uom,
                         price, to_uom))
 
+    def test0060product_search_domain(self):
+        '''
+        Test product.product search_domain function.
+        '''
+        with Transaction().start(DB_NAME, USER, context=CONTEXT):
+            kilogram, = self.uom.search([
+                    ('name', '=', 'Kilogram'),
+                    ], limit=1)
+            millimeter, = self.uom.search([
+                    ('name', '=', 'Millimeter'),
+                    ])
+            pt1, pt2 = self.template.create([{
+                        'name': 'P1',
+                        'type': 'goods',
+                        'list_price': Decimal(20),
+                        'cost_price': Decimal(10),
+                        'default_uom': kilogram.id,
+                        'products': [('create', [{
+                                        'code': '1',
+                                        }])]
+                        }, {
+                        'name': 'P2',
+                        'type': 'goods',
+                        'list_price': Decimal(20),
+                        'cost_price': Decimal(10),
+                        'default_uom': millimeter.id,
+                        'products': [('create', [{
+                                        'code': '2',
+                                        }])]
+                        }])
+            p, = self.product.search([
+                    ('default_uom.name', '=', 'Kilogram'),
+                    ])
+            self.assertEqual(p, pt1.products[0])
+            p, = self.product.search([
+                    ('default_uom.name', '=', 'Millimeter'),
+                    ])
+            self.assertEqual(p, pt2.products[0])
+
+    def test0060search_domain_conversion(self):
+        '''
+        Test the search domain conversion
+        '''
+        with Transaction().start(DB_NAME, USER, context=CONTEXT):
+            category1, = self.category.create([{'name': 'Category1'}])
+            category2, = self.category.create([{'name': 'Category2'}])
+            uom, = self.uom.search([], limit=1)
+            values1 = {
+                'name': 'Some product-1',
+                'category': category1.id,
+                'type': 'goods',
+                'list_price': Decimal('10'),
+                'cost_price': Decimal('5'),
+                'default_uom': uom.id,
+                }
+            values2 = {
+                'name': 'Some product-2',
+                'category': category2.id,
+                'type': 'goods',
+                'list_price': Decimal('10'),
+                'cost_price': Decimal('5'),
+                'default_uom': uom.id,
+                }
+
+            # This is a false positive as there is 1 product with the
+            # template 1 and the same product with category 1. If you do not
+            # create two categories (or any other relation on the template
+            # model) you wont be able to check as in most cases the
+            # id of the template and the related model would be same (1).
+            # So two products have been created with same category. So that
+            # domain ('template.category', '=', 1) will return 2 records which
+            # it supposed to be.
+            template1, template2, template3, template4 = self.template.create(
+                [values1, values1.copy(), values2, values2.copy()]
+                )
+            self.assertEqual(self.product.search([], count=True), 4)
+            self.assertEqual(
+                self.product.search([
+                    ('category', '=', category1.id),
+                    ], count=True), 2)
+
+            self.assertEqual(
+                self.product.search([
+                    ('template.category', '=', category1.id),
+                    ], count=True), 2)
+
+            self.assertEqual(
+                self.product.search([
+                    ('category', '=', category2.id),
+                    ], count=True), 2)
+            self.assertEqual(
+                self.product.search([
+                    ('template.category', '=', category2.id),
+                    ], count=True), 2)
+
 
 def suite():
     suite = trytond.tests.test_tryton.suite()
diff --git a/tryton.cfg b/tryton.cfg
index af2ad81..a3aa1aa 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
 [tryton]
-version=2.8.1
+version=3.0.0
 depends:
     ir
     res
diff --git a/trytond_product.egg-info/PKG-INFO b/trytond_product.egg-info/PKG-INFO
index f4c6de5..009cb8c 100644
--- a/trytond_product.egg-info/PKG-INFO
+++ b/trytond_product.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: trytond-product
-Version: 2.8.1
+Version: 3.0.0
 Summary: Tryton module with products
 Home-page: http://www.tryton.org/
 Author: Tryton
 Author-email: UNKNOWN
 License: GPL-3
-Download-URL: http://downloads.tryton.org/2.8/
+Download-URL: http://downloads.tryton.org/3.0/
 Description: trytond_product
         ===============
         
@@ -60,6 +60,7 @@ Classifier: Natural Language :: English
 Classifier: Natural Language :: French
 Classifier: Natural Language :: German
 Classifier: Natural Language :: Russian
+Classifier: Natural Language :: Slovenian
 Classifier: Natural Language :: Spanish
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python :: 2.6
diff --git a/trytond_product.egg-info/SOURCES.txt b/trytond_product.egg-info/SOURCES.txt
index 56faa6d..32fc508 100644
--- a/trytond_product.egg-info/SOURCES.txt
+++ b/trytond_product.egg-info/SOURCES.txt
@@ -27,6 +27,7 @@ locale/es_ES.po
 locale/fr_FR.po
 locale/nl_NL.po
 locale/ru_RU.po
+locale/sl_SI.po
 trytond_product.egg-info/PKG-INFO
 trytond_product.egg-info/SOURCES.txt
 trytond_product.egg-info/dependency_links.txt
diff --git a/trytond_product.egg-info/requires.txt b/trytond_product.egg-info/requires.txt
index c0b1648..adea631 100644
--- a/trytond_product.egg-info/requires.txt
+++ b/trytond_product.egg-info/requires.txt
@@ -1 +1,2 @@
-trytond >= 2.8, < 2.9
\ No newline at end of file
+python-sql
+trytond >= 3.0, < 3.1
\ No newline at end of file
diff --git a/uom.py b/uom.py
index d8878fa..987a3f0 100644
--- a/uom.py
+++ b/uom.py
@@ -1,6 +1,8 @@
 #This file is part of Tryton.  The COPYRIGHT file at the top level of
 #this repository contains the full copyright notices and license terms.
 from decimal import Decimal
+from sql import Table
+
 from trytond.model import ModelView, ModelSQL, fields
 from trytond.pyson import Eval
 from trytond.transaction import Transaction
@@ -50,10 +52,13 @@ class Uom(ModelSQL, ModelView):
     @classmethod
     def __register__(cls, module_name):
         cursor = Transaction().cursor
+        model_data = Table('ir_model_data')
         # Migration from 1.6: corrected misspelling of ounce (was once)
-        cursor.execute("UPDATE ir_model_data "
-            "SET fs_id = REPLACE(fs_id, 'uom_once', 'uom_ounce') "
-            "WHERE fs_id = 'uom_once' AND module = 'product'")
+        cursor.execute(*model_data.update(
+                columns=[model_data.fs_id],
+                values=['uom_ounce'],
+                where=(model_data.fs_id == 'uom_once')
+                & (model_data.module == 'product')))
         super(Uom, cls).__register__(module_name)
 
     @classmethod
@@ -70,8 +75,8 @@ class Uom(ModelSQL, ModelView):
                 'change_uom_rate': ('If the UOM is still not used, you can '
                     'delete it otherwise you can deactivate it '
                     'and create a new one.'),
-                'invalid_factor_and_rate': ('Invalid Factor and Rate values in '
-                    'UOM "%s".'),
+                'invalid_factor_and_rate': (
+                    'Invalid Factor and Rate values in UOM "%s".'),
                 })
 
     @classmethod
@@ -139,7 +144,7 @@ class Uom(ModelSQL, ModelView):
     def check_factor_and_rate(self):
         "Check coherence between factor and rate"
         if self.rate == self.factor == 0.0:
-            return True
+            return
         if (self.rate != round(
                     1.0 / self.factor, self.__class__.rate.digits[1])
                 and self.factor != round(
-- 
tryton-modules-product



More information about the tryton-debian-vcs mailing list