Moved Sales BOM & Sales BOM Item to Selling module, completed 'Available Stock for packing Items' report

This commit is contained in:
Akhilesh Darjee
2013-06-24 19:05:16 +05:30
parent 64c8e28423
commit a19014a846
52 changed files with 209 additions and 4 deletions

View File

@@ -1 +0,0 @@
from __future__ import unicode_literals

View File

@@ -1,11 +0,0 @@
[
"Package Items",
"Sales BOM Items",
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. \n\nThe package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".\n\nFor Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.\n\nNote: BOM = Bill of Materials",
"List items that form the package.",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"",
"Sales BOM Item",
"Sales BOM",
"Parent Item",
"Stock"
]

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "\u0625\u062c\u0645\u0627\u0644\u064a \u0645\u062c\u0645\u0648\u0639\u0629 \u0645\u0646 \u0627\u0644\u0639\u0646\u0627\u0635\u0631 ** ** ** \u0641\u064a \u0628\u0646\u062f \u0622\u062e\u0631. ** \u0647\u0630\u0627 \u0645\u0641\u064a\u062f \u0625\u0630\u0627 \u0643\u0646\u062a \u062a\u062c\u0645\u064a\u0639 \u0639\u0646\u0627\u0635\u0631 \u0645\u0639\u064a\u0646\u0629 ** ** \u0641\u064a \u062d\u0632\u0645\u0629 \u0648\u064a\u0645\u0643\u0646\u0643 \u0627\u0644\u062d\u0641\u0627\u0638 \u0639\u0644\u0649 \u0627\u0644\u0645\u062e\u0632\u0648\u0646 \u0645\u0646 \u0627\u0644\u0623\u0635\u0646\u0627\u0641 ** ** \u0645\u0639\u0628\u0623\u0629 \u0648\u0644\u064a\u0633 \u0627\u0644\u0643\u0644\u064a ** \u0627\u0644\u0633\u0644\u0639\u0629 **. \u0627\u0644\u062d\u0632\u0645\u0629 \u0627\u0644\u0633\u0644\u0639\u0629 ** ** \u0633\u064a\u0643\u0648\u0646 "\u0647\u0648 \u0627\u0644\u0645\u062e\u0632\u0648\u0646 \u0627\u0644\u0633\u0644\u0639\u0629" \u0628 "\u0644\u0627" \u0648 "\u0647\u0644 \u0627\u0644\u0645\u0628\u064a\u0639\u0627\u062a \u0627\u0644\u0633\u0644\u0639\u0629" \u0628 "\u0646\u0639\u0645" \u0639\u0644\u0649 \u0633\u0628\u064a\u0644 \u0627\u0644\u0645\u062b\u0627\u0644: \u0625\u0630\u0627 \u0643\u0646\u062a \u062a\u0628\u064a\u0639 \u0623\u062c\u0647\u0632\u0629 \u0627\u0644\u0643\u0645\u0628\u064a\u0648\u062a\u0631 \u0627\u0644\u0645\u062d\u0645\u0648\u0644\u0629 \u0648\u062d\u0642\u0627\u0626\u0628 \u062a\u062d\u0645\u0644 \u0639\u0644\u0649 \u0627\u0644\u0638\u0647\u0631 \u0628\u0634\u0643\u0644 \u0645\u0646\u0641\u0635\u0644 \u0648\u0644\u0647\u0627 \u0633\u0639\u0631 \u062e\u0627\u0635 \u0627\u0630\u0627 \u0643\u0627\u0646 \u0627\u0644\u0632\u0628\u0648\u0646 \u064a\u0634\u062a\u0631\u064a \u0643\u0644 \u060c \u062b\u0645 \u0633\u064a\u0642\u0648\u0645 \u0627\u0644\u0643\u0645\u0628\u064a\u0648\u062a\u0631 \u0627\u0644\u0645\u062d\u0645\u0648\u0644 + \u062d\u0642\u064a\u0628\u0629 \u0627\u0644\u0638\u0647\u0631 \u062a\u0643\u0648\u0646 \u062c\u062f\u064a\u062f\u0629 \u0627\u0644\u0645\u0628\u064a\u0639\u0627\u062a BOM Item.Note: BOM = \u0628\u064a\u0644 \u0627\u0644\u0645\u0648\u0627\u062f",
"List items that form the package.": "\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062a\u064a \u062a\u0634\u0643\u0644 \u0627\u0644\u062d\u0632\u0645\u0629.",
"Package Items": "\u062d\u0632\u0645\u0629 \u0627\u0644\u0628\u0646\u0648\u062f",
"Parent Item": "\u0627\u0644\u0623\u0645 \u0627\u0644\u0645\u062f\u064a\u0646\u0629",
"Sales BOM": "\u0645\u0628\u064a\u0639\u0627\u062a BOM",
"Sales BOM Item": "\u0645\u0628\u064a\u0639\u0627\u062a \u0627\u0644\u0633\u0644\u0639\u0629 BOM",
"Sales BOM Items": "\u0639\u0646\u0627\u0635\u0631 \u0645\u0628\u064a\u0639\u0627\u062a BOM",
"Stock": "\u0627\u0644\u0623\u0648\u0631\u0627\u0642 \u0627\u0644\u0645\u0627\u0644\u064a\u0629",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "\u0627\u0644\u0639\u0646\u0635\u0631 \u0627\u0644\u0630\u064a \u064a\u0645\u062b\u0644 \u0627\u0644\u062d\u0632\u0645\u0629. \u064a\u062c\u0628 \u0623\u0646 \u064a\u0643\u0648\u0646 \u0644\u062f\u0649 \u0647\u0630\u0627 \u0627\u0644\u0628\u0646\u062f "\u0647\u0648 \u0627\u0644\u0645\u062e\u0632\u0648\u0646 \u0627\u0644\u0633\u0644\u0639\u0629" \u0628 "\u0644\u0627" \u0648 "\u0647\u0644 \u0627\u0644\u0645\u0628\u064a\u0639\u0627\u062a \u0627\u0644\u0633\u0644\u0639\u0629" \u0628 "\u0646\u0639\u0645""
}

View File

