diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py index d4474b657b..06d3932458 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/purchase_order.py @@ -145,7 +145,6 @@ class PurchaseOrder(BuyingController): and frappe.db.get_value("Item", d.item_code, "is_stock_item") \ and d.warehouse and not d.delivered_by_supplier: item_wh_list.append([d.item_code, d.warehouse]) - for item_code, warehouse in item_wh_list: update_bin_qty(item_code, warehouse, { "ordered_qty": get_ordered_qty(item_code, warehouse) diff --git a/erpnext/docs/assets/img/manufacturing/ppt.png b/erpnext/docs/assets/img/manufacturing/ppt.png index f5018b7549..30096fff83 100644 Binary files a/erpnext/docs/assets/img/manufacturing/ppt.png and b/erpnext/docs/assets/img/manufacturing/ppt.png differ diff --git a/erpnext/docs/assets/old_images/erpnext/material-request-workflow.jpg b/erpnext/docs/assets/old_images/erpnext/material-request-workflow.jpg index 6846fa5baa..c462e209f1 100644 Binary files a/erpnext/docs/assets/old_images/erpnext/material-request-workflow.jpg and b/erpnext/docs/assets/old_images/erpnext/material-request-workflow.jpg differ diff --git a/erpnext/docs/current/models/stock/material_request_item.html b/erpnext/docs/current/models/stock/material_request_item.html new file mode 100644 index 0000000000..d1d8f6fbca --- /dev/null +++ b/erpnext/docs/current/models/stock/material_request_item.html @@ -0,0 +1,393 @@ + + + + + + +
+ + + Version 6.x.x + + + Source + +
+ + +Child Table + + +

Table Name: tabMaterial Request Item

+ + + + +

Fields

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SrFieldnameTypeLabelOptions
1item_code + Link + Item Code + + + + + + +Item + + + +
2col_break1 + Column Break + + +
3item_name + Data + Item Name + +
4section_break_4 + Section Break + Description + +
5description + Text Editor + Description + +
6column_break_6 + Column Break + + +
7image + Attach Image + Image + +
8quantity_and_warehouse + Section Break + Quantity and Warehouse + +
9qty + Float + Quantity + +
10uom + Link + Stock UOM + + + + + + +UOM + + + +
11warehouse + Link + For Warehouse + + + + + + +Warehouse + + + +
12col_break2 + Column Break + + +
13schedule_date + Date + Required Date + +
14more_info + Section Break + More Information + +
15item_group + Link + Item Group + + + + + + +Item Group + + + +
16brand + Link + Brand + + + + + + +Brand + + + +
17lead_time_date + Date + Lead Time Date + +
18sales_order + Link + Sales Order + + + + + + +Sales Order + + + +
19col_break3 + Column Break + + +
20min_order_qty + Float + Min Order Qty + +
21projected_qty + Float + Projected Qty + +
22ordered_qty + Float + Completed Qty + +
23page_break + Check + Page Break + +
+ + + + +

Child Table Of

+ + + + + + + \ No newline at end of file diff --git a/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md b/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md index 61ec4c76d9..4bdc48767b 100644 --- a/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md +++ b/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md @@ -1,7 +1,7 @@ Production Planning Tool helps you plan production and purchase of Items for a period (usually a week or a month). -This list of Items can be generated from the open Sales Orders in the system +This list of Items can be generated from the open Sales Orders or pending Material Requests that can be Manufactured in the system and will generate: * Production Orders for each Item. @@ -13,30 +13,36 @@ To use the Production Planning Tool, go to: Production Planing Tool +#### Step 1: Specify source to get Production Items + +* You can select Sales Order or Material Request according to where you want to source the items from +* If you plan to add items manually, keep the "Get items from" field empty -#### Step 1: Select and get Sales Order -* Select sales orders for MRP using filters (Time, Item, and Customer) -* Click on Get Sales Order to generate a list. +#### Step 2: Select and get Sales Order / Material Request + +* Use filters to get the Sales Order / Material Request +* Click on Get Sales Order / Get Material Requests to generate a list. Production Planing Tool -#### Step 2: Get Item from Sales Orders. +#### Step 3: Get Items -You can add/remove or change quantity of these Items. +* Get the items for the Sales Order / Material request list +* You can add/remove or change quantity of these Items. Production Planing Tool -#### Step 3: Create Production Orders +#### Step 4: Create Production Orders Production Planing Tool -#### Step 4: Create Material Request +#### Step 5: Create Material Request Create Material Request for Items with projected shortfall. @@ -46,11 +52,11 @@ Create Material Request for Items with projected shortfall. The Production Planning Tool is used in two stages: - * Selection of Open Sales Orders for the period based on “Expected Delivery Date”. - * Selection of Items from those Sales Orders. + * Selection of open Sales Orders / pending Material Request for the period based on “Expected Delivery Date”. + * Selection of Items from those Sales Orders / Material Requests -The tool will update if you have already created Production Orders for a -particular Item against its Sales Order (“Planned Quantity”). +The tool will update if you have already created Production Orde rs for a +particular Item against its Sales Order (“Planned Quantity”) or Material Request. You can always edit the Item list and increase / reduce quantities to plan your production. diff --git a/erpnext/docs/user/manual/en/stock/material-request.md b/erpnext/docs/user/manual/en/stock/material-request.md index a609756d3e..8afda60173 100644 --- a/erpnext/docs/user/manual/en/stock/material-request.md +++ b/erpnext/docs/user/manual/en/stock/material-request.md @@ -23,6 +23,7 @@ A Material Request can be of type: * Purchase - If the request material is to be purchased. * Material Transfer - If the requested material is to be shifted from one warehouse to another. * Material Issue - If the requested material is to be Issued. +* Manufacture - If the requested material is to be Produced. > Info: Material Request is not mandatory. It is ideal if you have centralized buying so that you can collect this information from various departments. diff --git a/erpnext/manufacturing/doctype/production_order/production_order.js b/erpnext/manufacturing/doctype/production_order/production_order.js index ad8b7760c3..399d576a6b 100644 --- a/erpnext/manufacturing/doctype/production_order/production_order.js +++ b/erpnext/manufacturing/doctype/production_order/production_order.js @@ -139,16 +139,18 @@ erpnext.production_order = { }, set_default_warehouse: function(frm) { - frappe.call({ - method: "erpnext.manufacturing.doctype.production_order.production_order.get_default_warehouse", + if (!(frm.doc.wip_warehouse || frm.doc.fg_warehouse)) { + frappe.call({ + method: "erpnext.manufacturing.doctype.production_order.production_order.get_default_warehouse", - callback: function(r) { - if(!r.exe) { - frm.set_value("wip_warehouse", r.message.wip_warehouse); - frm.set_value("fg_warehouse", r.message.fg_warehouse) + callback: function(r) { + if(!r.exe) { + frm.set_value("wip_warehouse", r.message.wip_warehouse); + frm.set_value("fg_warehouse", r.message.fg_warehouse) + } } - } - }); + }); + } } } diff --git a/erpnext/manufacturing/doctype/production_order/production_order.json b/erpnext/manufacturing/doctype/production_order/production_order.json index ee39e04931..4a809cf439 100644 --- a/erpnext/manufacturing/doctype/production_order/production_order.json +++ b/erpnext/manufacturing/doctype/production_order/production_order.json @@ -24,6 +24,7 @@ "options": "icon-gift", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -48,6 +49,7 @@ "options": "PRO-", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -75,6 +77,7 @@ "options": "\nDraft\nSubmitted\nStopped\nIn Process\nCompleted\nCancelled", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 1, @@ -100,6 +103,7 @@ "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -127,6 +131,7 @@ "options": "BOM", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -151,6 +156,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -173,6 +179,7 @@ "oldfieldtype": "Column Break", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -199,6 +206,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -225,6 +233,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -252,6 +261,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -275,6 +285,7 @@ "options": "icon-building", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -298,6 +309,7 @@ "options": "Warehouse", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -319,6 +331,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -344,6 +357,7 @@ "options": "Warehouse", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -368,6 +382,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -391,6 +406,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -415,6 +431,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -438,6 +455,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -460,6 +478,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -483,6 +502,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -506,6 +526,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -531,6 +552,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -556,6 +578,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -581,6 +604,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -605,6 +629,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -629,6 +654,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -653,6 +679,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -675,6 +702,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -699,6 +727,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -722,6 +751,7 @@ "options": "icon-file-text", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -744,6 +774,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -770,6 +801,7 @@ "options": "UOM", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -777,6 +809,32 @@ "set_only_once": 0, "unique": 0 }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "company", + "fieldtype": "Link", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Company", + "length": 0, + "no_copy": 0, + "oldfieldname": "company", + "oldfieldtype": "Link", + "options": "Company", + "permlevel": 0, + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 1, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, { "allow_on_submit": 0, "bold": 0, @@ -791,6 +849,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -817,6 +876,7 @@ "options": "Project", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -841,6 +901,7 @@ "options": "Sales Order", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -852,23 +913,48 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "fieldname": "company", + "description": "Manufacture against Material Request", + "fieldname": "material_request", "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, - "label": "Company", + "label": "Material Request", "length": 0, "no_copy": 0, - "oldfieldname": "company", - "oldfieldtype": "Link", - "options": "Company", + "options": "Material Request", "permlevel": 0, + "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, - "reqd": 1, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "material_request_item", + "fieldtype": "Data", + "hidden": 1, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Material Request Item", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 1, + "report_hide": 0, + "reqd": 0, "search_index": 0, "set_only_once": 0, "unique": 0 @@ -891,6 +977,7 @@ "options": "Production Order", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -909,7 +996,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2015-11-16 06:29:52.334735", + "modified": "2016-02-23 07:29:38.091748", "modified_by": "Administrator", "module": "Manufacturing", "name": "Production Order", @@ -958,5 +1045,6 @@ ], "read_only": 0, "read_only_onload": 0, + "sort_order": "ASC", "title_field": "production_item" } \ No newline at end of file diff --git a/erpnext/manufacturing/doctype/production_order/production_order.py b/erpnext/manufacturing/doctype/production_order/production_order.py index 59d371a7c1..210597ee98 100644 --- a/erpnext/manufacturing/doctype/production_order/production_order.py +++ b/erpnext/manufacturing/doctype/production_order/production_order.py @@ -152,17 +152,19 @@ class ProductionOrder(Document): frappe.throw(_("Work-in-Progress Warehouse is required before Submit")) if not self.fg_warehouse: frappe.throw(_("For Warehouse is required before Submit")) + frappe.db.set(self,'status', 'Submitted') self.make_time_logs() + self.update_completed_qty_in_material_request() self.update_planned_qty() - def on_cancel(self): self.validate_cancel() frappe.db.set(self,'status', 'Cancelled') - self.update_planned_qty() self.delete_time_logs() + self.update_completed_qty_in_material_request() + self.update_planned_qty() def validate_cancel(self): if self.status == "Stopped": @@ -178,6 +180,14 @@ class ProductionOrder(Document): update_bin_qty(self.production_item, self.fg_warehouse, { "planned_qty": get_planned_qty(self.production_item, self.fg_warehouse) }) + + if self.material_request: + mr_obj = frappe.get_doc("Material Request", self.material_request) + mr_obj.update_requested_qty([self.material_request_item]) + + def update_completed_qty_in_material_request(self): + if self.material_request: + frappe.get_doc("Material Request", self.material_request).update_completed_qty([self.material_request_item]) def set_production_order_operations(self): """Fetch operations from BOM and set in 'Production Order'""" @@ -304,7 +314,8 @@ class ProductionOrder(Document): def set_actual_dates(self): if self.get("operations"): - actual_date = frappe.db.sql("""select min(actual_start_time) as start_date, max(actual_end_time) as end_date from `tabProduction Order Operation` + actual_date = frappe.db.sql("""select min(actual_start_time) as start_date, + max(actual_end_time) as end_date from `tabProduction Order Operation` where parent = %s and docstatus=1""", self.name, as_dict=1)[0] self.actual_start_date = actual_date.start_date self.actual_end_date = actual_date.end_date diff --git a/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json b/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json index 49d31c961c..6138435ae7 100644 --- a/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json +++ b/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json @@ -26,6 +26,7 @@ "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "150px", "read_only": 0, "report_hide": 0, @@ -53,6 +54,7 @@ "options": "BOM", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 0, "report_hide": 0, @@ -79,6 +81,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 0, "report_hide": 0, @@ -105,6 +108,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -116,53 +120,25 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "fieldname": "sales_order", - "fieldtype": "Link", + "fieldname": "column_break_6", + "fieldtype": "Column Break", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, - "in_list_view": 1, - "label": "Sales Order", + "in_list_view": 0, "length": 0, "no_copy": 0, - "oldfieldname": "source_docname", - "oldfieldtype": "Data", - "options": "Sales Order", "permlevel": 0, + "precision": "", "print_hide": 0, - "read_only": 1, + "print_hide_if_no_value": 0, + "read_only": 0, "report_hide": 0, "reqd": 0, "search_index": 0, "set_only_once": 0, "unique": 0 }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "so_pending_qty", - "fieldtype": "Float", - "hidden": 0, - "ignore_user_permissions": 0, - "in_filter": 0, - "in_list_view": 1, - "label": "SO Pending Qty", - "length": 0, - "no_copy": 0, - "oldfieldname": "prevdoc_reqd_qty", - "oldfieldtype": "Currency", - "permlevel": 0, - "print_hide": 0, - "print_width": "100px", - "read_only": 1, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0, - "width": "100px" - }, { "allow_on_submit": 0, "bold": 0, @@ -180,6 +156,7 @@ "options": "Warehouse", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -187,6 +164,84 @@ "set_only_once": 0, "unique": 0 }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "sales_order", + "fieldtype": "Link", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Sales Order", + "length": 0, + "no_copy": 0, + "oldfieldname": "source_docname", + "oldfieldtype": "Data", + "options": "Sales Order", + "permlevel": 0, + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 1, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "material_request", + "fieldtype": "Link", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Material Request", + "length": 0, + "no_copy": 0, + "options": "Material Request", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 1, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "pending_qty", + "fieldtype": "Float", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 1, + "label": "Pending Qty", + "length": 0, + "no_copy": 0, + "oldfieldname": "prevdoc_reqd_qty", + "oldfieldtype": "Currency", + "permlevel": 0, + "print_hide": 0, + "print_hide_if_no_value": 0, + "print_width": "100px", + "read_only": 1, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0, + "width": "100px" + }, { "allow_on_submit": 0, "bold": 0, @@ -205,6 +260,7 @@ "options": "UOM", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "80px", "read_only": 1, "report_hide": 0, @@ -231,6 +287,7 @@ "oldfieldtype": "Text", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "200px", "read_only": 1, "report_hide": 0, @@ -239,6 +296,30 @@ "set_only_once": 0, "unique": 0, "width": "200px" + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "material_request_item", + "fieldtype": "Data", + "hidden": 1, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "material_request_item", + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 } ], "hide_heading": 0, @@ -250,12 +331,13 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2015-11-16 06:29:52.572122", + "modified": "2016-02-11 05:08:19.492712", "modified_by": "Administrator", "module": "Manufacturing", "name": "Production Plan Item", "owner": "Administrator", "permissions": [], "read_only": 0, - "read_only_onload": 0 + "read_only_onload": 0, + "sort_order": "ASC" } \ No newline at end of file diff --git a/erpnext/manufacturing/doctype/production_plan_material_request/__init__.py b/erpnext/manufacturing/doctype/production_plan_material_request/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/manufacturing/doctype/production_plan_material_request/production_plan_material_request.json b/erpnext/manufacturing/doctype/production_plan_material_request/production_plan_material_request.json new file mode 100644 index 0000000000..739c97f943 --- /dev/null +++ b/erpnext/manufacturing/doctype/production_plan_material_request/production_plan_material_request.json @@ -0,0 +1,114 @@ +{ + "allow_copy": 0, + "allow_import": 0, + "allow_rename": 0, + "autoname": "hash", + "creation": "2016-02-10 05:09:11.983251", + "custom": 0, + "docstatus": 0, + "doctype": "DocType", + "document_type": "", + "fields": [ + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "material_request", + "fieldtype": "Link", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 1, + "label": "Material Request", + "length": 0, + "no_copy": 0, + "oldfieldname": "prevdoc_docname", + "oldfieldtype": "Data", + "options": "Material Request", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "print_width": "150px", + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0, + "width": "150px" + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "col_break1", + "fieldtype": "Column Break", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "material_request_date", + "fieldtype": "Date", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 1, + "label": "Material Request Date", + "length": 0, + "no_copy": 0, + "oldfieldname": "document_date", + "oldfieldtype": "Date", + "options": "", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "print_width": "120px", + "read_only": 1, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0, + "width": "120px" + } + ], + "hide_heading": 0, + "hide_toolbar": 0, + "idx": 0, + "in_create": 0, + "in_dialog": 0, + "is_submittable": 0, + "issingle": 0, + "istable": 1, + "max_attachments": 0, + "modified": "2016-02-23 02:06:15.169120", + "modified_by": "Administrator", + "module": "Manufacturing", + "name": "Production Plan Material Request", + "name_case": "", + "owner": "Administrator", + "permissions": [], + "read_only": 0, + "read_only_onload": 0, + "sort_field": "modified", + "sort_order": "ASC" +} \ No newline at end of file diff --git a/erpnext/manufacturing/doctype/production_plan_material_request/production_plan_material_request.py b/erpnext/manufacturing/doctype/production_plan_material_request/production_plan_material_request.py new file mode 100644 index 0000000000..44786f8388 --- /dev/null +++ b/erpnext/manufacturing/doctype/production_plan_material_request/production_plan_material_request.py @@ -0,0 +1,10 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and contributors +# For license information, please see license.txt + +from __future__ import unicode_literals +import frappe +from frappe.model.document import Document + +class ProductionPlanMaterialRequest(Document): + pass diff --git a/erpnext/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.json b/erpnext/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.json index d7fdea5a0a..5eaa274610 100644 --- a/erpnext/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.json +++ b/erpnext/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.json @@ -26,6 +26,7 @@ "options": "Sales Order", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "150px", "read_only": 0, "report_hide": 0, @@ -45,13 +46,15 @@ "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 1, - "label": "SO Date", + "label": "Salse Order Date", "length": 0, "no_copy": 0, "oldfieldname": "document_date", "oldfieldtype": "Date", + "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "120px", "read_only": 1, "report_hide": 0, @@ -76,6 +79,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -99,6 +103,7 @@ "options": "Customer", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "150px", "read_only": 1, "report_hide": 0, @@ -112,6 +117,7 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "default": "", "fieldname": "grand_total", "fieldtype": "Currency", "hidden": 0, @@ -121,9 +127,10 @@ "label": "Grand Total", "length": 0, "no_copy": 0, - "options": "Company:company:default_currency", + "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "120px", "read_only": 1, "report_hide": 0, @@ -143,12 +150,13 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2015-11-16 06:29:52.629618", + "modified": "2016-02-23 02:13:07.340323", "modified_by": "Administrator", "module": "Manufacturing", "name": "Production Plan Sales Order", "owner": "Administrator", "permissions": [], "read_only": 0, - "read_only_onload": 0 + "read_only_onload": 0, + "sort_order": "ASC" } \ No newline at end of file diff --git a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.js b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.js index 15c4245fe5..6824013d68 100644 --- a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.js +++ b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.js @@ -3,36 +3,82 @@ frappe.require("assets/erpnext/js/utils.js"); -cur_frm.cscript.onload = function(doc, cdt, cdn) { +cur_frm.cscript.onload = function(doc) { cur_frm.set_value("company", frappe.defaults.get_user_default("Company")) - cur_frm.set_value("use_multi_level_bom", 1) } cur_frm.cscript.refresh = function(doc) { cur_frm.disable_save(); } -cur_frm.cscript.sales_order = function(doc,cdt,cdn) { - var d = locals[cdt][cdn]; - if (d.sales_order) { - return get_server_fields('get_so_details', d.sales_order, 'sales_orders', doc, cdt, cdn, 1); +cur_frm.add_fetch("material_request", "transaction_date", "material_request_date"); + +cur_frm.add_fetch("sales_order", "transaction_date", "sales_order_date"); +cur_frm.add_fetch("sales_order", "customer", "customer"); +cur_frm.add_fetch("sales_order", "base_grand_total", "grand_total"); + +frappe.ui.form.on("Production Planning Tool", { + get_sales_orders: function(frm) { + frappe.call({ + doc: frm.doc, + method: "get_open_sales_orders", + callback: function(r) { + refresh_field("sales_orders"); + } + }); + }, + + get_material_request: function(frm) { + frappe.call({ + doc: frm.doc, + method: "get_pending_material_requests", + callback: function(r) { + refresh_field("material_requests"); + } + }); + }, + + get_items: function(frm) { + frappe.call({ + doc: frm.doc, + method: "get_items", + callback: function(r) { + refresh_field("items"); + } + }); + }, + + create_production_order: function(frm) { + frappe.call({ + doc: frm.doc, + method: "raise_production_orders" + }); + }, + + create_material_requests: function(frm) { + frappe.call({ + doc: frm.doc, + method: "raise_material_requests" + }); } -} +}); cur_frm.cscript.item_code = function(doc,cdt,cdn) { var d = locals[cdt][cdn]; if (d.item_code) { - return get_server_fields('get_item_details', d.item_code, 'items', doc, cdt, cdn, 1); + frappe.call({ + method: "erpnext.manufacturing.doctype.production_order.production_order.get_item_details", + args: { + "item" : d.item_code + }, + callback: function(r) { + $.extend(d, r.message); + refresh_field("items"); + } + }); } } -cur_frm.cscript.raise_purchase_request = function(doc, cdt, cdn) { - return frappe.call({ - method: "raise_purchase_request", - doc:doc - }) -} - cur_frm.cscript.download_materials_required = function(doc, cdt, cdn) { return $c_obj(doc, 'validate_data', '', function(r, rt) { if (!r['exc']) @@ -40,7 +86,6 @@ cur_frm.cscript.download_materials_required = function(doc, cdt, cdn) { }); } - cur_frm.fields_dict['sales_orders'].grid.get_field('sales_order').get_query = function(doc) { var args = { "docstatus": 1 }; if(doc.customer) { diff --git a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.json b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.json index e54b168776..9ccd55e9ae 100644 --- a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.json +++ b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.json @@ -12,17 +12,21 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "description": "Select Sales Orders from which you want to create Production Orders.", - "fieldname": "select_sales_orders", - "fieldtype": "Section Break", + "default": "Sales Order", + "fieldname": "get_items_from", + "fieldtype": "Select", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, - "label": "Select Sales Orders", + "label": "Get Items From", + "length": 0, "no_copy": 0, + "options": "\nSales Order\nMaterial Request", "permlevel": 0, + "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -34,22 +38,26 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "fieldname": "column_break0", - "fieldtype": "Column Break", + "depends_on": "get_items_from", + "description": "", + "fieldname": "filters", + "fieldtype": "Section Break", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, + "label": "Filters", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, "search_index": 0, "set_only_once": 0, - "unique": 0, - "width": "50%" + "unique": 0 }, { "allow_on_submit": 0, @@ -61,11 +69,13 @@ "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 1, - "label": "Filter based on item", + "label": "Item", + "length": 0, "no_copy": 0, "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -77,17 +87,20 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "depends_on": "eval: doc.get_items_from == \"Sales Order\"", "fieldname": "customer", "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 1, - "label": "Filter based on customer", + "label": "Customer", + "length": 0, "no_copy": 0, "options": "Customer", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -99,6 +112,33 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "depends_on": "eval: doc.get_items_from == \"Material Request\"", + "fieldname": "warehouse", + "fieldtype": "Link", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Warehouse", + "length": 0, + "no_copy": 0, + "options": "Warehouse", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "depends_on": "eval: doc.get_items_from == \"Sales Order\"", "fieldname": "company", "fieldtype": "Link", "hidden": 0, @@ -106,13 +146,15 @@ "in_filter": 0, "in_list_view": 1, "label": "Company", + "length": 0, "no_copy": 0, "options": "Company", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, - "reqd": 1, + "reqd": 0, "search_index": 0, "set_only_once": 0, "unique": 0 @@ -127,9 +169,11 @@ "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -149,9 +193,11 @@ "in_filter": 0, "in_list_view": 0, "label": "From Date", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -170,9 +216,11 @@ "in_filter": 0, "in_list_view": 0, "label": "To Date", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -184,16 +232,19 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "depends_on": "eval: doc.get_items_from == \"Sales Order\"", "fieldname": "section_break1", "fieldtype": "Section Break", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, + "length": 0, "no_copy": 0, - "options": "Simple", + "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -213,10 +264,12 @@ "in_filter": 0, "in_list_view": 0, "label": "Get Sales Orders", + "length": 0, "no_copy": 0, - "options": "get_open_sales_orders", + "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -235,10 +288,87 @@ "in_filter": 0, "in_list_view": 0, "label": "Sales Orders", + "length": 0, "no_copy": 0, "options": "Production Plan Sales Order", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "depends_on": "eval: doc.get_items_from == \"Material Request\"", + "fieldname": "section_break_16", + "fieldtype": "Section Break", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "length": 0, + "no_copy": 0, + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "description": "Pull Material Request of type Manufacture based on the above criteria", + "fieldname": "get_material_request", + "fieldtype": "Button", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Get Material Request", + "length": 0, + "no_copy": 0, + "options": "", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, + "read_only": 0, + "report_hide": 0, + "reqd": 0, + "search_index": 0, + "set_only_once": 0, + "unique": 0 + }, + { + "allow_on_submit": 0, + "bold": 0, + "collapsible": 0, + "fieldname": "material_requests", + "fieldtype": "Table", + "hidden": 0, + "ignore_user_permissions": 0, + "in_filter": 0, + "in_list_view": 0, + "label": "Material Requests", + "length": 0, + "no_copy": 0, + "options": "Production Plan Material Request", + "permlevel": 0, + "precision": "", + "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -257,9 +387,11 @@ "in_filter": 0, "in_list_view": 0, "label": "Select Items", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -271,17 +403,20 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "fieldname": "get_items_from_so", + "depends_on": "get_items_from", + "fieldname": "get_items", "fieldtype": "Button", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, - "label": "Get Items From Sales Orders", + "label": "Get Items", + "length": 0, "no_copy": 0, - "options": "get_items_from_so", + "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -294,6 +429,7 @@ "bold": 0, "collapsible": 0, "default": "1", + "depends_on": "get_items_from", "description": "If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.", "fieldname": "use_multi_level_bom", "fieldtype": "Check", @@ -302,9 +438,11 @@ "in_filter": 0, "in_list_view": 0, "label": "Use Multi-Level BOM", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -323,10 +461,12 @@ "in_filter": 0, "in_list_view": 0, "label": "Items", + "length": 0, "no_copy": 0, "options": "Production Plan Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -346,9 +486,11 @@ "in_filter": 0, "in_list_view": 0, "label": "Production Orders", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -361,17 +503,19 @@ "bold": 0, "collapsible": 0, "description": "Separate production order will be created for each finished good item.", - "fieldname": "raise_production_order", + "fieldname": "create_production_order", "fieldtype": "Button", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, "label": "Create Production Orders", + "length": 0, "no_copy": 0, - "options": "raise_production_order", + "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -383,6 +527,7 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "depends_on": "", "fieldname": "sb5", "fieldtype": "Section Break", "hidden": 0, @@ -390,9 +535,11 @@ "in_filter": 0, "in_list_view": 0, "label": "Material Requirement", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -411,10 +558,12 @@ "in_filter": 0, "in_list_view": 0, "label": "Material Request For Warehouse", + "length": 0, "no_copy": 0, "options": "Warehouse", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -427,17 +576,19 @@ "bold": 0, "collapsible": 0, "description": "Items to be requested which are \"Out of Stock\" considering all warehouses based on projected qty and minimum order qty", - "fieldname": "raise_purchase_request", + "fieldname": "create_material_requests", "fieldtype": "Button", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, "label": "Create Material Requests", + "length": 0, "no_copy": 0, "options": "", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -457,9 +608,11 @@ "in_filter": 0, "in_list_view": 0, "label": "Download Materials Required", + "length": 0, "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -477,7 +630,8 @@ "is_submittable": 0, "issingle": 1, "istable": 0, - "modified": "2015-06-05 11:44:31.629114", + "max_attachments": 0, + "modified": "2016-02-23 02:37:51.260645", "modified_by": "Administrator", "module": "Manufacturing", "name": "Production Planning Tool", @@ -505,5 +659,6 @@ } ], "read_only": 1, - "read_only_onload": 0 + "read_only_onload": 0, + "sort_order": "ASC" } \ No newline at end of file diff --git a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py index 46396ba103..ea7e660dd5 100644 --- a/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py +++ b/erpnext/manufacturing/doctype/production_planning_tool/production_planning_tool.py @@ -16,25 +16,8 @@ class ProductionPlanningTool(Document): super(ProductionPlanningTool, self).__init__(arg1, arg2) self.item_dict = {} - def get_so_details(self, so): - """Pull other details from so""" - so = frappe.db.sql("""select transaction_date, customer, base_grand_total - from `tabSales Order` where name = %s""", so, as_dict = 1) - ret = { - 'sales_order_date': so and so[0]['transaction_date'] or '', - 'customer' : so[0]['customer'] or '', - 'grand_total': so[0]['base_grand_total'] - } - return ret - - def get_item_details(self, item_code): - return get_item_details(item_code) - - def clear_so_table(self): - self.set('sales_orders', []) - - def clear_item_table(self): - self.set('items', []) + def clear_table(self, table_name): + self.set(table_name, []) def validate_company(self): if not self.company: @@ -78,9 +61,9 @@ class ProductionPlanningTool(Document): def add_so_in_table(self, open_so): """ Add sales orders in the table""" - self.clear_so_table() + self.clear_table("sales_orders") - so_list = [d.sales_order for d in self.get('sales_orders')] + so_list = [] for r in open_so: if cstr(r['name']) not in so_list: pp_so = self.append('sales_orders', {}) @@ -88,19 +71,59 @@ class ProductionPlanningTool(Document): pp_so.sales_order_date = cstr(r['transaction_date']) pp_so.customer = cstr(r['customer']) pp_so.grand_total = flt(r['base_grand_total']) + + def get_pending_material_requests(self): + """ Pull Material Requests that are pending based on criteria selected""" + mr_filter = item_filter = "" + if self.from_date: + mr_filter += " and mr.transaction_date >= %(from_date)s" + if self.to_date: + mr_filter += " and mr.transaction_date <= %(to_date)s" + if self.warehouse: + mr_filter += " and mr_item.warehouse = %(warehouse)s" + + if self.fg_item: + item_filter += " and item.name = %(item)s" - def get_items_from_so(self): - """ Pull items from Sales Order, only proction item - and subcontracted item will be pulled from Packing item - and add items in the table - """ - items = self.get_items() - self.add_items(items) + pending_mr = frappe.db.sql(""" + select distinct mr.name, mr.transaction_date + from `tabMaterial Request` mr, `tabMaterial Request Item` mr_item + where mr_item.parent = mr.name + and mr.material_request_type = "Manufacture" + and mr.docstatus = 1 + and mr_item.qty > mr_item.ordered_qty {0} + and (exists (select name from `tabItem` item where item.name=mr_item.item_code + and (item.is_pro_applicable = 1 or item.is_sub_contracted_item = 1 {1}))) + """.format(mr_filter, item_filter), { + "from_date": self.from_date, + "to_date": self.to_date, + "warehouse": self.warehouse, + "item": self.fg_item + }, as_dict=1) + + self.add_mr_in_table(pending_mr) + + def add_mr_in_table(self, pending_mr): + """ Add Material Requests in the table""" + self.clear_table("material_requests") + + mr_list = [] + for r in pending_mr: + if cstr(r['name']) not in mr_list: + mr = self.append('material_requests', {}) + mr.material_request = r['name'] + mr.material_request_date = cstr(r['transaction_date']) def get_items(self): - so_list = filter(None, [d.sales_order for d in self.get('sales_orders')]) + if self.get_items_from == "Sales Order": + self.get_so_items() + elif self.get_items_from == "Material Request": + self.get_mr_items() + + def get_so_items(self): + so_list = [d.sales_order for d in self.get('sales_orders') if d.sales_order] if not so_list: - msgprint(_("Please enter sales order in the above table")) + msgprint(_("Please enter Sales Orders in the above table")) return [] item_condition = "" @@ -131,101 +154,155 @@ class ProductionPlanningTool(Document): or item.is_sub_contracted_item = 1)) %s""" % \ (", ".join(["%s"] * len(so_list)), item_condition), tuple(so_list), as_dict=1) - return items + packed_items + self.add_items(items + packed_items) + + def get_mr_items(self): + mr_list = [d.material_request for d in self.get('material_requests') if d.material_request] + if not mr_list: + msgprint(_("Please enter Material Requests in the above table")) + return [] + item_condition = "" + if self.fg_item: + item_condition = ' and mr_item.item_code = "' + frappe.db.escape(self.fg_item, percent=False) + '"' + + items = frappe.db.sql("""select distinct parent, name, item_code, warehouse, + (qty - ordered_qty) as pending_qty + from `tabMaterial Request Item` mr_item + where parent in (%s) and docstatus = 1 and qty > ordered_qty + and exists (select * from `tabItem` item where item.name=mr_item.item_code + and (item.is_pro_applicable = 1 + or item.is_sub_contracted_item = 1)) %s""" % \ + (", ".join(["%s"] * len(mr_list)), item_condition), tuple(mr_list), as_dict=1) + + self.add_items(items) + def add_items(self, items): - self.clear_item_table() - + self.clear_table("items") for p in items: item_details = get_item_details(p['item_code']) pi = self.append('items', {}) - pi.sales_order = p['parent'] pi.warehouse = p['warehouse'] pi.item_code = p['item_code'] pi.description = item_details and item_details.description or '' pi.stock_uom = item_details and item_details.stock_uom or '' pi.bom_no = item_details and item_details.bom_no or '' - pi.so_pending_qty = flt(p['pending_qty']) pi.planned_qty = flt(p['pending_qty']) - + pi.pending_qty = flt(p['pending_qty']) + + if self.get_items_from == "Sales Order": + pi.sales_order = p['parent'] + elif self.get_items_from == "Material Request": + pi.material_request = p['parent'] + pi.material_request_item = p['name'] + def validate_data(self): self.validate_company() for d in self.get('items'): - validate_bom_no(d.item_code, d.bom_no) + if not d.bom_no: + frappe.throw(_("Please select BOM for Item in Row {0}".format(d.idx))) + else: + validate_bom_no(d.item_code, d.bom_no) + if not flt(d.planned_qty): frappe.throw(_("Please enter Planned Qty for Item {0} at row {1}").format(d.item_code, d.idx)) - def raise_production_order(self): + def raise_production_orders(self): """It will raise production order (Draft) for all distinct FG items""" self.validate_data() from erpnext.utilities.transaction_base import validate_uom_is_integer validate_uom_is_integer(self, "stock_uom", "planned_qty") - items = self.get_distinct_items_and_boms()[1] - pro = self.create_production_order(items) - if pro: - pro = ["""%s""" % \ - (p, p) for p in pro] - msgprint(_("{0} created").format(comma_and(pro))) + items = self.get_production_items() + + pro_list = [] + frappe.flags.mute_messages = True + + for key in items: + production_order = self.create_production_order(items[key]) + if production_order: + pro_list.append(production_order) + + frappe.flags.mute_messages = False + + if pro_list: + pro_list = ["""%s""" % \ + (p, p) for p in pro_list] + msgprint(_("{0} created").format(comma_and(pro_list))) else : msgprint(_("No Production Orders created")) - def get_distinct_items_and_boms(self): - """ Club similar BOM and item for processing + def get_production_items(self): + item_dict = {} + for d in self.get("items"): + item_details= { + "production_item" : d.item_code, + "sales_order" : d.sales_order, + "material_request" : d.material_request, + "material_request_item" : d.material_request_item, + "bom_no" : d.bom_no, + "description" : d.description, + "stock_uom" : d.stock_uom, + "company" : self.company, + "wip_warehouse" : "", + "fg_warehouse" : d.warehouse, + "status" : "Draft", + } + + """ Club similar BOM and item for processing in case of Sales Orders """ + if self.get_items_from == "Material Request": + item_details.update({ + "qty": d.planned_qty + }) + item_dict[(d.item_code, d.material_request_item, d.warehouse)] = item_details + + else: + item_details.update({ + "qty":flt(item_dict.get((d.item_code, d.sales_order, d.warehouse),{}) + .get("qty")) + flt(d.planned_qty) + }) + item_dict[(d.item_code, d.sales_order, d.warehouse)] = item_details + + return item_dict + + def create_production_order(self, item_dict): + """Create production order. Called from Production Planning Tool""" + from erpnext.manufacturing.doctype.production_order.production_order import OverProductionError, get_default_warehouse + warehouse = get_default_warehouse() + pro = frappe.new_doc("Production Order") + pro.update(item_dict) + pro.set_production_order_operations() + if warehouse: + pro.wip_warehouse = warehouse.get('wip_warehouse') + if not pro.fg_warehouse: + pro.fg_warehouse = warehouse.get('fg_warehouse') + + try: + pro.insert() + return pro.name + except OverProductionError: + pass + + def get_so_wise_planned_qty(self): + """ bom_dict { bom_no: ['sales_order', 'qty'] } """ - item_dict, bom_dict = {}, {} + bom_dict = {} for d in self.get("items"): - if d.bom_no: + if self.get_items_from == "Material Request": + bom_dict.setdefault(d.bom_no, []).append([d.material_request_item, flt(d.planned_qty)]) + else: bom_dict.setdefault(d.bom_no, []).append([d.sales_order, flt(d.planned_qty)]) - if frappe.db.get_value("Item", d.item_code, "is_pro_applicable"): - item_dict[(d.item_code, d.sales_order, d.warehouse)] = { - "production_item" : d.item_code, - "sales_order" : d.sales_order, - "qty" : flt(item_dict.get((d.item_code, d.sales_order, d.warehouse), - {}).get("qty")) + flt(d.planned_qty), - "bom_no" : d.bom_no, - "description" : d.description, - "stock_uom" : d.stock_uom, - "company" : self.company, - "wip_warehouse" : "", - "fg_warehouse" : d.warehouse, - "status" : "Draft", - } - return bom_dict, item_dict - - def create_production_order(self, items): - """Create production order. Called from Production Planning Tool""" - from erpnext.manufacturing.doctype.production_order.production_order import OverProductionError, get_default_warehouse - warehouse = get_default_warehouse() - pro_list = [] - for key in items: - pro = frappe.new_doc("Production Order") - pro.update(items[key]) - pro.set_production_order_operations() - if warehouse: - pro.wip_warehouse = warehouse.get('wip_warehouse') - if not pro.fg_warehouse: - pro.fg_warehouse = warehouse.get('fg_warehouse') - frappe.flags.mute_messages = True - - try: - pro.insert() - pro_list.append(pro.name) - except OverProductionError: - pass - - frappe.flags.mute_messages = False - return pro_list - + return bom_dict + def download_raw_materials(self): """ Create csv data for required raw material to produce finished goods""" self.validate_data() - bom_dict = self.get_distinct_items_and_boms()[0] + bom_dict = self.get_so_wise_planned_qty() self.get_raw_materials(bom_dict) return self.get_csv() @@ -265,7 +342,6 @@ class ProductionPlanningTool(Document): and item.is_stock_item = 1 group by item_code""", bom, as_dict=1): bom_wise_item_details.setdefault(d.item_code, d) - for item, item_details in bom_wise_item_details.items(): for so_qty in so_wise_qty: item_list.append([item, flt(item_details.qty) * so_qty[1], item_details.description, @@ -295,7 +371,7 @@ class ProductionPlanningTool(Document): return item_list - def raise_purchase_request(self): + def raise_material_requests(self): """ Raise Material Request if projected qty is less than qty required Requested qty should be shortage qty considering minimum order qty @@ -304,11 +380,11 @@ class ProductionPlanningTool(Document): if not self.purchase_request_for_warehouse: frappe.throw(_("Please enter Warehouse for which Material Request will be raised")) - bom_dict = self.get_distinct_items_and_boms()[0] + bom_dict = self.get_so_wise_planned_qty() self.get_raw_materials(bom_dict) if self.item_dict: - self.insert_purchase_request() + self.create_material_request() def get_requested_items(self): item_projected_qty = self.get_projected_qty() @@ -329,6 +405,8 @@ class ProductionPlanningTool(Document): for item_details in so_item_qty: if requested_qty: sales_order = item_details[4] or "No Sales Order" + if self.get_items_from == "Material Request": + sales_order = "No Sales Order" if requested_qty <= item_details[0]: adjusted_qty = requested_qty else: @@ -355,15 +433,15 @@ class ProductionPlanningTool(Document): return dict(item_projected_qty) - def insert_purchase_request(self): + def create_material_request(self): items_to_be_requested = self.get_requested_items() - purchase_request_list = [] + material_request_list = [] if items_to_be_requested: for item in items_to_be_requested: item_wrapper = frappe.get_doc("Item", item) - pr_doc = frappe.new_doc("Material Request") - pr_doc.update({ + material_request = frappe.new_doc("Material Request") + material_request.update({ "transaction_date": nowdate(), "status": "Draft", "company": self.company, @@ -371,7 +449,7 @@ class ProductionPlanningTool(Document): "material_request_type": "Purchase" }) for sales_order, requested_qty in items_to_be_requested[item].items(): - pr_doc.append("items", { + material_request.append("items", { "doctype": "Material Request Item", "__islocal": 1, "item_code": item, @@ -383,16 +461,16 @@ class ProductionPlanningTool(Document): "qty": requested_qty, "schedule_date": add_days(nowdate(), cint(item_wrapper.lead_time_days)), "warehouse": self.purchase_request_for_warehouse, - "sales_order_no": sales_order if sales_order!="No Sales Order" else None + "sales_order": sales_order if sales_order!="No Sales Order" else None }) - pr_doc.flags.ignore_permissions = 1 - pr_doc.submit() - purchase_request_list.append(pr_doc.name) + material_request.flags.ignore_permissions = 1 + material_request.submit() + material_request_list.append(material_request.name) - if purchase_request_list: - pur_req = ["""%s""" % \ - (p, p) for p in purchase_request_list] - msgprint(_("Material Requests {0} created").format(comma_and(pur_req))) + if material_request_list: + message = ["""%s""" % \ + (p, p) for p in material_request_list] + msgprint(_("Material Requests {0} created").format(comma_and(message))) else: msgprint(_("Nothing to request")) diff --git a/erpnext/patches.txt b/erpnext/patches.txt index 2239f0a48d..e5ec4548d0 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -248,3 +248,4 @@ execute:frappe.db.sql("update `tabPricing Rule` set title=name where title='' or erpnext.patches.v6_20.set_party_account_currency_in_orders erpnext.patches.v6_19.comment_feed_communication erpnext.patches.v6_21.fix_reorder_level +erpnext.patches.v6_21.rename_material_request_fields diff --git a/erpnext/patches/v6_21/__init__.py b/erpnext/patches/v6_21/__init__.py index e69de29bb2..baffc48825 100644 --- a/erpnext/patches/v6_21/__init__.py +++ b/erpnext/patches/v6_21/__init__.py @@ -0,0 +1 @@ +from __future__ import unicode_literals diff --git a/erpnext/patches/v6_21/rename_material_request_fields.py b/erpnext/patches/v6_21/rename_material_request_fields.py new file mode 100644 index 0000000000..07be27a5d6 --- /dev/null +++ b/erpnext/patches/v6_21/rename_material_request_fields.py @@ -0,0 +1,14 @@ +# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors +# License: GNU General Public License v3. See license.txt + +from __future__ import unicode_literals +import frappe +from frappe.model.utils.rename_field import rename_field + +def execute(): + frappe.reload_doc('stock', 'doctype', 'material_request_item') + rename_field("Material Request Item", "sales_order_no", "sales_order") + + frappe.reload_doc('support', 'doctype', 'maintenance_schedule_item') + rename_field("Maintenance Schedule Item", "prevdoc_docname", "sales_order") + \ No newline at end of file diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index d735bea01b..590f749201 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -193,7 +193,7 @@ class SalesOrder(SellingController): #check maintenance schedule submit_ms = frappe.db.sql_list("""select t1.name from `tabMaintenance Schedule` t1, `tabMaintenance Schedule Item` t2 - where t2.parent=t1.name and t2.prevdoc_docname = %s and t1.docstatus = 1""", self.name) + where t2.parent=t1.name and t2.sales_order = %s and t1.docstatus = 1""", self.name) if submit_ms: frappe.throw(_("Maintenance Schedule {0} must be cancelled before cancelling this Sales Order").format(comma_and(submit_ms))) @@ -353,7 +353,7 @@ def make_material_request(source_name, target_doc=None): item_table: { "doctype": "Material Request Item", "field_map": { - "parent": "sales_order_no", + "parent": "sales_order", "stock_uom": "uom" } } @@ -464,15 +464,12 @@ def make_sales_invoice(source_name, target_doc=None, ignore_permissions=False): def make_maintenance_schedule(source_name, target_doc=None): maint_schedule = frappe.db.sql("""select t1.name from `tabMaintenance Schedule` t1, `tabMaintenance Schedule Item` t2 - where t2.parent=t1.name and t2.prevdoc_docname=%s and t1.docstatus=1""", source_name) + where t2.parent=t1.name and t2.sales_order=%s and t1.docstatus=1""", source_name) if not maint_schedule: doclist = get_mapped_doc("Sales Order", source_name, { "Sales Order": { "doctype": "Maintenance Schedule", - "field_map": { - "name": "sales_order_no" - }, "validation": { "docstatus": ["=", 1] } @@ -480,7 +477,7 @@ def make_maintenance_schedule(source_name, target_doc=None): "Sales Order Item": { "doctype": "Maintenance Schedule Item", "field_map": { - "parent": "prevdoc_docname" + "parent": "sales_order" }, "add_if_empty": True } @@ -499,9 +496,6 @@ def make_maintenance_visit(source_name, target_doc=None): doclist = get_mapped_doc("Sales Order", source_name, { "Sales Order": { "doctype": "Maintenance Visit", - "field_map": { - "name": "sales_order_no" - }, "validation": { "docstatus": ["=", 1] } diff --git a/erpnext/selling/report/pending_so_items_for_purchase_request/pending_so_items_for_purchase_request.json b/erpnext/selling/report/pending_so_items_for_purchase_request/pending_so_items_for_purchase_request.json index 6d431faa21..6b19b6394b 100644 --- a/erpnext/selling/report/pending_so_items_for_purchase_request/pending_so_items_for_purchase_request.json +++ b/erpnext/selling/report/pending_so_items_for_purchase_request/pending_so_items_for_purchase_request.json @@ -12,7 +12,7 @@ "module": "Selling", "name": "Pending SO Items For Purchase Request", "owner": "Administrator", - "query": "select so_item.item_code as \"Item Code:Link/Item:120\",\n so_item.item_name as \"Item Name::120\",\n so_item.description as \"Description::120\",\n so.`name` as \"S.O. No.:Link/Sales Order:120\",\n so.`transaction_date` as \"Date:Date:120\",\n mr.name as \"Material Request:Link/Material Request:120\",\n so.customer as \"Customer:Link/Customer:120\",\n so.territory as \"Terretory:Link/Territory:120\",\n sum(so_item.qty) as \"SO Qty:Float:100 \",\n sum(mr_item.qty) as \"Requested Qty:Float:100\",\n sum(so_item.qty) - sum(mr_item.qty) as \"Pending Qty:Float:100 \", \n so.company as \"Company:Link/Company:\"\nfrom\n `tabSales Order` so, `tabSales Order Item` so_item, \n `tabMaterial Request` mr, `tabMaterial Request Item` mr_item\nwhere \n so_item.`parent` = so.`name` \n and mr_item.parent = mr.name\n and mr_item.sales_order_no = so.name\n and mr_item.item_code = so_item.item_code\n and so.docstatus = 1 and so.status != \"Stopped\" \n and mr.docstatus = 1 and mr.status != \"Stopped\"\ngroup by so.name, so_item.item_code\nhaving sum(so_item.qty) > sum(mr_item.qty)\norder by so.name desc, so_item.item_code asc", + "query": "select so_item.item_code as \"Item Code:Link/Item:120\",\n so_item.item_name as \"Item Name::120\",\n so_item.description as \"Description::120\",\n so.`name` as \"S.O. No.:Link/Sales Order:120\",\n so.`transaction_date` as \"Date:Date:120\",\n mr.name as \"Material Request:Link/Material Request:120\",\n so.customer as \"Customer:Link/Customer:120\",\n so.territory as \"Terretory:Link/Territory:120\",\n sum(so_item.qty) as \"SO Qty:Float:100 \",\n sum(mr_item.qty) as \"Requested Qty:Float:100\",\n sum(so_item.qty) - sum(mr_item.qty) as \"Pending Qty:Float:100 \", \n so.company as \"Company:Link/Company:\"\nfrom\n `tabSales Order` so, `tabSales Order Item` so_item, \n `tabMaterial Request` mr, `tabMaterial Request Item` mr_item\nwhere \n so_item.`parent` = so.`name` \n and mr_item.parent = mr.name\n and mr_item.sales_order = so.name\n and mr_item.item_code = so_item.item_code\n and so.docstatus = 1 and so.status != \"Stopped\" \n and mr.docstatus = 1 and mr.status != \"Stopped\"\ngroup by so.name, so_item.item_code\nhaving sum(so_item.qty) > sum(mr_item.qty)\norder by so.name desc, so_item.item_code asc", "ref_doctype": "Sales Order", "report_name": "Pending SO Items For Purchase Request", "report_type": "Query Report" diff --git a/erpnext/stock/doctype/bin/bin.json b/erpnext/stock/doctype/bin/bin.json index 37fe0a4777..9eb3995cc9 100644 --- a/erpnext/stock/doctype/bin/bin.json +++ b/erpnext/stock/doctype/bin/bin.json @@ -26,6 +26,7 @@ "options": "Warehouse", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -51,6 +52,7 @@ "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -76,6 +78,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -101,6 +104,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -126,6 +130,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -144,13 +149,14 @@ "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, - "label": "Quantity Requested for Purchase", + "label": "Requested Quantity", "length": 0, "no_copy": 0, "oldfieldname": "indented_qty", "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -175,6 +181,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -199,6 +206,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -223,6 +231,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 1, "reqd": 0, @@ -248,6 +257,7 @@ "options": "UOM", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -272,6 +282,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 1, "reqd": 0, @@ -296,6 +307,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -320,6 +332,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -337,7 +350,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2015-11-16 06:29:42.363502", + "modified": "2016-02-10 02:39:45.738623", "modified_by": "Administrator", "module": "Stock", "name": "Bin", @@ -406,5 +419,6 @@ ], "read_only": 0, "read_only_onload": 0, - "search_fields": "item_code,warehouse" + "search_fields": "item_code,warehouse", + "sort_order": "ASC" } \ No newline at end of file diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.js b/erpnext/stock/doctype/delivery_note/delivery_note.js index 679d9105f7..7407975a60 100644 --- a/erpnext/stock/doctype/delivery_note/delivery_note.js +++ b/erpnext/stock/doctype/delivery_note/delivery_note.js @@ -193,48 +193,6 @@ cur_frm.cscript.print_without_amount = function(doc, cdt, cdn) { erpnext.stock.delivery_note.set_print_hide(doc, cdt, cdn); } - -//****************** For print sales order no and date************************* -cur_frm.pformat.sales_order_no= function(doc, cdt, cdn){ - //function to make row of table - - var make_row = function(title,val1, val2, bold){ - var bstart = ''; var bend = ''; - - return ''+(bold?bstart:'')+title+(bold?bend:'')+'' - +''+val1+(val2?' ('+dateutil.str_to_user(val2)+')':'')+'' - +'' - } - - out =''; - - var cl = doc.items || []; - - // outer table - var out='
'; - - // main table - out +=''; - - // add rows - if(cl.length){ - prevdoc_list = new Array(); - for(var i=0;i {'SO/00001': {'Item/001': 120, 'Item/002': 24}} for d in self.get('items'): - if d.sales_order_no: - if not so_items.has_key(d.sales_order_no): - so_items[d.sales_order_no] = {d.item_code: flt(d.qty)} + if d.sales_order: + if not so_items.has_key(d.sales_order): + so_items[d.sales_order] = {d.item_code: flt(d.qty)} else: - if not so_items[d.sales_order_no].has_key(d.item_code): - so_items[d.sales_order_no][d.item_code] = flt(d.qty) + if not so_items[d.sales_order].has_key(d.item_code): + so_items[d.sales_order][d.item_code] = flt(d.qty) else: - so_items[d.sales_order_no][d.item_code] += flt(d.qty) + so_items[d.sales_order][d.item_code] += flt(d.qty) for so_no in so_items.keys(): for item in so_items[so_no].keys(): already_indented = frappe.db.sql("""select sum(qty) from `tabMaterial Request Item` - where item_code = %s and sales_order_no = %s and + where item_code = %s and sales_order = %s and docstatus = 1 and parent != %s""", (item, so_no, self.name)) already_indented = already_indented and flt(already_indented[0][0]) or 0 @@ -70,9 +71,7 @@ class MaterialRequest(BuyingController): from erpnext.controllers.status_updater import validate_status validate_status(self.status, ["Draft", "Submitted", "Stopped", "Cancelled"]) - - self.validate_value("material_request_type", "in", ["Purchase", "Material Transfer", "Material Issue"]) - + pc_obj = frappe.get_doc('Purchase Common') pc_obj.validate_for_items(self) @@ -108,35 +107,41 @@ class MaterialRequest(BuyingController): frappe.db.set(self,'status','Cancelled') - def update_completed_qty(self, mr_items=None): + def update_completed_qty(self, mr_items=None, update_modified=True): if self.material_request_type == "Purchase": return if not mr_items: mr_items = [d.name for d in self.get("items")] - per_ordered = 0.0 for d in self.get("items"): if d.name in mr_items: - d.ordered_qty = flt(frappe.db.sql("""select sum(transfer_qty) - from `tabStock Entry Detail` where material_request = %s - and material_request_item = %s and docstatus = 1""", - (self.name, d.name))[0][0]) + if self.material_request_type in ("Material Issue", "Material Transfer"): + d.ordered_qty = flt(frappe.db.sql("""select sum(transfer_qty) + from `tabStock Entry Detail` where material_request = %s + and material_request_item = %s and docstatus = 1""", + (self.name, d.name))[0][0]) - if d.ordered_qty and d.ordered_qty > d.qty: - frappe.throw(_("The total Issue / Transfer quantity {0} in Material Request {1} cannot be greater than requested quantity {2} for Item {3}").format(d.ordered_qty, d.parent, d.qty, d.item_code)) + if d.ordered_qty and d.ordered_qty > d.qty: + frappe.throw(_("The total Issue / Transfer quantity {0} in Material Request {1} \ + cannot be greater than requested quantity {2} for Item {3}").format(d.ordered_qty, d.parent, d.qty, d.item_code)) + + elif self.material_request_type == "Manufacture": + d.ordered_qty = flt(frappe.db.sql("""select sum(qty) + from `tabProduction Order` where material_request = %s + and material_request_item = %s and docstatus = 1""", + (self.name, d.name))[0][0]) frappe.db.set_value(d.doctype, d.name, "ordered_qty", d.ordered_qty) - - # note: if qty is 0, its row is still counted in len(self.get("items")) - # hence adding 1 to per_ordered - if (d.ordered_qty > d.qty) or not d.qty: - per_ordered += 1.0 - elif d.qty > 0: - per_ordered += flt(d.ordered_qty / flt(d.qty)) - - self.per_ordered = flt((per_ordered / flt(len(self.get("items")))) * 100.0, 2) - frappe.db.set_value(self.doctype, self.name, "per_ordered", self.per_ordered) + + self._update_percent_field({ + "target_dt": "Material Request Item", + "target_parent_dt": self.doctype, + "target_parent_field": "per_ordered", + "target_ref_field": "qty", + "target_field": "ordered_qty", + "name": self.name, + }, update_modified) def update_requested_qty(self, mr_item_rows=None): """update requested qty (before ordered_qty is updated)""" @@ -329,3 +334,36 @@ def make_stock_entry(source_name, target_doc=None): }, target_doc, set_missing_values) return doclist + +@frappe.whitelist() +def raise_production_orders(material_request): + mr= frappe.get_doc("Material Request", material_request) + errors =[] + production_orders = [] + for d in mr.items: + if (d.qty - d.ordered_qty) >0 : + if frappe.db.get_value("Item", d.item_code, "is_pro_applicable"): + prod_order = frappe.new_doc("Production Order") + prod_order.production_item = d.item_code + prod_order.qty = d.qty - d.ordered_qty + prod_order.fg_warehouse = d.warehouse + prod_order.description = d.description + prod_order.stock_uom = d.uom + prod_order.expected_delivery_date = d.schedule_date + prod_order.sales_order = d.sales_order + prod_order.bom_no = get_item_details(d.item_code).bom_no + prod_order.material_request = mr.name + prod_order.material_request_item = d.name + prod_order.planned_start_date = mr.transaction_date + prod_order.company = mr.company + prod_order.save() + production_orders.append(prod_order.name) + else: + errors.append(d.item_code + " in Row " + cstr(d.idx)) + if production_orders: + message = ["""%s""" % \ + (p, p) for p in production_orders] + msgprint(_("The following Production Orders were created : \n {0} ").format(new_line_sep(message))) + if errors: + msgprint(_("Productions Orders cannot be raised for : \n {0}").format(new_line_sep(errors))) + return production_orders \ No newline at end of file diff --git a/erpnext/stock/doctype/material_request/test_material_request.py b/erpnext/stock/doctype/material_request/test_material_request.py index 37d985edb0..ebdfa5a459 100644 --- a/erpnext/stock/doctype/material_request/test_material_request.py +++ b/erpnext/stock/doctype/material_request/test_material_request.py @@ -7,6 +7,7 @@ from __future__ import unicode_literals import frappe, unittest from frappe.utils import flt +from erpnext.stock.doctype.material_request.material_request import raise_production_orders class TestMaterialRequest(unittest.TestCase): def setUp(self): @@ -436,6 +437,36 @@ class TestMaterialRequest(unittest.TestCase): #testing bin requested qty after issuing stock against material request self.assertEquals(_get_requested_qty(), existing_requested_qty) + + def test_material_request_type_manufacture(self): + mr = frappe.copy_doc(test_records[1]).insert() + mr = frappe.get_doc("Material Request", mr.name) + mr.submit() + completed_qty = mr.items[0].ordered_qty + requested_qty = frappe.db.sql("""select indented_qty from `tabBin` where \ + item_code= %s and warehouse= %s """, (mr.items[0].item_code, mr.items[0].warehouse))[0][0] + + prod_order = raise_production_orders(mr.name) + po = frappe.get_doc("Production Order", prod_order[0]) + po.wip_warehouse = "_Test Warehouse 1 - _TC" + po.submit() + + mr = frappe.get_doc("Material Request", mr.name) + self.assertEquals(completed_qty + po.qty, mr.items[0].ordered_qty) + + new_requested_qty = frappe.db.sql("""select indented_qty from `tabBin` where \ + item_code= %s and warehouse= %s """, (mr.items[0].item_code, mr.items[0].warehouse))[0][0] + + self.assertEquals(requested_qty - po.qty, new_requested_qty) + + po.cancel() + + mr = frappe.get_doc("Material Request", mr.name) + self.assertEquals(completed_qty, mr.items[0].ordered_qty) + + new_requested_qty = frappe.db.sql("""select indented_qty from `tabBin` where \ + item_code= %s and warehouse= %s """, (mr.items[0].item_code, mr.items[0].warehouse))[0][0] + self.assertEquals(requested_qty, new_requested_qty) test_dependencies = ["Currency Exchange"] test_records = frappe.get_test_records('Material Request') diff --git a/erpnext/stock/doctype/material_request/test_records.json b/erpnext/stock/doctype/material_request/test_records.json index 152d1443a3..09d1912ed7 100644 --- a/erpnext/stock/doctype/material_request/test_records.json +++ b/erpnext/stock/doctype/material_request/test_records.json @@ -30,5 +30,26 @@ "material_request_type": "Purchase", "naming_series": "_T-Material Request-", "transaction_date": "2013-02-18" + }, + { + "company": "_Test Company", + "doctype": "Material Request", + "fiscal_year": "_Test Fiscal Year 2013", + "items": [ + { + "description": "_Test FG Item", + "doctype": "Material Request Item", + "item_code": "_Test FG Item", + "item_name": "_Test FG Item", + "parentfield": "items", + "qty": 5, + "schedule_date": "2013-02-18", + "uom": "_Test UOM 1", + "warehouse": "_Test Warehouse - _TC" + } + ], + "material_request_type": "Manufacture", + "naming_series": "_T-Material Request-", + "transaction_date": "2013-02-18" } ] \ No newline at end of file diff --git a/erpnext/stock/doctype/material_request_item/material_request_item.json b/erpnext/stock/doctype/material_request_item/material_request_item.json index 3e26065637..eecb42a952 100644 --- a/erpnext/stock/doctype/material_request_item/material_request_item.json +++ b/erpnext/stock/doctype/material_request_item/material_request_item.json @@ -26,6 +26,7 @@ "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 0, "report_hide": 0, @@ -49,6 +50,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -73,6 +75,7 @@ "oldfieldtype": "Data", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 0, "report_hide": 0, @@ -98,6 +101,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -122,6 +126,7 @@ "oldfieldtype": "Text", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "250px", "read_only": 0, "report_hide": 0, @@ -146,6 +151,7 @@ "permlevel": 0, "precision": "", "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -158,8 +164,8 @@ "bold": 0, "collapsible": 0, "fieldname": "image", - "fieldtype": "Attach", - "hidden": 1, + "fieldtype": "Attach Image", + "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, @@ -169,31 +175,8 @@ "permlevel": 0, "precision": "", "print_hide": 1, - "read_only": 0, - "report_hide": 0, - "reqd": 0, - "search_index": 0, - "set_only_once": 0, - "unique": 0 - }, - { - "allow_on_submit": 0, - "bold": 0, - "collapsible": 0, - "fieldname": "image_view", - "fieldtype": "Image", - "hidden": 0, - "ignore_user_permissions": 0, - "in_filter": 0, - "in_list_view": 0, - "label": "Image View", - "length": 0, - "no_copy": 0, - "options": "image", - "permlevel": 0, - "precision": "", - "print_hide": 0, - "read_only": 0, + "print_hide_if_no_value": 0, + "read_only": 1, "report_hide": 0, "reqd": 0, "search_index": 0, @@ -215,6 +198,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -239,6 +223,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "80px", "read_only": 0, "report_hide": 0, @@ -266,6 +251,7 @@ "options": "UOM", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "70px", "read_only": 1, "report_hide": 0, @@ -293,6 +279,7 @@ "options": "Warehouse", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 0, "report_hide": 0, @@ -316,6 +303,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -340,6 +328,7 @@ "oldfieldtype": "Date", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 0, "report_hide": 0, @@ -364,6 +353,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -390,6 +380,7 @@ "options": "Item Group", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -415,6 +406,7 @@ "options": "Brand", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "print_width": "100px", "read_only": 1, "report_hide": 0, @@ -441,6 +433,7 @@ "oldfieldtype": "Date", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -452,18 +445,19 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "fieldname": "sales_order_no", + "fieldname": "sales_order", "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 0, "in_list_view": 0, - "label": "Sales Order No", + "label": "Sales Order", "length": 0, "no_copy": 0, "options": "Sales Order", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -485,6 +479,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -509,6 +504,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "print_width": "70px", "read_only": 1, "report_hide": 0, @@ -535,6 +531,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "print_width": "70px", "read_only": 1, "report_hide": 0, @@ -561,6 +558,7 @@ "oldfieldtype": "Currency", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -585,6 +583,7 @@ "oldfieldtype": "Check", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -602,12 +601,13 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2015-11-16 06:29:50.238167", + "modified": "2016-01-30 06:03:41.424851", "modified_by": "Administrator", "module": "Stock", "name": "Material Request Item", "owner": "Administrator", "permissions": [], "read_only": 0, - "read_only_onload": 0 + "read_only_onload": 0, + "sort_order": "DESC" } \ No newline at end of file diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py b/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py index 14cad8e787..d7ba1463d5 100644 --- a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py +++ b/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py @@ -158,12 +158,12 @@ class MaintenanceSchedule(TransactionBase): def validate_sales_order(self): for d in self.get('items'): - if d.prevdoc_docname: + if d.sales_order: chk = frappe.db.sql("""select ms.name from `tabMaintenance Schedule` ms, `tabMaintenance Schedule Item` msi where msi.parent=ms.name and - msi.prevdoc_docname=%s and ms.docstatus=1""", d.prevdoc_docname) + msi.sales_order=%s and ms.docstatus=1""", d.sales_order) if chk: - throw(_("Maintenance Schedule {0} exists against {0}").format(chk[0][0], d.prevdoc_docname)) + throw(_("Maintenance Schedule {0} exists against {0}").format(chk[0][0], d.sales_order)) def validate(self): self.validate_maintenance_detail() diff --git a/erpnext/support/doctype/maintenance_schedule_item/maintenance_schedule_item.json b/erpnext/support/doctype/maintenance_schedule_item/maintenance_schedule_item.json index f20cccb22c..6879f0675b 100644 --- a/erpnext/support/doctype/maintenance_schedule_item/maintenance_schedule_item.json +++ b/erpnext/support/doctype/maintenance_schedule_item/maintenance_schedule_item.json @@ -26,6 +26,7 @@ "options": "Item", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -50,6 +51,7 @@ "oldfieldtype": "Data", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 1, "report_hide": 0, "reqd": 0, @@ -74,6 +76,7 @@ "oldfieldtype": "Data", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "print_width": "300px", "read_only": 1, "report_hide": 0, @@ -98,6 +101,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -122,6 +126,7 @@ "oldfieldtype": "Date", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -146,6 +151,7 @@ "oldfieldtype": "Date", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -171,6 +177,7 @@ "options": "\nWeekly\nMonthly\nQuarterly\nHalf Yearly\nYearly\nRandom", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -195,6 +202,7 @@ "oldfieldtype": "Int", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -220,6 +228,7 @@ "options": "Sales Person", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 1, @@ -242,6 +251,7 @@ "no_copy": 0, "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -266,6 +276,7 @@ "oldfieldtype": "Small Text", "permlevel": 0, "print_hide": 0, + "print_hide_if_no_value": 0, "read_only": 0, "report_hide": 0, "reqd": 0, @@ -277,19 +288,21 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, - "fieldname": "prevdoc_docname", - "fieldtype": "Data", + "fieldname": "sales_order", + "fieldtype": "Link", "hidden": 0, "ignore_user_permissions": 0, "in_filter": 1, "in_list_view": 0, - "label": "Against Docname", + "label": "Sales Order", "length": 0, "no_copy": 1, "oldfieldname": "prevdoc_docname", "oldfieldtype": "Data", + "options": "Sales Order", "permlevel": 0, "print_hide": 1, + "print_hide_if_no_value": 0, "print_width": "150px", "read_only": 1, "report_hide": 0, @@ -309,7 +322,7 @@ "issingle": 0, "istable": 1, "max_attachments": 0, - "modified": "2015-11-16 06:29:49.903875", + "modified": "2016-02-23 04:59:32.924534", "modified_by": "Administrator", "module": "Support", "name": "Maintenance Schedule Item", diff --git a/erpnext/translations/ar.csv b/erpnext/translations/ar.csv index 90a19efbe9..79a1134f5c 100644 --- a/erpnext/translations/ar.csv +++ b/erpnext/translations/ar.csv @@ -1224,7 +1224,7 @@ DocType: Employee External Work History,Total Experience,مجموع الخبرة apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,زلة التعبئة (ق ) إلغاء apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,تدفق النقد من الاستثمار apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,الشحن و التخليص الرسوم -DocType: Material Request Item,Sales Order No,ترتيب المبيعات لا +DocType: Material Request Item,Sales Order,ترتيب المبيعات لا DocType: Item Group,Item Group Name,البند اسم المجموعة apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,مأخوذ apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,المواد نقل لصناعة diff --git a/erpnext/translations/bg.csv b/erpnext/translations/bg.csv index 645234f7fb..61bb51d0c0 100644 --- a/erpnext/translations/bg.csv +++ b/erpnext/translations/bg.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Общо Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Приемо-предавателен протокол (и) анулиране apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Парични потоци от инвестиционна apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Товарни и спедиция Такси -DocType: Material Request Item,Sales Order No,Продажбите Заповед № +DocType: Material Request Item,Sales Order,Продажбите Заповед № DocType: Item Group,Item Group Name,Име на артикул Group apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Взети apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Прехвърляне Материали за Производство diff --git a/erpnext/translations/bn.csv b/erpnext/translations/bn.csv index 8947059cb0..eb653f9c0f 100644 --- a/erpnext/translations/bn.csv +++ b/erpnext/translations/bn.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,মোট অভিজ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,বাতিল প্যাকিং স্লিপ (গুলি) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,বিনিয়োগ থেকে ক্যাশ ফ্লো apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,মাল ও ফরোয়ার্ডিং চার্জ -DocType: Material Request Item,Sales Order No,বিক্রয় আদেশ কোন +DocType: Material Request Item,Sales Order,বিক্রয় আদেশ কোন DocType: Item Group,Item Group Name,আইটেমটি গ্রুপ নাম apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,ধরা apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,প্রস্তুত জন্য স্থানান্তর সামগ্রী diff --git a/erpnext/translations/bs.csv b/erpnext/translations/bs.csv index 98b176e627..6c9deaf4d6 100644 --- a/erpnext/translations/bs.csv +++ b/erpnext/translations/bs.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Ukupno Iskustvo apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Pakiranje proklizavanja ( s) otkazan apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Novčani tok iz ulagačkih apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Teretni i Forwarding Optužbe -DocType: Material Request Item,Sales Order No,Narudžba kupca br +DocType: Material Request Item,Sales Order,Narudžba kupca br DocType: Item Group,Item Group Name,Naziv grupe artikla apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taken apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transfer Materijali za Proizvodnja diff --git a/erpnext/translations/ca.csv b/erpnext/translations/ca.csv index e438744a8f..8a8d4bf02a 100644 --- a/erpnext/translations/ca.csv +++ b/erpnext/translations/ca.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Experiència total apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Fulla(s) d'embalatge cancel·lat apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Flux d'efectiu d'inversió apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Freight and Forwarding Charges -DocType: Material Request Item,Sales Order No,Ordre de Venda No +DocType: Material Request Item,Sales Order,Ordre de Venda No DocType: Item Group,Item Group Name,Nom del Grup d'Articles apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Pres apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Materials de transferència per Fabricació diff --git a/erpnext/translations/cs.csv b/erpnext/translations/cs.csv index 31e1002e62..09ae949169 100644 --- a/erpnext/translations/cs.csv +++ b/erpnext/translations/cs.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Celková zkušenost apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Balení Slip (y) zrušeno apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Peněžní tok z investičních apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Nákladní a Spediční Poplatky -DocType: Material Request Item,Sales Order No,Prodejní objednávky No +DocType: Material Request Item,Sales Order,Prodejní objednávky No DocType: Item Group,Item Group Name,Položka Název skupiny apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Zaujatý apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Přenos Materiály pro výrobu diff --git a/erpnext/translations/da-DK.csv b/erpnext/translations/da-DK.csv index 335518b8a0..e99c8414a0 100644 --- a/erpnext/translations/da-DK.csv +++ b/erpnext/translations/da-DK.csv @@ -1076,7 +1076,7 @@ apps/erpnext/erpnext/public/js/setup_wizard.js +65,Financial Year Start Date,Reg DocType: Employee External Work History,Total Experience,Total Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Packing Slip (r) annulleret apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Fragt og Forwarding Afgifter -DocType: Material Request Item,Sales Order No,Salg bekendtgørelse nr +DocType: Material Request Item,Sales Order,Salg bekendtgørelse nr DocType: Item Group,Item Group Name,Item Group Name apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taget apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Overfør Materialer til Fremstilling diff --git a/erpnext/translations/da.csv b/erpnext/translations/da.csv index f5f62d5e18..044288120b 100644 --- a/erpnext/translations/da.csv +++ b/erpnext/translations/da.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Total Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Packing Slip (r) annulleret apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Pengestrømme fra investeringsaktivitet apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Fragt og Forwarding Afgifter -DocType: Material Request Item,Sales Order No,Salg bekendtgørelse nr +DocType: Material Request Item,Sales Order,Salg bekendtgørelse nr DocType: Item Group,Item Group Name,Item Group Name apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taget apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Overfør Materialer til Fremstilling diff --git a/erpnext/translations/de.csv b/erpnext/translations/de.csv index 8458e88773..33ea1a3959 100644 --- a/erpnext/translations/de.csv +++ b/erpnext/translations/de.csv @@ -1222,7 +1222,7 @@ DocType: Employee External Work History,Total Experience,Gesamterfahrung apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Packzettel storniert apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Cashflow aus Investitionen apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Fracht- und Versandkosten -DocType: Material Request Item,Sales Order No,Kundenauftrags-Nr. +DocType: Material Request Item,Sales Order,Kundenauftrags-Nr. DocType: Item Group,Item Group Name,Name der Artikelgruppe apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Genommen apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Material der Fertigung übergeben diff --git a/erpnext/translations/el.csv b/erpnext/translations/el.csv index bca0d08ec2..f0dba78aac 100644 --- a/erpnext/translations/el.csv +++ b/erpnext/translations/el.csv @@ -1222,7 +1222,7 @@ DocType: Employee External Work History,Total Experience,Συνολική εμπ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Το(α) δελτίο(α) συσκευασίας ακυρώθηκε(αν) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Ταμειακές ροές από επενδυτικές apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Χρεώσεις μεταφοράς και προώθησης -DocType: Material Request Item,Sales Order No,Αρ. παραγγελίας πώλησης +DocType: Material Request Item,Sales Order,Αρ. παραγγελίας πώλησης DocType: Item Group,Item Group Name,Όνομα ομάδας ειδών apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Πάρθηκε apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Μεταφορά υλικών για μεταποίηση diff --git a/erpnext/translations/es-PE.csv b/erpnext/translations/es-PE.csv index e562fee3a6..14f4d780d8 100644 --- a/erpnext/translations/es-PE.csv +++ b/erpnext/translations/es-PE.csv @@ -1099,7 +1099,7 @@ apps/erpnext/erpnext/public/js/setup_wizard.js +65,Financial Year Start Date,Ini DocType: Employee External Work History,Total Experience,Experiencia Total apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Lista(s) de embalaje cancelada(s) apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Cargos por transporte de mercancías y transito -DocType: Material Request Item,Sales Order No,Orden de Venta No +DocType: Material Request Item,Sales Order,Orden de Venta No DocType: Item Group,Item Group Name,Nombre del grupo de artículos apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Tomado apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transferenca de Materiales para Fabricación diff --git a/erpnext/translations/es.csv b/erpnext/translations/es.csv index a8a3db6478..d39c77c0c2 100644 --- a/erpnext/translations/es.csv +++ b/erpnext/translations/es.csv @@ -1221,7 +1221,7 @@ DocType: Employee External Work History,Total Experience,Experiencia total apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Lista(s) de embalaje cancelada(s) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Flujo de efectivo de inversión apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,CARGOS DE TRANSITO Y TRANSPORTE -DocType: Material Request Item,Sales Order No,Orden de venta No. +DocType: Material Request Item,Sales Order,Orden de venta No. DocType: Item Group,Item Group Name,Nombre del grupo de productos apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Tomado apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transferir materiales para producción diff --git a/erpnext/translations/et.csv b/erpnext/translations/et.csv index b726df2cb8..a593e3536a 100644 --- a/erpnext/translations/et.csv +++ b/erpnext/translations/et.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Kokku Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Pakkesedel (s) tühistati apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Rahavood investeerimistegevusest apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Kaubavedu ja Edasitoimetuskulude -DocType: Material Request Item,Sales Order No,Müük korraldusega nr +DocType: Material Request Item,Sales Order,Müük korraldusega nr DocType: Item Group,Item Group Name,Punkt Group Nimi apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Võtnud apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transfer Materjalid Tootmine diff --git a/erpnext/translations/fa.csv b/erpnext/translations/fa.csv index ad09467d95..8cc353ebd3 100644 --- a/erpnext/translations/fa.csv +++ b/erpnext/translations/fa.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,تجربه ها apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,بسته بندی لغزش (بازدید کنندگان) لغو apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,جریان وجوه نقد از سرمایه گذاری apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,حمل و نقل و حمل و نقل اتهامات -DocType: Material Request Item,Sales Order No,سفارش فروش بدون +DocType: Material Request Item,Sales Order,سفارش فروش بدون DocType: Item Group,Item Group Name,مورد نام گروه apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,گرفته apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,انتقال مواد برای تولید diff --git a/erpnext/translations/fi.csv b/erpnext/translations/fi.csv index b0240393c4..a73b0586c8 100644 --- a/erpnext/translations/fi.csv +++ b/erpnext/translations/fi.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,kustannukset yhteensä apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,pakkauslaput peruttu apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Investointien rahavirta apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,rahdin ja huolinnan maksut -DocType: Material Request Item,Sales Order No,"myyntitilaus, numero" +DocType: Material Request Item,Sales Order,"myyntitilaus, numero" DocType: Item Group,Item Group Name,"tuoteryhmä, nimi" apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,otettu apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,materiaalisiirto tuotantoon diff --git a/erpnext/translations/fr.csv b/erpnext/translations/fr.csv index da23c14f00..267a876b14 100644 --- a/erpnext/translations/fr.csv +++ b/erpnext/translations/fr.csv @@ -1225,7 +1225,7 @@ DocType: Employee External Work History,Total Experience,Total Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Bordereau(x) annulé apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Flux de trésorerie d'investissement apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Fret et d'envoi en sus -DocType: Material Request Item,Sales Order No,Ordonnance n ° de vente +DocType: Material Request Item,Sales Order,Ordonnance n ° de vente DocType: Item Group,Item Group Name,Nom du groupe d'article apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Pris apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Matériaux de transfert pour la fabrication diff --git a/erpnext/translations/gu.csv b/erpnext/translations/gu.csv index 170cc452e3..ee4e87e13f 100644 --- a/erpnext/translations/gu.csv +++ b/erpnext/translations/gu.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,કુલ અનુભ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,રદ પેકિંગ કાપલી (ઓ) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,રોકાણ કેશ ફ્લો apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,નૂર અને ફોરવર્ડિંગ સમાયોજિત -DocType: Material Request Item,Sales Order No,વેચાણ ઓર્ડર કોઈ +DocType: Material Request Item,Sales Order,વેચાણ ઓર્ડર કોઈ DocType: Item Group,Item Group Name,વસ્તુ ગ્રુપ નામ apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,લેવામાં apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,ઉત્પાદન માટે ટ્રાન્સફર સામગ્રી diff --git a/erpnext/translations/he.csv b/erpnext/translations/he.csv index cb1810389a..9e663cfdd3 100644 --- a/erpnext/translations/he.csv +++ b/erpnext/translations/he.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,"ניסיון סה""כ" apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Slip אריזה (ים) בוטל apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,תזרים מזומנים מהשקעות apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,הוצאות הובלה והשילוח -DocType: Material Request Item,Sales Order No,להזמין ללא מכירות +DocType: Material Request Item,Sales Order,להזמין ללא מכירות DocType: Item Group,Item Group Name,שם קבוצת פריט apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,לקחתי apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,העברת חומרים לייצור diff --git a/erpnext/translations/hi.csv b/erpnext/translations/hi.csv index 26b72935b6..14fedb0b0d 100644 --- a/erpnext/translations/hi.csv +++ b/erpnext/translations/hi.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,कुल अनुभ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,पैकिंग पर्ची (ओं ) को रद्द कर दिया apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,निवेश से कैश फ्लो apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,फ्रेट और अग्रेषण शुल्क -DocType: Material Request Item,Sales Order No,बिक्री आदेश नहीं +DocType: Material Request Item,Sales Order,बिक्री आदेश नहीं DocType: Item Group,Item Group Name,आइटम समूह का नाम apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,में ले ली apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,निर्माण के लिए हस्तांतरण सामग्री diff --git a/erpnext/translations/hr.csv b/erpnext/translations/hr.csv index d8864ccd95..1699e39c4f 100644 --- a/erpnext/translations/hr.csv +++ b/erpnext/translations/hr.csv @@ -1224,7 +1224,7 @@ DocType: Employee External Work History,Total Experience,Ukupno Iskustvo apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Pakiranje proklizavanja ( s) otkazan apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Novčani tijek iz investicijskih apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Teretni i Forwarding Optužbe -DocType: Material Request Item,Sales Order No,Broj narudžbe kupca +DocType: Material Request Item,Sales Order,Broj narudžbe kupca DocType: Item Group,Item Group Name,Proizvod - naziv grupe apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taken apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Prijenos Materijali za izradu diff --git a/erpnext/translations/hu.csv b/erpnext/translations/hu.csv index b94fae5ed4..cb55a8f5cf 100644 --- a/erpnext/translations/hu.csv +++ b/erpnext/translations/hu.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Összesen Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Csomagjegy(ek) törölve apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Cash Flow Befektetési apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Freight Forwarding és díjak -DocType: Material Request Item,Sales Order No,Sales Order No +DocType: Material Request Item,Sales Order,Sales Order DocType: Item Group,Item Group Name,Anyagcsoport neve apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taken apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transfer anyagok gyártása diff --git a/erpnext/translations/id.csv b/erpnext/translations/id.csv index a0c208c09a..51221c28a0 100644 --- a/erpnext/translations/id.csv +++ b/erpnext/translations/id.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Jumlah Pengalaman apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Packing slip (s) dibatalkan apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Arus Kas dari Investasi apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Pengangkutan dan Forwarding Biaya -DocType: Material Request Item,Sales Order No,No Order Penjualan +DocType: Material Request Item,Sales Order,Sales Order DocType: Item Group,Item Group Name,Nama Item Grup apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Diambil apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transfer Material untuk Produksi diff --git a/erpnext/translations/it.csv b/erpnext/translations/it.csv index d9f30725e8..2c824722b2 100644 --- a/erpnext/translations/it.csv +++ b/erpnext/translations/it.csv @@ -1223,7 +1223,7 @@ DocType: Employee External Work History,Total Experience,Esperienza totale apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Bolla di accompagnamento ( s ) annullato apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Cash Flow da investimenti apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Freight Forwarding e spese -DocType: Material Request Item,Sales Order No,Ordine di vendita No +DocType: Material Request Item,Sales Order,Ordine di vendita No DocType: Item Group,Item Group Name,Nome Gruppo Articoli apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Preso apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Trasferimento Materiali per Produzione diff --git a/erpnext/translations/ja.csv b/erpnext/translations/ja.csv index 67c855e00b..fad54750dc 100644 --- a/erpnext/translations/ja.csv +++ b/erpnext/translations/ja.csv @@ -1234,7 +1234,7 @@ DocType: Employee External Work History,Total Experience,実績合計 apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,梱包伝票(S)をキャンセル apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,投資活動によるキャッシュフロー apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,運送・転送料金 -DocType: Material Request Item,Sales Order No,受注番号 +DocType: Material Request Item,Sales Order,受注番号 DocType: Item Group,Item Group Name,アイテムグループ名 apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,売上高 apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,製造用資材配送 diff --git a/erpnext/translations/km.csv b/erpnext/translations/km.csv index b0ba2f41da..1db6cf58ae 100644 --- a/erpnext/translations/km.csv +++ b/erpnext/translations/km.csv @@ -1200,7 +1200,7 @@ DocType: Employee External Work History,Total Experience,បទពិសោធ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,គ្រូពេទ្យប្រហែលជាវេចខ្ចប់ (s) បានត្រូវបានលុបចោល apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,លំហូរសាច់ប្រាក់ចេញពីការវិនិយោគ apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,ការចោទប្រកាន់ការដឹកជញ្ជូននិងការបញ្ជូនបន្ត -DocType: Material Request Item,Sales Order No,គ្មានការលក់សណ្តាប់ធ្នាប់ +DocType: Material Request Item,Sales Order,គ្មានការលក់សណ្តាប់ធ្នាប់ DocType: Item Group,Item Group Name,ធាតុឈ្មោះក្រុម apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,គេយក apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,ផ្ទេរសម្រាប់ការផលិតសម្ភារៈ diff --git a/erpnext/translations/kn.csv b/erpnext/translations/kn.csv index 9de8a59937..34143a7a42 100644 --- a/erpnext/translations/kn.csv +++ b/erpnext/translations/kn.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,ಒಟ್ಟು ಅನ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,ಪ್ಯಾಕಿಂಗ್ ಸ್ಲಿಪ್ (ಗಳು) ರದ್ದು apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,ಹೂಡಿಕೆ ಹಣದ ಹರಿವನ್ನು apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,ಸರಕು ಮತ್ತು ಸಾಗಣೆಯನ್ನು ಚಾರ್ಜಸ್ -DocType: Material Request Item,Sales Order No,ಮಾರಾಟದ ಆದೇಶ ಸಂಖ್ಯೆ +DocType: Material Request Item,Sales Order,ಮಾರಾಟದ ಆದೇಶ ಸಂಖ್ಯೆ DocType: Item Group,Item Group Name,ಐಟಂ ಗುಂಪು ಹೆಸರು apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,ಟೇಕನ್ apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,ತಯಾರಿಕೆಗೆ ವರ್ಗಾವಣೆ ಮೆಟೀರಿಯಲ್ಸ್ diff --git a/erpnext/translations/ko.csv b/erpnext/translations/ko.csv index 3c39d728d4..32b3582c8c 100644 --- a/erpnext/translations/ko.csv +++ b/erpnext/translations/ko.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,총 체험 apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,포장 명세서 (들) 취소 apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,투자의 현금 흐름 apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,화물 운송 및 포워딩 요금 -DocType: Material Request Item,Sales Order No,판매 주문 번호 +DocType: Material Request Item,Sales Order,판매 주문 번호 DocType: Item Group,Item Group Name,항목 그룹 이름 apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,촬영 apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,제조에 대한 전송 재료 diff --git a/erpnext/translations/lv.csv b/erpnext/translations/lv.csv index 0678cd273a..8e3bc6ee5e 100644 --- a/erpnext/translations/lv.csv +++ b/erpnext/translations/lv.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Kopā pieredze apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Packing Slip (s) atcelts apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Naudas plūsma no ieguldījumu apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Kravu un Ekspedīcijas maksājumi -DocType: Material Request Item,Sales Order No,Pasūtījumu Nr +DocType: Material Request Item,Sales Order,Pasūtījumu Nr DocType: Item Group,Item Group Name,Postenis Grupas nosaukums apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taken apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transfer Materiāli Ražošana diff --git a/erpnext/translations/mk.csv b/erpnext/translations/mk.csv index db945cc149..c773189958 100644 --- a/erpnext/translations/mk.csv +++ b/erpnext/translations/mk.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Вкупно Искус apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Пакување фиш (и) откажани apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Парични текови од инвестициони apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Товар и товар пријави -DocType: Material Request Item,Sales Order No,Продај Побарувања Не +DocType: Material Request Item,Sales Order,Продај Побарувања Не DocType: Item Group,Item Group Name,Точка име на група apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Земени apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Пренос на материјали за изработка diff --git a/erpnext/translations/ml.csv b/erpnext/translations/ml.csv index 7fbf00cba9..ea56eb7c09 100644 --- a/erpnext/translations/ml.csv +++ b/erpnext/translations/ml.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,ആകെ അനുഭ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,പായ്ക്കിംഗ് ജി (കൾ) റദ്ദാക്കി apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,നിക്ഷേപം മുതൽ ക്യാഷ് ഫ്ളോ apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,ചരക്കുഗതാഗതം കൈമാറലും ചുമത്തിയിട്ടുള്ള -DocType: Material Request Item,Sales Order No,സെയിൽസ് ഓർഡർ ഇല്ല +DocType: Material Request Item,Sales Order,സെയിൽസ് ഓർഡർ ഇല്ല DocType: Item Group,Item Group Name,ഇനം ഗ്രൂപ്പ് പേര് apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,എടുത്ത apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,ഉല്പാദനത്തിനുള്ള മെറ്റീരിയൽസ് കൈമാറുക diff --git a/erpnext/translations/mr.csv b/erpnext/translations/mr.csv index a7ec841b0f..1c01841b7a 100644 --- a/erpnext/translations/mr.csv +++ b/erpnext/translations/mr.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,एकूण अनु apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,रद्द पॅकिंग स्लिप (चे) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,गुंतवणूक रोख प्रवाह apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,वाहतुक आणि अग्रेषित शुल्क -DocType: Material Request Item,Sales Order No,विक्री ऑर्डर नाही +DocType: Material Request Item,Sales Order,विक्री ऑर्डर नाही DocType: Item Group,Item Group Name,आयटम गट नाव apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,घेतले apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,उत्पादन हस्तांतरण सामुग्री diff --git a/erpnext/translations/ms.csv b/erpnext/translations/ms.csv index f563902dff..cc6153af6b 100644 --- a/erpnext/translations/ms.csv +++ b/erpnext/translations/ms.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Jumlah Pengalaman apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Slip pembungkusan (s) dibatalkan apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Aliran tunai daripada Pelaburan apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Freight Forwarding dan Caj -DocType: Material Request Item,Sales Order No,Pesanan Jualan No +DocType: Material Request Item,Sales Order,Pesanan Jualan No DocType: Item Group,Item Group Name,Perkara Kumpulan Nama apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Diambil apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Bahan Pemindahan bagi Pembuatan diff --git a/erpnext/translations/my.csv b/erpnext/translations/my.csv index a555cfb742..7cfef14f6e 100644 --- a/erpnext/translations/my.csv +++ b/erpnext/translations/my.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,စုစုပေါ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,ထုပ်ပိုးစလစ်ဖြတ်ပိုင်းပုံစံ (s) ဖျက်သိမ်း apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,ရင်းနှီးမြုပ်နှံထံမှငွေကြေးစီးဆင်းမှု apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,ကုန်တင်နှင့် Forwarding စွပ်စွဲချက် -DocType: Material Request Item,Sales Order No,အရောင်းအမိန့်မရှိပါ +DocType: Material Request Item,Sales Order,အရောင်းအမိန့်မရှိပါ DocType: Item Group,Item Group Name,item Group မှအမည် apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,ယူ apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Manufacturing သည်ပစ္စည်းများလွှဲပြောင်း diff --git a/erpnext/translations/nl.csv b/erpnext/translations/nl.csv index 708b68b031..697f3a298f 100644 --- a/erpnext/translations/nl.csv +++ b/erpnext/translations/nl.csv @@ -1223,7 +1223,7 @@ DocType: Employee External Work History,Total Experience,Total Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Pakbon(en) geannuleerd apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,De kasstroom uit investeringsactiviteiten apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Vracht-en verzendkosten -DocType: Material Request Item,Sales Order No,Verkooporder nr. +DocType: Material Request Item,Sales Order,Verkooporder nr. DocType: Item Group,Item Group Name,Artikel groepsnaam apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Ingenomen apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Verplaats Materialen voor Productie diff --git a/erpnext/translations/no.csv b/erpnext/translations/no.csv index 8e458f42ab..98f5fb3335 100644 --- a/erpnext/translations/no.csv +++ b/erpnext/translations/no.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Total Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Pakking Slip (s) kansellert apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Kontantstrøm fra investerings apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Spedisjons- og Kostnader -DocType: Material Request Item,Sales Order No,Salgsordre Nei +DocType: Material Request Item,Sales Order,Salgsordre Nei DocType: Item Group,Item Group Name,Sak Gruppenavn apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Tatt apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transfer Materialer for produksjon diff --git a/erpnext/translations/pl.csv b/erpnext/translations/pl.csv index 6e481a9257..0557923db6 100644 --- a/erpnext/translations/pl.csv +++ b/erpnext/translations/pl.csv @@ -1225,8 +1225,8 @@ DocType: Employee External Work History,Total Experience, apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,List(y) przewozowe anulowane apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Przepływy środków pieniężnych z Inwestowanie apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Koszty dostaw i przesyłek -DocType: Material Request Item,Sales Order No,Nr Zlecenia Sprzedaży -DocType: Item Group,Item Group Name,Element Nazwa grupy +DocType: Material Request Item,Sales Order,Nr Zlecenia Sprzedaży +DocType: Item Group,Item Group Name, apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Wzięty apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Materiały transferowe dla Produkcja DocType: Pricing Rule,For Price List,Dla Listy Cen diff --git a/erpnext/translations/pt-BR.csv b/erpnext/translations/pt-BR.csv index 57b1596105..f5ed6866e1 100644 --- a/erpnext/translations/pt-BR.csv +++ b/erpnext/translations/pt-BR.csv @@ -1223,7 +1223,7 @@ DocType: Employee External Work History,Total Experience,Experiência total apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Deslizamento (s) de embalagem cancelado apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Fluxo de Caixa de Investimentos apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Freight Forwarding e Encargos -DocType: Material Request Item,Sales Order No,Nº da Ordem de Venda +DocType: Material Request Item,Sales Order,Nº da Ordem de Venda DocType: Item Group,Item Group Name,Nome do Grupo de Itens apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Tomado apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Materiais de transferência para Fabricação diff --git a/erpnext/translations/pt.csv b/erpnext/translations/pt.csv index 5a19503f66..44e3ee8f56 100644 --- a/erpnext/translations/pt.csv +++ b/erpnext/translations/pt.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Experiência total apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Deslizamento (s) de embalagem cancelado apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Fluxo de Caixa de Investimentos apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Freight Forwarding e Encargos -DocType: Material Request Item,Sales Order No,Vendas decreto n º +DocType: Material Request Item,Sales Order,Vendas decreto n º DocType: Item Group,Item Group Name,Nome do Grupo item apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Tomado apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Materiais de transferência para Fabricação diff --git a/erpnext/translations/ro.csv b/erpnext/translations/ro.csv index 163616879f..6b2993eefa 100644 --- a/erpnext/translations/ro.csv +++ b/erpnext/translations/ro.csv @@ -1221,7 +1221,7 @@ DocType: Employee External Work History,Total Experience,Experiența totală apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Slip de ambalare (e) anulate apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Cash Flow de la Investiții apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Incarcatura și Taxe de Expediere -DocType: Material Request Item,Sales Order No,Vânzări Ordinul nr +DocType: Material Request Item,Sales Order,Vânzări Ordinul nr DocType: Item Group,Item Group Name,Denumire Grup Articol apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Luate apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Materiale de transfer de Fabricare diff --git a/erpnext/translations/ru.csv b/erpnext/translations/ru.csv index 0d5e835049..bf2887b2f1 100644 --- a/erpnext/translations/ru.csv +++ b/erpnext/translations/ru.csv @@ -1225,7 +1225,7 @@ DocType: Employee External Work History,Total Experience,Суммарный оп apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Упаковочный лист (ы) отменяется apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Поток денежных средств от инвестиционной apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Грузовые и экспедиторские Сборы -DocType: Material Request Item,Sales Order No,Номер Заказа клиента +DocType: Material Request Item,Sales Order,Номер Заказа клиента DocType: Item Group,Item Group Name,Пункт Название группы apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Взятый apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Передача материалов для производства diff --git a/erpnext/translations/sk.csv b/erpnext/translations/sk.csv index 21b736bc36..51714af63b 100644 --- a/erpnext/translations/sk.csv +++ b/erpnext/translations/sk.csv @@ -1224,7 +1224,7 @@ DocType: Employee External Work History,Total Experience,Celková zkušenost apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Balení Slip (y) zrušeno apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Peňažný tok z investičných apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Nákladní a Spediční Poplatky -DocType: Material Request Item,Sales Order No,Prodejní objednávky No +DocType: Material Request Item,Sales Order,Prodejní objednávky No DocType: Item Group,Item Group Name,Položka Název skupiny apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Zaujatý apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Přenos Materiály pro výrobu diff --git a/erpnext/translations/sl.csv b/erpnext/translations/sl.csv index d7d8e8ef26..baa405e703 100644 --- a/erpnext/translations/sl.csv +++ b/erpnext/translations/sl.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Skupaj Izkušnje apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Dobavnico (e) odpovedan apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Denarni tokovi iz naložbenja apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Tovorni in Forwarding Stroški -DocType: Material Request Item,Sales Order No,Prodaja Zaporedna številka +DocType: Material Request Item,Sales Order,Prodaja Zaporedna številka DocType: Item Group,Item Group Name,Item Name Group apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taken apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Transferji Materiali za Izdelava diff --git a/erpnext/translations/sq.csv b/erpnext/translations/sq.csv index 9eea645f38..9852f76993 100644 --- a/erpnext/translations/sq.csv +++ b/erpnext/translations/sq.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Përvoja Total apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Paketimi Shqip (s) anulluar apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Cash Flow nga Investimi apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Mallrave dhe Forwarding Pagesat -DocType: Material Request Item,Sales Order No,Rendit Sales Asnjë +DocType: Material Request Item,Sales Order,Rendit Sales Asnjë DocType: Item Group,Item Group Name,Item Emri i Grupit apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Marrë apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Materialet Transferimi për prodhimin e diff --git a/erpnext/translations/sr.csv b/erpnext/translations/sr.csv index c582b528a2..6d6028a460 100644 --- a/erpnext/translations/sr.csv +++ b/erpnext/translations/sr.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Укупно Искус apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Упаковочный лист (ы) отменяется apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Новчани ток од Инвестирање apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Грузовые и экспедиторские Сборы -DocType: Material Request Item,Sales Order No,Продаја Наручите Нема +DocType: Material Request Item,Sales Order,Продаја Наручите Нема DocType: Item Group,Item Group Name,Ставка Назив групе apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Такен apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Трансфер материјал за производњу diff --git a/erpnext/translations/sv.csv b/erpnext/translations/sv.csv index d3d05248f9..b019ed4288 100644 --- a/erpnext/translations/sv.csv +++ b/erpnext/translations/sv.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Total Experience apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Följesedlar avbryts apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Kassaflöde från investeringsverksamheten apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,"Frakt, spedition Avgifter" -DocType: Material Request Item,Sales Order No,Kundorder Ingen +DocType: Material Request Item,Sales Order,Kundorder Ingen DocType: Item Group,Item Group Name,Produkt Gruppnamn apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Taken apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Överför Material Tillverkning diff --git a/erpnext/translations/ta.csv b/erpnext/translations/ta.csv index 933ea271ac..0de536f3bf 100644 --- a/erpnext/translations/ta.csv +++ b/erpnext/translations/ta.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,மொத்த அ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,மூட்டை சீட்டு (கள்) ரத்து apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,முதலீடு இருந்து பண பரிமாற்ற apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,சரக்கு மற்றும் அனுப்புதல் கட்டணம் -DocType: Material Request Item,Sales Order No,விற்பனை ஆணை இல்லை +DocType: Material Request Item,Sales Order,விற்பனை ஆணை இல்லை DocType: Item Group,Item Group Name,உருப்படியை குழு பெயர் apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,எடுக்கப்பட்ட apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,உற்பத்தி இடமாற்றத் பொருட்கள் diff --git a/erpnext/translations/te.csv b/erpnext/translations/te.csv index 34be9881d4..656e7dd90b 100644 --- a/erpnext/translations/te.csv +++ b/erpnext/translations/te.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,మొత్తం ఎ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,రద్దు ప్యాకింగ్ స్లిప్ (లు) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,ఇన్వెస్టింగ్ నుండి నగదు ప్రవాహ apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,ఫ్రైట్ మరియు ఫార్వార్డింగ్ ఛార్జీలు -DocType: Material Request Item,Sales Order No,సేల్స్ ఆర్డర్ సంఖ్య +DocType: Material Request Item,Sales Order,సేల్స్ ఆర్డర్ సంఖ్య DocType: Item Group,Item Group Name,అంశం గ్రూప్ పేరు apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,తీసుకోబడినది apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,తయారీకి ట్రాన్స్ఫర్ మెటీరియల్స్ diff --git a/erpnext/translations/th.csv b/erpnext/translations/th.csv index fb0e9e074d..1847549ab5 100644 --- a/erpnext/translations/th.csv +++ b/erpnext/translations/th.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,ประสบกา apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,บรรจุ สลิป (s) ยกเลิก apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,กระแสเงินสดจากการลงทุน apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,การขนส่งสินค้าและ การส่งต่อ ค่าใช้จ่าย -DocType: Material Request Item,Sales Order No,สั่งซื้อยอดขาย +DocType: Material Request Item,Sales Order,สั่งซื้อยอดขาย DocType: Item Group,Item Group Name,ชื่อกลุ่มสินค้า apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,ยึด apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,วัสดุการโอนเงินสำหรับการผลิต diff --git a/erpnext/translations/tr.csv b/erpnext/translations/tr.csv index 1153bd0659..3b17a30f54 100644 --- a/erpnext/translations/tr.csv +++ b/erpnext/translations/tr.csv @@ -1495,8 +1495,8 @@ DocType: Employee External Work History,Total Experience,Toplam Deneyim apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Ambalaj Makbuzları İptal Edildi apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Yatırım Nakit Akışı apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Navlun ve Sevkiyat Ücretleri -DocType: Material Request Item,Sales Order No,Satış Sipariş No -DocType: Material Request Item,Sales Order No,Satış Sipariş No +DocType: Material Request Item,Sales Order,Satış Sipariş No +DocType: Material Request Item,Sales Order,Satış Sipariş No DocType: Item Group,Item Group Name,Ürün Grup Adı DocType: Item Group,Item Group Name,Ürün Grup Adı apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Alınmış diff --git a/erpnext/translations/uk.csv b/erpnext/translations/uk.csv index 54384ce94f..82678f1f5f 100644 --- a/erpnext/translations/uk.csv +++ b/erpnext/translations/uk.csv @@ -1201,7 +1201,7 @@ DocType: Employee External Work History,Total Experience,Загальний до apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Упаковка ковзання (и) скасовується apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Потік грошових коштів від інвестиційної apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Вантажні та експедиторські Збори -DocType: Material Request Item,Sales Order No,Продажі Замовити Немає +DocType: Material Request Item,Sales Order,Продажі Замовити Немає DocType: Item Group,Item Group Name,Назва товару Група apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Взятий apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Передача матеріалів для виробництва diff --git a/erpnext/translations/ur.csv b/erpnext/translations/ur.csv index fdab335d49..6170b73a12 100644 --- a/erpnext/translations/ur.csv +++ b/erpnext/translations/ur.csv @@ -1199,7 +1199,7 @@ DocType: Employee External Work History,Total Experience,کل تجربہ apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,منسوخ پیکنگ پرچی (ے) apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,سرمایہ کاری سے کیش فلو apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,فریٹ فارورڈنگ اور چارجز -DocType: Material Request Item,Sales Order No,سیلز آرڈر نہیں +DocType: Material Request Item,Sales Order,سیلز آرڈر نہیں DocType: Item Group,Item Group Name,آئٹم گروپ کا نام apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,لیا apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,تیاری کے لئے کی منتقلی کی معدنیات diff --git a/erpnext/translations/vi.csv b/erpnext/translations/vi.csv index 623866b7a3..ec6f5d7c38 100644 --- a/erpnext/translations/vi.csv +++ b/erpnext/translations/vi.csv @@ -1226,7 +1226,7 @@ DocType: Employee External Work History,Total Experience,Tổng số kinh nghi apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,Đóng gói trượt (s) bị hủy bỏ apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,Lưu chuyển tiền tệ từ đầu tư apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,Vận tải hàng hóa và chuyển tiếp phí -DocType: Material Request Item,Sales Order No,Không bán hàng đặt hàng +DocType: Material Request Item,Sales Order,Không bán hàng đặt hàng DocType: Item Group,Item Group Name,Mục Group Name apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,Lấy apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,Chuyển Vật liệu cho sản xuất diff --git a/erpnext/translations/zh-cn.csv b/erpnext/translations/zh-cn.csv index a4073d355b..2d6fd4a8b4 100644 --- a/erpnext/translations/zh-cn.csv +++ b/erpnext/translations/zh-cn.csv @@ -1212,7 +1212,7 @@ DocType: Employee External Work History,Total Experience,总经验 apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,装箱单( S)取消 apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,从投资现金流 apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,货运及转运费 -DocType: Material Request Item,Sales Order No,销售订单编号 +DocType: Material Request Item,Sales Order,销售订单编号 DocType: Item Group,Item Group Name,品目群组名称 apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,已经过 apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,转移制造材料 diff --git a/erpnext/translations/zh-tw.csv b/erpnext/translations/zh-tw.csv index 5074cddda9..4a2f1469bc 100644 --- a/erpnext/translations/zh-tw.csv +++ b/erpnext/translations/zh-tw.csv @@ -1225,7 +1225,7 @@ DocType: Employee External Work History,Total Experience,總經驗 apps/erpnext/erpnext/stock/doctype/delivery_note/delivery_note.py +261,Packing Slip(s) cancelled,包裝單( S)已取消 apps/erpnext/erpnext/accounts/report/cash_flow/cash_flow.py +29,Cash Flow from Investing,從投資現金流 apps/erpnext/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py +96,Freight and Forwarding Charges,貨運代理費 -DocType: Material Request Item,Sales Order No,銷售訂單號 +DocType: Material Request Item,Sales Order,銷售訂單號 DocType: Item Group,Item Group Name,項目群組名稱 apps/erpnext/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +27,Taken,拍攝 apps/erpnext/erpnext/manufacturing/doctype/production_order/production_order.js +86,Transfer Materials for Manufacture,轉移製造材料