Link to home
Start Free TrialLog in
Avatar of MikeM670
MikeM670

asked on

Dynamic Image won't display if no data is returned

Crystal Reports XI
MS SQL 14

Thanks to everyone's help I have the dynamic images displaying properly.   I'm trying to make the reports look more polished if the search fails to return data.  I have encountered and old issue from the past where no data is returned from a query the Image will not display.   This also affected a formula that I used to display department name and address information in the header.

To inform the user I already know how to display an information message if no data is returned.
Avatar of Mike McCracken
Mike McCracken

You could put a message in a textbox in the report header.  Suppress it conditionally with a formula like
Count({SomeField}) > 0

Open in new window


Another way would be to create a formula and put it in the report header like
If Count({SomeField}) > 0 then
    "There is no data for the selected filtering"

Open in new window


mlmcc
Avatar of MikeM670

ASKER

I tried the textbox message suggestion and it will display a "No Data Message" if no data is returned but the image and formula to display the department name and address do not display?  Do I need to set something for the dynamic image or the formula?


Mike
Where are the image and formula located?  Which section(s)?  You mentioned a header, but is that for the group, page or report?

 What's in the formula?

 James
The image and formula are both located in the Report Header.  

The formula for displaying the department info is:

local stringvar Line1;
local stringvar Line2;
local stringvar Line3;
local stringvar Line4;

if not(isnull({Agency.DepartmentTitle})) and trim({Agency.DepartmentTitle}) <> ""
then Line1 := {Agency.DepartmentTitle};

if not(isnull({Agency.StreetNumber})) and trim({Agency.StreetNumber}) <> ""
then Line2 := {Agency.StreetNumber} & " ";

if not(isnull({Agency.StreetPrefix})) and trim({Agency.StreetPrefix}) <> ""
then Line2 := Line2 & {Agency.StreetPrefix } & " ";

if not(isnull({Agency.Street})) and trim({Agency.Street}) <> ""
then Line2 := Line2 & {Agency.Street} & " ";

if not(isnull({Agency.StreetSuffix})) and trim({Agency.StreetSuffix}) <> ""
then Line2 := Line2 & {Agency.StreetSuffix} & " ";

if not(isnull({Agency.City})) and trim({Agency.City}) <> ""
then Line3 := {Agency.City} & " ";

if not(isnull({Agency.State})) and trim({Agency.State}) <> ""
then Line3 := Line3 & {Agency.State} & " ";

if not(isnull({Agency.Zip})) and trim({Agency.Zip}) <> ""
then Line3 := Line3 & {Agency.Zip} & " ";

if not(isnull({Agency.Phone})) and trim({Agency.Phone}) <> ""
then Line4 := "Telephone: " & {Agency.Phone} & " ";

if not(isnull({Agency.Fax})) and trim({Agency.Fax}) <> ""
then Line4 := Line4 & ' * ' & "Fax: " & {Agency.Fax} & " ";


Line1 & chr(13) & Line2 & chr(13) & Line3 & chr(13) & Line4;


For the dynamic image based on the parameter.

Format Editor\Picture\Graphic Location: is the following formula

if {CaseMaster.Agency} = {?Agency} then
    {Agency.ReportImageURL}
else
    '\\PSIMS\PSIMSReportImages\DefaultBlank.png'



Mike
What is the formula supposed to produce if there is no data?  DepartmentTitle, etc. will all be null/blank, right?  If so, there's nothing to show.

 Same thing for the image.  CaseMaster.Agency will presumably be null/blank.  If you just want DefaultBlank.png to show up and it's not, you may just need to add an IsNull test on CaseMaster.Agency .

 James
Maybe I'm not explaining myself properly or not understanding what your saying.  There will always be at least one agency in the database with information and a related logo.    I want the Image and formula to always display the Image and department information even if the Report Selection Query fails to return any data.
Use IF THEN Else to check for IsNull and return the static path to the default department logo if the data is NULL.
ASKER CERTIFIED SOLUTION
Avatar of James0628
James0628

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Is the report based on tables joined in Crystal or is it a view or command?

mlmcc
The report is based on tables joined in crystal.
I used the sub report method.  I would of preferred not having to do it that way as I needed to use two sub reports.  One for the logo image and one for the formula.  I had to do it that way in order to make room for other formulas and the report title to be shown below the department display formula.