@@ -1,10 +0,0 @@
{
"List items that form the package.": "Diese Liste Artikel bilden das Paket.",
"Package Items": "Package Angebote",
"Parent Item": "\u00dcbergeordneter Artikel",
"Sales BOM": "Vertrieb BOM",
"Sales BOM Item": "Vertrieb St\u00fccklistenposition",
"Sales BOM Items": "Vertrieb St\u00fccklistenpositionen",
"Stock": "Lager",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "Das Element, das das Paket darstellt. Dieser Artikel muss \"Ist Stock Item\" als \"Nein\" und \"Ist Vertrieb Item\" als \"Ja\""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "Grupo global de productos ** ** en otro art\u00edculo **. ** Esto es \u00fatil si usted est\u00e1 empaquetando un cierto ** ** Los productos en un paquete y usted mantiene un balance de los art\u00edculos envasados \u200b\u200b** ** y no el agregado del art\u00edculo **. ** El paquete ** art\u00edculo ** habr\u00e1 "es el tema de" como "No" y "\u00bfSales Item" como "S\u00ed", por ejemplo:. Si usted est\u00e1 vendiendo computadoras port\u00e1tiles y Mochilas por separado y recibir un descuento si el cliente compra a la vez , entonces el ordenador port\u00e1til + Mochila ser\u00e1 una nueva lista de materiales de ventas Item.Note: BOM = Bill de Materiales",
"List items that form the package.": "Lista de tareas que forman el paquete.",
"Package Items": "Art\u00edculos del embalaje",
"Parent Item": "Art\u00edculo principal",
"Sales BOM": "Ventas BOM",
"Sales BOM Item": "Ventas de art\u00edculo de lista de materiales",
"Sales BOM Items": "Los productos que la lista de materiales de ventas",
"Stock": "Valores",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "El punto que representa el paquete. Este elemento debe tener "es el tema de" como "No" y "\u00bfSales Item" como "S\u00ed""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "Groupe global de ** ** Articles dans un autre article **. ** Ceci est utile si vous mettez en place un certains articles ** ** dans un paquet et vous maintenir le stock des articles emball\u00e9s ** ** et non pas le total ** Article **. Le paquet ** ** Point aura \u00abEst Produit en stock" comme "No" et "Est Point de vente" que "Oui" Par exemple:. Si vous vendez des ordinateurs portables et sacs \u00e0 dos s\u00e9par\u00e9ment et un prix sp\u00e9cial si le client ach\u00e8te \u00e0 la fois , puis l'ordinateur portable Sac \u00e0 dos + sera une nouvelle nomenclature des ventes Item.Note: BOM = Bill of Materials",
"List items that form the package.": "Liste des articles qui composent le paquet.",
"Package Items": "Articles paquet",
"Parent Item": "Article Parent",
"Sales BOM": "BOM ventes",
"Sales BOM Item": "Article nomenclature des ventes",
"Sales BOM Items": "Articles ventes de nomenclature",
"Stock": "Stock",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "L'article qui repr\u00e9sente le package. Cet article doit avoir \u00abEst Produit en stock" comme "No" et "Est Point de vente" que "Oui""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "** \u0906\u0907\u091f\u092e \u0915\u0947 \u0938\u0915\u0932 \u0938\u092e\u0942\u0939 \u092e\u0947\u0902 \u090f\u0915 \u0914\u0930 \u0906\u0907\u091f\u092e ** **. \u092f\u0939 \u0909\u092a\u092f\u094b\u0917\u0940 \u0939\u0948 \u0905\u0917\u0930 \u0906\u092a \u090f\u0915 \u092a\u0948\u0915\u0947\u091c \u092e\u0947\u0902 ** \u0915\u0941\u091b ** \u0906\u0907\u091f\u092e bundling \u0939\u0948\u0902 \u0914\u0930 \u0906\u092a \u092a\u0948\u0915 ** \u0914\u0930 \u0928\u0939\u0940\u0902 \u0915\u0941\u0932 ** \u0906\u0907\u091f\u092e ** ** \u0906\u0907\u091f\u092e \u0915\u0947 \u0938\u094d\u091f\u0949\u0915 \u0915\u094b \u092c\u0928\u093e\u090f \u0930\u0916\u0928\u0947. \u092a\u0948\u0915\u0947\u091c ** \u0906\u0907\u091f\u092e ** \u0939\u0948 "\u0938\u094d\u091f\u0949\u0915 \u0906\u0907\u091f\u092e \u0939\u0948" "\u0928\u0939\u0940\u0902" \u0915\u0947 \u0930\u0942\u092a \u092e\u0947\u0902 \u0914\u0930 \u0915\u0947 \u0930\u0942\u092a \u092e\u0947\u0902 "\u0939\u093e\u0901" "\u092c\u093f\u0915\u094d\u0930\u0940 \u0906\u0907\u091f\u092e \u0939\u0948," \u0909\u0926\u093e\u0939\u0930\u0923 \u0915\u0947 \u0932\u093f\u090f: \u092f\u0926\u093f \u0906\u092a \u0932\u0948\u092a\u091f\u0949\u092a \u0914\u0930 Backpacks \u092c\u0947\u091a \u0930\u0939\u0947 \u0939\u0948\u0902 \u0914\u0930 \u0905\u0932\u0917 \u0938\u0947 \u090f\u0915 \u0935\u093f\u0936\u0947\u0937 \u092e\u0942\u0932\u094d\u092f \u0939\u0948 \u0905\u0917\u0930 \u0917\u094d\u0930\u093e\u0939\u0915 \u0926\u094b\u0928\u094b\u0902 \u0916\u0930\u0940\u0926\u0924\u093e BOM = \u0935\u093f\u0927\u0947\u092f\u0915 \u0915\u0940 \u0938\u093e\u092e\u0917\u094d\u0930\u0940:, \u0924\u094b \u090f\u0915 \u0928\u092f\u093e \u0932\u0948\u092a\u091f\u0949\u092a + \u092c\u0948\u0917 \u092c\u093f\u0915\u094d\u0930\u0940 \u092c\u0940\u0913\u090f\u092e Item.Note \u0939\u094b\u0917\u093e",
"List items that form the package.": "\u0938\u0942\u091a\u0940 \u0906\u0907\u091f\u092e \u0939\u0948 \u0915\u093f \u092a\u0948\u0915\u0947\u091c \u0915\u093e \u092b\u093e\u0930\u094d\u092e.",
"Package Items": "\u092a\u0948\u0915\u0947\u091c \u0906\u0907\u091f\u092e",
"Parent Item": "\u092e\u0942\u0932 \u0906\u0907\u091f\u092e",
"Sales BOM": "\u092c\u093f\u0915\u094d\u0930\u0940 \u092c\u0940\u0913\u090f\u092e",
"Sales BOM Item": "\u092c\u093f\u0915\u094d\u0930\u0940 \u092c\u0940\u0913\u090f\u092e \u0906\u0907\u091f\u092e",
"Sales BOM Items": "\u092c\u093f\u0915\u094d\u0930\u0940 \u092c\u0940\u0913\u090f\u092e \u0906\u0907\u091f\u092e",
"Stock": "\u0938\u094d\u091f\u0949\u0915",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "\u0906\u0907\u091f\u092e \u0939\u0948 \u0915\u093f \u092a\u0948\u0915\u0947\u091c \u0915\u093e \u092a\u094d\u0930\u0924\u093f\u0928\u093f\u0927\u093f\u0924\u094d\u0935 \u0915\u0930\u0924\u093e \u0939\u0948. \u0907\u0938 \u092e\u0926 "\u0938\u094d\u091f\u0949\u0915 \u0906\u0907\u091f\u092e" "\u0928\u0939\u0940\u0902" \u0915\u0947 \u0930\u0942\u092a \u092e\u0947\u0902 \u0914\u0930 \u0915\u0947 \u0930\u0942\u092a \u092e\u0947\u0902 "\u0939\u093e\u0901" "\u092c\u093f\u0915\u094d\u0930\u0940 \u0906\u0907\u091f\u092e \u0939\u0948""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "Agregat skupina ** stavki ** u drugoj to\u010dki ** **. To je korisno ako ste vezanje odre\u0111ene artikle ** ** u paketu i odr\u017eavanje zalihe pakiran ** stavki ** a ne agregata ** artikla **. Paket ** artikla ** \u0107e "Je katalo\u0161ki Stavka" kao "Ne" i "Je li prodaja artikla" kao "Da", na primjer:. Ako prodajete Prijenosna ra\u010dunala i Ruksaci odvojeno i imaju posebnu cijenu ako kupac kupuje oboje , onda laptop + ruksak \u0107e biti novi Prodaja BOM Item.Note: BOM = Bill materijala",
"List items that form the package.": "Popis stavki koje \u010dine paket.",
"Package Items": "Paket Proizvodi",
"Parent Item": "Roditelj artikla",
"Sales BOM": "Prodaja BOM",
"Sales BOM Item": "Prodaja BOM artikla",
"Sales BOM Items": "Prodaja BOM Proizvodi",
"Stock": "Zaliha",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "Stavka koja predstavlja paket. Ova stavka mora imati "Je katalo\u0161ki Stavka" kao "Ne" i "Je li prodaja artikla" kao "Da""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "De totale groep van ** Items ** in een andere ** Item **. Dit is handig als u de bundeling van een bepaalde ** Items ** in een pakket en u onderhoudt voorraad van de verpakte ** Items ** en niet de totale ** Item **. Het pakket ** Item ** zal hebben "Is Stock Item" als "No" en "Is Sales Item" als "Ja" Bijvoorbeeld:. Als je verkoopt laptops en Rugzakken apart en hebben een speciale prijs als de klant koopt zowel , dan is de laptop + Rugzak zal een nieuwe Sales BOM Item.Note: BOM = Bill of Materials",
"List items that form the package.": "Lijst items die het pakket vormen.",
"Package Items": "Pakket Artikelen",
"Parent Item": "Parent Item",
"Sales BOM": "Verkoop BOM",
"Sales BOM Item": "Verkoop BOM Item",
"Sales BOM Items": "Verkoop BOM Items",
"Stock": "Voorraad",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "Het item dat het pakket vertegenwoordigt. Dit artikel moet hebben "Is Stock Item" als "No" en "Is Sales Item" als "Yes""
}

