powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Определить текущий MasterData FastReport
11 сообщений из 11, страница 1 из 1
Определить текущий MasterData FastReport
    #39887284
koo3mee4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите как в коде FR "определить текущий MasterData"?
т.е. мне надо задать условие:
если текущий MasterData1, то вх. параметр для SQL запроса=1,
если текущий MasterData2, то вх. параметр для SQL запроса=2.
При этом оба MasterData находятся на 1 странице.
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887297
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Повесьте ДВА запроса.
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887304
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr
Повесьте ДВА запроса.

Либо два запроса, либо параметр, который меняется в событиях мастера (до/после печати).
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887318
koo3mee4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman
DimaBr
Повесьте ДВА запроса.

Либо два запроса, либо параметр, который меняется в событиях мастера (до/после печати).

Два запроса - сразу нет. Надо обойтись одним.
Прописываю события:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
 fil_id:=1;
end;

procedure MasterData2OnBeforePrint(Sender: TfrxComponent);
begin
  fil_id:=2;
end;


не работает
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887319
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koo3mee4
не работает

Запрос остается открытым?
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887323
koo3mee4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman
koo3mee4
не работает

Запрос остается открытым?

т.е. а какой должен остаться?)
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887336
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koo3mee4
wadman
пропущено...

Запрос остается открытым?

т.е. а какой должен остаться?)

Если вы меняете входной параметр у датасета, то запрос нужно переоткрыть. Вы переоткрываете запрос?
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39887386
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koo3mee4

Два запроса - сразу нет. Надо обойтись одним.

1. Самый простой вариант - два запроса. На каждый MasterData - собственный
2. Повесить после MasterData например ColumnFooter нулевой высотой и при его печати менять параметр запроса (работает если MasterData не вложенные)
3. Убрать из запроса Параметр и фильтровать в MasterData.Filter
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39888354
koo3mee4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goldmi45
koo3mee4
пропущено...

т.е. а какой должен остаться?)

Если вы меняете входной параметр у датасета, то запрос нужно переоткрыть. Вы переоткрываете запрос?

Видимо нет) Написал как есть)
А как его переоткрывать?
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39888405
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koo3mee4
А как его переоткрывать?

Код: pascal
1.
2.
3.
Dataset.Close;
Dataset.SetNewParam;
Dataset.Open;
...
Рейтинг: 0 / 0
Определить текущий MasterData FastReport
    #39891169
Shuraken
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первый вариант - через Sender по имени бэнда
Код: pascal
1.
2.
3.
4.
5.
6.
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
 if TfrxBand(Sender).Name = 'MasterData1'
  then fil_id:=1
  else fil_id:=2;
end;



Второй вариант - через Tag. Соответственно, разным бэндам надо прописать разные тэги
Код: pascal
1.
2.
3.
4.
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
  fil_id:=TfrxBand(Sender).Tag;
end;
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Определить текущий MasterData FastReport
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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