Table: User_Preference
Columns
Name | Type | Constraints | Description
user_preference_KEY | int | NOT NULL | AUTO-INCREMENT: Database assigned primary key for this table.
update__staff_KEY | int | NOT NULL |
update_date_utc | datetime | NOT NULL |
staff_KEY | int |  | Key of one of the Staff records
alternate_row_color | bit | NOT NULL | Presents all lists and grids with alternating row colors when true
enter_as_tab | bit | NOT NULL | Enter key functions as Tab
startup_window | nvarchar (100) | NOT NULL | Screen to open at startup
entry__user_preference_default_sheet_date_KEY | int |  | Key of one of the User Preference Default Sheet Date records
entry__client_KEY | int |  | Key of one of the Client records
entry_client_skip | bit | NOT NULL | Skips the Client column
entry_client_hide | bit | NOT NULL | Hides the Client column
entry__engagement_template_KEY | int |  | Key of one of the Engagement Template records
entry_engagement_template_skip | bit | NOT NULL | Skips the Engagement column
entry_engagement_template_hide | bit | NOT NULL | Hides the Engagement column
entry_time__activity_KEY | int |  | Key of one of the Activity records for time
entry_time_activity_skip | bit | NOT NULL | Skips the Activity column for time
entry_time_activity_hide | bit | NOT NULL | Hides the Activity column for time
entry_expense__activity_KEY | int |  | Key of one of the Activity records for expenses
entry_expense_activity_skip | bit | NOT NULL | Skips the Activity column for expenses
entry_expense_activity_hide | bit | NOT NULL | Hides the Activity column for expenses
entry__user_preference_default_entry_date_KEY | int |  | Key of one of the User Preference Default Entry Date records
entry_date_skip | bit | NOT NULL | Skips the Date column
entry_date_hide | bit | NOT NULL | Hides the Date column
entry_time__billing_rate_type_KEY | int |  | Default rate for time
entry_time_rate_skip | bit | NOT NULL | Skips the Rate column for time
entry_time_rate_hide | bit | NOT NULL | Hides the Rate column for time
entry_expense__billing_rate_type_KEY | int |  | Default rate for expense
entry_expense_rate_skip | bit | NOT NULL | Skips the Rate column for time
entry_expense_rate_hide | bit | NOT NULL | Hides the Rate column for time
entry_timer_skip | bit | NOT NULL | Skips the Timer column
entry_timer_hide | bit | NOT NULL | Hides the Timer Column
entry_comment | nvarchar (-1) | NOT NULL | Default comment for each entry
entry_comment_skip | bit | NOT NULL | Skips the Comment column
entry_comment_hide | bit | NOT NULL | Hides the Comment column
entry_biller_note | nvarchar (-1) | NOT NULL | Default biller note for each entry
entry_biller_note_skip | bit | NOT NULL | Skips the Biller Note column
entry_biller_note_hide | bit | NOT NULL | Hides the Biller Note column
entry__rounding_method_KEY | int | NOT NULL | Key of one of the Rounding Method records
entry_rounding_increment | decimal (4, 2) | NOT NULL | Increment for rounding time from the timer in hours
entry__time_style_KEY | int | NOT NULL | Key of one of the Time Style records
entry_implied_decimal | bit | NOT NULL | Automatically inserts decimal point at end of hours
entry_display_billed | bit | NOT NULL | Displays billed entries
entry_display_hash_totals | bit | NOT NULL | Displays hash totals
entry_new_row_at_top | bit | NOT NULL | Shows the new row at the top when true, at the bottom when false.
entry_allow_simultaneous_timers | bit | NOT NULL | Allow as many timers running at the same time as they want.
entry_startup_tab | nvarchar (100) | NOT NULL | Which tab to start on.
staff_dashboard_layout | nvarchar (-1) | NOT NULL | Layout of the Staff Dashboard stored as XML
client_dashboard_layout | nvarchar (-1) | NOT NULL | Layout of the Client Dashboard stored as XML
firm_dashboard_layout | nvarchar (-1) | NOT NULL | Layout of the Firm Dashboard stored as XML
billing__billing_method_KEY | int | NOT NULL | Billing by Client or Engagement
billing_show_wip_during_selection | bit | NOT NULL | WIP column should show in the billing selection list and be populated with WIP balances.
billing_implied_decimal | bit | NOT NULL | Automatically inserts decimal point at end of amount
billing_startup_tab | nvarchar (100) | NOT NULL | Startup tab of Detail Billing
billing__user_preference_default_invoice_date_KEY | int |  | Default Invoice date for Detail Billing.
billing_standard__rounding_method_KEY | int | NOT NULL | Rounding method for Bill At Standard
billing_standard_rounding_increment | decimal (4, 2) | NOT NULL | Rounding increment for Bill At Standard
receipt_entry__user_preference_default_sheet_date_KEY | int |  | Default Control Date.
receipt_entry_sheet_date_skip | bit | NOT NULL | Skips Control Date.
receipt_entry__bank_account_KEY | int |  | Default Bank.
receipt_entry_bank_skip | bit | NOT NULL | Skips Bank.
receipt_entry_bank_hide | bit | NOT NULL | Hides Bank.
receipt_entry__user_preference_default_entry_date_KEY | int |  | Default Date.
receipt_entry_entry_date_skip | bit | NOT NULL | Skips Date.
receipt_entry_entry_date_hide | bit | NOT NULL | Hides Date.
receipt_entry__ledger_entry_type_KEY | int |  | Default Type.
receipt_entry_ledger_entry_type_skip | bit | NOT NULL | Skips Type.
receipt_entry_reference_skip | bit | NOT NULL | Skips Reference.
receipt_entry_reference_hide | bit | NOT NULL | Hides Reference.
receipt_entry_comment | nvarchar (-1) | NOT NULL | Default Comment.
receipt_entry_comment_skip | bit | NOT NULL | Skips Comment.
receipt_entry_comment_hide | bit | NOT NULL | Hides Comment.
receipt_entry_auto_apply_to_oldest | bit | NOT NULL | Automatically apply new receipts to the oldest outstanding items.
receipt_entry_display_applied_amounts_screen | bit | NOT NULL | Automatically display the Applied Amounts form after they enter an amount.
receipt_entry_implied_decimal | bit | NOT NULL | Automatically inserts decimal point at end of Amount.
receipt_entry_display_hash_totals | bit | NOT NULL | Displays hash totals.
receipt_entry_startup_tab | nvarchar (100) | NOT NULL | Which tab to start on.
entry_sheet_date_skip | bit | NOT NULL | Skips the SheetDate entry field on the entry screen.
statement_include_debits | bit | NOT NULL | Includes clients with debits if they meet over_balance or over_age
statement_include_debits_over_balance | decimal (17, 2) | NOT NULL | Includes a client if their balance is greater than this.
statement_include_debits_over_age | int | NOT NULL | Includes a client if the client has a debit older than this many days.
statement_include_credits | bit | NOT NULL | Includes clients that have a credit balance.
statement_include_zero_balance_with_current_activity | bit | NOT NULL | Includes clients that have a zero balance but had recent activity.
statement_exclude_current_invoice_activity_clients | bit | NOT NULL | Excludes clients that have recently been invoiced.
create_date_utc | datetime | NOT NULL |
billing_auto_apply_open_credits | bit | NOT NULL | Determines if we automatically apply any open credits when saving a detail billing decision.
billing_prompt_to_apply_open_credits | bit | NOT NULL | Determines if we prompt to apply credits when saving in the Billing Details screen.
enable_desktop_alerts_for_notifications | bit | NOT NULL | Enables desktop alerts for notifications.
entry_display_task_selection | bit | NOT NULL | Automatically displays the task selection screen after the project is selected
entry_start_project_timers | bit | NOT NULL | Specifies if timers are to be started when solutions are launched from Projects/Tasks
entry_project_template_skip | bit | NOT NULL | Specifies Project field is to be skipped on the Time and Expense Entry screen
entry_project_template_hide | bit | NOT NULL | Specifies Project field is to be hidden on the Time and Expense Entry screen
entry_start_phone_timers | bit | NOT NULL | Specifies if timers are to be started when solutions are launched from Phone Calls
entry_client_description_hide | bit | NOT NULL |
entry_engagement_description_hide | bit | NOT NULL |
entry_project_description_hide | bit | NOT NULL |
entry_activity_description_hide | bit | NOT NULL |
receipt_entry_client_description_hide | bit | NOT NULL |
receipt_entry_bank_description_hide | bit | NOT NULL |
receipt_entry_type_description_hide | bit | NOT NULL |
home_dashboard_layout | nvarchar (-1) | NOT NULL | Layout of the Home Dashboard stored as XML
show_desktop_notifications_until_closed | bit | NOT NULL |
billing_mark_zero_invoice_as_printed | bit | NOT NULL |
billing_auto_select_child_clients | bit | NOT NULL |
entry_remote_time_entry_enabled | bit | NOT NULL | Enables the ability to use the quick Remote Entry export feature
entry_remote_time_entry__filter_KEY | int |  | KEY of the filter used to narrow the clients being exported for Remote Entry
entry_accumulate_time_before_rounding | bit | NOT NULL |
receipt_entry_adjustment__bank_account_KEY | int |  | Default Bank for adjusting entries (CCR, NSF, DM, CM, WO).
receipt_entry_adjustment_bank_hide | bit | NOT NULL | Hides Bank for adjusting entries (CCR, NSF, DM, CM, WO).
receipt_entry_adjustment_bank_skip | bit | NOT NULL | Skips Bank for adjusting entries (CCR, NSF, DM, CM, WO).
receipt_entry_adjustment_bank_description_hide | bit | NOT NULL | Hides Bank description for adjusting entries (CCR, NSF, DM, CM, WO).
entry_custom_fields_hide | bit | NOT NULL |
entry_custom_fields_skip | bit | NOT NULL |
entry_display_custom_fields | bit | NOT NULL |
entry_auto_fill_from_last | bit | NOT NULL |
billing_client_description_hide | bit | NOT NULL |
billing_engagement_description_hide | bit | NOT NULL |
billing_project_description_hide | bit | NOT NULL |
billing_activity_description_hide | bit | NOT NULL |
billing_comment_hide | bit | NOT NULL |
billing_biller_note_hide | bit | NOT NULL |
entry_education_course_selection_hide | bit | NOT NULL |
entry_education_course_selection_skip | bit | NOT NULL |
entry_display_education_course_selection | bit | NOT NULL |
billing__user_preference_default_wip_date_KEY | int | NOT NULL | Key of the User Preference Default Wip Date that this row is assigned.
billing__custom_wip_date | smalldatetime |  | The billing default custom wip date.
urgent_high_priority_unassigned | bit | NOT NULL | When true the urgent tab includes high priority schedule items with no schedule item assignments
urgent_high_priority_unscheduled | bit | NOT NULL | When true the urgent tab includes high priority schedule items with no schedule entries
urgent_target_start_past_unassigned | bit | NOT NULL | When true the urgent tab includes schedule items where the target start date has past and does not have any schedule item assignments
urgent_target_start_past_unscheduled | bit | NOT NULL | When true the urgent tab includes schedule items where the target start date has past and does not have any schedule entries
urgent_past_due | bit | NOT NULL | When true the urgent tab includes schedule items that are past due
urgent_due_within_unassigned | bit | NOT NULL | When true the urgent tab includes schedule items where the target complete date is less than today plus urgent_due_within_unassigned_days and does not have any schedule item assignments
urgent_due_within_unscheduled | bit | NOT NULL | When true the urgent tab includes schedule items where the target complete date is less than today plus urgent_due_within_unscheduled_days and does not have any schedule entries
urgent__filter_KEY | int |  | KEY of the filter used to narrow the schedule items to be displayed in the urgent tab
urgent_due_within_unassigned_days | int | NOT NULL | When urgent_target_start_past_unassigned is true, the urgent tab includes schedule items where the target complete date is less than today plus urgent_due_within_unassigned_days and does not have any schedule item assignments
urgent_due_within_unscheduled_days | int | NOT NULL | When urgent_target_start_past_unscheduled is true, the urgent tab includes schedule items where the target complete date is less than today plus urgent_due_within_unscheduled_days and does not have any schedule entries
urgent_overscheduled | bit | NOT NULL | When true the urgent tab includes schedule items where the number of total scheduled hours for the item is greater than the remaining hours of work for the item
urgent_tab_enabled | bit | NOT NULL | When true the urgent tab will be displayed in scheduling screens
receipt_entry_invoice_search_skip | bit | NOT NULL | When true the invoice search column in receipt entry will be skipped
receipt_entry_invoice_search_hide | bit | NOT NULL | When true the invoice search column in receipt entry will be hidden
entry_task_skip | bit | NOT NULL | When true the task dropdown column in time entry will be skipped
entry_task_hide | bit | NOT NULL | When true the task dropdown column in time entry will be hidden
entry_task_selection_button_skip | bit | NOT NULL | When true the task selection button column in time entry will be skipped
entry_task_selection_button_hide | bit | NOT NULL | When true the task selection button column in time entry will be hidden
entry_staff_description_hide | bit | NOT NULL | When true the staff description column in time entry will be hidden
billing_staff_description_hide | bit | NOT NULL | When true the staff description column in billing will be hidden
receipt_entry_custom_fields_hide | bit | NOT NULL | When true the custom fields button column in receipt entry will be hidden
receipt_entry_custom_fields_skip | bit | NOT NULL | When true the custom fields button column in receipt entry will be skipped
receipt_entry_display_custom_fields | bit | NOT NULL | When true the custom fields button column in receipt entry will be auto-displayed
receipt_entry_links_hide | bit | NOT NULL | When true the links button column in receipt entry will be hidden
receipt_entry_links_skip | bit | NOT NULL | When true the links button column in receipt entry will be skipped
receipt_entry_display_links | bit | NOT NULL | When true the links button column in receipt entry will be auto-displayed
entry_project_solution_button_hide | bit | NOT NULL | When true the project solution button column in time entry will be hidden
entry_project_solution_button_skip | bit | NOT NULL | When true the project solution button column in time entry will be skipped
entry_task_solution_button_hide | bit | NOT NULL | When true the task solution button column in receipt entry will be hidden
entry_task_solution_button_skip | bit | NOT NULL | When true the task solution button column in time entry will be skipped
entry_auto_check_spelling | bit | NOT NULL |
billing_auto_check_spelling | bit | NOT NULL |
receipt_entry_auto_check_spelling | bit | NOT NULL |

