CR2008 and Progress 4gl/OpenEdge

sivaneli

New Member
Hi everyone, I hope I've managed to find the right place for this. Sorry for the basic level of questioning - I'm struggling a bit.



We have a Progress 4gl application that currently allows you to preview reports in Crystal 8 and 9. This works by placing an ocx on the screen and manipulating. I understand this is no longer possible in version 2008 of Crystal. We also have an old method that plugs directly into CRPE32.dll but I understand this is also not possible in the latest versions.



So how am I meant to provide a preview screen for reports in 2008? Is there a different dll I need to plug in to? Is there a document exposing all the external functions of that dll? Does anyone have some code examples that I can look at?



Many thanks in advance.
 

RealHeavyDude

Well-Known Member
If you are on reasonably recent version of OpenEdge ( 11 for that matter ) you don't need to fiddle with the OCX integeration ( which I always found to be somehwat shaky ).

I recently made a proof of concept using the .NET classes provided by Crystal. The necessary assemblies are automatically installed on Windoze when you install the runtime package. Unfortunately I am not allowed to post the code here as it is the intellectual property of my employer ...

Nevertheless you will find a lot of C# code examples on the internet which are pretty much straightforward to implement as ABL classes.

In a nutshell:
  1. We define the report in the report designer as usual ( we've chosen to use XML as data source ).
  2. We fetch the ProDataSet containing the report data from the AppServer.
  3. We export the ProDataSet to an XML document using the write-xml method.
  4. We launch the CR report engine and change the data source to the XML document.
  5. Then the report is viewed in the CR Report Viewer .NET object.

This is just to give you an idea how you could integrate CR with ABL in a very smooth way.

Heavy Regards, RealHeavyDude.
 

sivaneli

New Member
Thank you for your attention.
Realheavydu me "OpenEdge Release 10.1B" I am using the version.
Is there a solution that you are experiencing this issue?

Note: I agree with what you said in Intellectual Property Rights
 

RealHeavyDude

Well-Known Member
Unfortunately not. The first release that included the bridge to the .NET CLR ( Common Language Runtime ) was OE10.2A. Plus, OE10.1B is very old software and worst of all: It is not supported anymore. Therefore you should upgrade to a recent OE11 release ( OE11.5 is the current release ) anyway.

Heavy Regards, RealHeavyDude.
 
Top