[issue fixes] + added fixtures for item attribute and operation
This commit is contained in:
parent
e9b3092167
commit
e8a37949cf
@ -23,7 +23,7 @@ def execute(filters=None):
|
||||
purchase_receipt = d.purchase_receipt
|
||||
elif d.po_detail:
|
||||
purchase_receipt = ", ".join(frappe.db.sql_list("""select distinct parent
|
||||
from `tabPurchase Receipt Item` where docstatus=1 and prevdoc_detail_docname=%s""", d.po_detail))
|
||||
from `tabPurchase Receipt Item` where docstatus=1 and po_detail=%s""", d.po_detail))
|
||||
|
||||
expense_account = d.expense_account or aii_account_map.get(d.company)
|
||||
row = [d.item_code, d.item_name, d.item_group, d.parent, d.posting_date, d.supplier,
|
||||
|
@ -22,7 +22,7 @@ def execute(filters=None):
|
||||
delivery_note = d.delivery_note
|
||||
elif d.so_detail:
|
||||
delivery_note = ", ".join(frappe.db.sql_list("""select distinct parent
|
||||
from `tabDelivery Note Item` where docstatus=1 and prevdoc_detail_docname=%s""", d.so_detail))
|
||||
from `tabDelivery Note Item` where docstatus=1 and so_detail=%s""", d.so_detail))
|
||||
|
||||
row = [d.item_code, d.item_name, d.item_group, d.parent, d.posting_date, d.customer, d.customer_name,
|
||||
d.customer_group, d.debit_to, d.territory, d.project_name, d.company, d.sales_order,
|
||||
|
@ -160,7 +160,7 @@ def get_invoice_po_pr_map(invoice_list):
|
||||
pr_list = [d.purchase_receipt]
|
||||
elif d.po_detail:
|
||||
pr_list = frappe.db.sql_list("""select distinct parent from `tabPurchase Receipt Item`
|
||||
where docstatus=1 and prevdoc_detail_docname=%s""", d.pr_detail)
|
||||
where docstatus=1 and po_detail=%s""", d.pr_detail)
|
||||
|
||||
if pr_list:
|
||||
invoice_po_pr_map.setdefault(d.parent, frappe._dict()).setdefault("purchase_receipt", pr_list)
|
||||
|
@ -160,7 +160,7 @@ def get_invoice_so_dn_map(invoice_list):
|
||||
delivery_note_list = [d.delivery_note]
|
||||
elif d.sales_order:
|
||||
delivery_note_list = frappe.db.sql_list("""select distinct parent from `tabDelivery Note Item`
|
||||
where docstatus=1 and prevdoc_detail_docname=%s""", d.so_detail)
|
||||
where docstatus=1 and so_detail=%s""", d.so_detail)
|
||||
|
||||
if delivery_note_list:
|
||||
invoice_so_dn_map.setdefault(d.parent, frappe._dict()).setdefault("delivery_note", delivery_note_list)
|
||||
|
@ -9,13 +9,13 @@ frappe.provide("erpnext.buying");
|
||||
erpnext.buying.PurchaseOrderController = erpnext.buying.BuyingController.extend({
|
||||
refresh: function(doc, cdt, cdn) {
|
||||
this._super();
|
||||
this.frm.dashboard.reset();
|
||||
// this.frm.dashboard.reset();
|
||||
|
||||
if(doc.docstatus == 1 && doc.status != 'Stopped'){
|
||||
cur_frm.dashboard.add_progress(cint(doc.per_received) + __("% Received"),
|
||||
doc.per_received);
|
||||
cur_frm.dashboard.add_progress(cint(doc.per_billed) + __("% Billed"),
|
||||
doc.per_billed);
|
||||
// cur_frm.dashboard.add_progress(cint(doc.per_received) + __("% Received"),
|
||||
// doc.per_received);
|
||||
// cur_frm.dashboard.add_progress(cint(doc.per_billed) + __("% Billed"),
|
||||
// doc.per_billed);
|
||||
|
||||
if(flt(doc.per_received, 2) < 100)
|
||||
cur_frm.add_custom_button(__('Make Purchase Receipt'),
|
||||
|
@ -59,12 +59,12 @@ erpnext.production_order = {
|
||||
var doc = frm.doc;
|
||||
if (doc.docstatus === 1) {
|
||||
|
||||
if (doc.material_transferred_for_qty < doc.qty) {
|
||||
if (flt(doc.material_transferred_for_qty) < flt(doc.qty)) {
|
||||
frm.add_custom_button(__('Transfer Materials for Manufacture'),
|
||||
cur_frm.cscript['Transfer Raw Materials'], frappe.boot.doctype_icons["Stock Entry"]);
|
||||
}
|
||||
|
||||
if (doc.produced_qty < doc.material_transferred_for_qty) {
|
||||
if (flt(doc.produced_qty) < flt(doc.material_transferred_for_qty)) {
|
||||
frm.add_custom_button(__('Update Finished Goods'),
|
||||
cur_frm.cscript['Update Finished Goods'], frappe.boot.doctype_icons["Stock Entry"]);
|
||||
}
|
||||
|
54
erpnext/setup/page/setup_wizard/fixtures/industry_type.py
Normal file
54
erpnext/setup/page/setup_wizard/fixtures/industry_type.py
Normal file
@ -0,0 +1,54 @@
|
||||
from frappe import _
|
||||
|
||||
items = [
|
||||
_('Accounting'),
|
||||
_('Advertising'),
|
||||
_('Aerospace'),
|
||||
_('Agriculture'),
|
||||
_('Airline'),
|
||||
_('Apparel & Accessories'),
|
||||
_('Automotive'),
|
||||
_('Banking'),
|
||||
_('Biotechnology'),
|
||||
_('Broadcasting'),
|
||||
_('Brokerage'),
|
||||
_('Chemical'),
|
||||
_('Computer'),
|
||||
_('Consulting'),
|
||||
_('Consumer Products'),
|
||||
_('Cosmetics'),
|
||||
_('Defense'),
|
||||
_('Department Stores'),
|
||||
_('Education'),
|
||||
_('Electronics'),
|
||||
_('Energy'),
|
||||
_('Entertainment & Leisure'),
|
||||
_('Executive Search'),
|
||||
_('Financial Services'),
|
||||
_('Food, Beverage & Tobacco'),
|
||||
_('Grocery'),
|
||||
_('Health Care'),
|
||||
_('Internet Publishing'),
|
||||
_('Investment Banking'),
|
||||
_('Legal'),
|
||||
_('Manufacturing'),
|
||||
_('Motion Picture & Video'),
|
||||
_('Music'),
|
||||
_('Newspaper Publishers'),
|
||||
_('Online Auctions'),
|
||||
_('Pension Funds'),
|
||||
_('Pharmaceuticals'),
|
||||
_('Private Equity'),
|
||||
_('Publishing'),
|
||||
_('Real Estate'),
|
||||
_('Retail & Wholesale'),
|
||||
_('Securities & Commodity Exchanges'),
|
||||
_('Service'),
|
||||
_('Soap & Detergent'),
|
||||
_('Software'),
|
||||
_('Sports'),
|
||||
_('Technology'),
|
||||
_('Telecommunications'),
|
||||
_('Television'),
|
||||
_('Transportation'),
|
||||
_('Venture Capital')]
|
165
erpnext/setup/page/setup_wizard/fixtures/operations.py
Normal file
165
erpnext/setup/page/setup_wizard/fixtures/operations.py
Normal file
@ -0,0 +1,165 @@
|
||||
# source: http://en.wikipedia.org/wiki/List_of_manufacturing_processes"
|
||||
|
||||
from __future__ import unicode_literals
|
||||
from frappe import _
|
||||
|
||||
items = [
|
||||
_("Centrifugal casting"),
|
||||
_("Continuous casting"),
|
||||
_("Die casting"),
|
||||
_("Evaporative-pattern casting"),
|
||||
_("Full-mold casting"),
|
||||
_("Lost-foam casting"),
|
||||
_("Investment casting"),
|
||||
_("Countergravity casting"),
|
||||
_("Permanent mold casting"),
|
||||
_("Resin casting"),
|
||||
_("Sand casting"),
|
||||
_("Shell molding"),
|
||||
_("Spray forming"),
|
||||
_("Vacuum molding"),
|
||||
_("Molding"),
|
||||
_("Compaction plus sintering"),
|
||||
_("Hot isostatic pressing"),
|
||||
_("Metal injection molding"),
|
||||
_("Injection molding"),
|
||||
_("Compression molding"),
|
||||
_("Blow molding"),
|
||||
_("Dip molding"),
|
||||
_("Rotational molding"),
|
||||
_("Thermoforming"),
|
||||
_("Laminating"),
|
||||
_("Shrink fitting"),
|
||||
_("Shrink wrapping"),
|
||||
_("End tube forming"),
|
||||
_("Tube beading"),
|
||||
_("Forging"),
|
||||
_("Rolling"),
|
||||
_("Cold rolling"),
|
||||
_("Hot rolling"),
|
||||
_("Cryorolling"),
|
||||
_("Cross-rolling"),
|
||||
_("Pressing"),
|
||||
_("Embossing"),
|
||||
_("Stretch forming"),
|
||||
_("Blanking"),
|
||||
_("Drawing"),
|
||||
_("Bulging"),
|
||||
_("Necking"),
|
||||
_("Nosing"),
|
||||
_("Deep drawing"),
|
||||
_("Bending"),
|
||||
_("Hemming"),
|
||||
_("Shearing"),
|
||||
_("Piercing"),
|
||||
_("Trimming"),
|
||||
_("Shaving"),
|
||||
_("Notching"),
|
||||
_("Perforating"),
|
||||
_("Nibbling"),
|
||||
_("Lancing"),
|
||||
_("Cutting"),
|
||||
_("Stamping"),
|
||||
_("Coining"),
|
||||
_("Straight shearing"),
|
||||
_("Slitting"),
|
||||
_("Redrawing"),
|
||||
_("Ironing"),
|
||||
_("Flattening"),
|
||||
_("Swaging"),
|
||||
_("Spinning"),
|
||||
_("Peening"),
|
||||
_("Explosive forming"),
|
||||
_("Electroforming"),
|
||||
_("Staking"),
|
||||
_("Seaming"),
|
||||
_("Flanging"),
|
||||
_("Straightening"),
|
||||
_("Decambering"),
|
||||
_("Cold sizing"),
|
||||
_("Hubbing"),
|
||||
_("Hot metal gas forming"),
|
||||
_("Curling"),
|
||||
_("Hydroforming"),
|
||||
_("Machining"),
|
||||
_("Milling"),
|
||||
_("Hammering"),
|
||||
_("Smelting"),
|
||||
_("Refining"),
|
||||
_("Annealing"),
|
||||
_("Pickling"),
|
||||
_("Coating"),
|
||||
_("Turning"),
|
||||
_("Facing"),
|
||||
_("Boring"),
|
||||
_("Knurling"),
|
||||
_("Hard turning"),
|
||||
_("Drilling"),
|
||||
_("Reaming"),
|
||||
_("Countersinking"),
|
||||
_("Tapping"),
|
||||
_("Sawing"),
|
||||
_("Filing"),
|
||||
_("Broaching"),
|
||||
_("Shaping"),
|
||||
_("Planing"),
|
||||
_("Double housing"),
|
||||
_("Abrasive jet machining"),
|
||||
_("Water jet cutting"),
|
||||
_("Photochemical machining"),
|
||||
_("Honing"),
|
||||
_("Electro-chemical grinding"),
|
||||
_("Finishing & industrial finishing"),
|
||||
_("Abrasive blasting"),
|
||||
_("Buffing"),
|
||||
_("Burnishing"),
|
||||
_("Electroplating"),
|
||||
_("Electropolishing"),
|
||||
_("Magnetic field-assisted finishing"),
|
||||
_("Etching"),
|
||||
_("Linishing"),
|
||||
_("Mass finishing"),
|
||||
_("Tumbling"),
|
||||
_("Spindle finishing"),
|
||||
_("Vibratory finishing"),
|
||||
_("Plating"),
|
||||
_("Polishing"),
|
||||
_("Superfinishing"),
|
||||
_("Wire brushing"),
|
||||
_("Routing"),
|
||||
_("Hobbing"),
|
||||
_("Ultrasonic machining"),
|
||||
_("Electron beam machining"),
|
||||
_("Electrochemical machining"),
|
||||
_("Laser cutting"),
|
||||
_("Laser drilling"),
|
||||
_("Grinding"),
|
||||
_("Gashing"),
|
||||
_("Biomachining"),
|
||||
_("Joining"),
|
||||
_("Welding"),
|
||||
_("Brazing"),
|
||||
_("Sintering"),
|
||||
_("Adhesive bonding"),
|
||||
_("Nailing"),
|
||||
_("Screwing"),
|
||||
_("Riveting"),
|
||||
_("Clinching"),
|
||||
_("Pinning"),
|
||||
_("Stitching"),
|
||||
_("Stapling"),
|
||||
_("Press fitting"),
|
||||
_("3D printing"),
|
||||
_("Direct metal laser sintering"),
|
||||
_("Fused deposition modeling"),
|
||||
_("Laminated object manufacturing"),
|
||||
_("Laser engineered net shaping"),
|
||||
_("Selective laser sintering"),
|
||||
_("Mining"),
|
||||
_("Quarrying"),
|
||||
_("Blasting"),
|
||||
_("Woodworking"),
|
||||
_("Lapping"),
|
||||
_("Morticing"),
|
||||
_("Crushing"),
|
||||
_("Packaging and labeling")]
|
@ -137,64 +137,31 @@ def install(country=None):
|
||||
{'doctype': 'Activity Type', 'activity_type': _('Communication')},
|
||||
{'doctype': 'Activity Type', 'activity_type': 'Manufacturing'},
|
||||
|
||||
# Industry Type
|
||||
{'doctype': 'Industry Type', 'industry': _('Accounting')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Advertising')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Aerospace')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Agriculture')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Airline')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Apparel & Accessories')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Automotive')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Banking')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Biotechnology')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Broadcasting')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Brokerage')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Chemical')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Computer')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Consulting')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Consumer Products')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Cosmetics')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Defense')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Department Stores')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Education')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Electronics')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Energy')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Entertainment & Leisure')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Executive Search')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Financial Services')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Food, Beverage & Tobacco')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Grocery')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Health Care')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Internet Publishing')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Investment Banking')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Legal')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Manufacturing')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Motion Picture & Video')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Music')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Newspaper Publishers')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Online Auctions')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Pension Funds')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Pharmaceuticals')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Private Equity')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Publishing')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Real Estate')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Retail & Wholesale')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Securities & Commodity Exchanges')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Service')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Soap & Detergent')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Software')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Sports')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Technology')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Telecommunications')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Television')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Transportation')},
|
||||
{'doctype': 'Industry Type', 'industry': _('Venture Capital')},
|
||||
{'doctype': "Item Attribute", "attribute_name": _("Size"), "item_attribute_values": [
|
||||
{"attribute_value": _("Extra Small"), "abbr": "XS"},
|
||||
{"attribute_value": _("Small"), "abbr": "S"},
|
||||
{"attribute_value": _("Medium"), "abbr": "M"},
|
||||
{"attribute_value": _("Large"), "abbr": "L"},
|
||||
{"attribute_value": _("Extra Large"), "abbr": "XL"}
|
||||
]},
|
||||
|
||||
{'doctype': "Item Attribute", "attribute_name": _("Colour"), "item_attribute_values": [
|
||||
{"attribute_value": _("Red"), "abbr": "RED"},
|
||||
{"attribute_value": _("Green"), "abbr": "GRE"},
|
||||
{"attribute_value": _("Blue"), "abbr": "BLU"},
|
||||
{"attribute_value": _("Black"), "abbr": "BLA"},
|
||||
{"attribute_value": _("White"), "abbr": "WHI"}
|
||||
]},
|
||||
|
||||
{'doctype': "Email Account", "email_id": "sales@example.com", "append_to": "Lead"},
|
||||
{'doctype': "Email Account", "email_id": "support@example.com", "append_to": "Issue"},
|
||||
{'doctype': "Email Account", "email_id": "jobs@example.com", "append_to": "Job Applicant"}
|
||||
]
|
||||
|
||||
from erpnext.setup.page.setup_wizard.fixtures import industry_type, operations
|
||||
records += [{"doctype":"Industry Type", "industry": d} for d in industry_type.items]
|
||||
records += [{"doctype":"Operation", "operation": d} for d in operations.items]
|
||||
|
||||
from frappe.modules import scrub
|
||||
for r in records:
|
||||
doc = frappe.new_doc(r.get("doctype"))
|
||||
|
@ -427,7 +427,7 @@ class StockEntry(StockController):
|
||||
pro_doc = frappe.get_doc("Production Order", self.production_order)
|
||||
_validate_production_order(pro_doc)
|
||||
pro_doc.run_method("update_status")
|
||||
if self.purpose == "Manufacture":
|
||||
if self.purpose in ("Manufacture", "Material Transfer for Manufacture"):
|
||||
pro_doc.run_method("update_production_order_qty")
|
||||
self.update_planned_qty(pro_doc)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user