Too many variables to have a catch-all call.
I have heard, and use, the phrase, "Body then ball foul, ball then body nothing," but you must consider how severe the contact was after the clean block and if LGP and verticality are in play, as well.
I think the game itself factors into the call, too. A physical or rivalry game is more likely to get a foul call in this situation just to keep things under control.
As Rut mentioned at times the lack of body control by the shooter will cause them to hit the floor much more than any contact.
Just be aware of the defense, know the timing of the block/body contact, factor in the mood/level of play, and don't bail out an out of control shooter.
Pretty easy.