Skip to content

Commit

Permalink
fix: Item-wise Sales and Purchase register with no item codes #41373
Browse files Browse the repository at this point in the history
(cherry picked from commit 1b45ecf)

# Conflicts:
#	erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.py
#	erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py
  • Loading branch information
Poorvi-R-Bhat authored and mergify[bot] committed Jun 9, 2024
1 parent 5d97c7c commit bc24e75
Show file tree
Hide file tree
Showing 4 changed files with 81 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -310,8 +310,8 @@ def get_conditions(filters):

return conditions


def get_items(filters, additional_query_columns):
<<<<<<< HEAD
conditions = get_conditions(filters)
if additional_query_columns:
additional_query_columns = "," + ",".join(additional_query_columns)
Expand Down Expand Up @@ -339,6 +339,40 @@ def get_items(filters, additional_query_columns):
filters,
as_dict=1,
)
=======
pi = frappe.qb.DocType('Purchase Invoice')
pii = frappe.qb.DocType('Purchase Invoice Item')
Item = frappe.qb.DocType('Item')
query = (frappe.qb.from_(pi)
.join(pii).on(pi.name == pii.parent)
.left_join(Item).on(pii.item_code == Item.name)
.select(
pii.name.as_('pii_name'), pii.parent,
pi.posting_date, pi.credit_to, pi.company,
pi.supplier, pi.remarks, pi.base_net_total,
pi.unrealized_profit_loss_account,
pii.item_code, pii.description, pii.item_group,
pii.item_name.as_('pi_item_name'), pii.item_group.as_('pi_item_group'),
Item.item_name.as_('i_item_name'), Item.item_group.as_('i_item_group'),
pii.project, pii.purchase_order,
pii.purchase_receipt, pii.po_detail,
pii.expense_account, pii.stock_qty,
pii.stock_uom, pii.base_net_amount,
pi.supplier_name, pi.mode_of_payment
)
.where(pi.docstatus == 1))

if additional_query_columns:
query = query.select(*additional_query_columns)

if filters.get("supplier"):
query = query.where(pi.supplier == filters['supplier'])
if filters.get("company"):
query = query.where(pi.company == filters['company'])

return query.run(as_dict=True)

>>>>>>> 1b45ecfcae (fix: Item-wise Sales and Purchase register with no item codes #41373)


def get_aii_accounts():
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -388,6 +388,7 @@ def get_group_by_conditions(filters, doctype):
return "ORDER BY `tab{}`.{}".format(doctype, frappe.scrub(filters.get("group_by")))


<<<<<<< HEAD
def get_items(filters, additional_query_columns, additional_conditions=None):
conditions = get_conditions(filters, additional_conditions)
if additional_query_columns:
Expand Down Expand Up @@ -420,6 +421,48 @@ def get_items(filters, additional_query_columns, additional_conditions=None):
filters,
as_dict=1,
) # nosec
=======
def get_items(filters, additional_query_columns,additional_conditions=None):
si = frappe.qb.DocType('Sales Invoice')
sii = frappe.qb.DocType('Sales Invoice Item')
Item = frappe.qb.DocType('Item')

query = (
frappe.qb.from_(si)
.join(sii).on(si.name == sii.parent)
.left_join(Item).on(sii.item_code == Item.name)
.select(
sii.name, sii.parent,
si.posting_date, si.debit_to,
si.unrealized_profit_loss_account,
si.is_internal_customer,
si.customer, si.remarks,
si.territory, si.company, si.base_net_total,
sii.project,
sii.item_code, sii.description,
sii.item_name, sii.item_group,
sii.item_name.as_('si_item_name'), sii.item_group.as_('si_item_group'),
Item.item_name.as_('i_item_name'), Item.item_group.as_('i_item_group'),
sii.sales_order, sii.delivery_note,
sii.income_account, sii.cost_center,
sii.enable_deferred_revenue, sii.deferred_revenue_account,
sii.stock_qty, sii.stock_uom,
sii.base_net_rate, sii.base_net_amount,
si.customer_name, si.customer_group, sii.so_detail,
si.update_stock, sii.uom, sii.qty
)
.where(si.docstatus == 1)
)
if filters.get("customer"):
query = query.where(si.customer == filters['customer'])

if filters.get("customer_group"):
query = query.where(si.customer_group == filters['customer_group'])

return query.run(as_dict=True)


>>>>>>> 1b45ecfcae (fix: Item-wise Sales and Purchase register with no item codes #41373)


def get_delivery_notes_against_sales_order(item_list):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -376,10 +376,8 @@ def get_account_columns(invoice_list, include_payments):

def get_invoices(filters, additional_query_columns):
pi = frappe.qb.DocType("Purchase Invoice")
pii = frappe.qb.DocType("Purchase Invoice Item")
query = (
frappe.qb.from_(pi)
.left_join(pii).on(pi.name == pii.parent)
.select(
ConstantColumn("Purchase Invoice").as_("doctype"),
pi.name,
Expand All @@ -397,7 +395,7 @@ def get_invoices(filters, additional_query_columns):
pi.outstanding_amount,
pi.mode_of_payment,
)
.where((pi.docstatus == 1) & pii.item_code.isnotnull())
.where((pi.docstatus == 1))
.orderby(pi.posting_date, pi.name, order=Order.desc)
)

Expand Down
6 changes: 2 additions & 4 deletions erpnext/accounts/report/sales_register/sales_register.py
Original file line number Diff line number Diff line change
Expand Up @@ -414,11 +414,9 @@ def get_account_columns(invoice_list, include_payments):

def get_invoices(filters, additional_query_columns):
si = frappe.qb.DocType("Sales Invoice")
sii = frappe.qb.DocType("Sales Invoice Item")
query = (
frappe.qb.from_(si)
.left_join(sii).on(si.name == sii.parent)
.select(
.select(
ConstantColumn("Sales Invoice").as_("doctype"),
si.name,
si.posting_date,
Expand All @@ -439,7 +437,7 @@ def get_invoices(filters, additional_query_columns):
si.represents_company,
si.company,
)
.where((si.docstatus == 1) & sii.item_code.isnotnull())
.where((si.docstatus == 1))
.orderby(si.posting_date, si.name, order=Order.desc)
)

Expand Down

0 comments on commit bc24e75

Please sign in to comment.