first commit

This commit is contained in:
root
2026-03-14 09:42:12 +00:00
commit 0adbd20c2c
10991 changed files with 1646955 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.

Binary file not shown.

View File

@@ -0,0 +1,116 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
#, fuzzy
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Фирма"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Цифри за валута"
#, fuzzy
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Крайна дата"
#, fuzzy
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Транзакции"
#, fuzzy
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Условие за плащане"
#, fuzzy
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Ценова листа"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Начална дата"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Цифри за валута"
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
#, fuzzy
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Свободен"
#, fuzzy
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Продукт"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Количество"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Единица"
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
#, fuzzy
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Ред от продажба"

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Empresa"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Moneda"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Data final"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Línies"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nom"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Tarifa"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Import de la venda"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Data inicial"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Moneda"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratis"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Producte"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Categoria UdM del producte"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Quantitat"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Import de la venda"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Unitat"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extres"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Extres de venda"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Usuari a les empreses"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extres"
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Extra de venda"
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Línia extra de venda"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Línia de venta"

View File

@@ -0,0 +1,104 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr ""
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr ""
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Namu"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr ""
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Unternehmen"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Währung"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Enddatum"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Positionen"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Name"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Preiskonditionsschema"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Verkaufsbetrag"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Startdatum"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Währung"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratis"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Artikel"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Maßeinheitenkategorie"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Menge"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Verkaufsbetrag"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Einheit"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Verkaufsextras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Benutzer in Unternehmen"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Verkauf Extra"
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Verkauf Extra Position"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Verkaufsposition"

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Empresa"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Moneda"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Fecha final"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Líneas"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nombre"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Tarifa"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Importe de la venta"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Fecha inicial"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Moneda"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratis"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Producto"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Categoría UdM del producto"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Cantidad"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Importe de la venta"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Unidad"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Extras de venta"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Usuario en las empresas"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Extra de venta"
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Línea extra de venta"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Línea de venta"

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr ""
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr ""
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr ""
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Lista de precios"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr ""
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr ""
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Cateogría de UdM de producto"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr ""
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr ""
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr ""
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr ""
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr ""
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr ""
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,105 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Ettevõte"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Valuuta numbriväärtus"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Lõppkuupäev"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Read"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nimi"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Hinnakiri"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Summa"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Alguskuupäev"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Valuuta numbriväärtus"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Ekstra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Tasuta"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Toode"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Toote mõõtühiku kategooria"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Kogus"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Summa"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Ühik"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Ekstra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Ekstrad"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Müügi ekstra"
#, fuzzy
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Kasutaja ettevõttes"
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Ekstrad"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Müügi ekstra"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Müügi ekstra"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Müügirida"

View File

@@ -0,0 +1,103 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "شرکت"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "رقم های واحد پول"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "تاریخ پایان"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "سطرها"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "نام"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "لیست قیمت"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "میزان فروش"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "تاریخ شروع"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "رقم های واحد پول"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "اضافی"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "رایگان"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "محصول"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "زیرمجموعه واحد اندازه گیری محصول"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "مقدار/تعداد"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "میزان فروش"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "واحد"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "اضافی"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "اضافات"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "فروش اضافات"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "اضافات"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "فروش اضافی"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "سطر فروش اضافی"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "سطر فروش"

View File

@@ -0,0 +1,103 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr ""
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr ""
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr ""
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr ""
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Société"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Devise"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Date de fin"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Lignes"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nom"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Liste de prix"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Montant de la vente"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Date de début"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Devise"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratuit"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Produit"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Catégorie d'unité de mesure"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Quantité"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Montant de la vente"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Unité"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Extras de vente"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Utilisateur dans les sociétés"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Extra de vente"
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Ligne d'extra de vente"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Ligne de vente"

View File

@@ -0,0 +1,106 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Társaság"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Tizedes vessző utáni számjegy"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Befejezési dátum"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Sor"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Név"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Árlista"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Eladási összeg"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Kezdő dátum"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Tizedes vessző utáni számjegy"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Szabad"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Termék"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Mértékegység kategória"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Mennyiség"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Eladási ár"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Egység"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
#, fuzzy
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Eladási extrák"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Eladási extra sor"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Eladási sor"

