Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Reports of Death of UFLs with CR9 have been greatly exaggerated 1

Status
Not open for further replies.

KenArcher

IS-IT--Management
Jul 23, 2002
16
0
0
US
I was told by CR support that the custom functions in CR9 behave almost identically to UFLs, in particular that custom functions create a .dll file just like UFLs. But I have been unable to find where in the Windows or Crystal Reports file structures new custom functions are saved, and therefore how to create a custom function and then install it on other PCs. If custom functions are not saved as separate files, then it seems that they can only be used with different .rpt files on the same PC via the Crystal Repository. If this is the case, then reports of the death of UFLs with CR9 custom functions have been greatly exaggerated.
 
I don't think that they're to replace UFLs, are they? Rather provide a means to encapsulate business logic when constructing reports.

Since CE 9 isn't available, I'm not touching CR 9 yet, but I would think that any functions you define in CR 9 will migrate to CE 9, so there must be a means...eventually...

<forever the optimist>

-k kai@informeddatadecisions.com
 
SV you are normally on top of it but I think you missed his point on this one.

A UFL can be distributed and registered on multiple machines, so that a report can have the functionality of the UFL throughout the enterprise.

If Ken is saying that the new user defined functions in CR v9, which do not require you to write VB or C++ code, cannot be made into a .dll and distributed, then his pint that we will continue to use VB to write UFLs is very valid.

If I messed the point here please enlighten me. Software Training and Support for Macola, Crystal Reports and Goldmine
251-621-8972
dgilsdorf@mchsi.com
 
dgillz said it more clearly that I did. It doesn't look like alot of Tek-Tips users have played with CR9 yet. I for one was thrilled with the prospect of distributing custom functions created within CR, and disappointed to find that maybe Crystal Decisions promotion of this feature as &quot;instead of UFLs&quot; and an example of &quot;component reuse&quot; (sometimes as the #1 new feature in CR9) is perhaps a little misleading. I think there are other differences between custom functions and UFLs as well - I'm still checking it out (with the usual dearth of documentation). Has anyone else learned more about custom functions than I have?
 
The new custom functions are stored in the repository database, not in a dll. The idea being that everyone who has access to this repository database can use the UFL. The repository can be shared and can even have security.

Just a few days ago I spoke with a CD product manager and asked if there was an easy way to transfer repository items from one system to another (like from mine to a clients) I was told that there is no automatic way (yet) but that someone would surely figure one out. You can a client your repository database, but currently that will replace the one they have.

Now, the repository is simply an MS Access or SQL server database with several tables, so transferring an item won't be difficult once we figure out how the items are stored. Probably only need to write a fancy append query.

However, that being said, the DLL style of UFL's is not gone. They have even modified the Function tree in v9 so that the &quot;Additional&quot; functions are organized by their source UFL. Ken Hamady, On-site Custom Crystal Reports Training & Consulting
Public classes and individual training.
Guide to using Crystal in VB
tek@kenhamady.com
 
Thanks KenHamady. The custom function seems to be stored (at least in my installation of CR9) in the OR_OBJECTDETAILS32 table of the Repository_en.mdb Access database. The Contents field, in particular, simply saves the code used to make the custom function. So creating a program to append the data in this table to the data in the corresponding database table on others' systems seems to be the answer. Perhaps a Data Transformation Services package created within SQL Server might create the cleanest experience for the one receiving the custom functions.

Having said this, I think CD's recognition to KenHamady that UFLs are alive and well is mainly due to more limited functionality given by CD's Basic syntax than by VC++ or VB.
 
Custom Functions are a way to package and reuse functionality that already exists within Crystal -- UFLs can bring new functionality to the table...

Cheers,
- Ido CUT, Visual CUT, and DataLink Viewer:
view, e-mail, export, burst, distribute, and schedule Crystal Reports.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top