Skip to content

Commit

Permalink
Merge pull request #24882 from rohitwaghchaure/fixed-validation-for-j…
Browse files Browse the repository at this point in the history
…ob-card-v13-beta

fix: validation of job card in stock entry
  • Loading branch information
rohitwaghchaure authored Mar 15, 2021
2 parents 51c500d + 00a0e8d commit e838d1c
Show file tree
Hide file tree
Showing 4 changed files with 136 additions and 354 deletions.
18 changes: 16 additions & 2 deletions erpnext/manufacturing/doctype/job_card/job_card.py
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,17 @@ def get_current_operation_data(self):
fields = ["sum(total_time_in_mins) as time_in_mins", "sum(total_completed_qty) as completed_qty"],
filters = {"docstatus": 1, "work_order": self.work_order, "operation_id": self.operation_id})

def set_transferred_qty_in_job_card(self, ste_doc):
for row in ste_doc.items:
if not row.job_card_item: continue

qty = frappe.db.sql(""" SELECT SUM(qty) from `tabStock Entry Detail` sed, `tabStock Entry` se
WHERE sed.job_card_item = %s and se.docstatus = 1 and sed.parent = se.name and
se.purpose = 'Material Transfer for Manufacture'
""", (row.job_card_item))[0][0]

frappe.db.set_value('Job Card Item', row.job_card_item, 'transferred_qty', flt(qty))

def set_transferred_qty(self, update_status=False):
if not self.items:
self.transferred_qty = self.for_quantity if self.docstatus == 1 else 0
Expand All @@ -279,7 +290,8 @@ def set_transferred_qty(self, update_status=False):
self.transferred_qty = frappe.db.get_value('Stock Entry', {
'job_card': self.name,
'work_order': self.work_order,
'docstatus': 1
'docstatus': 1,
'purpose': 'Material Transfer for Manufacture'
}, 'sum(fg_completed_qty)') or 0

self.db_set("transferred_qty", self.transferred_qty)
Expand Down Expand Up @@ -420,6 +432,7 @@ def set_missing_values(source, target):
target.purpose = "Material Transfer for Manufacture"
target.from_bom = 1
target.fg_completed_qty = source.get('for_quantity', 0) - source.get('transferred_qty', 0)
target.set_transfer_qty()
target.calculate_rate_and_amount()
target.set_missing_values()
target.set_stock_entry_type()
Expand All @@ -437,9 +450,10 @@ def set_missing_values(source, target):
"field_map": {
"source_warehouse": "s_warehouse",
"required_qty": "qty",
"uom": "stock_uom"
"name": "job_card_item"
},
"postprocess": update_item,
"condition": lambda doc: doc.required_qty > 0
}
}, target_doc, set_missing_values)

Expand Down
Loading

0 comments on commit e838d1c

Please sign in to comment.