View File

@@ -0,0 +1,101 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Perusahaan"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Mata Uang"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Tanggal Akhir"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Baris"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nama"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Tanggal Awal"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Mata Uang"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr ""
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Produk"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr ""
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr ""
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr ""
#, fuzzy
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Pengguna di dalam perusahaan"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr ""
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr ""
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Baris Penjualan"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Baris Penjualan"

View File

@@ -0,0 +1,101 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Azienda"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Valuta"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Data fine"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Righe"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nome"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Listino"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Importo vendita"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Data inizio"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Valuta"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Libero"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Prodotto"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Categoria UdM prodotto"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Quantità"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Importo vendita"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Unità"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Vendite Extra"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Utente nelle aziende"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "extra vendita"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "riga extra vendita"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "riga vendita"

View File

@@ -0,0 +1,115 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
#, fuzzy
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "ຫ້ອງການ/ສຳນັກງານ"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "ໂຕເລກສະກຸນເງິນ"
#, fuzzy
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "ວັນທີສິ້ນສຸດ"
#, fuzzy
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "ຮ່ວງ"
#, fuzzy
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "ຊື່"
#, fuzzy
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "ລາຍການລາຄາ"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "ວັນທີເລີ່ມ"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "ໂຕເລກສະກຸນເງິນ"
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
#, fuzzy
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "ວ່າງ"
#, fuzzy
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "ຜະລິດຕະພັນ"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "ຈຳນວນ"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "ໜ່ວຍ"
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,106 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Organizacija"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Valiutos skaitmenų skaičius"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Pabaigos data"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Namu"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Pradžios data"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Valiutos skaitmenų skaičius"
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Bedrijf"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Valuta"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Eind datum"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Regels"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Naam"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Prijslijst"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Verkoopbedrag"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Start datum"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Valuta"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratis"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Product"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "product eenheidsmaat categorie"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Hoeveelheid"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Verkoopbedrag"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Eenheid"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "verkoop Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Gebruiker in het bedrijf"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Verkoop extra"
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Verkoop extra regel"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Verkooplijn"

View File

@@ -0,0 +1,108 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Firma"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Cyfry waluty"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Data ukończenia"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Wiersze"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nazwa"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Cennik"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Data rozpoczęcia"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Cyfry waluty"
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Produkt"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Kategoria jm produktu"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Ilość"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Jednostka"
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
#, fuzzy
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Wiersz sprzedaży"

View File

@@ -0,0 +1,104 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Empresa"
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Dígitos Decimais da Moeda"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Data Final"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Linhas"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nome"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Lista de Preços"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Montande de Venda"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Data inicial"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Dígitos Decimais da Moeda"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratuito"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Produto"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Categoria da UDM do Produto"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Quantidade"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Montante da Venda"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Unidade"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extra"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Extra de Venda"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Linha Extra de Venda"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Linha de Venda"

View File

@@ -0,0 +1,104 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Societate"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Monedă"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Data de sfârşit"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Rânduri"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Nume"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Listă de prețuri"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Valoarea vânzării"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Data de Început"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Monedă"
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Suplimentar"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Gratuit"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Produs"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Categorie UM Produs"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Cantitate"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Valoarea vânzării"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Unitate"
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Suplimentar"
#, fuzzy
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "In plus"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr ""
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Utilizator în Companii"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr ""
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Suplimentar"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Rând de vânzare"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Rând de vânzare"

View File

@@ -0,0 +1,115 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
#, fuzzy
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Учет.орг."
#, fuzzy
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Кол-во цифр валюты"
#, fuzzy
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Дата окончания"
#, fuzzy
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Строки"
#, fuzzy
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Правило оплаты"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Дата начала"
#, fuzzy
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Кол-во цифр валюты"
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
#, fuzzy
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Свободно"
#, fuzzy
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Товарно материальные ценности (ТМЦ)"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Кол-во"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "Штука"
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
#, fuzzy
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Строка продажи"

