if you use Active Directory with site/country specific OU's you can check the ComputerLocation entry in inventory...
Computer - Computer Location
What's happen if a user with a notebook visit a other site/country? The IP range could be wrong then... :-)
I think it is easier to use the possibility of Regis, if you don't have a clear naming convention of the clients and no Active Directory...
What we have done is insure that our AD is populated with the correct locaiton information for the OU's. From that we have created a VBS script that runs at logon of the system and reads the OU information like Country, State, Address, etc... It writes it to a Reg key and then we pull it in to Custom Data. The key to this is the accuracy of the AD and also that systems are placed in the correct OU's. We have recently switched to DTS from Managed Planet which does the work for us plus we have worked with the etwork team to help identify the IP subnets and the locations, comapnies, etc... All of this comes from previous planning on your network teams part.
Hope that helps.