View File

@@ -1,10 +0,0 @@
{
"List items that form the package.": "Lista de itens que comp\u00f5em o pacote.",
"Package Items": "Itens do pacote",
"Parent Item": "Item Pai",
"Sales BOM": "LDM de Vendas",
"Sales BOM Item": "Item da LDM de Vendas",
"Sales BOM Items": "Itens da LDM de Vendas",
"Stock": "Estoque",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "O item que representa o pacote. Este item deve ter "\u00c9 Item de Estoque" como "N\u00e3o" e "\u00c9 Item de Venda" como "Sim""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "Grupo agregado de Itens ** ** em outro item **. ** Isso \u00e9 \u00fatil se voc\u00ea est\u00e1 empacotando um certo ** ** Itens em um pacote e voc\u00ea manter o estoque dos itens embalados ** ** e n\u00e3o agregar o item **. ** O pacote ** ** item ter\u00e1 "\u00e9 o item da" como "N\u00e3o" e "\u00e9 o item de vendas" como "Sim", por exemplo:. Se voc\u00ea est\u00e1 vendendo laptops e mochilas separadamente e t\u00eam um pre\u00e7o especial se o cliente compra tanto , ent\u00e3o o Laptop Backpack + ser\u00e1 uma nova Vendas BOM Item.Note: BOM = Bill of Materials",
"List items that form the package.": "Lista de itens que comp\u00f5em o pacote.",
"Package Items": "Itens do pacote",
"Parent Item": "Item Pai",
"Sales BOM": "BOM vendas",
"Sales BOM Item": "Vendas item BOM",
"Sales BOM Items": "Vendas Itens BOM",
"Stock": "Estoque",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "O item que representa o pacote. Este item deve ter "\u00e9 o item da" como "N\u00e3o" e "\u00e9 o item de vendas" como "Sim""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "\u0410\u0433\u0440\u0435\u0433\u0430\u0442 \u0433\u0440\u0443\u043f\u0430 ** ** \u0458\u0435\u0434\u0438\u043d\u0438\u0446\u0435 \u0443 \u0434\u0440\u0443\u0433\u0443 ** ** \u0442\u0430\u0447\u043a\u0435. \u041e\u0432\u043e \u0458\u0435 \u043a\u043e\u0440\u0438\u0441\u043d\u043e \u0430\u043a\u043e \u0441\u0442\u0435 \u0433\u0440\u0443\u043f\u0438\u0441\u0430\u045a\u0435 \u043e\u0434\u0440\u0435\u0452\u0435\u043d\u0435 \u0441\u0442\u0430\u0432\u043a\u0435 ** ** \u0443 \u043f\u0430\u043a\u0435\u0442\u0443 \u0438 \u0434\u0430 \u043e\u0434\u0440\u0436\u0438 \u0437\u0430\u043b\u0438\u0445\u0435 \u0443\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u0438\u0445 ** ** \u0441\u0442\u0430\u0432\u043a\u0438, \u0430 \u043d\u0435 \u0430\u0433\u0440\u0435\u0433\u0430\u0442 ** ** \u0442\u0430\u0447\u043a\u0430. \u041f\u0430\u043a\u0435\u0442 ** ** \u0448\u0438\u0444\u0440\u0430 \u045b\u0435 "\u0414\u0430 \u043b\u0438 \u0458\u0435 \u0431\u0435\u0440\u0437\u0430 \u0421\u0442\u0430\u0432\u043a\u0430" \u043a\u0430\u043e "\u043d\u0435" \u0438 "\u0414\u0430 \u043b\u0438 \u0458\u0435 \u043f\u0440\u043e\u0434\u0430\u0458\u0435 \u0421\u0442\u0430\u0432\u043a\u0430" \u043a\u0430\u043e "\u0414\u0430" \u0417\u0430 \u041f\u0440\u0438\u043c\u0435\u0440: \u0410\u043a\u043e \u0441\u0435 \u043f\u0440\u043e\u0434\u0430\u0458\u0435 \u043b\u0430\u043f\u0442\u043e\u043f \u0438 \u0440\u0430\u043d\u0447\u0435\u0432\u0438 \u043e\u0434\u0432\u043e\u0458\u0435\u043d\u043e \u0438 \u0438\u043c\u0430\u0458\u0443 \u043f\u043e\u0441\u0435\u0431\u043d\u0443 \u0446\u0435\u043d\u0443 \u0443\u043a\u043e\u043b\u0438\u043a\u043e \u043a\u0443\u043f\u0430\u0446 \u043a\u0443\u043f\u0443\u0458\u0435 \u043e\u0431\u043e\u0458\u0435. , \u043e\u043d\u0434\u0430 \u043b\u0430\u043f\u0442\u043e\u043f + \u0420\u0430\u043d\u0430\u0446 \u045b\u0435 \u0431\u0438\u0442\u0438 \u043d\u043e\u0432\u0438 \u041f\u0440\u043e\u0434\u0430\u0458\u0430 \u0411\u041e\u041c \u0418\u0442\u0435\u043c.\u041d\u043e\u0442\u0435: \u0411\u041e\u041c = \u0421\u0430\u0441\u0442\u0430\u0432\u043d\u0438\u0446\u0435",
"List items that form the package.": "\u041b\u0438\u0441\u0442\u0430 \u0441\u0442\u0432\u0430\u0440\u0438 \u043a\u043e\u0458\u0435 \u0447\u0438\u043d\u0435 \u043f\u0430\u043a\u0435\u0442.",
"Package Items": "\u041f\u0430\u043a\u0435\u0442 \u0410\u0440\u0442\u0438\u043a\u043b\u0438",
"Parent Item": "\u0420\u043e\u0434\u0438\u0442\u0435\u0459 \u0448\u0438\u0444\u0440\u0430",
"Sales BOM": "\u041f\u0440\u043e\u0434\u0430\u0458\u0430 \u0411\u041e\u041c",
"Sales BOM Item": "\u041f\u0440\u043e\u0434\u0430\u0458\u0430 \u0411\u041e\u041c \u0448\u0438\u0444\u0440\u0430",
"Sales BOM Items": "\u041f\u0440\u043e\u0434\u0430\u0458\u0430 \u0411\u041e\u041c \u0410\u0440\u0442\u0438\u043a\u043b\u0438",
"Stock": "\u0417\u0430\u043b\u0438\u0445\u0430",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "\u0421\u0442\u0430\u0432\u043a\u0430 \u043a\u043e\u0458\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0459\u0430 \u043f\u0430\u043a\u0435\u0442. \u041e\u0432\u0430 \u0442\u0430\u0447\u043a\u0430 \u043c\u043e\u0440\u0430 \u0434\u0430 "\u0417\u0430\u0440 \u0431\u0435\u0440\u0437\u0430 \u0421\u0442\u0430\u0432\u043a\u0430" \u043a\u0430\u043e "\u043d\u0435" \u0438 "\u0414\u0430 \u043b\u0438 \u0458\u0435 \u043f\u0440\u043e\u0434\u0430\u0458\u0435 \u0442\u0430\u0447\u043a\u0430" \u043a\u0430\u043e "\u0414\u0430""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "\u0bae\u0ba4\u0bbf\u0baa\u0bcd\u0baa\u0bc0\u0b9f\u0bcd\u0b9f\u0bc1 ** \u0bb5\u0bbf\u0b9f\u0baf\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0b95\u0bc1\u0bb4\u0bc1 ** \u0bae\u0bb1\u0bcd\u0bb1\u0bc6\u0bbe\u0bb0\u0bc1 ** \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd \u0b95\u0bc6\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1 **. \u0ba8\u0bc0\u0b99\u0bcd\u0b95\u0bb3\u0bcd ** \u0b92\u0bb0\u0bc1 \u0ba4\u0bc6\u0bbe\u0b95\u0bc1\u0baa\u0bcd\u0baa\u0bc1 \u0b92\u0bb0\u0bc1 \u0b95\u0bc1\u0bb1\u0bbf\u0baa\u0bcd\u0baa\u0bbf\u0b9f\u0bcd\u0b9f ** \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0b9f\u0bcd\u0b95\u0bb3\u0bc8 \u0b92\u0ba9\u0bcd\u0bb1\u0bc1 \u0b95\u0bc2\u0b9f\u0bcd\u0b9f\u0bc1\u0ba4\u0bb2\u0bcd \u0b87\u0bb0\u0bc1\u0ba8\u0bcd\u0ba4\u0bbe\u0bb2\u0bcd \u0b87\u0ba8\u0bcd\u0ba4 \u0baa\u0baf\u0ba9\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bbe\u0b95 \u0b87\u0bb0\u0bc1\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd \u0ba8\u0bc0\u0b99\u0bcd\u0b95\u0bb3\u0bcd ** \u0bae\u0bb1\u0bcd\u0bb1\u0bc1\u0bae\u0bcd \u0bae\u0ba4\u0bbf\u0baa\u0bcd\u0baa\u0bc0\u0b9f\u0bcd\u0b9f\u0bc1 ** \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd ** \u0baa\u0bc7\u0b95\u0bcd ** \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0b9f\u0bcd\u0b95\u0bb3\u0bc8 \u0baa\u0b99\u0bcd\u0b95\u0bc1 \u0bb5\u0bc8\u0ba4\u0bcd\u0ba4\u0bc1. \u0ba4\u0bc6\u0bbe\u0b95\u0bc1\u0baa\u0bcd\u0baa\u0bc1 ** \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd ** "\u0b87\u0bb2\u0bcd\u0bb2\u0bc8" \u0b8e\u0ba9 "\u0baa\u0b99\u0bcd\u0b95\u0bc1 \u0b89\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0b9f\u0bbf \u0b87\u0bb2\u0bcd\u0bb2\u0bc8" \u0bae\u0bb1\u0bcd\u0bb1\u0bc1\u0bae\u0bcd "\u0b86\u0bae\u0bcd" \u0b8e\u0ba9 "\u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bbe\u0b95 \u0b89\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1" \u0b89\u0ba4\u0bbe\u0bb0\u0ba3\u0bae\u0bbe\u0b95:. \u0ba8\u0bc0\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0ba4\u0ba9\u0bbf\u0baf\u0bbe\u0b95 \u0bae\u0b9f\u0bbf\u0b95\u0bcd\u0b95\u0ba3\u0bbf\u0ba9\u0bbf\u0b95\u0bb3\u0bcd \u0bae\u0bb1\u0bcd\u0bb1\u0bc1\u0bae\u0bcd \u0bae\u0bc1\u0ba4\u0bc1\u0b95\u0bbf\u0bb2\u0bcd \u0b9a\u0bc1\u0bae\u0bc8 \u0baa\u0bc8\u0baf\u0bc1\u0b9f\u0ba9\u0bc1\u0bae\u0bcd \u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 \u0bae\u0bb1\u0bcd\u0bb1\u0bc1\u0bae\u0bcd \u0b92\u0bb0\u0bc1 \u0b9a\u0bbf\u0bb1\u0baa\u0bcd\u0baa\u0bc1 \u0bb5\u0bbf\u0bb2\u0bc8 \u0b87\u0bb2\u0bcd\u0bb2\u0bc8 \u0b8e\u0ba9\u0bcd\u0bb1\u0bbe\u0bb2\u0bcd \u0bb5\u0bbe\u0b9f\u0bbf\u0b95\u0bcd\u0b95\u0bc8\u0baf\u0bbe\u0bb3\u0bb0\u0bcd \u0b87\u0bb0\u0bc1 \u0bb5\u0bbe\u0b99\u0bcd\u0b95\u0bc1\u0bae\u0bcd \u0baa\u0bc7\u0bbe\u0ba4\u0bc1 \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0b9f\u0bcd\u0b95\u0bb3\u0bc8 BOM = \u0baa\u0bbf\u0bb2\u0bcd:, \u0baa\u0bbf\u0ba9\u0bcd\u0ba9\u0bb0\u0bcd \u0bb2\u0bc7\u0baa\u0bcd\u0b9f\u0bbe\u0baa\u0bcd + \u0baa\u0bc8\u0baf\u0bc1\u0b9f\u0ba9\u0bc1\u0bae\u0bcd \u0b92\u0bb0\u0bc1 \u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 BOM Item.Note \u0b87\u0bb0\u0bc1\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd",
"List items that form the package.": "\u0ba4\u0bc6\u0bbe\u0b95\u0bc1\u0baa\u0bcd\u0baa\u0bc1 \u0b85\u0bae\u0bc8\u0b95\u0bcd\u0b95 \u0b8e\u0ba9\u0bcd\u0bb1\u0bc1 \u0baa\u0b9f\u0bcd\u0b9f\u0bbf\u0baf\u0bb2\u0bcd \u0b89\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0b9f\u0bbf\u0b95\u0bb3\u0bcd.",
"Package Items": "\u0ba4\u0bc6\u0bbe\u0b95\u0bc1\u0baa\u0bcd\u0baa\u0bc1 \u0b89\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",
"Parent Item": "\u0baa\u0bc6\u0bb1\u0bcd\u0bb1\u0bc7\u0bbe\u0bb0\u0bcd \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd",
"Sales BOM": "\u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 BOM",
"Sales BOM Item": "\u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 BOM \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd",
"Sales BOM Items": "\u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 BOM \u0b89\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0b9f\u0bbf\u0b95\u0bb3\u0bcd",
"Stock": "\u0baa\u0b99\u0bcd\u0b95\u0bc1",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "\u0ba4\u0bc6\u0bbe\u0b95\u0bc1\u0baa\u0bcd\u0baa\u0bc1 \u0baa\u0bbf\u0bb0\u0ba4\u0bbf\u0baa\u0bb2\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb1\u0ba4\u0bc1 \u0b8e\u0ba9\u0bcd\u0bb1\u0bc1 \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd. \u0b87\u0ba8\u0bcd\u0ba4 \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd "\u0b87\u0bb2\u0bcd\u0bb2\u0bc8" \u0b8e\u0ba9 "\u0baa\u0b99\u0bcd\u0b95\u0bc1 \u0b89\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0b9f\u0bbf \u0b87\u0bb2\u0bcd\u0bb2\u0bc8" \u0bae\u0bb1\u0bcd\u0bb1\u0bc1\u0bae\u0bcd "\u0b86\u0bae\u0bcd" \u0b8e\u0ba9 "\u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd \u0b87\u0bb2\u0bcd\u0bb2\u0bc8""
}

