Login / Register  search  syndication  about

          Jason Buss' Blog

Jason Buss on SalesLogix development & customization, SQL, and more.

Setting conditions for Crystal Reports in SalesLogix LAN

I wanted to quickly outline a process for passing a condition to a Crystal report in two simple steps.  Say you've created an account report that you want to launch via a button on the account detail, limited to the current account record.

Step 1, Setting up the button:

The button is going to do two things:  Set the current accountid to a global variable, and launch the report.

Sub Button1Click(Sender)
    Application.BasicFunctions.GlobalInfoSet "gAccountID", Application.BasicFunctions.CurrentAccountID
    Application.BasicFunctions.DoInvoke "CrystalReportPreview", "Account:New Account Report"
End Sub

Step 2, pass the current ID to the launched report:

In order to pass the ID to the report, we need to create a VB Script which grabs the Global Variable, then passes it to the report using the ReportAddCondition function found under Application.BasicFunctions.  This script is attached to the report via the report properties set under manage|Crystal Reports.

The new script is named Account Report Add Condition, and contains:

Sub Main
Dim AccID

    AccID = Application.BasicFunctions.GlobalInfoFor("gAccountID")
    Application.BasicFunctions.ReportAddCondition "AccountID", "=", AccID, "String", ""
    Application.BasicFunctions.GlobalInfoClear "gAccountID")

end sub

Three things are happening here.  First of all, we're assigning a local variable to the ID contained in the Global Variable.  Next, we add the condition to the report, and finally, we clear the global variable.  Once the script is saved, go to the menu item "Manage|Reports", select the report you want to add the condition to and view the properties of the report.  On the Execution tab, add the script to the When Open event.

 

That's all there is to it!  You now have a button on account detail which launches your new report for the current opportunity record.

What's This?
  
Bookmark and Share

About Jason Buss

   Jason is a senior application developer with Customer FX.



Related Content
   Using a Test Plan
So you have approved the Statement of Work (SOW) for some modifications and are awaiting the delivery of
Posted on Mar 13, 2014 by George Jensen to George Jensen's Blog
 
   Setting the Defaults on the Insert Account/Contact Duplicate Record View
When creating a new Account/Contact record in Saleslogix web, you have the ability to check for duplicat
Posted on Mar 10, 2014 by Jason Buss to Jason Buss' Blog
 
   Creating a Saleslogix Ticket Pretty Prefix and Suffix in External Applications
Some entities in SalesLogix, such as Tickets, use a "pretty key" as an easier to use value to r
Posted on Feb 28, 2014 by Ryan Farley to Ryan Farley's Blog
 
   Adding string formatting to values using WebEntityBinding
In a recent project, I needed to round numeric values displayed in the Opportunity Snapshot.  This
Posted on Feb 05, 2014 by Jason Buss to Jason Buss' Blog
 
   Error: StringConverter cannot convert 'String' to 'Boolean'
This error usually occurs because an entity property is set as the wrong datatype for it's underlying
Posted on Jan 03, 2014 by Jason Buss to Jason Buss' Blog
 
Comments

 

Mike Douglas said:

Hi

Been doing similar for some years in slx 62. Hit an issue when you get 72 and beyond. Whilst the above still work fine for a report called from a button, the script does not run for reports called from the normal reports menu system within LAN. Which is a major pain. Just doing an upgrade at present and a lot of the reports have code which would run on OnOpen

June 26, 2009 7:45 AM

Leave a Comment

(required)  
(optional)
(required)  
Add
All contents Copyright © 2014 Customer FX Corporation
Customer FX Corporation
2324 University Avenue West, Suite 115
Saint Paul, Minnesota 55114
Tel: 800.728.5783

  Follow @CustomerFX on twitter
Follow the best news, tips, and articles
  Subscribe to Customer FX on youtube
Watch SalesLogix tutorial videos from Customer FX
Login / Register