70 Database Structure
Table : HD_ADUpdates 4
Table Structure 4
Table : HD_Audit_Trail 5
Table Structure 5
Table HD_Category 5
Table Structure 5
Table HD_Comp 6
Table Structure 6
Table HD_Contact 7
Table Structure 7
Table : HD_CustomDataAssign 8
Table Structure 8
Table HD_CustomDataLists 8
Table Structure 8
Table : HD_CustomDataSections 8
Table Structure 8
Table : HD_CustomDataTabs 9
Table Structure 9
Table HD_CustomFields 9
Table Structure 9
Table HD_DashReports 10
Table Structure 10
Table HD_Dept 10
Table Structure 10
Table : HD_Email_Extract_Rules 11
Table Structure 11
Table : HD_Email_Template 11
Table Structure 11
Table HD_Es_Action 12
Table Structure 12
Table HD_Es_Filter 12
Table Structure 12
Table HD_Es_FilterDetail 13
Table Structure 13
Table HD_Files 14
Table Structure 14
Table : HD_Hols 14
Table Structure 14
Table : HD_Lic 14
Table Structure 14
Table HD_Notify 15
Table Structure 15
Table HD_Notify_Recip 15
Table Structure 15
Table HD_Options 16
Table Structure 16
Table HD_Permissions 16
Table Structure 16
Table HD_Pref 17
Table Structure 17
Table HD_Priority 17
Table Structure 17
Table HD_ReportFolders 18
Table Structure 18
Table HD_ReportPermissions 18
Table Structure 18
Table HD_Reports 18
Table Structure 18
Table HD_Resolution 19
Table Structure 19
Table : SavedSearchAssign 19
Table Structure 19
Table : HD_SavedSearches 19
Table Structure 19
Table : HD_SavedSearchItems 20
Table Structure 20
Table HD_Solution 20
Table Structure 20
Table : HD_SolutionFiles 21
Table Structure 21
Table HD_Status 21
Table Structure 21
Table HD_Ticket 22
Table Structure 22
Table HD_Ticket_detail 23
Table Structure 23
Table HD_TicketCustomData 23
Table Structure 23
Table HD_TicketFiles 23
Table Structure 23
Table : HD_WorkingHours 24
Table Structure 24
Table : HD_ADUpdates
Description:
This table holds the details of when each user in the Helpdesk Database was last updated by
the Active Directory sync service
Table Structure
Field Name Description
NTUserName This is the NT Username that relates to a user in the HD_Contact
Table
LastUpdate This is the Date and Time of the last update
DontSync This is a flag to control whether the user details are updated to
match those defined in the Active Directory
Table : HD_Audit_Trail
Description:
This table holds the Audit Trail details for each Ticket
Table Structure
Field Name Description
TicketId This is the ID for the ticket that relates to the HD_Ticket Table
TimeStamp This is the Date and Time of the event in the Audit Trail
FullName This is the Full Name of the user that initiated the event
Event This is the text of the event detail
Table HD_Category
Description
Holds the list of Categories that helpdesk tickets can be raised against
Table Structure
Field Name Description
CategoryId This is the primary key and is an auto numbering integer
Parent This relates to a CategoryId in this table this enables the category
list to hierarchical.
CatDesc This is a Text description of the Category
Assignee This contains the ContactId of the person would be the assignee of
any tickets created by contact that belong to this Category
DeptAssignee This contains the DeptId of the Department that would be the
assignee of any tickets created by contact that belong to this
Category
Active If a category is deleted but it is assigned to a ticket or a solution then
the category (ticket Type) is marked as inactive
0 – means that the Ticket Type is not active and is not displayed in
any lists
1- means the Ticket Type is active
SortOrder This is the User Defined Sort Order based on the CategoryId
DefaultPri This contains the Default Priority for tickets of this type and is used
when determining the priority for a new ticket
ParentList A comma separated list of the parents of this Type
FullCatDesc The Full description of the Type calculated from its parents
Table HD_Comp
Description
Holds the information relating to the companies that are configured in the system
By Default at installation only one company will be created
Table Structure
Field Name Description
CompId This is the primary key and is an auto numbering integer
CompName This is the Name of the Company
DateCreated This is the date that this record was Created.
CompContact This contains a reference to a ContactId in Table HD_Contact that
relates to the main contact person for this company
PhoneNo This contains the Main Phone number for the company
PostalAddress This contains the Postal address of the company
Assignee This contains the ContactId of the person would be the assignee of
any tickets created by contact that belong to this company
DeptAssignee This contains the DeptId of the Department that would be the
assignee of any tickets created by contact that belong to this
company
Active Default value is 1
If the Company is deleted and the company contains departments
that are set to not active this is set to 0 and the company is no
longer displayed in the helpdesk, if there are not department in the
company then the record is deleted.
DefaultPri Reserved for future use
Table HD_Contact
Description
Contains Information about contacts
Table Structure
Field Name Description
ContactId This is the primary key and is an auto numbering integer
FullName This is the Fullname of the contact
DeptId This is an integer that relates to a DeptId in HD_Dept that defines
the department and company that this contact belongs to.
EmailAddress This is the contacts Email Address
PhoneNo This is the contacts Phone Number
CellNo This is the contacts Mobile Phone Number
TechStaff This is a Tiny Int that defines whether or not this contact is a
member of Technical Staff responsible for managing Helpdesk
Tickets
NTUserName This is an NT Username for integration with NT Security
Active Whether this user is a current user (ie tech staff that have left need
still need to be recored on the system for historic Tickets
Set to 0 for deleted users
Set to 1 for active users
Password An encypted Password
DateCreated The Date and time that this contact was created
LoggedOn This is set to 1 if the user is currently logged on to the helpdesk
LastUpdate This is a time stamp of the last time the logged on user requested a
web page and is used to detect when a user has logged off the
helpdesk
AllTickOpt This field only applies to Helpdesk Operators, when this is 1 the All
Tickets option is available on the menu to this user.
DefaultPri This contains the Default Priority set for the user and is used to
determine the priority of a new ticket
Table : HD_CustomDataAssign
Description:
This table contains the details of which custom data fields are displayed on tickets dependant
on the selected contact and ticket type.
Table Structure
Field Name Description
ID This is a unquie identifier for the table
CustomFieldId This relates to the Id for a custom field definition in the
HD_CustomFields Table
DeptId This is the ID of a Department for a contact that the field will be
displayed for
CompId This is the ID of a Company for a contact that the field will be
displayed for
ContactId This is the ID of a contact for which the custom field will be
displayed for
CatId This is the ID of a Ticket Type that the field will be displayed for
Table HD_CustomDataLists
Description
This table defines the list used for a combo type of custom field
Table Structure
Field Name Description
ListId This is the primary key and is an auto numbering integer
ListValue This is the value of the list entry
Table : HD_CustomDataSections
Description
This table holds the definition of the sections that hold the custom data fields
Table Structure
Field Name Description
SectionId This is a unique identifier for the section
Title This is the text that is displayed in the title of the section
Saved This is a flag to say that the section is Saved an therefore displayed
to users of the helpdesk, during the design phase this flag is not set
SortOrder This is an integer that defines which order sections are displayed in
TabId This relates to a TabId in the HD_CustomDataTabs table and
defines which tab the section is contained in. If this is null then the
section is displayed on the main form of the Ticket
Table : HD_CustomDataTabs
Description
This table holds the definitions of the tabs for the custom data
Table Structure
Field Name Description
TabId This is a unique identifier for the tab
Title This is the text that is displayed on the tab
Saved This is a flag to say that the tab is Saved an therefore displayed to
users of the helpdesk, during the design phase this flag is not set
SortOrder This is an integer that defines which order tabs are displayed in
Table HD_CustomFields
Description
Records the Customer Ticket Data created
Table Structure
Table HD_DashReports
Description
Holds a list of Quick reports to be displayed on the dashboard
Table Structure
Field Name Description
ReportId This is the primary key and is an auto numbering integer
Description A Description of the Report
SqlStatment The SQL Statement to run to produce the Table of information
FormatOptions Reserved for future use
Table HD_Dept
Description
Holds the information relating to the Departments that are that are configured for each
Company
Table Structure
Field Name Description
DeptId This is the primary key and is an auto numbering integer
DeptName This is the name of the department
CompId This relates to a CompId in the table HD_Comp that defines the
company that this department belongs to.
Manager This contains a Integer that relates to a ContactId in the table
HD_Contact that defines the manager of this department.
InitialAssignee This is a integer that relates to a ContactId in HD_Contact that
defines the Initial assignee for Tickets assigned to this Department
TechDept This is a Tiny Int that defines whether or not this department is a
Technical department responsible for managing Helpdesk Tickets
Assignee This contains the ContactId of the person would be the assignee of
any tickets created by contact that belong to this Department
DeptAssignee This contains the DeptId of the Department that would be the
assignee of any tickets created by contact that belong to this
Department
Active Default value is 1
When a Department is deleted if it contains users that have been
marked as not active this is set to 0 and the department is no longer
displayed in the helpdesk.
If there are no users in the department then the record is deleted
DefaultPri Reserved for future use
Parent The Parent Department
ParentList A comma separated list of the parents for this department
FullDeptName The Full name of the Department Calculated from the Parents
Table : HD_Email_Extract_Rules
Description
This table holds the definition for the incoming email rules
Table Structure
Field Name Description
ExtractID This is the primary key and is an auto numbering integer
Description This is the description of the rule that is displayed in the helpdesk
SourceField This is the field of the email in which to search
DestField This is the destination field
ExtractOperator This is how to extract the data from the email
Data1 Value defined to extract data
Data2 Value defined to extract data
SortOrder This is an integer that defines which order the rules are processed in
CaseSensitive This is a flag to indicate if the extraction rule should be case
sensitive
Enabled A flag to indicate if the rule is enabled
Table : HD_Email_Template
Description:
This table holds the templates for all the emails that are sent by the server these can be
notification or Escalation emails.
Table Structure
Field Name Description
TemplateId This is the primary key and is an auto numbering integer
FromAddress This is the Email address that the email will be sent from.
Subject This is the Subject line of the email
Body This is the body of the email and may contain place holders for
Variables
Description A friendly name for the template
HTML This field denotes whether the Email is to be sent in HTML format
0 means that the Email is sent as plain text
1 means that the Email is sent as HTML
Table HD_Es_Action
Description
This table contains the list of defined Escalation Actions
Table Structure
Table HD_Es_Filter
Description
This table contains the list of defined Escalations
Table Structure
Field Name Description
FilterId This is the primary key and is an auto numbering integer
FilterDesc This is a text Description of the escalation
DateCreated This is a Date and Time when the Escalation was Created
Owner This is an integer that relates to a ContactId In the HD_Contact table
that defines the user that created this Escalation
Enabled 0 – this escalation will not be processed
1 – this escalation will be processed
Table HD_Es_FilterDetail
Description
This table contains the Criteria for an escalation
The combination of FieldName, Operator, Criteria should build a SQL where clause eg
FieldName DueDate
Operator <
Criteria Getdate()
DueDate<Getdate()
Table Structure
Field Name Description
FilterDetailId This is the primary key and is an auto numbering integer
FilterId This relates to the FilterId in the HD_Es_Filter table
FieldName This is a name of field from the HD field in the HD_Ticket table that
should be queried
Operatior This will be one of
0 =
1 >
2 <
3 Like
etc
Criteria This is the criteria to match
ExecuteOrder This is the order in which the Criteria should be executed
JoinType Either a 0 or 1 and defines where to add a AND or OR to the end of
the criteria
Description The Name of this condition
Table HD_Es_Ticket
Description
Records what escalations have been performed on a ticket
Table Structure
Field Name Description
FilterId This relates to the FilterId in the HD_Es_Filter table
TicketId This is an Integer that relates to a TicketId in HD_Ticket
DateStamp The date and time the escalation was performed
Table HD_Files
Description
Holds the list of all Uploaded files
Table Structure
Table : HD_Hols
Description
This table holds the details of the Holidays that are defined for the Helpdesk, these holidays are
used for the escalation and due date calculations
Table Structure
Field Name Description
ID This is the primary key and is an auto numbering integer
StartDate This is the Start Date of the holiday
EndDate This is the End Date of the holiday
Description This is the text description of the holiday
Table : HD_Lic
Description
This table holds the license details for the Helpdesk
Table Structure
Field Name Description
CompanyName This is the Company Name defined for the license
SerialNo This is the serial number defined for the license
LicCode This is the authorisation code for the license
Table HD_Notify
Description
Holds a list of Notification rules
Table Structure
Field Name Description
NotifyId This is the primary key and is an auto numbering integer
Condition This is an integer that defines when this notification rule is run
1 – Ticket Created
2 – Ticket Status Changed
4 – Ticket Priority Changed
8 – Ticket reassigned
16 – Due Date Changed
32 – Ticket Updated
64 – Ticket Closed
128 – Ticket Escalated
Table HD_Notify_Recip
Description
Defines which persons a notification is sent to
Table Structure
Field Name Description
RecipId This is the primary key and is an auto numbering integer
NotifyId This is an Integer that relates to a NotifyId in HD_Notify
RecipType This is an integer that defines who to send the email to
1- The contact for the Ticket
2- The Contact for a tickets manager
3- The Assignee for the ticket
4- The manager of the Assignee for a ticket
5- The Creator of a ticket
6- The manager of the Creator of a ticket
7- The Default company contact for the Company that the
Contact for a ticket belongs to
8- a specific email address
EmailAddress If the RecipType is 8 then this field will contain the specific email
address
ContactId Reserved for future use
AddressType Defines whether the recipient is a TO, CC or BCC addressee
1 - TO addressee
2 – CC Addressee
3 – BCC Addresee
Table HD_Options
Description
Records what escalations have been performed on a ticket
Table Structure
Field Name Description
OptionName The Name of the Option
sValue If the Option is a varchar this contains the value of the Option
iValue If the Option is a Integer this contains the value of the Option
sValue If the Option is a Text this contains the value of the Option
Table HD_Permissions
Description
Holds the User Preferences for the default, Company, Department or Contact
Table Structure
Field Name Description
Id This is the primary key and is an auto numbering integer
Permission This is an integer that relates to one of the permission constants that
defines the permission that this record grants or denies
ContactId This is the ContactId of the contact for which this record holds a
permission, this may be null is this record defines a permission for a
Department, Company or a Default premission.
DeptId This is the DeptId of the Department for which this record holds a
permission, this may be null is this record defines a permission for a
Contact, Company or a Default permission
CompId This is the CompId of the Company for which this record holds a
permission, this may be null is this record defines a permission for a
Contact, Department or a Default Permission
DenyPermission This is an integer if set to 1 then the Permission is denied else the
permission is granted
Table HD_Pref
Description
Holds the User Preferences for the default, Company, Department or Contact
Table Structure
Table HD_Priority
Description
This table holds the details of the defined priority levels for the Helpdesk implementation
Table Structure
Table HD_ReportFolders
Description
Records what Folders exist and where the Reports are Located
Table Structure
Table HD_ReportPermissions
Description
Which Reports the Users have access to view
Table Structure
Table HD_Reports
Description
What reports are available
Table Structure
Table HD_Resolution
Description
Contains the Resolution codes for tickets
Table Structure
Table : SavedSearchAssign
Description
This table stores the details of saved searches that are assigned to users
Table Structure
Field Name Description
SearchAssignId This is the primary key and is an auto numbering integer
SearchId This is the SearchId that relates to data in the HD_SavedSearches
table
ContactId This is the Integer that relates to the ContactId in HD_Contact
DeptId This is the Integer that relates to the DeptId in HD_Dept
CompId This is the Integer that relates to the CompId in HD_Comp
Table : HD_SavedSearches
Description
This table defines the details of a saved search
Table Structure
Field Name Description
SearchId This is the primary key and is an auto numbering integer
SearchName This is the Name of the saved search
FieldList This is a comma separated list of the fields displayed in the search
results
WhereClause This is the Where clause for the search
Menu This is a flag that determines if the search is displayed on the menu
Owner This relates to a ContactId in the HD_Contact table and is the user
that created the search
sortOrder This is an integer that defines which order searches are displayed in
Table : HD_SavedSearchItems
Description
This table is used to store the Criteria for a saved search
Table Structure
Field Name Description
SearchCriteriaId This is the primary key and is an auto numbering integer
SearchId This is the SearchId that relates to data in the HD_SavedSearches
table
OptionValue Value of the search Criteria
OptionText The text displayed in the User interface for this item
SortOrder This is an integer that defines which order search criteria items are
displayed in
Table HD_Solution
Description
Holds solutions to Problems
Table Structure
Field Name Description
SolutionId This is the primary key and is an auto numbering integer
CategoryId This relates to a CategoryId in the table HD_Category table that
defines the category of this problem
SolutionText A Text description of the solution
Creator This hold the ContactId of the Contact that Created this solution
DateCreated This holds the date and time that this solution was created
Active If the Solution is deleted but is is associated with a ticket the solution
is marked as inactive and is not displayed in any lists.
0 – means that this solution is deleted
1 – means the Solution is active
Published A Flag to indicate if this solution is published
PublishDate The Date and time that the solution was published
PublishedBy The Full name of the user that published the solution
Table : HD_Solution_Formated
Description
This table contains the HTML Text of the solution
Table Structure
Field Name Description
SolutionId This relates to the SolutionId in the HD_Solution Table
SolutionHTML This is the formatted HTML of the solution Text
Table : HD_SolutionFiles
Description
This table defines the files that are attached to a solution
Table Structure
Field Name Description
SolutionId This relates to the SolutionId in the HD_Solution Table
FileId This is the Integer that relates to the FileId in HD_Files
Table HD_Status
Description
Holds the list of statuses that a Helpdesk Ticket can be assigned
Table Structure
Field Name Description
StatusId This is the primary key and is an auto numbering integer
StatusDesc This is a Text description of the Status
SortOrder This Defines the Order that the statuses are displayed in Lists
Closed 0 – this status is not a closed status
1 – this status is a closed status
Table HD_Ticket
Description
This table contains the information about each Ticket
Table Structure
Table HD_Ticket_detail
Description
Hold the detail of the Helpdesk Ticket
Table Structure
Table HD_TicketCustomData
Description
Records what Custom Ticket Data based on TicketId
Table Structure
Field Name Description
TicketId This is the Integer that relates to the TicketId in HD_Ticket
CustomFieldId This is the primary key and is an auto numbering integer
TextValue This is the value of the field if the field is a textarea
StringValue This is the Value of the field if the field type is not a textarea
Table HD_TicketFiles
Description
Holds the list of Uploaded files based on TicketId
Table Structure
Field Name Description
TicketId This is the Integer that relates to the TicketId in HD_Ticket
FileId This is the Integer that relates to the Field in HD_Files
Table Structure
Field Name Description
Dayofweek An integer defining the day of the week
StartTime The working hours start time
EndTime The working hours end time