View File

@@ -0,0 +1,101 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr "Družba"
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr "Valuta"
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr "Končni datum"
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr "Postavke"
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "Naziv"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr "Cenik"
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr "Znesek prodaje"
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr "Začetni datum"
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr "Valuta"
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Dodatno"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr "Prosto"
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr "Izdelek"
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr "Kategorije EM izdelka"
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr "Količina"
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr "Znesek prodaje"
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr "enota"
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Dodatno"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Dodatno"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Prodaja dodatno"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr "Uporabnik v družbah"
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Dodatno"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Dodatno"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Dodatna prodajna postavka"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr "Prodajna postavka"

View File

@@ -0,0 +1,103 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr ""
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr ""
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr ""
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr ""
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,99 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr ""
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr ""
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr ""
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr ""
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr ""
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr ""
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr ""
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr ""
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr ""
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr ""
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr ""
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

View File

@@ -0,0 +1,104 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:sale.extra,company:"
msgid "Company"
msgstr ""
msgctxt "field:sale.extra,currency:"
msgid "Currency"
msgstr ""
msgctxt "field:sale.extra,end_date:"
msgid "End Date"
msgstr ""
msgctxt "field:sale.extra,lines:"
msgid "Lines"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra,name:"
msgid "Name"
msgstr "纳木"
msgctxt "field:sale.extra,price_list:"
msgid "Price List"
msgstr ""
msgctxt "field:sale.extra,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra,start_date:"
msgid "Start Date"
msgstr ""
msgctxt "field:sale.extra.line,currency:"
msgid "Currency"
msgstr ""
#, fuzzy
msgctxt "field:sale.extra.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "field:sale.extra.line,free:"
msgid "Free"
msgstr ""
msgctxt "field:sale.extra.line,product:"
msgid "Product"
msgstr ""
msgctxt "field:sale.extra.line,product_uom_category:"
msgid "Product UoM Category"
msgstr ""
msgctxt "field:sale.extra.line,quantity:"
msgid "Quantity"
msgstr ""
msgctxt "field:sale.extra.line,sale_amount:"
msgid "Sale Amount"
msgstr ""
msgctxt "field:sale.extra.line,unit:"
msgid "Unit"
msgstr ""
#, fuzzy
msgctxt "field:sale.line,extra:"
msgid "Extra"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_form"
msgid "Extras"
msgstr "Extras"
msgctxt "model:ir.action,name:act_extra_relate"
msgid "Sale Extras"
msgstr "Sale Extras"
msgctxt "model:ir.rule.group,name:rule_group_extra_companies"
msgid "User in companies"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_extra"
msgid "Extras"
msgstr "Extras"
#, fuzzy
msgctxt "model:sale.extra,string:"
msgid "Sale Extra"
msgstr "Sale Extras"
#, fuzzy
msgctxt "model:sale.extra.line,string:"
msgid "Sale Extra Line"
msgstr "Sale Extras"
msgctxt "view:sale.extra.line:"
msgid "Sale Line"
msgstr ""

243
modules/sale_extra/sale.py Normal file
View File

