Complex Column Headers.frx 6.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Report ScriptLanguage="CSharp" ReportInfo.Description="Demonstrates how to print multiple Table rows and columns with a script. To do this:&#13;&#10;- select the Table object;&#13;&#10;- go to the &quot;Properties&quot; window and click the &quot;Events&quot; button to view list of available events;&#13;&#10;- doubleclick the &quot;ManualBuild&quot; event;&#13;&#10;- you will see an empty event handler. You need to print rows using TableObject.PrintRow method; in each row, you must also print all columns (using PrintColumns method). See the script's code for more details.&#13;&#10;&#13;&#10;When you run a report, the Table will repeat its rows and columns and fill them with data. Note that cell spans are handled automatically.&#13;&#10;&#13;&#10;Note that this report is not bound to any data; all table cell values are static." ReportInfo.Created="05/16/2008 00:56:09" ReportInfo.Modified="04/07/2023 18:07:47" ReportInfo.CreatorVersion="1.0.0.0">
  3. <ScriptText>using System;
  4. using System.Collections;
  5. using System.Collections.Generic;
  6. using System.ComponentModel;
  7. using System.Windows.Forms;
  8. using System.Drawing;
  9. using System.Data;
  10. using FastReport;
  11. using FastReport.Data;
  12. using FastReport.Dialog;
  13. using FastReport.Barcode;
  14. using FastReport.Table;
  15. using FastReport.Utils;
  16. namespace FastReport
  17. {
  18. public class ReportScript
  19. {
  20. private void Table1_ManualBuild(object sender, EventArgs e)
  21. {
  22. // we will print header, then two &quot;Year&quot; groups (first one with 2 and
  23. // second with 3 &quot;Month&quot; groups), then total
  24. int[] columnIndices = new int[] { 0, 1, 1, 2, 1, 1, 1, 2, 3 };
  25. // print header (first 2 rows), then four &quot;Employee&quot; rows, then total
  26. int[] rowIndices = new int[] { 0, 1, 2, 2, 2, 2, 3 };
  27. // print rows/columns
  28. foreach (int rowIndex in rowIndices)
  29. {
  30. Table1.PrintRow(rowIndex);
  31. foreach (int columnIndex in columnIndices)
  32. {
  33. Table1.PrintColumn(columnIndex);
  34. }
  35. }
  36. }
  37. }
  38. }
  39. </ScriptText>
  40. <Dictionary/>
  41. <ReportPage Name="Page1" Watermark.Font="Arial, 60pt">
  42. <ReportTitleBand Name="ReportTitle1" Width="718.2" Height="37.8" CanGrow="true"/>
  43. <DataBand Name="Data1" Top="39.8" Width="718.2" Height="91.01">
  44. <TableObject Name="Table1" Left="9.45" Top="5.96" Width="274.05" Height="75.6" ManualBuildEvent="Table1_ManualBuild">
  45. <TableColumn Name="Column1" Width="75.6"/>
  46. <TableColumn Name="Column2"/>
  47. <TableColumn Name="Column3"/>
  48. <TableColumn Name="Column4"/>
  49. <TableRow Name="Row1">
  50. <TableCell Name="Cell1" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White" RowSpan="2"/>
  51. <TableCell Name="Cell2" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Text="Year" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White" ColSpan="2"/>
  52. <TableCell Name="Cell3" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt"/>
  53. <TableCell Name="Cell19" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Text="Total" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White" RowSpan="2"/>
  54. </TableRow>
  55. <TableRow Name="Row2">
  56. <TableCell Name="Cell6" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White"/>
  57. <TableCell Name="Cell7" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Text="Month" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White"/>
  58. <TableCell Name="Cell8" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Text="Total" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White"/>
  59. <TableCell Name="Cell20" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Font="Segoe UI, 9pt"/>
  60. </TableRow>
  61. <TableRow Name="Row3">
  62. <TableCell Name="Cell11" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Text="Employee" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White"/>
  63. <TableCell Name="Cell12" Border.Lines="All" Border.Color="White" Fill.Color="WhiteSmoke" Text="0" HorzAlign="Right" VertAlign="Center" Font="Segoe UI, 9pt"/>
  64. <TableCell Name="Cell13" Border.Lines="All" Border.Color="White" Fill.Color="WhiteSmoke" Text="0" HorzAlign="Right" VertAlign="Center" Font="Segoe UI, 9pt"/>
  65. <TableCell Name="Cell21" Border.Lines="All" Border.Color="White" Fill.Color="WhiteSmoke" Text="0" HorzAlign="Right" VertAlign="Center" Font="Segoe UI, 9pt"/>
  66. </TableRow>
  67. <TableRow Name="Row4">
  68. <TableCell Name="Cell16" Border.Lines="All" Border.Color="White" Fill.Color="110, 145, 190" Text="Total" HorzAlign="Center" VertAlign="Center" Font="Segoe UI, 9pt" TextFill.Color="White"/>
  69. <TableCell Name="Cell17" Border.Lines="All" Border.Color="White" Fill.Color="WhiteSmoke" Text="0" HorzAlign="Right" VertAlign="Center" Font="Segoe UI, 9pt"/>
  70. <TableCell Name="Cell18" Border.Lines="All" Border.Color="White" Fill.Color="WhiteSmoke" Text="0" HorzAlign="Right" VertAlign="Center" Font="Segoe UI, 9pt"/>
  71. <TableCell Name="Cell22" Border.Lines="All" Border.Color="White" Fill.Color="WhiteSmoke" Text="0" HorzAlign="Right" VertAlign="Center" Font="Segoe UI, 9pt"/>
  72. </TableRow>
  73. </TableObject>
  74. </DataBand>
  75. <PageFooterBand Name="PageFooter1" Top="132.81" Width="718.2" Height="28.35" Fill.Color="WhiteSmoke">
  76. <TextObject Name="Text12" Width="217.35" Height="28.35" Cursor="Hand" Hyperlink.Value="https://www.fast-report.com/en/product/fast-report-net/" Text="Generated by FastReport" VertAlign="Center" Font="Segoe UI, 9pt, style=Underline" TextFill.Color="Blue"/>
  77. </PageFooterBand>
  78. </ReportPage>
  79. </Report>