id | id | integer | NO | | Internal surrogate primary key. |
crm_mapping_id | caubol_id | integer | NO | | Unique identifier for the mapping within the tenant. |
tenant_id | tenant_id | integer | NO | | Tenant identifier for data isolation. |
crm_terminal_code | cod_caubol | character(4) | NO | ''::bpchar | The alphanumeric code typed by the employee on the physical terminal. |
crm_description | caubol_descrizione | character(40) | NO | ''::bpchar | Human-readable description of the terminal reason. |
crm_target_shift_code | caubol_cod_orario | character(4) | NO | ''::bpchar | Reference to the shift code (orari) to be applied if this mapping is used. |
crm_target_justification_code | caubol_cod_giust | character(4) | NO | ''::bpchar | Reference to the attendance reason (attendance_reasons) to be triggered. |
crm_justified_hours | caubol_ore_giust | numeric(5,2) | YES | 0 | Fixed number of hours to justify when this code is used. |
crm_notes | caubol_note | text | NO | ''::text | Technical or administrative notes. |
crm_ignore_clocking | caubol_ignora | boolean | NO | false | If true, the clocking is stored but ignored by the calculation engine. |
crm_processing_mode | caubol_modo | numeric(1,0) | NO | 0 | Bitmask or ID defining the processing logic (e.g., standard, entry-only, exit-only). |
crm_web_visibility_mode | caubol_visibile_web | numeric(1,0) | YES | 0 | Flag/ID determining if this reason is selectable via web portal. |
crm_internal_alt_code | caubol_codice | character(4) | YES | ''::bpchar | Secondary legacy code for hardware compatibility. |
crm_category_type | caubol_tipo | integer | YES | 0 | Classification type for the mapping (e.g., system, user-defined). |
crm_merge_clockings_type | caubol_unisci | smallint | YES | 0 | Logic to handle overlapping or consecutive clockings with this reason. |
crm_usage_type | caubol_utilizzo | numeric(1,0) | YES | 0 | Defines where this code can be used (Terminal only, Web only, Both). |