From 99d9d845bd6a1bc332dfa1ca5866087f3268cf1f Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Sat, 8 Aug 2026 14:41:34 +0530 Subject: [PATCH] fix: don't demand raw material transfer for semi FG job cards on submit validate_transfer_qty uses an empty finished_good to detect legacy job cards, and unlike validate_semi_finished_goods it ignores skip_material_transfer. A job card tracking semi finished goods whose operation had no finished_good fell into the legacy branch and could not be submitted even with 'Skip Material Transfer' checked on the work order. Return early for semi FG job cards; validate_semi_finished_goods already enforces the transfer requirement for them and honours skip_material_transfer. (cherry picked from commit 6c8f0b9b56778349f02ad14b21c1de8ad557f12a) --- erpnext/manufacturing/doctype/job_card/job_card.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/erpnext/manufacturing/doctype/job_card/job_card.py b/erpnext/manufacturing/doctype/job_card/job_card.py index 3b4f8008f08..accde70fa97 100644 --- a/erpnext/manufacturing/doctype/job_card/job_card.py +++ b/erpnext/manufacturing/doctype/job_card/job_card.py @@ -845,6 +845,9 @@ class JobCard(Document): ) def validate_transfer_qty(self): + if self.track_semi_finished_goods: + return + if ( not self.finished_good and not self.is_corrective_job_card