How to create crosstab by programme

Stimulsoft Reports.NET discussion
Post Reply
shellyls
Posts: 2
Joined: Tue Aug 14, 2012 4:46 pm

How to create crosstab by programme

Post by shellyls »

Dim Report As New StiReport()

Report.AutoLocalizeReportOnRun = True
Report.ScriptLanguage = StiReportLanguageType.VB
Report.EngineVersion = Engine.StiEngineVersion.EngineV2
Report.ReportUnit = Stimulsoft.Report.StiReportUnitType.Millimeters
'Add data to datastore
Report.Dictionary.Databases.Clear()
Report.Dictionary.DataSources.Clear()
Report.RegData("data", Data)
'Fill dictionary
Report.Dictionary.Synchronize()
Report.Dictionary.DataSources.Item(0).Name = "data"
Report.Dictionary.DataSources.Item(0).Alias = "data"

Dim Page As StiPage = Report.Pages.Item(0)
Page.Width = 420
Page.Height = 297




Dim CrossTab1 As Stimulsoft.Report.CrossTab.StiCrossTab
Dim CrossTab1_RowTotal1 As Stimulsoft.Report.CrossTab.StiCrossRowTotal
Dim CrossTab1_Row1_Title As Stimulsoft.Report.CrossTab.StiCrossTitle
Dim CrossTab1_ColTotal2 As Stimulsoft.Report.CrossTab.StiCrossColumnTotal
Dim CrossTab1_LeftTitle As Stimulsoft.Report.CrossTab.StiCrossTitle
Dim CrossTab1_ColTotal1 As Stimulsoft.Report.CrossTab.StiCrossColumnTotal
Dim CrossTab1_Row1 As Stimulsoft.Report.CrossTab.StiCrossRow
Dim CrossTab1_Column1 As Stimulsoft.Report.CrossTab.StiCrossColumn
Dim CrossTab1_Column2 As Stimulsoft.Report.CrossTab.StiCrossColumn
Dim CrossTab1_Sum1 As Stimulsoft.Report.CrossTab.StiCrossSummary
Dim CrossTab1_RightTitle As Stimulsoft.Report.CrossTab.StiCrossTitle



'1 CrossTable 主组件
CrossTab1 = New Stimulsoft.Report.CrossTab.StiCrossTab
CrossTab1.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(0.5, 0.5, 189.3, 34.9)
CrossTab1.DataRelationName = ""
CrossTab1.DataSourceName = "data"
CrossTab1.EmptyValue = ""
CrossTab1.Name = "CrossTab1"

CrossTab1.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.None, System.Drawing.Color.Black, 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Transparent)

Page.Components.Add(CrossTab1)


'CrossTab1_RowTotal1
'
CrossTab1_RowTotal1 = New Stimulsoft.Report.CrossTab.StiCrossRowTotal
CrossTab1_RowTotal1.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(0, 17, 12, 0)

CrossTab1_RowTotal1.Name = "CrossTab1_RowTotal1"

CrossTab1_RowTotal1.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_RowTotal1.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 255, 255, 255))
CrossTab1_RowTotal1.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_RowTotal1.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_RowTotal1.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black)
CrossTab1_RowTotal1.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_RowTotal1)

'CrossTab1_Row1_Title
'
CrossTab1_Row1_Title = New Stimulsoft.Report.CrossTab.StiCrossTitle
CrossTab1_Row1_Title.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(0, 4.51, 12, 8)

CrossTab1_Row1_Title.Name = "CrossTab1_Row1_Title"
CrossTab1_Row1_Title.Text.Value = "分数段" '行标题
CrossTab1_Row1_Title.TypeOfComponent = "Row:CrossTab1_Row1"
CrossTab1_Row1_Title.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_Row1_Title.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.White)
CrossTab1_Row1_Title.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_Row1_Title.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_Row1_Title.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 105, 105, 105))
CrossTab1_Row1_Title.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_Row1_Title)


