What is a read-only profile?

In a multi-user Cardbox installation it is quite common to have a mixture of read-only users (who cannot make changes to the database or format file) and read/write users (who can). You can enforce this distinction by means of user profiles, as described in The Cardbox Book (page 253 onwards).

This has licensing implications for large installations, because read-only licences are much cheaper than read/write ones. All standard Cardbox licences are read/write, but you can buy read-only licences in blocks of 5 and add them to your server, or even buy an unlimited read-only licence that does not limit the number of read-only users.

Whenever someone opens a database on the Cardbox Server, the program checks to see what kind of licence is needed and allocates that licence to the user. If the database is being opened with a read-only profile, the Cardbox Server will allocateĀ  a read-only licence; otherwise it will allocate a read/write one.

This leads to the question: what is a read-only profile?

A read-only profile is one that disables all of the following actions:

  • Add new records
  • Add records from file
  • Edit records
  • Batch edit
  • Delete records
  • Batch delete
  • Store kept selections
  • Define custom sequence
  • Edit native format
  • Create & edit alternative formats
  • Edit “!” formats
  • Add words to the spelling list
  • Edit the spelling list

If you create a profile that you intend to be read-only but you enable even one of these actions, then the profile will be treated as a read/write profile and anyone who uses it will need a read/write licence. This means that the users of that profile will unnecessarily take up a read/write licence that could be used by someone else; or if no read/write licences are available, the users of that profile will not be able to open the database at all.

If you come across this problem then the solution is simple: edit the “read-only” profile and make sure that it blocks all the actions in the above list.


%d bloggers like this: