powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Subreports в CR10
8 сообщений из 8, страница 1 из 1
Subreports в CR10
    #35701697
boff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, уважаемые!

Есть отчет следующей структуры:
Subreport1
Main Report
Subreport2

В Main Report данные загружаются из готового датасета, в субрепортах свои датасеты. Почему-то через раз отчет глючит - не видит формул в основном отчете, во втором подотчете появляются данные из основного отчета.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
      RepDS.DataSet:= Query1;
      Rep.Tables[ 0 ].DataPointer:= RepDS.DataPointer;
      for i:=  1  to Rep.Subreports.Count-  1  do
      Begin
        DM.Rep.Subreports[i].Connect.SERVERNAME:= DB.Properties.Item['SERVER NAME'].Value;
        DM.Rep.Subreports[i].Connect.DatabaseName:= DB.Properties.Item['INITIAL CATALOG'].Value;
        DM.Rep.Subreports[i].Connect.UserID:= DB.Properties.Item['USER NAME'].Value;
        DM.Rep.Subreports[i].Connect.Password:= E_Pass.Text;
        DM.Rep.Subreports[i].Connect.Propagate:= True;
      End;
      Formulas.ObjectPropertiesActive:= true;

      Rep.Show;

Что делаю не так? Может предложите другие варианты? (кроме варианта расположить датасет в основном отчете или вообще все данные запихать в один рекордсет и потом средствами отчета обрабатывать напильником :D)
...
Рейтинг: 0 / 0
Subreports в CR10
    #35701855
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boff
Есть отчет следующей структуры:
Subreport1
Main Report
Subreport2

В Main Report данные загружаются из готового датасета, в субрепортах свои датасеты. Почему-то через раз отчет глючит - не видит формул в основном отчете, во втором подотчете появляются данные из основного отчета.

1. Подотчет не видит формул основного отчета, кроме формулы связи. Подотчет может увидеть переменную типа GLOBAL.
2. Проверьте, в какой последовательности у вас выполняются формулы, почитайте про инструкции BeforeReadingRecords WhileReadingRecords WhilePrintingRecords EvaluateAfter ()
3. Проверьте, в каких секциях у вас лежат подотчеты. Хотя я не понял смысла фразы "во втором подотчете появляются данные из основного отчета". Это как это? Налазиют данные, чтоли? Или что имеется в виду?
...
Рейтинг: 0 / 0
Subreports в CR10
    #35701940
boff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kruchinin Pahan1. Подотчет не видит формул основного отчета, кроме формулы связи. Подотчет может увидеть переменную типа GLOBAL.
2. Проверьте, в какой последовательности у вас выполняются формулы, почитайте про инструкции BeforeReadingRecords WhileReadingRecords WhilePrintingRecords EvaluateAfter ()
3. Проверьте, в каких секциях у вас лежат подотчеты. Хотя я не понял смысла фразы "во втором подотчете появляются данные из основного отчета". Это как это? Налазиют данные, чтоли? Или что имеется в виду?
1. Извините, не уточнил, внешняя программа не видит формул основного отчета, хотя эту проблему, кажется, решил - если обращаться к основному отчету как к 0-му субрепорту.
2. Эти инструкции имеют значение при обращении к формулам извне?
3. Подотчеты лежат в Report Header и в Report Footer. Нет, данные не нализят, а просто вместо данных, которые должны быть в подотчете появляются данные из основного отчета (иногда 1 запись, а иногда и все, т.е. полностью дублируются).
...
Рейтинг: 0 / 0
Subreports в CR10
    #35701969
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boff
2. Эти инструкции имеют значение при обращении к формулам извне?

Нет, только при вычислении.
boff
3. Подотчеты лежат в Report Header и в Report Footer. Нет, данные не нализят, а просто вместо данных, которые должны быть в подотчете появляются данные из основного отчета (иногда 1 запись, а иногда и все, т.е. полностью дублируются).
Именно при рендеринге отчета? Или при программном доступе к содержимому отчета. И опять же, что вы делаете с содержимым отчета программно? Зачем это вам?
...
Рейтинг: 0 / 0
Subreports в CR10
    #35702077
boff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kruchinin PahanИменно при рендеринге отчета? Или при программном доступе к содержимому отчета. И опять же, что вы делаете с содержимым отчета программно? Зачем это вам?
При рендеринге. Код работы с отчетом я практически полностью выложил в первом сообщении, за исключением обращений к формулам.
Зачем: просто формат подотчетов и основного отчета сильно разный, можно, конечно, при желании запихать все в один отчет, но сильно извращаться придется с форматированием отчета...
...
Рейтинг: 0 / 0
Subreports в CR10
    #35703233
boff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде более-менее заработало.
Но возник другой вопрос: как передать параметры в подотчеты? Про
Код: plaintext
Change Subreport Links
в курсе, только вот в основном-то отчете нет параметров (данные передаются через датасет). Пробовал следующее:
1. Линковать параметры подотчетов к полям основного отчета. Беда в том, что подотчеты выполняются независимо от основного отчета и как результат, все равно запрашивают парметры.
2. Задавать параметры в коде программы, типа такого:
Код: plaintext
1.
Rep.Subreports[i].ParamFields[j].CurrentValue:= бла-бла;
Параметры-то задаются, проверял, но в результате при выполнении отчета все равно запрашиваются парметры для всех подотчетов...
...
Рейтинг: 0 / 0
Subreports в CR10
    #35704314
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boffПараметры-то задаются, проверял, но в результате при выполнении отчета все равно запрашиваются парметры для всех подотчетов...
Достаточно, чтобы система считала один только параметр незаполненным и вам тут же будут показан диалог с выбором всех параметров.
Возможно, из-за этого?
...
Рейтинг: 0 / 0
Subreports в CR10
    #35704490
boff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Kruchinin Pahan
Достаточно, чтобы система считала один только параметр незаполненным и вам тут же будут показан диалог с выбором всех параметров.
Возможно, из-за этого?[/quot]
Там всего по одному параметру в каждом субрепорте. И я проверял - заполняются все (во всяком случае из клиентской программы я вижу, что парметрам присвоены мои значения, чего там происходит в самом отчете не могу даже догадываться).
Пока что решил проблему путем добавления в главный отчет формулы и передачу параметров подотчетам через нее...
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Subreports в CR10
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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