ModuleLicense Table (237)
•
Environment: onsite, online
Some tooltip text!
• 4 minutes to read
• 4 minutes to read
Module licenses, belonging to one single owner
Fields
| Name | Description | Type | Null |
|---|---|---|---|
| ModuleLicense_id | Primary key | PK | |
| moduleName | The name of the module, not visible in GUI but used in the code. This must be in UPPER CASE and only contain A-Z and 0-9. NO EXTENDED CHARACTERS please. | String(239) | |
| moduleDescription | Human-readable description of module, shown in GUI, default language. Additional languages can be added to LocaleText, resource type 25 | String(254) | |
| moduleVersion | Version string for this module | String(254) | ● |
| tooltip | Tooltip text, anything you want; shown when the cursor hovers over the line in the GUI. Default language. Additional languages can be added to LocaleText, resource type 27 | String(254) | |
| licenseType | Entire system, per database, or per associate | Enum LicenseType | |
| licenseNumber | Number of systems, databases or associates licensed | UInt | |
| allowedAssocsMask | Bitmask of allowed associate types who can have this kind of license | UInt | |
| extraFlags | Unspecified extra flags of license, part of checksum. Value=1 means this a 'user plan'; such licenses cause the admin gui to switch to radiobutton view | UInt | |
| extraInfo | Free field, can be used by the module owner (example: host domain, for eJournal). NOTE: For rows with extraFlags=1 this field contains the list of modules that this plan comprises | String(3999) | ● |
| encryptedCheck | Encrypted checksum that stops tampering and copying between databases | String(254) | |
| registered | Registered when | UtcDateTime | |
| registered_associate_id | Registered by whom | FK associate | |
| updated | Last updated when | UtcDateTime | |
| updated_associate_id | Last updated by whom | FK associate | |
| updatedCount | Number of updates made to this record | UShort | |
| ModuleOwner_id | Link to owner of this module | FK ModuleOwner | |
| sortOrder | Ordering value - generated by SuperLicense and transferred here. Must be followed for signatures to be correct | Id | ● |
| signature | Signature that verifies that this row is correctly transferred from SuperLicense | String(254) | ● |
| unrestricted | If true, then there is no licenseNumber limit on how many of these modules may be assigned | Bool | ● |
| hidden | If true, then this module should not appear in GUI and is not assignable by users | Bool | ● |
| prerequisiteModule | If set, specifies a module license needed before this license can be granted | String(239) | ● |

Types of module licenses
| licenceType | ID | Comment |
|---|---|---|
| Unknown | 0 | Not a legal value |
| SiteLicense | 1 | License is valid for a site (complete installation included all satellites and travellers) |
| SatelliteLicense | 2 | License is valid for a database (central, satellite, travel?) |
| UserLicense | 4 | License is valid for a particular user |
Indexes
| Fields | Types | Description |
|---|---|---|
| ModuleLicense_id | PK | Clustered, Unique |
| moduleName, moduleVersion, ModuleOwner_id | String(239), String(254), FK | Unique |
Relationships
| Table | Description |
|---|---|
| associate | Employees, resources and other users - except for External persons |
| LicenseAssocLink | Link between ModuleLicense and Associate, for per-assoc licenses; this is how licenses are assigned/consumed |
| LicenseSatlLink | Link between License and Satellite, for per-database licenses |
| ModuleOwner | Unique owner of a set of licensed modules |
Replication Flags
- Replicate changes DOWN from central to satellites and travellers.
- Copy to satellite and travel prototypes.
Security Flags
- No access control via user's Role.