Crviewer and Crystal XI and VB6

I have installed CR Professional XI (ver 11.0.0.1994).
Previously installed is ver 8.5 and 9.
In my VB6 app I expected to see a component 'Crystal Report Viewer Control'.
This does not exist!
Looking in the directory \Program Files\Common Files\Business Objects\3.0\crystalreportviewers11 there is no ActiveXControls directory.
Which I believe (from the doco) should exist???
Why is it missing?
I have tried reinstalling crystal, lastest SP, hot fix etc but nothing has helped.
What am I missing?

You need to add the new control to your toolbox pallet by selecting "Crystal ActiveX Report Viewer Library 11.0" in the Components section of your project (CTRL + t)

Similar Messages

  • Crystal Reports XI and VB6 Deployment

    Hi,
    I'm new to crystal reports so please be gentle.
    Due to a legacy application I need to use crystal reports with vb6 so I opted for the XI version over 2008.
    So i've knocked up a quick viewer in vb6 that will pass parameters (as required) to the requested .rpt file.
    Now i've got it working - what crystal files do I need to deploy my viewer ??
    Is there a crystal runtime to be installed on users machines ?? and are there additional licensing cost's ??
    Thanks for any and all help.
    Saboteur

    Thanks for the reply Don.
    Unfortunately I have searched the forum and have found nothing but confilcting information and frustration.
    Also, I should have been clearer in my original q, in that I'm using the 30 day trial of CR Xi and not all of the information is included in the download, specificaly the documentation refers to  a vb sample folder that doesn't exist and whilst i found documentation on the rdc model, i found no info on distribution.
    I'm not trying to be difficult, but it's taken me nearly two days of trawliing the internet just to get a simple viewer working in VB6 and even now I think i may be using the wrong / to many references in my code.
    All i wanto to do is build a veiwer that i can enter paramters into - the reports will all be pre defined using CR Xi - but i'm not going to spend the best part of 500gbp to write reports I can't distribute.
    I've managed to get the hang of the report builder in under and hour and have figured out how to do some quite complicated reports very quickly and cannot praise CR enough for it's ease of use. It's just lacking in the final furlong imho.
    Cheers
    Saboteur

  • Connection error with Crystal Report XI, VB6 and Sybase ASE15

    Hello !
    I have an error #4002 when I want to launch a report in VB6 with the ActiveX Crystal Report Viewer.
    I use Sybase ASE 15 with an ODBC link and the reports run stored procedures.
    This error seems to be an authentification error, but I don't know what parameters are missing or wrong...
    - My reports works well in the report designer.
    - The reports connected to a text file or an ADO recordset work in VB6.
    - The Verify Database works in design mode in VB6.
    - The problem is the same with tables, stored procedures, SQL and with or without parameters...
    - I tried to connect the report to a DataEnvironnment but I get the same error.
    The problem appears when I use the Crystal Wizard to create a form automatically AND when I create objects directly in code like :
        Dim crapp As CRAXDRT.Application
        Dim oReport As CRAXDRT.Report
        Set crapp = New CRAXDRT.Application
        Set oReport = crapp.OpenReport("C:\myreport.rpt")
        CRViewer.ReportSource = oReport
        CRViewer.viewReport
    Please help !

    Hello,
    I don't see any database logon code in what you posted.  You need to log onto the database at runtime since Crystal Reports will never store passwords.
    You can download and review the [Connection Properties|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00635998-751e-2b10-9cba-f50ee1e4ef81] document for more information on how to log onto your database at runtime.  This document was written for CR9, but it's the same for CR10, CR XI (v11.0), and CR XI R2 (v11.5).
    I hope this helps.
    Sincerely,
    Dan Kelleher

  • Crystal Report CRViewer and runtime installation

    Post Author: maurizio
    CA Forum: Crystal Reports
    Hello everybody,
    We  use Crystal Report 9 Developer English. 
    We developed a Visual Basic 6 application under a Windows 2003 server computer using the crviewer object integrated into visual basic code.
    We need to install the run time version of the application in Windows NT 4 sp6a  computers.
    We created an installation kit by the InstallShield of Visual Studio 6.
    We can install the kit in the Windows Nt computers, but when we run the application it crashs when we try to produce a report. It looks like the runtime dll of Crystal Report 9 have not been correctly installed by the installation kit or are missing.
    What dll we need to install more? How to install them? How to include them into the kit?  Do u have a general  installer of the runtime dll for Crystal Report 9?
    It is possible to install all the Crystal Report 9 dll manually and where to copy ?
    Please give us an help because our work it is stopped now since a week. We didnu2019t find any solution.
    The best solution for us should be to have a dedicated installation kit for crystal report runtime dll.
    Thanks a lot
    Maurizio Carnesecchi

    Post Author: AndersG
    CA Forum: Crystal Reports
    FWIW, we use InstallShield12 to build an installer for our app built in C++ and with CR9. That method has worked fairly well. I must admit that I have not tested on NT4 in a long time though and I doubt that anyone from BO will help you since there is no help to be had from MS in this case.

  • Crystal reports and vb6.0 and database connectivity

    Hello,
    We have installed crystal report 2008 trial version in our system and after installation we are unable to view the crystal report component ocx crystl32.ocx and add the same into a vb form and create a connectivity between access database.
    Please help on the above query.
    Mobile:+91 9880553553.
    Thanks,
    Ram.

    Hello Ram,
    The OCX (Crystl32.ocx) was retired after CR8.5.  It will not work with CR2008 reports.  Additionally, there are no other COM components that ship with CR2008 to work with VB6.
    With CR2008 you'll have to migrate to use Visual Studios and the Crystal Reports .NET SDK.
    You can search on the Crystal Reports .NET forum for additional information on getting started with VS.NET and Crystal Reports 2008.
    Sincerely,
    Dan Kelleher

  • Crystal XI and VB6  -  Calender selection

    Post Author: fortuel
    CA Forum: Deployment
    Hello.
    I have an application which works very well with VB6 and Crystal XI on my post because crystal XI is installed(settled) there.
    When deployement on a user station, the calendars of selection of date of crystal's viewer  do not appear and it is impossible to make a selection. The reference to this calendar is C:\Program Files\Fichiers communs\Business Objects\3.0\crystalreportviewers11\html\Calender.html
    This file which is in problem?Would there be a bad reference to a dll?
    Thanks to help me

    <p>This issue is documented in Kbase  c2013226 on http://technicalsupport.businessobjects.com.</p><p>Here&#39;s the jist of the kbase:</p><p>In the registry modify the following key:</p><p>HKEY_CURRENT_USER\Software\Business Objects\Suite 11.0\Crystal Reports Designer Component\DatabaseOptions]<br /><br />MapFieldsByOrdinalForAttachedRecordset<br /><br />change it from No, to Yes </p><p>and also in the same hive, change DontVerifyAttachedRecordset from No to Yes<br /> </p><p>Rob Horne<br /><a href="/blog/10">Rob&#39;s blog - http://diamond.businessobjects.com/blog/10</a></p>

  • Crystal XI and VB6 Field Mapping Issues

    <p>Hi all,</p><p>I&#39;m in the processing of migrating crystal 8.5 to Crystal XI in my VB6 package. I&#39;ve been able to successfully get the data and pass it along to crystal, but the only problem i have is with field mapping. In crystal 8.5, it didn&#39;t care what the name was called in the ttx it just passed the data along. I&#39;ve found that if the ttx name didn&#39;t match what the SQL statement is, then it wouldn&#39;t pass that field data along in crystal XI.</p><p>I&#39;ve tried looking at .FieldMappingType in both CRAXDRT and CRAXDDRT with no luck. If i set my report and app to use CRAXDDRT it pops up with the mapping box and i can map them at runtime. </p><p> I&#39;d hate to have to go through all my code and start labeling all my SQL statements. Is there a property i can set that will help me out? Or am i SOL.</p><p>Thanks.</p><p>-Louie Orbiso</p>

    <p>This issue is documented in Kbase  c2013226 on http://technicalsupport.businessobjects.com.</p><p>Here&#39;s the jist of the kbase:</p><p>In the registry modify the following key:</p><p>HKEY_CURRENT_USER\Software\Business Objects\Suite 11.0\Crystal Reports Designer Component\DatabaseOptions]<br /><br />MapFieldsByOrdinalForAttachedRecordset<br /><br />change it from No, to Yes </p><p>and also in the same hive, change DontVerifyAttachedRecordset from No to Yes<br /> </p><p>Rob Horne<br /><a href="/blog/10">Rob&#39;s blog - http://diamond.businessobjects.com/blog/10</a></p>

  • CR XI and VB6.0 Issue

    Hello all,
    I have a VB6 application that is currently using CR8 to view and print reports.  We are moving to CRXI R2 and I am having an issuw ith moving the old reports into CRXi format.  My issue is connecting to the database with the newly converted report.
    Hre is my scenario, I open one of the CR8 reports in CRXI and move a field to force a save. When I save the report I get the message that I can not go back. I say OK and when I open the report in my VB6 application it open just fine.
    But now I go back into the report and do a "Verify Database" and it tells me that the database has changed and to procedd to fix up the report.  I click OK and OK on "The database is up to date".  Now when I go back to my VB6 app and try to view the report I get an error on Line19 below that says Logon Failed for user dbo.  But that is not the user id that I am passing in CPProperty.
    11      Set CPProperty = crDBTables.ConnectionProperties("DSN")
            ' Set the ODBC data source name. Note: You do not need to set this property if you are using the same ODBC data source.
    12      CPProperty.Value = "MDBSLOCAL"
            ' Get the "User ID" property from the ConnectionProperties collection.
    13      Set CPProperty = crDBTables.ConnectionProperties("User ID")
            ' Set the user name. Note: You do not need to set this property if you are using the same user name.
    14      CPProperty.Value = strUID
            ' Get the "Password" property from the  ConnectionProperties collection.  Note: You must always set the password if one is required.
    15      Set CPProperty = crDBTables.ConnectionProperties("Password")
            ' Set the password.
    16      CPProperty.Value = strPwd
            ' Get the "Database" property from the
            ' ConnectionProperties collection.
    17      Set CPProperty = crDBTables.ConnectionProperties("Database")
            ' Set the database.
    18      CPProperty.Value = connLite.DefaultDatabase
    19      crDBTables.Location = connLite.DefaultDatabase & ".mdbs." & crDBTables.Name
    Thanks in advance for the assisstance
    Dave

    Hi Dave,
    In CR 9 the database drivers and SDK methods were updated completely as well as the names of the DB drivers.
    I suggest you have a look at the RDC sample app's to see what the new methods are and how to use them. Also, the Parameters API's were also rewritten so you'll have to update those also.
    Another "gotcha" is the order of the various API's now. You must set the Log on info first, then parameters and then Record Selection formula and if you are then the SQL query, also note that editing the SQL is no longer a function in the Designer. Use Commands in the database wizard to write your own SQL.
    Samples:
    http://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsSDKSampleApplications
    Look at the COM link.
    One more bit of info, the RDC has been deprecated as of CR XI R2 ( 11.5 ) which is end of life and support now. To get the latest and final Service Packs you can get them from here:
    http://downloads.businessobjects.com/akdlm/crystalreports/crxir2_sp4_full_bld_0-20008684.exe
    http://downloads.businessobjects.com/akdlm/crystalreports/CRYSTALREPORTS06_0-20008684.EXE
    Distribution files are also on our download page.
    Next is to move to Visual Studio 2010 and Cr for Vs 2010 and using RAS which is the replace reporting engine for RDC. Samples are also on that sample page.
    Don

  • How to use SetRotate with a AcroPDF control and VB6?

    I'm creating a program in VB6 that has an Adobe Reader control (using AcroPDF.dll version 9.0) on the form that allows the user to open and view PDF files and I need to know how to use the SetRotate command programmatically to set the  view of the PDF to a different angle (the view angle, like 90, 180 degrees, etc.).
    According  to the API reference, you use AcroPDPage.SetRotate but some how I need  to tell it which control to apply it to and that is what I don't  understand. If I just create a new instance of AcroPDPage and try the SetRotate or even GetRotate it gives me a 'object variable not set' error, which I understand since PDPage is supposed to be part of another object (such as a view control of some sort).
    My question is, how do I get or create a AcroPDPage object that is part of the AcroPDF control on the form so that I can use GetRotate and SetRotate methods and apply it to the PDF view control (AcroPDF)? Although this is the prefered method of solving this problem, I guess if I could just get the AcroPDF control to show the view menu, that would be good enough.
    I'm using the AcroPDF.dll version 9.0 and have Adobe Reader 9.0 installed on a XP SP3 machine. Again, I'm writing this program in VB6.
    As you can probably tell, I'm fairly new to programming, especially using references to other program components like Adobe Reader.
    Any help is appreciated, thanks.

    Set1 = ...
    Set2 = ...
    Set1.addAll(Set2);
    addAll(Collection<? extends E> c)
    Adds all of the elements in the specified collection to this set if they're not already present (optional operation). If the specified collection is also a set, the addAll operation effectively modifies this set so that its value is the union of the two sets. The behavior of this operation is unspecified if the specified collection is modified while the operation is in progress.

  • Cystal Report XI R2  11.5.9.1076 using RDC and VB6.  SelectPrinter not work

    I have been using crystal report since version 3.0
    I am trying to re-directed a report output directly to a printer. (Not the default printer)
    The following is the relevant code.
    It executes, but the report doesn't go to the proper printer and in design mode it crashes the environment sometimes.
                If PrinterName <> "" Then
                    Dim DriverName As String
                    Dim PrtName As String
                    Dim PortName As String
                    Dim Prt As Printer
                    For Each Prt In Printers
                        If UCase(Prt.DeviceName) = UCase(PrinterName) Then
                            PrtName = Prt.DeviceName
                            DriverName = Prt.DriverName
                            PortName = Prt.Port
                            Rpt.SelectPrinter DriverName, PrtName, PortName
                            Rpt.PaperSize = Printer.PaperSize
                            Rpt.PaperSource = Printer.PaperBin
                            Exit For
                        End If
                    Next
                End If
    Any help would be greatly appreciated.
    Kalman Skulski

    Thanks for your quick response Elaine.
    I tried your suggestion. 
    I changed my code and added Rpt.PaperOrientation = crDefaultPaperOrientation
                            Rpt.SelectPrinter DriverName, PrtName, PortName
                            Rpt.PaperSize = Printer.PaperSize
                            Rpt.PaperSource = Printer.PaperBin
                            Rpt.PaperOrientation = crDefaultPaperOrientation
    But it still is printing to my default printer and not the printer I am setting it to.    It used to work in 8.5.
    Kalman Skulski

  • Java signed and VB6 unsigned

    Hello everyone
    I know I made 2 posts in the past few days about this problem, but at that time, I wasn't sure this IS the problem or some other issues I might not know about. So the posts were very confusing. I thought I might make this new one to simplify things.
    A quick overview, I need to convert a VB6 client to Java. The server is in VB6 and I can't modify its code. So no access. I do have the source code and the working version of the VB6 client however.
    The problem I have is how to pass byte value more then 127 to the VB server. Java use signed byte (-127 to 127) while VB uses unsigned. Using packet sniffing program (Ethereal), I know the VB6 client is passing bytes values 0x85, 0x9E to the server, while my Java client (in doing exact same thing) can only pass value 0x3F 0x3F instead. Anything below 127 (i.e alphabetical letters) is the same between the 2 of program.
    So my question is how one can pass signed Java bytes into VB6 unsigned bytes. I did some search on google and found this
    http://www.javaworld.com/javaforums/showflat.php?Cat=&Board=javabeginner&Number=9208&page=15&view=collapsed&sb=7&o=&fpart=1
    but still didn't help me. I still only can pass bytes below 127.
    Any help is appreciate. Thank you in advance!

    To understand how things work you have to distinguish between the "bits in the byte", which can vary between 0x00 and 0xff in Java as well as in VB, and the interpretation of these bits, which is different.
    While 0xff might be interpreted as 255 in VB, it is a -1 in Java.
    So if you want to send the byte value 0x85, just write e.g.
    byte by = (byte)0x85;and the byte will contain the correct bits. You can also use casting from an int or short and it will give correct results:
    int i = 255;
    byte by = (byte)i;will leave by with 0xff.
    In the other direction, you might consider converting your bytes to short or int. In this case you have to handle the negative values explicitly, e.g.
    byte by = (byte)0x85;   // you might have received this value from VB
    int i = by & 0xff;leaves the variable i with the value of 133.

  • RAW problem with OO4O and VB6.

    Hello!
    Env: W2K3 SBS R2, O11gR2, OO4O, VB6 and problem from a "heritage" project ;-).
    /* Create a small Test table */
    Create Table ORAWTEST
    ( oid Number(10),
    bflags Raw(4)
    ) Tablespace USERDATA Storage(Initial 32K Next 32K);
    ' ** A small VB6 app. **
    Dim osess As OraSessionClass, odb As OraDatabase, ors As OraDynaset
    Private Sub Form_Load()
    Set osess = CreateObject("OracleInProcServer.XOraSession")
    Set odb = osess.OpenDatabase("orcl", "uid/pw", ORADB_ORAMODE)
    End Sub
    Private Sub Form_Unload()
    odb.Close: Set osess = Nothing
    End Sub
    Private Sub Command1_Click()
    ' Insert 3 rows with different values Into Test table using Addnew() method.
    Dim ws As String
    Set ors = odb.CreateDynaset("Select * From ORAWTEST", ORADYN_ORAMODE)
    ws = Chr$(0) & Chr$(0) & Chr$(32) & Chr$(0)
    ors.AddNew: ors("oid") = 1: ors("bflags") = ws: ors.Update
    ws = Chr$(0) & Chr$(0) & Chr$(0) & Chr$(32) ' <-- !!! This is the problem.
    ors.AddNew: ors("oid") = 2: ors("bflags") = ws: ors.Update
    ws = Chr$(0) & Chr$(0) & Chr$(0) & Chr$(64)
    ors.AddNew: ors("oid") = 3: ors("bflags") = ws: ors.Update
    ors.Close
    End Sub
    ... and now the surprise:
    SQL> Select oid, RawToHex(bflags) From ORAWTEST;
    OID RAWTOHEX(BFLAGS)
    1 00002000
    *2 000000*
    3 00000040
    Row 2 bflags column last byte is missing (in case of x'20' value).
    Is it a bug, or whatever? Thanks for any idea in advance.
    Leslie

    OK ... I solved the first question. I'll post the answer as nobody on any of the forums where I've posted this question for the last year or so has known the answer - either that or they weren't willing to share it.
    In the form, CR puts the following boilerplate:
    Private Sub Form_Load()
    Screen.MousePointer = vbHourglass
    CRViewer1.ReportSource = Report
    CRViewer1.ViewReport
    Screen.MousePointer = vbDefault
    End Sub
    I found that if I added Report.DiscardSavedData before the report source is declared, the report is forced to refresh it's data each time it's run. So that solves the first part of my problem.
    Question 2 is still unknown ...
    Ken

  • Crviewer and changing database

    the tutorial on  Adding Ability to Change Database Location at Runtime
    says
    In this tutorial you will change the name of the Database server, not the name of the Database.   It is not possible to change the name of the Database with the CrystalReportViewer control.
    since this seemed pretty clear i have not tested it
    but
    since it does not seem sensible  - after all you can change the connection string
    i wondered why it said this if not completely true

    Correction.
    There are a number of ways of handling database connections.
    1) CR Viewer SDK. Viewer SDK will only allow you to log on to the connection the report was designed off of. It will not ( as the note says) allow you to "change the name of the Database with the CrystalReportViewer control."
    2) CR Engine SDK. This SDK will allow you to change the logon information
    3) InProc RAS SDK. This SDK will allow you to change the logon info, change the database driver, add tables, remove tables and more.
    One thing to keep in mind; InProc RAS SDK does not ship with any VS bundles. But it does ship with Crystal Reports for Visual Studio 2010 and all "stand-alone" versions of CR.
    Oh, one more thing. See KB [1553921  - Is there a utility that would help in writing database logon code?|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_bi/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333533353333333933323331%7D.do]. It may prove to be quite useful.
    Ludek
    Follow us on Twitter http://twitter.com/SAPCRNetSup
    Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports]

  • Mismatch of CAN-Identifier using NI-CAN 2.2 and VB6

    Hello all,
    I'm using VB6 to program my applications using a NI-CAN PCMCIA interface card and the NI Frame API.
    On my application a device is sending a response signal via CAN on Identifier 0x10FFEAB02. If I check the identifier to continue the program flow 
    Status = ncWaitForState(ReceiveObj, NC_ST_READ_AVAIL, 0, state)
        If Status = 0 Then
            Status = ncRead(ReceiveObj, Len(ReceiveFrame), ReceiveFrame)
            If ReceiveFrame.ArbitrationId = &H10FFEB02 Then         
                Text_ist.Text = ReceiveFrame.Data(3)
            End If
        End If
    I receive a never ending loop.
    If I let VB show me the received Identifier the value is 0x30FFEB02.
    The first digit is always wrong. I also tried this program part with different receiving ID's but it is always the same. The first digit is always real+2 bigger than what is physically on the CAN bus.
    Is someone capable to support. Thank's a lot.
    Gerd

    Hi Mike,
    I was able to find a way to obtain the interface type of a GPIB board through the use of the .INI file that is created by MAX. The GPIB.INI file located in C:\WINDOWS\system32 contains a key called BoardName listed under the GPIB device name that will describe the interface type of the board.
    I have attached a simple LabVIEW program that demonstrates how to programmatically extract out the BoardName information for a GPIB board.
    I hope this will give you a good workaround for your application. Good luck!
    Kileen Cheng
    Applications Engineer
    National Instruments
    Attachments:
    gpib_ini.vi ‏24 KB

  • OO4O 10g and VB6 Bookmark Property Problem

    Hi All,
    I'm facing a problem with the BookMark property. It's throwing OIP-04121 Error.
    Below are the details
    Controls used:
    1) SSDBGrid of v3.11
    2) ORADC of v10g
    Code:
    Private Sub gridMain_RowLoaded(ByVal Bookmark As Variant)
    Dim PubHol As PUBLIC_HOLIDAY
    Dim Rs As Object 'Oracle DynaSet
    Set Rs = datMain.Recordset.dbClone()
    Rs.Bookmark = Bookmark ' Getting OIP-04121 Error here
    If Rs("year") = 0 Then
    gridMain.Columns(1).text = "----"
    Else
    gridMain.ColText(1) = Rs("year")
    End If
    The code is working fine in VB3.0, OO4O 1.0 and Sheridan Data Widgets 1.0e. However it's throwing error with VB6, OO4O latest versions and Sheridan Data Widgets 3.11.
    Please help me I tried many ways but failed. Kindly provide some alternate way to achieve this BookMark.
    Thanks and Regards,

    Hi All,
    I'm facing a problem with the BookMark property. It's throwing OIP-04121 Error.
    Below are the details
    Controls used:
    1) SSDBGrid of v3.11
    2) ORADC of v10g
    Code:
    Private Sub gridMain_RowLoaded(ByVal Bookmark As Variant)
    Dim PubHol As PUBLIC_HOLIDAY
    Dim Rs As Object 'Oracle DynaSet
    Set Rs = datMain.Recordset.dbClone()
    Rs.Bookmark = Bookmark ' Getting OIP-04121 Error here
    If Rs("year") = 0 Then
    gridMain.Columns(1).text = "----"
    Else
    gridMain.ColText(1) = Rs("year")
    End If
    The code is working fine in VB3.0, OO4O 1.0 and Sheridan Data Widgets 1.0e. However it's throwing error with VB6, OO4O latest versions and Sheridan Data Widgets 3.11.
    Please help me I tried many ways but failed. Kindly provide some alternate way to achieve this BookMark.
    Thanks and Regards,

Maybe you are looking for