@@ -0,0 +1,243 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
import datetime
from decimal import Decimal
from trytond.model import (
DeactivableMixin, MatchMixin, ModelSQL, ModelView, Workflow, fields,
sequence_ordered)
from trytond.modules.currency.fields import Monetary
from trytond.pool import Pool, PoolMeta
from trytond.pyson import Eval, If
from trytond.transaction import Transaction
class Sale(metaclass=PoolMeta):
__name__ = 'sale.sale'
@classmethod
@ModelView.button
@Workflow.transition('quotation')
def quote(cls, sales):
pool = Pool()
Line = pool.get('sale.line')
super().quote(sales)
# State must be draft to add or delete lines
# because extra must be set after to have correct amount
cls.write(sales, {'state': 'draft'})
removed = []
for sale in sales:
removed.extend(sale.set_extra())
Line.delete(removed)
cls.save(sales)
# Reset to quotation state to avoid duplicate log entries
cls.write(sales, {'state': 'quotation'})
def set_extra(self):
'Set extra lines and fill lines_to_delete'
pool = Pool()
Extra = pool.get('sale.extra')
removed = []
extra_lines = Extra.get_lines(self)
extra2lines = {line.extra: line for line in extra_lines}
lines = list(self.lines)
for line in list(lines):
if line.type != 'line' or not line.extra:
continue
if line.extra in extra2lines:
del extra2lines[line.extra]
continue
else:
lines.remove(line)
removed.append(line)
if extra2lines:
lines.extend(extra2lines.values())
self.lines = lines
return removed
class Line(metaclass=PoolMeta):
__name__ = 'sale.line'
extra = fields.Many2One('sale.extra.line', 'Extra', ondelete='RESTRICT')
class Extra(DeactivableMixin, ModelSQL, ModelView, MatchMixin):
__name__ = 'sale.extra'
name = fields.Char('Name', translate=True, required=True)
company = fields.Many2One(
'company.company', "Company", required=True,
states={
'readonly': Eval('id', 0) > 0,
})
start_date = fields.Date('Start Date',
domain=['OR',
('start_date', '<=', If(~Eval('end_date', None),
datetime.date.max,
Eval('end_date', datetime.date.max))),
('start_date', '=', None),
])
end_date = fields.Date('End Date',
domain=['OR',
('end_date', '>=', If(~Eval('start_date', None),
datetime.date.min,
Eval('start_date', datetime.date.min))),
('end_date', '=', None),
])
price_list = fields.Many2One('product.price_list', 'Price List',
ondelete='CASCADE',
domain=[
('company', '=', Eval('company', -1)),
])
sale_amount = Monetary(
"Sale Amount", currency='currency', digits='currency')
currency = fields.Function(fields.Many2One(
'currency.currency', "Currency"),
'on_change_with_currency')
lines = fields.One2Many('sale.extra.line', 'extra', 'Lines')
@staticmethod
def default_company():
return Transaction().context.get('company')
@fields.depends('company')
def on_change_with_currency(self, name=None):
return self.company.currency if self.company else None
@classmethod
def _extras_domain(cls, sale):
return [
['OR',
('start_date', '<=', sale.sale_date),
('start_date', '=', None),
],
['OR',
('end_date', '=', None),
('end_date', '>=', sale.sale_date),
],
['OR',
('price_list', '=', None),
('price_list', '=',
sale.price_list.id if sale.price_list else None),
],
('company', '=', sale.company.id),
]
@classmethod
def get_lines(cls, sale, pattern=None, line_pattern=None):
'Yield extra sale lines'
pool = Pool()
Currency = pool.get('currency.currency')
extras = cls.search(cls._extras_domain(sale))
pattern = pattern.copy() if pattern is not None else {}
line_pattern = line_pattern.copy() if line_pattern is not None else {}
sale_amount = Currency.compute(
sale.currency, sale.untaxed_amount, sale.company.currency)
pattern.setdefault('sale_amount', sale_amount)
line_pattern.setdefault('sale_amount', sale_amount)
for extra in extras:
if extra.match(pattern):
for line in extra.lines:
if line.match(line_pattern):
yield line.get_line(sale)
break
def match(self, pattern):
pattern = pattern.copy()
sale_amount = pattern.pop('sale_amount')
match = super().match(pattern)
if self.sale_amount is not None:
if sale_amount < self.sale_amount:
return False
return match
class ExtraLine(sequence_ordered(), ModelSQL, ModelView, MatchMixin):
__name__ = 'sale.extra.line'
extra = fields.Many2One('sale.extra', 'Extra', required=True,
ondelete='CASCADE')
sale_amount = Monetary(
"Sale Amount", currency='currency', digits='currency')
product = fields.Many2One('product.product', 'Product', required=True,
domain=[('salable', '=', True)])
product_uom_category = fields.Function(
fields.Many2One('product.uom.category', 'Product UoM Category'),
'on_change_with_product_uom_category')
quantity = fields.Float("Quantity", digits='unit', required=True)
unit = fields.Many2One('product.uom', 'Unit', required=True,
domain=[
('category', '=', Eval('product_uom_category', -1)),
])
free = fields.Boolean('Free')
currency = fields.Function(fields.Many2One(
'currency.currency', "Currency"),
'on_change_with_currency')
@classmethod
def __setup__(cls):
super().__setup__()
cls.__access__.add('extra')
cls._order.insert(1, ('extra', 'ASC'))
@fields.depends('product')
def on_change_with_product_uom_category(self, name=None):
return self.product.default_uom_category if self.product else None
@fields.depends('product')
def on_change_product(self):
if self.product:
self.unit = self.product.sale_uom
@staticmethod
def default_free():
return False
@fields.depends('extra', '_parent_extra.currency')
def on_change_with_currency(self, name=None):
return self.extra.currency if self.extra else None
def match(self, pattern):
pattern = pattern.copy()
sale_amount = pattern.pop('sale_amount')
if (not self.product.active
or not self.product.salable):
return False
match = super().match(pattern)
if self.sale_amount is not None:
if sale_amount < self.sale_amount:
return False
return match
def get_line(self, sale):
pool = Pool()
Line = pool.get('sale.line')
sequence = None
if sale.lines:
last_line = sale.lines[-1]
if last_line.sequence is not None:
sequence = last_line.sequence + 1
line = Line(
sale=sale,
sequence=sequence,
type='line',
product=self.product,
quantity=self.quantity,
unit=self.unit,
extra=self,
)
line.on_change_product()
if self.free:
line.unit_price = line.amount = Decimal(0)
return line

