Both "haimei" and "shang wei" could be underestood as" not yet" in meaning. However, like you said, they are used in different settings. "shangwei" is a totally written language, I've not ever SAID it once all my life and I've hardly heard anyone else say "shangwei" either in daily conversations or in business situations. Yet, I do use it in emails, especially in some emails for work. For instance, I'd write" 我尚未收到您的报价“. It seems very formal and professional. And that is why I employ it for working stuffs. While, "haimei" is broadly used and considered appropriate both in formal/informal and speech/writing situations.