By going out of the city, you’re probably leaving the area which is covered by MSC A, and entering MSC B. Therefore your subscriber information must be transmitted from one MSC to another one.
You might want to check your HLRs, VLRs and MSCs, can they communicate well with each others ? I’m not an expert in core network, but I know that a MSC should be able to communicate with another MSC in order to exchange subscriber information.
If you remain in the same MSC, this is a very very weird problem 🙂 Are you using different HLR within the same MSC ? Check your HLRs then. (As i say, i’m not expert in this domain, so i wouldn’t know what to check, sorry !)