Можно ли это сделать?
На MasterData будут данные (Cur, Amount):
USD 222
USD 333
RUR 444
....
и т.д.
Можно ли средствами FR сделать суммирование по валютам, чтобы в Footer'е было что-нибудь похожее на:
Итого: USD: 555
RUR: 444
... и т.д. причем в идеале, чтобы валюты не зашивать, а автоматом определялись какие в текущем списке есть...
в перле одна строчка $sum[$Cur] += $Amount
USD 222
USD 333
RUR 444
....
и т.д.
Можно ли средствами FR сделать суммирование по валютам, чтобы в Footer'е было что-нибудь похожее на:
Итого: USD: 555
RUR: 444
... и т.д. причем в идеале, чтобы валюты не зашивать, а автоматом определялись какие в текущем списке есть...
в перле одна строчка $sum[$Cur] += $Amount
Комментарии
Можно ...
Смотри в сторону массивов и переменных ...
Суммы по валютам складываешь в массив на Master Data.OnBeforePrint.
Количество валют ведёшь в отдельной переменной.
На Master Footer создаёшь SubReport, в котором Master Data = виртуальный датасет с количеством записей = количество валют
Тогда вопрос - а можно как-нибудь узнать размер массива?
делается две мемки - в одну идут названия валют, в другую - сумму
в onbeforeprint masterdata
begin
for i:=0 to (Memo24.Lines.Count-1) do
begin
if Memo24.Lines=[ActivePlugin.cds."Cur"] then
begin
Memo25.Lines:=Memo25.Lines+[ActivePlugin.cds."Amount"];
tempBool:=true;
end;
end;
if tempBool=false then
begin
Memo24.Lines.Add([ActivePlugin.cds."Cur"]);
Memo25.Lines.Add([ActivePlugin.cds."Amount"]);
end;
tempBool:=false;