Why this occurs with this upgrade of VM, and why it apparently does not impact everyone identically, I have no idea, but it appears to be something that has to be addressed by the VM developers going forward with VM 2 updates.
The reason is quite simple. This version has already the multiprices partly implemented. I removed it, but all parts. This part works absolutly well, if you have a fresh installation of vm2. But if you migrated from vm1, old data is interfering. In vm1 all prices had to have a shoppergroup. So they are stored with a shoppergroup, usually the default shopppergroup, which is normally the vm1 shoppergroup with id 1. In vm2, we have a shoppergroup for non logged in users, so that we can use rules for non logged in users (the anonymous ones).
So vm2 is now displaying the old prices and already checking for the shoppergroups. It takes the old value 1, which is now the default group again. So anonymous dont have a price.
To change this, the best way is imho indeed to set the "UPDATE `w3nfy_virtuemart_product_prices` SET `virtuemart_shoppergroup_id`=NULL"
So we come to the problem of Sagepos, because for him it is not working. I have no clue, he may try 0. He should also use the latest product model of the svn. Please try the attached file, path is BE/models (or administrator/components/com_virtuemart/models), overwrite the existing one. It contains whole multiprices concerning the model, but it is written more robust.
[attachment cleanup by admin]