J
James Stephens
I have a schedule report that I have built that runs too slow (usually takes
up to 20 minutes or longer to run). I am trying to find a way to make this
faster but I can't really figure it out.
The data in the table is layed out as follows: Employee SSN, Date, Work
Area, Start Time, End Time
The trick is an employee (about 300 total employees) may have multiple
shifts on a single day, and I need the report to reflect this. The report I
have is a two week schedule. It is one main report with 14 subreport (one
for each day). This report has sorting by Employee SSN with a group footer so
that each employee is a different group (this is so each of the 14 sub
reports can expand as needed and for formatting).
Basically each subreport is set for showing only one shift but can expand to
show multiple.
There is one main query for the report that pulls all the data for a two
week section and filters it by job position. Then there are 14 queries based
off of that one, one for each of the 14 days on the report.
So the main reports record source is a query of all the Employees SSN and
each of the sub reports is linked by this field. Then the main report is
grouped by employee so that the sub reports which by default are only tall
enough to show one record can expand to show more for a given day and the
formatting expands to keep all of these showing with the same person so the
whole line for the two weeks expands to the largest record for an individual.
I have played with cross-tab queries but cant seem to find anyway to make it
work any faster (I preface that with I don’t have much experience with these
type of queries so I may be doing something wrong)
Any ideas on how to cut down that time from 20 minutes plus would be great.
I know it's not the network because no other report takes anywhere near this
long. I have another report that runs on this table that shows the total
number of people working each hour for each work area (no names just a
number) and this report only takes about 15 seconds.
Any help would be great,
Jim Stephens
up to 20 minutes or longer to run). I am trying to find a way to make this
faster but I can't really figure it out.
The data in the table is layed out as follows: Employee SSN, Date, Work
Area, Start Time, End Time
The trick is an employee (about 300 total employees) may have multiple
shifts on a single day, and I need the report to reflect this. The report I
have is a two week schedule. It is one main report with 14 subreport (one
for each day). This report has sorting by Employee SSN with a group footer so
that each employee is a different group (this is so each of the 14 sub
reports can expand as needed and for formatting).
Basically each subreport is set for showing only one shift but can expand to
show multiple.
There is one main query for the report that pulls all the data for a two
week section and filters it by job position. Then there are 14 queries based
off of that one, one for each of the 14 days on the report.
So the main reports record source is a query of all the Employees SSN and
each of the sub reports is linked by this field. Then the main report is
grouped by employee so that the sub reports which by default are only tall
enough to show one record can expand to show more for a given day and the
formatting expands to keep all of these showing with the same person so the
whole line for the two weeks expands to the largest record for an individual.
I have played with cross-tab queries but cant seem to find anyway to make it
work any faster (I preface that with I don’t have much experience with these
type of queries so I may be doing something wrong)
Any ideas on how to cut down that time from 20 minutes plus would be great.
I know it's not the network because no other report takes anywhere near this
long. I have another report that runs on this table that shows the total
number of people working each hour for each work area (no names just a
number) and this report only takes about 15 seconds.
Any help would be great,
Jim Stephens