'CrossTab1_ColTotal2
'
CrossTab1_ColTotal2 = New Stimulsoft.Report.CrossTab.StiCrossColumnTotal
CrossTab1_ColTotal2.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(22.51, 8.51, 8, 4)
CrossTab1_ColTotal2.Text.Value = "小计"
CrossTab1_ColTotal2.Name = "CrossTab1_ColTotal2"

CrossTab1_ColTotal2.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_ColTotal2.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 255, 255, 255))
CrossTab1_ColTotal2.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_ColTotal2.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_ColTotal2.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black)
CrossTab1_ColTotal2.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_ColTotal2)


'CrossTab1_LeftTitle
'
CrossTab1_LeftTitle = New Stimulsoft.Report.CrossTab.StiCrossTitle
CrossTab1_LeftTitle.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(0, 0, 12, 4)

CrossTab1_LeftTitle.Name = "CrossTab1_LeftTitle"

CrossTab1_LeftTitle.TypeOfComponent = "LeftTitle"
CrossTab1_LeftTitle.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_LeftTitle.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.White)
CrossTab1_LeftTitle.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_LeftTitle.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_LeftTitle.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 105, 105, 105))
CrossTab1_LeftTitle.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_LeftTitle)

'CrossTab1_ColTotal1
'
CrossTab1_ColTotal1 = New Stimulsoft.Report.CrossTab.StiCrossColumnTotal
CrossTab1_ColTotal1.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(30.51, 4.51, 8, 8)

CrossTab1_ColTotal1.Guid = "23df9422d0174b4382a3d723dcdb648d"

CrossTab1_ColTotal1.Name = "CrossTab1_ColTotal1"
CrossTab1_ColTotal1.Text.Value = "合计"
CrossTab1_ColTotal1.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_ColTotal1.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 255, 255, 255))
CrossTab1_ColTotal1.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_ColTotal1.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_ColTotal1.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black)
CrossTab1_ColTotal1.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_ColTotal1)
'CrossTab1_Row1
'
CrossTab1_Row1 = New Stimulsoft.Report.CrossTab.StiCrossRow
CrossTab1_Row1.Alias = "sv"
CrossTab1_Row1.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(0, 13.02, 12, 4)

' CrossTab1_Row1.DisplayValue = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("sv") + "}" ' "{decimal.Round((decimal.Parse(data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("sv") + ") ),0)}"


CrossTab1_Row1.Guid = "dfab462ccec2426e9e298a5b3b298669"
CrossTab1_Row1.Name = "CrossTab1_Row1"

CrossTab1_Row1.ShowTotal = False
CrossTab1_Row1.SortDirection = Stimulsoft.Report.CrossTab.Core.StiSortDirection.Desc
CrossTab1_Row1.SortType = Stimulsoft.Report.CrossTab.Core.StiSortType.ByValue

CrossTab1_Row1.Text.Value = "sv"

CrossTab1_Row1.DisplayValue = "{data.sv}"
CrossTab1_Row1.Value = "{data.sv}"


CrossTab1_Row1.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_Row1.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.White)
CrossTab1_Row1.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_Row1.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_Row1.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 105, 105, 105))
CrossTab1_Row1.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_Row1)

'CrossTab1_Column1
'
CrossTab1_Column1 = New Stimulsoft.Report.CrossTab.StiCrossColumn
CrossTab1_Column1.Alias = "WLName"
CrossTab1_Column1.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(12.51, 4.51, 18, 4)
CrossTab1_Column1.Text.Value = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("wlname") + "}"
' CrossTab1_Column1.Value = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("wlname") + "}"
'CrossTab1_Column1.DisplayValue = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("wlname") + "}"

CrossTab1_Column1.Name = "CrossTab1_Column1"


CrossTab1_Column1.TotalGuid = "23df9422d0174b4382a3d723dcdb648d"

