Merge pull request #2316 from nabinhait/stock_reco
Minor fix
diff --git a/erpnext/patches/v4_2/fix_gl_entries_for_stock_transactions.py b/erpnext/patches/v4_2/fix_gl_entries_for_stock_transactions.py
index a7da864..2de3daa 100644
--- a/erpnext/patches/v4_2/fix_gl_entries_for_stock_transactions.py
+++ b/erpnext/patches/v4_2/fix_gl_entries_for_stock_transactions.py
@@ -11,41 +11,42 @@
warehouse_account = frappe.db.sql("""select name, master_name from tabAccount
where ifnull(account_type, '') = 'Warehouse'""")
- warehouses = [d[1] for d in warehouse_account]
- accounts = [d[0] for d in warehouse_account]
+ if warehouse_account:
+ warehouses = [d[1] for d in warehouse_account]
+ accounts = [d[0] for d in warehouse_account]
- stock_vouchers = frappe.db.sql("""select distinct sle.voucher_type, sle.voucher_no
- from `tabStock Ledger Entry` sle
- where sle.warehouse in (%s)
- order by sle.posting_date""" %
- ', '.join(['%s']*len(warehouses)), tuple(warehouses))
+ stock_vouchers = frappe.db.sql("""select distinct sle.voucher_type, sle.voucher_no
+ from `tabStock Ledger Entry` sle
+ where sle.warehouse in (%s)
+ order by sle.posting_date""" %
+ ', '.join(['%s']*len(warehouses)), tuple(warehouses))
- rejected = []
- for voucher_type, voucher_no in stock_vouchers:
- stock_bal = frappe.db.sql("""select sum(stock_value_difference) from `tabStock Ledger Entry`
- where voucher_type=%s and voucher_no =%s and warehouse in (%s)""" %
- ('%s', '%s', ', '.join(['%s']*len(warehouses))), tuple([voucher_type, voucher_no] + warehouses))
+ rejected = []
+ for voucher_type, voucher_no in stock_vouchers:
+ stock_bal = frappe.db.sql("""select sum(stock_value_difference) from `tabStock Ledger Entry`
+ where voucher_type=%s and voucher_no =%s and warehouse in (%s)""" %
+ ('%s', '%s', ', '.join(['%s']*len(warehouses))), tuple([voucher_type, voucher_no] + warehouses))
- account_bal = frappe.db.sql("""select ifnull(sum(ifnull(debit, 0) - ifnull(credit, 0)), 0)
- from `tabGL Entry`
- where voucher_type=%s and voucher_no =%s and account in (%s)
- group by voucher_type, voucher_no""" %
- ('%s', '%s', ', '.join(['%s']*len(accounts))), tuple([voucher_type, voucher_no] + accounts))
+ account_bal = frappe.db.sql("""select ifnull(sum(ifnull(debit, 0) - ifnull(credit, 0)), 0)
+ from `tabGL Entry`
+ where voucher_type=%s and voucher_no =%s and account in (%s)
+ group by voucher_type, voucher_no""" %
+ ('%s', '%s', ', '.join(['%s']*len(accounts))), tuple([voucher_type, voucher_no] + accounts))
- if stock_bal and account_bal and abs(flt(stock_bal[0][0]) - flt(account_bal[0][0])) > 0.1:
- try:
- print voucher_type, voucher_no, stock_bal[0][0], account_bal[0][0]
+ if stock_bal and account_bal and abs(flt(stock_bal[0][0]) - flt(account_bal[0][0])) > 0.1:
+ try:
+ print voucher_type, voucher_no, stock_bal[0][0], account_bal[0][0]
- frappe.db.sql("""delete from `tabGL Entry`
- where voucher_type=%s and voucher_no=%s""", (voucher_type, voucher_no))
+ frappe.db.sql("""delete from `tabGL Entry`
+ where voucher_type=%s and voucher_no=%s""", (voucher_type, voucher_no))
- voucher = frappe.get_doc(voucher_type, voucher_no)
- voucher.make_gl_entries(repost_future_gle=False)
- frappe.db.commit()
- except Exception, e:
- print frappe.get_traceback()
- rejected.append([voucher_type, voucher_no])
- frappe.db.rollback()
+ voucher = frappe.get_doc(voucher_type, voucher_no)
+ voucher.make_gl_entries(repost_future_gle=False)
+ frappe.db.commit()
+ except Exception, e:
+ print frappe.get_traceback()
+ rejected.append([voucher_type, voucher_no])
+ frappe.db.rollback()
- print "Failed to repost: "
- print rejected
+ print "Failed to repost: "
+ print rejected