View File

@@ -1,11 +0,0 @@
{
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials": "\u0e01\u0e25\u0e38\u0e48\u0e21\u0e23\u0e27\u0e21\u0e02\u0e2d\u0e07\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 ** ** \u0e40\u0e02\u0e49\u0e32\u0e44\u0e1b\u0e2d\u0e35\u0e01\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 ** ** \u0e19\u0e35\u0e49\u0e08\u0e30\u0e40\u0e1b\u0e47\u0e19\u0e1b\u0e23\u0e30\u0e42\u0e22\u0e0a\u0e19\u0e4c\u0e16\u0e49\u0e32\u0e04\u0e38\u0e13\u0e01\u0e33\u0e25\u0e31\u0e07 bundling \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 ** ** \u0e1a\u0e32\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e41\u0e1e\u0e04\u0e40\u0e01\u0e08\u0e41\u0e25\u0e30\u0e04\u0e38\u0e13\u0e23\u0e31\u0e01\u0e29\u0e32\u0e2a\u0e15\u0e47\u0e2d\u0e01\u0e02\u0e2d\u0e07\u0e1a\u0e23\u0e23\u0e08\u0e38\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 ** ** \u0e41\u0e25\u0e30\u0e44\u0e21\u0e48\u0e23\u0e27\u0e21\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 ** ** \u0e41\u0e1e\u0e04\u0e40\u0e01\u0e08\u0e2a\u0e34\u0e19\u0e04\u0e49\u0e32 ** ** \u0e08\u0e30\u0e21\u0e35 "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e2a\u0e34\u0e19\u0e04\u0e49\u0e32" \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48 "\u0e44\u0e21\u0e48\u0e21\u0e35" \u0e41\u0e25\u0e30 "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e32\u0e22" \u0e40\u0e1b\u0e47\u0e19 "\u0e43\u0e0a\u0e48" \u0e15\u0e31\u0e27\u0e2d\u0e22\u0e48\u0e32\u0e07:. \u0e16\u0e49\u0e32\u0e04\u0e38\u0e13\u0e01\u0e33\u0e25\u0e31\u0e07\u0e02\u0e32\u0e22\u0e41\u0e25\u0e47\u0e1b\u0e17\u0e47\u0e2d\u0e1b\u0e41\u0e25\u0e30\u0e40\u0e1b\u0e49\u0e2a\u0e30\u0e1e\u0e32\u0e22\u0e2b\u0e25\u0e31\u0e07\u0e41\u0e22\u0e01\u0e41\u0e25\u0e30\u0e21\u0e35\u0e23\u0e32\u0e04\u0e32\u0e1e\u0e34\u0e40\u0e28\u0e29\u0e2b\u0e32\u0e01\u0e25\u0e39\u0e01\u0e04\u0e49\u0e32\u0e0b\u0e37\u0e49\u0e2d\u0e17\u0e31\u0e49\u0e07 \u0e41\u0e25\u0e49\u0e27\u0e41\u0e25\u0e47\u0e1b\u0e17\u0e47\u0e2d\u0e1b\u0e01\u0e23\u0e30\u0e40\u0e1b\u0e4b\u0e32\u0e40\u0e1b\u0e49\u0e2a\u0e30\u0e1e\u0e32\u0e22\u0e2b\u0e25\u0e31\u0e07 + \u0e08\u0e30\u0e02\u0e32\u0e22\u0e43\u0e2b\u0e21\u0e48 BOM Item.Note: BOM \u0e1a\u0e34\u0e25\u0e02\u0e2d\u0e07\u0e27\u0e31\u0e2a\u0e14\u0e38 =",
"List items that form the package.": "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e41\u0e1e\u0e04\u0e40\u0e01\u0e08",
"Package Items": "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e41\u0e1e\u0e04\u0e40\u0e01\u0e08",
"Parent Item": "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e2b\u0e25\u0e31\u0e01",
"Sales BOM": "BOM \u0e02\u0e32\u0e22",
"Sales BOM Item": "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 BOM \u0e02\u0e32\u0e22",
"Sales BOM Items": "\u0e02\u0e32\u0e22\u0e2a\u0e34\u0e19\u0e04\u0e49\u0e32 BOM",
"Stock": "\u0e04\u0e25\u0e31\u0e07\u0e2a\u0e34\u0e19\u0e04\u0e49\u0e32",
"The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"": "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48\u0e41\u0e2a\u0e14\u0e07\u0e16\u0e36\u0e07\u0e41\u0e1e\u0e04\u0e40\u0e01\u0e08 \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e19\u0e35\u200b\u200b\u0e49\u0e08\u0e30\u0e15\u0e49\u0e2d\u0e07\u0e21\u0e35 "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e2a\u0e34\u0e19\u0e04\u0e49\u0e32" \u0e02\u0e13\u0e30\u0e17\u0e35\u0e48 "\u0e44\u0e21\u0e48\u0e21\u0e35" \u0e41\u0e25\u0e30 "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e02\u0e32\u0e22" \u0e40\u0e1b\u0e47\u0e19 "\u0e43\u0e0a\u0e48""
}

