diff --git a/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.php b/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.php index 2600ae4b..0c13d0ad 100644 --- a/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.php +++ b/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.php @@ -66,7 +66,8 @@ SELECT s.id as orderId, s.document_no, s.status, s.parent_name, s.parent_id, s.s ps.main_id, ps_main.ecmproduct_id as main_product_id, p_main.code as main_product_code, - GROUP_CONCAT(a.name SEPARATOR ', ') as actions + a.id AS action_id, + a.indeks AS action_index FROM productionScheduler AS ps LEFT JOIN ecmsaleitems AS si ON ps.ecmsaleitem_id = si.id @@ -78,12 +79,21 @@ FROM productionScheduler AS ps ON ps.main_id = ps_main.id LEFT JOIN ecmproducts AS p_main ON ps_main.ecmproduct_id = p_main.id - LEFT JOIN ecmproductactions pa - ON p.id = pa.ecmproduct_id + LEFT JOIN ( + SELECT epa.ecmproduct_id, epa.ecmaction_id + FROM ecmproductactions epa + JOIN ( + SELECT ecmproduct_id, MIN(position) AS min_pos + FROM ecmproductactions + GROUP BY ecmproduct_id + ) m + ON m.ecmproduct_id = epa.ecmproduct_id + AND m.min_pos = epa.position +) pa_first + ON pa_first.ecmproduct_id = p.id LEFT JOIN ecmactions a - ON pa.ecmaction_id = a.id -WHERE ps.deleted = 0 -GROUP BY ps.id, s.id, si.id, p.id, ps_main.id, p_main.id"; + ON a.id = pa_first.ecmaction_id +WHERE ps.deleted = 0 "; if ($dateFrom != null && $dateTo != null) { $query .= " AND ( @@ -95,7 +105,8 @@ GROUP BY ps.id, s.id, si.id, p.id, ps_main.id, p_main.id"; $query .= " AND ps.id IN ('" . join("','", $ids) . "')"; } - $query .= "ORDER BY s.delivery_date, s.register_date, s.document_no"; + $query .= "GROUP BY ps.id, s.id, si.id, p.id, ps_main.id, p_main.id "; + $query .= "ORDER BY s.delivery_date, s.register_date, s.document_no;"; $rows = $db->query($query); $data = array(); @@ -132,7 +143,8 @@ GROUP BY ps.id, s.id, si.id, p.id, ps_main.id, p_main.id"; $row['mainProductId'] = $r['main_product_id']; $row['mainProductCode'] = strlen($r['main_product_code']) > 20 ? substr($r['main_product_code'], 0, 20) . "..." : $r['main_product_code']; $row['mainProductFullCode'] = $r['main_product_code']; - $row['actions'] = $r['actions']; + $row['action_id'] = $r['action_id']; + $row['action_index'] = $r['action_index']; $data[] = $row; } return $data; diff --git a/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.tpl b/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.tpl index 22ebdad4..c7956587 100644 --- a/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.tpl +++ b/modules/EcmReports/BimIT-Reports/productionSchedule/productionSchedule.tpl @@ -241,7 +241,9 @@ {$ROW.orderSendDate}