diff --git a/InvenTree/company/templates/company/supplier_part_orders.html b/InvenTree/company/templates/company/supplier_part_orders.html
index 02d85b1d99..381a2941e9 100644
--- a/InvenTree/company/templates/company/supplier_part_orders.html
+++ b/InvenTree/company/templates/company/supplier_part_orders.html
@@ -10,10 +10,22 @@
{% trans "Supplier Part Orders" %}
-{% include "order/po_table.html" with orders=part.purchase_orders %}
+
+
+
{% endblock %}
{% block js_ready %}
{{ block.super }}
+
+loadPurchaseOrderTable($("#purchase-order-table"), {
+ url: "{% url 'api-po-list' %}?supplier_part={{ part.id }}",
+});
+
{% endblock %}
\ No newline at end of file
diff --git a/InvenTree/order/api.py b/InvenTree/order/api.py
index 69580c3bb2..2e8deb05c8 100644
--- a/InvenTree/order/api.py
+++ b/InvenTree/order/api.py
@@ -18,6 +18,7 @@ from InvenTree.status_codes import OrderStatus
import os
from part.models import Part
+from company.models import SupplierPart
from .models import PurchaseOrder, PurchaseOrderLineItem
from .serializers import POSerializer, POLineItemSerializer
@@ -62,6 +63,14 @@ class POList(generics.ListCreateAPIView):
except (Part.DoesNotExist, ValueError):
pass
+ # Attempt to filter by supplier part
+ if 'supplier_part' in request.GET:
+ try:
+ supplier_part = SupplierPart.objects.get(pk=request.GET['supplier_part'])
+ queryset = queryset.filter(id__in=[p.id for p in supplier_part.purchase_orders()])
+ except (ValueError, SupplierPart.DoesNotExist):
+ pass
+
data = queryset.values(
'pk',
'supplier',
diff --git a/InvenTree/templates/stock_table.html b/InvenTree/templates/stock_table.html
index b7e84f24dd..31eaf30bb7 100644
--- a/InvenTree/templates/stock_table.html
+++ b/InvenTree/templates/stock_table.html
@@ -3,9 +3,7 @@