View File

@@ -1,39 +0,0 @@
// ERPNext - web based ERP (http://erpnext.com)
// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
cur_frm.cscript.refresh = function(doc, cdt, cdn) {
cur_frm.toggle_enable('new_item_code', doc.__islocal);
if(!doc.__islocal) {
cur_frm.add_custom_button("Check for Duplicates", function() {
cur_frm.call_server('check_duplicate', 1)
}, 'icon-search')
}
}
cur_frm.fields_dict.new_item_code.get_query = function() {
return 'select name, description from tabItem where is_stock_item="No" and is_sales_item="Yes"\
and name not in (select name from `tabSales BOM`)\
and `%(key)s` like "%s"'
}
cur_frm.fields_dict.new_item_code.query_description = 'Select Item where "Is Stock Item" is "No" \
and "Is Sales Item" is "Yes" and there is no other Sales BOM';
cur_frm.cscript.item_code = function(doc, dt, dn) {
var d = locals[dt][dn];
if (d.item_code){
get_server_fields('get_item_details', d.item_code, 'sales_bom_items', doc ,dt, dn, 1);
}
}

View File

@@ -1,85 +0,0 @@
# ERPNext - web based ERP (http://erpnext.com)
# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from __future__ import unicode_literals
import webnotes
from webnotes.utils import flt
from webnotes.model.utils import getlist
class DocType:
def __init__(self,d,dl):
self.doc, self.doclist = d,dl
def autoname(self):
self.doc.name = self.doc.new_item_code
def validate(self):
# check for duplicate
self.check_duplicate()
self.validate_main_item()
def validate_main_item(self):
"""main item must have Is Stock Item as No and Is Sales Item as Yes"""
if not webnotes.conn.sql("""select name from tabItem where name=%s and
ifnull(is_stock_item,'')='No' and ifnull(is_sales_item,'')='Yes'""", self.doc.new_item_code):
webnotes.msgprint("""Parent Item %s is either a Stock Item or a not a Sales Item""",
raise_exception=1)
def get_item_details(self, name):
det = webnotes.conn.sql("""select description, stock_uom from `tabItem`
where name = %s""", name)
rate = webnotes.conn.sql("""select ref_rate from `tabItem Price`
where price_list_name = %s and parent = %s
and ref_currency = %s""", (self.doc.price_list, name, self.doc.currency))
return {
'description' : det and det[0][0] or '',
'uom': det and det[0][1] or '',
'rate': rate and flt(rate[0][0]) or 0.00
}
def check_duplicate(self, finder=0):
il = getlist(self.doclist, "sales_bom_items")
if not il:
webnotes.msgprint("Add atleast one item")
return
# get all Sales BOM that have the first item
sbl = webnotes.conn.sql("""select distinct parent from `tabSales BOM Item` where item_code=%s
and parent != %s and docstatus != 2""", (il[0].item_code, self.doc.name))
# check all siblings
sub_items = [[d.item_code, flt(d.qty)] for d in il]
for s in sbl:
t = webnotes.conn.sql("""select item_code, qty from `tabSales BOM Item` where parent=%s and
docstatus != 2""", s[0])
t = [[d[0], flt(d[1])] for d in t]
if self.has_same_items(sub_items, t):
webnotes.msgprint("%s has the same Sales BOM details" % s[0])
raise Exception
if finder:
webnotes.msgprint("There is no Sales BOM present with the following Combination.")
def has_same_items(self, l1, l2):
if len(l1)!=len(l2): return 0
for l in l2:
if l not in l1:
return 0
for l in l1:
if l not in l2:
return 0
return 1