106
modules/sale_extra/sale.xml Normal file
View File

@@ -0,0 +1,106 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
<record model="ir.ui.view" id="extra_view_form">
<field name="model">sale.extra</field>
<field name="type">form</field>
<field name="name">extra_form</field>
</record>
<record model="ir.ui.view" id="extra_view_list">
<field name="model">sale.extra</field>
<field name="type">tree</field>
<field name="name">extra_list</field>
</record>
<record model="ir.action.act_window" id="act_extra_form">
<field name="name">Extras</field>
<field name="res_model">sale.extra</field>
<field name="domain"></field>
<field name="search_value"
eval="['OR', ('end_date', '>=', Date()), ('end_date', '=', None)]"
pyson="1"/>
</record>
<record model="ir.action.act_window.view" id="act_extra_form_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="extra_view_list"/>
<field name="act_window" ref="act_extra_form"/>
</record>
<record model="ir.action.act_window.view" id="act_extra_form_view2">
<field name="sequence" eval="20"/>
<field name="view" ref="extra_view_form"/>
<field name="act_window" ref="act_extra_form"/>
</record>
<menuitem
parent="sale.menu_configuration"
action="act_extra_form"
sequence="50"
id="menu_extra"/>
<record model="ir.action.act_window" id="act_extra_relate">
<field name="name">Sale Extras</field>
<field name="res_model">sale.extra</field>
<field name="domain"
eval="[If(Eval('active_ids', []) == [Eval('active_id')], ('price_list', '=', Eval('active_id')), ('price_list', 'in', Eval('active_ids')))]"
pyson="1"/>
<field name="search_value"
eval="['OR', ('end_date', '>=', Date()), ('end_date', '=', None)]"
pyson="1"/>
</record>
<record model="ir.action.keyword" id="act_extra_relate_keyword1">
<field name="keyword">form_relate</field>
<field name="model">product.price_list,-1</field>
<field name="action" ref="act_extra_relate"/>
</record>
<record model="ir.rule.group" id="rule_group_extra_companies">
<field name="name">User in companies</field>
<field name="model">sale.extra</field>
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_extra_companies">
<field name="domain"
eval="[('company', 'in', Eval('companies', []))]"
pyson="1"/>
<field name="rule_group" ref="rule_group_extra_companies"/>
</record>
<record model="ir.model.access" id="access_extra">
<field name="model">sale.extra</field>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_extra_sale_admin">
<field name="model">sale.extra</field>
<field name="group" ref="sale.group_sale_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="extra_line_view_form">
<field name="model">sale.extra.line</field>
<field name="type">form</field>
<field name="name">extra_line_form</field>
</record>
<record model="ir.ui.view" id="extra_line_view_list">
<field name="model">sale.extra.line</field>
<field name="type">tree</field>
<field name="name">extra_line_list</field>
<field name="priority" eval="10"/>
</record>
<record model="ir.ui.view" id="extra_line_view_list_sequence">
<field name="model">sale.extra.line</field>
<field name="type">tree</field>
<field name="name">extra_line_list_sequence</field>
<field name="priority" eval="20"/>
</record>
</data>
</tryton>

