From 8e0fcdb73bde8a909aae3c5eb8c74fe292f7664f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6hmer?= Date: Sun, 15 Feb 2026 20:07:38 +0100 Subject: [PATCH] Added some part datatables optimization --- src/DataTables/PartsDataTable.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/DataTables/PartsDataTable.php b/src/DataTables/PartsDataTable.php index e6ed7c10..d2faba76 100644 --- a/src/DataTables/PartsDataTable.php +++ b/src/DataTables/PartsDataTable.php @@ -334,6 +334,7 @@ final class PartsDataTable implements DataTableTypeInterface ->addSelect('orderdetails') ->addSelect('attachments') ->addSelect('storelocations') + ->addSelect('projectBomEntries') ->from(Part::class, 'part') ->leftJoin('part.category', 'category') ->leftJoin('part.master_picture_attachment', 'master_picture_attachment') @@ -348,6 +349,7 @@ final class PartsDataTable implements DataTableTypeInterface ->leftJoin('part.partUnit', 'partUnit') ->leftJoin('part.partCustomState', 'partCustomState') ->leftJoin('part.parameters', 'parameters') + ->leftJoin('part.project_bom_entries', 'projectBomEntries') ->where('part.id IN (:ids)') ->setParameter('ids', $ids) @@ -366,8 +368,10 @@ final class PartsDataTable implements DataTableTypeInterface ->addGroupBy('partUnit') ->addGroupBy('partCustomState') ->addGroupBy('parameters') + ->addGroupBy('projectBomEntries') ->setHint(Query::HINT_READ_ONLY, true) + ->setHint(Query::HINT_FORCE_PARTIAL_LOAD, false) ; //Get the results in the same order as the IDs were passed