View File

@@ -1,97 +0,0 @@
[
{
"creation": "2013-01-10 16:34:29",
"docstatus": 0,
"modified": "2013-01-22 14:57:23",
"modified_by": "Administrator",
"owner": "Administrator"
},
{
"description": "Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. \n\nThe package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".\n\nFor Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.\n\nNote: BOM = Bill of Materials",
"doctype": "DocType",
"document_type": "Master",
"is_submittable": 0,
"module": "Stock",
"name": "__common__"
},
{
"doctype": "DocField",
"name": "__common__",
"parent": "Sales BOM",
"parentfield": "fields",
"parenttype": "DocType",
"permlevel": 0
},
{
"amend": 0,
"doctype": "DocPerm",
"name": "__common__",
"parent": "Sales BOM",
"parentfield": "permissions",
"parenttype": "DocType",
"permlevel": 0,
"read": 1,
"report": 1,
"submit": 0
},
{
"doctype": "DocType",
"name": "Sales BOM"
},
{
"doctype": "DocField",
"fieldname": "basic_section",
"fieldtype": "Section Break",
"label": "Sales BOM Item"
},
{
"description": "The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"",
"doctype": "DocField",
"fieldname": "new_item_code",
"fieldtype": "Link",
"label": "Parent Item",
"no_copy": 1,
"oldfieldname": "new_item_code",
"oldfieldtype": "Data",
"options": "Item",
"reqd": 1
},
{
"description": "List items that form the package.",
"doctype": "DocField",
"fieldname": "item_section",
"fieldtype": "Section Break",
"label": "Package Items"
},
{
"doctype": "DocField",
"fieldname": "sales_bom_items",
"fieldtype": "Table",
"label": "Sales BOM Items",
"oldfieldname": "sales_bom_items",
"oldfieldtype": "Table",
"options": "Sales BOM Item",
"reqd": 1
},
{
"cancel": 1,
"create": 1,
"doctype": "DocPerm",
"role": "Material Manager",
"write": 1
},
{
"cancel": 0,
"create": 0,
"doctype": "DocPerm",
"role": "Material User",
"write": 0
},
{
"cancel": 1,
"create": 1,
"doctype": "DocPerm",
"role": "Sales User",
"write": 1
}
]

