Ok znowu sobie poradziłem
wystarczy powiazać komponent frUserDataset z komponentem MasterData w projekcie freereporta i dynamicznie nadać mu wartosc koncowa rangeendcount := 5;
dalej budujemy procedure:
procedure TForm1.frReport1GetValue(const ParName: string; var ParValue: Variant);
begin
if ParName = 'nr_fv' then ParValue := '12/05/2008';
if ParName = 'sprz_nip' then ParValue := 'nip';
if frUserDataset1.RecNo = 0 then if ParName = 'nazwa_towaru' then ParValue := 'Towar AB';
if frUserDataset1.RecNo = 1 then if ParName = 'nazwa_towaru' then ParValue := 'Towar A';
if frUserDataset1.RecNo = 4 then if ParName = 'nazwa_towaru' then ParValue := 'Towar B';
end;
itd.
po prostu sprawdzamy frUserDataset1.RecNo i przypisujemy warość do parametru.