I think the technically correct way to do this is to roll the movement of models with random movement each movement phase, regardless of whether they're actually moving, and then apply it until the next movement phase.
I think it's also very reasonable to roll the movement each time it needs to be determined, in this case before resolving the spell.
Importantly, I don't think models with random movement ever count as having a movement characteristic of 0.