Besides statically mapping the transaction object with the database cache in the IDE or PowerServer, for each transaction object that exists in the application, you can also dynamically map it with the database cache using the DBParm CacheName property. Such dynamic mapping with DBParm has higher priority than the static mapping if both exist.
The following two statements are equivalent (when not specified, the value of cachegroup is "default"):
Sqlca.dbparm="cachename='Test'"
Sqlca.dbparm="cachegroup='default', cachename='Test'"
With dynamic mapping, you can create multiple caches which connect to the database with different privileges; when a user logs in, the application decides which cache should be used by the transaction object for establishing the database connection.