powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FastReport Cross-tab не работает свойство AllowExpressions
7 сообщений из 7, страница 1 из 1
FastReport Cross-tab не работает свойство AllowExpressions
    #40110022
OlyaLora
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток!

Вопрос, собственно, предельно прост. При попытке изменить свойство AllowExpressions в значение 'True', fastreport самостоятельно меняет это свойство на 'False'.
Данное свойство нужно мне для того, чтоб обозвать итоги в cross-tabe не "Итого"/"Total"/"Итого по"/"Всего", а "Итого по <конкретное значение>". Допустим, итого по лицевому счету такому-то заказов...
При попытке сделать без этого свойства, содержимое ячейки так и выводится безо всяких значений полей, т е что-то типа "Итого по [MyID]".

Может, не хватает каких-либо свойств на самом cross-tab?

Версия FastReport 6
...
Рейтинг: 0 / 0
FastReport Cross-tab не работает свойство AllowExpressions
    #40110090
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разработчики ЦЕЛЕНАПРАВЛЕННО отключают AllowExpressions при инициализации мемок в Кроссе
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
procedure TfrxCustomCrossView.InitMemos(AddToScript: Boolean);
var
  i: Integer;
  m: TfrxCustomMemoView;
  NestedObjects: TList;
begin
  ...

  for i := 0 to FRowMemos.Count - 1 do
  begin
    m := RowMemos[i];
    m.GapX := FGapX;
    m.GapY := FGapY;
    m.AllowMirrorMode := AllowMirrorMode;
    m.Visible := true;
    m.Restrictions := m.Restrictions - [rfDontMove, rfDontSize];
    m.Name := Name + 'Row' + IntToStr(i);
    if AddToScript then
      Report.Script.AddObject(m.Name, m);

    m := RowTotalMemos[i];
    m.GapX := FGapX;
    m.GapY := FGapY;
    m.AllowMirrorMode := AllowMirrorMode;
    m.AllowExpressions := False;
    m.Name := Name + 'RowTotal' + IntToStr(i);
    if AddToScript then
      Report.Script.AddObject(m.Name, m);
  end;



Если это отключить, то состояние AllowExpressions запоминается, но не думаю, что это правильно. Правильно будет так
тест
...
Рейтинг: 0 / 0
FastReport Cross-tab не работает свойство AllowExpressions
    #40110103
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно в промежуточный итог вставить значение
...
Рейтинг: 0 / 0
FastReport Cross-tab не работает свойство AllowExpressions
    #40110126
Bali
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OlyaLora,
Нужно "Итого по [value]"
...
Рейтинг: 0 / 0
FastReport Cross-tab не работает свойство AllowExpressions
    #40110318
OlyaLora
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DimaBr,

огромнейшее спасибо за ответы. Уже не в первый раз делитесь ценным опытом )))
...
Рейтинг: 0 / 0
FastReport Cross-tab не работает свойство AllowExpressions
    #40110320
OlyaLora
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Bali,

Спасибо огромное за подсказку. Уж, не знаю, как не углядела в руководстве. Бывает....

Это всё привычка и искренняя уверенность, что "и так понятно"
...
Рейтинг: 0 / 0
FastReport Cross-tab не работает свойство AllowExpressions
    #40110322
gpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
procedure Cross1OnPrintRowHeader(Memo: TfrxMemoView; HeaderIndexes, HeaderValues, Value: Variant);
begin
   if Value = 'Grand Total long text' then Memo.Text := 'Итого за ' + VarToStr(<MyID>);  
end;
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FastReport Cross-tab не работает свойство AllowExpressions
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]