Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 310
  • Last Modified:

Using Crystal Reports 11 and I need to display 20 rows where the database may supply any number of rows upto 20.

Hi.

I'm converting a Sage Retrieve 4GL based report to Crystal in conjunction with PHP and COM to produce a PDF.

This report prints a "collection ticket". Each ticket has upto 20 items (with additional data). This is a hand written document which is scanned and stored and then hand entered into the system for processing.

Once entered and verified a tidy copy is printed and used internally or snail mail posted.

The report prints a line saying [Nothing received] where the line is blank.

So, on a collection ticket with 3 items on it, there will be 17 [Nothing received]s.

How do I get Crystal to report non existent data?

I'm new-ish to Crystal, but point me in the right direction and I'll have a go.

Richard.
0
Richard Quadling
Asked:
Richard Quadling
  • 3
  • 3
1 Solution
 
mlmccCommented:
One idea that comes to mind is to add a group to the report.
Group on the Ticket ID

Suppress the group header

Add a formula to the group footer
WhilePrintingRecords;
Local NumberVar i;
Local numberVar RecordCount;
Local StringVar NoItemList := '';

RecordCount := 20 - Count({TicketId},{TocketId});
For i := 1 to RecordCount do
     NoItemList  := NoItemList & "[Nothing received]" & chr(13);

NoItemList := Left(NoItemList,Length(NoItemList)-1);
NoItemList

Suppress the group footer with
Count({TicketId},{TocketId}) = 20

mlmcc

0
 
mlmccCommented:
This may be a slightly incorrect formula
Count({TicketId},{TocketId});

To get the correct one insert a summary on you ItemListId field in the group footer.
When you want to use it simply select it from the Report Fields

mlmcc
0
 
Richard QuadlingSenior Software DeverloperAuthor Commented:
I get it. This will take me a little while to set up (I've got the web side to do first). Probably not get around to this until tomorrow.
0
How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

 
Richard QuadlingSenior Software DeverloperAuthor Commented:
So, rather than have ...

Page Header
 Details
Page Footer

Have

Page Header
 Group Header (supressed)
  Detail (from DB)
 Group Footer (with formula to create a block of text)
Page Footer

And by having the block of text printed, I get my [Nothing received]s.

Yes?
0
 
mlmccCommented:
It should work.

mlmcc
0
 
Richard QuadlingSenior Software DeverloperAuthor Commented:
Ah! I just checked with the users if they wanted the blank lines. And they said no. ARGH!!! I asked why they had them on the other system (which I wrote for them over 10 years ago), they said they didn't know it could be changed.

I'm really having one of those weeks.

And I get home tonight, after telling them that this will be finished tomorrow, and what do I find? My wife just starting labour. So I think from now on I'm going to have to start quoting truly Scotty estimates for everything. No matter how simple or even if it has already been done. Nothing less than 2 days. But with the possibility of longer if they keep changing their mind.

Thanks Michael for the pointers.

I only recently got around to using CR, so the odd stuff is not so obvious yet. So be prepared for a LOAD of maybe daft questions.

Thanks again.

Richard.
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now