View File

@@ -1,20 +0,0 @@
test_records = [
[
{
"doctype": "Sales BOM",
"new_item_code": "_Test Sales BOM Item"
},
{
"doctype": "Sales BOM Item",
"item_code": "_Test Item",
"parentfield": "sales_bom_items",
"qty": 5.0
},
{
"doctype": "Sales BOM Item",
"item_code": "_Test Item Home Desktop 100",
"parentfield": "sales_bom_items",
"qty": 2.0
}
],
]

View File

@@ -1 +0,0 @@
from __future__ import unicode_literals

View File

@@ -1,9 +0,0 @@
[
"Description",
"Item",
"Qty",
"Sales BOM Item",
"Rate",
"UOM",
"Stock"
]

View File

@@ -1,9 +0,0 @@
{
"Description": "\u0648\u0635\u0641",
"Item": "\u0628\u0646\u062f",
"Qty": "\u0627\u0644\u0643\u0645\u064a\u0629",
"Rate": "\u0645\u0639\u062f\u0644",
"Sales BOM Item": "\u0645\u0628\u064a\u0639\u0627\u062a \u0627\u0644\u0633\u0644\u0639\u0629 BOM",
"Stock": "\u0627\u0644\u0623\u0648\u0631\u0627\u0642 \u0627\u0644\u0645\u0627\u0644\u064a\u0629",
"UOM": "UOM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Beschreibung",
"Item": "Artikel",
"Qty": "Menge",
"Rate": "Rate",
"Sales BOM Item": "Vertrieb St\u00fccklistenposition",
"Stock": "Lager",
"UOM": "UOM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Descripci\u00f3n",
"Item": "Art\u00edculo",
"Qty": "Cantidad",
"Rate": "Velocidad",
"Sales BOM Item": "Ventas de art\u00edculo de lista de materiales",
"Stock": "Valores",
"UOM": "UOM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Description",
"Item": "Article",
"Qty": "Qt\u00e9",
"Rate": "Taux",
"Sales BOM Item": "Article nomenclature des ventes",
"Stock": "Stock",
"UOM": "Emballage"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "\u0935\u093f\u0935\u0930\u0923",
"Item": "\u092e\u0926",
"Qty": "\u092e\u093e\u0924\u094d\u0930\u093e",
"Rate": "\u0926\u0930",
"Sales BOM Item": "\u092c\u093f\u0915\u094d\u0930\u0940 \u092c\u0940\u0913\u090f\u092e \u0906\u0907\u091f\u092e",
"Stock": "\u0938\u094d\u091f\u0949\u0915",
"UOM": "UOM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Opis",
"Item": "Stavka",
"Qty": "Kol",
"Rate": "Stopa",
"Sales BOM Item": "Prodaja BOM artikla",
"Stock": "Zaliha",
"UOM": "UOM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Beschrijving",
"Item": "Item",
"Qty": "Aantal",
"Rate": "Tarief",
"Sales BOM Item": "Verkoop BOM Item",
"Stock": "Voorraad",
"UOM": "Verpakking"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Descri\u00e7\u00e3o",
"Item": "Item",
"Qty": "Qtde.",
"Rate": "Taxa",
"Sales BOM Item": "Item da LDM de Vendas",
"Stock": "Estoque",
"UOM": "UDM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "Descri\u00e7\u00e3o",
"Item": "Item",
"Qty": "Qty",
"Rate": "Taxa",
"Sales BOM Item": "Vendas item BOM",
"Stock": "Estoque",
"UOM": "UOM"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "\u041e\u043f\u0438\u0441",
"Item": "\u0421\u0442\u0430\u0432\u043a\u0430",
"Qty": "\u041a\u043e\u043b",
"Rate": "\u0421\u0442\u043e\u043f\u0430",
"Sales BOM Item": "\u041f\u0440\u043e\u0434\u0430\u0458\u0430 \u0411\u041e\u041c \u0448\u0438\u0444\u0440\u0430",
"Stock": "\u0417\u0430\u043b\u0438\u0445\u0430",
"UOM": "\u0423\u041e\u041c"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "\u0bb5\u0bbf\u0bb3\u0b95\u0bcd\u0b95\u0bae\u0bcd",
"Item": "\u0b89\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0b9f\u0bbf",
"Qty": "\u0b85\u0bb3\u0bb5\u0bc1",
"Rate": "\u0bb5\u0bbf\u0bb2\u0bc8",
"Sales BOM Item": "\u0bb5\u0bbf\u0bb1\u0bcd\u0baa\u0ba9\u0bc8 BOM \u0baa\u0bc6\u0bbe\u0bb0\u0bc1\u0bb3\u0bcd",
"Stock": "\u0baa\u0b99\u0bcd\u0b95\u0bc1",
"UOM": "\u0bae\u0bc6\u0bbe\u0bb1\u0b9f\u0bcd\u0b9f\u0bc1\u0bb5 \u0baa\u0bb2\u0bcd\u0b95\u0bb2\u0bc8\u0b95\u0bb4\u0b95\u0bae\u0bcd"
}

