Нерасширяется отбъект на бэнде

отредактировано 03:04 Раздел: FastReport 3.0
Добрый день.

Имеется ситуация следующая:
На основном отчете имеется MasterData (свойство "разрешить разрыв" = True). На нем находятся два элемента: Memo1 и Subreport1. Subreport1 аналогичным образом содержит два поля: Memo2 и Subreport2. А уже Subreport2 содержит элемент Memo3 из запроса.
Все элементы имеются свойство Stretched (растягиваемый) = True.

Необходимо, чтобы Memo2 была высотой, как сумма высот всех соответсвующих элементов Memo3. Аналогично, Memo1 высотой как, как сумма высот всех соответсвующих элементов Memo2.

Проблема следующая:
Если поставить Subreport1 и Subreport2 - PrintOnParent=True, то Memo1 растягивается как надо, а вот Memo2 - нет, поскольку не видно Memo3! Просто пусто на месте Memo3.

Если поставить в Subreport1 свойство PrintOnParent=True, а на и Subreport2 PrintOnParent=True, Memo3 уже видно, но Memo2 не растягивается.
то Memo1 растягивается как надо, а вот Memo2 - нет, поскольку не видно Memo3! Просто пусто на месте Memo3.

Спасибо.

P.S. FastReport версии 3.11. Delphi 7.

