Hi
This is what we did to publish a new Crystal reports using a direct
connetion to the DB
This samples uses Vantage 8.00.X and an existing Crystal Report that has a
OLE DB connection to MSSQL
1-Select a screen where you want to show the report
2-Create a new tab using the wizard provided by Epicor
3-Add the Crystal references to the screen CrystalDecisions.* (dll�s)
4-Add this code in the customization of the screen:
In '// Add Custom Module Level Variables Here **
Private WithEvents crystalReportViewer As
CrystalDecisions.Windows.Forms.CrystalReportViewer
Dim oRpt As ReportDocument
--------------------------------------------------------------------------------\
------------------
In InitializeCustomCode() (or create a new sub and call this sub from here)
crystalReportViewer = New
CrystalDecisions.Windows.Forms.CrystalReportViewer
crystalReportViewer.ActiveViewIndex = -1
crystalReportViewer.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top
Or
System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right),
System.Windows.Forms.AnchorStyles)
crystalReportViewer.Location = New System.Drawing.Point(8, 24)
crystalReportViewer.Name = "crystalReportViewer"
crystalReportViewer.ReportSource = Nothing
crystalReportViewer.Size = New System.Drawing.Size(725, 504)
crystalReportViewer.TabIndex = 1
dim ReportPanel as object =
CType(csm.getNativeControlReference("c2cb6d82-b1cb-4d8a-b815-139f06bc28d1"),object)
<- you need to change the proper GUID of the new panel
reportPanel.Controls.Add(crystalReportViewer)
--------------------------------------------------------------------------------\
--------------------------
All the previous code is to add the crystal viewer object to the tab
And now this is a sample of the code to assign the report file and connect
it to the DB (you can use it in a button and change the report file
programmatically and store the dbuser and password in other place like the
company table)
oRpt = New ReportDocument
oRpt.Load(<put here the location of the report using double \\ instead a
single "\">)
oRpt.SetDatabaseLogon(DBUser, DBPassword, AppServer, DB) <- here you need to
set the parameters to connect the report to the DB
oRpt.SetDatabaseLogon(DBUser, DBPassword) <- for some reason I need to do it
for second time (we connect to SQL server)
oRpt.SetParameterValue("InvoiceNum", �123�) <- this way you can set the
parameters values to the report, parameter name, value. HERE you could send
the UserId, (you have to first create the parameter in report)
crystalReportViewer.ReportSource = oRpt
dim ReportPanel as object =
CType(csm.getNativeControlReference("c2cb6d82-b1cb-4d8a-b815-139f06bc28d1"),object)
<- set the proper GUID of the panel
ReportPanel.focus
Hopefully this could help you
Regards,
Jose Ferrer
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
This is what we did to publish a new Crystal reports using a direct
connetion to the DB
This samples uses Vantage 8.00.X and an existing Crystal Report that has a
OLE DB connection to MSSQL
1-Select a screen where you want to show the report
2-Create a new tab using the wizard provided by Epicor
3-Add the Crystal references to the screen CrystalDecisions.* (dll�s)
4-Add this code in the customization of the screen:
In '// Add Custom Module Level Variables Here **
Private WithEvents crystalReportViewer As
CrystalDecisions.Windows.Forms.CrystalReportViewer
Dim oRpt As ReportDocument
--------------------------------------------------------------------------------\
------------------
In InitializeCustomCode() (or create a new sub and call this sub from here)
crystalReportViewer = New
CrystalDecisions.Windows.Forms.CrystalReportViewer
crystalReportViewer.ActiveViewIndex = -1
crystalReportViewer.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top
Or
System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right),
System.Windows.Forms.AnchorStyles)
crystalReportViewer.Location = New System.Drawing.Point(8, 24)
crystalReportViewer.Name = "crystalReportViewer"
crystalReportViewer.ReportSource = Nothing
crystalReportViewer.Size = New System.Drawing.Size(725, 504)
crystalReportViewer.TabIndex = 1
dim ReportPanel as object =
CType(csm.getNativeControlReference("c2cb6d82-b1cb-4d8a-b815-139f06bc28d1"),object)
<- you need to change the proper GUID of the new panel
reportPanel.Controls.Add(crystalReportViewer)
--------------------------------------------------------------------------------\
--------------------------
All the previous code is to add the crystal viewer object to the tab
And now this is a sample of the code to assign the report file and connect
it to the DB (you can use it in a button and change the report file
programmatically and store the dbuser and password in other place like the
company table)
oRpt = New ReportDocument
oRpt.Load(<put here the location of the report using double \\ instead a
single "\">)
oRpt.SetDatabaseLogon(DBUser, DBPassword, AppServer, DB) <- here you need to
set the parameters to connect the report to the DB
oRpt.SetDatabaseLogon(DBUser, DBPassword) <- for some reason I need to do it
for second time (we connect to SQL server)
oRpt.SetParameterValue("InvoiceNum", �123�) <- this way you can set the
parameters values to the report, parameter name, value. HERE you could send
the UserId, (you have to first create the parameter in report)
crystalReportViewer.ReportSource = oRpt
dim ReportPanel as object =
CType(csm.getNativeControlReference("c2cb6d82-b1cb-4d8a-b815-139f06bc28d1"),object)
<- set the proper GUID of the panel
ReportPanel.focus
Hopefully this could help you
Regards,
Jose Ferrer
>From: "Gwizdz, Adam" <Adam.Gwizdz@...>_________________________________________________________________
>Reply-To: vantage@yahoogroups.com
>To: <vantage@yahoogroups.com>
>Subject: RE: [Vantage] Re: UserID
>Date: Mon, 6 Nov 2006 14:50:42 -0500
>
>Now I am getting more interesting ideas.
>But how can I send userID to ODBC Crystal?
>Could you be more specific.
>
>Thanks,
>
>
>Adam Gwizdz
>Manager, Corporate IT Systems
>Main Tape Company
>1 Capital Drive, Suite 101
>Cranbury, NJ 08512
>(800)718-8273 x332
>
>
>
> _____
>
>From: vantage@yahoogroups.com [mailto:vantage@yahoogroups.com] On Behalf
>Of Jose Ferrer
>Sent: Monday, November 06, 2006 2:29 PM
>To: vantage@yahoogroups.com
>Subject: RE: [Vantage] Re: UserID
>
>
>
>Hello
>
>What version of Vantage do you have?
>
>In Ver. 8.00.X you could have a customization to execute (and view
>inside
>Vantage) a Crystal report (using straight "ODBC") where you can send all
>the
>parameters you need including the current user id.
>
>The sample that we have is a report using a direct connection to MSSQL.
>For
>progress should work too.
>
>Regards,
>Jose Ferrer
>
> >From: "alfe_ksimon" <alfe_ksimon@...
><mailto:alfe_ksimon%40yahoo.com> >
> >Reply-To: vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com>
> >To: vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com>
> >Subject: [Vantage] Re: UserID
> >Date: Mon, 06 Nov 2006 18:26:51 -0000
> >
> >Adam,
> >
> >This is a great problem. I've got that issue plus a similar one,
> >getting the company of the user currently logged in, if you're
> >running more than one company. I assume you're talking about
> >straight "ODBC" reports (not forms which generate XML), and version
> >8.
> >
> >I talked with one of the developers at Epicor, don't recall the
> >name, who was the 'expert' in this area. What I took out of this
> >conversation was that since Vantage is connecting to the database as
> >Sysprogress, any user information that the report would be able to
> >grab would simply be the user who is logged into the database, which
> >at this point is simply "sysprogress". The alternative I threw out
> >at them (primarily because of my company issue) was whether I could
> >pass a parameter to the program, placing the parameter in the menu
> >structure (and simply have different menu items for different
> >companies/userid's), but their framework was unable to handle this
> >either.
> >
> >My solution is to wait until v8.03. My understanding is that we'll
> >be able to create BAQ/Dashboards which will generate XML, which can
> >then be used as input to the Crystal report. For some of my simpler
> >reports, I will convert the entire report to that methodology. For
> >some of the more complex reports which I don't wish to convert, I
> >believe that I can create a 'standard' BAQ/Dashboard which is
> >nothing more than a record with the UserID and the company they're
> >logged into, and use that as my base report, with the entire rest of
> >my report just being one big subreport with the userid passed for
> >printing or selection (in your case), and the company being a passed
> >parameter for selection.
> >
> >Hope this helps.
> >Kevin
> >
> >--- In vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com> ,
>"Todd Caughey" <caugheyt@...> wrote:
> > >
> > > For a custom version of a canned Crystal report most of the time
> >there is a field in one of the extracted files named RPTUSERID which
> >contains the login userid of the person running the report.
> > >
> > > For purely ODBC driven report it may be a lot messier. I know it
> >could be done in RB with a chain of links from the _MyConnection
> >table to the Connect table and then to UserFile before finally
> >linking on company only to the top level table(s) for your report.
> >Also, I am not sure how well this would work post-6.1 as well as
> >being burried behind an ODBC connection with its seperate login
> >processes. Using a query to create XML for the Cyrstal report in
> >8.0+ may be a valid route.
> > > -Todd C.
> > >
> > >
> > > -----Original Message-----
> > > From: vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com>
>[mailto:vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com> ]On
> >Behalf Of Gwizdz, Adam
> > > Sent: Thursday, November 02, 2006 8:07 AM
> > > To: vantage@yahoogroups.com <mailto:vantage%40yahoogroups.com>
> > > Subject: [Vantage] UserID
> > >
> > >
> > >
> > > I would like to create a custom Crystal Report but the logic would
> >be
> > > based on Log On User ID.
> > > Does anyone know how to capture that information from Vantage into
> > > Crystal Report?
> > >
> > > Thank you
> > >
> > > Adam Gwizdz
> > > Manager, Corporate IT Systems
> > > Main Tape Company
> > > 1 Capital Drive, Suite 101
> > > Cranbury, NJ 08512
> > > (800)718-8273 x332
> > >
> > >
> > >
> > >
> > >
> > >
> > > [Non-text portions of this message have been removed]
> > >
> >
> >
> >
>
>__________________________________________________________
>Express yourself instantly with MSN Messenger! Download today it's FREE!
>
>http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
><http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/>
>
>
>
>
>
>
>[Non-text portions of this message have been removed]
>
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/