Primary key
Name | Columns | Description
PK_User_Preference$user_preference_KEY | user_preference_KEY | CLUSTERED
Unique constraints
Name | Columns | Description
UK_User_Preference$staff_KEY | staff_KEY |
Indexes
Name | Columns | Description
IX_User_Preference$billing__billing_method_KEY | billing__billing_method_KEY | Index supports foreign key FK_User_Preference__Billing_Method__billing__billing_method_KEY
IX_User_Preference$billing__user_preference_default_invoice_date_KEY | billing__user_preference_default_invoice_date_KEY | Index supports foreign key FK_User_Preference__User_Preference_Default_Invoice_Date__billing__user_preference_default_invoice_date_KEY
IX_User_Preference$billing__user_preference_default_wip_date_KEY | billing__user_preference_default_wip_date_KEY | Index supports foreign key FK_User_Preference__User_Preference_Default_Wip_Date__billing__user_preference_default_wip_date_KEY
IX_User_Preference$billing_standard__rounding_method_KEY | billing_standard__rounding_method_KEY | Index supports foreign key FK_User_Preference__Rounding_Method__billing_standard__rounding_method_KEY
IX_User_Preference$entry__client_KEY | entry__client_KEY | Index supports foreign key FK_User_Preference__Client__entry__client_KEY
IX_User_Preference$entry__engagement_template_KEY | entry__engagement_template_KEY | Index supports foreign key FK_User_Preference__Engagement_Template__entry__engagement_template_KEY
IX_User_Preference$entry__rounding_method_KEY | entry__rounding_method_KEY | Index supports foreign key FK_User_Preference__Rounding_Method__entry__rounding_method_KEY
IX_User_Preference$entry__time_style_KEY | entry__time_style_KEY | Index supports foreign key FK_User_Preference__Time_Style__entry__time_style_KEY
IX_User_Preference$entry__user_preference_default_entry_date_KEY | entry__user_preference_default_entry_date_KEY | Index supports foreign key FK_User_Preference__User_Preference_Default_Entry_Date__entry__user_preference_default_entry_date_KEY
IX_User_Preference$entry__user_preference_default_sheet_date_KEY | entry__user_preference_default_sheet_date_KEY | Index supports foreign key FK_User_Preference__User_Preference_Default_Sheet_Date__entry__user_preference_default_sheet_date_KEY
IX_User_Preference$entry_expense__activity_KEY | entry_expense__activity_KEY | Index supports foreign key FK_User_Preference__Activity__entry_expense__activity_KEY
IX_User_Preference$entry_expense__billing_rate_type_KEY | entry_expense__billing_rate_type_KEY | Index supports foreign key FK_User_Preference__Billing_Rate_Type__entry_expense__billing_rate_type_KEY
IX_User_Preference$entry_remote_time_entry__filter_KEY | entry_remote_time_entry__filter_KEY | Index supports foreign key FK_User_Preference__Filter__entry_remote_time_entry__filter_KEY
IX_User_Preference$entry_time__activity_KEY | entry_time__activity_KEY | Index supports foreign key FK_User_Preference__Activity__entry_time__activity_KEY
IX_User_Preference$entry_time__billing_rate_type_KEY | entry_time__billing_rate_type_KEY | Index supports foreign key FK_User_Preference__Billing_Rate_Type__entry_time__billing_rate_type_KEY
IX_User_Preference$receipt_entry__bank_account_KEY | receipt_entry__bank_account_KEY | Index supports foreign key FK_User_Preference__Bank_Account__receipt_entry__bank_account_KEY
IX_User_Preference$receipt_entry__ledger_entry_type_KEY | receipt_entry__ledger_entry_type_KEY | Index supports foreign key FK_User_Preference__Ledger_Entry_Type__receipt_entry__ledger_entry_type_KEY
IX_User_Preference$receipt_entry__user_preference_default_entry_date_KEY | receipt_entry__user_preference_default_entry_date_KEY | Index supports foreign key FK_User_Preference__User_Preference_Default_Entry_Date__receipt_entry__user_preference_default_entry_date_KEY
IX_User_Preference$receipt_entry__user_preference_default_sheet_date_KEY | receipt_entry__user_preference_default_sheet_date_KEY | Index supports foreign key FK_User_Preference__User_Preference_Default_Sheet_Date__receipt_entry__user_preference_default_sheet_date_KEY
IX_User_Preference$receipt_entry_adjustment__bank_account_KEY | receipt_entry_adjustment__bank_account_KEY | Index supports foreign key FK_User_Preference__Bank_Account__receipt_entry_adjustment__bank_account_KEY
IX_User_Preference$urgent__filter_KEY | urgent__filter_KEY | Index supports foreign key FK_User_Preference__Filter__urgent__filter_KEY

