A named salary template — an ordered set of SalaryComponent lines that together define how an employee's pay is composed. It is assigned to a person through ResourceCompensation (which also carries the CTC that percentage-of-CTC components are computed against), and the payroll calculation resolves the structure from the employee's most recent active ResourceCompensation, NOT from Resource.SalaryStructureId. An employee with no active ResourceCompensation pointing at a structure, or whose structure has no active lines, is counted as skipped by the run rather than failing it. Unlike the statutory rule masters this entity has no PartnerAccountId column, so a structure is tenant-wide rather than scoped to a legal entity. EffectiveFrom and IsActive describe the template's own validity, and neither is applied as a filter when the run loads the structure's lines.
Fields
| Field | Label | Type | Required | What it does |
BusinessUnitId | Business Unit | Lookup → BusinessUnit | | Structures are not scoped to a business unit — or to a legal entity at all. Do not filter or join on this field. |
CreatedById | Created By | Lookup → UserAccount | Yes | |
CreatedDateTime | Created Date | DateAndTime | Yes | |
EffectiveFrom | Effective From | Date | Yes | Intended start of the template's validity. The run resolves the structure through the employee's most recent active ResourceCompensation and does not compare this date to the payroll period, so it does not by itself prevent an unstarted structure from being used. |
EmployeeId | Employee | Lookup → Employee | | |
Id | Id | Guid | Yes | |
IsActive | Is Active | Boolean | | Marks the template as usable. Note the payroll run filters on the ResourceCompensation being active, not on this flag, so deactivating a structure does not on its own stop employees whose compensation still points at it from being calculated. |
ModifiedById | Modified By | Lookup → UserAccount | Yes | |
Name | Name | Text | Yes | |
OwnerId | Owner | Lookup → UserAccount | Yes | |
PayFrequency | Pay Frequency | PickList | Yes | Intended pay cadence of the template. Nothing in the payroll calculation reads it: the period and its day count come from PayrollPeriod's start and end dates, so setting this does not change how amounts are computed or prorated. The seeded picklist offers Monthly only. Values: Monthly, Weekly, Biweekly, Daily. |
RecordTypeId | Record Type | Guid, hidden | | |
StructureName | Structure Name | Text, unique | Yes | The human-facing name of the template, separate from the record's system Name. Nothing in the calculation keys off it — component lines reference their structure by id — so it is descriptive only. |
SubscriptionKey | Subscription Key | Guid, hidden | Yes | |
UpdatedDateTime | Modified Date | DateAndTime | Yes | |
Actions
| Action | Label | Type | What it does |
Clone | Clone | ServerAction (Clone) | Create a copy of this record |
Deleteentity | Delete | Delete | Delete |
DeleteHeader | Delete | Delete | Delete |
Edit | Edit | Edit | Edit |
EditRow | Edit | Edit | EditRow |
New | New | New | New |