Showing posts with label location. Show all posts
Showing posts with label location. Show all posts

Friday, February 17, 2012

Database Location Not on Design PC

OS = Windows XP Pro; VB6 Enterprise Edition; Crystal Reports XI Developers Edition.

I have designed and developed several CR reports on my PC at home. This is a "stand-alone" PC that is NOT connected to an internal network.

The production PC, that these reports are going on, the database is on a server. All the tables and field names are the same. The only difference is the location of the database.

After testing on my PC, is there any way to put the Server path in the Database Location so that I can create my setup package here at home?

Thanks,
SamGoto the menu Database->Set Database Location
Then map it to the current db and save the report

Database location in crystal report

Hello
i am totally new to crystal reports
Do we need to change database location of crystal report after installation at client side
If this is case then if there are 1000 reports, database location has to be changed for each report?
any there some shortcut to do this programmatically or any other wayHi,

use a DataSethttp://support.businessobjects.com/communityCS/TechnicalPapers/rtm_reportingoffadonetdatasets.pdf

or a ReportIni like this:
Private Sub ReportInit(ByVal blRefreshLocation As Boolean)

Dim crSections As Sections
Dim crSection As Section
Dim crReportObjects As ReportObjects
Dim crReportObject As ReportObject
Dim crSubreportObject As SubreportObject

Dim crReportDocument As ReportDocument
Dim crSubreportDocument As ReportDocument

Dim crDatabase As Database
Dim crTables As Tables
Dim crTable As Table
Dim crTableLogOnInfo As TableLogOnInfo
Dim crConnectioninfo As ConnectionInfo

Dim myArrayList As ArrayList = New ArrayList

'declare an instance of the report and the connectionInfo object

crReportDocument = New ReportDocument
crConnectioninfo = New ConnectionInfo

crReportDocument.Load(mstrReportName)

'pass the necessary parameters to the connectionInfo object
With crConnectioninfo
.ServerName = mstrDBServerName
.DatabaseName = mstrDataBaseName
End With

'set up the database and tables objects to refer to the current report
crDatabase = crReportDocument.Database
crTables = crDatabase.Tables

'loop through all the tables and pass in the connection info
For Each crTable In crTables
crTableLogOnInfo = crTable.LogOnInfo
crTableLogOnInfo.ConnectionInfo = crConnectioninfo
If blRefreshLocation Then
crTable.Location = mstrDataBaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)
End If
crTable.ApplyLogOnInfo(crTableLogOnInfo)
Next

'set the crSections object to the current report's sections
crSections = crReportDocument.ReportDefinition.Sections

'loop through all the sections to find all the report objects
For Each crSection In crSections
crReportObjects = crSection.ReportObjects
'loop through all the report objects to find all the subreports
For Each crReportObject In crReportObjects
If crReportObject.Kind = ReportObjectKind.SubreportObject Then
'you will need to typecast the reportobject to a
subreport
'object once you find it
crSubreportObject = CType(crReportObject, SubreportObject)

'open the subreport object
crSubreportDocument =
crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)

'set the database and tables objects to work with the
subreport
crDatabase = crSubreportDocument.Database
crTables = crDatabase.Tables

'loop through all the tables in the subreport and
'set up the connection info and apply it to the tables
For Each crTable In crTables
With crConnectioninfo
.ServerName = mstrDBServerName
End With
crTableLogOnInfo = crTable.LogOnInfo
crTableLogOnInfo.ConnectionInfo = crConnectioninfo
If blRefreshLocation Then
crTable.Location = mstrDataBaseName & ".dbo." &
crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1)
End If
crTable.ApplyLogOnInfo(crTableLogOnInfo)
Next
End If
Next
Next

crystalReportViewer.ReportSource = crReportDocument

End Sub|||You need to make database connection suggested above or Try to use DSN name

Database Location

Got a couple of questions

1. If you are managing databases in SQL Express with SQL Server Managment Express CTP, why doesnt VBE place the database there where you can see them? I can create a database inside SQL Server Managment Express CTP and view its tables, relations,etc. from within SQL Server Managment Express CTP, but when I make a database with VBE it does not show up in SQL Server Managment Express CTP. Also the database that was made inside SQL Server Managment Express CTP cannot be seen from VBE. Why? what did I do wrong, or is it supposed to be like that? Is that where you would want to place a database for multiple pc to share?

2.Login Question ;--shouldnt post this here but,

Is there a reason why you dont want to use SQL Authetication over Windows? The are a few pcs here that doesnt have user accounts installed(I know that not a good practice, but when you have multiple people needing different data quickly- switching users is not preferred, its a time thing for what I would call dummy terminals).

How do you take an instance of SQL and change to SQL Authetication over windows?

Curious?

David

Scratch not finding the file, I just learned how to connect to a database by chance, but if you can answer the rest, that fine!!|||

When using the Express IDES the system uses User instances for the database and these are dynamicly attached to the engine when you make a connection to the database in you code. (Have a look at the attach command inside you connection String)

For your logon problems, to allow sql athentication you will have to change the way that the database servers security model is difined. You can do this at setup by passing parameters to it, or as you have the Management studio set up you can connect to the engine and go to the properties for the database server. Then go to the security tab and change it there.