Foreign keys
Name | Columns | Referenced table | Description
FK_User_Preference__Activity__entry_expense__activity_KEY | entry_expense__activity_KEY | Activity |
FK_User_Preference__Activity__entry_time__activity_KEY | entry_time__activity_KEY | Activity |
FK_User_Preference__Bank_Account__receipt_entry__bank_account_KEY | receipt_entry__bank_account_KEY | Bank_Account |
FK_User_Preference__Bank_Account__receipt_entry_adjustment__bank_account_KEY | receipt_entry_adjustment__bank_account_KEY | Bank_Account |
FK_User_Preference__Billing_Rate_Type__entry_expense__billing_rate_type_KEY | entry_expense__billing_rate_type_KEY | Billing_Rate_Type |
FK_User_Preference__Billing_Rate_Type__entry_time__billing_rate_type_KEY | entry_time__billing_rate_type_KEY | Billing_Rate_Type |
FK_User_Preference__Client__entry__client_KEY | entry__client_KEY | Client |
FK_User_Preference__Engagement_Template__entry__engagement_template_KEY | entry__engagement_template_KEY | Engagement_Template |
FK_User_Preference__Filter__entry_remote_time_entry__filter_KEY | entry_remote_time_entry__filter_KEY | Filter |
FK_User_Preference__Filter__urgent__filter_KEY | urgent__filter_KEY | Filter | on delete set null;
FK_User_Preference__Ledger_Entry_Type__receipt_entry__ledger_entry_type_KEY | receipt_entry__ledger_entry_type_KEY | Ledger_Entry_Type |
FK_User_Preference__Staff__staff_KEY | staff_KEY | Staff | on delete cascade;

Incoming foreign keys
Name | Columns | Referencing table | Description
FK_User_Preference_Custom_Field_Column__User_Preference__user_preference_KEY | user_preference_KEY | User_Preference_Custom_Field_Column | on delete cascade;