Динамическое отключение деталей в Delphi master - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть два отчета, которые я переделываю. Первый содержит основную информацию, а второй - точно такую ​​же вещь, плюс еще немного информации.

Оба сделаны с использованием FastReport и master / detail с TSqlQuery и TClientDataset.

У первого есть 3 детали, а у второго - 5.

Есть ли способ сделать только один документ отчета и динамически отключить детали?

Obs: я не могу загрузить TClientDataset и затем скрыть элементы первого отчета, потому что запрос занимает много времени: около 30 секунд, чтобы загрузить первый отчет и около 10 минут для второго.

1 Ответ

0 голосов
/ 06 ноября 2018

Спасибо @MartynA за помощь.

Мне удается это сделать, но это заняло больше работы, чем я думаю.

  1. Очистите свойство DataSource в вашем TSqlQuery;
  2. Очистите свойство DataSetField на вашем TClientDataSet (подробно);
  3. Удалите поле, используемое в DataSetField из вашего TClientDataSet (master);
  4. И если вы используете FastReport, ClientDataSet должен быть активным, поэтому вы должны использовать метод CreateDataSet .
...