So nach längerem Nachdenken, Ja die "WHERE" Klausel schränkt das ganze ein. Allerdings funktioniert die "AND" Verknüpfung im JOIN auch nicht.
Das ganze mit der Hilfstabelle, ist eigentlich auch nicht der richtige Weg. Betrachte ich das ganze nämlich auf das Gesamtsystem, wäre die Umsetzung über eine Hilfstabelle wahrscheinlich nicht sinnvoll.
Es gibt System, die verfügen nicht nur über 256/512 Meldergruppen, sondern sind frei Konfigurierbar von z.B. 1 - 99999.
Somit wird das ganze wieder eine Formatierungsaufgabe.
Mein aktueller Lösungsansatz (So sollte es vermutlich funktioniere) sieht folgendermaßen aus:
1. Abrage der zugehörigen Meldergruppen zu der entsprechenden Anlagennummer:
SELECT * FROM MGV_EMA WHERE Anlagennummer = 1
2. Einen Record_Array oder eine Objekt erstellen und
Query zuweisen
Delphi-Quellcode:
type
T_MGV_EMA =
record
MG:
string;
Name:
string;
end;
...
var
F_MGV_EMA :
array of T_MGV_EMA
...
//Query dem Record über Schleife zuweisen
...
//Record prüfen und bearbeiten
...
//Record einem tfrxUserDataSet zuweisen
//Report erstellen
Jetzt stellt sich mir halt nur die Frage, kann es wirklich so aufwendig sein, eine einzelne däml... Leerzeile in eine Reporttabelle einzufügen, wenn die Spalte (1) nicht fortlaufend nummeriert ist.
Im Anhang mal ein Beispiel, von den aktuellen Dokumenten (Wir lösen das zur Zeit über Excel, jedoch manuell)