View File

@@ -0,0 +1,2 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.

View File

@@ -0,0 +1,164 @@
===================
Sale Extra Scenario
===================
Imports::
>>> import datetime as dt
>>> from decimal import Decimal
>>> from proteus import Model
>>> from trytond.modules.account.tests.tools import create_chart, get_accounts
>>> from trytond.modules.account_invoice.tests.tools import create_payment_term
>>> from trytond.modules.company.tests.tools import create_company
>>> from trytond.tests.tools import activate_modules
Activate modules::
>>> config = activate_modules('sale_extra', create_company, create_chart)
Get accounts::
>>> accounts = get_accounts()
>>> revenue = accounts['revenue']
>>> expense = accounts['expense']
Create customer::
>>> Party = Model.get('party.party')
>>> customer = Party(name='Customer')
>>> customer.save()
Create account category::
>>> ProductCategory = Model.get('product.category')
>>> account_category = ProductCategory(name="Account Category")
>>> account_category.accounting = True
>>> account_category.account_revenue = revenue
>>> account_category.save()
Create product::
>>> ProductUom = Model.get('product.uom')
>>> ProductTemplate = Model.get('product.template')
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
>>> template = ProductTemplate()
>>> template.name = 'Product'
>>> template.default_uom = unit
>>> template.type = 'goods'
>>> template.salable = True
>>> template.lead_time = dt.timedelta(0)
>>> template.list_price = Decimal('20')
>>> template.account_category = account_category
>>> template.save()
>>> product, = template.products
>>> extra_template = ProductTemplate()
>>> extra_template.name = 'Extra'
>>> extra_template.default_uom = unit
>>> extra_template.type = 'service'
>>> extra_template.salable = True
>>> extra_template.lead_time = dt.timedelta(0)
>>> extra_template.list_price = Decimal('3')
>>> extra_template.account_category = account_category
>>> extra_template.save()
>>> extra_product, = extra_template.products
Create payment term::
>>> payment_term = create_payment_term()
>>> payment_term.save()
Create Extra::
>>> PriceList = Model.get('product.price_list')
>>> Extra = Model.get('sale.extra')
>>> price_list = PriceList(name="Default", price='list_price')
>>> price_list_line = price_list.lines.new()
>>> price_list_line.formula = 'unit_price'
>>> price_list.save()
>>> extra = Extra(name='Free Extra')
>>> extra.price_list = price_list
>>> line = extra.lines.new()
>>> line.sale_amount = Decimal('100')
>>> line.product = extra_product
>>> line.quantity = 2
>>> line.free = True
>>> line = extra.lines.new()
>>> line.sale_amount = Decimal('50')
>>> line.product = extra_product
>>> line.quantity = 1
>>> extra.save()
Sale for 100, 2 free extra added::
>>> Sale = Model.get('sale.sale')
>>> sale = Sale()
>>> sale.party = customer
>>> sale.price_list = price_list
>>> sale.payment_term = payment_term
>>> sale_line = sale.lines.new()
>>> sale_line.product = product
>>> sale_line.quantity = 5
>>> sale.save()
>>> sale.untaxed_amount
Decimal('100.00')
>>> len(sale.lines)
1
>>> sale.click('quote')
>>> sale.untaxed_amount
Decimal('100.00')
>>> len(sale.lines)
2
>>> sum(l.quantity for l in sale.lines)
7.0
Back to draft, nothing change::
>>> sale.click('draft')
>>> sale.click('quote')
>>> sale.untaxed_amount
Decimal('100.00')
>>> len(sale.lines)
2
Sale for 60, 1 extra added::
>>> sale = Sale()
>>> sale.party = customer
>>> sale.price_list = price_list
>>> sale.payment_term = payment_term
>>> sale_line = sale.lines.new()
>>> sale_line.product = product
>>> sale_line.quantity = 3
>>> sale.save()
>>> sale.untaxed_amount
Decimal('60.00')
>>> len(sale.lines)
1
>>> sale.click('quote')
>>> sale.untaxed_amount
Decimal('63.00')
>>> len(sale.lines)
2
Sale for 20, nothing added::
>>> sale = Sale()
>>> sale.party = customer
>>> sale.price_list = price_list
>>> sale.payment_term = payment_term
>>> sale_line = sale.lines.new()
>>> sale_line.product = product
>>> sale_line.quantity = 1
>>> sale.save()
>>> sale.untaxed_amount
Decimal('20.00')
>>> len(sale.lines)
1
>>> sale.click('quote')
>>> sale.untaxed_amount
Decimal('20.00')
>>> len(sale.lines)
1

