I agree with Simon that the most likely cause is data not being in cache.
If the statistics io output for the first execution shows considerably more physical io
than in subsequent executions, I don't think you need to look any further.
A possible second cause, if the report is very complex, might be compilation (optimization) time. Assuming that the report is a stored procedure, once a query plan has been created, it will be available from procedure cache until it stops being used frequently enough to age out.
When you say the first retrieve is slow, what do you mean by first?
The first since a reboot of ASE? (this clears both data and procedure cache)
The first one of the day?
The first done after a period when none were done for <x> hours?
-bret