Skip to content

Commit

Permalink
fix: do not update item price and last purchase rate for inter transf… (
Browse files Browse the repository at this point in the history
#42616)

fix: do not update item price and last purchase rate for inter transfer transaction
  • Loading branch information
rohitwaghchaure authored Aug 5, 2024
1 parent 0f0b196 commit c8af544
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 2 deletions.
3 changes: 3 additions & 0 deletions erpnext/buying/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
def update_last_purchase_rate(doc, is_submit) -> None:
"""updates last_purchase_rate in item table for each item"""

if doc.get("is_internal_supplier"):
return

this_purchase_date = getdate(doc.get("posting_date") or doc.get("transaction_date"))

for d in doc.get("items"):
Expand Down
6 changes: 5 additions & 1 deletion erpnext/public/js/controllers/transaction.js
Original file line number Diff line number Diff line change
Expand Up @@ -534,6 +534,8 @@ erpnext.TransactionController = class TransactionController extends erpnext.taxe
quotation_to: me.frm.doc.quotation_to,
supplier: me.frm.doc.supplier,
currency: me.frm.doc.currency,
is_internal_supplier: me.frm.doc.is_internal_supplier,
is_internal_customer: me.frm.doc.is_internal_customer,
update_stock: update_stock,
conversion_rate: me.frm.doc.conversion_rate,
price_list: me.frm.doc.selling_price_list || me.frm.doc.buying_price_list,
Expand Down Expand Up @@ -1660,7 +1662,9 @@ erpnext.TransactionController = class TransactionController extends erpnext.taxe
"update_stock": ['Sales Invoice', 'Purchase Invoice'].includes(me.frm.doc.doctype) ? cint(me.frm.doc.update_stock) : 0,
"conversion_factor": me.frm.doc.conversion_factor,
"pos_profile": me.frm.doc.doctype == 'Sales Invoice' ? me.frm.doc.pos_profile : '',
"coupon_code": me.frm.doc.coupon_code
"coupon_code": me.frm.doc.coupon_code,
"is_internal_supplier": me.frm.doc.is_internal_supplier,
"is_internal_customer": me.frm.doc.is_internal_customer,
};
}

Expand Down
9 changes: 8 additions & 1 deletion erpnext/stock/get_item_details.py
Original file line number Diff line number Diff line change
Expand Up @@ -820,6 +820,9 @@ def get_price_list_rate(args, item_doc, out=None):
if price_list_rate is None or frappe.db.get_single_value(
"Stock Settings", "update_existing_price_list_rate"
):
if args.get("is_internal_supplier") or args.get("is_internal_customer"):
return out

if args.price_list and args.rate:
insert_item_price(args)

Expand All @@ -831,7 +834,11 @@ def get_price_list_rate(args, item_doc, out=None):
if frappe.db.get_single_value("Buying Settings", "disable_last_purchase_rate"):
return out

if not out.price_list_rate and args.transaction_type == "buying":
if (
not args.get("is_internal_supplier")
and not out.price_list_rate
and args.transaction_type == "buying"
):
from erpnext.stock.doctype.item.item import get_last_purchase_details

out.update(get_last_purchase_details(item_doc.name, args.name, args.conversion_rate))
Expand Down

0 comments on commit c8af544

Please sign in to comment.