Basically, yes. Here's the situation using two formulas:<br><br>--- FORMULA1 ---<br>BeforeReadingRecords;<br>0;<br><br>--- FORMULA2 ---<br>WhileReadingRecords;<br>Count({MyField});<br><br>First, notice that the evaluation-time statements are now completely unnecessary (they are only enforcing the normal operation, so you could just skip them). <br><br>Now here's the problem: FORMULA1 will always display a ZERO on the report. Even if FORMULA2 evaluates, FORMULA1 will superimpose a big 'ol ZERO on top of whatever value F2 displays. So, you have to have a way to tell FORMULA1 when to display a ZERO and when to display nothing. Now we're back to the original problem, because if I reference FORMULA2 in FORMULA1 by saying something like "when FORMULA2 returns a value, don't display a zero" I'm now referencing a database field again (although it's indirectly) and nothing at all gets evaluated when the database contains no records!<br><br>Notice FORMULA2 behaves really well, actually. If there's no records, it's nothing. If there's records it's a number. Great (sort of, anyway).<br><br>If FORMULA1 behaved the similarly, that is if there's no records it's ZERO, and if there's any records it's nothing, we'd be in business. I'd insert both formula fields right on top of each other and be done with it. But FORMULA1 can't be made to discrimiate between 'has records' and 'has no records' without it becomming like FORMULA2, and simply not evalutaing at all when the database is empty.<br><br>See the Catch22 here? If Crystal can do this at all, there must be some special functionality, setting, param, etc somewhere that we're missing. And I would be really surprised if Crysal can't do this...<br><br>Any other ideas?? Thanks for all the brain storming!<br>