You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
230 lines
8.9 KiB
230 lines
8.9 KiB
'Option Strict On
|
|
'Option Explicit On
|
|
Imports CrystalDecisions.CrystalReports.Engine
|
|
Imports CrystalDecisions.Shared
|
|
Imports System.Data
|
|
Imports System.Data.SqlTypes
|
|
Imports System.Data.SqlClient
|
|
Imports System.ComponentModel
|
|
|
|
|
|
Public Class frmReportViewer
|
|
Inherits System.Windows.Forms.Form
|
|
|
|
#Region " Vom Windows Form Designer generierter Code "
|
|
|
|
Public Sub New()
|
|
MyBase.New()
|
|
|
|
' Dieser Aufruf ist für den Windows Form-Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen
|
|
|
|
End Sub
|
|
|
|
' Die Form überschreibt den Löschvorgang der Basisklasse, um Komponenten zu bereinigen.
|
|
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
|
|
If disposing Then
|
|
If Not (components Is Nothing) Then
|
|
components.Dispose()
|
|
End If
|
|
End If
|
|
MyBase.Dispose(disposing)
|
|
End Sub
|
|
|
|
' Für Windows Form-Designer erforderlich
|
|
Private components As System.ComponentModel.IContainer
|
|
|
|
'HINWEIS: Die folgende Prozedur ist für den Windows Form-Designer erforderlich
|
|
'Sie kann mit dem Windows Form-Designer modifiziert werden.
|
|
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
|
|
Friend WithEvents ToolBar1 As System.Windows.Forms.ToolBar
|
|
Friend WithEvents ImageList1 As System.Windows.Forms.ImageList
|
|
Friend WithEvents CrystalReportViewer1 As CrystalDecisions.Windows.Forms.CrystalReportViewer
|
|
Friend WithEvents mnuClose As System.Windows.Forms.ToolBarButton
|
|
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
|
|
Me.components = New System.ComponentModel.Container
|
|
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmReportViewer))
|
|
Me.ToolBar1 = New System.Windows.Forms.ToolBar
|
|
Me.mnuClose = New System.Windows.Forms.ToolBarButton
|
|
Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components)
|
|
Me.CrystalReportViewer1 = New CrystalDecisions.Windows.Forms.CrystalReportViewer
|
|
Me.SuspendLayout()
|
|
'
|
|
'ToolBar1
|
|
'
|
|
Me.ToolBar1.Buttons.AddRange(New System.Windows.Forms.ToolBarButton() {Me.mnuClose})
|
|
Me.ToolBar1.DropDownArrows = True
|
|
Me.ToolBar1.ImageList = Me.ImageList1
|
|
Me.ToolBar1.Location = New System.Drawing.Point(0, 0)
|
|
Me.ToolBar1.Name = "ToolBar1"
|
|
Me.ToolBar1.ShowToolTips = True
|
|
Me.ToolBar1.Size = New System.Drawing.Size(816, 28)
|
|
Me.ToolBar1.TabIndex = 0
|
|
'
|
|
'mnuClose
|
|
'
|
|
Me.mnuClose.ImageIndex = 4
|
|
Me.mnuClose.Name = "mnuClose"
|
|
Me.mnuClose.ToolTipText = "Schliessen"
|
|
'
|
|
'ImageList1
|
|
'
|
|
Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer)
|
|
Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent
|
|
Me.ImageList1.Images.SetKeyName(0, "")
|
|
Me.ImageList1.Images.SetKeyName(1, "")
|
|
Me.ImageList1.Images.SetKeyName(2, "")
|
|
Me.ImageList1.Images.SetKeyName(3, "")
|
|
Me.ImageList1.Images.SetKeyName(4, "")
|
|
'
|
|
'CrystalReportViewer1
|
|
'
|
|
Me.CrystalReportViewer1.ActiveViewIndex = -1
|
|
Me.CrystalReportViewer1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
|
Me.CrystalReportViewer1.Dock = System.Windows.Forms.DockStyle.Fill
|
|
Me.CrystalReportViewer1.Location = New System.Drawing.Point(0, 28)
|
|
Me.CrystalReportViewer1.Name = "CrystalReportViewer1"
|
|
Me.CrystalReportViewer1.Size = New System.Drawing.Size(816, 497)
|
|
Me.CrystalReportViewer1.TabIndex = 7
|
|
'
|
|
'frmReportViewer
|
|
'
|
|
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
|
|
Me.ClientSize = New System.Drawing.Size(816, 525)
|
|
Me.Controls.Add(Me.CrystalReportViewer1)
|
|
Me.Controls.Add(Me.ToolBar1)
|
|
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
|
|
Me.Name = "frmReportViewer"
|
|
Me.Text = "Report-Viewer"
|
|
Me.WindowState = System.Windows.Forms.FormWindowState.Maximized
|
|
Me.ResumeLayout(False)
|
|
Me.PerformLayout()
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region " Declaration "
|
|
|
|
Dim i As Integer
|
|
Dim s As String
|
|
Dim tbCurrent As CrystalDecisions.CrystalReports.Engine.Table
|
|
Dim tliCurrent As CrystalDecisions.Shared.TableLogOnInfo
|
|
Dim m_sWindowTitel As String
|
|
|
|
Dim rpt As New ReportDocument()
|
|
Dim crParameterValues As ParameterValues
|
|
Dim crParameterDiscreteValue As ParameterDiscreteValue
|
|
Dim crParameterFieldDefinitions As ParameterFieldDefinitions
|
|
Dim crParameterFieldDefinition As ParameterFieldDefinition
|
|
|
|
#End Region
|
|
|
|
|
|
|
|
#Region " Property "
|
|
|
|
Property WindowTitel() As String
|
|
Get
|
|
Return m_sWindowTitel
|
|
End Get
|
|
Set(ByVal Value As String)
|
|
m_sWindowTitel = Value
|
|
End Set
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
Private Sub frmReportViewer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
|
|
|
End Sub
|
|
|
|
#Region "EDOKA"
|
|
|
|
Public Function show_reportWithParameter(ByVal sreportpath As String, ByVal ReportName As String, ByVal param As String) As Boolean
|
|
|
|
Dim rpt As New ReportDocument
|
|
rpt.Load(sreportpath + ReportName)
|
|
Dim crParameterDiscreteValue As ParameterDiscreteValue
|
|
Dim crParameterFieldDefinitions As ParameterFieldDefinitions
|
|
Dim crParameterFieldLocation As ParameterFieldDefinition
|
|
Dim crParameterValues As ParameterValues
|
|
crParameterFieldDefinitions = rpt.DataDefinition.ParameterFields
|
|
|
|
Dim strParValPair() As String
|
|
Dim strVal() As String
|
|
Dim index As Integer
|
|
Dim paraValue As New CrystalDecisions.Shared.ParameterDiscreteValue()
|
|
Dim currValue As CrystalDecisions.Shared.ParameterValues
|
|
|
|
If Trim(param) <> "" Then
|
|
strParValPair = param.Split(CType("&", Char))
|
|
If strParValPair.Length = 0 Then
|
|
param = param + "&"
|
|
strParValPair = param.Split(CType("&", Char))
|
|
End If
|
|
|
|
End If
|
|
|
|
For index = 0 To UBound(strParValPair)
|
|
strVal = strParValPair(index).Split(CType("=", Char))
|
|
If strVal.Length > 0 Then
|
|
crParameterFieldLocation = crParameterFieldDefinitions.Item(strVal(0))
|
|
crParameterValues = crParameterFieldLocation.CurrentValues
|
|
crParameterDiscreteValue = New CrystalDecisions.Shared.ParameterDiscreteValue
|
|
crParameterDiscreteValue.Value = strVal(1)
|
|
crParameterValues.Add(crParameterDiscreteValue)
|
|
crParameterFieldLocation.ApplyCurrentValues(crParameterValues)
|
|
End If
|
|
Next
|
|
|
|
|
|
|
|
Dim ConInfo As New CrystalDecisions.Shared.TableLogOnInfo()
|
|
ConInfo.ConnectionInfo.UserID = Globals.LoginInfo.UserId
|
|
ConInfo.ConnectionInfo.Password = Globals.LoginInfo.Password
|
|
ConInfo.ConnectionInfo.ServerName = Globals.LoginInfo.Server
|
|
ConInfo.ConnectionInfo.DatabaseName = Globals.LoginInfo.Db
|
|
|
|
Dim myDataSourceConnections As DataSourceConnections = rpt.DataSourceConnections
|
|
Dim myConnectInfo As IConnectionInfo = myDataSourceConnections(0)
|
|
myConnectInfo.SetConnection(Globals.LoginInfo.Server, Globals.LoginInfo.Db, Globals.LoginInfo.UserId, Globals.LoginInfo.Password)
|
|
|
|
Dim mySubReportObject As CrystalDecisions.CrystalReports.Engine.SubreportObject
|
|
Dim mySubRepDoc As New CrystalDecisions.CrystalReports.Engine.ReportDocument()
|
|
|
|
For index = 0 To rpt.ReportDefinition.Sections.Count - 1
|
|
For intCounter = 0 To rpt.ReportDefinition.Sections(index).ReportObjects.Count - 1
|
|
With rpt.ReportDefinition.Sections(index)
|
|
If .ReportObjects(intCounter).Kind = CrystalDecisions.Shared.ReportObjectKind.SubreportObject Then
|
|
mySubReportObject = CType(.ReportObjects(intCounter), CrystalDecisions.CrystalReports.Engine.SubreportObject)
|
|
mySubRepDoc = mySubReportObject.OpenSubreport(mySubReportObject.SubreportName)
|
|
|
|
Dim mySubDataSourceConnections As DataSourceConnections = mySubRepDoc.DataSourceConnections
|
|
Dim mySubConnectInfo As IConnectionInfo = myDataSourceConnections(0)
|
|
mySubConnectInfo.SetConnection(Globals.LoginInfo.Server, Globals.LoginInfo.Db, Globals.LoginInfo.UserId, Globals.LoginInfo.Password)
|
|
End If
|
|
End With
|
|
Next
|
|
Next
|
|
|
|
CrystalReportViewer1.ReportSource = rpt
|
|
|
|
End Function
|
|
|
|
|
|
|
|
#End Region
|
|
|
|
#Region " Menue Funktionen "
|
|
|
|
Private Sub ToolBar1_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick
|
|
Me.Close()
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
End Class
|