Комментарии

  • отредактировано 03:04
    Товарищи разработчики! Не красиво так темы оставлять, проблема-то осталась!

    Попробую повторить еще раз, но несколько по-другому.

    Имеется два вложенных отчета:
    1. страница - поле1, подотчет1
    2. подотчет1 - поле2, подотчет2
    3. подотчет3 - поле3

    SQL использую такой:
    select '1' as COL1, '1.1' as COL2, '1.1.1' as COL3
    union
    select '1', '1.1', '1.1.2'
    union
    select '1', '1.1', '1.1.3'
    union
    select '1', '1.2', '1.2.1'
    union
    select '1', '1.2', '1.2.2'
    union
    select '2', '2.1', '2.1.1'
    
    Задача, состоит в следующем, чтобы первая колонка была длинной по высоте и охватывала все значения колонки 2, у которых первая колонка одинакова. Соотвественно такая же пробелма состоит у второй колонки.

    И вообще можно ли аттачить файлы? А то хочу тестовый пример дать, а не получается.
    написал:
    <?xml version="1.0" encoding="utf-8"?>
    <TfrxReport Name="" Version="3.17" DotMatrixReport="False" IniFile="\Software\Fast Reports" PreviewOptions.Buttons="2047" PreviewOptions.Zoom="1" PrintOptions.Printer="Ю ���ortOptions.CreateDate="38650,7709059375" ReportOptions.Description.Text="" ReportOptions.LastChange="38650,7742414815" ScriptLanguage="PascalScript" ScriptText.Text="
    begin

    end." ShowProgress="False" PropData="044C656674020803546F70022808446174617365747301010C2C00000020446174615365743D2241444F5175657279312220446174615365744E616D653D2241444F517565727931220000095661726961626C65730100055374796C650100">
      <TfrxReportPage Name="Page1" PaperWidth="210" PaperHeight="297" PaperSize="9" LeftMargin="10" RightMargin="10" TopMargin="10" BottomMargin="10" ColumnWidth="0" ColumnPositions.Text="" HGuides.Text="" VGuides.Text="">
        <TfrxMasterData Name="MasterData1" Height="18,89765" Left="0" Top="18,89765" Width="718,1107" ColumnWidth="0" ColumnGap="0" DataSet="ADOQuery1" DataSetName="ADOQuery1" RowCount="0" Stretched="True">
          <TfrxMemoView Name="Memo1" Left="0" Top="0" Width="94,48825" Height="18,89765" StretchMode="smMaxHeight" Font.Charset="204" Font.Color="-16777208" Font.Height="-13" Font.Name="Arial" Font.Style="0" Frame.Typ="15" ParentFont="False" Text="[ADOQuery1."COL1"]"/>
          <TfrxSubreport Name="Subreport1" Left="94,48825" Top="0" Width="623,62245" Height="18,89765" Page="Page2" PrintOnParent="True"/>
        </TfrxMasterData>
      </TfrxReportPage>
      <TfrxReportPage Name="Page2" PaperWidth="215,9" PaperHeight="279,4" PaperSize="1" LeftMargin="10" RightMargin="10" TopMargin="10" BottomMargin="10" ColumnWidth="0" ColumnPositions.Text="" HGuides.Text="" VGuides.Text="">
        <TfrxMasterData Name="MasterData2" Height="18,89765" Left="0" Top="18,89765" Width="740,409927" ColumnWidth="0" ColumnGap="0" DataSet="ADOQuery1" DataSetName="ADOQuery1" RowCount="0" Stretched="True">
          <TfrxMemoView Name="Memo2" Left="0" Top="0" Width="94,48825" Height="18,89765" StretchMode="smMaxHeight" Font.Charset="204" Font.Color="-16777208" Font.Height="-13" Font.Name="Arial" Font.Style="0" Frame.Typ="15" ParentFont="False" Text="[ADOQuery1."COL2"]"/>
          <TfrxSubreport Name="Subreport2" Left="94,48825" Top="0" Width="510,23655" Height="18,89765" Page="Page3" PrintOnParent="True"/>
        </TfrxMasterData>
      </TfrxReportPage>
      <TfrxReportPage Name="Page3" PaperWidth="215,9" PaperHeight="279,4" PaperSize="1" LeftMargin="10" RightMargin="10" TopMargin="10" BottomMargin="10" ColumnWidth="0" ColumnPositions.Text="" HGuides.Text="" VGuides.Text="">
        <TfrxMasterData Name="MasterData3" Height="18,89765" Left="0" Top="18,89765" Width="740,409927" ColumnWidth="0" ColumnGap="0" DataSet="ADOQuery1" DataSetName="ADOQuery1" RowCount="0">
          <TfrxMemoView Name="Memo3" Left="0" Top="0" Width="94,48825" Height="18,89765" Font.Charset="204" Font.Color="-16777208" Font.Height="-13" Font.Name="Arial" Font.Style="0" Frame.Typ="15" ParentFont="False" Text="[ADOQuery1."COL3"]"/>
        </TfrxMasterData>
      </TfrxReportPage>
      <TfrxDialogPage Name="DialogPage1" Font.Charset="1" Font.Color="0" Font.Height="-11" Font.Name="Tahoma" Font.Style="0" Visible="False" Height="200" Left="265" Top="150" Width="300">
        <TfrxADOQuery Name="ADOQuery1" UserName="ADOQuery1" CloseDataSource="True" FieldAliases.Text="" SQL.Text="select '1' as COL1, '1.1' as COL2, '1.1.1' as COL3
    union
    select '1', '1.1', '1.1.2'
    union
    select '1', '1.1', '1.1.3'
    union
    select '1', '1.2', '1.2.1'
    union
    select '1', '1.2', '1.2.2'
    union
    select '2', '2.1', '2.1.1'" PropData="0A506172616D65746572730100"/>
      </TfrxDialogPage>
    </TfrxReport>
  • отредактировано 03:04
    Товарищи разработчики! Подтвердите проблему. Что за отношение к зарегистрированным пользователям! Уже больше полугода прошло, а вы все молчите!
  • gpigpi
    отредактировано October 2005
    Если нужен отчёт такого вида
    |*1*|*1.1*|*1.1.1*|
    |***|*****|
    |
    |***|*****|*1.1.2*|
    |***|
    |
    |
    |***|*1.2*|*1.2.1*|
    |***|*****|
    |
    |***|*****|*1.2.2*|
    (символ * - это пробел, а то одни пробелы удаляются при отображении поста)
    то можно обойтись двумя уровнями группировки по COL1 и по COL2 и установкой SuppressRepeated=True у Memo, отображающих COL1 и COL2
    Также нужно будет управлять отображением верхних и нижних границ рамки у этих Мемо

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

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