Documente Academic
Documente Profesional
Documente Cultură
Issue 6.0.2
SECURITY MANAGEMENT SYSTEM
9600-0458
Contents
1
Preface ................................................................................................. ii
About this Manual................................................................................................................................. ii
Message.txt........................................................................................................................................28
Export.txt and VisitorExport.txt...........................................................................................................29
1 Preface
About this Manual
This guide explains how to import and export data to and from the Security Management System (SMS)
software.
This guide is intended to be of use to personnel who are responsible for interfacing third-party systems with
the SMS software through the import/export databases documented in this manual.
This document is supported by context-sensitive online help available from the SMS software.
ii
2 Chapter 1:
Introduction
This chapter describes how to import details of card holders or visitors from a third-party system into the
security management system (SMS). The following diagram illustrates the process.
Note: Please refer to Chapter 3 if you want to import card details for use at a Central Card Handler Client.
Third-Party
System
Import database
SMS
Software
Database housekeeping
options are provided.
A password, if specified,
prevents unauthorized
records in the database from
being imported.
Note: Refer to the Online Help for full details of how to use the Data Import screen.
Refer to the appropriate appendix for details of the required format of the import database. A
template database is generated when the software is installed.
The ASCII import database is located by default in the Program Files\Security Management
System\Import subfolder on the database machine and may be changed.
The SMS software reads the card details in the import database.
When using an SQL Server database, these must be stored in the table named:
DataImportTable
VisitorDataImportTable
When using an ASCII text file database, the import database must be named:
Import.txt
VisitorImport.txt
2.
If a password is specified in the Tools/Data Import screen, the SMS software checks the encrypted
password in the import database. The system will process a record in the import database only if the
encrypted password is correct (see Password Encryption on page 7).
3.
The RecordRequest field in the import database (see page 4) specifies whether to add the details of
a new card, modify the details of an existing card, make the card inactive, add additional access
rights, remove all access rights, reactivate the card or delete the card. The SMS software carries out
the requested action.
4.
The system reads face and signature images, which must be JPEG files stored in the \Security
Management System\Import\Faces and \Security Management System\Import\Sigs folders on the
database machine. Note: ensure that each file has a .jpg file extension.
5.
ASCII database only: when all records in the import database (Import.txt and VisitorImport.txt) have
been processed, each record is added (concatenated) to a file called Export.txt or VisitorExport.txt in
\Security Management System\Import on the database machine or the other selected folder. All the
records in Import.txt or VisitorImport.txt are deleted.
6.
The SMS software updates the RecordStatus field in the SQL Server database, Export.txt or
VisitorExport.txt (as appropriate) to specify whether importing of the card record was successful or
unsuccessful. There are several status codes for different error conditions.
The meaning of each status code is stored in a table called MessageTable (SQL Server database) or
in a text file called Message.txt (ASCII database). Message.txt is stored in the Security Management
System\Import folder.
Company names. Whenever a new company is added or its name changed, the SMS software
writes the company details to a table called CompanyTable (SQL Server database) or to a file called
Company.txt (ASCII database).
Reader groups. Whenever a new reader group is added or its name changed, the SMS software
writes the reader group name, ID and company to a table called ReaderGroupTable (SQL Server
database) or to a file called Readergp.txt (ASCII database).
Time codes. Whenever a new time code is added or its name changed, the SMS software writes the
time code name, ID and company to a table called TimeCodeTable (SQL Server database) or to a
file called TimeCode.txt (ASCII database).
Badge designs. Whenever a new badge design is added or its name changed, the SMS software
writes the badge design name, ID and company to a table called BadgeFormatIDTable (SQL Server
database) or to a file called Badge.txt (ASCII database).
Access codes. Whenever a new access code is added or its name is changed, the SMS software
writes the access code name, ID and company to a table called AccessCodeTable (SQL Server
database) or to a file called Accesscd.txt (ASCII database).
Readers. Whenever a new reader is added or its name is changed, the SMS software writes the
reader name, ID and company to a table called ReaderTable (SQL Server database) or to a file
called Reader.txt (ASCII database).
RecordRequest = 0 (Add/Modify)
If the RecordRequest field is set to 0 (add/modify), one of two outcomes are possible:
If the card holder/visitor card does not already exist in the SMS software, a new record is added.
If the card holder/visitor card already exists in the SMS software, the card details are modified (see
next section).
The method for determining whether or not the card already exists is the same as when RecordRequest =
1 (see next section).
If a new card record is being added to the SMS software and the CardNumber field is empty, the
SMS software will automatically set the card number to the lowest unused card number if the Auto
Card Number preference is set in Configure/Preferences/System. If the Auto Card Number
preference is not set, the record will be imported with a card number of zero and set to inactive. Note
that there are separate Auto Card Number preferences for card holders and visitors.
If the PIN field is empty, the SMS software will generate a PIN. A PIN of 0000 is not allowed.
If the ActiveDate field is empty, the active date will be set to the current date.
If the ExpiryDate field is empty (named Inactive Date in the SMS user interface), the inactive date
will be left empty, which means no inactive date.
For a visitor, if the Visitor Maximum No. of Days preference is set in the
Configure/Preferences/System screen, the inactive date is automatically set to be the ActiveDate,
plus the number of days specified by the Visitor Maximum No. of Days. If the Visitor Maximum
No. of Days preference is not set and there is no ExpiryDate, there will be no inactive date.
If the CompanyID field is empty the company assigned (see CompanyTable or Company.txt) is the
one associated with the facility/customer code entered. If multiple companies use the same
facility/customer code, CompanyID field must contain a valid company ID.
The CardIssueLevel field is used only if the Card Issue Levels option in the
Configure/Preferences/System screen is set.
If importing with a badge design that has access rights associated with it, the access rights are only
assigned to the card if no reader time code data, reader group time code data or access code is
given in the import record.
Personal data must be supplied for a card record for those personal data fields that are mandatory.
RecordRequest = 1 (Modify)
If the RecordRequest field is set to 1 (or to 0 and the card already exists), the specified card
holder's/visitor's details are updated with the data contained in the import database. If any fields are empty,
the corresponding fields in the SMS software remain unchanged.
The existing card in the SMS software is found by using one of the following three methods:
1.
2.
3.
If more than one card is found, all matching records are modified.
Once the relevant record in the SMS database has been located, any field can be updated, except the card
number.
The CardIssueLevel field is used to update the details only if the Card Issue Levels option in the
Configure/Preferences/System screen is set.
Note: It is not possible to modify the card access rights by changing the ReaderID, ReaderGroupID,
AccessCodeID, TimeCodeID or BadgeFormatID fields; any entries made to the ReaderGroupID or
TimeCodeID fields will be ignored, as will the access rights associated with the badge design.
It is not possible to modify a card record with a card number of zero.
AccessCodeID field. The system searches for the existing card in the same way as when RecordRequest
is set to 1. If more than one card is found, all matching records have their access rights removed.
Note: when RecordRequest is set to 6, only remove an access right; do not make other changes to the
card record. It is not possible to remove advanced access rights.
RecordRequest = 42 (Delete)
If RecordRequest is set to 42, the specified card is deleted from the database. The system searches for
the existing card in the same way as when RecordRequest is set to 1. If more than one card is found, all
matching records are deleted.
Password Encryption
Protection against importing an unauthorized database is provided by the Encryption field. Encryption is
applicable to both SQL and text import databases.
If a password is specified in the Tools/Data Import screen, the system checks that the password matches
the encrypted password in each record of the import database. Processing of a record is not carried out if
the encrypted password is incorrect.
If password security is required, the third-party software must be able to encrypt the password as follows:
1.
Concatenate every field that is used for encryption (see DataImportTable on page 14). This will mean
converting all numbers and dates to their string representations.
Dates must be converted to the string representation dd/mm/yyyy, without leading zeroes.
Any empty fields must not be included.
The order of concatenation is the same as the order of the fields (see the appropriate appendix).
2.
3.
Example
The following gives an example of an encryption of the password "enigma" for a card holder record.
The encryption value of 2091 was calculated as follows:
1.
2.
3.
4.
The ASCII value of each character in this string is summed to produce a value of 2091.
Field Name
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
EmployeeReference
PIN
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
ExpiryDate
ReaderGroupID
TimeCodeID
RecordRequest
InactiveComment
Encryption
Value
Soap
Joe
45
1
Note
456
EmployeeReference is not
relevant for visitor records
and takes no part in
encryption
Neil Smith
29/6/2000
1
2
1
2091
3 Chapter 2:
Introduction
This chapter describes how to export details of card holders from the SMS software to a third-party system
or to another similar SMS software installation. The following diagram illustrates the process.
Note: You cannot export visitor records from the SMS software.
SMS
Software
Export database
Third-Party or other
SMS software
installation
Note: By default, card details are exported only after a user adds, modifies or deletes a card from the
Identity/Card Holders or Identity/Bulk Card Amendments screen in the SMS software. However, an INI file
parameter set at the server allows imported card data also to be exported. The optional parameter in the
[multiMax] section is DataExportAfterImport=1.
10
4 Chapter 3:
Introduction
The following describes the process of importing card details from a third-party system when the Central
Card Handler (CCH) software is being used in a Global Edition system.
Third-Party
System
Import database
CCH Client
CCH Database
Administration Client
Regional import
databases
A third-party system can export card data (such as name, card number,
personal data and access rights) into an import database.
The data in the import database can be imported into the Central Card Handler
Database. This can be actioned only from the Tools/Data Import screen at a
CCH Client PC. An option in the Tools/Data Import screen enables imports to
take place automatically.
Any card details set up at a CCH Client are stored in this SQL database. Any
data imported from the third-party system can be accessed and edited from a
CCH Client.
Each region can import the data in the CCH database into the region's import
database (the format of which is documented in Appendix A). The import can
be actioned from the Tools/Data Import screen at an Administration client
located at the region. Alternatively, an option in the Install/Regions screen at a
CCH client enables imports to take place automatically.
SMS Database
11
Database housekeeping
options are provided.
Note: Please refer to the Online Help at a CCH Client for further details.
Note: Please refer to the Online Help at a CCH Client for further details
12
5 Chapter 4:
Transaction data from third-party systems can be imported into the SMS transaction database via the
import database. This allows SMS clients to display live transactions in the Alarm and Activity windows and
to produce reports of these transactions.
The following diagram illustrates the import process.
Note: For performance reasons, it is recommended that transactions are not added to the import database
at times when cards are being imported into the SMS database.
Third-Party
System
Import database
Transaction
database
The SMS support service reads the transactions entered into the import
database and automatically checks and moves the transactions into the
live transaction database (multiMaxTxn). This occurs for each transaction
as it is added to the table (as opposed to import batches used in the card
import mechanism).
SMS
Client
SMS clients can display the transactions in the Alarms screen and produce
reports that include the transactions
Importing Transactions
13
This appendix describes the format of the data expected by the Tools/Data Import screen when an SQL
import database is being used (DataImportEnabled = 1 in multimax.ini).
Note: You must belong to the "ACSUSERS" user group to be able to access the SQL Server databases.
By default, all users set up to use the SMS software already belong to this group.
14
Field Name
Data Type
RecordCount
integer
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
EmployeeReference
PIN
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
ExpiryDate
ReaderGroupID
TimeCodeID
RecordRequest
nvarchar(40)
nvarchar(40)
integer
integer
tinyint
nvarchar(12)
smallint
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
datetime
datetime
integer
integer
smallint
Used for
Encryption
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Comments
Value assigned automatically by SQL
database
Valid Range: 1 to 64
Valid Range 0 to 9
Valid Range 1 to 9999
RecordStatus
smallint
No
InactiveComment
Encryption
CustomerCode
nvarchar(40)
integer
integer
Yes
Yes
No
FaceFile
SignatureFile
InitLet
BadgeFormatID
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
nvarchar(128)
nvarchar(128)
nvarchar(1)
integer
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
PersonalData27
PersonalData28
PersonalData29
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
PersonalData38
PersonalData39
PersonalData40
PersonalData41
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Middle initial
See also the DefaultBadge field
15
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
PersonalData49
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
ReaderID
AccessCodeID
ImportNow
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
integer
integer
bit
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
BatchReference
uniqueIdentifier (16)
No
DefaultBadge
bit
No
16
Field Name
Data Type
RecordCount
integer
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
PIN
PersonalData1
PersonalData2
nvarchar(40)
nvarchar(40)
integer
integer
tinyint
smallint
nvarchar(40)
nvarchar(40)
Used for
Encryption
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Comments
Value assigned automatically by SQL
database
Valid Range: 1 to 64
Valid Range 0 to 9
Valid Range 1 to 9999
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
ExpiryDate
ReaderGroupID
TimeCodeID
RecordRequest
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
datetime
datetime
integer
integer
smallint
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
RecordStatus
smallint
No
InactiveComment
Encryption
CustomerCode
nvarchar(40)
integer
integer
Yes
Yes
No
FaceFile
SignatureFile
InitLet
BadgeFormatID
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
nvarchar(128)
nvarchar(128)
nvarchar(1)
integer
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
PersonalData27
PersonalData28
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
No
No
No
No
No
No
No
Middle initial
See also the DefaultBadge field
17
18
PersonalData29
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
PersonalData38
PersonalData39
PersonalData40
PersonalData41
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
PersonalData49
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
ReaderID
AccessCodeID
ImportNow
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
integer
integer
bit
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
BatchReference
uniqueIdentifier (16)
No
Representing
Vehicle
ArrivalDate
DepartureDate
Visiting
Message
BusinessCardFile
ContactNumber
nvarchar(40)
nvarchar(40)
datetime
datetime
nvarchar(40)
nvarchar(256)
nvarchar(128)
nvarchar(40)
No
No
No
No
No
No
No
No
DefaultBadge
bit
No
Data Type
smallint
nvarchar(120)
MessageTable contents:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
24
25
26
27
28
29
30
31
32
33
34
19
35
36
38
39
Data Type
integer
integer
nvarchar(40)
Data Type
integer
nvarchar(40)
integer
Data Type
integer
integer
nvarchar(40)
20
Data Type
integer
integer
nvarchar(40)
Data Type
integer
integer
binary
Data Type
integer
nvarchar(40)
nvarchar(40)
nvarchar(40)
integer
integer
Data Type
integer
integer
nvarchar(40)
integer
Data Type
integer
nvarchar(40)
integer
Note
21
This appendix describes the format of the data expected by the Tools/Data Import screen when a textformat import database is being used (DataImportEnabled = 2 in multimax.ini).
Import.txt
Note:
22
The following table is used only for card holders (not visitors).
The text delimiter is a quote ("). The field delimiter is a comma (,).
Field Name
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
Data Type
text(40)
text(40)
integer
integer
short
Example
"Smith",
"Neil",
456,
13,
1,
EmployeeReference
PIN
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
text(12)
short
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
"EMP456",
1234,
"Gloucester",
"England",
"P772 FJO",
,
,
,
,
,
,
,
Comments
Valid Range 1 to 64
Valid Range 0 to 9. The range for
CardIssueLevel must be 0 to 9 when the Card
Issue Levels preference is set to Yes, or
blank if set to No.
Valid Range 1 to 9999
ActiveDate
date
17/03/2006,
ExpiryDate
date
19/12/2006,
ReaderGroupID
TimeCodeID
RecordRequest
integer
integer
short
1,
1,
0,
RecordStatus
InactiveComment
Encryption
CustomerCode
FaceFile
SignatureFile
InitLet
BadgeFormatID
short
text(40)
integer
integer
text(128)
text(128)
text(1)
integer
0,
,
,
999,
"face1.jpg",
"sig1.jpg",
"J",
3,
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
"Contractor",
,
,
,
,
,
,
,
,
,
,
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
PersonalData27
PersonalData28
PersonalData29
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
,
,
,
,
,
,
,
,
Middle initial
Obtain by referring to Badge.txt. See also the
DefaultBadge field.
23
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
PersonalData38
PersonalData39
PersonalData40
PersonalData41
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
PersonalData49
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
ReaderID
AccessCodeID
DefaultBadge
24
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
<cr>
VisitorImport.txt
Note:
The text delimiter is a quote ("). The field delimiter is a comma (,).
Field Name
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
Data Type
text(40)
text(40)
integer
integer
short
Example
"Smith",
"George",
456,
13,
1,
PIN
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
short
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
date
1234,
"Gloucester",
"England",
"VO54 FJO",
,
,
,
,
,
,
,
17/03/2006,
ExpiryDate
date
19/12/2006,
ReaderGroupID
TimeCodeID
RecordRequest
integer
integer
short
1,
1,
0,
RecordStatus
short
0,
Comments
Valid Range 1 to 64
Valid Range 0 to 9. The range for
CardIssueLevel must be 0 to 9 when the Card
Issue Levels preference is set to Yes, or
blank if set to No.
Valid Range 1 to 9999
25
26
InactiveComment
Encryption
CustomerCode
FaceFile
SignatureFile
InitLet
BadgeFormatID
text(40)
integer
integer
text(128)
text(128)
text(1)
integer
,
,
999,
"face1.jpg",
"sig1.jpg",
"J",
3,
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
"Contractor",
,
,
,
,
,
,
,
,
,
,
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
PersonalData27
PersonalData28
PersonalData29
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
PersonalData38
PersonalData39
PersonalData40
PersonalData41
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
PersonalData49
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
Middle initial
Obtain by referring to Badge.txt. See also the
DefaultBadge field.
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
ReaderID
AccessCodeID
Representing
Vehicle
ArrivalDate
DepartureDate
Visiting
Message
BusinessCardFile
ContactNumber
DefaultBadge
text(40)
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
text(40)
text(40)
date
date
text(40)
text(256)
text(128)
text(40)
integer
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
<cr>
Reader.txt
Field Name
ReaderID
CompanyID
ReaderName
Data Type
integer
integer
text(40)
ReaderGp.txt
Field Name
ReaderGroupID
CompanyID
ReaderGroupName
Data Type
integer
integer
text(40)
27
TimeCode.txt
Field Name
TimeCodeID
TimeCodeName
CompanyID
Data Type
integer
text(40)
integer
AccessCd.txt
Field Name
AccessCodeID
CompanyID
AccessCodeName
Data Type
integer
integer
text(40)
Company.txt
Field Name
CompanyID
CompanyName
CustomerCode
Data Type
integer
text(40)
integer
Badge.txt
Field Name
BadgeFormatID
BadgeFormatName
CompanyID
Data Type
integer
text(40)
integer
Note
Data Type
short
text(120)
Example
0,
"The record has not
been imported yet."<cr>
Message.txt
Field Name
RecordStatus
Message
28
Message.txt contents:
0,"The record has not been imported yet."
1,"The record has been successfully imported."
2,"The mandatory fields have not been specified in this record."
3,"The card issue levels preference must be set to import this record."
4,"Could not find the specified record in the database."
5,"The format of this record is incorrect."
6,"This record has an encryption error."
7,"A general error has occurred on this record."
8,"Cannot add this card as it already exists in the database."
9,"The specified card issue level is out of range."
10,"The specified PIN is out of range."
11,"The specified company is not defined in the database."
12,"The specified reader group is not defined in the database."
13,"The specified time code is not defined in the database."
14,"The specified expiry date is before the active date."
15,"An unknown record request has been specified."
16,"The card holders face image file could not be found."
17,"The card holders signature image file could not be found."
18,"The specified customer code is not valid for this company."
19,"More than one customer code exists for the selected company."
20,"More than one company exists for the selected customer code."
24,"The specified badge format ID is not valid for the specified company."
25,"The Card Number needs to be specified for this system."
26,"The employee reference has not been supplied or it already exists in the database."
27,"There is a reader group time code conflict."
28,"The reader group and time code already exist."
29,"Biometric data incorrect."
30,"Mandatory personal data not set."
31,"The specified reader is not defined in the database."
32,"The specified access code is not defined in the database."
33,"There is a reader time code conflict."
34,"The reader and time code already exist."
35,"There is a access code conflict."
36,"The access code already exists."
38,"The specified card is used in a conditional command."
39,"The specified card has no visitor escort assigned to it."
29
This appendix describes the data exported by the Tools/Data Export screen when an SQL export database
is being used (DataExportEnabled = 1 in multimax.ini).
Note: You must belong to the "ACSUsers" user group to be able to access the SQL Server databases. By
default, all users set up to use the SMS software already belong to this group.
30
Field Name
RecordCount
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
EmployeeReference
PIN
Data Type
integer
nvarchar(40)
nvarchar(40)
integer
integer
tinyint
nvarchar(12)
smallint
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
ExpiryDate
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
datetime
datetime
Comments
Auto increment counter for sorting
Range: 1 to 64
Range 0 to 9.
Range 1 to 9999. Leading zeroes are not included in PIN
numbers.
RecordRequest
smallint
InactiveComment
Encryption
CustomerCode
FaceFile
nvarchar(40)
integer
integer
nvarchar(128)
SignatureFile
nvarchar(128)
ExportTimeStamp
Active
AccessGranted
InitLet
BadgeFormatID
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
datetime
bit
bit
nvarchar(1)
integer
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
PersonalData27
PersonalData28
PersonalData29
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
31
PersonalData38
PersonalData39
PersonalData40
PersonalData41
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
PersonalData49
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
32
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
This appendix describes the data exported by the Tools/Data Export screen when text-format export
database is being used (DataExportEnabled = 3 in multimax.ini).
Exported Import.txt
Note:
The text delimiter is a quote ("). The field delimiter is a comma (,).
Field Name
LastName
FirstName
CardNumber
CompanyID
CardIssueLevel
Data Type
text(40)
text(40)
integer
integer
short
Example
"Smith",
"George",
456,
13,
1,
EmployeeReference
PIN
text(12)
short
"EMP456",
1234,
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
date
"Gloucester",
"England",
"VO54 FJO",
,
,
,
,
,
,
,
05/06/2006 00:00:00,
Comments
Valid Range: 1 to 64
Valid Range 0 to 9. If the
CardIssueLevel field is blank, it
indicates that a card issue level has not
been set in the SMS software.
Valid range: 1 to 9999. Leading zeroes
are not included in PIN numbers.
33
34
ExpiryDate
date
07/12/2006 00:00:00,
ReaderGroupID
TimeCodeID
RecordRequest
integer
integer
short
,
,
0,
RecordStatus
InactiveComment
Encryption
CustomerCode
FaceFile
short
text(40)
integer
integer
text(128)
0,
"",
0,
999,
"face1.jpg",
SignatureFile
text(128)
"sig1.jpg",
InitLet
BadgeFormatID
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
text(1)
integer
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
"J",
3,
"Contractor",
,
,
,
,
,
,
,
,
,
,
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
text(40)
text(40)
text(40)
text(40)
text(40)
,
,
,
,
,
PersonalData27
PersonalData28
PersonalData29
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
PersonalData38
PersonalData39
PersonalData40
PersonalData41
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
PersonalData49
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
text(40)
integer
integer
integer
integer
integer
integer
integer
integer
integer
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
35
This appendix describes the format of the data expected by the Tools/Data Import screen at a Central Card
Handler (CCH) Client. The database is named "CardHandlerImport" and is in SQL format.
Note: You must belong to the "ACSUSERS" user group to be able to access the SQL Server databases.
By default, all users set up to use the SMS software already belong to this group.
Note: Only card holder details are imported. Central Card Handler Clients cannot be used to set up visitor
details.
36
Field Name
Data Type
RecordCount
integer
LastName
FirstName
CardNumber
CardIssueLevel
EmployeeReference
PIN
PersonalData1
PersonalData2
PersonalData3
PersonalData4
PersonalData5
PersonalData6
PersonalData7
PersonalData8
PersonalData9
PersonalData10
ActiveDate
ExpiryDate
nvarchar(40)
nvarchar(40)
integer
tinyint
nvarchar(12)
smallint
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
datetime
datetime
Used for
Encryption
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Comments
Value assigned automatically by SQL
database
Valid Range 0 to 9
Valid Range 1 to 9999
RecordRequest
smallint
Yes
RecordStatus
smallint
No
InactiveComment
FaceFile
SignatureFile
InitLet
BadgeFormatID
PersonalData11
PersonalData12
PersonalData13
PersonalData14
PersonalData15
PersonalData16
PersonalData17
PersonalData18
PersonalData19
PersonalData20
PersonalData21
nvarchar(40)
nvarchar(128)
nvarchar(128)
nvarchar(1)
integer
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
PersonalData22
PersonalData23
PersonalData24
PersonalData25
PersonalData26
PersonalData27
PersonalData28
PersonalData29
PersonalData30
PersonalData31
PersonalData32
PersonalData33
PersonalData34
PersonalData35
PersonalData36
PersonalData37
PersonalData38
PersonalData39
PersonalData40
PersonalData41
PersonalData42
PersonalData43
PersonalData44
PersonalData45
PersonalData46
PersonalData47
PersonalData48
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
nvarchar(40)
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
0 = Add/Modify record
1 = Modify record
2 = Make existing record inactive
Set to 0 for import. MessageTable gives
meaning of updated value
Reason for card being made inactive
Middle initial
37
PersonalData49
PersonalData50
HandTemplateValue1
HandTemplateValue2
HandTemplateValue3
HandTemplateValue4
HandTemplateValue5
HandTemplateValue6
HandTemplateValue7
HandTemplateValue8
HandTemplateValue9
Encryption
CompanyID
AssignAllRegions
nvarchar(40)
nvarchar(40)
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
tinyint
integer
integer
tinyint
No
No
No
No
No
No
No
No
No
No
No
No
No
No
ImportNow
bit
No
Data Type
smallint
nvarchar(120)
MessageTable contents:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
38
19
20
24
25
26
27
28
29
30
31
32
33
34
35
36
38
More than one customer code exists for the selected company.
More than one company exists for the selected customer code.
The specified badge format ID is not valid for the specified company.
The Card Number needs to be specified for this system.
The employee reference has not been supplied or it already exists in the database.
There is a reader group time code conflict.
The reader group and time code already exist.
Biometric data incorrect.
Mandatory personal data not set.
The specified reader is not defined in the database.
The specified access code is not defined in the database.
There is a reader time code conflict.
The reader and time code already exist.
There is an access code conflict.
The access code already exists.
The specified card is used in a conditional command
Data Type
integer
nvarchar(40)
nvarchar(40)
nvarchar(40)
integer
integer
Data Type
integer
nvarchar(40)
integer
Note
39
This appendix describes the format of the data expected by the TxnImportTable of the import database
(multiMaxImport) for external transactions to be imported into the system.
Data Type
Comments
TxnImportId
TxnDateTime
WhatField
WhereField
FirstName
LastName
TimeZone
AlarmColour
AlarmPriority
Alarm
integer
datetime
nvarchar(255)
nvarchar(255)
nvarchar(40)
nvarchar(40)
nvarchar(4)
integer
smallint
tinyint
Note: The AlarmColour value can be calculated by taking the hex value of each of the three individual color
components (blue, green, red), concatenating the values, then calculating the decimal equivalent. For
example, pale blue has a blue color value of 255 (FF), green color value of 255 (FF) and a red color value
of 128 (80), as displayed in the color chart of Microsoft Paint. Concatenating the hex values (BGR) gives a
hex value of FFFF80, which when converted to decimal is 16777088.
Examples of other commonly used colors are as follows:
Red:
Blue:
Green:
Black:
Brown:
Pink:
40
255
16711680
32768
0
4210816
16744703