RDLC: как напечатать несколько таблиц в одном отчете

Я генерирую XML-схему RDLC и показываю отчет в элементе управления ReportViewer. Там нет проблем.

Теперь я хочу получить отчет с двумя таблицами и двумя разными наборами данных.
Нечто подобное генерируется:

<Body>
    <ReportItems>
            <Table Name="Table1">
            ....
            </Table>
            <Table Name="Table2">
            ....
            </Table>           
    </ReportItems>
</Body>

Но при печати обе таблицы начинаются сверху, печатая одну таблицу поверх другой (не приятно)

Есть ли способ сказать, что Table2 должен начинаться после Table1?

Обновление: я пробовал с List с поддельным источником данных, но он не работает.

3 ответа

Решение

Я использую много отчетов с несколькими таблицами, я просто добавляю начало второй таблицы точно над концом второй таблицы, когда они отображаются, они появляются одна за другой. Так что вам нужно настроить первую таблицу с:

<Table Name="table1">
<DataSetName>DataSets_ChiamateGroup</DataSetName>
<KeepTogether>true</KeepTogether>
<Top>36cm</Top>
<Height>3.00001cm</Height>

А также

<Table Name="table2">
<DataSetName>DataSets_ChiamateGroup</DataSetName>
<KeepTogether>true</KeepTogether>
<Top>39cm</Top>
<Height>5.00000cm</Height>

Обратите внимание, что Table1.Top+Table1.Height=Table2.Top

Вот пример расположения двух таблиц (с дополнительными диаграммами наверху)

дизайнер отчетов две таблицы

Надеюсь, поможет!!

Таблицы должны отображаться одна за другой. В вашем RDLC должно быть что-то еще. Вы сами генерируете RDLC? Вы пытались создать фиктивный отчет с помощью дизайнера отчетов, поместив в него две таблицы и изучив RDLC, который он генерирует? Несколько таблиц в одном отчете чрезвычайно распространены.

Также попробуйте установить их Top элементы:

        <Table Name="Table1">
            <Top>1in</Top>
        </Table>
        <Table Name="Table2">
            <Top>5in</Top>
        </Table> 

О, МОЙ БОГ! Это было так просто, как добавление ZIndex=2 ко второму столу.
Четное ZIndex не важно, настройка волшебной подделки Top это все, что имеет значение.

<Body>
    <ReportItems>
            <Table Name="Table1">
                 <Top>1cm</Top> 
                 ....
            </Table>
            <Table Name="Table2">
                 <Top>2.25cm</Top> <!-- more than table1 Top + Height -->
                 ....
            </Table>           
    </ReportItems>
</Body>

До сих пор не уверен, важен ли порядок в XML и настройки отличаются Top s
Порядок в XML не важен, но Топ есть. Вы должны установить вершину больше, чем Table1 top+height (ту высоту, которая у него фактически есть в конструкторе)

Другие вопросы по тегам