CrossTab1_Column1.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_Column1.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.White)
CrossTab1_Column1.Font = New System.Drawing.Font("Arial", 8.0!)
CrossTab1_Column1.Indicator = Nothing
CrossTab1_Column1.Interaction = Nothing
CrossTab1_Column1.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_Column1.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 105, 105, 105))
CrossTab1_Column1.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)
CrossTab1.Components.Add(CrossTab1_Column1)


'CrossTab1_Column2
'
CrossTab1_Column2 = New Stimulsoft.Report.CrossTab.StiCrossColumn
CrossTab1_Column2.Alias = "classid"
CrossTab1_Column2.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(12.51, 8.51, 10, 4)
CrossTab1_Column2.Text.Value = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("classid") + "}"
' CrossTab1_Column2.Value = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("classid") + "}"
'CrossTab1_Column2.DisplayValue = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("classid") + "}"

CrossTab1_Column2.Guid = "6f976954909a4e6bb04fbd969ee333f6"
CrossTab1_Column2.Name = "CrossTab1_Column2"


CrossTab1_Column2.TotalGuid = "c5630b398b3a424f9ed8911e65ecbdaf"

CrossTab1_Column2.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_Column2.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.White)
CrossTab1_Column2.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_Column2.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_Column2.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 105, 105, 105))
CrossTab1_Column2.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_Column2)

'
'CrossTab1_Sum1
'
CrossTab1_Sum1 = New Stimulsoft.Report.CrossTab.StiCrossSummary
CrossTab1_Sum1.Alias = "sn"
CrossTab1_Sum1.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(12.51, 13.02, 10, 4)
CrossTab1_Sum1.Guid = "3d12e69fba6b4ea58dcf6994dcad6250"
CrossTab1_Sum1.Name = "CrossTab1_Sum1"


CrossTab1_Sum1.Text.Value = "{data." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols("sn") + "}"

CrossTab1_Sum1.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_Sum1.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 255, 255, 255))
CrossTab1_Sum1.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_Sum1.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_Sum1.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black)
CrossTab1_Sum1.TextOptions = New Stimulsoft.Base.Drawing.StiTextOptions(False, False, False, 0.0!, System.Drawing.Text.HotkeyPrefix.None, System.Drawing.StringTrimming.None)

CrossTab1.Components.Add(CrossTab1_Sum1)
'
'CrossTab1_RightTitle
'
CrossTab1_RightTitle = New Stimulsoft.Report.CrossTab.StiCrossTitle
CrossTab1_RightTitle.ClientRectangle = New Stimulsoft.Base.Drawing.RectangleD(12.51, 0, 26, 4)
CrossTab1_RightTitle.Guid = "64008fcef2de43ea8251c995bf7ab06c"
CrossTab1_RightTitle.Name = "CrossTab1_RightTitle"

CrossTab1_RightTitle.Text = "classid, WLName"

CrossTab1_RightTitle.TypeOfComponent = "RightTitle"
CrossTab1_RightTitle.Border = New Stimulsoft.Base.Drawing.StiBorder(Stimulsoft.Base.Drawing.StiBorderSides.All, System.Drawing.Color.FromArgb(255, 155, 155, 155), 1, Stimulsoft.Base.Drawing.StiPenStyle.Solid, False, 4, New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.Black), False)
CrossTab1_RightTitle.Brush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.White)
CrossTab1_RightTitle.Font = New System.Drawing.Font("Arial", 8.0!)

CrossTab1_RightTitle.Margins = New Stimulsoft.Report.Components.StiMargins(0, 0, 0, 0)
CrossTab1_RightTitle.TextBrush = New Stimulsoft.Base.Drawing.StiSolidBrush(System.Drawing.Color.FromArgb(255, 105, 105, 105))
CrossTab1.Components.Add(CrossTab1_RightTitle)


CrossTab1.Guid = Nothing
HighAley
Posts: 8430
Joined: Wed Jun 08, 2011 7:40 am
Location: Stimulsoft Office

Re: How to create crosstab by programme

Post by HighAley »

Hello.

Sorry, maybe we did not exactly understand your question. Could you explain your issue in more details?

Thank you.
Post Reply