View File

@@ -1,9 +0,0 @@
{
"Description": "\u0e25\u0e31\u0e01\u0e29\u0e13\u0e30",
"Item": "\u0e0a\u0e34\u0e49\u0e19",
"Qty": "\u0e08\u0e33\u0e19\u0e27\u0e19",
"Rate": "\u0e2d\u0e31\u0e15\u0e23\u0e32",
"Sales BOM Item": "\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23 BOM \u0e02\u0e32\u0e22",
"Stock": "\u0e04\u0e25\u0e31\u0e07\u0e2a\u0e34\u0e19\u0e04\u0e49\u0e32",
"UOM": "UOM"
}

View File

@@ -1,22 +0,0 @@
# ERPNext - web based ERP (http://erpnext.com)
# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from __future__ import unicode_literals
import webnotes
class DocType:
def __init__(self, d, dl):
self.doc, self.doclist = d, dl

View File

@@ -1,75 +0,0 @@
[
{
"creation": "2013-02-22 01:28:03",
"docstatus": 0,
"modified": "2013-03-07 07:03:30",
"modified_by": "Administrator",
"owner": "Administrator"
},
{
"doctype": "DocType",
"istable": 1,
"module": "Stock",
"name": "__common__"
},
{
"doctype": "DocField",
"name": "__common__",
"parent": "Sales BOM Item",
"parentfield": "fields",
"parenttype": "DocType",
"permlevel": 0
},
{
"doctype": "DocType",
"name": "Sales BOM Item"
},
{
"doctype": "DocField",
"fieldname": "item_code",
"fieldtype": "Link",
"label": "Item",
"oldfieldname": "item_code",
"oldfieldtype": "Link",
"options": "Item",
"reqd": 1
},
{
"doctype": "DocField",
"fieldname": "qty",
"fieldtype": "Float",
"label": "Qty",
"oldfieldname": "qty",
"oldfieldtype": "Currency",
"reqd": 1
},
{
"doctype": "DocField",
"fieldname": "description",
"fieldtype": "Text",
"label": "Description",
"oldfieldname": "description",
"oldfieldtype": "Text",
"print_width": "300px",
"width": "300px"
},
{
"doctype": "DocField",
"fieldname": "rate",
"fieldtype": "Float",
"label": "Rate",
"oldfieldname": "rate",
"oldfieldtype": "Currency"
},
{
"doctype": "DocField",
"fieldname": "uom",
"fieldtype": "Link",
"label": "UOM",
"oldfieldname": "uom",
"oldfieldtype": "Link",
"options": "UOM",
"read_only": 1,
"search_index": 0
}
]