OnPrintCell
По-моему в парметрах OnPrintCell RowIndex указывает не на номер строки, а на номер подстроки с учетом ЭТАЖА. Т.е. если ячейка имеет 3 этажа, то при вызове OnPrintCell на 2 этаже 1 строки RowIndex =2, 2 строки RowIndex =5..
М.б. это и вызывает ошибку 'List index out of bounds
http://fast-report.com/ru/forum/index.php?showtopic=4816
М.б. это и вызывает ошибку 'List index out of bounds
http://fast-report.com/ru/forum/index.php?showtopic=4816
Комментарии
procedure TfrxCustomCrossView.DoOnCell(Memo: TfrxCustomMemoView;
Row, Column, Cell: Integer; const Value: Variant);
var
v: Variant;
begin
if FOnPrintCell <> '' then
begin
v := VarArrayOf([Integer(Memo), Row div FCellLevels, Column, Cell, GetRowIndexes(Row div FCellLevels), // МОИ
GetColumnIndexes(Column), Value]);
if Report <> nil then
Report.DoParamEvent(FOnPrintCell, v);
end;
if Assigned(FOnBeforePrintCell) then
FOnBeforePrintCell(Memo, Row, Column, Cell, GetRowIndexes(Row),
GetColumnIndexes(Column), Value);
end;
2. По поводу получения значения любой ячейки СrossTab.(http://fast-report.com/ru/forum/index.php?showtopic=4816) М.б. вы добавите ф-цию GetValue в доступные из скрипта методы? Тем более, что у Вас все УЖЕ ЕСТЬ!
Александр, ответте please!