26. Februar 2009 17:27
Record1 Nr. 1 | Record2 Nr. 1 | ...
Record1 Nr. 2 | Record2 Nr. 2 | ...
Record1 Nr. 3 | Record2 Nr. 3 | ...
Record1 Nr. 4 | | ...
Record1 Nr. 5 | |
SORTING(Number) WHERE(Number=FILTER(1..))
IF Number = 1 THEN BEGIN
LoopRecord1 := Record1.FINDSET;
LoopRecord2 := Record2.FINDSET;
...
END ELSE BEGIN
IF LoopRecord1 THEN
LoopRecord1 := Record1.NEXT <> 0;
IF LoopRecord2 THEN
LoopRecord2 := Record2.NEXT <> 0;
...
END;
IF NOT LoopRecord1 THEN
CLEAR(TempRecord1);
IF NOT LoopRecord2 THEN
CLEAR(TempRecord2);
...
IF (NOT LoopRecord1) AND (NOT LoopRecord2) AND (NOT ...) THEN
CurrReport.BREAK;
26. Februar 2009 18:47
Record1.SetFilter();
.
.
Record2.SetFilter();
.
.
Setrange(Number,1,Record1.COUNT);
if Record2.COUNT > Record1.COUNT then
Setrange(Number,1,Record2.COUNT);
if not Record1.FINDSET and NOT Record2.FINDSET then
Currreport.BREAK;
if record1.Next = 0 then clear(Record1);
if record2.Next = 0 then clear(Record2);
if Number = 1 then begin
if not record1.FINDSET then clear(Record1);
if not record2.FINDSET then clear(Record2);
end else begin
if record1.Next = 0 then clear(Record1);
if record2.Next = 0 then clear(Record2);
end;
26. Februar 2009 19:14