[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

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

CR 9 - Daily Appointment Report

Using CR 9 with MS SQL DB.

Need a report to show appointments and open time slots by "XX" minute intervals.

Appointments for Room A, Room B, Room C...by time slot.

Example:
               Room A         Room B
8:00 AM   Patient 1        <open>
8:30 AM   <open>         <open>
9:00 AM   Patient 2        Patient 3
... and so on.

Thanks!
0
wcotis60
Asked:
wcotis60
  • 2
  • 2
1 Solution
 
frodomanCommented:
The problem you face is that Crystal will not show you data that is doesn't have so in order to produce this report you're going to need to send into Crystal the records the way you want to see them.  One way to accomplish this would be:

Create a table for appointments that contains these fields:
   [Appointment_Time]
   [Room A]
   [Room B]
   ...etc...

You could create separate tables for each room but for this example I'm going to assume one table.

Now create a second control table that contains one field named [Time_Values].  Populate this table with all times you want to appear on your report (8:00 AM, 8:30 AM, etc.).

Create a new report, using both tables as your datasource.  Drag a link from your control table to the "appointment time" field of your appointment table.  Click on the link and then click the "options" button and change the link type to "left outer join" (or just "left join" depending on your version of Crystal).  Now simply create your report by dragging these fields into the details section:

{control_table.time_values}  {appointment_tbl.roomA}   {appointment_tbl.roomB}   ...etc...  {appointment_tbl.roomZ}

This gives you this report:
     ---------------------------------------
                    Room A         Room B
     8:00 AM   Patient 1      
     8:30 AM  
     9:00 AM   Patient 2        Patient 3
     ... and so on.
     ---------------------------------------

To get the designation "<open>" to appear instead of the blank spaces, suppress the field {appointment_tbl.roomA}.  Create the following formula and place it where the room A field was:

if isNull({appointment_tbl.roomA}) then "<open>" else {appointment_tbl.roomA};

That should give you the result you're looking for.  

If you need additional help please post back.  I'll answer if I can, but I'm about to get slammed by hurricane Charlie so no promises I'll have web access...

frodoman
0
 
ebolekCommented:
me too. Frodoman. Where are you located . I am at Saint Petersburg and it just missed us, We are lucky
0
 
frodomanCommented:
I'm a few miles north of St. Pete in Largo.  Looks like we dodged another bullet, huh - at the time I wrote that we were still in the bullseye!

frodoman
0
 
ebolekCommented:
oh ok. Yep, I live in 4th street N, and we were the first to evacuate. Luckily I didnt go to Orlando :)
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

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