0

the below code accessing the report from the given IP Address... initailly i was facing problem during loading business report from the client computer because the i was used this code
Dim cryRpt As New ReportDocument
cryRpt.Load("D:\Reports\PTC_1.rpt")
on server the above code doing best work because the path is identifing. but from client didn't identify the path.. then i share the folder Reports with readOnly rights so my problem solve because client computer also identify the given path on LAN.
Dim cryRpt As New ReportDocument
cryRpt.Load("\\192.168.3.36\Reports\PTC_1.rpt")

But is there any other best way that no need to specify the path and automatically load the reports like loading Forms. anywhere when create a setup file of application and install in client computer

2
Contributors
1
Reply
6
Views
9 Years
Discussion Span
Last Post by di.arie
0

don't forget to set your prerequisite on project properties before you build your project and try this code below:

Imports System.Data.OleDb

Public Class Form1

Dim rpt As New CrystalReport1
Dim rpt1 As New CrystalReport2

Private Sub Form1_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles MyBase.Load
Dim path1 As String = My.Application.Info.DirectoryPath '' path
'' for normal ADO Concept
'' The current DataSource is an ADO.
Try
'' change path of the database
rpt.DataSourceConnections.Item(0). _
SetConnection("", "" & path1 & "\Xtreme.mdb", False)
'' if password is given then give the password
'' if not give it will ask at runtime
rpt.DataSourceConnections.Item(0).SetLogon("admin", "admin")
cr.ReportSource = rpt '' assign the report to the crytal reprot viewr (cr)
Catch exp As CrystalDecisions.ReportSource.EnterpriseLogonException
MsgBox(exp.Message)
End Try


''%$^%$^$%^$%^$%^$%^$^$^%$^^$%^$^$%^$%^$%^%$^%$^%$^%$^%$^%$^$^$


'' for ADO.Net Concept Using DataSets
'' OLEDB Connection
Dim con As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=|DataDirectory|\xtreme.mdb;" & _
"Persist Security Info=True;" & _
"Jet OLEDB:Database Password=admin")
'' SQL Command
'' This command should same as it is in the crystal report file so u just need to copy the
'' code from there
'' Option In crystal Report is Show SQL Query
Dim com As New OleDbCommand("SELECT `Customer`.`Customer Name`, `Customer`.`Postal Code`, " & _
"`Employee`.`FirstName`, `Orders`.`Order Amount`, `Orders`.`Order Date` " & _
"FROM (`Employee` `Employee` " & _
"INNER JOIN `Orders` `Orders` ON " & _
"`Employee`.`EmployeeID`=`Orders`.`Employee ID`)" & _
"INNER JOIN `Customer` `Customer` ON " & _
" `Orders`.`Customer ID`=`Customer`.`Customer ID`")
com.CommandType = CommandType.Text '' command type
com.Connection = con '' give connection to command
Dim adp As New OleDbDataAdapter '' declare adapter
adp.SelectCommand = com '' select command for adpapter to work on
Dim ds As New DataSet '' delcare dataset
adp.Fill(ds, "Crystal") '' fill the dataset through adapter
Try
'' change path of the database for the reprot
'' if not change it will take the old path (if that path exists)
rpt1.DataSourceConnections.Item(0).SetConnection("", "" & path1 & "\Xtreme.mdb", False)
'' if password is given then give the password
'' if not give it will ask at runtime
rpt1.DataSourceConnections.Item(0).SetLogon("admin", "admin")
Catch exp As Exception
MsgBox(exp.Message)
End Try
rpt1.SetDataSource(ds) '' select the Dataset to the source of the report
cr1.ReportSource = rpt1 '' assign the report to the crytal reprot viewr (cr1)
End Sub
End Class

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.