From ca77574a6666b3edaff025cb8f21e3e83c882f1f Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Thu, 26 Sep 2013 16:16:44 +0530 Subject: [PATCH] [fix] [minor] only post sl entries if stock item exists --- stock/stock_ledger.py | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/stock/stock_ledger.py b/stock/stock_ledger.py index a3af5ade81..197aa0d5ab 100644 --- a/stock/stock_ledger.py +++ b/stock/stock_ledger.py @@ -11,29 +11,31 @@ import json class NegativeStockError(webnotes.ValidationError): pass def make_sl_entries(sl_entries, is_amended=None): - from stock.utils import update_bin + if sl_entries: + from stock.utils import update_bin - cancel = True if sl_entries[0].get("is_cancelled") == "Yes" else False - if cancel: - set_as_cancel(sl_entries[0].get('voucher_no'), sl_entries[0].get('voucher_type')) + cancel = True if sl_entries[0].get("is_cancelled") == "Yes" else False + if cancel: + set_as_cancel(sl_entries[0].get('voucher_no'), sl_entries[0].get('voucher_type')) - for sle in sl_entries: - sle_id = None - if sle.get('is_cancelled') == 'Yes': - sle['actual_qty'] = -flt(sle['actual_qty']) + for sle in sl_entries: + sle_id = None + if sle.get('is_cancelled') == 'Yes': + sle['actual_qty'] = -flt(sle['actual_qty']) - if sle.get("actual_qty"): - sle_id = make_entry(sle) + if sle.get("actual_qty"): + sle_id = make_entry(sle) - args = sle.copy() - args.update({ - "sle_id": sle_id, - "is_amended": is_amended - }) - update_bin(args) + args = sle.copy() + args.update({ + "sle_id": sle_id, + "is_amended": is_amended + }) + update_bin(args) - if cancel: - delete_cancelled_entry(sl_entries[0].get('voucher_type'), sl_entries[0].get('voucher_no')) + if cancel: + delete_cancelled_entry(sl_entries[0].get('voucher_type'), + sl_entries[0].get('voucher_no')) def set_as_cancel(voucher_type, voucher_no): webnotes.conn.sql("""update `tabStock Ledger Entry` set is_cancelled='Yes',