Ошибка при создании кросс-отчёта

kotkot
отредактировано 19:21 Раздел: FastReport 2.xx VCL
Работаю с версией 2.52.
При создании кросс-отчёта (TfrCross.Build) выполняется ряд операций, в том числе следующая процедура:
  procedure FormGroup(NewGroup, OldGroup: String; Direction: Boolean);
  ...
    procedure FormGroup1(Index: Integer);
    ...
    begin
    ...
      if Direction then
      begin
        if HasTotal(FColFields[Index]) then
          Cell[Rows[0], s, 0] := 0
      end
      else
        if HasTotal(FRowFields[Index]) then
          Cell[s, Columns[0], 0] := 0;
    end;

  begin
    ...
    frSetCommaText(OldGroup, sl1);
    frSetCommaText(NewGroup, sl2);
    for i := 0 to sl1.Count - 1 do
      if (NewGroup = '') or (sl1[i] <> sl2[i]) then
      begin
        for j := sl1.Count - 1 downto i do
          FormGroup1(j);
        break;
      end;
    ...
  end;

Допустим я создаю следующий отчёт : слева клиенты, сверху год, в середине число покупок за год. Если в имени клиента пресудствует символ ";", то программа вылетает с ошибкой, т.к. функция frSetCommaText() возвращает неправильный список. Как побороть проблему ??

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.