View File

@@ -0,0 +1,13 @@
# 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 trytond.modules.company.tests import CompanyTestMixin
from trytond.tests.test_tryton import ModuleTestCase
class SaleExtraTestCase(CompanyTestMixin, ModuleTestCase):
'Test Sale Extra module'
module = 'sale_extra'
del ModuleTestCase

View File

@@ -0,0 +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 trytond.tests.test_tryton import load_doc_tests
def load_tests(*args, **kwargs):
return load_doc_tests(__name__, __file__, *args, **kwargs)

View File

@@ -0,0 +1,19 @@
[tryton]
version=7.8.0
depends:
company
ir
product
product_price_list
res
sale
sale_price_list
xml:
sale.xml
[register]
model:
sale.Extra
sale.ExtraLine
sale.Sale
sale.Line

View File

@@ -0,0 +1,22 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form>
<label name="name"/>
<field name="name"/>
<label name="active"/>
<field name="active"/>
<label name="start_date"/>
<field name="start_date"/>
<label name="end_date"/>
<field name="end_date"/>
<label name="company"/>
<field name="company"/>
<label name="price_list"/>
<field name="price_list"/>
<separator id="pattern" colspan="4"/>
<label name="sale_amount"/>
<field name="sale_amount"/>
<field name="lines" colspan="4"
view_ids="sale_extra.extra_line_view_list_sequence"/>
</form>

View File

@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form>
<label name="extra"/>
<field name="extra"/>
<newline/>
<label name="sequence"/>
<field name="sequence"/>
<label name="sale_amount"/>
<field name="sale_amount"/>
<separator id="sale_line" string="Sale Line" colspan="4"/>
<label name="product"/>
<field name="product"/>
<label name="free"/>
<field name="free"/>
<label name="quantity"/>
<field name="quantity"/>
<label name="unit"/>
<field name="unit"/>
</form>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree>
<field name="extra" expand="1"/>
<field name="sale_amount"/>
<field name="product" expand="1"/>
<field name="quantity"/>
<field name="unit"/>
<field name="free"/>
</tree>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree sequence="sequence">
<field name="extra" expand="1"/>
<field name="sale_amount"/>
<field name="product" expand="1"/>
<field name="quantity"/>
<field name="unit"/>
<field name="free"/>
</tree>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree>
<field name="company" expand="1" optional="1"/>
<field name="price_list" expand="1"/>
<field name="name" expand="2"/>
<field name="start_date"/>
<field name="end_date"/>
<field name="sale_amount" optional="0"/>
</tree>