12/12/2024 12:59:02 PM
slxdeveloper.com
Now Live!
|
|
|
How to Filter a SalesLogix Crystal Report by ID at Runtime |
|
Description: |
This article describes how to call provide a Crystal Reports parameter to a report at runtime via a script. This example details how to feed the current OpportunityID to a report when a button is clicked.
|
Category: |
Architect How To Articles
|
Author: |
Mark R. Bailey
|
Submitted: |
6/6/2007
|
|
|
Stats: |
Article has been read 32142 times
|
Rating:
- 4.5 out of 5 by 28 users |
|
|
|
fiogf49gjkf0d
This article describes how to call provide a Crystal Reports parameter to a report at runtime via a script. This example details how to feed the current OpportunityID to a report when a button is clicked.
- A launch script to call the report and create a global variable.
- A script that launches with the report's WhenOpened event.
- The report to print.
Call a script that creates a global variable with the GlobalInfoSet function, then launches a specific report via the DoInvoke function.
Sub Main
Dim oppid
oppid = Application.BasicFunctions.CurrentOpportunityID
Application.GlobalInfo.Add "g_TemporaryOpportunityID", oppid
Application.BasicFunctions.DoInvoke "CrystalReportPreview","Opportunity:Placement"
End Sub
On the report that you want to filter, for the WhenOpened event (properties of the report itself, accessible by selecting Properties with a right-click from Manage Reports in Architect), select an active script to execute and use the ReportAddCondition function to create a parameter for the report that you execute.
Sub Main
Dim oppid
oppid = Application.GlobalInfo("g_TemporaryOpportunityID")
With Application.BasicFunctions
.ReportClearConditions
.ReportAddCondition "Opportunity:OpportunityID", "=", "'" & oppid & "'" , "string", ""
.GlobalInfoClear "g_TemporaryOpportunityID"
End With
End Sub
- Click Manage | Reports from within Saleslogix Architect.
- Locate the report that you called from the launching script (example above), and double-click.
- On the Execution tab, specify properties for the When Open event by clicking the elipsis.
- For Action, select "ActiveScript."
- For Argument, locate and select the When Open script (like the script example above).
See the screenshot below:
Associate the launch script with an event in Saleslogix, whether it's the clicking of a button, or a script that launches the report directly, or what not.
|
|
|
|
Rate This Article
|
you must log-in to rate articles. [login here] 
|
|
|
Please log in to rate article. |
|
|
Comments & Discussion
|
you must log-in to add comments. [login here]
|
|
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 2/20/2008 1:00:15 PM | fiogf49gjkf0d If I launch the report by using a launch script it all works fine. BUT, I want to launch the report by clicking on the "Reports" icon and selecting the report from the "Reports" window. When I run the report from there it doesn't seem to call the 'When Open' script. I have even added a msgbox popup in the 'When Open' script and the popup shows when I run from the launch script, but not when I run from the "Reports" window. | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 2/20/2008 1:27:06 PM | fiogf49gjkf0d Here I am answering my own question. It seems that the 'When Open' script does run when the report is run from the "Reports" window but the msgbox does not pop up. | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 2/20/2008 4:50:55 PM | fiogf49gjkf0d OK one more time, after much testing and frustration it seems that when the report is run from the "Reports" window that the 'When Open' script doesn't run. | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 2/20/2008 4:51:19 PM | fiogf49gjkf0d OK one more time, after much testing and frustration it seems that when the report is run from the "Reports" window that the 'When Open' script doesn't run. | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 5/12/2008 5:34:36 PM | fiogf49gjkf0d From what I am now learning, Slx version 7.2 uses a new report viewer which doesn't allow the use of the "When" events that are defined in a report's properties. I'm now trying to figure out how to set up filters in code to replace our old method. Any ideas, or can you direct me to the appropriate document? | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 6/10/2008 8:46:54 AM | fiogf49gjkf0d Is the problem with 7.2 confirmed? | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 7/21/2008 8:26:56 AM | fiogf49gjkf0d I just tried this in v7.2.1 and it worked perfectly! Thanks for the well-written article. | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 10/14/2008 12:50:04 PM | fiogf49gjkf0d Hello,
I just tried this on 7.2.2 and it worked only once. When I close the report and tried to reopen it, it doesn't work...nothing happens! | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 8/11/2009 7:09:23 AM | fiogf49gjkf0d How does this work if I need to use the "in" operator rather than "=" or "<" etc...?
I have tried, but can't seem to get it to work. eg...
Application.BasicFunctions.ReportAddCondition "PRODUCT:PRODUCTID", "in", "('XXXXXXXXXXXX','YYYYYYYYYYYY')" , "String", "AND" | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 9/28/2009 10:10:53 AM | fiogf49gjkf0d I'm having the same issue that JJE reported. It works one time when the report is actually printed, but then slx has to closed before the button will work again. Did anybody ever figure out a solution for this? | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 9/28/2009 10:11:04 AM | fiogf49gjkf0d I'm having the same issue that JJE reported. It works one time when the report is actually printed, but then slx has to closed before the button will work again. Did anybody ever figure out a solution for this? | |
|
| Re: How to Filter a SalesLogix Crystal Report by ID at Runtime Posted: 9/28/2009 10:37:20 AM | fiogf49gjkf0d Samantha,
I never found really what happens, so I write a little Function to call my reports and made a Post about this here:
http://www.slxdeveloper.com/forum.aspx?forumid=2000&postid=19254
It works with one or more conditions. I hope this will help you. | |
|
|
|
|
|
Visit the slxdeveloper.com Community Forums!
Not finding the information you need here? Try the forums! Get help from others in the community, share your expertise, get what you need from the slxdeveloper.com community. Go to the forums...
|
|
|
|
|
|