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!

Report Part Hyperlinking 1

Status
Not open for further replies.

Naith

Programmer
May 14, 2002
2,530
0
0
GB
Hey,

Bit of background: CR XI against BO Universes on Oracle9 and SAP BW here.

Very quick synopsis: Is it possible to pass parameter values through data context or any other format through report part hyperlinking? The client here has serious security lockdown on the file repositories here, so I can't manually build a URL supplying aps credentials as you usually would.

If you have any experience of doing this, it would be gratefully received.

Thanks for reading,

Naith
 
Hi Naith, we read too little of you these days.

Is the intent to open another report from a hyperlink within a report and make sure that it uses security?

Are you using Crystal Server, or?

I would think that you could use Active Directory or NT security for this, though I've not done so myself.

-k
 
Welcome back Naith,

I don't know of a way to do this in Crystal and hyperlinking in Crystal (in Client mode at least) is also restricted in the sense of no subreports within subreports.

Have a look at 3rd-party solutions at:
At least one of the viewer there can react to a double-click on a report section by launching another report (passing a variety of dynamic (built as a formula based on info in that report section) command line arguments such as the report to launch, parameters values and login info, if different from the main report (if the same, then the same login credentials are automatically reused).

Ooops, it just occured to me that the current version of the Crystal runtime components doesn't support UNIVERSES. Is using a universe a hard constraint?

Regards,
- Ido

Visual CUT & DataLink Viewer:
view, e-mail, export, burst, distribute, and schedule Crystal Reports.
 
Hey SV,

Thanks for the kind words. Hope you're keeping well. My clients have been trying to get their monies worth out of me these days...

The idea is really just to navigate from managed report a to managed report b on the same server, within the same browser window, using InfoView. Unfortunately, my hands are tied regarding AD and NT authentication, owing to the security set up on site. Usually I'd pass hyperlink information between different report objects by manually building a dynamic URL through using the "website on the internet" option.

Now the only option, it seems, is to use the "Another Report Object" hyperlink style. I don't know much about the data context area of this, and there doesn't seem to be too much written on it, but I would have thought that this would be the logical place to pass parameter values through to report b, but I'm stumped at the moment as to how to do this.

All the best,

Naith
 
Hey Ido buddy - hope you're doing well.

The deal is that I've been called in at the equivalent of 11:59pm on this project, so it doesn't really leave much time for evaluating and purchasing 3rd party solutions, although thanks for the idea. That said, my client is actually Business Objects, so I'm not sure how that would go down!

Naith

PS: Oh, that does also mean that you were right in your assumption about the universes. That's non negotiable. Thanks for taking the time out to read about my problem.
 
I didn't realize this was a thin-client scenario (I missed the reference to the term "report parts").

Cheers,
- Ido

Visual CUT & DataLink Viewer:
view, e-mail, export, burst, distribute, and schedule Crystal Reports.
 
Hi Naith,

You need to use the openDocument report viewing method. It allows you to move from report to report (or part to part), and will use the same security token that is being employed by the currently viewed report - i.e. you don't have to pass security context. It does allow you to pass in security context if you wish - including a token rather than User Id and password.

You can find the documentation for this in the developers help. It is hidden away in the java_docs or com_docs zip file that is placed in the HELP\EN directory of an XI installation. You need to check the URL reporting chapter under the Viewer SDK section.

Regards,
Derek.
BusinessObjects Consultant - Perth, Western Australia.
 
Hi Derek,

Thanks for the response. Apologies for the delay, but I don't check back very much.

You're pretty much bang on. This is exactly the approach I ended up using.

Creating a repository function like:
Code:
//MyFunction
Function (stringvar ReportCUID, StringVar PromptValues, Stringvar
TargetReportType)
Stringvar Path;
Stringvar Document;
Stringvar Link;
Path := "[URL unfurl="true"]http://<server>/<path...e.g:bob/enterprise11/desktoplaunch>/opendoc/openDocument.jsp?";[/URL]
Select TargetReportType  
    Case "CR" : 
    Document := "sType=rpt"
    Case "Webi":
    Document := "sType=wid";
Document := Document + "&sIDType=CUID";
Document := Document + "&iDocID=" + ReportCUID; Link := urlencode(Path +
Document) +
replace(replace(urlencode(PromptValues),"&","%26"),"+","%2B");
enables linking functionaliy to the managed object using something like this from the source field:
Code:
MyFunction("<Report SU_ID Here>","&lsS{?YourParameterHere}="+{YourFieldHere},"CR" )
Cheers to everyone who spent any time on this for me.

Naith
 
Hi Naith,

Using a Custom Function (repository function) is a great method of implementing this, as you can make it generic and call it from any report. One thing I did was convert the equivalent of your second and third parameters into arrays. This way I could pass in as many parameters as I liked, and use one single function to itterate through the arrays to create a variable length URL with a variable number of parameter entries. I also appended the "&lsS" part in the function rather than making it part of the input variables.

One other thing I did - use the custom function to ensure that all "illegal" characters for a URL are properly substituted. I.e. change spaces to %20, etc...



Derek Stobbart
Business Objects Consultant - Perth, Western Australia
 
Sexy work. Gold star for you.
-N
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top