Dormakaba

CenTran 4 - Access Control Dormakaba - Free user manual and instructions

Find the device manual for free CenTran 4 Dormakaba in PDF.

📄 260 pages English EN Download 💬 AI Question 10 questions ⚙️ Specs
Notice Dormakaba CenTran 4 - page 1
Pick your language and provide your email: we'll send you a specifically translated version.
Product Type Access Control Terminal
Model CenTran 4
Brand Dormakaba
Dimensions (H x W x D) 160 x 80 x 35 mm
Weight 350 g
Power Supply 12-24V DC, 500mA
Supported Card Technologies MIFARE, DESFire, iCLASS
Keypad Illuminated numeric keypad (12 keys)
Display 2-line LCD, 16 characters per line
Communication Interface RS-485, Wiegand, TCP/IP (optional)
Operating Temperature -20°C to 60°C
Ingress Protection IP65 (indoor/outdoor use)
Main Functions Card reading, PIN entry, access control, audit trail
Maintenance Clean with a soft, damp cloth; avoid solvents
Security Encrypted data transmission, tamper alarm
Spare Parts & Repairability Replacement readers, cables, and PCB available; field-replaceable
Compliance CE, FCC, RoHS
Warranty 2 years

Frequently Asked Questions - CenTran 4 Dormakaba

How do I install the CenTran 4 terminal?
Mount the terminal on a wall at the desired height using the provided bracket. Connect power (12-24V DC) and data wires (RS-485 or Wiegand) according to the wiring diagram in the manual. Secure all connections and perform a power-on test.
What card types are supported by the CenTran 4?
The device supports MIFARE, DESFire, and iCLASS contactless smart cards. It can read both ISO 14443 A/B and ISO 15693 cards.
How do I reset the CenTran 4 to factory defaults?
Press and hold the reset button (located behind the front cover) for 10 seconds until the display shows 'Factory Reset'. Confirm by pressing the # key. All settings will be erased.
Can the CenTran 4 be used outdoors?
Yes, the terminal has an IP65 rating, making it suitable for outdoor use. However, avoid direct exposure to heavy rain or extreme temperatures beyond -20°C to 60°C.
How do I add a new user card?
Enter programming mode using the master code (default: 123456). Select 'Add Card' and present the card to the reader. Assign an ID number. The card will be stored in the internal database.
What does the LED indicator mean?
Green LED: access granted. Red LED: access denied or error. Flashing green: ready for card. Flashing red: system alarm or low power. Refer to the manual for detailed codes.
How do I clean the CenTran 4?
Use a soft, lint-free cloth slightly dampened with water or mild soap. Do not use alcohol, ammonia, or abrasive cleaners. Wipe the surface gently and dry with a clean cloth.
Is the CenTran 4 compatible with existing access control systems?
Yes, it supports standard Wiegand and RS-485 protocols, making it compatible with most major access control panels. For TCP/IP integration, an optional network module is required.
What should I do if the terminal is not powering on?
Check the power supply voltage (12-24V DC) and polarity. Ensure the wiring is secure. If using a PoE adapter, verify the network connection. If the issue persists, replace the fuse or contact support.
How do I change the master code?
Go to programming menu (enter current master code), select 'Change Admin Code'. Enter a new 4-8 digit code and confirm. Store the new code safely. The default master code is 123456.

User questions about CenTran 4 Dormakaba

0 question about this device. Answer the ones you know or ask your own.

Ask a new question about this device

The email remains private: it is only used to notify you if someone responds to your question.

No questions yet. Be the first to ask one.

Download the instructions for your Access Control in PDF format for free! Find your manual CenTran 4 - Dormakaba and take your electronic device back in hand. On this page are published all the documents necessary for the use of your device. CenTran 4 by Dormakaba.

USER MANUAL CenTran 4 Dormakaba

CenTran® Version 4 Programming Reference Manual

KABA MAS

Kaba Mas Welcome

Kaba Mas, part of the world-wide Kaba group, is the world's leading manufacturer and supplier of high security, electronic safe locks. Its complete line of self powered, battery, and mechanical locks meets virtually every safe lock requirement. Kaba Mas is dedicated to satisfying end-user needs for security, safety, and convenience. We welcome you to the world of Kaba Mas security and Cencon®.

Table of Contents

Manual Conventions

Trademarks

Table Of Contents

Chapter 1 - Introduction

1.1 Overview
1.2 Generic format of input transactions with xml content
1.3 Generic format of output transactions with xml content
1.4 Dispatch Example
1.5 Close Locks on a Route Example

Chapter 2 - Lock XML Transactions

2.1 Dispatch Lock
2.2 Reassign Lock
2.3 Unassign Lock
2.4 Close Lock
2.5 Read Lock Data
2.6 Update Lock Data
2.7 Rename Lock
2.8 Lock Table Query
2.9 Lock Table Query Record Count
2.10 Lock Log Table Query
2.11 Lock Log Table Query Record Count
2.12 Lock Log History Table Query
2.13 Lock Log History Table Query Record Count
2.14 Lock Log Archive Table Query
2.15 Lock Log Archive Table Query Record Count

Chapter 3 - Route XML Transactions

3.1 Add a Route
3.2 Read a Route
3.3 Update a Route

3.4 Delete a Route
3.5 Add Locks to a Route
3.6 Read Locks on a Route
3.7 Delete Locks from a Route
3.8 Dispatch all Locks on a Route
3.9 Dispatch Locks on a Route
3.10 Reassign all Locks on a Route
3.11 Reassign Locks on a Route
3.12 Close Locks on a Route
3.13 Route Table Query
3.14 Route Table Query Record Count
3.15 Route Lock Table Query
3.16 Route Lock Table Query Record Count

Chapter 4 - User XML Transactions

4.1 Change User Name
4.2 Read User Data
4.3 Update User Data
4.4 User Table Query
4.5 User Table Query Record Count
4.6 User History Table Query
4.7 User History Table Query Record Count
4.8 User Archive Table Query
4.9 User Archive Table Query Record Count

Chapter 5 - Customer XML Transactions

5.1 Add Customer
5.2 Read Customer
5.3 Update Customer
5.4 Delete Customer
5.5 Query Customer Table
5.6 Query Customer Table Record Count

Chapter 6 - Activity Log XML Transactions

6.1 Activity Log Table Query
6.2 Activity Log Table Query Record Count
6.3 Activity Log Archive Table Query
6.4 Activity Log Archive Table Query Record Count

Chapter 7 - Authorization XML Transactions

7.1 Authorization Roles Table Query
7.2 Authorization Roles Table Query Record Count
7.3 Authorization Operation Names Table Query
7.4 Authorization Operation Names Table Query Record Count
7.5 Authorization Definition Table Query
7.6 Authorization Definition Table Query Record Count

Chapter 8 - Region XML Transactions

8.1 Region Table Query
8.2 Region Table Query Record Count

Appendix

Appendix A - Error Codes

Appendix B - Automatic Retry

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

Manual Conventions

The CenTran Reference Manual is a comprehensive guide that contains information on the procedures you need to work with Cencon locks. This manual provides detailed information on CenTran features and step-by-step procedures for using the software. Some conventions that are followed are:

  • The Smart Keys needed for a particular operation will be shown beside the flowcharts that describe the operation.
  • The screens shown in the manual that speak to inserting a key in a reader may depict either the use of the 4-port Key Reader in association with the PCI card or the 2-port USB Key Box.
  • Input to the PC will be shown in bold type.
  • The screen samples may not look exactly as they do on your system depending on which version of the Windows operating system you are using. Some samples in this document are from Windows XP and some are from Windows Vista.
  • Highlighted items:

Note

Indicates a point to consider.

Helpful Hint

Indicates a technique or method that works well.

Caution

Indicates the need for care and caution to be observed during a procedure or process.

Warning

Indicates the possibility of loss of data or system integrity.

Before reading the CenTran Reference Manual, you should be familiar with basic Windows concepts and techniques. For detailed information, refer to your Windows documentation.

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

Trademarks

The following items are trademarks or registered trademarks of Kaba Mas in the United States and/or other countries.

• Cencon System 2000
- Cencon
- CenTran
• PowerStar Technology
- Smart Key

Adobe and Adobe Reader are registered trademarks of Adobe Systems Incorporated in the United States and/or other countries.

iButton is a registered trademark of Dallas Semiconductor.

Microsoft, Windows, Windows Server are registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

Notice: The information in this manual is subject to change without notice and does not represent a commitment on the part of the Kaba Mas. Kaba Mas shall not be liable for technical or editorial errors or omissions contained herein; nor for incidental or consequential damages resulting from the furnishing, performance or use of this material.

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 1 - Introducing CenTran® Version 4 XML Programming

1.1 Overview

Programming Previous CenTran Releases

CenTran 4 supports the fixed binary file format used in programming previous versions. The programming guide for the fixed binary file format is a separate document 2039.041CentranWinPgmGuideD.pdf which can be found in the CenTran Documents folder of the install CD. All the contents of that document are relevant to CenTran 4, excluding the 'Configuration Files' section.

The CenTran 4.0 XML file format overcomes the disadvantages and restrictions of the fixed binary file format used in previous versions of CenTran and provides support for new features.

There is no change in the way CenTran communicates with customer dispatching systems. CenTran is started from a PC containing a Cencon PCI adapter card or USB key box. Transactions are exchanged between the customer's program and the CenTran System via shared files. These files are created in a specific directory with a specific extension. The customer's system creates transactions in files with one extension, while a different extension is used for files containing response transactions created by CenTran. CenTran reads the incoming transaction file, then deletes the incoming transaction file and eventually creates an output transaction file in the specified output directory.

The content of each XML input and output (response) transaction varies (unlike the transaction format for binary files). The format for each transaction is specified in an XML schema provided with CenTran. The input transaction files must conform to the format specified in the given schema.

The different categories of transaction include Lock, Route, User, Customer, Activity Log, Authorization and Region transactions.

User authorization tables in the Cencon database allow for controlled access to program operations. The authorizations for a particular user are established by assigning a Role when the user is created using the Cencon 4 software. The specific tasks the user may perform are the Role Definitions which are associated with that Role. For more information on user authorizations, refer to the 'User Authorization' section of the Cencon Version 4 Reference Manual. If a dispatcher ID is presented in a transaction file, it will have its authorizations checked when doing an operation. If CenTran defaults to the specified dispatcher ID from the CenTran settings, that dispatcher ID will have authorizations checked when doing an operation.

The generic format of input and output transactions is discussed in sections 1.2 and 1.3. Sections 1.4 and 1.5 have examples illustrating how the CenTran transaction processor can be used. Sections two to eight have details on how each transaction works - what information is required, what information is returned, examples of actual input and output.

1.2 Generic Format of Input Transactions with XML Content

The input transactions which have XML content in them should conform to the format specified in the given schema.

  • Most of the transactions have a format where the input elements (xml elements of the input transaction file) are listed sequentially in the order specified in the schema.
  • In the case of route transactions, if multiple route locks need to be processed (for tasks like addition, deletion, dispatching, reassigning, closing), each route lock has to be specified according to the format for a route lock record in the schema. The exception to this rule is when all the locks on a route have to be dispatched or reassigned and in this case it is enough if CenTran is given only the route name. The route locks are processed by CenTran in the order in which they are listed in the input file.
  • In the case of transactions which update a table with information supplied in the input file, only those

fields of the table corresponding to elements present in the input transaction file are updated and the rest of the fields are not changed.

- In the case of query transactions (transactions which query a table based on a search condition), the query records can have the input elements in any order. Those input elements which do not contribute to the search query can be left out from the query record. In the case of query transactions (transactions which query a table based on a search condition), the query records can have the input elements in any order. Those input elements which do not contribute to the search query can be left out of the query record.

- All the transactions require a Dispatcher ID to be specified in the input file. If the ID is left blank, then the default dispatcher ID specified in the CenTran registry will be used instead.

Example of an Input Transaction with XML Content

<?xml version="1.0" encoding="utf-8"?>
<CentranXMLScript xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <TRANSACTION_DISPATCH_LOCK>
    <LockName>VLK009</LockName>
    <LockMode>F</LockMode>
    <User1ID>fjrb1</User1ID>
    <User2ID />
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCK>
</CentranXMLScript> 

1.3 Generic Format of Output Transactions with XML Content

The output transactions which have xml content in them should also conform to the format specified in the given schema.

  • If the input transaction does not conform or cannot be validated against the format specified in the schema, CenTran returns an output transaction with the details of the validation errors.
  • All the output transactions have the input transaction, followed by a result record indicating success or failure. The result record has:

  • A result element - "Success" or "Failure".

  • An error code (an extensive but not exhaustive list can be found in Appendix A). The error code for a completely successful transaction is always RC_OK.
  • A brief description of the result.

- After the result record, if the transaction has succeeded, there could be data from one or more records retrieved from the database/route file or there could be specific pieces of information that were requested by the dispatcher of the transaction.

For example, if a lock dispatch has succeeded, the database record of the lock which has been dispatched is retrieved and appended to the output file after the result record. Multiple records may be retrieved when a query transaction is processed and all the records matching the search condition is retrieved. In the case of a transaction in which only the count of a query (the number of records that match the search condition of the query) is needed, only that information is retrieved and appended after the result record.

  • If a transaction has failed, there may or may not be extra information provided at the end of a result record, depending on the type of transaction.
  • In the route transactions involving the processing of multiple route locks, each route lock has a result record indicating success or failure with error code and description for that particular route lock. There is also a result record containing the overall result for the transaction, which could be complete success (all route locks were processed successfully), partial success (only some route locks were processed successfully) or complete failure (no route locks were processed successfully).

- Some records retrieved from the database may leave out sensitive (Base Combo fields, Master Combo fields, Lock Communications Key, Encrypted Password fields) or unnecessary fields (Sublock fields).

Example of an Output Transaction with XML Content

<?xml version="1.0" encoding="utf-8"?>
<CentranXMLScript xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <!--Kaba Mas CenTran Response to TRANSACTION_DISPATCH_LOCK-->
    <RESPONSE_DISPATCH_LOCK>
    <TRANSACTION_DISPATCH_LOCK>
    <LockName>VLK009</LockName>
    <LockMode>F</LockMode>
    <User1ID>fjrb1</User1ID>
    <User2ID />
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCK>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>The lock dispatch succeeded.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK009</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:14:43.667Z</StartDate>
    <LastUsedDate>2009-11-18T15:39:56.844Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>F</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>1</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532009</SerialNumber>
    <Seal>102</Seal>
    <PreviousSeal>51</PreviousSeal>
    <RouteSeal1>102</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>51</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>993264</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>417360</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3> 
<AuditCount>3</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>Lock Description...</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID>Lock Associated Customer Name</CustomerID>
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
 bromDefined3 />
 bromDefined4 />
<Region>Lexington Southwest</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>0</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
 UserID1>fjrb1</UserID1>
 UserID2 />
 UserID3 />
 UserID1 />
 UserID2 />
 UserID3 />
 RouteName1 />
 RouteName2 />
 RouteName3 />
 DispatcherID1>CentranSS</DispatcherID1>
 DispatcherID2 />
 DispatcherID3 />
 OpenTime1>2009-11-18T15:39:56.844Z</OpenTime1>
 OpenTime2 xsi:nil="true" />
 OpenTime3 xsi:nil="true" />
 CloseTime1 xsi:nil="true" />
 CloseTime2 xsi:nil="true" />
 CloseTime3 xsi:nil="true" />
 IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
 IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 PreviousUserID1>ftom</PreviousUserID1>
 PreviousUserID2 />
 PreviousUserID3 />
 PreviousUserID1 />
 PreviousUserID2 />
 PreviousUserID3 />
 PreviousRouteName1 />
 PreviousRouteName2 />
 PreviousRouteName3 />
 PreviousOpenTime1>2005-03-22T19:26:28.343Z</PreviousOpenTime1>
 PreviousOpenTime2 xsi:nil="true" />
 PreviousOpenTime3 xsi:nil="true" />
 PreviousCloseTime1>2005-03-31T13:43:23.123Z</PreviousCloseTime1>
 PreviousCloseTime2 xsi:nil="true" />
 PreviousCloseTime3 xsi:nil="true" />
 ServiceBranch>the new service branch</ServiceBranch>
 Address1 />
 Address2 />
 City />
 State />
 ZIP />
 Country />
 KeyCloseSeal>0</KeyCloseSeal>
 LockHardwareModel />
 BankBranchName />
 BankOpenDelay>0</BankOpenDelay> 
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_DISPATCH_LOCK>
</CentranXMLScript> 

1.4 Dispatch Example

The following example illustrates how you would use the transaction processor to obtain the combination to open a lock. This transaction would be the same as choosing the "Dispatch Lock" option on the Cencon 4 Dispatching System. The example takes the lock name, lock mode, dispatcher ID, FLM/RSP ID values and processes them to create a transaction that matches the format specified in the XML schema.

The response transaction from CenTran will have the original input transaction followed by a result record and the lock record retrieved from the database after lock dispatch. The lock record will have the combinations to be used for opening the lock.

The example is in C++, using the .NET library.

Sample Code for Dispatching a Lock

// Get Lock name, Mode, User IDs, Dispatcher
System::String^ strLockName = "VLK016";
System::String^ strLockMode = "R";
System::String^ strUser1ID = "rjrb1";
System::String^ strUser2ID = "rjrb2";
System::String^ strDispatcherID = "CentranSS";

// Dispatch lock transaction - XML format
System::String^ strTransaction =
    "<TRANSACTION_DISPATCH_LOCK>" +
    "<LockName></LockName>" +
    "<LockMode></LockMode>" +
    "<User1ID></User1ID>" +
    "<User2ID></User2ID>" +
    "<DispatcherID></DispatcherID>" +
    "</TRANSACTION_DISPATCH_LOCK Arkansas";

// Insert Lock name, Mode, User IDs, Dispatcher values
strTransaction = strTransaction->Replace("<LockName></LockName>", "<LockName>" + strLockName + "</LockName>
strTransaction = strTransaction->Replace("<LockMode></LockMode>", "<LockMode> + strLockMode + "</LockMode>");
strTransaction = strTransaction->Replace("<User1ID></User1ID>", "<User1ID>" + strUser1ID + "</User1ID>");
strTransaction = strTransaction->Replace("<User2ID></User2ID>", "<User2ID>" + strUser2ID + "</User2ID>");
strTransaction = strTransaction->Replace("<DispatcherID></DispatcherID>", "<DispatcherID>" + strDispatcherID + "");

// Create XML Writer for the given input file
System::Xml::XmlWriter^ writer = System::Xml::XmlWriter::Create("C:\CentranInput\t07d.Tip");

// Write XML declaration
writer->WriteStartDocument();

// First element is always CentranXMLScript
strTransaction = "<CentranXMLScript xmlns='http://www.kaba-mas.com/CentranTransac.xsd'>" + strTransaction + "</CentranXMLScript<|vision_start|>

// Load XML Document from transaction string 
document->LoadXml(strTransaction->Trim());
// Save the document to centran's input file
document->Save(writer);
// XML declaration
writer->WriteEndDocument();

// Flush buffer and close writer.
writer->Flush();
writer->Close();
.
/*Wait here for new file to appear
*/
.
// Create XmlReader reader for new file 'xmlFile'.
// settings (of type XmlReaderSettings) can be used to validate xmlFile against the
// given schema.
System::Xml::XmlReader^ reader = XmlReader::Create(xmlFile, settings);

// Load xml file to xml document
document->Load(reader);

// Close xml reader
reader->Close();

// Navigate document to 'ResultRecord' node (the node whose children contain the details of the result
of the transaction)

// Then check if Success and get combination 1 and combination 2
if (result_node->FirstChild->InnerText == "Success")
{
    //Get combinations as strings
    System::Xml::XmlNodeList^ xlist1 = document-
    >GetElementsByTagName("IssuedComboUser1Seq1");
    System::String^ strCombo1 = xlist1->Item(0)->ChildNodes[0]->Value->Trim();
    System::Xml::XmlNodeList^ xlist2 = document-
    >GetElementsByTagName("IssuedComboUser2Seq1");
    System::String^ strCombo2 = xlist2->Item(0)->ChildNodes[0]->Value->Trim();
} 

1.5 Close Locks on Route Example

The next example illustrates how you might close a dispatched route. In this example, a transaction is posted requesting a list of all the locks on a route. Then, all the open locks are determined from the list based on the Open Time and Close Time of each lock. These names are then displayed to the operator and the appropriate close seals are entered and placed in the transaction record. A close transaction with multiple route lock records is then sent to CenTran to close the open locks on the route. Note that you do not have to query the open locks in the system in order to try to close them. You may keep track of what locks are open and simply post the close route transaction supplying the route lock records yourself.

The example is in C++, using the .NET library.

Sample Code for Closing Locks on Route

// Read locks on a route
// Get Route name, Dispatcher
System::String^ strRouteName = "TestRte4";
System::String^ strDispatcherID = "CentranSS";
// Read route transaction - XML format 
System::String^ strTransaction = "<TRANSACTION_READ_ROUTE>" +
    "<RouteName></RouteName>" +
    "<DispatcherID></DispatcherID>" +
    "</TRANSACTION_READ_ROUTE>";
// Insert Route name, Dispatcher values
strTransaction = strTransaction->Replace("<RouteName></RouteName>", "<RouteName>" + strRouteName + "</RouteName>");
strTransaction = strTransaction->Replace("<DispatcherID></DispatcherID>", "<DispatcherID>" strDispatcherID + "</DispatcherID<|im_start|>

// Create XML Writer
System::Xml::XmlWriter^ writer = System::Xml::XmlWriter::Create("C:\CentranInput\t07d.Tip);

// Write XML declaration
writer->WriteStartDocument();

// First element is always CentranXMLScript
strTransaction = "<CentranXMLScript xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
strTransaction + "</CentranXMLScript Rent");

// Load XML Document from transaction string
document->LoadXml(strTransaction->Trim());

// Save the document to centran input file
document->Save(writer);

// XML declaration
writer->WriteEndDocument();

// Flush buffer and close writer.
writer->Flush();
writer->Close();

/*
/*Wait here for new file to appear
*/

.

...

// Create XmlReader reader for new file xmlFile.
// settings (of type XmlReaderSettings) can be used to validate xmlFile against the
// given schema.
System::Xml::XmlReader^ reader = XmlReader::Create(xmlFile, settings);

// Load xml file to xml document
document->Load(reader);

// Close xml reader
reader->Close();

// Get list of route lock records
System::Xml::XmlNodeList^ xlist = document->GetElementsByTagName("RouteLockRecord");

// Navigate route lock records to find those that are open
// Add open route locks to RouteLockNodeArray
System::Collections::Generic::List^ RouteLockNodeArray;
for each (XmlNode^ route_lock_node in xlist)
{
    // If route lock record has an open time that is not null but close time that is
    // null (null value for date is displayed as 0001-01-01T00:00:00)
    if ((route_lock_node->ChildNodes[4]->InnerText != "0001-01-01T00:00:00")
    && (route_lock_node->ChildNodes[5]->InnerText == "0001-01-01T00:00:00")) 
{
    RouteLockNodeArray->Add(route_lock_node);
}
}

/*
*Show the locks to the operator, get close seals, and
Build the "Close locks on route" transaction string with seals */

// Convert close seals into strings and add them to a string array strCloseSealArray

System::String^ strTransaction = "<TRANSACTION_CLOSE_LOCKS_ROUTE>" + "<RouteName>" + strRouteName + "</RouteName>";
// For each route lock, add a Close route lock record element
for each (int i = 0; i < RouteLockNodeArray->Count; i++)
{
    XboxNode^ route_lock_node = RouteLockNodeArray.get()[i];

    System::String^ strLockName = route_lock_node->FirstChild->InnerText;
    System::String^ strLockSeq = route_lock_node->ChildNodes[6] -> InnerText;

    System::String^ strCloseRouteLock = "<CloseRouteLockRecord>" + "<LockName></LockName>" + "<LockSequence></LockSequence>" + "<CloseSeal></CloseSeal>" + "<lfForcedClosed>0</lfForcedClosed>" + "</CloseRouteLockRecord];

    // Insert Lock name, sequence and close seal
    strCloseRouteLock = strCloseRouteLock->Replace(
    "<LockName></LockName>", "<LockName>" + strLockName + "</LockName>");
    strCloseRouteLock = strCloseRouteLock->Replace(
    "<LockSequence></LockSequence>", "<LockSequence>" + strLockSeq + "</LockSequence>");
    strCloseRouteLock = strCloseRouteLock->Replace(
    "<CloseSeal></CloseSeal>", "<CloseSeal>+ strCloseSealArray[i] + "</CloseSeal>");
    strTransaction = strTransaction + strCloseRouteLock;
}

strTransaction = strTransaction + "<DispatcherID>" + strDispatcherID + "</DispatcherID>";
strTransaction = strTransaction + "</TRANSACTION_CLOSE_LOCKS_ROUTE>";
// Create XML Writer
System::Xml::XmlWriter^ writer = System::Xml::XmlWriter::Create("C:\CentranInput\t07d.Tip);

// Write XML declaration
writer->WriteStartDocument();

// First element is always CentranXMLScript
strTransaction = "<CentranXMLScript xmlns='http://www.kaba-mas.com/CentranTransac.xsd'>" + strTransaction + "</CentranXMLScript>

// Load XML Document from transaction string 
document->LoadXml(strTransaction->Trim());
// Save the document to centran input file
document->Save(writer);

// XML declaration
writer->WriteEndDocument();

// Flush buffer and close writer.
writer->Flush();
writer->Close();

.

/*Wait here for new file to appear
*/

.

// Create XmlReader reader for new file xmlFile.
// settings (of type XmlReaderSettings) can be used to validate xmlFile against the given schema.
System::Xml::XmlReader^ reader = XmlReader::Create(xmlFile, settings);

// Load xml file to xml document
document->Load(reader);

// Close xml reader
reader->Close();

// Get list of result records
System::Xml::XmlNodeList^ ResultRecordNodeArray =
    document->GetElementsByTagName("ResultRecord");

for each (XmlNode^ result_node in ResultRecordNodeArray)
{
    // Print result from each result node
    // There is a result node for the overall transaction and each route lock
    print_result_message(result_node);
} 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.1 Dispatch

This transaction dispatches or assigns an FLM mode lock, or dispatches a Route mode lock. The User ID(s) supplied here must be of the same type as the lock mode being dispatched. That is, if dispatching a call for an "F" lock mode, the ID(s) would be for FLM(s). If dispatching a call for an "R" lock mode, the ID(s) would be for RSPs. Also, if dispatching an "F" lock mode, you may specify that this is a second line maintenance call. A value of "1" or "true" in the "IfSecondLineMaintenance" field indicates a second line maintenance call.

Transaction information required:

  • Lock Name or Serial Number - The name or serial number of the lock to be dispatched.
  • Lock Mode - The mode of the lock to be dispatched.
    • 1st FLM/Route User ID
  • 2nd FLM/Route User ID - If lock is not in dual mode, this field's value can be left blank.
  • If Second Line Maintenance Call - Specifies if this is a second line maintenance call.
  • Dispatcher ID (Optional) - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the entire lock record including last dispatch and combination(s).

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
  • Lock is already open.
  • Invalid FLM / Route User(s).
  • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.
  • Invalid record type – the lock is not in Active or Install or Pending Shelve modes.
  • Group ID mismatch - FLM/RSP not authorized to open the lock.
  • User1 ID or User2 ID not found.
  • User ID is not a field ID (i.e. ID is a Dispatcher, Supervisor, etc.)
  • Dual mode - user time window mismatch (one user has time windows, one user does not).
  • User 1 ID and User 2 ID are the same.
  • User 1 ID or User 2 is not the same mode as the lock.
  • Input transaction file has validation errors against the schema or the required input fields have an empty or invalid value.

Example 1 - Success

Input Transaction:

<TRANSACTION_DISPATCH_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>R</LockMode>
    <!-- 1st FLM/RSP ID-->
    <User1ID>rjrb1</User1ID>
    <!-- 2nd FLM/RSP ID -->
    <User2ID>rjrb2</User2ID> 
<!-- Dispatcher ID-->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_DISPATCH_LOCK), a result record (indicating success) and the lock record retrieved after lock dispatch. The lock record includes information on the last dispatch and combination. Any lock record retrieved from CenTran always excludes sensitive fields like the Base Combo fields, Master Combo fields, Lock Communications Key etc.

Note: The returned combinations are in fields IssuedComboUser1Seq1 and IssuedComboUser2Seq1 of the lock record.

<RESPONSE_DISPATCH_LOCK>
    <TRANSACTION_DISPATCH_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
    <UserID>rjrb1</UserID>
    <UserID=rjrb2</UserID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCK>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>The lock dispatch succeeded.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27</StartDate>
    <LastUsedDate>2009-02-12T17:43:40</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>1</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532016</SerialNumber>
    <CloseSeal>132</CloseSeal>
    <PreviousSeal>67</PreviousSeal>
    <RouteSeal1>132</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>147</PreviousRouteSeal1>
    <PreviousRouteSeal2>67</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>307087</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>275162</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2> 
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>8573</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>729333</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>219975</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>930736</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>15</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
-secondId3 />
-secondId4 />
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>0</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1)rjrb1</User1ID1>
(User1ID2 />
(User1ID3 />
(User2ID1)rjrb2</User2ID1>
(User2ID2 />
(User2ID3 />
 routesName1 />
 routesName2 />
 routesName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-02-12T17:43:40.254Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1 xsi:nil="true" />
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rbob</PreviousUser1ID1>
 <PreviousUser1ID2>rbob</PreviousUser1ID2>
 <PreviousUser1ID3 />
 <PreviousUser2ID1>rdave</PreviousUser2ID1>
 <PreviousUser2ID2>rdave</PreviousUser2ID2>
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRoute1</PreviousRouteName1>
 <PreviousRouteName2>TestRoute1</PreviousRouteName2>
 <PreviousRouteName3 />
 <PreviousOpenTime1>2005-02-22T13:50:15.563Z</PreviousOpenTime1>
 <PreviousOpenTime2>2005-02-22T13:50:16.897Z</PreviousOpenTime2>
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2005-02-22T14:41:44.356Z</PreviousCloseTime1>
 <PreviousCloseTime2>2005-02-22T14:41:45.906Z</PreviousCloseTime2>
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City /> 
(State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_DISPATCH_LOCK> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_DISPATCH_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>R</LockMode>
    <!-- 1st FLM/RSP ID-->
    <UserID>rjrb1</UserID>
    <!-- 2nd FLM/RSP ID -->
    <UserID>rjrb2</UserID>
    <!-- Dispatcher ID-->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_LOCK> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_DISPATCH_LOCK), a result record indicating failure with an error code (RC_ERR_LOCK_ALREADY_OPEN) and description.

<RESPONSE_DISPATCH_LOCK>
    <TRANSACTION_DISPATCH_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
    <User1ID>rjrb1</User1ID>
    <User2ID>rjrb2</User2ID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_ALREADY_OPEN</ErrorCode>
    <Description>The lock is already open. You can not dispatch to an already open lock.
    You may want to reassign the users already dispatched to the lock.</Description>
    </ResultRecord>
</RESPONSE_DISPATCH_LOCK> 

Example 3 (Result = Failure)

Input Transaction:

<TRANSACTION_DISPATCH_LOCK>
    <!-- char string -->
    <LockName>12345678901234567890123456789012345678901234567890
123456789012345</LockName>
<!-- char string -->
<LockMode>T</LockMode>
<!-- char string -->
<User1ID>fjrb1</User1ID>
<!-- char string -->
<User2ID></User2ID>
<!--boolean-->
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_LOCK> 

Output Transaction:

Here the input transaction has elements with values that do not conform to the restrictions imposed on those values by the XML schema. This causes some validation errors and CenTran returns the appropriate error code (RC_ERR_FAILED_VALIDATE_FILE) and a description of those validation errors (lock name exceeds 64 characters and value "T" is invalid for lock mode).

<RESPONSE_DISPATCH_LOCK>
    <TRANSACTION_DISPATCH_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
    0123456789012345</LockName>
    <LockMode>T</LockMode>
    <User1ID>fjrb1</User1ID>
    <User2ID></User2ID>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FAILED_VALIDATE_FILE</ErrorCode>
    <Description>Error validating C:\CentranInput\Single trans input.xml:
    1) Validation ERROR: The 'http://www.kaba-mas.com/CentranTransac.xsd:LockName'
    element is invalid - The value
'12345678901234567890123456789012345678901234567890123456789012345'
    is invalid according to its datatype 'http://www.kaba-mas.com/CentranTransac.xsd:String64' - The
    actual length is greater than the MaxLength value.
    2) Validation ERROR: The 'http://www.kaba-mas.com/CentranTransac.xsd:LockMode'
    element is invalid - The value 'T' is invalid according to its datatype
    'http://www.kaba-mas.com/CentranTransac.xsd:LockModeType'
The Enumeration
    constraint failed.
    </Description>
    </ResultRecord>
</RESPONSE_DISPATCH_LOCK> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.2 Reassign

This function reassigns or assigns an outstanding call on a single lock (in FLM/Route mode) to a different FLM or RSP. This transaction corresponds to the "Reassign" option on the Operations menu of a lock report in the CENCON Dispatching System. It is used when an FLM or RSP has a combination to open a lock but cannot make the call for some reason. A new combination is issued to the new FLM or RSP.

Transaction information required:

  • Lock Name or Serial Number - The name or serial number of the lock to be reassigned.
  • Lock Mode - The mode of the lock to be reassigned.
    • 1st FLM/Route User ID
  • 2nd FLM/Route User ID - If lock is not in dual mode, this field's value can be left blank.
  • Lock Sequence (Optional) – If the lock has been dispatched on a route, then a valid lock sequence must be specified. In case of an FLM mode lock or a Route mode lock not dispatched on a route, this field can be left out.
  • Dispatcher ID (Optional) - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the entire lock record including last dispatch and combination(s).

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
  • Lock is not open.
  • Invalid FLM/Route User(s).
    • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.
  • Group ID mismatch - FLM/RSP not authorized to open the lock.
  • User1 ID or User2 ID not found.
  • User ID is not a field ID (i.e. ID is a Dispatcher, Supervisor, etc.)
  • Dual mode - user time window mismatch (one user has time windows, one user does not).
  • User 1 ID and User 2 ID are the same.
  • User 1 ID or User 2 is not the same mode as the lock.
  • Input transaction file has validation errors against the schema or the required input fields have an empty or invalid value.

Example 1 - Success

Input Transaction:

<TRANSACTION_REASSIGN_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>R</LockMode>
    <!-- 1st FLM/RSP ID-->
    <User1ID>rjrb1</User1ID>
    <!-- 2nd FLM/RSP ID -->
    <User2ID>rjrb2</User2ID> 
<!-- Dispatcher ID-->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REASSIGN_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_REASSIGN_LOCK), a result record (indicating success) and the lock record retrieved after lock has been reassigned.

Note: The returned combinations are in fields IssuedComboUser1Seq1 and IssuedComboUser2Seq1 of the lock record.

<RESPONSE_REASSIGN_LOCK>
    <TRANSACTION_REASSIGN_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_REASSIGN_LOCK>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>The lock reassign succeeded.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27</StartDate>
    <LastUsedDate>2009-02-12T17:43:40</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>1</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532016</SerialNumber>
    <CloseSeal>132</CloseSeal>
    <PreviousSeal>67</PreviousSeal>
    <RouteSeal1>132</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>147</PreviousRouteSeal1>
    <PreviousRouteSeal2>67</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>579901</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>986190</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>8573</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>729333</PreviousComboUser1Seq2> 
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>219975</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>930736</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>15</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
 bromideadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadad 
<ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
    </LockRecord>
</RESPONSE_REASSIGN_LOCK> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_REASSIGN_LOCK>
    <!-- char string -->
    <LockName>VLK016</LockName>
    <!-- char string -->
    <LockMode>R</LockMode>
    <!-- char string -->
    <User1ID>rzjill</User1ID>
    <!-- char string -->
    <User2ID>rjrb6</User2ID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REASSIGN_LOCK> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_REASSIGN_LOCK), a result record indicating failure with an error code (RC_ERR_FLMID_REGION_DOES_NOT_MATCH_LOCK_REGION) and description. Here the user rjrb6's region does not match the lock's region.

<RESPONSE_REASSIGN_LOCK>
    <TRANSACTION_REASSIGN_LOCK xmlns="http://kaba-mas.com/CentranTransaction">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
    <User1ID>rzjill</User1ID>
    <User2ID>rjrb6</User2ID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_REASSIGN_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FLMID_REGION_DOES_NOT_MATCH_LOCK_REGION</ErrorCode>
    <Description>The lock reassign failed. FLM/RSP User Region does not match Lock Region
    </Description>
    </ResultRecord>
</RESPONSE_REASSIGN_LOCK> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.3 Unassign

This transaction unassigns one or both users from an FLM mode lock. This option is designed for use when a user has accidentally been dispatched to the wrong lock and must be freed up to service the correct lock.

Transaction information required:

  • Lock Name or Serial Number - The name or serial number of the lock to which the users are currently assigned.
  • Lock Mode (must be FLM).
  • Dispatcher ID (Optional) - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the unassigned lock record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
  • Lock is not open.
  • Lock is already unassigned.
  • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.
  • Input transaction file has validation errors against the schema or the required input fields have an empty or invalid value.

Example 1 - Success

Input Transaction:

<TRANSACTION_UNASSIGN_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>F</LockMode>
    <!-- Dispatcher ID-->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UNASSIGN_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_UNASSIGN_LOCK), a result record (indicating success) and the lock record retrieved after the lock has been unassigned.

<RESPONSE_UNASSIGN_LOCK>
    <TRANSACTION_UNASSIGN_LOCK xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>F</LockMode>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UNASSIGN_LOCK>
    <ResultRecord> 
<Result>Success</Result>
<ErrorCode>RC_OK</ErrorCode>
<Description>The lock unassign succeeded. The unassigned users: fjrb6</Description>
</ResultRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK016</LockName>
<RecordType>A</RecordType>
<StartDate>2002-11-01T21:18:13</StartDate>
<LastUsedDate>2009-02-12T23:53:04</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>F</LockMode>
<IfDualMode>0</IfDualMode>
<IfLockOpen>1</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>0</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532016</SerialNumber>
<CloseSeal>35</CloseSeal>
<PreviousSeal>137</PreviousSeal>
<RouteSeal1>35</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>137</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>828495</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>319051</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>2</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
 bromDefined3 />
 UserDefined4 />
 Region>TestRegionD</Region>
 <IfUnassignedOpenCall>1</IfUnassignedOpenCall>
 <IfLastRoute1Issued>0</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued 
<User1ID1 />
<User1ID2 />
<User1ID3 />
<User2ID1 />
<User2ID2 />
<User2ID3 />
<RouteName1 />
<RouteName2 />
<RouteName3 />
<DispatcherID1>MHG\agoverdhan</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-02-12T23:53:04.432Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1 xsi:nil="true" />
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>fdave</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1 />
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1 />
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2002-11-01T21:21:25.842Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2003-01-08T16:47:09.127Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
(State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_UNASSIGN_LOCK> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_UNASSIGN_LOCK>
    <!-- Lock Name-->
    <LockName>VLK014</LockName>
    <!-- Lock Mode-->
    <LockMode>F</LockMode> 
<!-- Dispatcher ID-->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UNASSIGN_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_UNASSIGN_LOCK), a result record indicating failure with an error code (RC_ERR_LOCK_NOT_OPEN) and description.

<RESPONSE_UNASSIGN_LOCK>
    <TRANSACTION_UNASSIGN_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK014</LockName>
    <LockMode>F</LockMode>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UNASSIGN_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_NOT_OPEN</ErrorCode>
    <Description>The lock unassign failed. Lock not open.</Description>
    </ResultRecord>
</RESPONSE_UNASSIGN_LOCK> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.4 Close

This transaction is used to enter a close seal to close an FLM or Route mode lock. There is also an option to force close a lock on a skipped route sequence. The return transaction indicates whether the lock has been closed.

Transaction information required:

  • Lock Name or Serial Number – The name or serial number of the lock to be closed.
  • Lock Mode – The mode of the lock to be closed.
  • Close Seal – The close seal number for the lock.
  • If Forced Closed (Optional) – If the lock is forced closed, the field's value can be set to '1' or 'true'.
  • Lock Sequence (Optional) – If the lock has been dispatched on a route, then a valid lock sequence must be specified. In case of an FLM mode lock or a Route mode lock not dispatched on a route, this field can be left out.
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description), the entire lock record retrieved after the lock has been closed and information on the close seal. There are two fields which contain information on the close seal - IfCloseSealDuress (indicates duress if set to true), IfCloseSealLowBattery (indicates low battery or clock set required if set to true). If neither of these fields is set to true, the close seal is normal.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
  • Lock is not open.
  • Incorrect close seal.
    • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.
  • Attempt to force close a lock not on a skipped route sequence.
  • Invalid number of close attempts.
  • Lock is open but unassigned.

Example 1 - Success

Input Transaction:

<TRANSACTION_CLOSE_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>R</LockMode>
    <!-- Close Seal -->
    <CloseSeal>94</CloseSeal>
    <!-- Dispatcher ID-->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CLOSE_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_CLOSE_LOCK), a result record (indicating success), the lock record retrieved after lock close and two fields IfCloseSealDuress, IfCloseSealLowBattery indicating if the close seal is a duress, low battery/clock set seal. In this case, the close seal is a duress seal.

<RESPONSE_CLOSE_LOCK>
    <TRANSACTION_CLOSE_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
    <CloseSeal>94</CloseSeal>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CLOSE_LOCK>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock close succeeded.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27</StartDate>
    <LastUsedDate>2009-02-13T17:18:41</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532016</SerialNumber>
    <CloseSeal>132</CloseSeal>
    <PreviousSeal>67</PreviousSeal>
    <RouteSeal1>132</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>147</PreviousRouteSeal1>
    <PreviousRouteSeal2>67</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>579901</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>986190</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>8573</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>729333</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>219975</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>930736</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>16</AuditCount>
    <GroupName />
    <OriginalSerialNumber>0</OriginalSerialNumber> 
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
 bromide
 UserDefined4 
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>0</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1>rzjack</User2ID1>
<User2ID2 />
<User2ID3 />
<RouteName1 />
<RouteName2 />
<RouteName3 />
<DispatcherID1>CentranSS</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-02-12T17:43:40.234Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1>2009-02-13T17:18:41.234Z</CloseTime1>
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rbob</PreviousUser1ID1>
<PreviousUser1ID2>rbob</PreviousUser1ID2>
<PreviousUser1ID3 />
<PreviousUser2ID1>rdave</PreviousUser2ID1>
<PreviousUser2ID2>rdave</PreviousUser2ID2>
<PreviousUser2ID3 />
<PreviousRouteName1>TestRoute1</PreviousRouteName1>
<PreviousRouteName2>TestRoute1</PreviousRouteName2>
<PreviousRouteName3 />
<PreviousOpenTime1>2005-02-22T13:50:15.234Z</PreviousOpenTime1>
<PreviousOpenTime2>2005-02-22T13:50:16.342Z</PreviousOpenTime2>
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2005-02-22T14:41:44.234Z</PreviousCloseTime1>
<PreviousCloseTime2>2005-02-22T14:41:45.563Z</PreviousCloseTime2>
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
Address1 />
Address2 />
City />
State />
ZIP />
Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
/LockActivationStatus />
/LockDispatchStatus /> 
</LockRecord>
<IfCloseSealDuress>1</IfCloseSealDuress>
<IfCloseSealLowBattery>0</IfCloseSealLowBattery>
</RESPONSE_CLOSE_LOCK> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_CLOSE_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>F</LockMode>
    <!-- Close Seal -->
    <CloseSeal>49</CloseSeal>
    <!-- Dispatcher ID-->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CLOSE_LOCK> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_CLOSE_LOCK), a result record indicating failure with an error code (RC_ERR_CLOSE_LOCK_SEAL_MISMATCH) and description.

<RESPONSE_CLOSE_LOCK>
    <TRANSACTION_CLOSE_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>F</LockMode>
    <CloseSeal>94</CloseSeal>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CLOSE_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_CLOSE_LOCK_SEAL_MISMATCH</ErrorCode>
    <Description>Lock close failed. Seal numbers do not match for lock close.</Description>
    </ResultRecord>
</RESPONSE_CLOSE_LOCK> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.5 Read Lock Data

This transaction reads data for an FLM, Route, or Bank mode lock.

Transaction information required:

  • Lock Name or Serial Number - The name or serial number of the lock to be read.
  • Lock Mode - The mode of the lock to be read.
  • Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the entire lock record.

Failure :

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
    • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.

Example 1 - Success

Input Transaction:

<TRANSACTION_READ_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>F</LockMode>
    <!-- Dispatcher ID-->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_READ_LOCK), a result record (indicating success) and the retrieved lock record

<RESPONSE_READ_LOCK>
    <TRANSACTION_READ_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>F</LockMode>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_LOCK>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock record found in the database.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    </LockRecord>
    </ResponseRecord>
    </ResponseRecord>
</RESPONSE_READ_LOCK> 
<RecordType>A</RecordType>
<StartDate>2002-11-01T21:18:13</StartDate>
<LastUsedDate>2009-02-12T23:53:04</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>F</LockMode>
<IfDualMode>0</IfDualMode>
<IfLockOpen>1</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>0</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532016</SerialNumber>
<CloseSeal>35</CloseSeal>
<PreviousSeal>137</PreviousSeal>
<RouteSeal1>35</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>137</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>1</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>680495</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>319051</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>2</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
 CustomerID />
<ATMSerialNumber />
/UserDefined1 />
/UserDefined2 />
/UserDefined3 />
/UserDefined4 />
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>0</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1>fjrb6</User1ID1>
(User1ID2 />
(User1ID3 />
(User2ID1 />
(User2ID2 />
(User2ID3 />
 routesName1 />
 routesName2 /> 
<RouteName3 />
<DispatcherID1>MHG\agoverdhan</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-02-12T23:53:04.897Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1 xsi:nil="true" />
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>fdave</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1 />
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1 />
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2002-11-01T21:21:25.975Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2003-01-08T16:47:09.232Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
address1 />
address2 />
city />
state />
<ZIP />
.Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_READ_LOCK> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_READ_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>F</LockMode>
    <!-- Dispatcher ID-->
    <DispatcherID>SuperUserLocalRegion/DispatcherID>
</TRANSACTION_READ_LOCK> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_READ_LOCK), a result record indicating failure with an error code (RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_LOCK_REGION) and description. In this

case, the lock and dispatcher belong to different regions but since the dispatcher belongs to a local region, it can only access locks belonging to that local region.

<RESPONSE_READ_LOCK>
    <TRANSACTION_READ_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>F</LockMode>
    <DispatcherID>SuperUserLocalRegion</DispatcherID>
    </TRANSACTION_READ_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_LOCK_REGION
    </ErrorCode>
    <Description>Dispatcher belongs to a local region.
    The dispatcher's region does not match the lock's region.
    </Description>
    </ResultRecord>
</RESPONSE_READ_LOCK> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.6 Update Lock Data

This transaction updates data for an FLM, Route, or Bank mode lock. The lock fields to be updated have to be specified in the input transaction. Those lock fields that are not specified in the input transaction are not changed from their current values. This operation updates a single specific lock, specified by Lock Name and Mode or Lock Serial Number and Mode. There is not an option to apply the updated values to all modes of a lock, as is available under the Cencon application.

Transaction information required:

  • Lock Name or Serial Number – The name or serial number of the lock to be updated.
  • Lock Mode – The mode of the lock to be updated.
  • Group Name (Optional) – The new value for this field
  • Customer ID (Optional) – The new value for this field
  • ATM Serial Number (Optional) – The new value for this field
    • Description 1-4 (Optional) – The new value for these fields
  • User Defined 1-4 (Optional) – The new value for these fields
  • Region (Optional) – The new value for this field
    • Service Branch (Optional) – The new value for this field
  • Address 1 (Optional) – The new value for this field
  • Address 2 (Optional) – The new value for this field
    • City (Optional) – The new value for this field
    • State (Optional) – The new value for this field
  • ZIP (Optional) – The new value for this field
    • Country (Optional) – The new value for this field
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the updated lock record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
  • Invalid Customer ID (Customer ID not found in database).
  • Invalid Region (Region not found in database)
  • Invalid Group Name (Group Name cannot have embedded blanks and can only have 2, 4 or 6 characters).
    • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.
  • Input transaction file has validation errors against the schema or the required input fields have an empty or invalid value.

Example 1 - Success

Input Transaction:

<TRANSACTION_UPDATE_LOCK>
<UpdateLockRecord>
    <!-- Lock Name-->
<LockName>LckNoGID</LockName>
<!-- Lock Mode-->
<LockMode>F</LockMode>
<!-- New Customer ID -->
<CustomerID>ACustomer</CustomerID>
<!-- New Address2 -->
<Address2>HartFord, CT</Address2>
</UpdateLockRecord>
<!-- Dispatcher ID -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_UPDATE_LOCK), a result record (indicating success) and the updated lock record with new Customer ID and Address 2 values.

<RESPONSE_UPDATE_LOCK>
    <TRANSACTION_UPDATE_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UpdateLockRecord>
    <LockName>LckNoGID</LockName>
    <LockMode>F</LockMode>
    <CustomerID>ACustomer</CustomerID>
    <Address2>HartFord, CT</Address2>
    </UpdateLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UPDATE_LOCK>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Successfully updated lock data.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>LckNoGID</LockName>
    <RecordType>A</RecordType>
    <StartDate>2003-04-16T16:40:20</StartDate>
    <LastUsedDate>2003-04-16T18:12:19</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>F</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>500240</SerialNumber>
    <CloseSeal>32</CloseSeal>
    <PreviousSeal>0</PreviousSeal>
    <RouteSeal1>32</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>0</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>9</TransferReturnCode>
    </Response>
</RESPONSE_UPDATE_LOCK> 
<IssuedComboUser1Seq1>755043</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>0</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>4</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>123456789_1_3456789_2_3456789_3_3456789</Description1>
<Description2>123456789_1_3456789_2_3456789_3_3456789</Description2>
<Description3>123456789_1_3456789_2_3456789_3_3456789</Description3>
<Description4>123456789_1_3456789_2_3456789_3_3456789</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>123456789_1_3456789_2_3456789_3</ATMSerialNumber>
<UserDefined1>123456789_1_3456789_2_3456789_3</UserDefined1>
<UserDefined2>123456789_1_3456789_2_3456789_3</UserDefined2>
<UserDefined3>123456789_1_3456789_2_3456789_3</UserDefined3>
<UserDefined4>123456789_1_3456789_2_3456789_3</UserDefined4>
 Region>TestRegionC</Region>
 <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
 <IfLastRoute1Issued>0</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued>
 User1ID1>nf1</User1ID1>
 User1ID2 />
 User1ID3 />
 User2ID1 />
 User2ID2 />
 User2ID3 />
 RouteName1 />
 RouteName2 />
 RouteName3 />
 <DispatcherID1>ns1</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2003-04-16T18:11:48.452Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1>2003-04-16T18:12:19.345Z</CloseTime1>
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1 />
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1 />
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1 xsi:nil="true" />
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1 xsi:nil="true" />
 <PreviousCloseTime2 xsi:nil="true" /> 
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2>HartFord, CT</Address2>
<City />
<State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_UPDATE_LOCK> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_UPDATE_LOCK>
    <UpdateLockRecord>
    <!-- Lock Name-->
    <LockName>LckNoGID</LockName>
    <!-- Lock Mode-->
    <LockMode>F</LockMode>
    <!-- New Customer ID -->
    <CustomerID>123456</CustomerID>
    <!-- New Address2 -->
    <Address2>HartFord, CT</Address2>
    </UpdateLockRecord>
    <!-- Dispatcher ID -->
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UPDATE_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_UPDATE_LOCK), a result record indicating failure with an error code (RC_ERR_CUSTOMER_NOT_FOUND) and description. Here, the new Customer ID is invalid because it is not present in the customer table of the database.

<RESPONSE_UPDATE_LOCK>
    <TRANSACTION_UPDATE_LOCK xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <UpdateLockRecord>
    <LockName>LckNoGID</LockName>
    <LockMode>F</LockMode>
    <CustomerID>123456</CustomerID>
    <Address2>HartFord, CT</Address2>
    </UpdateLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UPDATE_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_CUSTOMER_NOT_FOUND</ErrorCode>
    <Description>New customer does not exist in the database.</Description>
    </ResultRecord>
</RESPONSE_UPDATE_LOCK> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.7 Rename a Lock

This transaction renames an FLM, Route, or Bank mode lock. Only the lock name field is updated. It also updates any active log entry, if open.

Transaction information required:

  • Lock Name or Serial Number – The name or lock serial number of the lock to be renamed.
  • Lock Mode – The mode of the lock to be renamed.
  • New Lock Name - The new name for the lock.
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the renamed lock record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Lock doesn't exist.
    • Not authorized due to region (region control active).
    • Failed to update log record
  • Dispatcher not authorized to do this operation.
  • Input transaction file has validation errors against the schema or the required input fields have an empty or invalid value.

Example 1 - Success

Input Transaction:

<TRANSACTION_RENAME_LOCK>
    <!-- Lock Name-->
    <LockName>VLK016</LockName>
    <!-- Lock Mode-->
    <LockMode>R</LockMode>
    <!-- New Lock Name -->
    <NewLockName>VLKNewName</NewLockName>
    <!-- Dispatcher ID-->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_RENAME_LOCK> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_RENAME_LOCK), a result record (indicating success), and the renamed lock record.

<RESPONSE_RENAME_LOCK>
    <TRANSACTION_RENAME_LOCK xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
</RESPONSE_RENAME_LOCK> 
<NewLockName>VLKNewName</NewLockName>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_RENAME_LOCK>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock successfully renamed from VLK016 to VLKNewName.
    </Description>
</ResultRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLKNewName</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27</StartDate>
    <LastUsedDate>2009-02-13T17:18:41</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532016</SerialNumber>
    <CloseSeal>132</CloseSeal>
    <PreviousSeal>67</PreviousSeal>
    <RouteSeal1>132</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>147</PreviousRouteSeal1>
    <PreviousRouteSeal2>67</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>579901</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>986190</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>8573</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>729333</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>219975</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>930736</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>16</AuditCount>
    <GroupName />
    <OriginalSerialNumber>0</OriginalSerialNumber>
    <Description1>aaaaaaaaaaaaaaaa</Description1>
    <Description2 />
    <Description3 />
    <Description4 />
    <CustomerID />
    <ATMSerialNumber />
    <UserDefined1 />
    <UserDefined2 />
    <UserDefined3 />
    <UserDefined4 />
    <Region>TestRegionD</Region> 
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>0</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1>rzjack</User2ID1>
<User2ID2 />
<User2ID3 />
<RouteName1 />
<RouteName2 />
<RouteName3 />
<DispatcherID1>CentranSS</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-02-12T17:43:40.653Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1>2009-02-13T17:18:41.542Z</CloseTime1>
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rbob</PreviousUser1ID1>
<PreviousUser1ID2>rbob</PreviousUser1ID2>
<PreviousUser1ID3 />
<PreviousUser2ID1>rdave</PreviousUser2ID1>
<PreviousUser2ID2>rdave</PreviousUser2ID2>
<PreviousUser2ID3 />
<PreviousRouteName1>TestRoute1</PreviousRouteName1>
<PreviousRouteName2>TestRoute1</PreviousRouteName2>
<PreviousRouteName3 />
<PreviousOpenTime1>2005-02-22T13:50:15.542Z</PreviousOpenTime1>
<PreviousOpenTime2>2005-02-22T13:50:16.524Z</PreviousOpenTime2>
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2005-02-22T14:41:44.122Z</PreviousCloseTime1>
<PreviousCloseTime2>2005-02-22T14:41:45.432Z</PreviousCloseTime2>
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
bingress1 />
bingress2 />
City />
(State />
ZIP />
    Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_RENAME_LOCK> 

Example 2 - Failure

Input Transaction:

<!-- Lock Name-->
<LockName>VLK016</LockName>
<!-- Lock Mode-->
<LockMode>R</LockMode>
<!-- New Lock Name -->
<NewLockName></NewLockName>
<!-- Dispatcher ID-->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_RENAME_LOCK>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_RENAME_LOCK), a result record indicating failure with an error code (RC_ERR_INVALID_NEW_LOCKNAME) and description. The new lock name has to be a non-empty string.

<RESPONSE_RENAME_LOCK>
    <TRANSACTION_RENAME_LOCK xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockName>VLK016</LockName>
    <LockMode>R</LockMode>
    <NewLockName></NewLockName>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_RENAME_LOCK>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_INVALID_NEW_LOCKNAME</ErrorCode>
    <Description>The new lock name is blank.</Description>
    </ResultRecord>
</RESPONSE_RENAME_LOCK> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.8 Lock Table Query

This transaction queries the lock table for a set of lock records. The query record in the input transaction file contains a set of lock fields to create a query from. The query record also contains a flag indicating if to use like search or exact search. The query transaction attempts to work in a similar fashion as Cencon's 'Find Locks' form which searches for locks to be displayed in a lock report.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the lock records in the lock table are retrieved.

  • Lock Name
  • Dispatched User ID (searches for this User ID in both the FLM1ID and FLM2ID lock record fields)
  • Group Name
  • Serial Number Minimum and Serial Number Maximum (these values specify a range)
  • Lock mode
  • If Dual Mode
  • Customer Number
    • Minimum Audit Count
  • Start Date Range (Start Date Start and Start Date End dates)
  • Last Used Date range (Last Used Date Start and Last Used Date End dates)
  • Lock Status List (Locks in one or more of these modes – Active/Shelved/Install/Pending Shelve/Being Replaced)
  • If Lock Open
  • If Route Open
    • If Unassigned Open Call
  • If Forced Closed
  • If Search Exact (If the value for this field is false, then like search is used).
  • Customer ID
    • ATM Serial Number
  • Region
  • Service Branch
  • Description
  • User Defined
  • Address 1
  • Address 2
  • City
  • State
  • ZIP
  • Country
    • Bank Branch Name
  • Lock Type - Gen 1 or Gen 2
  • Dispatcher ID - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Notes

If the Dispatcher belongs to a local region and region control is enabled, only those locks belonging to that particular region and also satisfying the search condition are retrieved. The search condition's region field value is automatically set to the dispatcher's local region even if a different value has already been provided in the query record.

If the Boolean fields are not present in the query record, they are assumed to have a value of false. All the Boolean value fields start with the characters 'If'. This applies to all the query transactions.

For the Start Date Range and End Date Range search, both the lower and upper bounds for the search have to be specified i.e. both Start Date Start and Start Date End have to be specified. If only Start Date Start is specified in the query record, that search field will not have any effect on the result.

Similarly to the Date Range search, for the Serial Number range search, both the lower (Serial Number Minimum) and upper bounds (Serial Number Maximum) for the search have to be specified.

If string fields such as Address1, Description are left blank, those fields are left out of the search query i.e. CenTran does not search for lock records in which Address or Description field is empty. This applies to all the query transactions.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the lock records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation.
  • Database error – failed to open lock table.

Example 1 - Success

Input Transaction:

<TRANSACTION_LOCK_QUERY>
    <LockQueryRecord>
    <!-- char string -->
    <LockName>VLK</LockName>
    <!-- char string -->
    <UserID></UserID>
    <!-- char string -->
    <GroupName></GroupName>
    <!-- long -->
    <SerialNumberMinimum>532000</SerialNumberMinimum>
    <!-- long -->
    <SerialNumberMaximum>533000</SerialNumberMaximum>
    <!-- char string -->
    <LockMode>B</LockMode>
    <!-- bool -->
    <IfDualMode>0</IfDualMode>
    <!-- long -->
    <CustomerNumber>0</CustomerNumber>
    <!-- long -->
    <MinimumCountAudits>10</MinimumCountAudits>
    <!-- date -->
    <StartDateStart>2002-04-01T00:00:00</StartDateStart>
    <!-- date -->
    <StartDateEnd>2003-04-30T00:00:00</StartDateEnd>
    <!-- date -->
    <LastUsedDateStart>2004-04-01T00:00:00</LastUsedDateStart>
    <!-- date -->
    <LastUsedDateEnd>2005-04-30T00:00:00</LastUsedDateEnd>
    <!-- list -->
    <ListLockStatus>
    <LockStatus>A</LockStatus>
    </ListLockStatus>
    <!-- bool --> 
<IfLockOpen>0</IfLockOpen>
<!-- bool -->
<IfRouteOpen>false</IfRouteOpen>
<!-- bool -->
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<!-- bool -->
<IfForcedClosed>false</IfForcedClosed>
<!-- char string -->
<CustomerID></CustomerID>
<!-- char string -->
<ATMSerialNumber></ATMSerialNumber>
<!-- char string -->
<Region>TestRegionA</Region>
<!-- char string -->
<ServiceBranch>service</ServiceBranch>
<!-- char string -->
<Description>Bank Branch</Description>
<!-- char string -->
<UserDefined></UserDefined>
<!-- char string -->
<Address1></Address1>
<!-- char string -->
<Address2></Address2>
<!-- char string -->
<City></City>
<!-- char string -->
(State></State>
<!-- char string -->
<ZIP></ZIP>
<!-- char string -->
<Country></Country>
<!-- char string -->
<BankBranchName>FirstBankBranch</BankBranchName>
<!-- bool -->
<IfSearchExact>0</IfSearchExact>
</LockQueryRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_QUERY>

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_QUERY), a result record (indicating success) and all the lock records matching the search query.

<RESPONSE_LOCK_QUERY>
    <TRANSACTION_LOCK_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <LockQueryRecord>
    <LockName>VLK</LockName>
    <UserID></UserID>
    <GroupName></GroupName>
    <SerialNumberMinimum>532000</SerialNumberMinimum>
    <SerialNumberMaximum>533000</SerialNumberMaximum>
    <LockMode>B</LockMode>
    <IfDualMode>0</IfDualMode>
    <CustomerNumber>0</CustomerNumber>
    <MinimumCountAudits>10</MinimumCountAudits>
    <StartDateStart>2002-04-01T00:00:00</StartDateStart>
    <StartDateEnd>2003-04-30T00:00:00</StartDateEnd>
    <LastUsedDateStart>2004-04-01T00:00:00</LastUsedDateStart>
    <LastUsedDateEnd>2005-04-30T00:00:00</LastUsedDateEnd>
    <ListLockStatus>
    <LockStatus>A</LockStatus>
    </ListLockStatus> 
<IfLockOpen>0</IfLockOpen>
    <IfRouteOpen>false</IfRouteOpen>
    <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
    <IfForcedClosed>false</IfForcedClosed>
    <CustomerID></CustomerID>
    <ATMSerialNumber></ATMSerialNumber>
    <Region>TestRegionA</Region>
    <ServiceBranch>service</ServiceBranch>
    <Description>Bank Branch</Description>
    <UserDefined></UserDefined>
    <Address1></Address1>
    <Address2></Address2>
    <City></City>
    <State></State>
    <ZIP></ZIP>
    <Country></Country>
    <BankBranchName>FirstBankBranch</BankBranchName>
    <IfSearchExact>0</IfSearchExact>
    </LockQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_QUERY>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock record/s found satisfying the search condition.
    </Description>
</ResultRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK101</LockName>
    <RecordType>A</RecordType>
    <StartDate>2003-03-27T20:44:16</StartDate>
    <LastUsedDate>2004-12-22T14:36:48</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>B</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532101</SerialNumber>
    <CloseSeal>0</CloseSeal>
    <PreviousSeal>0</PreviousSeal>
    <RouteSeal1>0</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>0</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>0</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>0</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2> 
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>11</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>Bank Branch Lock 1</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
 bromide
 UserDefined2 />
 UserDefined3 />
 UserDefined4 />
 Region>TestRegionA</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>0</IfLastRoute1Issued>
<IfLastRoute2Issued>1</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1 />
 User1ID2 />
 User1ID3 />
 User2ID1 />
 User2ID2 />
 User2ID3 />
 RouteName1 />
 RouteName2 />
 RouteName3 />
 DispatcherID1 />
 DispatcherID2 />
 DispatcherID3 />
 OpenTime1 xsi:nil="true" />
 OpenTime2 xsi:nil="true" />
 OpenTime3 xsi:nil="true" />
 CloseTime1 xsi:nil="true" />
 CloseTime2 xsi:nil="true" />
 CloseTime3 xsi:nil="true" />
 IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
 IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1 />
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1 />
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1 xsi:nil="true" />
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1 xsi:nil="true" />
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country /> 
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName>FirstBankBranch</BankBranchName>
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>1</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</RESPONSE_LOCK_QUERY> 

Example 2 - Success but no records returned

Input Transaction:

<TRANSACTION_LOCK_QUERY>
    <LockQueryRecord>
    <!-- long -->
    <SerialNumberMinimum>555000</SerialNumberMinimum>
    <!-- long -->
    <SerialNumberMaximum>500000</SerialNumberMaximum>
    <!-- long -->
    <MinimumCountAudits>1000</MinimumCountAudits>
    <!-- list -->
    <ListLockStatus>
    <LockStatus>P</LockStatus>
    <LockStatus>I</LockStatus>
    <LockStatus>R</LockStatus>
    </ListLockStatus>
    <!-- bool -->
    <IfSearchExact>1</IfSearchExact>
    </LockQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_QUERY> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_QUERY), a result record indicating success (query was processed successfully) with a description field saying that no lock records were found to match the given search condition.

<RESPONSE_LOCK_QUERY>
    <TRANSACTION_LOCK_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <LockQueryRecord>
    <SerialNumberMinimum>555000</SerialNumberMinimum>
    <SerialNumberMaximum>500000</SerialNumberMaximum>
    <MinimumCountAudits>1000</MinimumCountAudits>
    <ListLockStatus>
    <LockStatus>P</LockStatus>
    <LockStatus>I</LockStatus>
    <LockStatus>R</LockStatus>
    </ListLockStatus>
    <IfSearchExact>1</IfSearchExact>
    </LockQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_LOCK_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>No lock record found satisfying the search condition.
    </Description>
    </ResultRecord> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.9 Lock Table Query Record Count

This transaction returns the number of records in the lock table matching the given query condition. It operates in the same manner as the Lock Table Query transaction.

Example 1 - Success

Input Transaction:

<TRANSACTION_LOCK_QUERY_COUNT>
    <LockQueryRecord>
    <!-- long -->
    <SerialNumberMinimum>555000</SerialNumberMinimum>
    <!-- long -->
    <SerialNumberMaximum>500000</SerialNumberMaximum>
    <!-- long -->
    <MinimumCountAudits>0</MinimumCountAudits>
    <!-- date -->
    <StartDateStart>2003-04-30T00:00:00</StartDateStart>
    <!-- date -->
    <StartDateEnd>2002-04-01T00:00:00</StartDateEnd>
    <!-- date -->
    <LastUsedDateStart>2005-04-30T00:00:00</LastUsedDateStart>
    <!-- date -->
    <LastUsedDateEnd>2004-04-01T00:00:00</LastUsedDateEnd>
    <!-- list -->
    <ListLockStatus>
    <LockStatus>D</LockStatus>
    </ListLockStatus>
    <!-- bool -->
    <IfSearchExact>1</IfSearchExact>
    </LockQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_QUERY_COUNT> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_QUERY_COUNT), a result record (indicating success) and a field (QueryCount) having the exact query count.

<RESPONSE_LOCK_QUERY_COUNT>
    <TRANSACTION_LOCK_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockQueryRecord>
    <SerialNumberMinimum>555000</SerialNumberMinimum>
    <SerialNumberMaximum>500000</SerialNumberMaximum>
    <MinimumCountAudits>0</MinimumCountAudits>
    <StartDateStart>2003-04-30T00:00:00</StartDateStart>
    <StartDateEnd>2002-04-01T00:00:00</StartDateEnd>
    <LastUsedDateStart>2005-04-30T00:00:00</LastUsedDateStart>
    <LastUsedDateEnd>2004-04-01T00:00:00</LastUsedDateEnd>
    <ListLockStatus>
    <LockStatus>D</LockStatus>
    </ListLockStatus>
    <IfSearchExact>1</IfSearchExact>
    </LockQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_QUERY_COUNT> 
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of lock records matching the given query: 2.
    </Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_LOCK_QUERY_COUNT> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_LOCK_QUERY_COUNT>
    <LockQueryRecord>
    <!-- long -->
    <SerialNumberMinimum>555000</SerialNumberMinimum>
    <!-- long -->
    <SerialNumberMaximum>500000</SerialNumberMaximum>
    <!-- long -->
    <MinimumCountAudits>0</MinimumCountAudits>
    <!-- date -->
    <StartDateStart>2003-04-30T00:00:00</StartDateStart>
    <!-- date -->
    <StartDateEnd>2002-04-01T00:00:00</StartDateEnd>
    <!-- date -->
    <LastUsedDateStart>2005-04-30T00:00:00</LastUsedDateStart>
    <!-- date -->
    <LastUsedDateEnd>2004-04-01T00:00:00</LastUsedDateEnd>
    <!-- list -->
    <ListLockStatus>
    <LockStatus>D</LockStatus>
    </ListLockStatus>
    <!-- bool -->
    <IfSearchExact>1</IfSearchExact>
    </LockQueryRecord>
    <!-- char string -->
    <DispatcherID>rzjill</DispatcherID>
</TRANSACTION_LOCK_QUERY_COUNT> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_QUERY_COUNT), a result record (indicating failure) with an error code (RC_ERR_NOT_AUTHORIZED_TO_DO_OPERATION) and description. In this case, the dispatcher rzjill is not authorized to query a lock table.

<RESPONSE_LOCK_QUERY_COUNT>
    <TRANSACTION_LOCK_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockQueryRecord>
    <SerialNumberMinimum>555000</SerialNumberMinimum>
    <SerialNumberMaximum>500000</SerialNumberMaximum>
    <MinimumCountAudits>0</MinimumCountAudits>
    <StartDateStart>2003-04-30T00:00:00</StartDateStart>
    <StartDateEnd>2002-04-01T00:00:00</StartDateEnd>
    <LastUsedDateStart>2005-04-30T00:00:00</LastUsedDateStart>
    <LastUsedDateEnd>2004-04-01T00:00:00</LastUsedDateEnd>
    <ListLockStatus>
    <LockStatus>D</LockStatus>
    </ListLockStatus>
</RESPONSE_LOCK_QUERY_COUNT> 
<IfSearchExact>1</IfSearchExact>
</LockQueryRecord>
<DispatcherID>rzjill</DispatcherID>
</TRANSACTION_LOCK_QUERY_COUNT>
<ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_NOT_AUTHORIZED_TO_DO_OPERATION</ErrorCode>
    <Description>Dispatcher not authorized to perform this operation: Lock Table Query.
    </Description>
</ResultRecord>
</RESPONSE_LOCK_QUERY_COUNT> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.10 Lock Log Table Query

This transaction queries the lock log table for a set of lock log records of open locks. The input transaction file contains a query record which in turn contains a set of lock fields to create a query from. The query record also contains a flag indicating if to use like search or exact search. The query transaction attempts to work in a similar fashion as Cencon's 'Find Open Locks' form to search for open locks to be displayed in a lock log report.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the lock records in the lock table are retrieved.

  • Lock Name
  • Dispatched User ID (searches for this User ID in both the FLM1ID and FLM2ID lock record fields)
  • Route Name
  • Group Name
  • Lock Mode
  • If Dual Mode
  • Customer Number
  • Open Date range (Open Date Start and Open Date End dates)
  • Close Date range (Close Date Start and Close Date End dates)
    • If Unassigned Open Call
  • Customer ID
    • ATM Serial Number
  • Region
  • Service Branch
  • If Search Exact (If the value for this field is false, then like search is used)
  • Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Notes

If the Dispatcher belongs to a local region and region control is enabled, only those locks belonging to that particular region and also satisfying the search condition are retrieved. The search condition's region field value is automatically set to the dispatcher's local region even if a different value has already been provided in the query record.

For the Open Date Range and Close Date Range search, the lower and upper bounds for the search can be specified independently i.e. Open Date Start may be specified in the query record while Open Date End may be left out and vice versa.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the lock log records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation.
  • Database error – failed to open lock log table.

Example - Success

Input Transaction:

<TRANSACTION_LOCK_LOG_QUERY>
    <LockLogQueryRecord>
    <!-- char string -->
    <LockName>Test</LockName>
    <!-- char string -->
    <UserID>rzjill</UserID>
    <!-- char string -->
    <GroupName></GroupName>
    <!-- char string -->
    <RouteName>TestRte5</RouteName>
    <!-- char string -->
    <LockMode>R</LockMode>
    <!-- bool -->
    <IfDualMode>0</IfDualMode>
    <!-- long -->
    <CustomerNumber>0</CustomerNumber>
    <!-- date -->
    <OpenDateStart>2004-04-01T00:00:00</OpenDateStart>
    <!-- date -->
    <OpenDateEnd>2005-04-30T00:00:00</OpenDateEnd>
    <!-- bool -->
    <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
    <!-- char string -->
    <CustomerID></CustomerID>
    <!-- char string -->
    <ATMSerialNumber></ATMSerialNumber>
    <!-- char string -->
    <Region>TestRegionD</Region>
    <!-- char string -->
    <ServiceBranch></ServiceBranch>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_LOG_QUERY> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_LOG_QUERY), a result record (indicating success) and the lock log records matching the search query.

<RESPONSE_LOCK_LOG_QUERY>
    <TRANSACTION_LOCK_LOG_QUERY xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockLogQueryRecord>
    <LockName>Test</LockName>
    <UserID>rzjill</UserID>
    <GroupName></GroupName>
    <RouteName>TestRte5</RouteName>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <CustomerNumber>0</CustomerNumber>
    <OpenDateStart>2004-04-01T00:00:00</OpenDateStart>
    <OpenDateEnd>2005-04-30T00:00:00</OpenDateEnd>
    <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
    <CustomerID></CustomerID>
    <ATMSerialNumber></ATMSerialNumber>
    <Region>TestRegionD</Region>
    <ServiceBranch></ServiceBranch> 
<IfSearchExact>0</IfSearchExact>
</LockLogQueryRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_LOG_QUERY>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Log record/s found satisfying the search condition.
    </Description>
</ResultRecord>
<LockLogRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>TestQueryLock2</LockName>
    <DispatchID>CentranSS</DispatchID>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName>TestRte5</RouteName>
    <GroupName>aabb</GroupName>
    <SerialNumber>828856</SerialNumber>
    <AuditCount>20</AuditCount>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <CustomerNumber>123456</CustomerNumber>
    <OpenDate>2004-11-24T19:47:18.234Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <NumberCloseAttempts>2</NumberCloseAttempts>
    <LockSequence>0</LockSequence>
    <IfDispatchedOnRoute>0</IfDispatchedOnRoute>
    <IfForcedClosed>0</IfForcedClosed>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <DispatchOrder>0</DispatchOrder>
    <CustomerID />
    <ATMSerialNumber />
    <Region>TestRegionD</Region>
    <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
    <ServiceBranch />
</LockLogRecord>
</RESPONSE_LOCK_LOG_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.11 Lock Log Table Query Record Count

This transaction returns the number of records in the lock log table matching the given query condition. It operates in the same manner as the Lock Log Table Query transaction.

Example

Input Transaction:

<TRANSACTION_LOCK_LOG_QUERY_COUNT>
    <LockLogQueryRecord>
    <!-- char string -->
    <LockName>Test</LockName>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_LOG_QUERY_COUNT> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_LOG_QUERY_COUNT), a result record (indicating success) and a field (QueryCount) having the exact query count.

<RESPONSE_LOCK_LOG_QUERY_COUNT>
    <TRANSACTION_LOCK_LOG_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockLogQueryRecord>
    <LockName>Test</LockName>
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_LOCK_LOG_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of lock log records matching the given query: 2.
    </Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_LOCK_LOG_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.12 Lock Log History Table Query

This transaction operates in the same manner as the Lock Log Table Query, but the query is applied to the Lock Log History table.

Example - Success

Input Transaction:

<TRANSACTION_LOCK_LOG_HISTORY_QUERY>
<LockLogQueryRecord>
    <!-- char string -->
    <LockName>TestQueryLock1</LockName>
    <!-- char string -->
    <UserID></UserID>
    <!-- char string -->
    <GroupName>aabb</GroupName>
    <!-- char string -->
    <RouteName></RouteName>
    <!-- char string -->
    <LockMode>F</LockMode>
    <!-- bool -->
    <IfDualMode>1</IfDualMode>
    <!-- long -->
    <CustomerNumber>123456</CustomerNumber>
    <!-- date -->
    <OpenDateStart>2004-04-01T00:00:00</OpenDateStart>
    <!-- date -->
    <OpenDateEnd>2005-04-30T00:00:00</OpenDateEnd>
    <!-- date -->
    <CloseDateStart>2004-12-01T00:00:00</CloseDateStart>
    <!-- date -->
    <CloseDateEnd>2005-04-30T00:00:00</CloseDateEnd>
    <!-- bool -->
    <IfUnassignedOpenCall>1</IfUnassignedOpenCall>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ATMSerialNumber>123456789</ATMSerialNumber>
    <!-- char string -->
    <ServiceBranch>the new service branch</ServiceBranch>
    <!-- bool -->
    <IfSearchExact>1</IfSearchExact>
</TRANSACTION_LOCK_LOG_HISTORY_QUERY> 

Output Transaction:

Note: The output transaction has the original input transaction

(TRANSACTION_LOCK_LOG_HISTORY_QUERY), a result record (indicating success) and the lock log history records matching the search query.

<RESPONSE_LOCK_LOG_HISTORY_QUERY>
    <TRANSACTION_LOCK_LOG_HISTORY_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <LockLogQueryRecord> 
<LockName>TestQueryLock1</LockName>
<UserID></UserID>
<GroupName>aabb</GroupName>
<RouteName></RouteName>
<LockMode>F</LockMode>
<IfDualMode>1</IfDualMode>
<CustomerNumber>123456</CustomerNumber>
<OpenDateStart>2004-04-01T00:00:00</OpenDateStart>
<OpenDateEnd>2005-04-30T00:00:00</OpenDateEnd>
<CloseDateStart>2004-12-01T00:00:00</CloseDateStart>
<CloseDateEnd>2005-04-30T00:00:00</CloseDateEnd>
<IfUnassignedOpenCall>1</IfUnassignedOpenCall>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>123456789</ATMSerialNumber>
<Region></Region>
<ServiceBranch>the new service branch</ServiceBranch>
<IfSearchExact>1</IfSearchExact>
</LockLogQueryRecord>
<DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_LOCK_LOG_HISTORY_QUERY>
<ResultRecord>
<Result>Success</Result>
<ErrorCode>RC_OK</ErrorCode>
<Description>Log history record/s found satisfying the search condition.
</Description>
</ResultRecord>
<LockLogRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>TestQueryLock1</LockName>
<DispatchID>CentranSS</DispatchID>
<User1ID />
<User2ID />
 routesName />
 <GroupName>aabb</GroupName>
 <SerialNumber>828856</SerialNumber>
 <AuditCount>2</AuditCount>
 <LockMode>F</LockMode>
 <IfDualMode>1</IfDualMode>
 <CustomerNumber>123456</CustomerNumber>
 <OpenDate>2004-11-24T19:47:18</OpenDate>
 <CloseDate>2004-12-24T19:47:18</CloseDate>
 <NumberCloseAttempts>2</NumberCloseAttempts>
 <LockSequence>0</LockSequence>
 <IfDispatchedOnRoute>0</IfDispatchedOnRoute>
 <IfForcedClosed>0</IfForcedClosed>
 <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
 <IfActivationCall>0</IfActivationCall>
 <DispatchOrder>0</DispatchOrder>
 <CustomerID>ACustomer</CustomerID>
 <ATMSerialNumber>123456789</ATMSerialNumber>
 <Region>TestRegionD</Region>
 <IfUnassignedOpenCall>1</IfUnassignedOpenCall>
 <ServiceBranch>the new service branch</ServiceBranch>
</LockLogRecord>
</RESPONSE_LOCK_LOG_HISTORY_QUERY> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.13 Lock Log History Table Query Record Count

This transaction returns the number of records in the lock log history table matching the given query condition. It operates in the same manner as the Lock Log History Table Query transaction.

Example

Input Transaction:

<TRANSACTION_LOCK_LOG_HISTORY_QUERY_COUNT>
    <LockLogQueryRecord>
    <!-- char string -->
    <LockName>Test</LockName>
    <!-- date -->
    <CloseDateStart>2005-12-01T00:00:00</CloseDateStart>
    <!-- date -->
    <CloseDateEnd>2005-12-30T00:00:00</CloseDateEnd>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_LOG_HISTORY_QUERY_COUNT> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_LOG_HISTORY_QUERY_COUNT), a result record (indicating success) and a field (QueryCount) having the exact query count.

<RESPONSE_LOCK_LOG_HISTORY_QUERY_COUNT>
    <TRANSACTION_LOCK_LOG_HISTORY_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockLogQueryRecord>
    <LockName>Test</LockName>
    <CloseDateStart>2005-12-01T00:00:00</CloseDateStart>
    <CloseDateEnd>2005-12-30T00:00:00</CloseDateEnd>
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_LOCK_LOG_HISTORY_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of lock log history records matching the given query: 0.
    </Description>
    </ResultRecord>
    <QueryCount>0</QueryCount>
</RESPONSE_LOCK_LOG_HISTORY_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.14 Lock Log Archive Table Query

This transaction operates in the same manner as the Lock Log Table Query, but the query is applied to the Lock Log Archive table.

Example

Input Transaction:

<TRANSACTION_LOCK_LOG_ARCHIVE_QUERY>
    <LockLogQueryRecord>
    <!-- char string -->
    <LockName>Test</LockName>
    <!-- date -->
    <CloseDateStart>2004-12-01T00:00:00</CloseDateStart>
    <!-- date -->
    <CloseDateEnd>2005-01-30T00:00:00</CloseDateEnd>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_LOG_ARCHIVE_QUERY> 

Output Transaction:

Note: The output transaction has the original input transaction

(TRANSACTION_LOCK_LOG_ARCHIVE_QUERY), a result record (indicating success) and the lock log archive records matching the search query.

<RESPONSE_LOCK_LOG_ARCHIVE_QUERY>
    <TRANSACTION_LOCK_LOG_ARCHIVE_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <LockLogQueryRecord>
    <LockName>Test</LockName>
    <CloseDateStart>2004-12-01T00:00:00</CloseDateStart>
    <CloseDateEnd>2005-01-30T00:00:00</CloseDateEnd>
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_LOCK_LOG_ARCHIVE_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Log archive record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <LockLogRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>TestQueryLock1</LockName>
    <DispatchID>CentranSS</DispatchID>
    <UserID />
    <UserID />
    <RouteName />
    <GroupName>aabb</GroupName>
    <SerialNumber>828856</SerialNumber>
    <AuditCount>2</AuditCount>
    <LockMode>F</LockMode>
    </ResponseRecord>
    </ResponseRecord>
</RESPONSE_LOCK_LOG_ARCHIVE_QUERY> 
<IfDualMode>1</IfDualMode>
    <CustomerNumber>123456</CustomerNumber>
    <OpenDate>2004-11-24T19:47:18</OpenDate>
    <CloseDate>2004-12-24T19:47:18</CloseDate>
    <NumberCloseAttempts>2</NumberCloseAttempts>
    <LockSequence>0</LockSequence>
    <IfDispatchedOnRoute>0</IfDispatchedOnRoute>
    <IfForcedClosed>0</IfForcedClosed>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <DispatchOrder>0</DispatchOrder>
    <CustomerID>ACustomer</CustomerID>
    <ATMSerialNumber>123456789</ATMSerialNumber>
    <Region>TestRegionD</Region>
    <IfUnassignedOpenCall>1</IfUnassignedOpenCall>
    <ServiceBranch>the new service branch</ServiceBranch>
</LockLogRecord>
<LockLogRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>TestQueryLock2</LockName>
    <DispatchID>CentranSS</DispatchID>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName>TestRte5</RouteName>
    <GroupName>aabb</GroupName>
    <SerialNumber>828856</SerialNumber>
    <AuditCount>20</AuditCount>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <CustomerNumber>123456</CustomerNumber>
    <OpenDate>2004-11-24T19:47:18</OpenDate>
    <CloseDate>2004-12-24T19:47:18</CloseDate>
    <NumberCloseAttempts>2</NumberCloseAttempts>
    <LockSequence>0</LockSequence>
    </IfDispatchedOnRoute>0</IfDispatchedOnRoute>
    </IfForcedClosed>0</IfForcedClosed>
    </IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    </IfActivationCall>0</IfActivationCall>
    </DispatchOrder>0</DispatchOrder>
    <CustomerID />
    <ATMSerialNumber />
    <Region>TestRegionD</Region>
    <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
    <ServiceBranch />
</LockLogRecord>
</RESPONSE_LOCK_LOG_ARCHIVE_QUERY> 

CenTran 4 XML File Format

Chapter 2 - Lock XML Transactions

2.15 Lock Log Archive Table Query Record Count

This transaction returns the number of records in the lock log archive table matching the given query condition. It operates in the same manner as the Lock Log Archive Table Query transaction.

Example

Input Transaction:

<TRANSACTION_LOCK_LOG_ARCHIVE_QUERY_COUNT>
    <LockLogQueryRecord>
    <!-- char string -->
    <LockName>Test</LockName>
    <!-- date -->
    <CloseDateStart>2004-12-01T00:00:00</CloseDateStart>
    <!-- date -->
    <CloseDateEnd>2005-01-30T00:00:00</CloseDateEnd>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_LOCK_LOG_ARCHIVE_QUERY_COUNT> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_LOCK_LOG_ARCHIVE_QUERY_COUNT), a result record (indicating success) and a field (QueryCount) having the exact query count.

<RESPONSE_LOCK_LOG_ARCHIVE_QUERY_COUNT>
    <TRANSACTION_LOCK_LOG_ARCHIVE_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <LockLogQueryRecord>
    <LockName>Test</LockName>
    <CloseDateStart>2004-12-01T00:00:00</CloseDateStart>
    <CloseDateEnd>2005-01-30T00:00:00</CloseDateEnd>
    <IfSearchExact>0</IfSearchExact>
    </LockLogQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_LOCK_LOG_ARCHIVE_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of lock log archive records matching the given query: 2.
    </Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_LOCK_LOG_ARCHIVE_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.1 Add a Route

This transaction adds a route to the database. If the route exists, its data can be overwritten if the allow overwrite flag is set in the input transaction file.

Transaction information required:

  • Route Name
  • Customer ID (A valid Customer ID is either empty or a value corresponding to one of the Customer IDs in the customer table)
  • Region (If region control is enabled, region has to be non-empty and should correspond to one of the entries in the region table. If region control is not enabled, region can be empty but any non-empty value should correspond to one of the entries in the region table.)
  • If Allow Overwrite (Optional) - Flag to allow overwrite of existing route. All details except route 'Creation Date' are overwritten.
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description).

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

• Not authorized due to region (region control active).
- Dispatcher not authorized to do this operation.
- Route name is empty
- Customer ID not found
- Region not found
• Region control is enabled but region is empty

Example 1 - Success

Input Transaction:

<TRANSACTION_ADD_ROUTE>
    <RouteRecord>
    <!-- char string -->
    <RouteName>CentranRoute</RouteName>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <Region>TestRegionD</Region>
    </RouteRecord>
    <!-- bool -->
    <lfAllowOverwrite>false</lfAllowOverwrite>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_ADD_ROUTE) and a result record (indicating success).

<RESPONSE_ADD_ROUTE>
    <TRANSACTION_ADD_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteRecord>
    <RouteName>CentranRoute</RouteName>
    <CustomerID>ACustomer</CustomerID>
    <Region>TestRegionD</Region>
    </RouteRecord>
    <lfAllowOverwrite>false</lfAllowOverwrite>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ADD_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route CentranRoute successfully added to the database.
    </Description>
    </ResultRecord>
</RESPONSE_ADD_ROUTE> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_ADD_ROUTE>
    <RouteRecord>
    <!-- char string -->
    <RouteName>CentranRoute</RouteName>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <Region>NoRegion</Region>
    </RouteRecord>
    <!-- bool -->
    <lfAllowOverwrite>true</lfAllowOverwrite>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_ADD_ROUTE), a result record indicating failure with an error code (RC_ERR_REGION_DOESNT_EXIST) and description.

<RESPONSE_ADD_ROUTE>
    <TRANSACTION_ADD_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteRecord>
    <RouteName>CentranRoute</RouteName>
    <CustomerID>ACustomer</CustomerID>
    <Region>NoRegion</Region>
    </RouteRecord>
    <lfAllowOverwrite>true</lfAllowOverwrite>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ADD_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_REGION_DOESNT_EXIST</ErrorCode>
    <Description>Region NoRegion does not exist in the region table.</Description>
    </ResultRecord> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.2 Read a Route

This transaction reads a route and all the locks on the route from the database.

Transaction information required:

  • Route Name
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, a result record (result, error code and description), the complete route record and all route lock records on the route.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Route does not exist.
  • Dispatcher not authorized to do this operation.
    • Not authorized due to region (region control active).
  • Route lock table can't be opened.

Example 1 - Success

Input Transaction:

<TRANSACTION_READ_ROUTE>
    <!-- char string -->
    <RouteName>TestRte5 </RouteName>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_READ_ROUTE), a result record (indicating success), the complete route record and all the route lock records found on the route. If no route lock records are found, a comment is placed after the route record indicating that no locks have been found on the route.

<RESPONSE_READ_ROUTE>
    <TRANSACTION_READ_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte5</RouteName>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route TestRte5 found and read from the route table.
    </Description>
    </ResultRecord>
    <RouteRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <RouteName>TestRte5</RouteName>
    <CreationDate>2004-12-25T15:49:18</CreationDate>
    <CustomerID>ACustomer</CustomerID>
    <Region />
    </RouteRecord>
    <!--The following locks have been found on the route:-->
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <UserID>rzjane</UserID>
    <UserID>rzjohn</UserID>
    <RouteName>TestRte5</RouteName>
    <OpenDate>2004-12-22T15:49:18</OpenDate>
    <CloseDate>2004-12-25T15:49:18</CloseDate>
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
</RESPONSE_READ_ROUTE> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_READ_ROUTE>
    <!-- char string -->
    <RouteName>CentranRoute</RouteName>
    <!-- char string -->
    <DispatcherID>SuperUserLocalRegion</DispatcherID>
</TRANSACTION_READ_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_READ_ROUTE), a result record indicating failure with an error code (RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_REGION) and description. In this case, the dispatcher belongs to a local (as against global) region different from the route's region.

<RESPONSE_READ_ROUTE>
    <TRANSACTION_READ_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>CentranRoute</RouteName>
    <DispatcherID>SuperUserLocalRegion</DispatcherID>
    </TRANSACTION_READ_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_REGION</ErrorCode>
    <Description>Dispatcher belongs to a local region. The dispatcher's region does not match the route's region.
    </Description>
    </ResultRecord>
</RESPONSE_READ_ROUTE> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.3 Update a Route

This transaction updates data for an existing route in the database. The route fields to be updated have to be specified in the input transaction. Those route fields that are not specified in the input transaction are not changed from their current values.

Transaction information required:

  • Route Name
  • Customer ID (Optional) – The new value for this field
  • Region (Optional) – The new value for this field
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, a result record (result, error code and description) and the updated route record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Route doesn't exist.
  • Invalid Customer ID (Customer ID not found in database).
  • Invalid Region (Region not found in database)
  • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.
  • Input transaction file has validation errors against the schema or the required input fields have an empty or invalid value.

Example 1 - Success

Input Transaction:

<TRANSACTION_UPDATE_ROUTE>
    <UpdateRouteRecord>
    <!-- char string -->
    <RouteName>CentranRoute</RouteName>
    <!-- char string -->
    <CustomerID>some customerid</CustomerID>
    <!-- char string -->
    <Region>TestRegionD</Region>
    </UpdateRouteRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_UPDATE_ROUTE), a result record (indicating success) and the updated route record with new Customer ID and Region values.

<RESPONSE_UPDATE_ROUTE>
    <TRANSACTION_UPDATE_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
<UpdateRouteRecord>
    <RouteName>CentranRoute</RouteName>
    <CustomerID>some customerid</CustomerID>
    <Region>TestRegionD</Region>
    </UpdateRouteRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_ROUTE>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route CentranRoute data successfully
updated.</Description>
</ResultRecord>
<RouteRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <RouteName>CentranRoute</RouteName>
    <CreationDate>2009-02-16T20:27:53</CreationDate>
    <CustomerID>some customerid</CustomerID>
    <Region>TestRegionD</Region>
    </RouteRecord>
</RESPONSE_UPDATE_ROUTE> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_UPDATE_ROUTE>
    <UpdateRouteRecord>
    <!-- char string -->
    <RouteName>CentranRoute</RouteName>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <Region>TestRegionC</Region>
    </UpdateRouteRecord>
    <!-- char string -->
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_UPDATE_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_UPDATE_ROUTE), a result record indicating failure with an error code

(RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_NEW_REGION) and description. Here, the dispatcher's region is local (in scope as opposed to global) and different from that of the new region for the route. An update route transaction would also fail if the dispatcher's region is local and different from the route's current region.

<RESPONSE_UPDATE_ROUTE>
    <TRANSACTION_UPDATE_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <UpdateRouteRecord>
    <RouteName>CentranRoute</RouteName>
    <CustomerID>ACustomer</CustomerID>
    <Region>TestRegionC</Region>
    </UpdateRouteRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_UPDATE_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_NEW_REGION</ErrorCode>
    <Description>Dispatcher belongs to a local region.
    The dispatcher's region does not match the route's new region. 
</Description>
</ResultRecord>
</RESPONSE_UPDATE_ROUTE> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.4 Delete a Route

This transaction deletes a route from the database. It also deletes the route lock entries for this route from the route lock table.

Transaction information required:

  • Route Name
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description).

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Route doesn't exist.
  • Failed to delete from route table.
    • Not authorized due to region (region control active).
  • Dispatcher not authorized to do this operation.

Example 1 - Success

Input Transaction:

<TRANSACTION_DELETE_ROUTE>
    <!-- char string -->
    <RouteName>CentranRoute</RouteName>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DELETE_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_DELETE_ROUTE), a result record (indicating success).

<RESPONSE_DELETE_ROUTE>
    <TRANSACTION_DELETE_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>CentranRoute</RouteName>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DELETE_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route CentranRoute has been deleted successfully.</Description>
    </ResultRecord>
</RESPONSE_DELETE_ROUTE> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_DELETE_ROUTE>
    <!-- char string -->
    <RouteName>123456</RouteName>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DELETE_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_DELETE_ROUTE), a result record indicating failure with an error code (RC_ERR_ROUTE_NOT_FOUND) and description.

<RESPONSE_DELETE_ROUTE>
    <TRANSACTION_DELETE_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>123456</RouteName>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DELETE_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_ROUTE_NOT_FOUND</ErrorCode>
    <Description>Failed to find route 123456 in the route table.
    </Description>
    </ResultRecord>
</RESPONSE_DELETE_ROUTE> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.5 Add Locks to a Route

This transaction adds locks to an existing route in the database. The locks to be added are specified as route lock records (as defined in the schema) in the input transaction file.

Transaction information required:

  • Route Name
  • Array of Lock Records to be added to the route:
  • Lock Name
  • Lock Sequence

- Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and an array of route locks with a result record for each lock.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all locks were added successfully). In this case the error code for the transaction would be RC_OK.

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and an array of result records (one result record for each lock) with those route lock records that were added successfully to the database.

NOTE: The result record for the whole transaction has as its result 'Failure' if the transaction is a partial success (some locks were added successfully and the others failed) or if the transaction is a complete failure (none of the locks were added to the route). In the case of partial success, the error code for the transaction would be RC_PARTIAL_OK and in case of complete failure the error code for the transaction would be RC_NOT_OK.

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Route doesn't exist.
  • Locks don't exist.
  • Locks invalid (not in Active or Install mode).
  • Dispatcher and route belong to different regions.
    • Not authorized due to authorization role.
  • Route and lock belong to different regions

Example 1 - Success

Input Transaction:

<TRANSACTION_ADD_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <!-- route lock record--> 
<RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>2</LockSequence>
</RouteLockRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_LOCKS_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction

(TRANSACTION_ADD_LOCKS_ROUTE), a result record (indicating success) followed by result records for each lock. The locks that were added to the route lock table have their route lock records retrieved from the table and appended to the end of their result records. The output transaction has one or more RouteLockRecordWithResult parent elements, which is an output unit for each lock record specified in the input file. The unit contains a result record followed by the retrieved route lock record.

<RESPONSE_ADD_LOCKS_ROUTE>
    <TRANSACTION_ADD_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <RouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>2</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ADD_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>All specified locks have been added to the route.
    </Description>
    </ResultRecord>
    <RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK016, sequence 1 added successfully to the route lock table.
    </Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <UserID />
    <UserID />
    <RouteName>TestRte4</RouteName>
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </RouteLockRecordWithResult>
    <RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    </RouteLockRecord>
</RESPONSE_ADD_LOCKS_ROUTE> 
<Description>Lock VLK015, sequence 2 added successfully to the route lock table.
</Description>
</ResultRecord>
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <User1ID />
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>2</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </RouteLockRecordWithResult>
</RESPONSE_ADD_LOCKS_ROUTE> 

Example 2 - Partial Failure

Input Transaction:

<TRANSACTION_ADD_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_LOCKS_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_ADD_LOCKS_ROUTE), a result record (indicating failure with an error code of RC_PARTIAL_OK) for the transaction followed by result records for each lock. Those locks that could be added to the route lock table have their route lock records retrieved from the table and appended to the end of their result records. The output transaction has one or more RouteLockRecordWithResult parent elements, which is an output unit for each lock record specified in the input file. The unit contains a result record followed by the retrieved route lock record (if result is success) and just the result record (if result is failure).

<RESPONSE_ADD_LOCKS_ROUTE>
    <TRANSACTION_ADD_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK015</LockName>
    </RouteLockRecord>
    </RouteLockRecord>
    </RouteLockRecord>
    </Response>
</RESPONSE_ADD_LOCKS_ROUTE> 
<LockSequence>1</LockSequence>
</RouteLockRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_LOCKS_ROUTE>
<ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_PARTIAL_OK</ErrorCode>
    <Description>Not all specified locks could be added to the route.
    </Description>
</ResultRecord>
 routesLockRecordWithResult>
    <ResultRecord>
    <Result>Failure</Result>

<ErrorCode>RC_ERR_FAILED_ADD_ROUTE_LOCK_ALREADY_EXISTS</ErrorCode>
    <Description>Route lock record with lock name VLK014,
    sequence 1 already exists in the database.
    </Description>
    </ResultRecord>
</RouteLockRecordWithResult>
 routesLockRecordWithResult>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK015, sequence 1 added successfully to the
route lock table.
    </Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <User1ID />
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
</RouteLockRecordWithResult>
</RESPONSE_ADD_LOCKS_ROUTE> 

Example 3 - Failure

Input Transaction:

<TRANSACTION_ADD_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLK009</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLKShelved</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord> 
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_LOCKS_ROUTE>

Output Transaction:

The output transaction has the original input transaction (TRANSACTION_ADD_LOCKS_ROUTE), a result record (indicating failure) followed by result records for each lock that could not be added to the route.

<RESPONSE_ADD_LOCKS_ROUTE>
    <TRANSACTION_ADD_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <RouteLockRecord>
    <LockName>VLK009</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLKShelved</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ADD_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_NOT_OK</ErrorCode>
    <Description>None of the specified locks could be added to the route.</Description>
    </ResultRecord>
    <RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_ROUTE_REGION_MISMATCH</ErrorCode>
    <Description>The lock's region does not match the route's region.</Description>
    </ResultRecord>
    </RouteLockRecordWithResult>
    <RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_INVALID_LOCK_REC_RECTYPE</ErrorCode>
    <Description>Lock VLKShelved is neither in Active mode nor in Install mode.
    </Description>
    </ResultRecord>
    </RouteLockRecordWithResult>
</RESPONSE_ADD_LOCKS_ROUTE> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.6 Read Locks on a Route

This transaction reads data for locks on a route either from the database or from a route file. If successful, the output would include both the route lock record and the corresponding lock record for each lock on the route.

Transaction information required:

  • Route Name
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole. No route information (route lock, lock records) would be retrieved if the transaction failed due to reasons like lack of authorization or invalid route name. If the pre-requisites like authorization, valid route name are satisfied, the route information retrieved for each lock on the route has a route lock record (if found in database or route file), lock record (if found in database) and result record.

NOTE: The result record for the whole transaction has as its result 'Failure' if the transaction is a partial success (only some of the locks were read successfully) or if the transaction is a complete failure (none of the locks were read successfully). In the case of partial success, the error code for the transaction would be RC_PARTIAL_OK and in case of complete failure the error code for the transaction would be RC_NOT_OK. A lock may not be read successfully if, for example the route lock exists but the matching lock record does not.

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Route does not exist.
  • Invalid route name.
  • All locks on route don't exist.
  • Dispatcher and route belong to different regions (route belongs to a database).
    • Not authorized due to authorization role.
  • Validation error.

Example 1 - Success

Input Transaction:

<TRANSACTION_READ_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_LOCKS_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction (TRANSACTION_READ_LOCKS_ROUTE), a result record (indicating success) followed by data for each lock on the route. The output unit for each lock found on the route is LockRecordAndRouteLockRecord which consists of a result record, lock record and route lock record.

<RESPONSE_READ_LOCKS_ROUTE>
    <TRANSACTION_READ_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>All locks defined on the route were found and read.</Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock record found.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28</StartDate>
    <LastUsedDate>2009-02-16T23:52:39</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532214</SerialNumber>
    <CloseSeal>113</CloseSeal>
    <PreviousSeal>113</PreviousSeal>
    <RouteSeal>152</RouteSeal1>
    <RouteSeal>0</RouteSeal2>
    <RouteSeal>0</RouteSeal3>
    <PreviousRouteSeal>113</PreviousRouteSeal1>
    <PreviousRouteSeal>0</PreviousRouteSeal2>
    <PreviousRouteSeal>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>956628</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>363809</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>7</AuditCount>
    <GroupName>some gro</GroupName>
    <OriginalSerialNumber>0</OriginalSerialNumber>
    <Description1>aaaaaaaaaaaaaaaaa</Description1> 
<Description2>dddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
<UserDefined3 />
<UserDefined4 />
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1 />
<User2ID2 />
<User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
 <DispatcherID1>MHG\agoverdhan</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-02-16T23:52:39.744Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1 xsi:nil="true" />
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rbob</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRoute1</PreviousRouteName1>
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2005-02-22T13:50:15.422Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2005-02-22T14:41:44.854Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal>
 <LockHardwareModel />
 <BankBranchName />
 <BankOpenDelay>0</BankOpenDelay>
 <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus /> 
</LockRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-16T23:52:39.784Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
</RESPONSE_READ_LOCKS_ROUTE> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_READ_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte7</RouteName>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_LOCKS_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction

(TRANSACTION_READ_LOCKS_ROUTE), a result record (indicating failure) followed by data for each lock on the route. The output unit for each lock found on the route is LockRecordAndRouteLockRecord which consists of a result record, lock record and route lock record. In this case, the route lock record specified in the route file has no matching lock record. So, the result record indicates a failure and only the route lock information retrieved from the route file is displayed.

<RESPONSE_READ_LOCKS_ROUTE>
    <TRANSACTION_READ_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte7</RouteName>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_NOT_OK</ErrorCode>
    <Description>None of the locks defined on the route were found and read.
    </Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_NOT_FOUND</ErrorCode>
    <Description>Lock record with lock name VLK031 not found.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK031</LockName>
    <UserID />
</Response> 
<User2ID />
    <RouteName>TestRte7</RouteName>
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
</RESPONSE_READ_LOCKS_ROUTE> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.7 Delete Locks from a Route

This transaction deletes locks from an existing route in the database. The locks to be deleted are specified as route lock records (as defined in the schema) in the input transaction file.

Transaction information required:

  • Route Name
  • Array of Lock Records to be deleted from the route:
  • Lock name
  • Lock sequence

- Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and an array of route locks (retrieved prior to deletion) with a result record for each lock.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all locks were deleted successfully from the route). In this case the error code for the transaction would be RC_OK.

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and an array of data for each lock on the route - result record, route lock record (retrieved prior to deletion).

NOTE: The result record for the whole transaction has as its result 'Failure' if the transaction is a partial success (some locks were deleted successfully and the others failed) or if the transaction is a complete failure (none of the locks were deleted from the route). In the case of partial success, the error code for the transaction would be RC_PARTIAL_OK and in the case of complete failure, the error code for the transaction would be RC_NOT_OK.

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Locks on route being deleted are open on the route.
  • Route doesn't exist.
    • Not authorized due to region (region control active).
    • Not authorized due to authorization role.
  • Route lock does not exist.

Example

Input Transaction:

<TRANSACTION_DELETE_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName></LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <!-- route lock record -->
    <RouteLockRecord> 
<LockName>VLK011</LockName>
<LockSequence>1</LockSequence>
</RouteLockRecord>
<!-- route lock record -->
<RouteLockRecord>
<LockName>VLK014</LockName>
<LockSequence>1</LockSequence>
</RouteLockRecord>
<!-- route lock record -->
<RouteLockRecord>
<LockName>VLK015</LockName>
<LockSequence>1</LockSequence>
</RouteLockRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DELETE_LOCKS_ROUTE> 

Output Transaction:

Note: The output transaction has the original input transaction

(TRANSACTION_DELETE_LOCKS_ROUTE), a result record (indicating success) followed by result records for each lock. The locks that were found in the route lock table have their route lock records retrieved from the table (prior to deletion) and appended to the end of their result records. In this case, one lock has an invalid name, lock VLK011 was not found, lock VLK014 was open on the route (its route lock record was found and retrieved), and lock VLK015 was deleted successfully (its route lock record was found and retrieved prior to deletion). The error code for the transaction is RC_PARTIAL_OK (because one lock could be deleted successfully from the route) but the overall result is deemed a Failure.

<RESPONSE_DELETE_LOCKS_ROUTE>
    <TRANSACTION_DELETE_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <RouteLockRecord>
    <LockName></LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK011</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DELETE_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_PARTIAL_OK</ErrorCode>
    <Description>Not all specified route lock records could be deleted.
    </Description>
    </ResultRecord>
    <RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_INVALID_LOCKNAME</ErrorCode>
    <Description>Invalid lock name. The lock name is blank.
    </Description>
    </ResultRecord>
    </RouteLockRecordWithResult> 
<RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_ROUTE_LOCK_NOT_FOUND</ErrorCode>
    <Description>Route lock record with lock name VLK011, sequence 1 not found in the database.
    </Description>
    </ResultRecord>
</RouteLockRecordWithResult>
<RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_ALREADY_OPEN</ErrorCode>
    <Description>Route lock VLK014 is open on the route.
    </Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-17T22:11:03.789Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </RouteLockRecordWithResult>
    <RouteLockRecordWithResult>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route lock record VLK015 deleted successfully.
    </Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <User1ID />
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </RouteLockRecordWithResult>
</RESPONSE_DELETE_LOCKS_ROUTE> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.8 Dispatch all Locks on a Route

This transaction dispatches all locks on an existing route in the database or from a route file.

Transaction information required:

  • Route Name
  • Route User ID 1
  • Route User ID 2
  • Flag to indicate if lock errors allowed (conditional dispatch).
  • Dispatcher ID (Optional) – If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all locks on the route were dispatched successfully). In this case the error code for the transaction would be RC_OK.

PartialSuccess:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'PartialSuccess' only if the transaction is a partial success (some locks on the route were dispatched successfully, and some locks failed).

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole. No route information is displayed if the transaction failed due to reasons like lack of authorization, invalid route name or failure of any other condition that needs to be satisfied before attempting to dispatch a lock on a route. If an attempt was made to dispatch the locks, for each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. The only exception to this rule is when an invalid lock name, invalid User ID or invalid lock sequence is specified as input for a route lock record and in this case only the result record is displayed for that particular route lock record.

NOTE: The result record for the whole transaction has as its result 'Failure'.

NOTE: The output transaction may have one or more 'LockRecordAndRouteLockRecord' elements. Each element is an output unit for each lock that was either successfully dispatched or failed to be dispatched. The unit contains a result record followed by a lock record (if found in the database) and a route lock record (if found in the database).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Locks already open, or otherwise invalid.
  • Locks don't exist.
  • Users don't exist, or otherwise invalid.
  • Route doesn't exist.
    • Not authorized due to region (region control active).
    • Not authorized due to authorization role.

Example 1 - Failure

Input Transaction:

<TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte3</RouteName>
    <User1ID>rzjack</User1ID>
    <User2ID>rzjill</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>

Output Transaction:

Here, the route in the database has no locks assigned to it and so no locks are dispatched.

<RESPONSE_DISPATCH_ALL_LOCKS_ROUTE>
    <TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte3</RouteName>
    <User1ID>rzjack</User1ID>
    <User2ID>rzjill</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_ROUTE_NO_LOCKS_ASSIGNED</ErrorCode>
    <Description>The route has no locks assigned to it.</Description>
    </ResultRecord>
</RESPONSE_DISPATCH_ALL_LOCKS_ROUTE> 

Example 2 - Failure
Input Transaction:

<TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>

Output Transaction:

NOTE: If no lock errors are allowed, no locks on the route will be dispatched even if one of them causes a group mismatch, region mismatch, does not exist, is already open or is not in active mode. In this case, one lock on the route is already open and so none of the locks are dispatched. Only the details (result record, lock record and route lock record) of the open lock VLK014 are displayed.

<RESPONSE_DISPATCH_ALL_LOCKS_ROUTE>
    <TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>
    <ResultRecord>
<Result>Failure</Result>
<ErrorCode>RC_ERR_DISPATCH_ROUTE_FAILED_FLMS_LOCKS_ROUTE</ErrorCode>
<Description>No locks on route TestRte4 have been dispatched.
Incompatibility or
error encountered between locks and users for route from database.</Description>
</ResultRecord>
<LockRecordAndRouteLockRecord>
<ResultRecord>
<Result>Failure</Result>
<ErrorCode>RC_ERR_DISPATCH_LOCK_SEQ_OPEN</ErrorCode>
<Description>Lock and route sequence already has a combination dispatched, or
sequence is still active from other sequences not being closed out.</Description>
</ResultRecord>
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK014</LockName>
<User1ID>rzjill</User1ID>
(User2ID />
<RouteName />
<OpenDate>2009-08-07T13:38:44.917Z</OpenDate>
<CloseDate xsi:nil="true" />
<LockSequence>1</LockSequence>
<DispatchOrder>0</DispatchOrder>
<ResultCode>0</ResultCode>
<IfCloseSealDuress>0</IfCloseSealDuress>
<IfCloseSealLowBattery>0</IfCloseSealLowBattery>
</RouteLockRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK014</LockName>
<RecordType>A</RecordType>
 IncreasesDate>2002-11-01T21:17:28.343Z</StartDate>
<LastUsedDate>2009-08-07T13:38:44.917Z</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>R</LockMode>
<IfDualMode>0</IfDualMode>
<IfLockOpen>1</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>0</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532214</SerialNumber>
<Seal>113</Seal>
<PreviousSeal>85</PreviousSeal>
<RouteSeal1>113</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>85</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>613554</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2> 
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>863054</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>11</AuditCount>
<GroupName>some gro</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd
</Description2>
<Description3>ddddddddddddddd
</Description3>
<Description4>ddddddddddddddd
</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
-secondId3 />
 UserDefined4 />
 <Region>TestRegionD</Region>
 <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
 <IfLastRoute1Issued>0</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued>
 <User1ID1>rzjill</User1ID1>
 <User1ID2 />
 <User1ID3 />
 <User2ID1 />
 <User2ID2 />
 <User2ID3 />
 <RouteName1 />
 <RouteName2 />
 <RouteName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-08-07T13:38:44.917Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1 xsi:nil="true" />
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjack</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-07T13:38:29.933Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-07T13:38:30.893Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 /> 
<City />
    <State />
    <ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
    </LockRecord>
    </LockRecordAndRouteLockRecord>
</RESPONSE_DISPATCH_ALL_LOCKS_ROUTE> 

Example 3 - Success

Input Transaction:

<TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>rzjack</User1ID>
    <User2ID>rzjill</User2ID>
    <lfAllowLockErrors>1</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>

Output Transaction:

<RESPONSE_DISPATCH_ALL_LOCKS_ROUTE>
    <TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>rzjack</User1ID>
    <User2ID>rzjill</User2ID>
    <lfAllowLockErrors>1</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>All locks on route TestRte4 have been dispatched.</Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK014 dispatched successfully.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rjrb1</User1ID>
    <User2ID />
    <RouteName>s_route2</RouteName>
    <OpenDate>2009-08-07T13:37:15.497Z</OpenDate>
    <CloseDate>2009-08-07T13:37:17.077Z</CloseDate>
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <lfCloseSealDuress>0</lfCloseSealDuress> 
<IfCloseSealLowBattery>0</IfCloseSealLowBattery>
</RouteLockRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK014</LockName>
<RecordType>A</RecordType>
<StartDate>2002-11-01T21:17:28.343Z</StartDate>
<LastUsedDate>2009-08-07T13:37:17.077Z</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>R</LockMode>
<IfDualMode>0</IfDualMode>
<IfLockOpen>0</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>0</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532214</SerialNumber>
<Seal>137</Seal>
<PreviousSeal>152</PreviousSeal>
<RouteSeal1>137</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>152</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>840446</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>362917</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>9</AuditCount>
<GroupName>some gro</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
 bromoDefined3 />
 bromoDefined4 />
 Region>TestRegionD</Region>
 <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
 <IfLastRoute1Issued>1</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued>
 <UserlIDl>rjrbI</UserlIDl>
 <UserlID2 />
 <UserlID3 /> 
<User2ID1 />
<User2ID2 />
<User2ID3 />
<RouteName1>s_route2</RouteName1>
<RouteName2 />
<RouteName3 />
<DispatcherID1>CenTran</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-08-07T13:37:15.497Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1>2009-08-07T13:37:17.077Z</CloseTime1>
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rzjack</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1 />
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1>s_route2</PreviousRouteName1>
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2009-08-07T13:37:08.143Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2009-08-07T13:37:12.777Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
(State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</LockRecordAndRouteLockRecord>
</RESPONSE_DISPATCH_ALL_LOCKS_ROUTE> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.9 Dispatch Locks on a Route

This transaction dispatches some of the locks on an existing route in the database or from a route file. The locks to be dispatched are specified as route lock records (as defined in the schema) in the input transaction file.

Transaction information required:

  • Route Name
  • Route User ID 1
  • Route User ID 2
  • Array of Lock Records to be dispatched on the route:
  • Lock Name
  • Lock Sequence

- Dispatcher ID (Optional) – If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all locks on the route were dispatched successfully). In this case the error code for the transaction would be RC_OK.

PartialSuccess:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'PartialSuccess' only if the transaction is a partial success (some locks on the route were dispatched successfully, and some locks failed).

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole. No route information is displayed if the transaction failed due to reasons like lack of authorization, invalid route name or failure of any other condition that needs to be satisfied before attempting to dispatch a lock on a route. If an attempt was made to dispatch the locks, for each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. The only exception to this rule is when an invalid lock name, invalid User ID or invalid lock sequence is specified as input for a route lock record and in this case only the result record is displayed for that particular route lock record.

NOTE: The result record for the whole transaction has as its result 'Failure'.

NOTE: The output transaction may have one or more 'LockRecordAndRouteLockRecord' elements. Each element is an output unit for each lock that was either successfully dispatched or failed to be dispatched. The unit contains a result record followed by a lock record (if found in the database) and a route lock record (if found in the database).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Locks already open, or otherwise invalid.
  • Locks don't exist.
  • Users don't exist, or otherwise invalid.
  • Route doesn't exist.
    • Not authorized due to region (region control active).

• Not authorized due to authorization role.

Example 1 - Failure

Input Transaction:

<TRANSACTION_DISPATCH_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>fjrb1</User1ID>
    <User2ID>fjrb2</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <RouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_LOCKS_ROUTE> 

Output Transaction:

In this case, users fjrb1 and fjrb2 are FLM users and CentranSS is a Special Supervisor. So, none of the locks are dispatched and the error code for the whole transaction is RC_ERR_FLMBOTH_NOT_SAME_MODE_AS_LOCK. Each route lock has its own error code.

<RESPONSE_DISPATCH_LOCKS_ROUTE>
    <TRANSACTION_DISPATCH_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>fjrb1</User1ID>
    <User2ID>fjrb2</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <RouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FLMBOTH_NOT_SAME_MODE_AS_LOCK</ErrorCode>
    <Description>Failure in dispatching all the specified locks on route TestRte4. Dual mode lock - Both users are not the same mode as the lock.</Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FLMBOTH_NOT_SAME_MODE_AS_LOCK</ErrorCode>
    <Description>Dual mode lock - Both users are not the same mode as the lock.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<LockName>VLK016</LockName>
 User1ID>rzjill</User1ID>
 <User2ID>rzdiffgroup</User2ID>
 <RouteName>TestRte4</RouteName>
 <OpenDate>2009-08-10T14:17:34.200Z</OpenDate>
 <CloseDate>2009-08-10T14:17:38.017Z</CloseDate>
 <LockSequence>1</LockSequence>
 <DispatchOrder>0</DispatchOrder>
 <ResultCode>0</ResultCode>
 <IfCloseSealDuress>0</IfCloseSealDuress>
 <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
 </RouteLockRecord>
 <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <LockName>VLK016</LockName>
  <RecordType>A</RecordType>
  <StartDate>2002-11-01T21:18:27.183Z</StartDate>
  <LastUsedDate>2009-08-10T14:17:38.017Z</LastUsedDate>
  <CustomerNumber>123456</CustomerNumber>
  <LockMode>R</LockMode>
  <IfDualMode>1</IfDualMode>
  <IfLockOpen>0</IfLockOpen>
  <IfForcedClosed>0</IfForcedClosed>
  <IfRoute1Issued>0</IfRoute1Issued>
  <IfRoute2Issued>0</IfRoute2Issued>
  <IfRoute3Issued>0</IfRoute3Issued>
  <IfNoAlarm>0</IfNoAlarm>
  <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
  <IfActivationCall>0</IfActivationCall>
  <SerialNumber>532016</SerialNumber>
  <Seal>37</Seal>
  <PreviousSeal>69</PreviousSeal>
  <RouteSeal1>37</RouteSeal1>
  <RouteSeal2>0</RouteSeal2>
  <RouteSeal3>0</RouteSeal3>
  <PreviousRouteSeal1>69</PreviousRouteSeal1>
  <PreviousRouteSeal2>0</PreviousRouteSeal2>
  <PreviousRouteSeal3>0</PreviousRouteSeal3>
  <OpenTries1>0</OpenTries1>
  <OpenTries2>0</OpenTries2>
  <OpenTries3>0</OpenTries3>
  <TransferReturnCode>0</TransferReturnCode>
  <IssuedComboUser1Seq1>631429</IssuedComboUser1Seq1>
  <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
  <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
  <IssuedComboUser2Seq1>205616</IssuedComboUser2Seq1>
  <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
  <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
  <PreviousComboUser1Seq1>750929</PreviousComboUser1Seq1>
  <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
  <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
  <PreviousComboUser2Seq1>167217</PreviousComboUser2Seq1>
  <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
  <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
  <AuditCount>21</AuditCount>
  <GroupName />
    <OriginalSerialNumber>0</OriginalSerialNumber>
    <Description1>aaaaaaaaaaaaaaaa</Description1>
    <Description2 />
    <Description3 />
    <Description4 />
    <CustomerID />
    <ATMSerialNumber />
    <UserDefined1 />
    <UserDefined2 /> 
<UserDefined3 />
 UserDefined4 />
 <Region>TestRegionD</Region>
 <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
 <IfLastRoute1Issued>1</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued>
 <User1ID1>rzjill</User1ID1>
 <User1ID2 />
 <User1ID3 />
 <User2ID1>rzdiffgroup</User2ID1>
 <User2ID2 />
 <User2ID3 />
 <RouteName1>TestRte4</RouteName1>
 <RouteName2 />
 <RouteName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-08-10T14:17:34.200Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1>2009-08-10T14:17:38.017Z</CloseTime1>
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1>rzjack</PreviousUser2ID1>
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1 />
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T14:16:33.113Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T14:16:53.443Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal>
 <LockHardwareModel />
 <BankBranchName />
 <BankOpenDelay>0</BankOpenDelay>
 <BankOpenWindow>0</BankOpenWindow>
 <LockActivationStatus />
 <LockDispatchStatus />
 </LockRecord>
 </LockRecordAndRouteLockRecord>
 <LockRecordAndRouteLockRecord>
 <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FLMl_NOT_SAME_MODE_AS_LOCK</ErrorCode>
    <Description>First user is not the same mode as the 
lock.</Description>
</ResultRecord>
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK014</LockName>
<User1ID>rzjill</User1ID>
<User2ID />
<RouteName>TestRte4</RouteName>
<OpenDate>2009-08-10T14:17:33.687Z</OpenDate>
<CloseDate>2009-08-10T14:17:37.587Z</CloseDate>
<LockSequence>1</LockSequence>
<DispatchOrder>0</DispatchOrder>
<ResultCode>0</ResultCode>
<IfCloseSealDuress>0</IfCloseSealDuress>
<IfCloseSealLowBattery>0</IfCloseSealLowBattery>
</RouteLockRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK014</LockName>
<RecordType>A</RecordType>
<StartDate>2002-11-01T21:17:28.343Z</StartDate>
<LastUsedDate>2009-08-10T14:17:37.587Z</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>R</LockMode>
<IfDualMode>0</IfDualMode>
<IfLockOpen>0</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>0</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532214</SerialNumber>
<Seal>36</Seal>
<PreviousSeal>113</PreviousSeal>
<RouteSeal1>36</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>113</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>354646</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>613554</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>13</AuditCount>
<GroupName>some gro</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4> 
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
<UserDefined3 />
<UserDefined4 />
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1 />
<User2ID2 />
<User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-08-10T14:17:33.687Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1>2009-08-10T14:17:37.587Z</CloseTime1>
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>0</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1 />
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T14:17:29.517Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T14:17:31.170Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal>
 <LockHardwareModel />
 <BankBranchName />
 <BankOpenDelay>0</BankOpenDelay>
 <BankOpenWindow>0</BankOpenWindow>
 <LockActivationStatus />
 <LockDispatchStatus />
 </LockRecord>
 </LockRecordAndRouteLockRecord>
 </RESPONSE_DISPATCH_LOCKS_ROUTE> 

Example 2 - Partial Failure

Input Transaction:

<TRANSACTION_DISPATCH_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLK013</LockName>
    <LockSequence>1</LockSequence>
    <User1ID>rjrb1</User1ID>
    </RouteLockRecord>
    <!-- route lock record -->
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    <User1ID>rzjill</User1ID>
    </RouteLockRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_LOCKS_ROUTE> 

Output Transaction:

In this example, lock VLK013 does not exist. Therefore an appropriate error code is displayed in the result record. Since no route lock record or lock record for VLK013 exists, only the result record is displayed. Lock VLK014 is dispatched successfully. The error code for the whole transaction is RC_PARTIAL_OK indicating partial success or partial failure, depending on whether you think of the glass as half full or half empty...

<RESPONSE_DISPATCH_LOCKS_ROUTE>
    <TRANSACTION_DISPATCH_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <RouteLockRecord>
    <LockName>VLK013</LockName>
    <LockSequence>1</LockSequence>
    <User1ID>rjrb1</User1ID>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    <User1ID>rzjill</User1ID>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_PARTIAL_OK</ErrorCode>
    <Description>Failure in dispatching some of the specified locks on route
    TestRte4.
    </Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_ROUTE_LOCK_NOT_FOUND</ErrorCode>
    <Description>Route lock record with route name - TestRte4, 
lock name - VLK013, sequence - 1 does not exist.
</Description>
</ResultRecord>
</LockRecordAndRouteLockRecord>
<LockRecordAndRouteLockRecord>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK014 dispatched successfully.</Description>
</ResultRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28</StartDate>
    <LastUsedDate>2009-02-18T16:00:58</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532214</SerialNumber>
    <CloseSeal>49</CloseSeal>
    <PreviousSeal>49</PreviousSeal>
    <RouteSeal1>85</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>49</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>456865</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>280202</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>10</AuditCount>
    <GroupName>some gro</GroupName>
    <OriginalSerialNumber>0</OriginalSerialNumber>
    <Description1>aaaaaaaaaaaaaaaa</Description1>
    <Description2>dddddddddddddddd</Description2>
    <Description3>dddddddddddddddd</Description3>
    <Description4>dddddddddddddddd</Description4>
    <CustomerID>ACustomer</CustomerID>
    <ATMSerialNumber>asdfasd</ATMSerialNumber>
    <UserDefined1 />
    <UserDefined2 />
    <UserDefined3 />
    <UserDefined4 /> 
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1 />
<User2ID2 />
<User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-02-18T16:00:58.123Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1 xsi:nil="true" />
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-02-18T15:54:10.432Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-02-18T15:59:55.421Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal>
 <LockHardwareModel />
 <BankBranchName />
 <BankOpenDelay>0</BankOpenDelay>
 <BankOpenWindow>0</BankOpenWindow>
 <LockActivationStatus />
 <LockDispatchStatus />
 </LockRecord>
 <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK014</LockName>
<User1ID>rzjill</User1ID>
<User2ID />
 <RouteName>TestRte4</RouteName>
<OpenDate>2009-02-18T16:00:58.289Z</OpenDate> 
<CloseDate xsi:nil="true" />
<LockSequence>1</LockSequence>
<DispatchOrder>0</DispatchOrder>
<ResultCode>0</ResultCode>
<IfCloseSealDuress>0</IfCloseSealDuress>
<IfCloseSealLowBattery>0</IfCloseSealLowBattery>
</RouteLockRecord>
</LockRecordAndRouteLockRecord>
</RESPONSE_DISPATCH_LOCKS_ROUTE> 

Example 3 - Success

Input Transaction:

<TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- char string -->
    <UserID>rzjill</UserID>
    <!-- char string -->
    <User2ID>rzjack</User2ID>
    <!-- bool -->
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE> 

Output Transaction:

<RESPONSE_DISPATCH_ALL_LOCKS_ROUTE>
    <TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <lfAllowLockErrors>0</lfAllowLockErrors>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DISPATCH_ALL_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>All locks on route TestRte4 have been dispatched. </Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK014 dispatched successfully. </Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28</StartDate>
    <LastUsedDate>2009-02-18T00:15:32</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <lfDualMode>0</lfDualMode>
    <lfLockOpen>0</lfLockOpen>
    <lfForcedClosed>0</lfForcedClosed>
    <lfRoutelIssued>1</lfRoutelIssued>
    <lfRoute2Issued>0</lfRoute2Issued> 
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532214</SerialNumber>
<CloseSeal>152</CloseSeal>
<PreviousSeal>152</PreviousSeal>
<RouteSeal1>137</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>152</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>113460</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>956628</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>8</AuditCount>
<GroupName>some gro</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
 bromDefined3 />
 UserDefined4 />
 Region>TestRegionD</Region>
 <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
 <IfLastRoute1Issued>1</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued>
 <User1ID1>rzjill</User1ID1>
 <User1ID2 />
 <User1ID3 />
 <User2ID1 />
 <User2ID2 />
 <User2ID3 />
 <RouteName1>TestRte4</RouteName1>
 <RouteName2 />
 <RouteName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-02-18T00:15:32.894Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1 xsi:nil="true" />
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" /> 
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rzjill</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1 />
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1>TestRte4</PreviousRouteName1>
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2009-02-17T22:11:03.945Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2009-02-18T00:12:15.653Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
<State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
 routesLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-18T00:15:32.222Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK016 dispatched successfully.
    </Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27</StartDate>
    <LastUsedDate>2009-02-18T00:15:32</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    </IfPreviousRoute1Issued>
    </IfPreviousRoute2Issued>
    </IfPreviousRoute3Issued>
    </IfPreviousUser1ID1>
    </IfPreviousUser1ID2>
    </PreviousUser1ID3 />
    </PreviousUser2ID1 />
    </PreviousUser2ID2 />
    </PreviousUser2ID3 />
    </PreviousRouteName1>TestRte4</PreviousRouteName1>
    </PreviousRouteName2 />
    </PreviousRouteName3 />
    </PreviousOpenTime1>2009-02-17T22:11:03.945Z</PreviousOpenTime1>
    </PreviousOpenTime2 xsi:nil="true" />
    </PreviousOpenTime3 xsi:nil="true" />
    </PreviousCloseTime1>2009-02-18T00:12:15.653Z</PreviousCloseTime1>
    </IfPreviousRouteName1>TestRte4</IfCurrentRouteName1>
    </IfCurrentRouteName2 />
    </PreviousRouteName3 />
    </PreviousOpenTime1>2009-02-17T22:11:03.945Z</PreviousOpenTime1>
    </PreviousOpenTime2 xsi:nil="true" />
    </PreviousOpenTime3 xsi:nil="true" />
    </PreviousCloseTime1>2009-02-18T00:12:15.555Z</PreviousCloseTime1>
    </IfCurrentRouteName1>TestRte4</IfCurrentRouteName1>
    </IfCurrentRouteName2>< 
<IfDualMode>1</IfDualMode>
<IfLockOpen>0</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>1</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532016</SerialNumber>
<CloseSeal>67</CloseSeal>
<PreviousSeal>67</PreviousSeal>
<RouteSeal1>132</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>147</PreviousRouteSeal1>
<PreviousRouteSeal2>67</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>579901</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>986190</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>8573</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>729333</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>219975</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>930736</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>15</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
 bromide
 UserDefined2 />
 UserDefined3 />
 UserDefined4 />
 Region>TestRegionD</Region>
 <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
 <IfLastRoute1Issued>1</IfLastRoute1Issued>
 <IfLastRoute2Issued>0</IfLastRoute2Issued>
 <IfLastRoute3Issued>0</IfLastRoute3Issued>
 <User1ID1>rzjill</User1ID1>
 <User1ID2 />
 <User1ID3 />
 <User2ID1>rzjack</User2ID1>
 <User2ID2 />
 <User2ID3 />
 <RouteName1>TestRte4</RouteName1>
 <RouteName2 />
 <RouteName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-02-18T00:15:32.865Z</OpenTime1> 
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1 xsi:nil="true" />
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rbob</PreviousUser1ID1>
<PreviousUser1ID2>rbob</PreviousUser1ID2>
<PreviousUser1ID3 />
<PreviousUser2ID1>rdave</PreviousUser2ID1>
<PreviousUser2ID2>rdave</PreviousUser2ID2>
<PreviousUser2ID3 />
<PreviousRouteName1>TestRoute1</PreviousRouteName1>
<PreviousRouteName2>TestRoute1</PreviousRouteName2>
<PreviousRouteName3 />
<PreviousOpenTime1>2005-02-22T13:50:15.875Z</PreviousOpenTime1>
<PreviousOpenTime2>2005-02-22T13:50:16.345Z</PreviousOpenTime2>
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2005-02-
22T14:41:44.423Z</PreviousCloseTime1>
<PreviousCloseTime2>2005-02-
22T14:41:45.543Z</PreviousCloseTime2>
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
<State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
 routesLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-18T00:15:32.265Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
</RESPONSE_DISPATCH_ALL_LOCKS_ROUTE> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.10 Reassign All Locks On a Route

This transaction reassigns all locks on an existing route in the database.

Transaction information required:

  • Route Name
  • Route User ID 1
  • Route User ID 2
  • Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all locks on the route were reassigned successfully). In this case the error code for the transaction would be RC_OK.

PartialSuccess:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole.

Each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. The only exception to this rule is when an invalid lock name, invalid User ID or invalid lock sequence is specified as input for a route lock record and in this case only the result record is displayed for that particular route lock record.

NOTE: The result record for the whole transaction has as its result 'PartialSuccess' if the transaction is a partial success (some locks were reassigned successfully and the others failed). In the case of partial success, the error code for the transaction would be RC_ERR_REASSIGN_ROUTE_SOME_NOT_REASSIGNED.

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole. No route information is displayed if the transaction failed due to reasons like lack of authorization or failure of any other condition that needs to be satisfied before attempting to reassign the locks on a route.

If an attempt was made to reassign the locks, for each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. The only exception to this rule is when an invalid lock name, invalid User ID or invalid lock sequence is specified as input for a route lock record and in this case only the result record is displayed for that particular route lock record.

NOTE: The result record for the whole transaction has as its result 'Failure' if the transaction is a complete failure (none of the locks were reassigned on the route). In the case of complete failure, the error code for the transaction will vary depending on the error.

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Locks not open, or otherwise invalid.
  • Locks don't exist.
  • Users don't exist, or otherwise invalid.
  • Route doesn't exist or otherwise invalid.

• Not authorized due to region (region control active).
• Not authorized due to authorization role.

Example 1 - Failure

Input Transaction:

<TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRtel</RouteName>
    <!-- char string -->
    <User1ID>rzjill</User1ID>
    <!-- char string -->
    <User2ID>rzjack</User2ID>
    <!-- char string -->
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE> 

Output Transaction:

In this example, none of the locks are reassigned because the region control is set and the dispatcher's region (local in scope) does not match the route's region.

<RESPONSE_REASSIGN_ALL_LOCKS_ROUTE>
    <TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRtel</RouteName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_REGION</ErrorCode>
    <Description>Dispatcher belongs to a local region. The dispatcher's region does not match the route's region.
    </Description>
    </ResultRecord>
</RESPONSE_REASSIGN_ALL_LOCKS_ROUTE> 

Example 2 - Partial Failure

Input Transaction:

<TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE>
    <!-- char string -->
    <RouteName>TestRte4</RouteName>
    <!-- char string -->
    <User1ID>rzjack</User1ID>
    <!-- char string -->
    <User2ID>rzjill</User2ID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE> 

Output Transaction:

In this example, lock VLK014 was reassigned successfully but lock VLK016 wasn't because it was not open. The error code for the whole transaction is 'RC_PARTIAL_OK RC_ERR_REASSIGN_ROUTE_SOME_NOT_REASSIGNED' which indicates that the transaction partially succeeded and that some locks on the route were not reassigned.

<RESPONSE REASSIGN ALL LOCKS ROUTE> 
<TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte4</RouteName>
    <User1ID>rzjack</User1ID>
    <User2ID>rzjill</User2ID>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REASSIGN_ALL_LOCKS_ROUTE>
<ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_PARTIAL_OK
    RC_ERR_REASSIGN_ROUTE_SOME_NOT_REASSIGNED
    </ErrorCode>
    <Description>Some locks on route TestRte4 have not been reassigned.
    </Description>
</ResultRecord>
<LockRecordAndRouteLockRecord>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK014 reassigned successfully.</Description>
</ResultRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28</StartDate>
    <LastUsedDate>2009-02-18T16:00:58</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532214</SerialNumber>
    <CloseSeal>49</CloseSeal>
    <PreviousSeal>49</PreviousSeal>
    <RouteSeal1>85</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>49</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>863054</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>280202</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>10</AuditCount>
    <GroupName>some gro</GroupName> 
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
<UserDefined3 />
<UserDefined4 />
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjack</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1 />
<User2ID2 />
<User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-02-18T16:00:58.673Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1 xsi:nil="true" />
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-02-18T15:54:10.542Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-02-18T15:59:55.344Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal>
 <LockHardwareModel />
 <BankBranchName />
 <BankOpenDelay>0</BankOpenDelay>
 <BankOpenWindow>0</BankOpenWindow> 
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjack</User1ID>
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-18T16:00:58.674Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_NOT_OPEN</ErrorCode>
    <Description>Lock not open.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27</StartDate>
    <LastUsedDate>2009-02-18T00:34:56</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532016</SerialNumber>
    <CloseSeal>132</CloseSeal>
    <PreviousSeal>67</PreviousSeal>
    <RouteSeal1>132</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>147</PreviousRouteSeal1>
    <PreviousRouteSeal2>67</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>579901</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>986190</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>8573</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>729333</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>219975</PreviousComboUser2Seq1> 
<PreviousComboUser2Seq2>930736</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>16</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaa
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
 bromDefined3 />
 bromDefined4 />
 <Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
USER1ID1>rzjill</User1ID1>
USER1ID2 />
USER1ID3 />
USER2ID1>rzjack</User2ID1>
USER2ID2 />
USER2ID3 />
<RouteName1>TestRte4</RouteName1>
<RouteName2 />
<RouteName3 />
<DispatcherID1>CentranSS</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-02-18T00:15:32.645Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1>2009-02-18T00:34:56.672Z</CloseTime1>
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rbob</PreviousUser1ID1>
<PreviousUser1ID2>rbob</PreviousUser1ID2>
<PreviousUser1ID3 />
<PreviousUser2ID1>rdave</PreviousUser2ID1>
<PreviousUser2ID2>rdave</PreviousUser2ID2>
<PreviousUser2ID3 />
<PreviousRouteName1>TestRoute1</PreviousRouteName1>
<PreviousRouteName2>TestRoute1</PreviousRouteName2>
<PreviousRouteName3 />
<PreviousOpenTime1>2005-02-22T13:50:15.274Z</PreviousOpenTime1>
<PreviousOpenTime2>2005-02-22T13:50:16.564Z</PreviousOpenTime2>
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2005-02-22T14:41:44.278Z</PreviousCloseTime1>
<PreviousCloseTime2>2005-02-22T14:41:45.656Z</PreviousCloseTime2>
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
<State />
<ZIP />
<Country /> 
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-18T00:15:32</OpenDate>
    <CloseDate>2009-02-18T00:34:56</CloseDate>
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
</RESPONSE_REASSIGN_ALL_LOCKS_ROUTE> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.11 Reassign Locks On a Route

This transaction reassigns some locks on an existing route in the database. The locks to be reassigned are specified as route lock records (as defined in the schema) in the input transaction file. This transaction will work even if the route specified in the input transaction does not exist (because it has been deleted after dispatch). The route is determined by what locks are specified in the transaction.

Transaction information required:

  • Route User ID 1
  • Route User ID 2
  • Array of Lock Records to be reassigned on the route:
  • Lock Name
  • Lock Sequence

- Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all locks on the route were reassigned successfully). In this case the error code for the transaction would be RC_OK.

PartialSuccess:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole.

Each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. The only exception to this rule is when an invalid lock name, invalid User ID or invalid lock sequence is specified as input for a route lock record and in this case only the result record is displayed for that particular route lock record.

NOTE: The result record for the whole transaction has as its result 'PartialSuccess' if the transaction is a partial success (some locks were reassigned successfully and the others failed). In the case of partial success, the error code for the transaction would be RC_ERR_REASSIGN_ROUTE_SOME_NOT_REASSIGNED.

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole. No route information is displayed if the transaction failed due to reasons like lack of authorization or failure of any other condition that needs to be satisfied before attempting to reassign the locks on a route.

If an attempt was made to reassign the locks, for each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. The only exception to this rule is when an invalid lock name, invalid User ID or invalid lock sequence is specified as input for a route lock record and in this case only the result record is displayed for that particular route lock record.

NOTE: The result record for the whole transaction has as its result 'Failure' if the transaction is a complete failure (none of the locks were reassigned on the route). In the case of complete failure, the error code for the transaction will vary depending on the error.

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Locks not open, or otherwise invalid.
  • Locks don't exist.
  • Users don't exist, or otherwise invalid.
  • Route doesn't exist or otherwise invalid.
    • Not authorized due to region (region control active).
    • Not authorized due to authorization role.

Example 1 - Success

Input Transaction:

<TRANSACTION_REASSIGN_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteLockRecord>
    <LockName>VLKNoLock</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REASSIGN_LOCKS_ROUTE> 

Output Transaction:

In this example, route TestRte6 does not exist because it has been deleted after lock VLK016 was dispatched on it. The transaction nevertheless succeeds and the details of lock VLK016 are displayed after reassignment.

<RESPONSE_REASSIGN_LOCKS_ROUTE>
    <TRANSACTION_REASSIGN_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteName>TestRte6</RouteName>
    <RouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    <User1ID>rzsamegroup</User1ID>
    <User2ID>rjrb1</User2ID>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_REASSIGN_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Success in reassigning all the specified locks.</Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK016 reassigned successfully.</Description>
    </ResultRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<LockName>VLK016</LockName>
<RecordType>A</RecordType>
 startedDate>2002-11-01T21:18:27</StartDate>
<LastUsedDate>2009-02-18T19:06:15</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>R</LockMode>
<IfDualMode>1</IfDualMode>
<IfLockOpen>0</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>1</IfRoute1Issued>
<IfRoute2Issued>0</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532016</SerialNumber>
<CloseSeal>37</CloseSeal>
<PreviousSeal>37</PreviousSeal>
<RouteSeal1>103</RouteSeal1>
<RouteSeal2>0</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>37</PreviousRouteSeal1>
<PreviousRouteSeal2>0</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
(IssuedComboUser1Seq1>915194</IssuedComboUser1Seq1>
(IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
(IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
(IssuedComboUser2Seq1>174090</IssuedComboUser2Seq1>
(IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
(IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>471623</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>730419</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>17</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
 CustomerID />
<ATMSerialNumber />
/UserDefined1 />
/UserDefined2 />
/UserDefined3 />
/UserDefined4 />
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1>rzsamegroup</User1ID1>
(User1ID2 />
(User1ID3 />
(User2ID1>rjrb1</User2ID1>
(User2ID2 />
(User2ID3 />
 routesName1>TestRte6</ routesName1 
<RouteName2 />
<RouteName3 />
<DispatcherID1>MHG\agoverdhan</DispatcherID1>
<DispatcherID2 />
<DispatcherID3 />
<OpenTime1>2009-02-18T19:06:15.344Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1 xsi:nil="true" />
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rzsamegroup</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1>rjrb1</PreviousUser2ID1>
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1>TestRte6</PreviousRouteName1>
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2009-02-18T18:57:13.345Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2009-02-18T19:05:41.543Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
<State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</LockRecordAndRouteLockRecord>
</RESPONSE_REASSIGN_LOCKS_ROUTE> 

Example 2 - Partial Success

Input Transaction:

<TRANSACTION_REASSIGN_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteLockRecord>
    <LockName>VLKNoLock</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
</Transaction_REASSIGN_LOCKS_ROUTE> 
</RouteLockRecord>
<RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
</RouteLockRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REASSIGN_LOCKS_ROUTE> 

Output Transaction:

In this example, locks VLK014 and VLK015 are reassigned successfully, but lock VLKNoLock is not found. The transaction is returned as a partial success.

<RESPONSE_REASSIGN_LOCKS_ROUTE>
    <TRANSACTION_REASSIGN_LOCKS_ROUTE xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteLockRecord>
    <LockName>VLKNoLock</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <RouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
    </RouteLockRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_REASSIGN_LOCKS_ROUTE>
    <ResultRecord>
    <Result>PartialSuccess</Result>
    <ErrorCode>RC_ERR_REASSIGN_ROUTE_SOME_NOT_REASSIGNED</ErrorCode>
    <Description>Failure in reassigning some of the specified locks.</Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_NOT_FOUND</ErrorCode>
    <Description>Lock not found in lock table.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLKNoLock</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    </LockRecordAndRouteLockRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK014 reassigned successfully.</Description>
    </ResultRecord> 
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <UserID />
    <User2ID>rzjack</User2ID>
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28</StartDate>
    <LastUsedDate>2009-08-05T15:22:40</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532214</SerialNumber>
    <Seal>48</Seal>
    <PreviousSeal>48</PreviousSeal>
    <RouteSeal1>82</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>48</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>724101</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>547868</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>16</AuditCount>
    <GroupName>some gro</GroupName>
    <OriginalSerialNumber>0</OriginalSerialNumber>
    <Description1>aaaaaaaaaaaaaaaa</Description1>
    <Description2>ddddddddddddddd</Description2>
    <Description3>ddddddddddddddd</Description3>
    <Description4>ddddddddddddddd</Description4>
    <CustomerID>ACustomer</CustomerID>
    <ATMSerialNumber>asdfasd</ATMSerialNumber> 
<UserDefined1 />
<UserDefined2 />
<UserDefined3 />
<UserDefined4 />
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1>rzjill</User1ID1>
(User1ID2 />
(User1ID3 />
(User2ID1 />
(User2ID2 />
(User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
DispatcherID1>CentranSS</DispatcherID1>
DispatcherID2 />
DispatcherID3 />
<OpenTime1>2009-08-05T15:22:40.234Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" />
<CloseTime1 xsi:nil="true" />
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rzjill</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1 />
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1>TestRte4</PreviousRouteName1>
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2009-08-05T15:22:30.976Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2009-08-05T15:22:39.677Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
 Address1 />
 Address2 />
 City />
 State />
 ZIP />
 Country />
 KeyCloseSeal>0</KeyCloseSeal>
 LockHardwareModel />
 BankBranchName />
 BankOpenDelay>0</BankOpenDelay>
 BankOpenWindow>0</BankOpenWindow>
 LockActivationStatus />
 LockDispatchStatus />
 </LockRecord>
 </LockRecordAndRouteLockRecord>
 <LockRecordAndRouteLockRecord>
 <ResultRecord>
 <Result>Success</Result> 
<ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK015 reassigned successfully.</Description>
</ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <UserID />
    <UserID>rzjack</UserID>
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T22:17:57</StartDate>
    <LastUsedDate>2009-08-05T15:22:19</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>1</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532015</SerialNumber>
    <Seal>100</Seal>
    <PreviousSeal>100</PreviousSeal>
    <RouteSeal1>98</RouteSeal1>
    <RouteSeal2>104</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>96</PreviousRouteSeal1>
    <PreviousRouteSeal2>100</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>508848</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>255380</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>469956</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>489400</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>6</AuditCount>
    <GroupName />
    <OriginalSerialNumber>0</OriginalSerialNumber>
    <Description1>aaaaaaaaaaaaaaaa</Description1>
    <Description2 />
    <Description3 /> 
<Description4 />
    <CustomerID />
    <ATMSerialNumber />
    <UserDefined1 />
    <UserDefined2 />
    <UserDefined3 />
    <UserDefined4 />
    <Region>TestRegionD</Region>
    <IfUnassignedOpenCall>0</IfUnassignedOpenCall>
    <IfLastRoute1Issued>1</IfLastRoute1Issued>
    <IfLastRoute2Issued>1</IfLastRoute2Issued>
    <IfLastRoute3Issued>0</IfLastRoute3Issued>
    <User1ID1>rzjill</User1ID1>
    <User1ID2>rjrb1</User1ID2>
    <User1ID3 />
    <User2ID1 />
    <User2ID2 />
    <User2ID3 />
    <RouteName1>TestRte4</RouteName1>
    <RouteName2>TestRte4</RouteName2>
    <RouteName3 />
    <DispatcherID1>CentranSS</DispatcherID1>
    <DispatcherID2>CentranSS</DispatcherID2>
    <DispatcherID3 />
    <OpenTime1>2009-08-05T15:22:16.563Z</OpenTime1>
    <OpenTime2>2009-08-05T15:22:19.674Z</OpenTime2>
    <OpenTime3 xsi:nil="true" />
    <CloseTime1 xsi:nil="true" />
    <CloseTime2 xsi:nil="true" />
    <CloseTime3 xsi:nil="true" />
    <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
    <IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
    <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
    <PreviousUser1ID1>rzjill</PreviousUser1ID1>
    <PreviousUser1ID2>rzjill</PreviousUser1ID2>
    <PreviousUser1ID3 />
    <PreviousUser2ID1 />
    <PreviousUser2ID2 />
    <PreviousUser2ID3 />
    <PreviousRouteName1>TestRte4</PreviousRouteName1>
    <PreviousRouteName2>TestRte4</PreviousRouteName2>
    <PreviousRouteName3 />
    <PreviousOpenTime1>2009-08-05T15:22:05.654Z</PreviousOpenTime1>
    <PreviousOpenTime2>2009-08-05T15:22:05.654Z</PreviousOpenTime2>
    <PreviousOpenTime3 xsi:nil="true" />
    <PreviousCloseTime1>2009-08-05T15:22:09.234Z</PreviousCloseTime1>
    <PreviousCloseTime2>2009-08-05T15:22:09.234Z</PreviousCloseTime2>
    <PreviousCloseTime3 xsi:nil="true" />
    <ServiceBranch />
    <Address1 />
    <Address2 />
    <City />
    <State />
    <ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
</LockRecord> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.12 Close Locks on a Route

This transaction closes the specified locks on an existing route in the database. This transaction will work even if the route specified in the input transaction does not exist because it has been deleted after dispatch.

Transaction information required:

- Array of Lock Records to be closed on the route:

  • Lock Name
  • Lock Sequence
  • Close Seal
  • Force Close Flag

- Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'Success' only if the transaction is a complete success (all the locks were closed successfully). In this case the error code for the transaction would be RC_OK.

PartialSuccess:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole and for each lock on the route - a route lock record, lock record and result record.

NOTE: The result record for the whole transaction has as its result 'PartialSuccess' only if the transaction is a partial success (some locks on the route were closed successfully, and some locks failed). In this case the error code for the transaction would be RC_RC_ERR_CLOSE_ROUTE_NOT_ALL_CLOSED.

Failure:

Input transaction, followed by a result record (result, error code and description) for the transaction as a whole. No route information is displayed if the transaction failed due to reasons like lack of authorization, invalid route name, or failure of any other condition that needs to be satisfied before attempting to close a lock on the route.

If an attempt was made to close the locks, for each lock on the route - a route lock record (if found), lock record (if found) and result record is displayed. There are two exceptions to this rule - a) If an invalid lock name, invalid lock sequence is specified in the input route lock record: In this case, only the result record is displayed.

b) If one of the locks on the route is to be force closed but is not a skipped route sequence: In this case, that particular lock's details (result record, lock record and route lock record) alone are displayed.

NOTE: The result record for the whole transaction has as its result 'Failure' if the transaction is a complete failure (none of the locks were closed). The error code for the transaction will vary depending on the reason for the failure.

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Locks not open, or otherwise invalid.
  • Locks don't exist.
  • Close seal invalid.
    • Number of close attempts exceeded.
    • Not authorized due to region (region control active).

• Not authorized due to authorization role.

Example 1 - Failure

Input Transaction:

<TRANSACTION_CLOSE_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CloseRouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>2</LockSequence>
    <CloseSeal>01</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>0</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName></LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>0</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_CLOSE_LOCKS_ROUTE> 

Output Transaction:

In this example, an attempt is made to close a lock with an incorrect close seal, close a lock that is not open, and close a lock with a blank name. The output consists of the details (result record, lock record, route lock record) of each lock.

<RESPONSE_CLOSE_LOCKS_ROUTE>
    <TRANSACTION_CLOSE_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CloseRouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>2</LockSequence>
    <CloseSeal>01</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>0</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName></LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>0</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_CLOSE_LOCKS_ROUTE>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_CLOSE_ROUTE_NOT_ALL_CLOSED</ErrorCode>
    <Description>Failure in closing any of the specified locks. Close route: Errors closing some locks.</Description>
    </ResultRecord> 
<LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_CLOSE_LOCK_SEAL_MISMATCH</ErrorCode>
    <Description>Seal numbers do not match for lock
close.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <User1ID>rjrb1</User1ID>
    <User2ID />
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>2</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T22:17:57.757Z</StartDate>
    <LastUsedDate>2009-08-10T18:58:42.153Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>1</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532015</SerialNumber>
    <Seal>100</Seal>
    <PreviousSeal>100</PreviousSeal>
    <RouteSeal1>98</RouteSeal1>
    <RouteSeal2>104</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>96</PreviousRouteSeal1>
    <PreviousRouteSeal2>100</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>1</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>508848</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>255380</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>469956</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>489400</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
    <PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
    <PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
    <AuditCount>6</AuditCount>
    <GroupName /> 
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
 bromDefined3 />
 UserDefined4 />
 <Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>1</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1>rzjill</User1ID1>
(User1ID2>rjrb1</User1ID2>
(User1ID3 />
(User2ID1 />
(User2ID2 />
 User2ID3 />
 <RouteName1>TestRte4</RouteName1>
 <RouteName2>TestRte4</RouteName2>
 <RouteName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2>CentranSS</DispatcherID2>
 <DispatcherID3 />
 <OpenTime1>2009-08-10T18:57:53.657Z</OpenTime1>
 <OpenTime2>2009-08-10T18:57:55.657Z</OpenTime2>
 <OpenTime3 xsi:nil="true" />
 <CloseTime1>2009-08-10T18:58:42.153Z</CloseTime1>
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2>rzjill</PreviousUser1ID2>
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2>TestRte4</PreviousRouteName2>
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T18:57:41.167Z</PreviousOpenTime1>
 <PreviousOpenTime2>2009-08-10T18:57:41.327Z</PreviousOpenTime2>
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T18:57:45.737Z</PreviousCloseTime1>
 <PreviousCloseTime2>2009-08-10T18:57:45.880Z</PreviousCloseTime2>
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch />
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal>
 <LockHardwareModel />
 <BankBranchName />
 <BankOpenDelay>0</BankOpenDelay> 
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</LockRecordAndRouteLockRecord>
<LockRecordAndRouteLockRecord>
<ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_NOT_OPEN</ErrorCode>
    <Description>Lock not open.</Description>
</ResultRecord>
 routesLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28.343Z</StartDate>
    <LastUsedDate>2009-08-10T18:58:40.217Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532214</SerialNumber>
    <Seal>82</Seal>
    <PreviousSeal>48</PreviousSeal>
    <RouteSeal1>82</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>48</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>724101</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>547868</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
    <PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
    <PreviousComboUser2Seq1>0</PreviousComboUser2Seq1> 
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>17</AuditCount>
<GroupName>some gro</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
<UserDefined2 />
<UserDefined3 />
<UserDefined4 />
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
<User1ID2 />
<User1ID3 />
<User2ID1 />
<User2ID2 />
<User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2 />
 <DispatcherID3 />
 <OpenTime1>2009-08-10T18:58:21.950Z</OpenTime1>
 <OpenTime2 xsi:nil="true" />
 <OpenTime3 xsi:nil="true" />
 <CloseTime1>2009-08-10T18:58:40.217Z</CloseTime1>
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T18:58:10.370Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T18:58:21.057Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 />
 <Address2 />
 <City />
 <State />
 <ZIP />
 <Country />
 <KeyCloseSeal>0</KeyCloseSeal> 
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</LockRecordAndRouteLockRecord>
<LockRecordAndRouteLockRecord>
<ResultRecord>
<Result>Failure</Result>
<ErrorCode>RC_ERR_INVALID_LOCKNAME</ErrorCode>
<Description>Invalid lock name. The lock name is blank.</Description>
</ResultRecord>
</LockRecordAndRouteLockRecord>
</RESPONSE_CLOSE_LOCKS_ROUTE> 

Example 2 - PartialSuccess

Input Transaction:

<TRANSACTION_CLOSE_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CloseRouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>72</CloseSeal>
    <IfForcedClosed>1</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>2</LockSequence>
    <CloseSeal>0</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_CLOSE_LOCKS_ROUTE> 

Output Transaction:

In this example, the first lock has the correct close seal and is closed successfully. The second lock is not open, so it fails.

<RESPONSE_CLOSE_LOCKS_ROUTE>
    <TRANSACTION_CLOSE_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CloseRouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>72</CloseSeal>
    <IfForcedClosed>1</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLK014</LockName>
    <LockSequence>2</LockSequence>
    <CloseSeal>0</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID> 
</TRANSACTION_CLOSE_LOCKS_ROUTE>
<ResultRecord>
    <Result>PartialSuccess</Result>
    <ErrorCode>RC_ERR_CLOSE_ROUTE_NOT_ALL_CLOSED</ErrorCode>
    <Description>Failure in closing some or all of the specified locks. Close route: Errors closing some locks.</Description>
    </ResultRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK015 closed successfully.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK015</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T22:17:57.757Z</StartDate>
    <LastUsedDate>2009-08-10T18:57:55.657Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>1</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532015</SerialNumber>
    <Seal>100</Seal>
    <PreviousSeal>100</PreviousSeal>
    <RouteSeal1>98</RouteSeal1>
    <RouteSeal2>104</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>96</PreviousRouteSeal1>
    <PreviousRouteSeal2>100</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>508848</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>255380</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
    <IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
    <IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
    <PreviousComboUser1Seq1>469956</PreviousComboUser1Seq1>
    <PreviousComboUser1Seq2>489400</PreviousComboUser1Seq2> 
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>6</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
 bromide2 />
 UserDefined3 />
 UserDefined4 />
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>1</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1)rzjill</User1ID1>
(User1ID2)rjrb1</User1ID2>
(User1ID3 />
 User2ID1 />
 User2ID2 />
 User2ID3 />
 RouteName1>TestRte4</RouteName1>
 RouteName2>TestRte4</RouteName2>
 RouteName3 />
 DispatcherID1>CentranSS</DispatcherID1>
 DispatcherID2>CentranSS</DispatcherID2>
 DispatcherID3 />
 OpenTime1>2009-08-10T18:57:53.657Z</OpenTime1>
 OpenTime2>2009-08-10T18:57:55.657Z</OpenTime2>
 OpenTime3 xsi:nil="true" />
 CloseTime1 xsi:nil="true" />
 CloseTime2 xsi:nil="true" />
 CloseTime3 xsi:nil="true" />
 If PreviousRoute1Issued>1</IfPreviousRoute1Issued>
 If PreviousRoute2Issued>1</IfPreviousRoute2Issued>
 If PreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2>rzjill</PreviousUser1ID2>
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2>TestRte4</PreviousRouteName2>
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T18:57:41.167Z</PreviousOpenTime1>
 <PreviousOpenTime2>2009-08-10T18:57:41.327Z</PreviousOpenTime2>
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T18:57:45.737Z</PreviousCloseTime1>
 <PreviousCloseTime2>2009-08-10T18:57:45.880Z</PreviousCloseTime2>
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch />
 Address1 />
 Address2 />
 City />
 State /> 
<ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
    </LockRecord>
    </LockRecordAndRouteLockRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_LOCK_NOT_OPEN</ErrorCode>
    <Description>Lock not open.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID />
    <User2ID />
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>2</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:17:28.343Z</StartDate>
    <LastUsedDate>2009-08-10T18:58:40.217Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>0</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>0</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532214</SerialNumber>
    <Seal>82</Seal>
    <PreviousSeal>48</PreviousSeal>
    <RouteSeal1>82</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>48</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3>
    <TransferReturnCode>0</TransferReturnCode>
    <IssuedComboUser1Seq1>724101</IssuedComboUser1Seq1>
    <IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
    <IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
    <IssuedComboUser2Seq1>0</IssuedComboUser2Seq1> 
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>547868</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>17</AuditCount>
<GroupName>some gro</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaaaa</Description1>
<Description2>ddddddddddddddd</Description2>
<Description3>ddddddddddddddd</Description3>
<Description4>ddddddddddddddd</Description4>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<UserDefined1 />
-secondDefined2 />
-secondDefined3 />
-secondDefined4 />
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1>rzjill</User1ID1>
(User1ID2 />
(User1ID3 />
(User2ID1 />
(User2ID2 />
(User2ID3 />
 routesName1>TestRte4</RouteName1>
 routesName2 />
 routesName3 />
 DispatcherID1>CentranSS</DispatcherID1>
 DispatcherID2 />
 DispatcherID3 />
 OpenTime1>2009-08-10T18:58:21.950Z</OpenTime1>
 OpenTime2 xsi:nil="true" />
 OpenTime3 xsi:nil="true" />
 CloseTime1>2009-08-10T18:58:40.217Z</CloseTime1>
 CloseTime2 xsi:nil="true" />
 CloseTime3 xsi:nil="true" />
 If PreviousRoute1Issued>1</IfPreviousRoute1Issued>
 If PreviousRoute2Issued>0</IfPreviousRoute2Issued>
 If PreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2 />
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2 />
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T18:58:10.370Z</PreviousOpenTime1>
 <PreviousOpenTime2 xsi:nil="true" />
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T18:58:21.057Z</PreviousCloseTime1>
 <PreviousCloseTime2 xsi:nil="true" />
 <PreviousCloseTime3 xsi:nil="true" />
 <ServiceBranch>the new service branch</ServiceBranch>
 <Address1 /> 
<Address2 />
    <City />
    <State />
    <ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
    </LockRecord>
    </LockRecordAndRouteLockRecord>
</RESPONSE_CLOSE_LOCKS_ROUTE> 

Example 3 - Success

Input Transaction:

<TRANSACTION_CLOSE_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CloseRouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>2</LockSequence>
    <CloseSeal>78</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>25</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLKGrpID</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>80</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_CLOSE_LOCKS_ROUTE> 

Output Transaction:

In this example, all of the specified locks are closed successfully.

<RESPONSE_CLOSE_LOCKS_ROUTE>
    <TRANSACTION_CLOSE_LOCKS_ROUTE xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CloseRouteLockRecord>
    <LockName>VLK015</LockName>
    <LockSequence>2</LockSequence>
    <CloseSeal>78</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLK016</LockName>
    <LockSequence>1</LockSequence>
    <CloseSeal>25</CloseSeal>
    <IfForcedClosed>0</IfForcedClosed>
    </CloseRouteLockRecord>
    <CloseRouteLockRecord>
    <LockName>VLKGrpID</LockName>
    </CloseRouteLockRecord>
    </Response>
</RESPONSE_CLOSE_LOCKS_ROUTE> 
<LockSequence>1</LockSequence>
<CloseSeal>80</CloseSeal>
<IfForcedClosed>0</IfForcedClosed>
</CloseRouteLockRecord>
<DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_CLOSE_LOCKS_ROUTE>
<ResultRecord>
<Result>Success</Result>
<ErrorCode>RC_OK</ErrorCode>
<Description>All the specified locks have been closed successfully.</Description>
</ResultRecord>
<LockRecordAndRouteLockRecord>
<ResultRecord>
<Result>Success</Result>
<ErrorCode>RC_OK</ErrorCode>
<Description>Lock VLK015 closed successfully.</Description>
</ResultRecord>
<RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK015</LockName>
<User1ID>rjrb1</User1ID>
<User2ID />
<RouteName />
<OpenDate xsi:nil="true" />
<CloseDate xsi:nil="true" />
<LockSequence>2</LockSequence>
<DispatchOrder>0</DispatchOrder>
<ResultCode>0</ResultCode>
<IfCloseSealDuress>0</IfCloseSealDuress>
<IfCloseSealLowBattery>0</IfCloseSealLowBattery>
</RouteLockRecord>
<LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LockName>VLK015</LockName>
<RecordType>A</RecordType>
 IncreasesDate>2002-11-01T22:17:57.757Z</StartDate>
<LastUsedDate>2009-08-10T18:58:42.153Z</LastUsedDate>
<CustomerNumber>123456</CustomerNumber>
<LockMode>R</LockMode>
<IfDualMode>0</IfDualMode>
<IfLockOpen>0</IfLockOpen>
<IfForcedClosed>0</IfForcedClosed>
<IfRoute1Issued>0</IfRoute1Issued>
<IfRoute2Issued>1</IfRoute2Issued>
<IfRoute3Issued>0</IfRoute3Issued>
<IfNoAlarm>0</IfNoAlarm>
<IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
<IfActivationCall>0</IfActivationCall>
<SerialNumber>532015</SerialNumber>
<Seal>100</Seal>
<PreviousSeal>100</PreviousSeal>
<RouteSeal1>98</RouteSeal1>
<RouteSeal2>104</RouteSeal2>
<RouteSeal3>0</RouteSeal3>
<PreviousRouteSeal1>96</PreviousRouteSeal1>
<PreviousRouteSeal2>100</PreviousRouteSeal2>
<PreviousRouteSeal3>0</PreviousRouteSeal3>
<OpenTries1>0</OpenTries1>
<OpenTries2>2</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>508848</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>255380</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3> 
<IssuedComboUser2Seq1>0</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>469956</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>489400</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>0</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>6</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
<UserDefined3 />
<UserDefined4 />
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>1</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
<User1ID1>rzjill</User1ID1>
 brom1ID2>rjrb1</User1ID2>
 User1ID3 />
 User2ID1 />
 User2ID2 />
 User2ID3 />
 <RouteName1>TestRte4</RouteName1>
 <RouteName2>TestRte4</RouteName2>
 <RouteName3 />
 <DispatcherID1>CentranSS</DispatcherID1>
 <DispatcherID2>CentranSS</DispatcherID2>
 <DispatcherID3 />
 <OpenTime1>2009-08-10T18:57:53.657Z</OpenTime1>
 <OpenTime2>2009-08-10T18:57:55.657Z</OpenTime2>
 <OpenTime3 xsi:nil="true" />
 <CloseTime1>2009-08-10T18:58:42.153Z</CloseTime1>
 <CloseTime2 xsi:nil="true" />
 <CloseTime3 xsi:nil="true" />
 <IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 <IfPreviousRoute2Issued>1</IfPreviousRoute2Issued>
 <IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 <PreviousUser1ID1>rzjill</PreviousUser1ID1>
 <PreviousUser1ID2>rzjill</PreviousUser1ID2>
 <PreviousUser1ID3 />
 <PreviousUser2ID1 />
 <PreviousUser2ID2 />
 <PreviousUser2ID3 />
 <PreviousRouteName1>TestRte4</PreviousRouteName1>
 <PreviousRouteName2>TestRte4</PreviousRouteName2>
 <PreviousRouteName3 />
 <PreviousOpenTime1>2009-08-10T18:57:41.167Z</PreviousOpenTime1>
 <PreviousOpenTime2>2009-08-10T18:57:41.327Z</PreviousOpenTime2>
 <PreviousOpenTime3 xsi:nil="true" />
 <PreviousCloseTime1>2009-08-10T18:57:45.737Z</PreviousCloseTime1>
 <PreviousCloseTime2>2009-08-10T18:57:45.880Z</PreviousCloseTime2>
 <PreviousCloseTime3 xsi:nil="true" /> 
<ServiceBranch />
    <Address1 />
    <Address2 />
    <City />
    <State />
    <ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
    </LockRecord>
    </LockRecordAndRouteLockRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLK016 closed successfully.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <User1ID>rjrb1</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK016</LockName>
    <RecordType>A</RecordType>
    <StartDate>2002-11-01T21:18:27.183Z</StartDate>
    <LastUsedDate>2009-08-10T18:57:55.480Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>532016</SerialNumber>
    <Seal>37</Seal>
    <PreviousSeal>37</PreviousSeal>
    <RouteSeal1>53</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>37</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3>
    <OpenTries1>0</OpenTries1>
    <OpenTries2>0</OpenTries2>
    <OpenTries3>0</OpenTries3> 
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>249094</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>928197</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>631429</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>205616</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>21</AuditCount>
<GroupName />
<OriginalSerialNumber>0</OriginalSerialNumber>
<Description1>aaaaaaaaaaaaaaaaa</Description1>
<Description2 />
<Description3 />
<Description4 />
<CustomerID />
<ATMSerialNumber />
<UserDefined1 />
<UserDefined2 />
 bromo
 UserDefined3 />
 UserDefined4 />
 Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1)rjrb1</User1ID1>
(User1ID2 />
(User1ID3 />
 User2ID1>rzjack</User2ID1>
 User2ID2 />
 User2ID3 />
 RouteName1>TestRte4</RouteName1>
 RouteName2 />
 RouteName3 />
 DispatcherID1>CentranSS</DispatcherID1>
 DispatcherID2 />
 DispatcherID3 />
 OpenTime1>2009-08-10T18:57:55.480Z</OpenTime1>
 OpenTime2 xsi:nil="true" />
 OpenTime3 xsi:nil="true" />
 CloseTime1 xsi:nil="true" />
 CloseTime2 xsi:nil="true" />
 CloseTime3 xsi:nil="true" />
 IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
 IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
 IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
 PreviousUser1ID1>rzjill</PreviousUser1ID1>
 PreviousUser1ID2 />
 PreviousUser1ID3 />
 PreviousUser2ID1>rzdiffgroup</ PreviousUser2ID1>
 PreviousUser2ID2 />
 PreviousUser2ID3 />
 PreviousRouteName1>TestRte4</ PreviousRouteName1>
 PreviousRouteName2 />
 PreviousRouteName3 />
 PreviousOpenTime1>2009-08-10T18:57:41.733Z</ PreviousOpenTime1>
 PreviousOpenTime2 xsi:nil="true" />
 PreviousOpenTime3 xsi:nil="true" />
 PreviousCloseTime1>2009-08- 
10T18:57:46.023Z</PreviousCloseTime1>
    <PreviousCloseTime2 xsi:nil="true" />
    <PreviousCloseTime3 xsi:nil="true" />
    <ServiceBranch>the new service branch</ServiceBranch>
    <Address1 />
    <Address2 />
    <City />
    <State />
    <ZIP />
    <Country />
    <KeyCloseSeal>0</KeyCloseSeal>
    <LockHardwareModel />
    <BankBranchName />
    <BankOpenDelay>0</BankOpenDelay>
    <BankOpenWindow>0</BankOpenWindow>
    <LockActivationStatus />
    <LockDispatchStatus />
    </LockRecord>
    </LockRecordAndRouteLockRecord>
    <LockRecordAndRouteLockRecord>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Lock VLKGrpID closed successfully.</Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLKGrpID</LockName>
    <User1ID>rjrb1</User1ID>
    <User2ID>rzjack</User2ID>
    <RouteName />
    <OpenDate xsi:nil="true" />
    <CloseDate xsi:nil="true" />
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuess>0</IfCloseSealDuess>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <LockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLKGrpID</LockName>
    <RecordType>A</RecordType>
    <StartDate>2004-11-24T19:47:18.000Z</StartDate>
    <LastUsedDate>2009-08-10T18:57:55.303Z</LastUsedDate>
    <CustomerNumber>123456</CustomerNumber>
    <LockMode>R</LockMode>
    <IfDualMode>1</IfDualMode>
    <IfLockOpen>0</IfLockOpen>
    <IfForcedClosed>0</IfForcedClosed>
    <IfRoute1Issued>1</IfRoute1Issued>
    <IfRoute2Issued>0</IfRoute2Issued>
    <IfRoute3Issued>0</IfRoute3Issued>
    <IfNoAlarm>0</IfNoAlarm>
    <IfSecondLineMaintenanceCall>0</IfSecondLineMaintenanceCall>
    <IfActivationCall>0</IfActivationCall>
    <SerialNumber>823456</SerialNumber>
    <Seal>1</Seal>
    <PreviousSeal>1</PreviousSeal>
    <RouteSeal1>144</RouteSeal1>
    <RouteSeal2>0</RouteSeal2>
    <RouteSeal3>0</RouteSeal3>
    <PreviousRouteSeal1>1</PreviousRouteSeal1>
    <PreviousRouteSeal2>0</PreviousRouteSeal2>
    <PreviousRouteSeal3>0</PreviousRouteSeal3> 
<OpenTries1>0</OpenTries1>
<OpenTries2>0</OpenTries2>
<OpenTries3>0</OpenTries3>
<TransferReturnCode>0</TransferReturnCode>
<IssuedComboUser1Seq1>921772</IssuedComboUser1Seq1>
<IssuedComboUser1Seq2>0</IssuedComboUser1Seq2>
<IssuedComboUser1Seq3>0</IssuedComboUser1Seq3>
<IssuedComboUser2Seq1>600975</IssuedComboUser2Seq1>
<IssuedComboUser2Seq2>0</IssuedComboUser2Seq2>
<IssuedComboUser2Seq3>0</IssuedComboUser2Seq3>
<PreviousComboUser1Seq1>481118</PreviousComboUser1Seq1>
<PreviousComboUser1Seq2>0</PreviousComboUser1Seq2>
<PreviousComboUser1Seq3>0</PreviousComboUser1Seq3>
<PreviousComboUser2Seq1>897306</PreviousComboUser2Seq1>
<PreviousComboUser2Seq2>0</PreviousComboUser2Seq2>
<PreviousComboUser2Seq3>0</PreviousComboUser2Seq3>
<AuditCount>3</AuditCount>
<GroupName>aabb</GroupName>
<OriginalSerialNumber>0</OriginalSerialNumber>

Variation
<Description1>123456789_1_3456789_2_3456789_3_3456789</Description1>
<Description2>123456789_1_3456789_2_3456789_3_3456789</Description2>
<Description3>123456789_1_3456789_2_3456789_3_3456789</Description3>
<Description4>123456789_1_3456789_2_3456789_3_3456789</Description4>
<CustomerID>323456789_1_3456789_2_3456789_3_3456789_4_3456789_5_3456789_6_34</Custome
<ATMSerialNumber>123456789_1_3456789_2_3456789_3_3456789_4_3456789_5_3456789_6_34</ATI
<UserIDDefined1>123456789_1_3456789_2_3456789_3_3456789_4_3456789_5_3456789_6_34</UserIDDe
<UserIDDefined2>123456789_1_3456789_2_3456789_3_3456789_4_3456789_5_3456789_6_34</UserIDDe
<UserIDDefined3>123456789_1_3456789_2_3456789_3_3456789_4_3456789_5_3456789_6_34</UserIDDe
<UserIDDefined4>123456789_1_3456789_2_3456789_3_3456789_4_3456789_5_3456789_6_34</UserIDDe
<Region>TestRegionD</Region>
<IfUnassignedOpenCall>0</IfUnassignedOpenCall>
<IfLastRoute1Issued>1</IfLastRoute1Issued>
<IfLastRoute2Issued>0</IfLastRoute2Issued>
<IfLastRoute3Issued>0</IfLastRoute3Issued>
(User1ID1)rjrb1</UserID1>
(User1ID2 />
(User1ID3 />
(User2ID1>rzjack</UserID1>
(User2ID2 />
(User2ID3 />
 routesName1>TestRte4</ routesName1>
 routesName2 />
 routesName3 />
DispatcherID1>CentranSS</DispatcherID1>
DispatcherID2 />
DispatcherID3 />
OpenTime1>2009-08-10T18:57:55.303Z</OpenTime1>
<OpenTime2 xsi:nil="true" />
<OpenTime3 xsi:nil="true" /> 
<CloseTime1 xsi:nil="true" />
<CloseTime2 xsi:nil="true" />
<CloseTime3 xsi:nil="true" />
<IfPreviousRoute1Issued>1</IfPreviousRoute1Issued>
<IfPreviousRoute2Issued>0</IfPreviousRoute2Issued>
<IfPreviousRoute3Issued>0</IfPreviousRoute3Issued>
<PreviousUser1ID1>rzjill</PreviousUser1ID1>
<PreviousUser1ID2 />
<PreviousUser1ID3 />
<PreviousUser2ID1>rzjack</PreviousUser2ID1>
<PreviousUser2ID2 />
<PreviousUser2ID3 />
<PreviousRouteName1>TestRte4</PreviousRouteName1>
<PreviousRouteName2 />
<PreviousRouteName3 />
<PreviousOpenTime1>2009-08-10T18:57:42.937Z</PreviousOpenTime1>
<PreviousOpenTime2 xsi:nil="true" />
<PreviousOpenTime3 xsi:nil="true" />
<PreviousCloseTime1>2009-08-
10T18:57:46.177Z</PreviousCloseTime1>
<PreviousCloseTime2 xsi:nil="true" />
<PreviousCloseTime3 xsi:nil="true" />
<ServiceBranch>the new service branch</ServiceBranch>
<Address1 />
<Address2 />
<City />
<State />
<ZIP />
<Country />
<KeyCloseSeal>0</KeyCloseSeal>
<LockHardwareModel />
<BankBranchName />
<BankOpenDelay>0</BankOpenDelay>
<BankOpenWindow>0</BankOpenWindow>
<LockActivationStatus />
<LockDispatchStatus />
</LockRecord>
</LockRecordAndRouteLockRecord>
</RESPONSE_CLOSE_LOCKS_ROUTE> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.13 Route Table Query

This transaction queries the route table for a set of route records. The Input transaction file contains a query record which in turn contains a set of route fields to create a query from. The route query does not have a 'like search' option.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the route records in the route table are retrieved.

  • Route Name
  • Creation Date range (Creation Date Start and Creation Date End)
  • Customer ID
  • Region Name
  • Dispatcher ID - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Note: Since the route query does not have a "search like" option, all search field values (except Creation Date range fields) must completely match the values of the fields in the database. If the record for route name TestRoute needs to be searched and retrieved, the value of the route name search field has to the TestRoute and not Test or Route or any other substring of TestRoute.

Note: If the Dispatcher belongs to a local region and region control is enabled, only those routes belonging to that particular region and also satisfying the search condition are retrieved. The search condition's region field value is automatically set to the dispatcher's local region even if a different value has already been provided in the query record.

Note: For the Creation Date Range search, both the lower and upper bounds for the search have to be specified i.e. both Creation Date Start and Creation Date End have to be specified. If only Creation Date Start is specified in the query record, that search field will not have any effect on the result.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the route records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation.
  • Database error – failed to open route table.

Example 1 - Success

Input Transaction:

<TRANSACTION_ROUTE_QUERY>
    <RouteQueryRecord>
    <!-- char string -->
    <RouteName>TestRtel</RouteName>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string--> 
<Region>TestRegionA</Region>
<!-- date -->
<CreationDateStart>2004-12-21T00:00:01</CreationDateStart>
<!-- date -->
<CreationDateEnd>2005-01-21T00:00:01</CreationDateEnd>
</RouteQueryRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ROUTE_QUERY>

Output Transaction:

<RESPONSE_ROUTE_QUERY>
    <TRANSACTION_ROUTE_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteQueryRecord>
    <RouteName>TestRtel</RouteName>
    <CustomerID>ACustomer</CustomerID>
    <Region>TestRegionA</Region>
    <CreationDateStart>2004-12-21T00:00:01</CreationDateStart>
    <CreationDateEnd>2005-01-21T00:00:01</CreationDateEnd>
    </RouteQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ROUTE_QUERY>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route record/s found satisfying the search condition.</Description>
</ResultRecord>
 routesRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <RouteName>TestRtel</RouteName>
    <CreationDate>2004-12-22T15:49:18</CreationDate>
    <CustomerID>ACustomer</CustomerID>
    <Region>TestRegionA</Region>
</RouteRecord>
</RESPONSE_ROUTE_QUERY> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_ROUTE_QUERY>
    <RouteQueryRecord>
    <!-- char string -->
    <RouteName>Test</RouteName>
    </RouteQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ROUTE_QUERY> 

Output Transaction:

<RESPONSE_ROUTE_QUERY>
    <TRANSACTION_ROUTE_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteQueryRecord>
    <RouteName>Test</RouteName>
    </RouteQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ROUTE_QUERY>
    <ResultRecord>
    <Result>Success</Result> 
<ErrorCode>RC_OK</ErrorCode>
<Description>No route record found satisfying the search condition.
</Description>
</ResultRecord>
</RESPONSE_ROUTE_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.14 Route Table Query Record Count

This transaction returns the number of records in the route table matching the given query condition. It operates in the same manner as the Route Table Query transaction.

Example 1 - Success
Input Transaction:

<TRANSACTION_ROUTE_QUERY_COUNT>
    <RouteQueryRecord>
    <!-- char string -->
    <Region>TestRegionA</Region>
    </RouteQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ROUTE_QUERY_COUNT> 

Output Transaction:

<RESPONSE_ROUTE_QUERY_COUNT>
    <TRANSACTION_ROUTE_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteQueryRecord>
    <Region>TestRegionA</Region>
    </RouteQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ROUTE_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of route records matching the given query:
2.</Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_ROUTE_QUERY_COUNT> 

Example 2 - Success

Input Transaction:

<TRANSACTION_ROUTE_QUERY_COUNT>
    <RouteQueryRecord>
    <!-- char string -->
    <Region>TestRegionA</Region>
    </RouteQueryRecord>
    <!-- char string -->
    <DispatcherID> SuperUserTestRegionD </DispatcherID>
</TRANSACTION_ROUTE_QUERY_COUNT> 

Output Transaction:

In this example, SuperUserTestRegionD belongs to a local region TestRegionD and therefore replaces TestRegionA as the search field for the query. Only one route in TestRegionD is found.

<RESPONSE_ROUTE_QUERY_COUNT>
    <TRANSACTION_ROUTE_QUERY_COUNT xmlns="http://www.kabamas.com/CentranTransac.xsd">
<RouteQueryRecord>
    <Region>TestRegionA</Region>
</RouteQueryRecord>
<DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_ROUTE_QUERY_COUNT>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of route records matching the given query: 1.
    </Description>
</ResultRecord>
<QueryCount>1</QueryCount>
</RESPONSE_ROUTE_QUERY_COUNT> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.15 Route Lock Table Query

This transaction queries the route lock table for a set of route lock records. The Input transaction file contains a query record which in turn contains a set of route lock fields to create a query from. The route lock query does not have a "search like" option.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the route lock records in the route lock table are retrieved.

  • Lock Name
  • Route Name
  • Lock Sequence
  • User ID (searches for this User ID in both the FLM1ID and FLM2ID route lock record fields)
  • Open Time Date range (Open Date Start and Open Date End)
  • Close Time Date range (Close Date Start and Close Date End)
  • Dispatcher ID - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Note: Since the route lock query does not have a 'like search' option, all search field values (except the Date range fields) must completely match the values of the fields in the database.

Note: If the Dispatcher belongs to a local region and region control is enabled, the search goes through 2 phases. In the first phase, only those route locks satisfying the search condition are retrieved. In the second phase, the region of each retrieved route lock's route is compared against the dispatcher's region and only those that match are displayed by CenTran.

Note: For the Open Date Range search and Close Date Range search, both the lower and upper bounds of the range have to be specified. If only the lower bound (Date Start) or if only the upper bound (Date End) is specified, that search field will be ignored.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the route lock records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation.
  • Database error - failed to open route table.

Example 1 - Success

Input Transaction:

<TRANSACTION_ROUTE_LOCK_QUERY>
    <RouteLockQueryRecord>
    <!-- char string -->
    <RouteName>TestRtel</RouteName>
    <!-- char string -->
    <LockName>VLK020</LockName>
    <!-- char string--> 
<LockSequence>1</LockSequence>
<!-- char string -->
<UserID>rzjohn</UserID>
<!-- date -->
<OpenDateStart>2004-12-21T00:00:01</OpenDateStart>
<!-- date -->
<OpenDateEnd>2004-12-23T00:00:01</OpenDateEnd>
<!-- date -->
<CloseDateStart>2004-12-24T00:00:01</CloseDateStart>
<!-- date -->
<CloseDateEnd>2004-12-26T00:00:01</CloseDateEnd>
</RouteLockQueryRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ROUTE_LOCK_QUERY>

Output Transaction:

<RESPONSE_ROUTE_LOCK_QUERY>
    <TRANSACTION_ROUTE_LOCK_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteLockQueryRecord>
    <RouteName>TestRtel</RouteName>
    <LockName>VLK020</LockName>
    <LockSequence>1</LockSequence>
    <UserID>rzjohn</UserID>
    <OpenDateStart>2004-12-21T00:00:01</OpenDateStart>
    <OpenDateEnd>2004-12-23T00:00:01</OpenDateEnd>
    <CloseDateStart>2004-12-24T00:00:01</CloseDateStart>
    <CloseDateEnd>2004-12-26T00:00:01</CloseDateEnd>
    </RouteLockQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ROUTE_LOCK_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route lock record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK020</LockName>
    <UserID>rzjane</UserID>
    <UserID>rzjohn</UserID>
    <RouteName>TestRtel</RouteName>
    <OpenDate>2004-12-22T15:49:18</OpenDate>
    <CloseDate>2004-12-25T15:49:18</CloseDate>
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
</RESPONSE_ROUTE_LOCK_QUERY> 

Example 2 - Success

Input Transaction:

<TRANSACTION_ROUTE_LOCK_QUERY>
    <!-- route lock query record -->
    <RouteLockQueryRecord> 
</RouteLockQueryRecord>
<!-- char string -->
<DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_ROUTE_LOCK_QUERY> 

Output Transaction:

In this case there are no search fields specified in the route lock query record but the dispatcher belongs to a local region 'TestRegionD'. Therefore, all the locks on routes which belong to TestRegionD are displayed. Here, only those locks on route TestRte4 are retrieved because only TestRte4 belongs to TestRegionD.

<RESPONSE_ROUTE_LOCK_QUERY>
    <TRANSACTION_ROUTE_LOCK_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <RouteLockQueryRecord></RouteLockQueryRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_ROUTE_LOCK_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Route lock record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjack</User1ID>
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-18T16:00:58</OpenDate>
    <CloseDate>2009-02-18T23:57:38</CloseDate>
    <LockSequence>1</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
    <RouteLockRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <LockName>VLK014</LockName>
    <User1ID>rzjill</User1ID>
    <User2ID />
    <RouteName>TestRte4</RouteName>
    <OpenDate>2009-02-18T23:18:29.342Z</OpenDate>
    <CloseDate xsi:nil="true" />
    <LockSequence>2</LockSequence>
    <DispatchOrder>0</DispatchOrder>
    <ResultCode>0</ResultCode>
    <IfCloseSealDuress>0</IfCloseSealDuress>
    <IfCloseSealLowBattery>0</IfCloseSealLowBattery>
    </RouteLockRecord>
</RESPONSE_ROUTE_LOCK_QUERY> 

CenTran 4 XML File Format

Chapter 3 - Route XML Transactions

3.16 Route Lock Table Query Record Count

This transaction returns the number of records in the route lock table matching the given query condition. It operates in the same manner as the Route Lock Table Query transaction.

Example 1 - Success

Input Transaction:

<TRANSACTION_ROUTE_LOCK_QUERY_COUNT>
    <!-- route lock query record -->
    <RouteLockQueryRecord>
    <!-- char string -->
    <RouteName>TestRtel</RouteName>
    <!-- char string -->
    <LockName>VLK018</LockName>
    </RouteLockQueryRecord>
    <!-- char string -->
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_ROUTE_LOCK_QUERY_COUNT> 

Output Transaction:

<RESPONSE_ROUTE_LOCK_QUERY_COUNT>
    <TRANSACTION_ROUTE_LOCK_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RouteLockQueryRecord></RouteLockQueryRecord>
    <!-- char string -->
    <RouteName>TestRtel</RouteName>
    <!-- char string -->
    <LockName>VLK018</LockName>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_ROUTE_LOCK_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of route lock records matching the given query:
2.
    </Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_ROUTE_LOCK_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.1 Change User Name

This transaction renames a user. It is the equivalent of the 'Rename User' operation from a user report in Cencon. It adds a record into the user history table for the old user name. It updates records in the lock log table if the user is a route or flm lock key, and is currently dispatched to a lock. It also updates the route lock table if the user is currently dispatched on a route.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the route lock records in the route lock table are retrieved.

  • Old User ID
  • New User ID
  • Dispatcher ID - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description).

Failure :

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Old user name invalid.
  • New user name invalid or already in use.
  • Not authorized due to region (dispatcher region is local and does not match user region).
    • Not authorized due to authorization role.
  • User is a windows logon user and cannot be renamed because the name is linked to the logon.

Example 1 - Failure

Input Transaction:

<TRANSACTION_CHANGE_USER_NAME>
    <!-- char string -->
    <OldUserID>rzjill</OldUserID>
    <!-- char string -->
    <NewUserID>rzjane</NewUserID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CHANGE_USER_NAME> 

Output Transaction:

The transaction fails because the new User ID already exists in the user database.

<RESPONSE_CHANGE_USER_NAME>
    <TRANSACTION_CHANGE_USER_NAME xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <OldUserID>rzjill</OldUserID>
    <NewUserID>rzjane</NewUserID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CHANGE_USER_NAME>
    <ResultRecord>
    <Result>Failure</Result> 
<ErrorCode>RC_ERR_FAILED_RENAME_USER_ID_
NEW_USER_ID_ALREADY_EXISTS</ErrorCode>
<Description>Error in renaming user rzjill. Failed to rename user.
The new user ID already exists. A user can not be renamed to an
already
existing user ID.
</Description>
</ResultRecord>
</RESPONSE_CHANGE_USER_NAME> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_CHANGE_USER_NAME>
    <!-- char string -->
    <OldUserID>MHG\Arch</OldUserID>
    <!-- char string -->
    <NewUserID>Arch</NewUserID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CHANGE_USER_NAME> 

Output Transaction:

The transaction fails because the User ID to be renamed is a Windows Logon user.

<RESPONSE_CHANGE_USER_NAME>
    <TRANSACTION_CHANGE_USER_NAME xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <OldUserID>MHG\Arch</OldUserID>
    <NewUserID>Arch</NewUserID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CHANGE_USER_NAME>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FAILED_RENAME_USER_ID_IS
    _WINDOWS_LOGON_USER</ErrorCode>
    <Description>Error in renaming user MHG\Arch.
    Failed to rename user. The user is a Windows authentication logon user,
    and the user name must be the same as the Windows logon name to allow the user to be identified.
    </Description>
    </ResultRecord>
</RESPONSE_CHANGE_USER_NAME> 

Example 3 - Success

Input Transaction:

<TRANSACTION_CHANGE_USER_NAME>
    <!-- char string -->
    <OldUserID>rzjill</OldUserID>
    <!-- char string -->
    <NewUserID>rzgail</NewUserID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CHANGE_USER_NAME> 

Output Transaction:

<RESPONSE_CHANGE_USER_NAME>
    <TRANSACTION_CHANGE_USER_NAME xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <OldUserID>rzjill</OldUserID>
    <NewUserID>rzgail</NewUserID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CHANGE_USER_NAME>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>User rzjill has been successfully changed to rzgail.</Description>
    </ResultRecord>
</RESPONSE_CHANGE_USER_NAME> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.2 Read User Data

This transaction reads data for a user. The password field of a user record, if encrypted, is not displayed and is instead left blank.

Transaction information required:

  • User ID (uniquely identifies a user record) or Can Type and Key ID (both these fields together uniquely identify a user record)
  • Dispatcher ID - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the retrieved user record..

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • User doesn't exist.
    • Not authorized due to authorization role.
    • Not authorized due to region (region control active).

Example 1 - Success

Input Transaction:

<TRANSACTION_READ_USER>
    <!-- unsigned byte -->
    <CanType>04</CanType>
    <!-- hex binary -->
    <KeyID>00000023F0D3</KeyID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_USER> 

Output Transaction:

<RESPONSE_READ_USER>
    <TRANSACTION_READ_USER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CanType>04</CanType>
    <KeyID>00000023F0D3</KeyID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_USER>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>User record found and read from the user database.</Description>
    </ResultRecord>
    <UserRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <UserID>rzjohn</UserID>
    <Nickname>Big John from Ohio</Nickname>
    </ResponseRecord>
    </Transaction_READ_USER> 
<GroupName />
    <KeyID>00000023F0D3</KeyID>
    <CanType>04</CanType>
    <SecurityLevel>2</SecurityLevel>
    <NicknameExpirationDate>1969-12-31T23:40:42</NicknameExpirationDate>
    <NumberCombosIssued>0</NumberCombosIssued>
    <NumberTimeWindows>0</NumberTimeWindows>
    <Window1Start>0</Window1Start>
    <Window1Duration>0</Window1Duration>
    <IfWindow1Sun>0</IfWindow1Sun>
    <IfWindow1Mon>0</IfWindow1Mon>
    <IfWindow1Tue>0</IfWindow1Tue>
    <IfWindow1Wed>0</IfWindow1Wed>
    <IfWindow1Thu>0</IfWindow1Thu>
    <IfWindow1Fri>0</IfWindow1Fri>
    <IfWindow1Sat>0</IfWindow1Sat>
    <Window2Start>0</Window2Start>
    <Window2Duration>0</Window2Duration>
    <IfWindow2Sun>0</IfWindow2Sun>
    <IfWindow2Mon>0</IfWindow2Mon>
    <IfWindow2Tue>0</IfWindow2Tue>
    <IfWindow2Wed>0</IfWindow2Wed>
    <IfWindow2Thu>0</IfWindow2Thu>
    <IfWindow2Fri>0</IfWindow2Fri>
    <IfWindow2Sat>0</IfWindow2Sat>
    <Window3Start>0</Window3Start>
    <Window3Duration>0</Window3Duration>
    <IfWindow3Sun>0</IfWindow3Sun>
    <IfWindow3Mon>0</IfWindow3Mon>
    <IfWindow3Tue>0</IfWindow3Tue>
    <IfWindow3Wed>0</IfWindow3Wed>
    <IfWindow3Thu>0</IfWindow3Thu>
    <IfWindow3Fri>0</IfWindow3Fri>
    <IfWindow3Sat>0</IfWindow3Sat>
    <CreationDate>2004-12-22T15:49:18.122Z</CreationDate>
    <DeletionDate xsi:nil="true" />
    <UserPassword />
    <Region>TestRegionA</Region>
    <ServiceBranch />
    <FirstName />
    <MiddleName />
    <LastName />
    <LastUsedDate>2005-04-01T17:19:52</LastUsedDate>
    <AuthorizationRole>Route</AuthorizationRole>
    <BankUserID>0</BankUserID>
    <TotalNumberCombosIssued>0</TotalNumberCombosIssued>
    <MaximumNumberAllowedCombos>0</MaximumNumberAllowedCombos>
    <EnabledStartDate xsi:nil="true" />
    <EnabledEndDate xsi:nil="true" />
    <BankBranchName />
    <CustomerID />
    <UserCombo>0</UserCombo>
    <lfMustChangeCombo>1</lfMustChangeCombo>
    </UserRecord>
</RESPONSE_READ_USER> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_READ_USER>
    <!-- char string --> 
<UserID>rzjoey</UserID>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_USER> 

Output Transaction:

In this example, user rzjoey does not exist in the database.

<RESPONSE_READ_USER>
    <TRANSACTION_READ_USER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UserID>rzjoey</UserID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_USER>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_USER_NOT_FOUND</ErrorCode>
    <Description>User rzjoey not be found in the user database.</Description>
    </ResultRecord>
</RESPONSE_READ_USER> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.3 Update User Data

This transaction updates data for a user. The user fields to be updated have to be specified in the input transaction. Those user fields that are not specified in the input transaction are not changed from their current values. Region for a special supervisor will not be updated because a special supervisor should not be assigned to any region.

Transaction information required:

  • Dispatcher ID - If the ID field value is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.
  • User ID (uniquely identifies a user record) or Can Type and Key ID (both these fields together uniquely identifies a user record)
  • Nickname (Optional) - The new value for this field
    • Group Name (Optional) - The new value for this field
    • Region (Optional) - The new value for this field
    • Service Branch (Optional) - The new value for this field
  • First Name (Optional) - The new value for this field
  • Middle Name (Optional) - The new value for this field
  • Last Name (Optional) - The new value for this field
  • Customer ID (Optional) - The new value for this field
    • Bank Branch Name (Optional) - The new value for this field
    • Bank User ID (Optional) - The new value for this field

The bank branch name and bank user ID fields are updated only if the lock is in bank mode.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the entire updated user record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • User doesn't exist.
  • Invalid Customer ID (Customer ID not found in database).
  • Invalid Region (Region not found in database)
  • Invalid Group Name (Group Name cannot have embedded blanks and it can have only 2, 4 or 6 characters).
  • Invalid Bank Branch (Bank Branch not found in database)
    • Not authorized due to region (region control active).
    • Not authorized due to authorization role.

Example 1 - Failure

Input Transaction:

<TRANSACTION_UPDATE_USER>
    <UpdateUserRecord>
    <!-- char string -->
    <UserID>rzjill</UserID>
    <!-- char string -->
    <Nickname>jill</Nickname>
    <!-- char string --> 
<GroupName>aaab</GroupName>
<!-- char string -->
<Region>TestReg</Region>
</UpdateUserRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_USER> 

Output Transaction:

The transaction fails because the new region does not exist in the region table of the database.

<RESPONSE_UPDATE_USER>
    <TRANSACTION_UPDATE_USER xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <UpdateUserRecord>
    <UserID>rzjill</UserID>
    <Nickname>jill</Nickname>
    <GroupName>aaab</GroupName>
    <Region>TestReg</Region>
    </UpdateUserRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UPDATE_USER>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_CHANGE_REGION_DOESNT_EXIST
    </ErrorCode>
    <Description>New region TestReg does not exist.
    </Description>
    </ResultRecord>
</RESPONSE_UPDATE_USER> 

Example 2 - Success

Input Transaction:

<TRANSACTION_UPDATE_USER>
    <UpdateUserRecord>
    <!-- char string -->
    <UserID>BankUser01</UserID>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ServiceBranch>123</ServiceBranch>
    <!-- char string -->
    <FirstName>David</FirstName>
    <!-- char string -->
    <MiddleName>K</MiddleName>
    <!-- char string -->
    <LastName>Rockefeller</LastName>
    <!-- char string -->
    <BankBranchName>FirstBankBranch</BankBranchName>
    <!-- char string -->
    <BankUserID>2</BankUserID>
    </UpdateUserRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID> 

Output Transaction:

The transaction succeeds and the specified user fields are updated with new values.

<RESPONSE_UPDATE_USER>
    <TRANSACTION_UPDATE_USER xmlns="http://www.kaba-
mas.com/CentranTransac.xsd">
    <UpdateUserRecord>
    <UserID>BankUser01</UserID>
    <CustomerID>ACustomer</CustomerID>
    <ServiceBranch>123</ServiceBranch>
    <FirstName>David</FirstName>
    <MiddleName>K</MiddleName>
    <LastName>Rockefeller</LastName>
    <BankBranchName>FirstBankBranch</BankBranchName>
    <BankUserID>2</BankUserID>
    </UpdateUserRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_USER>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>User data successfully updated.</Description>
</ResultRecord>
 UserRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <UserID>BankUser01</UserID>
    <Nickname>Rockefeller</Nickname>
    <GroupName />
    <KeyID>000000146CD8</KeyID>
    <CanType>84</CanType>
    <SecurityLevel>4</SecurityLevel>
    <NicknameExpirationDate>1969-12-31T23:40:42</NicknameExpirationDate>
    <NumberCombosIssued>0</NumberCombosIssued>
    <NumberTimeWindows>0</NumberTimeWindows>
    <Window1Start>0</Window1Start>
    <Window1Duration>0</Window1Duration>
    <IfWindow1Sun>0</IfWindow1Sun>
    <IfWindow1Mon>0</IfWindow1Mon>
    <IfWindow1Tue>0</IfWindow1Tue>
    <IfWindow1Wed>0</IfWindow1Wed>
    <IfWindow1Thu>0</IfWindow1Thu>
    <IfWindow1Fri>0</IfWindow1Fri>
    <IfWindow1Sat>0</IfWindow1Sat>
    <Window2Start>0</Window2Start>
    <Window2Duration>0</Window2Duration>
    <IfWindow2Sun>0</IfWindow2Sun>
    <IfWindow2Mon>0</IfWindow2Mon>
    <IfWindow2Tue>0</IfWindow2Tue>
    <IfWindow2Wed>0</IfWindow2Wed>
    <IfWindow2Thu>0</IfWindow2Thu>
    <IfWindow2Fri>0</IfWindow2Fri>
    <IfWindow2Sat>0</IfWindow2Sat>
    <Window3Start>0</Window3Start>
    <Window3Duration>0</Window3Duration>
    <IfWindow3Sun>0</IfWindow3Sun>
    <IfWindow3Mon>0</IfWindow3Mon>
    <IfWindow3Tue>0</IfWindow3Tue>
    <IfWindow3Wed>0</IfWindow3Wed>
    <IfWindow3Thu>0</IfWindow3Thu>
    <IfWindow3Fri>0</IfWindow3Fri>
    <IfWindow3Sat>0</IfWindow3Sat>
    <CreationDate>2004-12-22T15:49:18.534Z</CreationDate>
    <DeletionDate xsi:nil="true" />
    <UserPassword />
    <Region>TestRegionD</Region>
    <ServiceBranch>123</ServiceBranch>
    <FirstName>David</FirstName>
    <MiddleName>K</MiddleName>
    <LastName>Rockefeller</LastName>
    <LastUsedDate>2005-04-01T17:19:52.908Z</LastUsedDate> 
<AuthorizationRole>Bank</AuthorizationRole>
<BankUserID>2</BankUserID>
<TotalNumberCombosIssued>0</TotalNumberCombosIssued>
<MaximumNumberAllowedCombos>0</MaximumNumberAllowedCombos>
<EnabledStartDate xsi:nil="true" />
<EnabledEndDate xsi:nil="true" />
<BankBranchName>FirstBankBranch</BankBranchName>
<CustomerID>ACustomer</CustomerID>
<UserCombo>0</UserCombo>
<IfMustChangeCombo>1</IfMustChangeCombo>
</UserRecord>
</RESPONSE_UPDATE_USER> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.4 User Table Query

This transaction queries the user table for a set of user records. The query record in the input transaction file contains a set of user fields to create a query from. The query record also contains a flag indicating if to use like search or exact search. The query transaction attempts to work in a similar fashion as Cencon's 'Find Users' form to search for users to be displayed in a user report.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the user records in the user table are retrieved.

  • User ID
  • Nickname
  • Group Name
    • Key ID
  • Array of user authorization roles (FLM, Supervisor etc)
  • Combo Issued range (Combo Issued Minimum and Combo Issued Maximum)
  • Has Time Window Set flag
  • Has Group Name Access Check flag
  • Creation Date range (Creation Date Start and Creation Date End)
  • Deletion Date range (Deletion Date Start and Deletion Date End - applies to User History and User Archive Table search)
  • Last Used Date range (Last Used Date Start and Last Used Date End)
  • Region Name
  • Customer ID
  • Service Branch
  • First Name
  • Middle Name
  • Last Name
    • Bank Branch Name
  • Search Exact Flag
  • Dispatcher ID (Optional) - This is not part of the query record. If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Note: If the Dispatcher belongs to a local region and region control is enabled, only those users belonging to that particular region and also satisfying the search condition are retrieved. The search condition's region field value is automatically set to the dispatcher's local region even if a different value has already been provided in the query record.

Note: For the Creation Date Range, Deletion Date Range, Last Used Date Range and the Combo Issued Range, both the lower and upper bounds for the search have to be specified.

Note: If string fields such as Nickname or Customer ID are left blank, those fields are left out of the search query (CenTran does not search for user records having an empty Nickname or Customer ID field. This applies to all the query transactions.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the user records (with the encrypted password fields left blank) matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation.
  • Database error – failed to open user table.

Example 1 - Success

Input Transaction:

<TRANSACTION_USER_QUERY>
    <UserQueryRecord>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ServiceBranch>Dieb</ServiceBranch>
    <!-- char string -->
    <FirstName>Query</FirstName>
    <!-- char string -->
    <MiddleName>Q</MiddleName>
    <!-- char string -->
    <LastName>User</LastName>
    <!-- char string -->
    <Nickname>Qu</Nickname>
    <!-- long -->
    <CombosIssuedMinimum>2</CombosIssuedMinimum>
    <!-- long -->
    <CombosIssuedMaximum>4</CombosIssuedMaximum>
    <!-- date -->
    <CreationDateStart>2004-12-21T15:00:00</CreationDateStart>
    <!-- date -->
    <CreationDateEnd>2004-12-23T16:00:00</CreationDateEnd>
    <!-- date -->
    <LastUsedDateStart>2005-03-01T15:00:00</LastUsedDateStart>
    <!-- date -->
    <LastUsedDateEnd>2005-04-02T16:00:00</LastUsedDateEnd>
    <!-- boolean -->
    <IfHasTimeWindow>1</IfHasTimeWindow>
    <!-- char string -->
    <Region>TestRegionD</Region>
    <!-- boolean -->
    <IfSearchExact>1</IfSearchExact>
    </UserQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_QUERY> 

Output Transaction:

<RESPONSE_USER_QUERY>
    <TRANSACTION_USER_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <CustomerID>ACustomer</CustomerID>
    <ServiceBranch>Dieb</ServiceBranch>
    <FirstName>Query</FirstName>
    <MiddleName>Q</MiddleName>
    <LastName>User</LastName>
    <Nickname>Qu</Nickname>
    <CombosIssuedMinimum>2</CombosIssuedMinimum>
    <CombosIssuedMaximum>4</CombosIssuedMaximum>
    <CreationDateStart>2004-12-21T15:00:00</CreationDateStart>
    <CreationDateEnd>2004-12-23T16:00:00</CreationDateEnd>
    <LastUsedDateStart>2005-03-01T15:00:00</LastUsedDateStart>
    <LastUsedDateEnd>2005-04-02T16:00:00</LastUsedDateEnd>
    </Response>
</RESPONSE_USER_QUERY> 
<IfHasTimeWindow>1</IfHasTimeWindow>
<Region>TestRegionD</Region>
<IfSearchExact>1</IfSearchExact>
</UserQueryRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_QUERY>
<ResultRecord>
<Result>Success</Result>
<ErrorCode>RC_OK</ErrorCode>
<Description>User record/s found satisfying the search condition.
</Description>
</ResultRecord>
<UserRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <UserID>TestQueryUser1</UserID>
    <Nickname>Qu</Nickname>
    <GroupName>aa</GroupName>
    <KeyID>000000946CD8</KeyID>
    <CanType>04</CanType>
    <SecurityLevel>2</SecurityLevel>
    <NicknameExpirationDate>1969-12-31T23:40:42</NicknameExpirationDate>
    <NumberCombosIssued>3</NumberCombosIssued>
    <NumberTimeWindows>1</NumberTimeWindows>
    <Window1Start>80</Window1Start>
    <Window1Duration>90</Window1Duration>
    <IfWindow1Sun>0</IfWindow1Sun>
    <IfWindow1Mon>1</IfWindow1Mon>
    <IfWindow1Tue>1</IfWindow1Tue>
    <IfWindow1Wed>0</IfWindow1Wed>
    <IfWindow1Thu>0</IfWindow1Thu>
    <IfWindow1Fri>0</IfWindow1Fri>
    <IfWindow1Sat>0</IfWindow1Sat>
    <Window2Start>0</Window2Start>
    <Window2Duration>0</Window2Duration>
    <IfWindow2Sun>0</IfWindow2Sun>
    <IfWindow2Mon>0</IfWindow2Mon>
    <IfWindow2Tue>0</IfWindow2Tue>
    <IfWindow2Wed>0</IfWindow2Wed>
    <IfWindow2Thu>0</IfWindow2Thu>
    <IfWindow2Fri>0</IfWindow2Fri>
    <IfWindow2Sat>0</IfWindow2Sat>
    <Window3Start>0</Window3Start>
    <Window3Duration>0</Window3Duration>
    <IfWindow3Sun>0</IfWindow3Sun>
    <IfWindow3Mon>0</IfWindow3Mon>
    <IfWindow3Tue>0</IfWindow3Tue>
    <IfWindow3Wed>0</IfWindow3Wed>
    <IfWindow3Thu>0</IfWindow3Thu>
    <IfWindow3Fri>0</IfWindow3Fri>
    <IfWindow3Sat>0</IfWindow3Sat>
    <CreationDate>2004-12-22T15:49:18.765Z</CreationDate>
    <DeletionDate xsi:nil="true" />
    <UserPassword />
    <Region>TestRegionD</Region>
    <ServiceBranch>Dieb</ServiceBranch>
    <FirstName>Query</FirstName>
    <MiddleName>Q</MiddleName>
    <LastName>User</LastName>
    <LastUsedDate>2005-04-01T17:19:52.763Z</LastUsedDate>
    <AuthorizationRole>Route</AuthorizationRole>
    <BankUserID>0</BankUserID>
    <TotalNumberCombosIssued>0</TotalNumberCombosIssued>
    <MaximumNumberAllowedCombos>0</MaximumNumberAllowedCombos>
    <EnabledStartDate xsi:nil="true" />
    <EnabledEndDate xsi:nil="true" /> 
<BankBranchName />
    <CustomerID>ACustomer</CustomerID>
    <UserCombo>0</UserCombo>
    <IfMustChangeCombo>1</IfMustChangeCombo>
    </UserRecord>
</RESPONSE_USER_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.5 User Table Query Record Count

This transaction returns the number of records in the user table matching the given query condition. This transaction uses the same format as the User Table Query transaction. Note that you can search for any of the user database columns. The specified search items are "anded" together for the query.

Example 1 - Success

Input Transaction:

<TRANSACTION_USER_QUERY_COUNT>
    <UserQueryRecord>
    <!-- char string -->
    <Region>TestRegionD</Region>
    <!-- List of strings -->
    <ListAuthorizationRoles>
    <AuthorizationRole>FLM</AuthorizationRole>
    <AuthorizationRole>Bank</AuthorizationRole>
    <AuthorizationRole>Supervisor</AuthorizationRole>
    </ListAuthorizationRoles>
    </UserQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_QUERY_COUNT>

Output Transaction:

In this example, the output indicates that there are 4 FLM/Bank/Supervisor users in region TestRegionD.

<RESPONSE_USER_QUERY_COUNT>
    <TRANSACTION_USER_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <Region>TestRegionD</Region>
    <ListAuthorizationRoles>
    <AuthorizationRole>FLM</AuthorizationRole>
    <AuthorizationRole>Bank</AuthorizationRole>
    <AuthorizationRole>Supervisor</AuthorizationRole>
    </ListAuthorizationRoles>
    </UserQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_USER_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of user records matching the given query: 4.
    </Description>
    </ResultRecord>
    <QueryCount>4</QueryCount>
</RESPONSE_USER_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.6 User History Table Query

This transaction operates in the same manner as the User Table Query, but is applied against the User History Table.

Example 1 - Success

Input Transaction:

<TRANSACTION_USER_HISTORY_QUERY>
    <UserQueryRecord>
    <!-- char string -->
    <CustomerID>Cust</CustomerID>
    <!-- char string -->
    <ServiceBranch>D</ServiceBranch>
    <!-- date -->
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <!-- date -->
    <DeletionDateEnd>2007-04-02T16:00:00</DeletionDateEnd>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </UserQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_HISTORY_QUERY> 

Output Transaction:

Here, all records in the user history table which have Customer ID like 'Cust' (If Search Exact flag is set to false), Service Branch like 'D' (If Search Exact flag is set to false) and Deletion Date between 2005-03-01 15:00:00 and 2007-04-02 16:00:00 are retrieved. There are two records which match the search condition. The actual Customer ID in these two records is 'ACustomer' and the actual service branch in these two records is 'Dieb'.

<RESPONSE_USER_HISTORY_QUERY>
    <TRANSACTION_USER_HISTORY_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <CustomerID>Cust</CustomerID>
    <ServiceBranch>D</ServiceBranch>
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <DeletionDateEnd>2007-04-02T16:00:00</DeletionDateEnd>
    <IfSearchExact>0</IfSearchExact>
    </UserQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_USER_HISTORY_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>User history record/s found satisfying the search condition.</Description>
    </ResultRecord>
    <UserRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <UserID>TestQueryUser1</UserID>
    <Nickname>Qu</Nickname>
    <GroupName>aa</GroupName>
    <KeyID>000000946CD8</KeyID>
    <CanType>04</CanType>
    <SecurityLevel>2</SecurityLevel> 
<NicknameExpirationDate>1969-12-31T23:40:42</NicknameExpirationDate>
<NumberCombosIssued>3</NumberCombosIssued>
<NumberTimeWindows>1</NumberTimeWindows>
<Window1Start>80</Window1Start>
<Window1Duration>90</Window1Duration>
<IfWindow1Sun>0</IfWindow1Sun>
<IfWindow1Mon>1</IfWindow1Mon>
<IfWindow1Tue>1</IfWindow1Tue>
<IfWindow1Wed>0</IfWindow1Wed>
<IfWindow1Thu>0</IfWindow1Thu>
<IfWindow1Fri>0</IfWindow1Fri>
<IfWindow1Sat>0</IfWindow1Sat>
<Window2Start>0</Window2Start>
<Window2Duration>0</Window2Duration>
<IfWindow2Sun>0</IfWindow2Sun>
<IfWindow2Mon>0</IfWindow2Mon>
<IfWindow2Tue>0</IfWindow2Tue>
<IfWindow2Wed>0</IfWindow2Wed>
<IfWindow2Thu>0</IfWindow2Thu>
<IfWindow2Fri>0</IfWindow2Fri>
<IfWindow2Sat>0</IfWindow2Sat>
<Window3Start>0</Window3Start>
<Window3Duration>0</Window3Duration>
<IfWindow3Sun>0</IfWindow3Sun>
<IfWindow3Mon>0</IfWindow3Mon>
<IfWindow3Tue>0</IfWindow3Tue>
<IfWindow3Wed>0</IfWindow3Wed>
<IfWindow3Thu>0</IfWindow3Thu>
<IfWindow3Fri>0</IfWindow3Fri>
<IfWindow3Sat>0</IfWindow3Sat>
<CreationDate>2004-12-22T15:49:18</CreationDate>
<DeletionDate>2005-12-22T15:49:18</DeletionDate>
<UserPassword />
<Region>TestRegionD</Region>
<ServiceBranch>Dieb</ServiceBranch>
<FirstName>Query</FirstName>
<MiddleName>Q</MiddleName>
<LastName>User</LastName>
<LastUsedDate>2005-04-01T17:19:52</LastUsedDate>
<AuthorizationRole>Route</AuthorizationRole>
<BankUserID>0</BankUserID>
<TotalNumberCombosIssued>0</TotalNumberCombosIssued>
<MaximumNumberAllowedCombos>0</MaximumNumberAllowedCombos>
<EnabledStartDate xsi:nil="true" />
<EnabledEndDate xsi:nil="true" />
<BankBranchName />
<CustomerID>ACustomer</CustomerID>
<UserCombo>0</UserCombo>
<lfMustChangeCombo>1</lfMustChangeCombo>
</UserRecord>
<UserRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<UserID>TestQueryUser1</UserID>
<Nickname>Qu</Nickname>
<GroupName>aa</GroupName>
<KeyID>000000946CD8</KeyID>
<CanType>04</CanType>
<SecurityLevel>2</SecurityLevel>
<NicknameExpirationDate>1969-12-31T23:40:42</NicknameExpirationDate>
<NumberCombosIssued>3</NumberCombosIssued>
<NumberTimeWindows>1</NumberTimeWindows>
<Window1Start>80</Window1Start>
<Window1Duration>90</Window1Duration>
<lfWindow1Sun>0</lfWindow1Sun>
<lfWindow1Mon>1</lfWindow1Mon> 
<IfWindow1Tue>1</IfWindow1Tue>
<IfWindow1Wed>0</IfWindow1Wed>
<IfWindow1Thu>0</IfWindow1Thu>
<IfWindow1Fri>0</IfWindow1Fri>
<IfWindow1Sat>0</IfWindow1Sat>
<Window2Start>0</Window2Start>
<Window2Duration>0</Window2Duration>
<IfWindow2Sun>0</IfWindow2Sun>
<IfWindow2Mon>0</IfWindow2Mon>
<IfWindow2Tue>0</IfWindow2Tue>
<IfWindow2Wed>0</IfWindow2Wed>
<IfWindow2Thu>0</IfWindow2Thu>
<IfWindow2Fri>0</IfWindow2Fri>
<IfWindow2Sat>0</IfWindow2Sat>
<Window3Start>0</Window3Start>
<Window3Duration>0</Window3Duration>
<IfWindow3Sun>0</IfWindow3Sun>
<IfWindow3Mon>0</IfWindow3Mon>
<IfWindow3Tue>0</IfWindow3Tue>
<IfWindow3Wed>0</IfWindow3Wed>
<IfWindow3Thu>0</IfWindow3Thu>
<IfWindow3Fri>0</IfWindow3Fri>
<IfWindow3Sat>0</IfWindow3Sat>
<CreationDate>2005-04-02T15:49:18</CreationDate>
<DeletionDate>2006-12-22T15:49:18</DeletionDate>
<UserPassword />
<Region>TestRegionD</Region>
<ServiceBranch>Dieb</ServiceBranch>
<FirstName>Query</FirstName>
<MiddleName>Q</MiddleName>
<LastName>User</LastName>
<LastUsedDate>2005-04-02T17:19:52</LastUsedDate>
<AuthorizationRole>Route</AuthorizationRole>
<BankUserID>0</BankUserID>
<TotalNumberCombosIssued>0</TotalNumberCombosIssued>
<MaximumNumberAllowedCombos>0</MaximumNumberAllowedCombos>
<EnabledStartDate xsi:nil="true" />
<EnabledEndDate xsi:nil="true" />
<BankBranchName />
<CustomerID>ACustomer</CustomerID>
<UserCombo>0</UserCombo>
<lfMustChangeCombo>1</lfMustChangeCombo>
</UserRecord>
</RESPONSE_USER_HISTORY_QUERY> 

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.7 User History Table Query Record Count

This transaction operates in the same manner as the User Table Query Record Count, but is applied against the User History Table.

Example 1 - Success

Input Transaction:

<TRANSACTION_USER_HISTORY_QUERY_COUNT>
    <UserQueryRecord>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ServiceBranch>D</ServiceBranch>
    <!-- date -->
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <!-- date -->
    <DeletionDateEnd>2007-04-02T16:00:00</DeletionDateEnd>
    <!-- bool -->
    <IfSearchExact>1</IfSearchExact>
    </UserQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_HISTORY_QUERY_COUNT> 

Output Transaction:

In this transaction, the Search Exact Flag has been set to true and there are no user history records with Service Branch equal to 'D'. Therefore the query count is 0.

<RESPONSE_USER_HISTORY_QUERY_COUNT>
    <TRANSACTION_USER_HISTORY_QUERY_COUNT xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <CustomerID>ACustomer</CustomerID>
    <ServiceBranch>D</ServiceBranch>
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <DeletionDateEnd>2007-04-02T16:00:00</DeletionDateEnd>
    <IfSearchExact>1</IfSearchExact>
    </UserQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_USER_HISTORY_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of user history records matching the given query: 0.
    </Description>
    </ResultRecord>
    <QueryCount>0</QueryCount>
</RESPONSE_USER_HISTORY_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.8 User Archive Table Query

This transaction operates in the same manner as the User Table Query, but is applied against the User Archive Table.

Example 1 - Success

Input Transaction:

<TRANSACTION_USER_ARCHIVE_QUERY>
    <UserQueryRecord>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ServiceBranch>Dieb</ServiceBranch>
    <!-- date -->
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <!-- date -->
    <DeletionDateEnd>2006-04-02T16:00:00</DeletionDateEnd>
    </UserQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_ARCHIVE_QUERY> 

Output Transaction:

<RESPONSE_USER_ARCHIVE_QUERY>
    <TRANSACTION_USER_ARCHIVE_QUERY xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <CustomerID>ACustomer</CustomerID>
    <ServiceBranch>Dieb</ServiceBranch>
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <DeletionDateEnd>2006-04-02T16:00:00</DeletionDateEnd>
    </UserQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_USER_ARCHIVE_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>User archive record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <UserRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <UserID>TestQueryUser1</UserID>
    <Nickname>Qu</Nickname>
    <GroupName>aa</GroupName>
    <KeyID>000000946CD8</KeyID>
    <CanType>04</CanType>
    <SecurityLevel>2</SecurityLevel>
    <NicknameExpirationDate>1969-12-31T23:40:42</NicknameExpirationDate>
    <NumberCombosIssued>3</NumberCombosIssued>
    <NumberTimeWindows>1</NumberTimeWindows>
    <Window1Start>80</Window1Start>
    <Window1Duration>90</Window1Duration>
    <IfWindow1Sun>0</IfWindow1Sun>
    <IfWindow1Mon>1</IfWindow1Mon>
    </Response>

</RESPONSE 
<IfWindow1Tue>1</IfWindow1Tue>
<IfWindow1Wed>0</IfWindow1Wed>
<IfWindow1Thu>0</IfWindow1Thu>
<IfWindow1Fri>0</IfWindow1Fri>
<IfWindow1Sat>0</IfWindow1Sat>
<Window2Start>0</Window2Start>
<Window2Duration>0</Window2Duration>
<IfWindow2Sun>0</IfWindow2Sun>
<IfWindow2Mon>0</IfWindow2Mon>
<IfWindow2Tue>0</IfWindow2Tue>
<IfWindow2Wed>0</IfWindow2Wed>
<IfWindow2Thu>0</IfWindow2Thu>
<IfWindow2Fri>0</IfWindow2Fri>
<IfWindow2Sat>0</IfWindow2Sat>
<Window3Start>0</Window3Start>
<Window3Duration>0</Window3Duration>
<IfWindow3Sun>0</IfWindow3Sun>
<IfWindow3Mon>0</IfWindow3Mon>
<IfWindow3Tue>0</IfWindow3Tue>
<IfWindow3Wed>0</IfWindow3Wed>
<IfWindow3Thu>0</IfWindow3Thu>
<IfWindow3Fri>0</IfWindow3Fri>
<IfWindow3Sat>0</IfWindow3Sat>
<CreationDate>2004-12-22T15:49:18</CreationDate>
<DeletionDate>2005-12-22T15:49:18</DeletionDate>
<UserPassword />
<Region>TestRegionD</Region>
<ServiceBranch>Dieb</ServiceBranch>
<FirstName>Query</FirstName>
<MiddleName>Q</MiddleName>
<LastName>User</LastName>
<LastUsedDate>2005-04-01T17:19:52</LastUsedDate>
<AuthorizationRole>Route</AuthorizationRole>
<BankUserID>0</BankUserID>
<TotalNumberCombosIssued>0</TotalNumberCombosIssued>
<MaximumNumberAllowedCombos>0</MaximumNumberAllowedCombos>
<EnabledStartDate xsi:nil="true" />
<EnabledEndDate xsi:nil="true" />
<BankBranchName />
<CustomerID>ACustomer</CustomerID>
<UserCombo>0</UserCombo>
<lfMustChangeCombo>1</lfMustChangeCombo>
</UserRecord>
</RESPONSE_USER_ARCHIVE_QUERY> 

Example 2 - Success

Input Transaction:

<TRANSACTION_USER_ARCHIVE_QUERY>
 UserQueryRecord>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ServiceBranch>Dieb</ServiceBranch>
    <!-- date -->
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <!-- date -->
    <DeletionDateEnd>2006-04-02T16:00:00</DeletionDateEnd>
</UserQueryRecord>
    <!-- char string -->
    <DispatcherID>SuperUserLocalRegion</DispatcherID>
</TRANSACTION_USER_ARCHIVE_QUERY> 

Output Transaction:

The dispatcher's region is local in scope and does not match the region of the user TestQueryUser1 (see example 1). Therefore no records are returned by the search query.

<RESPONSE_USER_ARCHIVE_QUERY>
    <TRANSACTION_USER_ARCHIVE_QUERY xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <CustomerID>ACustomer</CustomerID>
    <ServiceBranch>Dieb</ServiceBranch>
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <DeletionDateEnd>2006-04-02T16:00:00</DeletionDateEnd>
    </UserQueryRecord>
    <DispatcherID>SuperUserLocalRegion</DispatcherID>
    </TRANSACTION_USER_ARCHIVE_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>No user archive record found satisfying the search condition.
    </Description>
    </ResultRecord>
</RESPONSE_USER_ARCHIVE_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 4 - User XML Transactions

4.9 User Archive Table Query Record Count

This transaction operates in the same manner as the User Table Query Record Count, but is applied against the User Archive Table.

Example 1 - Success

Input Transaction:

<TRANSACTION_USER_ARCHIVE_QUERY_COUNT>
    <UserQueryRecord>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ServiceBranch>Dieb</ServiceBranch>
    <!-- date -->
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <!-- date -->
    <DeletionDateEnd>2006-04-02T16:00:00</DeletionDateEnd>
    </UserQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_USER_ARCHIVE_QUERY_COUNT> 

Output Transaction:

<RESPONSE_USER_ARCHIVE_QUERY_COUNT>
    <TRANSACTION_USER_ARCHIVE_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UserQueryRecord>
    <CustomerID>ACustomer</CustomerID>
    <ServiceBranch>Dieb</ServiceBranch>
    <DeletionDateStart>2005-03-01T15:00:00</DeletionDateStart>
    <DeletionDateEnd>2006-04-02T16:00:00</DeletionDateEnd>
    </UserQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_USER_ARCHIVE_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of user archive records matching the given query: 1.
    </Description>
    </ResultRecord>
    <QueryCount>1</QueryCount>
</RESPONSE_USER_ARCHIVE_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 5 - Customer XML Transactions

5.1 Add a Customer

This transaction adds a customer to the database. If the customer exists, its data can be overwritten if the allow overwrite flag is set in the input transaction file.

Transaction information required:

  • Customer ID
  • Customer Number
  • Name
  • Address 1
  • Address 2
  • City
  • State
  • ZIP Code
    • Service Branch
  • Line Branch
  • Country
  • Telephone Number
  • FAX Number
    • Cell Phone Number
  • Point Of Contact Information
  • Email Information
  • Description
  • Flag to allow overwrite of existing customer.
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description).

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Invalid Customer ID
  • Customer already exists but the flag to allow overwrite is not set
    • Not authorized due to authorization role

Example 1 - Success

Input Transaction:

<TRANSACTION_ADD_CUSTOMER>
    <CustomerRecord>
    <!-- char string -->
    <CustomerID>123456789</CustomerID>
    <!-- integer -->
    <CustomerNumber>777</CustomerNumber>
    <!-- char string -->
    <CustomerName>AG</CustomerName>
    <!-- char string -->
    <CustomerAddress1>888 Press Avenue</CustomerAddress1> 
<!-- char string -->
<CustomerAddress2>Apt 121</CustomerAddress2>
<!-- char string -->
<CustomerCity>Lexington</CustomerCity>
<!-- char string -->
<CustomerState>KY</CustomerState>
<!-- char string -->
<CustomerZIP>40508</CustomerZIP>
<!-- char string -->
<ServiceBranch>Newton Pike</ServiceBranch>
<!-- char string -->
<LineBranch>Pike Newton</LineBranch>
<!-- char string -->
<CustomerCountry>US</CustomerCountry>
<!-- char string -->
<Telephone>(234)123-4567</Telephone>
<!-- char string -->
<Fax>(234)123-1234</Fax>
<!-- char string -->
<Cell>(123)123-1234</Cell>
<!-- char string -->
<PointOfContact>Mas Hamilton</PointOfContact>
<!-- char string -->
<Email>abc@kml.kaba.com</Email>
<!-- char string -->
<Description>Attempt at adding/updating customer record</Description>
</CustomerRecord>
<!-- bool -->
<lfAllowOverwrite>1</lfAllowOverwrite>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_CUSTOMER>

Output Transaction:

The customer is added successfully to the customer table in the database. The output transaction has the original input transaction (TRANSACTION_ADD_CUSTOMER) and a result record (indicating success).

<RESPONSE_ADD_CUSTOMER>
    <TRANSACTION_ADD_CUSTOMER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CustomerRecord>
    <CustomerID>123456789</CustomerID>
    <CustomerNumber>777</CustomerNumber>
    <CustomerName>AG</CustomerName>
    <CustomerAddress1>888 Press Avenue</CustomerAddress1>
    <CustomerAddress2>Apt 121</CustomerAddress2>
    <CustomerCity>Lexington</CustomerCity>
    <CustomerState>KY</CustomerState>
    <CustomerZIP>40508</CustomerZIP>
    <ServiceBranch>Newton Pike</ServiceBranch>
    <LineBranch>Pike Newton</LineBranch>
    <CustomerCountry>US</CustomerCountry>
    <Telephone>(234)123-4567</Telephone>
    <Fax>(234)123-1234</Fax>
    <Cell>(123)123-1234</Cell>
    <PointOfContact>Mas Hamilton</PointOfContact>
    <Email>abc@kml.kaba.com</Email>
    <Description>Attempt at adding/updating customer record</Description>
    </CustomerRecord>
    <IfAllowOverwrite>1</IfAllowOverwrite> 
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_CUSTOMER>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Customer 123456789 added successfully to the database.
    </Description>
    </ResultRecord>
</RESPONSE_ADD_CUSTOMER> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_ADD_CUSTOMER>
    <CustomerRecord>
    <!-- char string -->
    <CustomerID>123456789</CustomerID>
    <!-- integer -->
    <CustomerNumber>777</CustomerNumber>
    <!-- char string -->
    <CustomerName>AG</CustomerName>
    <!-- char string -->
    <CustomerAddress1>888 Press Avenue</CustomerAddress1>
    <!-- char string -->
    <CustomerAddress2>Apt 121</CustomerAddress2>
    <!-- char string -->
    <CustomerCity>Lexington</CustomerCity>
    <!-- char string -->
    <CustomerState>KY</CustomerState>
    <!-- char string -->
    <CustomerZIP>40508</CustomerZIP>
    <!-- char string -->
    <ServiceBranch>Newton Pike</ServiceBranch>
    <!-- char string -->
    <LineBranch>Pike Newton</LineBranch>
    <!-- char string -->
    <CustomerCountry>US</CustomerCountry>
    <!-- char string -->
    <Telephone>(234)123-4567</Telephone>
    <!-- char string -->
    <Fax>(234)123-1234</Fax>
    <!-- char string -->
    <Cell>(123)123-1234</Cell>
    <!-- char string -->
    <PointOfContact>Mas Hamilton</PointOfContact>
    <!-- char string -->
    <Email>abc@kml.kaba.com</Email>
    <!-- char string -->
    <Description>Attempt at adding/updating customer record</Description>
    </CustomerRecord>
    <!-- bool -->
    <lfAllowOverwrite>0</lfAllowOverwrite>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ADD_CUSTOMER> 

Output Transaction:

In this example, Customer ID 123456789 already exists in the customer table but the overwrite flag is not set and therefore the transaction fails.

<RESPONSE_ADD_CUSTOMER>
    <TRANSACTION ADD CUSTOMER xmlns="http://www.kaba-
mas.com/CentranTransac.xsd">
    <CustomerRecord>
    <CustomerID>123456789</CustomerID>
    <CustomerNumber>777</CustomerNumber>
    <CustomerName>AG</CustomerName>
    <CustomerAddress1>888 Press Avenue</CustomerAddress1>
    <CustomerAddress2>Apt 121</CustomerAddress2>
    <CustomerCity>Lexington</CustomerCity>
    <CustomerState>KY</CustomerState>
    <CustomerZIP>40508</CustomerZIP>
    <ServiceBranch>Newton Pike</ServiceBranch>
    <LineBranch>Pike Newton</LineBranch>
    <CustomerCountry>US</CustomerCountry>
    <Telephone>(234)123-4567</Telephone>
    <Fax>(234)123-1234</Fax>
    <Cell>(123)123-1234</Cell>
    <PointOfContact>Mas Hamilton</PointOfContact>
    <Email>abc@kml.kaba.com</Email>
    <Description>Attempt at adding/updating customer record
    </Description>
    </CustomerRecord>
    <IfAllowOverwrite>0</IfAllowOverwrite>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_ADD_CUSTOMER>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_FAILED_ADD_CUSTOMER_ALREADY_EXISTS</ErrorCode>
    <Description>Customer 123456789 already exists. Flag to allow overwriting of existing customer not set.
    </Description>
    </ResultRecord>
</RESPONSE_ADD_CUSTOMER> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 5 - Customer XML Transactions

5.2 Read a Customer

This transaction reads a customer from the database.

Transaction information required:

  • Customer ID
  • Dispatcher ID (Optional) – If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the customer record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Customer does not exist
    • Not authorized due to authorization role

Example 1 - Success

Input Transaction:

<TRANSACTION_READ_CUSTOMER>
    <!-- char string -->
    <CustomerID>123456789</CustomerID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_READ_CUSTOMER> 

Output Transaction:

<RESPONSE_READ_CUSTOMER>
    <TRANSACTION_READ_CUSTOMER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CustomerID>123456789</CustomerID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_READ_CUSTOMER>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Customer record found and read from the database table.</Description>
    </ResultRecord>
    <CustomerRecord xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CustomerID>123456789</CustomerID>
    <CustomerNumber>777</CustomerNumber>
    <CustomerName>AG</CustomerName>
    <CustomerAddress1>888 Press Avenue</CustomerAddress1>
    <CustomerAddress2>Apt 121</CustomerAddress2>
    <CustomerCity>Lexington</CustomerCity>
    <CustomerState>KY</CustomerState>
    <CustomerZIP>40508</CustomerZIP> 
<ServiceBranch>Newton Pike</ServiceBranch>
<LineBranch>Pike Newton</LineBranch>
<CustomerCountry>US</CustomerCountry>
<Telephone>(234)123-4567</Telephone>
<Fax>(234)123-1234</Fax>
<Cell>(123)123-1234</Cell>
<PointOfContact>Mas Hamilton</PointOfContact>
<Email>abc@kml.kaba.com</Email>
<Description>Attempt at adding/updating customer record</Description>
</CustomerRecord>
</RESPONSE_READ_CUSTOMER> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_READ_CUSTOMER>
    <!-- char string -->
    <CustomerID>123456789</CustomerID>
    <!-- char string -->
    <DispatcherID>rzjill</DispatcherID>
</TRANSACTION_READ_CUSTOMER> 

Output Transaction:

Here, dispatcher rzjill is not authorized to read customer data.

<RESPONSE_READ_CUSTOMER>
    <TRANSACTION_READ_CUSTOMER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CustomerID>123456789</CustomerID>
    <DispatcherID>rzjill</DispatcherID>
    </TRANSACTION_READ_CUSTOMER>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_NOT_AUTHORIZED_TO_DO_OPERATION</ErrorCode>
    <Description>Dispatcher not authorized to perform this operation: Read Customer Data.
    </Description>
    </ResultRecord>
</RESPONSE_READ_CUSTOMER> 

CenTran 4 XML File Format

Chapter 5 - Customer XML Transactions

5.3 Update a Customer

This transaction updates data for an existing customer in the database. The customer fields to be updated have to be specified in the input transaction. Those customer fields that are not specified in the input transaction will not changed from their current values.

Transaction information required:

  • Customer ID
  • Customer Number (Optional) – The new value for this field
  • Name (Optional) – The new value for this field
  • Address 1 (Optional) – The new value for this field
  • Address 2 (Optional) – The new value for this field
    • City (Optional) – The new value for this field
    • State (Optional) – The new value for this field
  • ZIP Code (Optional) – The new value for this field
    • Service Branch (Optional) – The new value for this field
  • Line Branch (Optional) – The new value for this field
    • Country (Optional) – The new value for this field
  • Telephone Number (Optional) – The new value for this field
  • FAX Number (Optional) – The new value for this field
  • Cell Phone Number (Optional) – The new value for this field
  • Point Of Contact Information (Optional) – The new value for this field
  • Email Information (Optional) - The new value for this field
    • Description (Optional) - The new value for this field
  • Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and the updated customer record.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Invalid Customer ID
  • Customer does not exist
    • Not authorized due to authorization role

Example 1 - Success

Input Transaction:

<TRANSACTION_UPDATE_CUSTOMER>
    <UpdateCustomerRecord>
    <CustomerID>123456789</CustomerID>
    <!-- char string -->
    <CustomerNumber>123456</CustomerNumber>
    <!-- char string -->
    <CustomerAddress1>809 Transcript Ave #13</CustomerAddress1>
    <!-- char string -->
    <CustomerAddress2>Lexington Kentucky</CustomerAddress2>
    <!-- char string--> 
<Description>Attempt at updating customer record</Description>
</UpdateCustomerRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_CUSTOMER> 

Output Transaction:

The output transaction has the original input transaction (TRANSACTION_UPDATE_CUSTOMER), a result record (indicating success) and the updated customer record with new Customer Number, Address1, Address 2 and Description values.

<RESPONSE_UPDATE_CUSTOMER>
    <TRANSACTION_UPDATE_CUSTOMER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UpdateCustomerRecord>
    <CustomerID>123456789</CustomerID>
    <CustomerNumber>123456</CustomerNumber>
    <CustomerAddress1>809 Transcript Ave #13</CustomerAddress1>
    <CustomerAddress2>Lexington Kentucky</CustomerAddress2>
    <Description>Attempt at updating customer record</Description>
    </UpdateCustomerRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_CUSTOMER>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Details of customer 123456789 updated successfully.
    </Description>
</ResultRecord>
<CustomerRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CustomerID>123456789</CustomerID>
    <CustomerNumber>123456</CustomerNumber>
    <CustomerName>AG</CustomerName>
    <CustomerAddress1>809 Transcript Ave #13</CustomerAddress1>
    <CustomerAddress2>Lexington Kentucky</CustomerAddress2>
    <CustomerCity>Lexington</CustomerCity>
    <CustomerState>KY</CustomerState>
    <CustomerZIP>40508</CustomerZIP>
    <ServiceBranch>Newton Pike</ServiceBranch>
    <LineBranch>Pike Newton</LineBranch>
    <CustomerCountry>US</CustomerCountry>
    <Telephone>(234)123-4567</Telephone>
    <Fax>(234)123-1234</Fax>
    <Cell>(123)123-1234</Cell>
    <PointOfContact>Mas Hamilton</PointOfContact>
    <Email>abc@kml.kaba.com</Email>
    <Description>Attempt at updating customer record</Description>
</CustomerRecord>
</RESPONSE_UPDATE_CUSTOMER> 

Example 2 - Failure

Input Transaction:

<TRANSACTION_UPDATE_CUSTOMER>
    <UpdateCustomerRecord>
    <CustomerID></CustomerID>
    <!-- char string -->
    <CustomerNumber>123456</CustomerNumber>
    <!-- char string -->
    <CustomerAddress1>809 Transcript Ave #13</CustomerAddress1>
    <!-- char string -->
    <CustomerAddress2>Lexington Kentucky</CustomerAddress2> 
<!-- char string -->
    <Description>Attempt at updating customer record</Description>
</UpdateCustomerRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_UPDATE_CUSTOMER> 

Output Transaction:

The transaction fails because the Customer ID is invalid (empty).

<RESPONSE_UPDATE_CUSTOMER>
    <TRANSACTION_UPDATE_CUSTOMER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <UpdateCustomerRecord>
    <CustomerID></CustomerID>
    <CustomerNumber>123456</CustomerNumber>
    <CustomerAddress1>809 Transcript Ave #13</CustomerAddress1>
    <CustomerAddress2>Lexington Kentucky</CustomerAddress2>
    <Description>Attempt at updating customer record</Description>
    </UpdateCustomerRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_UPDATE_CUSTOMER>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_INVALID_CUSTOMERID_BLANK</ErrorCode>
    <Description>Invalid customer ID. Customer ID is blank.</Description>
    </ResultRecord>
</RESPONSE_UPDATE_CUSTOMER> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 5 - Customer XML Transactions

5.4 Delete a Customer

This transaction deletes a customer from the database.

Transaction information required:

  • Customer ID
  • Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description).

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Invalid Customer ID
  • Customer does not exist
    • Not authorized due to authorization role

Example 1 - Failure

Input Transaction:

<TRANSACTION_DELETE_CUSTOMER>
    <!-- char string -->
    <CustomerID>NoCustomer</CustomerID>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DELETE_CUSTOMER> 

Output Transaction:

<RESPONSE_DELETE_CUSTOMER>
    <TRANSACTION_DELETE_CUSTOMER xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CustomerID>NoCustomer</CustomerID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DELETE_CUSTOMER>
    <ResultRecord>
    <Result>Failure</Result>
    <ErrorCode>RC_ERR_CUSTOMER_NOT_FOUND</ErrorCode>
    <Description>Error in deleting customer from the database. Failed to find the customer in the database customer table! The customer ID is not in the database customer table.
    </Description>
    </ResultRecord>
</RESPONSE_DELETE_CUSTOMER> 

Example 2 - Success

Input Transaction:

<TRANSACTION_DELETE_CUSTOMER> 
<!-- char string -->
<CustomerID>123456789</CustomerID>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_DELETE_CUSTOMER>

Output Transaction:

<RESPONSE_DELETE_CUSTOMER>
    <TRANSACTION_DELETE_CUSTOMER xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <CustomerID>123456789</CustomerID>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_DELETE_CUSTOMER>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Customer 123456789 deleted successfully from the database.</Description>
    </ResultRecord>
</RESPONSE_DELETE_CUSTOMER> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 5 - Customer XML Transactions

5.5 Query Customer Table

This transaction queries a customer table for a set of customer records. The query record in the input transaction file contains a set of customer fields to create a query from. The query record also contains a flag indicating if 'like' search or 'exact' search is to be used. The query transaction attempts to work in a similar fashion as Cencon's 'Find Customers' form to search for customers to be displayed in a customer report.

Transaction information required:

  • Customer ID
    • Search Exact flag for Customer ID
  • Customer Number
  • Name
  • Address 1
  • Address 2
  • City
  • State
  • ZIP Code
    • Service Branch
  • Line Branch
  • Country
  • Telephone Number
  • FAX Number
    • Cell Phone Number
  • Point Of Contact Information
  • Email Information
  • Description
  • Dispatcher ID (Optional) - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Note: If string fields such as Name or Customer ID are left blank, those fields are left out of the search query (CenTran does not search for customer records in which Name or Customer ID field is empty).

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the customer records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation
  • Database error – failed to open customer table

Example 1 - Success

Input Transaction:

<TRANSACTION_CUSTOMER_QUERY>
    <CustomerQueryRecord>
    <!-- char string -->
    <CustomerID>tomer</CustomerID>
    <!-- int-->
<CustomerNumber>123456</CustomerNumber>
<!-- char string -->
<CustomerName>Cust</CustomerName>
<!-- char string -->
<CustomerState>WA</CustomerState>
<!-- char string -->
<CustomerCountry>US</CustomerCountry>
<!-- bool -->
<IfExactCustomerID>0</IfExactCustomerID>
</CustomerQueryRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CUSTOMER_QUERY>

Output Transaction:

By default, all fields except Customer Number are searched for values 'like' those given in the query record. For example, searching for Customer Name like 'Cust' will return all records whose Customer Name has 'Cust' as a substring. The search 'exact' option is available for the CustomerID field alone.

<RESPONSE_CUSTOMER_QUERY>
    <TRANSACTION_CUSTOMER_QUERY xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CustomerQueryRecord>
    <CustomerID>tomer</CustomerID>
    <CustomerNumber>123456</CustomerNumber>
    <CustomerName>Cust</CustomerName>
    <CustomerState>WA</CustomerState>
    <CustomerCountry>US</CustomerCountry>
    <IfExactCustomerID>0</IfExactCustomerID>
    </CustomerQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CUSTOMER_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Customer record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <CustomerRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CustomerID>some customerid</CustomerID>
    <CustomerNumber>123456</CustomerNumber>
    <CustomerName>Cust 2</CustomerName>
    <CustomerAddress1 />
    <CustomerAddress2 />
    <CustomerCity />
    <CustomerState>WA</CustomerState>
    <CustomerZIP />
    <ServiceBranch />
    <LineBranch />
    <CustomerCountry>US</CustomerCountry>
    <Telephone>(777)123-1234</Telephone>
    <Fax />
    <Cell />
    <PointOfContact />
    <Email />
    <Description />
    </CustomerRecord>
</RESPONSE_CUSTOMER_QUERY> 

CenTran 4 XML File Format

Chapter 5 - Customer XML Transactions

5.6 Query Customer Table Record Count

This transaction returns the number of records in the customer table matching the given query condition. This transaction uses the same format as the Customer Table Query transaction.

Example 1 - Success

Input Transaction:

<TRANSACTION_CUSTOMER_QUERY_COUNT>
    <CustomerQueryRecord>
    <!-- char string -->
    <CustomerID>tomer</CustomerID>
    <!-- int -->
    <CustomerNumber>123456</CustomerNumber>
    <!-- char string -->
    <CustomerName>Cust</CustomerName>
    <!-- char string -->
    <CustomerState>WA</CustomerState>
    <!-- char string -->
    <CustomerCountry>US</CustomerCountry>
    <!-- bool -->
    <IfExactCustomerID>0</IfExactCustomerID>
    </CustomerQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_CUSTOMER_QUERY_COUNT> 

Output Transaction:

<RESPONSE_CUSTOMER_QUERY_COUNT>
    <TRANSACTION_CUSTOMER_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <CustomerQueryRecord>
    <CustomerID>tomer</CustomerID>
    <CustomerNumber>123456</CustomerNumber>
    <CustomerName>Cust</CustomerName>
    <CustomerState>WA</CustomerState>
    <CustomerCountry>US</CustomerCountry>
    <IfExactCustomerID>0</IfExactCustomerID>
    </CustomerQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_CUSTOMER_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of customer records matching the given query: 1.
    </Description>
    </ResultRecord>
    <QueryCount>1</QueryCount>
</RESPONSE_CUSTOMER_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 6 - Activity Log XML Transactions

6.1 Activity Log Table Query

This transaction queries an activity log table for a set of activity log records. The query record passed contains a set of activity log fields to create a query from. The record also contains a flag indicating if 'like' search or 'exact' search is to be used. The query transaction attempts to work in a similar fashion as Cencon's 'Find Activity Data' form to search for audit or activity log records to be displayed in the activity log report.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the activity log records are retrieved from the activity log table.

• Event Time Date range (Event Time Start and Event Time End)
- Lock Name
- Route Name
- User ID
- Lock Mode
- Customer ID
- Serial Number Range (Serial Number Start and Serial Number End)
• ATM Serial Number
- Region
- Search Exact Flag

- Dispatcher ID (Optional) – This is not part of the query record. If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Note: If string fields such as Lock Name or Customer ID are left blank, those fields are left out of the search query (CenTran does not search for activity log records having an empty Lock Name or Customer ID field).

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the activity log records (with selected fields) matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation
  • Database error - failed to open activity log table

Example 1 - Success

Input Transaction:

<TRANSACTION_ACTIVITY_QUERY>
    <AuditQueryRecord>
    <!-- char string -->
    <LockName>VLK014</LockName>
    <!-- char string -->
    <LockMode>F</LockMode>
    <!-- char string -->
    <RouteName></RouteName>
    <!-- char string -->
    <UserID>fjrbl</UserID>
    <!-- char string-->
<CustomerID>ACustomer</CustomerID>
<!-- char string -->
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<!-- char string -->
<Region>TestRegionD</Region>
<!-- long -->
<SerialNumberMinimum>530000</SerialNumberMinimum>
<SerialNumberMaximum>540000</SerialNumberMaximum>
<!-- date -->
<EventDateStart>2004-12-24T00:00:00</EventDateStart>
<EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
<!-- bool -->
<IfSearchExact>true</IfSearchExact>
</AuditQueryRecord>
<!-- char string -->
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ACTIVITY_QUERY>

Output Transaction:

The transaction succeeds and returns a record which happens to be a reassign call event on lock VLK014.

<RESPONSE_ACTIVITY_QUERY>
    <TRANSACTION_ACTIVITY_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuditQueryRecord>
    <LockName>VLK014</LockName>
    <LockMode>F</LockMode>
    <RouteName></RouteName>
    <UserID>fjrb1</UserID>
    <CustomerID>ACustomer</CustomerID>
    <ATMSerialNumber>asdfasd</ATMSerialNumber>
    <Region>TestRegionD</Region>
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <IfSearchExact>true</IfSearchExact>
    </AuditQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ACTIVITY_QUERY>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Audit record/s found satisfying the search condition.</Description>
</ResultRecord>
<AuditRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <EventType>ENV_REASSIGN_CALL</EventType>
    <EventResult>0</EventResult>
    <EventDate>2004-12-24T19:47:18.234Z</EventDate>
    <PreviousDate xsi:nil="true" />
    <LogonUser1ID>CentranSS</LogonUser1ID>
    <LogonUser2ID />
    <LogonUser3ID />
    <User1ID>fjrb1</User1ID>
    <User2ID />
    <LockName>VLK014</LockName>
    <RouteName />
    <LockMode>F</LockMode>
    <CustomerID>ACustomer</CustomerID>
    <ATMSerialNumber>asdfasd</ATMSerialNumber>
    <Region>TestRegionD</Region> 
<SerialNumber>532214</SerialNumber>
<BankBranchName />
<BankUserID>0</BankUserID>
<BankBranchID>0</BankBranchID>
</AuditRecord>
</RESPONSE_ACTIVITY_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 6 - Activity Log XML Transactions

6.2 Activity Log Table Query Record Count

This transaction returns the number of records in the activity log table query matching the given query condition. This transaction uses the same format as the Activity Log Table Query transaction.

Example 1 - Success

Input Transaction:

<TRANSACTION_ACTIVITY_QUERY_COUNT>
    <AuditQueryRecord>
    <!-- char string -->
    <LockName>VLK014</LockName>
    <!-- char string -->
    <LockMode>F</LockMode>
    <!-- char string -->
    <RouteName></RouteName>
    <!-- char string -->
    <UserID>fjrbl</UserID>
    <!-- char string -->
    <CustomerID>ACustomer</CustomerID>
    <!-- char string -->
    <ATMSerialNumber>asdfasd</ATMSerialNumber>
    <!-- char string -->
    <Region>TestRegionD</Region>
    <!-- long -->
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <!-- date -->
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <!-- bool -->
    <IfSearchExact>true</IfSearchExact>
    </AuditQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ACTIVITY_QUERY_COUNT> 

Output Transaction:

<RESPONSE_ACTIVITY_QUERY_COUNT>
    <TRANSACTION_ACTIVITY_QUERY_COUNT xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuditQueryRecord>
    <LockName>VLK014</LockName>
    <LockMode>F</LockMode>
    <RouteName></RouteName>
    <UserID>fjrb1</UserID>
    <CustomerID>ACustomer</CustomerID>
    <ATMSerialNumber>asdfasd</ATMSerialNumber>
    <Region>TestRegionD</Region>
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <IfSearchExact>true</IfSearchExact>
    </AuditQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_ACTIVITY_QUERY_COUNT> 
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of audit record/s found satisfying the search condition: 1.
    </Description>
    </ResultRecord>
    <QueryCount>1</QueryCount>
</RESPONSE_ACTIVITY_QUERY_COUNT> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 6 - Activity Log XML Transactions

6.3 Activity Log Archive Table Query

This transaction operates in the same manner as the Activity Log Table Query, but is applied against the Activity Archive Log Table.

Example 1 - Success

Input Transaction:

<TRANSACTION_ACTIVITY_ARCHIVE_QUERY>
    <AuditQueryRecord>
    <!-- char string -->
    <LockName>VLK</LockName>
    <!-- long -->
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <!-- date -->
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </AuditQueryRecord>
    <!-- char string -->
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_ACTIVITY_ARCHIVE_QUERY> 

Output Transaction:

The transaction returns all activity archive records matching the given search fields and also an additional search field – that of region being 'TestRegionD' because the dispatcher belongs to that local region.

<RESPONSE_ACTIVITY_ARCHIVE_QUERY>
    <TRANSACTION_ACTIVITY_ARCHIVE_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuditQueryRecord>
    <LockName>VLK</LockName>
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <IfSearchExact>0</IfSearchExact>
    </AuditQueryRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_ACTIVITY_ARCHIVE_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Audit archive record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <AuditRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <EventType>ENV_REASSIGN_CALL</EventType>
    <EventResult>0</EventResult>
    <EventDate>2004-12-24T19:47:18.234Z</EventDate>
    <PreviousDate xsi:nil="true" />
    <LogonUserID>CentranSS</LogonUserID>
    <LogonUser2ID />
    </LogonRecord>
    </ResponseRecord>
</RESPONSE_ACTIVITY_ARCHIVE_QUERY> 
<LogonUser3ID />
<User1ID>fjrb1</User1ID>
<User2ID />
<LockName>VLK014</LockName>
<RouteName />
<LockMode>F</LockMode>
<CustomerID>ACustomer</CustomerID>
<ATMSerialNumber>asdfasd</ATMSerialNumber>
<Region>TestRegionD</Region>
<SerialNumber>532214</SerialNumber>
<BankBranchName />
<BankUserID>0</BankUserID>
<BankBranchID>0</BankBranchID>
</AuditRecord>
<AuditRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <EventType>ENV_REASSIGN_CALL</EventType>
    <EventResult>0</EventResult>
    <EventDate>2004-12-24T19:47:18.456Z</EventDate>
    <PreviousDate xsi:nil="true" />
    <LogonUser1ID>CentranSS</LogonUser1ID>
    <LogonUser2ID />
    <LogonUser3ID />
    <User1ID>rzjack</User1ID>
    <User2ID>rzjill</User2ID>
    <LockName>VLK016</LockName>
    <RouteName>TestRte4</RouteName>
    <LockMode>R</LockMode>
    <CustomerID />
    <ATMSerialNumber />
    <Region>TestRegionD</Region>
    <SerialNumber>532016</SerialNumber>
    <BankBranchName />
    <BankUserID>0</BankUserID>
    <BankBranchID>0</BankBranchID>
</AuditRecord>
</RESPONSE_ACTIVITY_ARCHIVE_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 6 - Activity Log XML Transactions

6.4 Activity Log Archive Table Query Record Count

This transaction operates in the same manner as the Activity Log Table Query Record Count, but is applied against the Activity Archive Log Table.

Example 1 - Success

Input Transaction:

<TRANSACTION_ACTIVITY_ARCHIVE_QUERY_COUNT>
    <AuditQueryRecord>
    <!-- char string -->
    <LockName>VLK</LockName>
    <!-- long -->
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <!-- date -->
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <!-- bool -->
    <IfSearchExact>0</IfSearchExact>
    </AuditQueryRecord>
    <!-- char string -->
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
</TRANSACTION_ACTIVITY_ARCHIVE_QUERY_COUNT> 

Output Transaction:

<RESPONSE_ACTIVITY_ARCHIVE_QUERY_COUNT>
    <TRANSACTION_ACTIVITY_ARCHIVE_QUERY_COUNT xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuditQueryRecord>
    <LockName>VLK</LockName>
    <SerialNumberMinimum>530000</SerialNumberMinimum>
    <SerialNumberMaximum>540000</SerialNumberMaximum>
    <EventDateStart>2004-12-24T00:00:00</EventDateStart>
    <EventDateEnd>2004-12-24T23:55:00</EventDateEnd>
    <IfSearchExact>0</IfSearchExact>
    </AuditQueryRecord>
    <DispatcherID>SuperUserTestRegionD</DispatcherID>
    </TRANSACTION_ACTIVITY_ARCHIVE_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of audit archive record/s found satisfying the search condition: 2.
    </Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_ACTIVITY_ARCHIVE_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 7 - Authorization XML Transactions

7.1 Authorization Roles Table Query

This transaction queries the Authorization Roles table for a set of Authorization Role records. The input transaction file contains a query record which in turn contains a set of authorization role fields to create a query from. The authorization role query does not have a 'search like' option.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the authorization role records in the role table are retrieved.

• Authorization Role
- Description
- Enabled flag
- Dispatcher ID - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the role records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation
  • Database error - failed to open authorization role table

Example 1 - Success

Input Transaction:

<TRANSACTION_AUTHORIZATION_ROLE_QUERY>
    <AuthorizationRoleQueryRecord>
    <!-- char string -->
    <AuthorizationRole>Dispatcher</AuthorizationRole>
    <!-- bool -->
    <IfAuthorizationRoleEnabled>1</IfAuthorizationRoleEnabled>
    </AuthorizationRoleQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_ROLE_QUERY> 

Output Transaction:

The transaction succeeds in finding and retrieving an 'Enabled' authorization role named 'Dispatcher'.

<RESPONSE_AUTHORIZATION_ROLE_QUERY>
    <TRANSACTION_AUTHORIZATION_ROLE_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuthorizationRoleQueryRecord>
    <AuthorizationRole>Dispatcher</AuthorizationRole>
    <IfAuthorizationRoleEnabled>1</IfAuthorizationRoleEnabled>
    </AuthorizationRoleQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_ROLE_QUERY>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Authorization role record/s found satisfying the search condition.
    </Description>
</ResultRecord>
<AuthorizationRoleRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationRole>Dispatcher</AuthorizationRole>
    <AuthorizationRoleDescription>Used for normal dispatch and close operations.
    </AuthorizationRoleDescription>
    <IfAuthorizationRoleEnabled>1</IfAuthorizationRoleEnabled>
</AuthorizationRoleRecord>
</RESPONSE_AUTHORIZATION_ROLE_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 7 - Authorization XML Transactions

7.2 Authorization Roles Table Query Record Count

This transaction returns the number of records in the authorization roles table matching the given query condition. This transaction uses the same format as the Authorization Roles Table Query transaction.

Example 1 - Success

Input Transaction:

<TRANSACTION_AUTHORIZATION_ROLE_QUERY_COUNT>
    <AuthorizationRoleQueryRecord>
    <!-- char string -->
    <AuthorizationRole>Dispatcher</AuthorizationRole>
    <!-- bool -->
    <IfAuthorizationRoleEnabled>1</IfAuthorizationRoleEnabled>
    </AuthorizationRoleQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_ROLE_QUERY_COUNT> 

Output Transaction:

<RESPONSE_AUTHORIZATION_ROLE_QUERY_COUNT>
    <TRANSACTION_AUTHORIZATION_ROLE_QUERY_COUNT xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuthorizationRoleQueryRecord>
    <AuthorizationRole>Dispatcher</AuthorizationRole>
    <IfAuthorizationRoleEnabled>1</IfAuthorizationRoleEnabled>
    </AuthorizationRoleQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_AUTHORIZATION_ROLE_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of authorization role records satisfying the search condition: 1.
    </Description>
    </ResultRecord>
    <QueryCount>1</QueryCount>
</RESPONSE_AUTHORIZATION_ROLE_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 7 - Authorization XML Transactions

7.3 Authorization Operation Names Table Query

This transaction queries the authorization operation names table for a set of authorization operation name records. The query record passed contains a set of operation names fields to create a query from. This query does not have a 'search like' option.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the authorization operation names records in the operation names table are retrieved.

• Authorization Operation Name
• Authorization Operation Category
- Dispatcher ID - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the operation names records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation
  • Database error - failed to open authorization operation names table

Example 1 - Success

Input Transaction:

<TRANSACTION_AUTHORIZATION_OPERATION_QUERY>
    <AuthorizationOperationQueryRecord>
    <!-- char string -->
    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_OPERATION_QUERY>

Output Transaction:

The transaction succeeds and all Customer operations are retrieved.

<RESPONSE_AUTHORIZATION_OPERATION_QUERY>
    <TRANSACTION_AUTHORIZATION_OPERATION_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuthorizationOperationQueryRecord>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_AUTHORIZATION_OPERATION_QUERY>
    <ResultRecord>
    <Result>Success</Result>
<ErrorCode>RC_OK</ErrorCode>
    <Description>Authorization operation record/s found satisfying the search condition.
    </Description>
    </ResultRecord>
    <AuthorizationOperationRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationOperationName>Add Customer</AuthorizationOperationName>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationRecord>
    <AuthorizationOperationRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationOperationName>Customer Table
    Query</AuthorizationOperationName>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationRecord>
    <AuthorizationOperationRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationOperationName>Delete
    Customer</AuthorizationOperationName>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationRecord>
    <AuthorizationOperationRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationOperationName>Read Customer
    Data</AuthorizationOperationName>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationRecord>
    <AuthorizationOperationRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationOperationName>Rename
    Customer</AuthorizationOperationName>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationRecord>
    <AuthorizationOperationRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationOperationName>Update
    Customer</AuthorizationOperationName>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationRecord>
</RESPONSE_AUTHORIZATION_OPERATION_QUERY> 

CenTran 4 XML File Format

Chapter 7 - Authorization XML Transactions

7.4 Authorization Operation Names Table Query Record Count

This transaction returns the number of records in the operation names table matching the given query condition. This transaction uses the same format as the Authorization Operation Names Table Query transaction.

Example 1 - Success
Input Transaction:

<TRANSACTION_AUTHORIZATION_OPERATION_QUERY_COUNT>
    <AuthorizationOperationQueryRecord>
    <!-- char string -->
    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_OPERATION_QUERY_COUNT>

Output Transaction:

<RESPONSE_AUTHORIZATION_OPERATION_QUERY_COUNT>
    <TRANSACTION_AUTHORIZATION_OPERATION_QUERY_COUNT xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuthorizationOperationQueryRecord>

    <AuthorizationOperationCategory>Customer</AuthorizationOperationCategory>
    </AuthorizationOperationQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_AUTHORIZATION_OPERATION_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of authorization operation record/s satisfying the search condition: 6.
    </Description>
    </ResultRecord>
    <QueryCount>6</QueryCount>
</RESPONSE_AUTHORIZATION_OPERATION_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 7 - Authorization XML Transactions

7.5 Authorization Definition Table Query

This transaction queries the authorization definition table for a set of authorization definition records. The query record passed contains a set of definition fields to create a query from. The authorization definition query does not have a 'search like' option.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the authorization definition records in the definition table are retrieved.

  • Authority Role
  • Operation Name
  • Operation Type
    • Operation Parameter 1
  • Dispatcher ID - If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the authorization definition records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation
  • Database error - failed to open authorization definition table

Example 1 - Success

Input Transaction:

<TRANSACTION_AUTHORIZATION_DEFINITION_QUERY>
    <AuthorizationDefinitionQueryRecord>
    <!-- char string -->
    <AuthorizationOperationName>Activate Lock</AuthorizationOperationName>
    <!-- char string -->
    <AuthorizationOperationType>FLM</AuthorizationOperationType>
    </AuthorizationDefinitionQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_DEFINITION_QUERY>

Output Transaction:

The transaction successfully retrieves all the roles authorized to activate a lock in FLM mode.

<RESPONSE_AUTHORIZATION_DEFINITION_QUERY>
    <TRANSACTION_AUTHORIZATION_DEFINITION_QUERY xmlns="http://www.kabamas.com/CentranTransac.xsd">
    <AuthorizationDefinitionQueryRecord>
    <AuthorizationOperationName>Activate
Lock</AuthorizationOperationName>
    <AuthorizationOperationType>FLM</AuthorizationOperationType> 
</AuthorizationDefinitionQueryRecord>
<DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_DEFINITION_QUERY>
<ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Definition record/s found satisfying the search condition.</Description>
    </ResultRecord>
    <AuthorizationDefinitionRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationRole>Activate Only</AuthorizationRole>
    <AuthorizationOperationName>Activate
    Lock</AuthorizationOperationName>
    <AuthorizationOperationType>FLM</AuthorizationOperationType>
    <AuthorizationOperationParameter1 />
    </AuthorizationDefinitionRecord>
    <AuthorizationDefinitionRecord
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <AuthorizationRole>Supervisor</AuthorizationRole>
    <AuthorizationOperationName>Activate
    Lock</AuthorizationOperationName>
    <AuthorizationOperationType>FLM</AuthorizationOperationType>
    <AuthorizationOperationParameter1 />
    </AuthorizationDefinitionRecord>
</RESPONSE_AUTHORIZATION_DEFINITION_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 7 - Authorization XML Transactions

7.6 Authorization Definition Table Query Record Count

This transaction returns the number of records in the authorization definition table matching the given query condition. This transaction uses the same format as the Authorization Definition Table Query transaction.

Example 1 - Success

Input Transaction:

<TRANSACTION_AUTHORIZATION_DEFINITION_QUERY_COUNT>
    <AuthorizationDefinitionQueryRecord>
    <!-- char string -->
    <AuthorizationOperationName>Activate Lock</AuthorizationOperationName>
    <!-- char string -->
    <AuthorizationOperationType>FLM</AuthorizationOperationType>
    </AuthorizationDefinitionQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_AUTHORIZATION_DEFINITION_QUERY_COUNT>

Output Transaction:

<RESPONSE_AUTHORIZATION_DEFINITION_QUERY_COUNT>
    <TRANSACTION_AUTHORIZATION_DEFINITION_QUERY_COUNT
xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <AuthorizationDefinitionQueryRecord>
    <AuthorizationOperationName>Activate
Lock</AuthorizationOperationName>
    <AuthorizationOperationType>FLM</AuthorizationOperationType>
    </AuthorizationDefinitionQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_AUTHORIZATION_DEFINITION_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of authorization definition record/s satisfying the search condition: 2.
    </Description>
    </ResultRecord>
    <QueryCount>2</QueryCount>
</RESPONSE_AUTHORIZATION_DEFINITION_QUERY_COUNT> 

CenTran 4 XML File Format

Chapter 8 - Region XML Transactions

8.1 Region Table Query

This transaction queries the region table for a set of region records. The query record passed contains a set of region fields to create a query from. The region query does not have a 'like search' option.

Transaction information required:

All the fields listed below are optional. If no fields are present in the query record, then all the region records are retrieved from the region table.

  • Region Name
  • Region Type
  • Dispatcher ID: If this field is missing or left blank, the default dispatcher ID specified in CenTran's registry is used.

Transaction information returned:

Success:

Input transaction, followed by a result record (result, error code and description) and all the region records matching the given search query. If no records are returned by the search query, the result of the transaction is still deemed a success.

Failure:

Input transaction, followed by a result record (result, error code and description).

Examples of Failure Conditions (for an extensive list with error codes, refer to Appendix A):

  • Dispatcher not authorized to do this operation
  • Database error - failed to open region table

Example 1 - Success

Input Transaction:

<TRANSACTION_REGION_QUERY>
    <RegionQueryRecord>
    <!-- int -->
    <RegionType>0</RegionType>
    </RegionQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REGION_QUERY> 

Output Transaction:

The transaction retrieves all regions of type global (as opposed to local).

<RESPONSE_REGION_QUERY>
    <TRANSACTION_REGION_QUERY xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RegionQueryRecord>
    <RegionType>0</RegionType>
    </RegionQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_REGION_QUERY>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Region record/s found satisfying the search condition. 
</Description>
</ResultRecord>
<RegionRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <RegionName>Loomis</RegionName>
    <RegionType>0</RegionType>
</RegionRecord>
<RegionRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <RegionName>TestRegionA</RegionName>
    <RegionType>0</RegionType>
</RegionRecord>
<RegionRecord xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <RegionName>TestRegionB</RegionName>
    <RegionType>0</RegionType>
</RegionRecord>
</RESPONSE_REGION_QUERY> 

© 1996-2010 Kaba Mas LLC

Document Number 2079.039 Rev. D OCT 2010 CenTran 4 XML Programming Reference Manual

CenTran 4 XML File Format

Chapter 8 - Region XML Transactions

8.2 Region Table Query Record Count

This transaction returns the number of records in the region table query matching the given query condition. This transaction uses the same format as the Region Table Query transaction.

Example 1 - Success
Input Transaction:

<TRANSACTION_REGION_QUERY_COUNT>
    <RegionQueryRecord>
    <!-- int -->
    <RegionType>0</RegionType>
    </RegionQueryRecord>
    <!-- char string -->
    <DispatcherID>CentranSS</DispatcherID>
</TRANSACTION_REGION_QUERY_COUNT > 

Output Transaction:

<RESPONSE_REGION_QUERY_COUNT>
    <TRANSACTION_REGION_QUERY_COUNT xmlns="http://www.kaba-mas.com/CentranTransac.xsd">
    <RegionQueryRecord>
    <RegionType>0</RegionType>
    </RegionQueryRecord>
    <DispatcherID>CentranSS</DispatcherID>
    </TRANSACTION_REGION_QUERY_COUNT>
    <ResultRecord>
    <Result>Success</Result>
    <ErrorCode>RC_OK</ErrorCode>
    <Description>Number of region record/s found satisfying the search condition: 3.
    </Description>
    </ResultRecord>
    <QueryCount>3</QueryCount>
</RESPONSE_REGION_QUERY_COUNT> 

CenTran 4 XML File Format

Appendix A - Error Codes

The following is an extensive list of error codes (with description) that CenTran could return when the incoming transaction file format is XML:

Message NameMessage Description
RC_OK Success.
RC_PARTIAL_OK Partial Success
RC_NOT_OK Failure
RC_ERR_FAILED_VALIDATE_FILEFailed to validate file against the given XML schema
RC_ERR_DISPATCHER_NOT_FOUNDFailed to find the dispatcher or logon user in the database user table. The dispatcher ID is not in the database user table
RC_ERR_DISPATCHER_NOT_SETDispatcher ID has not been set
RC_ERR_FAILED_READ_CONFIG_SETTINGSFailed to read configuration settings from database
RC_ERR_LOCK_NOT_FOUNDLock not found in lock table
RC_ERR_INVALID_LOCK_REC_LOCKNAMEInvalid lock record. The lock name is blank or contains unprintable characters
RC_ERR_FAILED_GET_DISPATCHER_REGIONFailed to get assigned region for dispatcher authorization
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_LOCK_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the lock's region
RC_ERR_INVALID_LOCK_REC_RECTYPEInvalid lock record. The lock record type is not set to either active, being installed, pending shelve, shelved, or being replaced
RC_ERR_LOCK_ALREADY_OPEN Lock already opened
RC_ERR_LOCK_NOT_OPEN Lock not open
RC_ERR_FLM1_BLANKFirst RSP/FLM ID is blank
RC_ERR_FLM2_BLANKSecond RSP/FLM ID is blank
RC_ERR_FLM1_AND_FLM2_ARE_THE_SAMEDual mode lock - The first and second user is the same user I.D.
RC_ERR_PCIE PCIO Card error
RC_ERR_INVALID_LOCK_MODE Invalid lock mode
RC_ERR_NOTAUTHORIZED_TO_DO_OPERATIONLogon User ID Authorization Role does not authorize this operation
RC_ERR_DATABASE_CLOSEDDatabase connection is closed
RC_ERR_FAILED_BEGIN_TRANSFailed to begin database transaction
RC_ERR_FAILED_COMMIT_TRANSFailed to commit database transaction
RC_ERR_DISPATCH_LOCK_ROUTE_REGION_MISMATCHLock being dispatched on route does not have the same region as the route
RC_ERR_DISPATCH_LOCK_INVALID_SEQFailed to dispatch lock. Route sequence number is out of range
RC_ERR_DISPATCH_LOCK_PENDING_SHELVELock pending shelve and cancelled by user
RC_ERR_LOCK_NOT_ACTIVE Lock not active
RC_ERR_FAILED_TO_ENCRYPT_DATAFailed to encrypt data. The data may have been corrupted, or the Cencon USB Key Box encryption data may be in error
RC_ERR_FAILED_TO_DECRYPT_DATAFailed to decrypt data. The data may have been corrupted, or the Cencon USB Key Box encryption data may be in error
RC_ERR_CANT_SERVICE_LOCK_FLM1First RSP/FLM ID may not service the lock
RC_ERR_CANT_SERVICE_LOCK_FLM2Second RSP/FLM ID may not service the lock
RC_ERR_CANT_SERVICE_LOCK_FLMBOTHNeither RSP/FLM ID may service the lock
RC_ERR_ALREADY_HAS_ANOTHER_LOCK_OPEN_FLM1flm1 has active service call and is an FLM type user
RC_ERR_ALREADY_HAS_ANOTHER_LOCK_OPEN_FLM2flm2 has active service call and is an FLM type user
RC_ERR_FLM1_NOT_FOUNDRSP/FLM ID 1 not found in database
RC_ERR_FLM2_NOT_FOUNDRSP/FLM ID 2 not found in database
RC_ERR_FLMBOTH_NOT_FOUNDBoth RSP/FLM ID not found in database
RC_ERR_FLMBOTH_BLANKBoth RSP/FLM ID are blank
RC_ERR_LOCK_DUALMODE_ONLY_ONE_FLMDual mode lock but 1 FLM entered
RC_ERR_FLM1_NOT_FIELD_IDRSP/FLM ID 1 is not a field ID (i.e. ID is a Dispatcher, Supervisor, etc.)
RC_ERR_FLM2_NOT_FIELD_IDRSP/FLM ID 2 is not a field ID (i.e. ID is a Dispatcher, Supervisor, etc.)
RC_ERR_FLM1_NOT_SAME_MODE_AS_LOCKRSP/FLM ID 1 is not the same mode as the lock
RC_ERR_FLM2_NOT_SAME_MODE_AS_LOCKRSP/FLM ID 2 is not the same mode as the lock
RC_ERR_DUAL_MODE_USER_TIME_WINDOW_MISMATCHDual mode - user time window mismatch (one user has timewindows, one user does not)
RC_ERR_FLMBOTH_NOT_SAME_MODE_AS_LOCKDual mode - Both IDs are not the same mode as the lock
RC_ERR_FLM1_AND_FLM2_ARE_THE_SAMEDual mode - the user IDs are the same
RC_ERR_FLMID_REGION_DOES_NOT_MATCH_LOCK_REGIONOne or both users don't match lock region, and region control is active
RC_ERR_LOCK_DUALMODE_ONLY_ONE_FLMLock is dual mode but only 1 FLM entered
RC_ERR_NEW_FLM1_NOT_FOUNDFailed to find new first RSP/FLM I.D. record in user database table
RC_ERR_NEW_FLM2_NOT_FOUNDFailed to find new second RSP/FLM I.D. record in user database table
RC_ERR_NEW_FLMBOTH_NOT_FOUNDFailed to find either new RSP/FLM I.D. record in user database table
RC_ERR_NEW_FLMBOTH_BLANKBoth RSP/FLM I.D. are blank
RC_ERR_FAILED_INSERT_LOG_ENTRYLog file could not be obtained
RC_ERR_FAILED_UPDATE_LOCK_ENTRYFailed to update lock entry in lock table
RC_ERR_FAILED_UPDATE_LOG_ENTRYFailed to update log entry for lock
RC_ERR_FAILED_UPDATE_FLM1Failed to update first RSP/FLM I.D. record in user database table
RC_ERR_FAILED_UPDATE_FLM2Failed to update second RSP/FLM I.D. record in user database table
RC_ERR_FAILED_UPDATE_NEW_FLM1Failed to update new first RSP/FLM I.D. record in user database table
RC_ERR_FAILED_UPDATE_NEW_FLM2Failed to update new second RSP/FLM I.D. record in user database table
RC_ERR_LOG_ENTRY_NOT_FOUNDLock dispatch record not found in lock log database table
RC_ERR_ASSIGN_LOCK_NOT_UNASSIGNEDFailed to assign lock. Lock is open but not unassigned
RC_ERR_LOCK_ALREADY_UNASSIGNEDLock is already unassigned
RC_ERR_FORCE_CLOSE_FAILED_NOT_SKIPPED_SEQUENCEFailed to force close lock. Force close can only be applied to locks open on a skipped route sequence
RC_ERR_CLOSE_LOCK_TOO_MANY_ATTEMPTSLock has been attempted to be closed more than the authorized number of times. Insufficient authority for furtherattempts
RC_ERR_LOCK_OPEN_BUT_UNASSIGNEDLock is open but unassigned to a user
RC_ERR_CLOSE_ROUTE_NO_SEALLock on route does not have close seal
RC_ERR_CLOSE_LOCK_NO_SEALFailed to close lock. No close seal given for close
RC_ERR_CLOSE_LOCK_SEAL_MISMATCHSeal numbers do not match for lock close
RC_ERR_FORCE_CLOSE_OF_LAST_ROUTE_LOCK_SEQFailed to force close route lock for sequence. Sequence is last combination issued to lock
RC_ERR_FAILED_DELETE_LOG_ENTRYFailed to remove log record from lock log database table
RC_ERR_FAILED_INSERT_LOGHIST_ENTRYFailed to insert log record into log history database table
RC_ERR_INVALID_GROUP_BLANKLock group name contains embedded blanks or is blank
RC_ERR_CHANGE_REGION_REGION_INVALID_DATAData for region being changed is not valid
RC_ERR_CHANGE_REGION_DOESNT_EXISTRegion being changed doesn't exist
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_LOCK_NEW_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the lock's new region
RC_ERR_CUSTOMER_NOT_FOUNDFailed to find the customer in the database customer table. The customer ID is not in the database customer table
RC_ERR_INVALID_NEW_LOCKNAMEThe new lock name is blank
RC_ERR_RENAME_LOCK_NEW_NAME_MODE_ALREADY_EXISTSAnother lock already exists with the new name and mode
RC_ERR_RENAME_FAILED_UPDATE_LOCK_FOR_RENAMEFailed to update the lock record for renaming lock
RC_ERR_RENAME_FAILED_UPDATE_LOG_FOR_RENAMEFailed to update the lock log entries for renaming open lock
RC_ERR_FAILED_OPEN_TABLEFailed to open table. A database error occurred
RC_ERR_FAILED_GET_RECORD_COUNTFailed to get record count for current table given search parameter. A database error occurred
RC_ERR_INVALID_ROUTE_NAME_BLANKInvalid route name. Route name is blank
RC_ERR_FAILED_ADD_ROUTE_ALREADY_EXISTSFailed to add route. Route name already exists
RC_ERR_REGION_INVALID_DATAData for region is not valid. Region is blank
Dispatcher belongs to
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_REGIONa local region. The dispatcher's region does not match the route's region
RC_ERR_ROUTE_FAILED_INSERTFailed to insert record into route table
RC_ERR_ROUTE_FAILED_UPDATEFailed to update record in route table
RC_ERR_ROUTE_LOCK_FAILED_UPDATEFailed to update record in route lock table
RC_ERR_ROUTE_LOCK_FAILED_INSERTFailed to insert record into route lock table
RC_ERR_ROUTE_NOT_FOUNDFailed to find route name entry in route table
RC_ERR_ROUTE_FAILED_OPEN_ROUTE_LOCK_TABLEFailed to open route lock table
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_NEW_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the route's new region
RC_ERR_ROUTE_FAILED_UPDATEFailed to update record in route table
RC_ERR_ROUTE_FAILED_DELETEFailed to delete record from route table
RC_ERR_INPUT_FILE_NO_ROUTE_LOCKSThe input transaction file does not contain any route locks
RC_ERR_INVALID_LOCKNAMEInvalid lock name. The lock name is blank
RC_ERR_FAILED_ADD_ROUTE_LOCK_ALREADY_EXISTSError adding route lock record. Route lock already exists
RC_ERR_LOCK_ROUTE_REGION_MISMATCHLock does not have the same region as the route
RC_ERR_ROUTE_NO_LOCKS_ASSIGNEDThe route has no locks assigned to it
RC_ERR_INVALID_ROUTE_SUPPORT_SETTINGInvalid Route Support Setting
RC_ERR_ROUTE_LOCK_NOT_FOUNDRoute lock not found in route lock table
RC_ERR_ROUTE_LOCK_FAILED_DELETEFailed to delete record in route lock table
RC_ERR_DISPATCH_ROUTE_FAILED_READ_ROUTE_FILEFailed to read route from file
RC_ERR_DISPATCH_ROUTE_FAILED_READ_ROUTE_DATABASEFailed to read route from database
RC_ERR_DISPATCH_ROUTE_ALREADY_EXISTS_DIFF_REGION_CONTROLFailed to dispatch route. The route name is already in use in a different region, and region control is active
RC_ERR_FILL_ROUTE_LOCK_LIST_SOME_LOCKS_FAILEDFill route lock list some locks failed
RC_ERR_FILL_ROUTE_LOCK_LIST_ALL_LOCKS_FAILEDFill route lock list all locks failed
RC_ERR_DISPATCH_ROUTE_FAILED_FLMS_LOCKS_ROUTEIncompatibility or error encountered between locks and users for route from database
RC_ERR_DISPATCH_ROUTE_REGION_DOES_NOT_MATCH_LOCKS_REGIONFailed to dispatch route. The region assigned to the route does not match theregion assigned to one or more of the locks on the route
RC_ERR_DISPATCH_ROUTE_SOME_LOCKS_FAILEDNot all locks were successfully dispatched
RC_ERR_DISPATCH_ROUTE_ALL_LOCKS_FAILEDNo locks were successfully dispatched
RC_ERR_REASSIGN_ROUTE_SOME_NOT_REASSIGNEDSome locks were not reassigned
RC_ERR_REASSIGN_ROUTE_NONE_REASSIGNEDNo locks were reassigned
RC_ERR_CLOSE_ROUTE_INVALID_FORCE_CLOSEInvalid force close found in locks given for route close
RC_ERR_CLOSE_ROUTE_NOT_ALL_CLOSEDErrors closing some locks
RC_ERR_FAILED_RENAME_OLD_USER_ID_BLANKFailed to rename user. The old user ID is blank
RC_ERR_FAILED_RENAME_NEW_USER_ID_BLANKFailed to rename user. The new user ID is blank
RC_ERR_FAILED_RENAME_USER_ID_NOT_FOUNDFailed to rename user. The old user ID to be renamed was not found in the user table
RC_ERR_FAILED_RENAME_USER_NOT_SAME_REGIONFailed to rename user. The user's region does not match the dispatcher's region
RC_ERR_FAILED_RENAME_USER_ID_NEW_USER_ID_ALREADY_EXISTSFailed to rename user. The new user ID already exists. A user can not be renamed to an already existing user ID
RC_ERR_FAILED_RENAME_USER_ID_IS_WINDOWS_LOGON_USERFailed to rename user. The user is a Windows authentication logon user, and the user name must be the same as the Windows logon name to allow the user to be identified
RC_ERR_FAILED_RENAME_USER_ERROR_ENCRYPTING_NEW_PASSWORDFailed to rename user. An error occurred while attempting to encrypt the new password for the user. The password contains invalid characters
RC_ERR_FAILED_RENAME_USER_ERROR_GENERATING_TEMP_USER_IDFailed to rename user. Failed to generate a temporary user ID to associate with references to the old user while renaming the original user
RC_ERR_FAILED_RENAME_USER_ERROR_GENERATING_TEMP_USER_KEYFailed to rename user. Failed to generate a temporary user Key SN to associate with references to the old user while renaming the original user
RC_ERR_FAILED_RENAME_USER_ERROR_INSERT_TEMP_USERFailed to rename user. Failed to insert a temporary user to associate with references to the old user while renaming the original user
RC_ERR_FAILED_RENAME_USER_ERROR_INSERT_PWDHISTORYFailed to rename user. A database error occurred while attempting to insert the old user record into the user history table
RC_ERR_FAILED_RENAME_USER_ERROR_INSERT_NEW_RECORDFailed to rename user. A database error occurred while attempting to insert the new user record into the user table
RC_ERR_FAILED_RENAME_USER_ERROR_DELETE_TEMP_RECORDFailed to rename user. Failed to delete the temporary user associated with references to the old user while renaming the original user
RC_ERR_INVALID_PWD_REC_USER_IDInvalid user record. The User ID has not been set
RC_ERR_USER_NOT_FOUNDUser not found in user database
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_USER_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the user's region
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_USER_NEW_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the user's new region
RC_ERR_BANK_BRANCH_NAME_INVALID_DATAData for bank branch name is not valid
RC_ERR_BANK_BRANCH_DOESNT_EXISTBank branch doesn't exist in the database
RC_ERR_INVALID_CUSTOMERID_BLANKInvalid customer ID Customer ID is blank
RC_ERR_FAILED_UPDATE_CUSTOMER_ENTRYFailed to update customer entry in customer table
RC_ERR_FAILED_ADD_CUSTOMER_ID_ALREADY_EXISTSFailed to add/rename customer. The requested customer ID already exists
RC_ERR_FAILED_ADD_CUSTOMER_ERROR_INSERT_CUSTOMER_TABLEFailed to add new customer. A database error occurred while inserting the new customer record into the customer table
RC_ERR_FAILED_RENAME_CUSTOMER_ERROR_LOCK_TABLEFailed to rename customer. A database error occurred while changing the original customer ID references in the lock table
Failed to rename customer. A database
RC_ERR_FAILED_RENAME_CUSTOMER_ERROR_LOG_TABLEerror occurred while changing the original customer ID references in the log table
RC_ERR_FAILED_RENAME_CUSTOMER_ERROR_BANK_BRANCH_TABLEFailed to rename customer. A database error occurred while changing the original customer ID references in the bank branch table
RC_ERR_FAILED_RENAME_CUSTOMER_ERROR_ROUTE_TABLEFailed to rename customer. A database error occurred while changing the original customer ID references in the route table
RC_ERR_FAILED_UPDATE_CUSTOMER_ENTRYFailed to update customer entry in customer table
RC_ERR_FAILED_ADD_CUSTOMER_ALREADY_EXISTSFailed to add customer. The customer ID already exists
RC_ERR_DELETE_CUSTOMER_FAILED_TO_GET_COUNT_USERS_WITH_CUSTOMERFailed to delete customer. Failed to get count of users, locks, routes, and/or bank branches assigned to the customer
RC_ERR_DELETE_CUSTOMER_STILL_HAS_ASSIGNED_USERSThe selected customer may not be deleted because it is assigned to a user, lock, route, and/or bank branch
RC_ERR_FAILED_DELETE_CUSTOMER_ENTRYFailed to delete the customer entry from the database customer table. A database error occurred while deleting the customer record
RC_ERR_FAILED_RENAME_BANK_BRANCH_NEW_NAME_ALREADY_EXISTSFailed to rename bank branch! The new bank branch name already exists in the bank branch table.
RC_ERR_FAILED_RENAME_BANK_BRANCH_FAILED_FIND_ORIGINAL_RECORDFailed to rename bank branch! Failed to find the original bank branch name in the bank branch table.
RC_ERR_FAILED_RENAME_BANK_BRANCH_FAILED_INSERT_NEW_RECORDFailed to rename bank branch! A database error occurred while inserting the new bank branch record into the bank branch table.
RC_ERR_FAILED_RENAME_BANK_BRANCH_ERROR_LOCK_TABLEFailed to rename bank branch! A database error occurred while changing the original bank branch references in the lock table.
RC_ERR_FAILED_RENAME_BANK_BRANCH_ERROR_PWD_TABLEFailed to rename bank branch! A database error occurred while changing the originalbank branch references in the user table.
RC_ERR_FAILED_RENAME_BANK_BRANCH_ERROR_DELETE_OLD_RECORDFailed to rename bank branch! Failed to delete the original bank branch record from the bank branch table.
RC_ERR_ACTIVATE_LOCK_BANK_INSUFFICIENT_USERS_SETFailed to activate bank mode lock! The bank mode lock does not have enough users set up for access to the lock.
RC_ERR_SHELVE_LOCK_NO_DISPATCH_MODE_FOR_LOCKFailed to shelve locks! One or more modes of a lock did not have one of the modes set for dispatch to shelve the lock.
RC_ERR_ACTIVATE_LOCK_NO_DISPATCH_MODE_FOR_LOCKFailed to activate locks! One or more modes of a lock did not have one of the modes set for dispatch to activate the lock.
RC_ERR_FAILED_DELETE_LOCK_INSERT_INTO_HISTORY_TABLEFailed to delete shelved lock! A database error occurred while inserting the lock into the lock history table.
RC_ERR_SHELVE_LOCK_FAILED_DELETE_BANK_USERSFailed to shelve lock! A database error occurred while deleting the bank mode users for the lock from the user lock table.
RC_ERR_LOCK_BANK_BRANCH_NAME_NOT_FOUNDFailed to find bank branch name for lock! The bank branch name does not exist in the bank branch table. Unable to determine bank branch ID.
RC_ERR_FAILED_ADD_USERS_INVALID_LOCK_MODEFailed to add users to the lock! An invalid lock mode was encountered.
RC_ERR_FAILED_REMOVE_USERS_INVALID_LOCK_MODEFailed to remove users from the lock! An invalid lock mode was encountered.
RC_ERR_ADD_USERS_LOCKS_ALL_PROCESSED_NO_USERS_ADDDEDAll locks processed in list but no locks had users added
RC_ERR_REMOVE_USERS_LOCKS_ALL_PROCESSED_NO_USERS_REMOVEDAll locks processed in list but no locks had users removed
RC_ERR_ADD_USERS_LOCKS_SOME_NO_USERS_ADDDEDSome locks did not have users added in the list
RC_ERR_REMOVE_USERS_LOCKS_SOME_NO_USERS_REMOVEDSome locks did not have users removed in the list.
Failed to add users to the lock! No users are
RC_ERR_FAILED_ADD_USERS_LOCKS_NONE_SPECIFIED_TO_ADDspecified to add to the lock.
RC_ERR_FAILED_REMOVE_USERS_LOCKS_NONE_SPECIFIED_TO_REMOVEFailed to remove users from the lock! No users are specified to remove from the lock.
RC_ERR_ADD_USERS_LOCKS_DATA_CORRUPTFailed to add users to the lock! Data passed for adding users to the lock is corrupt or invalid.
RC_ERR_ADD_USERS_LOCKS_LOCK_DOES_NOT_EXISTFailed to add users to the lock! Lock does not exist.
RC_ERR_ADD_USERS_LOCKS_LOCK_NOT_ACTIVEFailed to add users to the lock! Lock is not active.
RC_ERR_ADD_USERS_LOCKS_NOT_AUTHORIZED_LOCK_REGIONFailed to add users to the lock! The current authorization does not have access to locks in other regions.
RC_ERR_ADD_USERS_LOCKS_FAILED_TO_GET_LOCK_CURRENT_USERSFailed to add users to the lock! Failed to get the current users for the lock.
RC_ERR_REMOVE_USERS_LOCKS_DATA_CORRUPTFailed to remove users from the lock! Data passed for removing users from the lock is corrupt or invalid.
RC_ERR_REMOVE_USERS_LOCKS_LOCK_DOES_NOT_EXISTFailed to remove users from the lock! Lock does not exist.
RC_ERR_REMOVE_USERS_LOCKS_LOCK_NOT_ACTIVEFailed to remove users from the lock! Lock is not active.
RC_ERR_REMOVE_USERS_LOCKS_NOT_AUTHORIZED_LOCK_REGIONFailed to remove users from the lock! The current authorization does not have access to locks in other regions.
RC_ERR_REMOVE_USERS_LOCKS_FAILED_TO_GET_LOCK_CURRENT_USERSFailed to remove users from the lock! Failed to get the current users for the lock.
RC_ERR_ACTIVATE_LOCK_BANK_TOO_MANY_USERS_SETFailed to activate bank mode lock! Too many users have been set up for access to the lock.
RC_ERR_ADD_USERS_LOCKS_USER_ALREADY_ASSIGNED_TO_LOCKFailed to add users to the lock! User being added is already assigned to the lock.
RC_ERR_ADD_USERS_LOCKS_TOO_MANY_USERSFailed to add users to the lock! Too many users are being assigned to the lock.
RC_ERR_ADD_USERS_LOCKS_NOT_SAME_BANK_BRANCHFailed to add users to the lock! The user's bank branch name does not match the lock bank branch name.
Failed to get assigned
RC_ERR_FAILED_GET_DISPATCHER_REGION region for dispatcherauthorization!
RC_ERR_ADD_USERS_LOCKS_NOT_SAME_REGIONFailed to add users to the lock! The user's region does not match the lock's region.
RC_ERR_ADD_USERS_LOCKS_BANK_BRANCH_NAME_NOT_SETFailed to add users to the lock! The lock bank branch name is not set.
RC_ERR_ADD_USERS_LOCKS_BANK_NO_USERS_SETFailed to add users to the lock! No users have been set to add to the lock.
RC_ERR_FAILED_ADD_USERS_NO_KEY_FOUND_IN_READERFailed to add users to the lock! Unable to locate a key in the key reader. A supervisor audit key is needed.
RC_ERR_FAILED_ADD_USERS_INCORRECT_KEY_TYPEFailed to add users to the lock! The key in the key reader is not the correct type of key. A supervisor audit key is needed.
RC_ERR_FAILED_REMOVE_USERS_NO_KEY_FOUND_IN_READERFailed to remove users from the lock! Unable to locate a key in the key reader. A supervisor audit key is needed.
RC_ERR_FAILED_REMOVE_USERS_INCORRECT_KEY_TYPEFailed to remove users from the lock! The key in the key reader is not the correct type of key. A supervisor audit key is needed.
RC_ERR_REMOVE_USERS_LOCKS_USER_NOT_ASSIGNED_TO_LOCKFailed to remove users from the lock! The user being removed is not assigned to the lock.
RC_ERR_REMOVE_USERS_LOCKS_TOO_FEW_USERS_REMAININGFailed to remove users from the lock! The lock will have too few users remaining at the lock if the specified users are removed.
RC_ERR_REMOVE_USERS_LOCKS_BANK_BRANCH_NAME_NOT_SETFailed to remove users from the lock! The lock bank branch name is not set.
RC_ERR_REMOVE_USERS_LOCKS_BANK_NO_USERS_SETFailed to remove users from the lock! No users have been set to remove from the lock.
RC_ERR_FAILED_DELETE_USER_LOCK_ENTRYFailed to delete user lock entry for bank mode user assigned to lock! A database error occurred while deleting the user lock entry.
RC_ERR_ACTIVATE_LOCK_BANK_USER_NOT_SAME_REGIONFailed to activate bank mode lock! The bank mode user's region does not match the lock's region.
Failed to add users to the lock! The lock user
RC_ERR_ADD_USERS_LOCKS_NOT_BANK_MODE_USERbeing added is not a bank mode user.
RC_ERR_ACTIVATE_LOCK_NOT_BANK_MODE_USERFailed to activate bank mode lock! The lock user being added for lock activation is not a bank mode user.
RC_ERR_FORCE_DELETE_LOCK_FAILED_DELETE_BANK_USERSFailed to shelve lock! A database error occurred while deleting the bank mode users for the lock from the user lock table.
RC_ERR_FAILED_RENAME_USER_NOT_SAME_REGIONFailed to rename user! The user's region does not match the dispatcher's region.
RC_ERR_INVALID_USER_LOCK_HISTORY_DATE_VALUEInvalid user lock history record for bank mode users. The date value is not set.
RC_ERR_FAILED_ADD_CUSTOMER_ALREADY_EXISTSFailed to add customer! The customer ID already exists!
RC_ERR_INVALID_LOCK_REC_LOCKNAMEInvalid lock record. The lock name is blank or contains unprintable characters.
RC_ERR_INVALID_LOCK_REC_SERIALNUMInvalid lock record. The lock serial number is not set.
RC_ERR_INVALID_LOCK_REC_LOCKMODEInvalid lock record. The lock mode is not set to either FLM, Route, or Bank mode.
RC_ERR_INVALID_LOCK_REC_RECTYPEInvalid lock record. The lock record type is not set to either active, being installed, pending shelve, shelved, or being replaced.
RC_ERR_INVALID_LOCK_REC_FLM_ROUTEInvalid lock record. The lock record indicates an film lock set for route dispatch.
RC_ERR_INVALID_LOCK_REC_SLMCALL_ROUTEInvalid lock record. The lock record indicates a route lock set for second line maint call.
RC_ERR_INVALID_LOCK_REC_UNASSIGNEDCALLInvalid lock record. The lock record indicates an invalid unassigned call.
RC_ERR_INVALID_LOCK_REC_OPENSW_ROUTEISSInvalid lock record. The lock record indicates an invalid single open with route dispatch.
RC_ERR_FAILED_ADD_USER_CUSTOMER_ID_DOES_NOT_EXISTFailed to add user. The customer ID specified for the user does not exist in the customer table.
Failed to add user. The
RC_ERR_FAILED_ADD_USER_BANK_BRANCH_DOES_NOT_EXISTbank branch name specified for the user does not exist in the bank branch table.
RC_ERR_FAILED_ADD_USER_BANK_MODE_USER_ID_FOR_BRANCH_ALREADY_EXISTSFailed to add user. The bank mode user ID and bank branch name specified for the user already exists.
RC_ERR_ROLE_DELETE_FAILED_ROLE_IN_USECan't delete role - users are assigned to it
RC_ERR_DELETE_CUSTOMER_FAILED_TO_GET_COUNT_USERS_WITH_CUSTOMERFailed to delete customer. Failed to get count of users/locks/routes/bank branches still assigned to customer.
RC_ERR_DELETE_CUSTOMER_STILL_HAS_ASSIGNED_USERSCustomer being deleted still has assigned users/locks/routes/bank branches.
RC_ERR_FAILED_RENAME_USER_ID_IS_WINDOWS_LOGON_USERFailed to rename user. The user is a Windows authentication logon user, and the user name must be the same as the Windows logon name to allow the user to be identified.
RC_ERR_FAILED_RENAME_USER_ERROR_GENERATING_TEMP_USER_IDFailed to rename user. Failed to generate a temporary user ID to associate with references to the old user while renaming the original user.
RC_ERR_FAILED_RENAME_USER_ERROR_GENERATING_TEMP_USER_KEYFailed to rename user. Failed to generate a temporary user Key SN to associate with references to the old user while renaming the original user.
RC_ERR_FAILED_RENAME_USER_ERROR_INSERT_TEMP_USERFailed to rename user. Failed to insert a temporary user to associate with references to the old user while renaming the original user.
RC_ERR_FAILED_RENAME_USER_ERROR_DELETE_TEMP_RECORDFailed to rename user. Failed to delete the temporary user associated with references to the old user while renaming the original user.
RC_ERR_DELETE_LOCK_FAILED_DELETE_COLLECTION_LOCK_ENTRIESFailed to delete lock. A database error occurred while removing entries for the lock from the collection lock table.
RC_ERR_INVALID_CUSTOMERID_BLANKInvalid customer ID. Customer ID is blank.
RC_ERR_FAILED_OPEN_TABLEFailed to open table. A database error occurred.
RC_ERR_FAILED_GET_RECORD_COUNTFailed to get record count for current table given search parameter. A database error occurred.
RC_ERR_DISPATCHER_NOT_FOUNDFailed to find the dispatcher or logon user in the database user table! The dispatcher ID is not in the database user table.
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_LOCK_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the lock's region.
RC_ERR_FLM1_BLANKFirst RSP/FLM ID is blank
RC_ERR_FLM2_BLANKSecond RSP/FLM ID is blank
RC_ERR_LOCK_INVALID_SEQLock route sequence number is out of range.
RC_ERR_FORCE_CLOSE_FAILED_NOT_SKIPPED_SEQUENCEFailed to force close lock. Force close can only be applied to locks open on a skipped route sequence.
RC_ERR_INVALID_GROUP_BLANKLock group name contains embedded blanks or is blank.
RC_ERR_INVALID_GROUP_NUMBER_CHARACTERERSLock group name does not contain 2, 4, or 6 characters
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_LOCK_NEW_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the lock's new region.
RC_ERR_INVALID_NEW_LOCKNAMEThe new lock name is blank.
RC_ERR_FAILED_RENAME_OLD_USER_ID_BLANKFailed to rename user. The old user ID is blank.
RC_ERR_FAILED_RENAME_NEW_USER_ID_BLANKFailed to rename user. The new user ID is blank.
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_USER_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the user's region.
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_USER_NEW_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the user's new region.
RC_ERR_BANK_BRANCH_NAME_INVALID_DATAData for bank branch name is not valid.
RC_ERR_BANK_BRANCH_DOESNT_EXISTBank branch doesn't exist in the database.
RC_ERR_INVALID_ROUTE_NAME_BLANKInvalid route name.Route name is blank.
RC_ERR_FAILED_ADD_ROUTE_ALREADY_EXISTSFailed to add route! Route name already exists
RC_ERR_REGION_INVALID_DATAData for region is not valid. Region is blank.
RC_ERR_REGION_DOESNT_EXISTRegion does not exist in the database.
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the route's region.
RC_ERR_DISPATCHER_REGION_DOES_NOT_MATCH_ROUTE_NEW_REGIONDispatcher belongs to a local region. The dispatcher's region does not match the route's new region.
RC_ERR_INPUT_FILE_NO_ROUTE_LOCKSThe input transaction file does not contain any route locks.
RC_ERR_INVALID_LOCKNAMEInvalid lock name. The lock name is blank.
RC_ERR_FAILED_ADD_ROUTE_LOCK_ALREADY_EXISTSError adding route lock record. Route lock already exists.
RC_ERR_LOCK_ROUTE_REGION_MISMATCHLock does not have the same region as the route.
RC_PARTIAL_OK Partial Success
RC_NOT_OK Failure
RC_ERR_ROUTE_LOCK_NOT_FOUNDRoute lock not found in route lock table
RC_ERR_ROUTE_LOCK_FAILED_DELETEFailed to delete record in route lock table
RC_ERR_INVALID_ROUTE_SUPPORT_SETTINGInvalid Route Support Setting.
RC_ERR_CLOSE_ROUTE_INVALID_FORCE_CLOSEInvalid force close found in locks given for route close.
RC_ERR_FAILED_VALIDATE_FILEFailed to validate file against the given XML schema.
RC_ERR_UNABLE_TO_ACTIVATE_GEN2_LOCK_LEGACY_PCIEUnable to activate Cencon Gen 2 locks with serial numbers above 999999 using a legacy Cencon PCIO device. A Cencon USB Key Box is needed.
RC_ERR_UNABLE_TO_SHELVE_GEN2_LOCK_LEGACY_PCIEUnable to shelve Cencon Gen 2 locks that have been fully activated with Gen 2 security data using a legacy Cencon PCIO device. A Cencon USB Key Box is needed.
RC_ERR_UNABLE_TO_ADD_DELETE_USERS_GEN2_LOCK_LEGACY_PCIEUnable to add users to or delete users from Cencon Gen 2 locks that have been fully activated with Gen 2 security data using a legacy Cencon PCIO device. A Cencon USB Key Box is needed.
RC_ERR_FAILED_TO_GET_SYSTEM_NETWORK_ADDRESS_INFORMATIONFailed to get the host system network address information!
RC_ERR_FAILED_TO_DECRYPT_DATAFailed to decrypt data! The data may have been corrupted, or the Cencon USB Key Box encryption data may be in error.
RC_ERR_FAILED_TO_ENCRYPT_DATAFailed to encrypt data! The data may have been corrupted, or the Cencon USB Key Box encryption data may be in error.
RC_ERR_DISPATCH_ROUTE_FAILED_READ_ROUTE_DATABASEFailed to read route from database.
RC_ERR_READ_SAKEY_INIT_ADD_INVALID_DATA_NUMBER_USERSFailed to read bank mode activate / add users key entry! An invalid number of bank mode users was indicated on the key.
RC_ERR_READ_SAKEY_INVALID_DATA_DID_NOT_VALIDATEData read from SA key did not validate! The data is invalid, corrupt, or has been tampered with.
RC_ERR_RETRIEVE_BANK_USERS_INVALID_KEYThe key was not initialized for retrieving bank users.
RC_ERR_RETRIEVE_BANK_USERS_KEY_NOT_USEDThe key was initialized for retrieving bank users but does not contain any user info.
RC_ERR_GEN2_UPDATE_ACTIVATE_LOCK_NOT_ACTIVEThe Gen 2 lock being updated from Gen 1 to Gen 2 activation is not an active lock.
RC_ERR_GEN2_UPDATE_ACTIVATE_NOT_GEN2_LOCKThe Gen 2 lock being updated from Gen 1 to Gen 2 activation is not a Gen 2 lock.
RC_ERR_GEN2_UPDATE_ACTIVATE_ALREADY_ACTIVATED_AS_GEN2The Gen 2 lock being updated from Gen 1 to Gen 2 activation has already been activated as a Gen 2 lock.
RC_ERR_GEN2_UPDATE_ACTIVATE_LOCK_FAILED_INSERT INTO_HISTORY_TABLEThe Gen 2 lock being updated from Gen 1 to Gen 2 activation failed to insert into the lock history table.
RC_ERR_GEN2_UPDATE_ACTIVATE_LOCK_FAILED_INSERT INTO_USER_LOCK_HISTORY_TABLEThe Gen 2 lock being updated from Gen 1 to Gen 2 activation failed to insert users into the user lock history table.
RC_ERR_GEN2_UPDATE_ACTIVATE_IS_DISPATCHED_MUST_BE_CLOSEDThe Gen 2 lock being updated from Gen 1 to Gen 2 activation is dispatched. The lock needs to be closed to update the activation.
RC_ERR_GEN2_LOCK_NOT_SUPPORTED_BY_CURRENT_PCIEThe current Cencon PCIO device does not support the Cencon Gen 2 Lock. You willneed a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_BANK_USER_ID_OUT_OF_RANGE_FOR_GEN1_LOCKThe assigned bank user ID for the user being added is out of range for a Cencon Gen 1 lock. The Cencon Gen 1 lock can support a range of 01 - 79 for bank mode user ids.
RC_ERR_GEN2_LOCK_PCIE_SUPPORT_NOT_AVAILABLE_HIGHER_BANK_USER_IDSThe current Cencon PCIO device does not support the Cencon Gen 2 lock wider range of bank user IDs. The Cencon Gen 1 lock can support a range of 01 - 79 for bank mode user ids.
RC_ERR_WRITING_CLOCK_SET_HEADERError writing the 1922 Clock Set Key header data.
RC_ERR_READ_USER_KEY_INVALID_DATA_DID_NOT_VALIDATEData read from user key did not validate! The data is invalid, corrupt, or has been tampered with.
RC_ERR_READ_USER_KEY_INVALID_DATA_DID_NOT_VALIDATE_AUDITSData read from user key audits did not validate! The audit data is invalid, corrupt, or has been tampered with.
RC_ERR_READ_USER_KEY_INVALID_DATA_AUDITS_BAD_CRCData read from user key audits is corrupt! The audit data is invalid, corrupt, or has been tampered with.
RC_ERR_DISPATCH_LOCK_RESYNC_IN_PROGRESSFailed to dispatch lock! The lock is currently being resynchronized with the PC. You will need to complete or cancel the resynchronize operation before doing dispatching the lock.
RC_ERR_ACTIVATE_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to activate lock by serial connection! The indicated lock serial number to activate is not a Cencon Gen 2 lock.
RC_ERR_ACTIVATE_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to activate lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_ACTIVATE_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to activate lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_ACTIVATE_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to activate lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_ACTIVATE_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_BE_ACTIVATEDFailed to activate lock by serial connection! The connected lock is not the one expected for activation. A different lock is connected than the serial number set up to be activated.
RC_ERR_SHELVE_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to shelve lock by serial connection! The indicated lock serial number to shelve is not a Cencon Gen 2 lock.
RC_ERR_SHELVE_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to shelve lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_SHELVE_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to shelve lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_SHELVE_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to shelve lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_SHELVE_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_BE_SHELVEDFailed to shelve lock by serial connection! The connected lock is not the one expected for being shelved. A different lock is connected than the serial number set up to be shelved.
RC_ERR_ADD_USERS_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to add users to lock by serial connection! The indicated lock serial number to shelve is not a Cencon Gen 2 lock.
RC_ERR_ADD_USERS_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to add users to lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
Failed to add users to lock by serial
RC_ERR_ADD_USERS_LOCK_SERIAL_LOCK_NOT_RESPONDING connection! The lock isnot responding across the serial connection.
RC_ERR_ADD_USERS_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to add users to lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_ADD_USERS_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCKFailed to add users to lock by serial connection! The connected lock is not the one expected for having users added. A different lock is connected than the serial number set up to have users added.
RC_ERR_REMOVE_USERS_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to remove users from lock by serial connection! The indicated lock serial number to shelve is not a Cencon Gen 2 lock.
RC_ERR_REMOVE_USERS_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to remove users from lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_REMOVE_USERS_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to remove users from lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_REMOVE_USERS_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to remove users from lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_REMOVE_USERS_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCKFailed to remove users from lock by serial connection! The connected lock is not the one expected for having users removed. A different lock is connected than the serial number set up to have users removed.
RC_ERR_ADD_USERS_LOCK_SERIAL_OPERATION_FAILED_AT_LOCKFailed to add users to lock by serial connection! All of the add user operations failed at the lock.
RC_ERR_REMOVE_USERS_LOCK_SERIAL_OPERATION_FAILED_AT_LOCKFailed to remove users from lock by serial connection! All of the remove user operations failed at the lock.
User cannot be
RC_ERR_FAILED_DELETE_ASSIGNED_TO_BANK_LOCKdeleted from password table. User is assigned to bank lock(s).
RC_ERR_SET_TZDSTTABLE_LOCK_DATA_CORRUPTFailed to set time zone / daylight savings time transition table at lock by serial connection! Data given for lock to be updated is corrupt or invalid.
RC_ERR_SET_TZDSTTABLE_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to set time zone / daylight savings time transition table at lock by serial connection! The indicated lock serial number is not a Cencon Gen 2 lock.
RC_ERR_SET_TZDSTTABLE_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to set time zone / daylight savings time transition table at lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_SET_TZDSTTABLE_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to set time zone / daylight savings time transition table at lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_SET_TZDSTTABLE_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to set time zone / daylight savings time transition table at lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_SET_TZDSTTABLE_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_BE_UPDATEDFailed to set time zone / daylight savings time transition table at lock by serial connection! The connected lock is not the one expected to be updated. A different lock is connected than the serial number set up to update the TZ/DST table.
RC_ERR_SET_ACCESS_LOCK_DATA_CORRUPTFailed to set access configuration at lock by serial connection! Data given for lock to be updated is corrupt or invalid.
RC_ERR_SET_ACCESS_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to set access configuration at lock by serial connection! The indicated lock serial number is not a Cencon Gen 2 lock.
Failed to set access configuration at lock by
RC_ERR_SET_ACCESS_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_SET_ACCESS_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to set access configuration at lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_SET_ACCESS_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to set access configuration at lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_SET_ACCESS_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_BE_UPDATEDFailed to set access configuration at lock by serial connection! The connected lock is not the one expected to be updated. A different lock is connected than the serial number set up to update the access configuration.
RC_ERR_SET_ACCESS_LOCK_SERIAL_LOCK_IS_DISPATCHEDFailed to set access configuration at lock by serial connection! The lock is currently dispatched in the Cencon database. Changing between single and dual mode will invalidate the dispatch. Close the dispatched call to the lock first.
RC_ERR_SET_OPEN_DELAY_LOCK_DATA_CORRUPTFailed to set open delay and window duration at lock by serial connection! Data given for lock to be updated is corrupt or invalid.
RC_ERR_SET_OPEN_DELAY_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to set open delay and window duration at lock by serial connection! The indicated lock serial number is not a Cencon Gen 2 lock.
RC_ERR_SET_OPEN_DELAY_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to set open delay and window duration at lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
Failed to set open
RC_ERR_SET_OPEN_DELAY_LOCK_SERIAL_LOCK_NOT_RESPONDINGdelay and window duration at lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_SET_OPEN_DELAY_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to set open delay and window duration at lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_SET_OPEN_DELAY_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_BE_UPDATEDFailed to set open delay and window duration at lock by serial connection! The connected lock is not the one expected to be updated. A different lock is connected than the serial number set up to update the open delay and window duration.
RC_ERR_SHELVE_LOCK_ALREADY_SHELVEDFailed to shelve lock! The lock is already shelved.
RC_ERR_FORCE_SHELVE_OPEN_LOCK_FAILED_FIND_FLM1Failed to force shelve of open lock! Failed to find user 1 from active log record.
RC_ERR_FORCE_SHELVE_OPEN_LOCK_FAILED_UPDATE_FLM1Failed to force shelve of open lock! Failed to update user 1 from active log record.
RC_ERR_FORCE_SHELVE_OPEN_LOCK_FAILED_FIND_FLM2Failed to force shelve of open lock! Failed to find user 2 from active log record.
RC_ERR_FORCE_SHELVE_OPEN_LOCK_FAILED_UPDATE_FLM2Failed to force shelve of open lock! Failed to update user 2 from active log record.
RC_ERR_FORCE_SHELVE_LOCK_FAILED_CLOSE_OUT_LOCKFailed to force shelve of open lock! Failed to close out lock.
RC_ERR_SET_ACCESS_LOCK_SERIAL_FAILED_UPDATE_LOCK_IN_DATABASEFailed to set access configuration at lock by serial connection! Failed to update lock record in Cencon database.
RC_ERR_SET_OPEN_DELAY_LOCK_SERIAL_FAILED_UPDATE_LOCK_IN_DATABASEFailed to set open delay and window duration at lock by serial connection! Failed to update lock record in Cencon database.
RC_ERR_RESYNC_DISPATCHING_LOCK_DATA_CORRUPTFailed to resynchronize dispatching of Cencon database lock entry by serial connection! Data given for lock to be updated is corrupt or invalid.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to resynchronize dispatching of Cencon database lock entry by serial connection! The indicated lock serial number is not a Cencon Gen 2 lock.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to resynchronize dispatching of Cencon database lock entry by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to resynchronize dispatching of Cencon database lock entry by serial connection! The lock is not responding across the serial connection.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to resynchronize dispatching of Cencon database lock entry by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_UPDATEFailed to resynchronize dispatching of Cencon database lock entry by serial connection! The connected lock is not the one expected to be updated. A different lock is connected than the serial number set up to resynchronize dispatching with.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_LOCK_IS_DISPATCHEDFailed to resynchronize dispatching of Cencon database lock entry by serial connection! The lock is dispatched in the database. Resynchronizing the dispatching while a call is dispatched will invalidate the dispatched call.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_LOCK_IS_NOT_ACTIVATED_AS_GEN2Failed to resynchronize dispatching of Cencon database lock entry by serial connection! The lock is not activated as a Cencon Gen 2 lock. It is activated in compatibility mode for Gen 1, or is not a Gen 2 lock.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_LOCK_IS_NOT_ACTIVE_IN_DATABASEFailed to resynchronize dispatching of Cencon database lock entry by serial connection! Thelock is not active (shelved) in the Cencon database.
RC_ERR_RESYNC_DISPATCHING_LOCK_SERIAL_FAILED_UPDATE_LOCK_IN_DATABASEFailed to resynchronize dispatching of Cencon database lock entry by serial connection! Failed to update lock record in Cencon database.
RC_ERR_READ_USER_KEY_INVALID_DATA_TIME_WINDOWS_BAD_CRCData read from user key time window configuration is corrupt! The user key time window data is invalid, corrupt, or has been tampered with.
RC_ERR_RESYNC_BANK_USERS_LOCK_DATA_CORRUPTFailed to resynchronize bank mode user table of Cencon database lock entry! Data given for lock to be updated is corrupt or invalid.
RC_ERR_RESYNC_BANK_USERS_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to resynchronize bank mode user table of Cencon database lock entry! The indicated lock serial number is not a Cencon Gen 2 lock.
RC_ERR_RESYNC_BANK_USERS_LOCK_SERIAL_LOCK_IS_NOT_ACTIVATED_AS_GEN2Failed to resynchronize bank mode user table of Cencon database lock entry! The lock is not activated as a Cencon Gen 2 lock. It is activated in compatibility mode for Gen 1, or is not a Gen 2 lock.
RC_ERR_RESYNC_BANK_USERS_LOCK_SERIAL_LOCK_IS_NOT_ACTIVE_IN_DATABASEFailed to resynchronize bank mode user table of Cencon database lock entry! The lock is not active (shelved) in the Cencon database.
RC_ERR_RESYNC_BANK_USERS_LOCK_SERIAL_LOCK_FAILED_READ_CURRENT_BANK_USERSFailed to resynchronize bank mode user table of Cencon database lock entry! An error occurred trying to read the current user table for the bank mode lock from the Cencon database.
RC_ERR_RESYNC_BANK_USERS_LOCK_SERIAL_LOCK_FAILED_READ_USERS_FOR_LOCKFailed to resynchronize bank mode user table of Cencon database lock entry! An error occurred trying to look up data from the Cencon database on the users read from the lock.
RC_ERR_FAILED_FIND_BANK_MODE_USERFailed to find bank mode user in Cencon database.
Failed to find bank mode user. The
RC_ERR_USER_FOUND_IS_NOT_BANK_MODE_USERmatching user found is not a bank mode user.
RC_ERR_CLOSE_LOCK_DATA_CORRUPTFailed to close dispatched call to Cencon lock by serial connection! Data given for lock to be closed is corrupt or invalid.
RC_ERR_CLOSE_LOCK_SERIAL_NOT_GEN_2_LOCKFailed to close dispatched call to Cencon lock by serial connection! The indicated lock serial number is not a Cencon Gen 2 lock.
RC_ERR_CLOSE_LOCK_SERIAL_PCIE_DEVICE_CANT_SUPPORT_GEN2Failed to close dispatched call to Cencon lock by serial connection! The current Cencon PCIO device does not support the Cencon Gen 2 Lock. You will need a Cencon USB Key Box to support the Cencon Gen 2 Lock.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_NOT_RESPONDINGFailed to close dispatched call to Cencon lock by serial connection! The lock is not responding across the serial connection.
RC_ERR_CLOSE_LOCK_SERIAL_FAILED_TO_GET_SERIAL_NUMBERFailed to close dispatched call to Cencon lock by serial connection! Failed to get the lock serial number from across the serial connection.
RC_ERR_CLOSE_LOCK_SERIAL_CONNECTED_LOCK_DOESNT_MATCH_LOCK_TO_BE_CLOSEDFailed to close dispatched call to Cencon lock by serial connection! The connected lock is not the one expected to be closed. A different lock is connected than the serial number set up to be closed.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_IS_NOT_DISPATCHEDFailed to close dispatched call to Cencon lock by serial connection! The lock is not currently dispatched in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_DISPATCHED_CALL_NOT_OPENED_LOCK_YETFailed to close dispatched call to Cencon lock by serial connection! The call dispatched to open the lock has not been used to open the lock yet.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_BOLT_RETRACTEDFailed to close dispatched call to Cencon lock by serial connection! The lockbolt is currently retracted.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_MODE_NOT_ACTIVEFailed to close dispatched call to Cencon lock by serial connection! The lock mode being closed is not active on the lock.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_MODE_DUAL_ACCESS_SETTING_MISMATCHFailed to close dispatched call to Cencon lock by serial connection! The lock single/dual user access configuration is mismatched with the Cencon database lock entry.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_DOOR_SENSOR_INDICATES_CONTAINER_OPENFailed to close dispatched call to Cencon lock by serial connection! The connected door sensor indicates the container door is open.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_CHANGE_KEY_INSERTEDFailed to close dispatched call to Cencon lock by serial connection! The change key is inserted in the back of the lock.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_SEAL_COUNT_BEHIND_HOST_SYSTEMFailed to close dispatched call to Cencon lock by serial connection! The lock seal count is behind the host system. The Cencon database and the lock are out of synchronization for dispatching.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_SEAL_COUNT_AHEAD_OF_HOST_SYSTEMFailed to close dispatched call to Cencon lock by serial connection! The lock seal count is ahead the host system. The Cencon database and the lock are out of synchronization for dispatching.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_FAILED_OPEN_QUERY_LOG_TABLEFailed to close dispatched call to Cencon lock by serial connection! Failed to open query of the active lock log table for dispatches to the lock being closed.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_NO_ACTIVE_LOG_RECORDS_FOUND_FOR_DISPATCHFailed to close dispatched call to Cencon lock by serial connection! No active lock log records for dispatches to the lock being closed were found. There is possible data corruption with the Cencon databaseactive log table data.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_TOO_MANY_ACTIVE_LOG_RECORDS_FOUND_FOR_DISPATCHFailed to close dispatched call to Cencon lock by serial connection! Too many active lock log records for dispatches to the lock being closed were found. There is possible data corruption with the Cencon database active log table data.
RC_ERR_CLOSE_LOCK_SERIAL_LOCK_TOO_FEW_ACTIVE_LOG_RECORDS_FOUND_FOR_DISPATCHFailed to close dispatched call to Cencon lock by serial connection! Too few active lock log records for dispatches to the lock being closed were found. There is possible data corruption with the Cencon database active log table data.
RC_ERR_CLOSE_LOCK_SERIAL_OPENING_FLM1_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find the first user who opened the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_OPENING_FLMBOTH_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find both users who opened the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_OPENING_FLM2_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find the second user who opened the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_DISPATCHED_FLM1_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find the first user who was dispatched to the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_DISPATCHED_FLMBOTH_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find both users who were dispatched to the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_DISPATCHED_FLM2_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find the second user who was dispatched tothe lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_USER_DISPATCHED_DOESNT_MATCH_USER_OPENEDFailed to close dispatched call to Cencon lock by serial connection! The user(s) who opened the lock do not match the users dispatched to the lock.
RC_ERR_CLOSE_LOCK_SERIAL_ROUTE_DISPATCHED_FLM1_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find the first user who was dispatched on a route to the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_ROUTE_DISPATCHED_FLMBOTH_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find both users who were dispatched on a route to the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_ROUTE_DISPATCHED_FLM2_NOT_FOUNDFailed to close dispatched call to Cencon lock by serial connection! Failed to find the second user who was dispatched on a route to the lock in the Cencon database.
RC_ERR_CLOSE_LOCK_SERIAL_ROUTE_USER_DISPATCHED_DOESNT_MATCH_USER_OPENEDFailed to close dispatched call to Cencon lock by serial connection! The user(s) who opened the lock do not match the users dispatched on a route to the lock.
RC_ERR_IMPORT_FAILED_SYSTEM_CHECKThe import lock XML file's system identifier does not match the current system. The locks cannot be imported.
RC_ERR_FAILED_UPDATE_LOCK_NETWORK_ADDRESSFailed to update the network address for all modes of the lock serial number! A database error occurred.
RC_ERR_ACTIVATE_LOCK_DATA_CORRUPT_NAME_NOT_SETFailed to activate lock! The lock name has not been set.
RC_ERR_ACTIVATE_LOCK_DATA_CORRUPT_MODE_NOT_SETFailed to activate lock! The lock mode has not been set.
RC_ERR_ACTIVATE_LOCK_DATA_CORRUPT_SERIALNUM_NOT_SETFailed to activate lock! The lock serial number has not been set, or is out of range.
RC_ERR_ACTIVATE_LOCK_DATA_CORRUPT_CUSTOMERNUM_NOT_SETFailed to activate lock! The lock customer number has not beenset, or is out of range.
RC_ERR_FLM1_KEY_TYPE_REQUIRES_GEN2_ACTIVATED_LOCKUser FLM 1 key is a DS1963 model key. It can only be dispatched/reassigned to a Cencon Gen 2 lock activated in Gen 2 mode.
RC_ERR_FLM2_KEY_TYPE_REQUIRES_GEN2_ACTIVATED_LOCKUser FLM 2 key is a DS1963 model key. It can only be dispatched/reassigned to a Cencon Gen 2 lock activated in Gen 2 mode.
RC_ERR_FLMBOTH_KEY_TYPE_REQUIRES_GEN2_ACTIVATED_LOCKBoth User FLM 1 and FLM 2 keys are DS1963 model keys. They can only be dispatched/reassigned to a Cencon Gen 2 lock activated in Gen 2 mode.
RC_ERR_DELETE_LOCK_FAILED_DELETE_ROUTE_LOCK_ENTRIESFailed to delete lock. A database error occurred while removing entries for the lock from the collection lock table.
RC_ERR_FAILED_UPDATE_USERFailed to update user record in Cencon database. A database error occurred while updating the record.
RC_ERR_FAILED_UPDATE_MULTIPLE_USER_DESCRIPTIVE_DATAFailed to update descriptive data for multiple user records in Cencon database. A database error occurred while updating the multiple user records.
RC_ERR_FAILED_RENAME_CUSTOMER_ERROR_EXCEPTIONFailed to rename customer! An application exception occurred while updating the Cencon database.
RC_ERR_FAILED_RENAME_BANK_BRANCH_ERROR_EXCEPTIONFailed to rename bank branch! An application exception occurred while updating the Cencon database.
RC_ERR_FAILED_DETERMINE_DISPATCHER_REGION_AUTHORIZATIONFailed to determine dispatcher region authorization! The dispatcher region information was not found.
RC_ERR_NOT_AUTHORIZED_OPERATION_DUE_TO_REGIONThe current dispatcher is not authorized to do the operation due to their region restriction. The operation affects data that is assigned to another region.
Failed to find route record entry in the

The following is a list of error codes (with description) that CenTran could return related to the Cencon PCIO PCI card when the incoming transaction file format is XML:

Message Name Message Description
RC_ERR_PCIE_BAD_KEY_CRC PCIO Data from key is corrupt
RC_ERR_PCIE_NAK PCIO NAK returned
RC_ERR_PCIE_INVCMD PCIO command was in error
RC_ERR_PCIE_PCIE_ID_BAD PCIO invalid key for card
RC_ERR_PCIE_NOKEY PCIO no key inserted
RC_ERR_PCIE_INVKEY PCIO invalid key
RC_ERR_PCIE_TIMEOUT PCIO timeout
RC_ERR_PCIE_KEYREADERR PCIO key read error
RC_ERR_PCIE_UNKNOWN PCIO unknown error
RC_ERR_PCIE_FAIL_OPEN_WINDRIVER_DEVICE PCIO Driver Failed opening WinDriver device
RC_ERR_PCIE_INCORRECT_WINDRIVER_VERSIONPCIO Driver WinDriver is incorrect version
RC_ERR_PCIE_NO_DEVICES_FOUNDPCIO Driver Could not find PCIO Card
RC_ERR_PCIE_CARD_ID_OUT_OF_RANGEPCIO Driver Card address not in range of valid addresses
RC_ERR_PCIE_FAILED_LOCKING_DEVICEPCIO Driver Card failed to lock device
RC_ERR_PCIE_CARD_INCOMPLETE_FUNCTIONPCIO Driver Card does not have complete identification items
RC_ERR_PCIE_CARD_FUNCTION_UNRESPONSIVEPCIO Driver Card does not respond
RC_ERR_PCIE_INVALID_VENDOR_IDPCIO Driver Card Vendor I.D. is not correct
RC_ERR_PCIE_FAIL_OPEN_ALREADY_OPENPCIO Driver Card is already open
RC_ERR_PCIE_FAIL_SET_ADDRESS_ALREADY_OPENPCIO Driver Card with this address is already open
RC_ERR_PCIE_FAIL_OPEN_INVALID_ADDRPCIO Driver Card has invalid address
RC_ERR_PCIE_FAIL_DATA_SEND_RECEIVEPCIO Driver Card data transmission error
RC_ERR_PCIE_FAIL_DEVICE_NOT_OPENPCIO Driver Card is not open
RC_ERR_PCIE_FAIL_INVALID_DATAPCIO Driver WinDriver function called incorrectly
RC_ERR_PCIE_MEMORY_ALLOCATION_ERRORPCIO Driver WinDriver memory allocation error
RC_ERR_PCIE_EXCEPTION_OCCURREDPCIO Driver Exception occurred during PCIO processing
RC_ERR_PCIE_UNKNOWN_DRIVER_ERRORPCIO Driver Unknown Error code
RC_ERR_PCIE_FAILED_COUNT_PCI_CARDSPCIO Driver Failed to get count of PCI cards in system
RC_ERR_PCIE_NO_PCIE_DEVICES_IN_SYSTEMPCIO Driver No PCIO devices found in system
RC_ERR_PCIE_FAIL_REGISTER_WINDRIVERPCIO Driver Failed to register with driver. Driver not installed or incompatible version.
RC_ERR_PCIE_FAIL_GET_PCIE_DEVICE_SERIAL_NUMBERFailed to get Cencon PCIO Serial Number
RC_ERR_PCIE_FUNCTION_NOT_SUPPORTED_ON_PCIE_DEVICE_VERSIONThe attempted operation is not supported on this version of Cencon PCIO device.
RC_ERR_PCIE_FAILED_RESCAN_SYSTEM_DEVICE_CHANGESConfiguration Manager Operation Error: Failed to rescan system configuration for device changes

The following is a list of error codes (with description) that CenTran could return related to the Cencon USB Key Box or the Cencon Gen 2 Lock serial communications when the incoming transaction file format is XML:

Message Name Message Description
RC_ERR_PCIE_COMMS_FAILED_FIND_START_OF_FRAMECommunications Error - failed to find start of frame
RC_ERR_PCIE_COMMS_FAILED_FIND_END_OF_FRAMECommunications Error - failed to find end of frame
RC_ERR_PCIE_COMMS_FAILED_TO_SENDCommunications Error - failure sending data
RC_ERR_PCIE_COMMS_FAILED_TO_SEND_NOT_OPENCommunications Error - failure sending data - connection is not open
RC_ERR_PCIO_COMMS_FAILED_TO_SETUP_FOR_RECEIVECommunications Error - failure setting up to read data
RC_ERR_PCIO_COMMS_FAILED_TO_READ_RECEIVED_DATACommunications Error - failure reading data
RC_ERR_PCIO_COMMS_FAILED_TO_READ_TIMEOUTCommunications Error - failure reading data timed out waiting
RC_ERR_PCIO_COMMS_FAILED_TO_READ_BAD_CRCCommunications Error - failure reading crc was incorrect
RC_ERR_PCIO_COMMS_FAILED_TO_READ_NOT_OPENCommunications Error - failure reading data - connection is not open
RC_ERR_PCIO_COMMS_RECEIVED_SOURCE_END_POINT_MISMATCHEDCommunications Error - indicated source end point in response does not match what was sent
RC_ERR_PCIO_COMMS_RECEIVED_DESTINATION_END_POINT_MISMATCHEDCommunications Error - indicated destination end point in response does not match what was sent
RC_ERR_PCIO_COMMS_RECEIVED_FRAME_ID_MISMATCHEDCommunications Error - indicated frame id in response does not match what was sent
RC_ERR_PCIO_COMMS_RECEIVED_DATA_EMPTYCommunications Error - data received in response is empty
RC_ERR_PCIO_COMMS_RECEIVED_DATA_UNEXPECTED_SIZECommunications Error - data received in response is not size as expected
RC_ERR_PCIO_COMMS_RECEIVED_COMMAND_RESPONSE_MISMATCHEDCommunications Error - command in response does not match what was sent
RC_ERR_PCIO_COMMS_FAILED_TO_OPEN_CONNECTIONCommunications Error - failed to open connection
RC_ERR_PCIO_COMMS_FAILED_TO_GET_COMM_STATECommunications Error - failed to get communications state
RC_ERR_PCIO_COMMS_FAILED_TO_SET_COMM_STATECommunications Error - failed to set communications state
RC_ERR_PCIO_COMMS_FAILED_TO_GET_COMM_TIMEOUTSCommunications Error - failed to get communications timeouts
RC_ERR_PCIO_COMMS_FAILED_TO_SET_COMM_TIMEOUTSCommunications Error - failed to set communications timeouts
RC_ERR_PCIO_COMMS_FAILED_TO_SEND_ARG_NULLCommunications Error - failed to send - argument is null
RC_ERR_PCIO_COMMS_FAILED_TO_SEND_ARG_OUT_OF_RANGECommunications Error - failed to send - argument is out of range
RC_ERR_PCIO_COMMS_FAILED_TO_SEND_ARG_EXCEPTIONCommunications Error - failed to send - argument exception occurred
RC_ERR_PCIO_COMMS_FAILED_TO_SEND_TIMEOUTCommunications Error - failed to send due to time out
RC_ERR_PCIO_COMMS_FAILED_TO_OPEN_ACCESS_DENIEDCommunications Error - failed to open connection, access denied to port
RC_ERR_PCIO_COMMS_FAILED_TO_OPEN_INVALID_STATECommunications Error - failed to open connection, port is in invalid state
RC_ERR_PCIO_COMMS_FAILED_TO_OPEN_INVALID_SETTINGSCommunications Error - failed to open connection, port settings are invalid
RC_ERR_PCIO_COMMS_FAILED_TO_OPEN_ALREADY_OPENCommunications Error - failed to open connection, port is already open
RC_ERR_PCIO_COMMS_FAILED_TO_OPEN_ARG_EXCEPTIONCommunications Error - failed to open connection, argument exception occurred
RC_ERR_PCIO_COMMS_INVALID_COMMANDReceived invalid command. The command received is unknown.
RC_ERR_PCIO_COMMS_INVALID_PARAMETERReceived invalid parameter. One or more parameters received is out of range or invalid.
RC_ERR_PCIO_COMMS_LOCKEDReceived command not processed.Communications are locked, and must be unlocked before any commands will be accepted.
RC_ERR_PCIO_COMMS_COMMAND_NOT_IMPLEMENTEDCommand not implemented. The command refers to an operation that this model of device does not support.
RC_ERR_PCIO_COMMS_TM_KEY_NOT_PRESENTTM Key not present. The key operation can not be completed because there is no key in the indicated key reader slot.
RC_ERR_PCIO_COMMS_TM_KEY_INVALID_TYPETM Key is an invalid type. The key operation can not be completed because the key in the reader is the wrong type of key.
RC_ERR_PCIO_COMMS_TM_KEY_OPERATION_ERRORTM Key operation error. The key operation failed at the key. Either communications failed with the key or there was a problem with the operation.
RC_ERR_PCIO_COMMS_INTERNAL_ERRORInternal Error. An internal error with the operation of the USB Key Box occurred. Data stored by the USB Key Box may have been corrupted.
RC_ERR_PCIO_COMMS_UNKNOWN_STATUS_ERROR_CODEThe key box returned an unexpected unknown error code. An unknown type of error has occurred with the USB Key Box.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_NO_ERRORCommunications layer error response received - No error indicated.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_INVALID_ENDPOINTCommunications layer error response received - Command was sent to invalid device functionality endpoint.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_INVALID_CRCCommunications layer error response received - Command sent had invalid CRC. Data was corrupt.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_TIMEOUTCommunications layer error response received - Timed out waiting on remainder of command. Data was lost or interrupted.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_BUFFER_OVERFLOWCommunications layer error response received - Buffer overflow. The command sent was too large for the device.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_UNKNOWN_ERR_CODECommunications layer error response received - The key box returned an unexpected error code for communications. An unknown type of error has occurred with the USB Key Box communications.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_INVALID_COMMANDCommunications layer error response received - Received invalid command. The command sent to the communication layer is not supported at the communications layer.
RC_ERR_PCIO_COMMS_FAILED_TO_SEND_OBJ_DISPOSED_EXCEPTIONCommunications Error - failed to send - connection has closed.
RC_ERR_PCIO_COMMS_FAILED_TO_SEND_IO_EXCEPTIONCommunications Error - failed to send - a driver IO exception occurred.
RC_ERR_PCIO_COMMS_FAILED_TO_READ_OBJ_DISPOSED_EXCEPTIONCommunications Error - failed to read - connection has closed.
RC_ERR_PCIO_COMMS_FAILED_TO_READ_IO_EXCEPTIONCommunications Error - failed to read - a driver IO exception occurred.
RC_ERR_PCIO_COMMS_FAILED_TO_RECONNECTFailed to reconnect to Cencon Key Box. A error occurred while trying to reopen the device.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ERR_INVALID_END_OF_FRAMECommunications layer error response received - Received invalid end of frame. An end of frame communications marker was not received when one was expected to end a frame of data. Data was lost or corrupted.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ENCRYPT_LAYER_INVALID_COMMANDCommunications layer error response received - Encryption layer invalid command received.
RC_ERR_PCIO_COMMS_COMMS_RESPONSE_ENCRYPT_LAYER_INVALID_PARAMETERCommunications layer error response received - Encryption layer invalidparameter received.
RC_ERR_PCIE_COMMS_COMMS_RESPONSE_ENCRYPT_LAYER_INTERNAL_ERRORCommunications layer error response received - Encryption layer internal error occurred. An internal error with the operation of the USB Key Box occurred. Data stored by the USB Key Box may have been corrupted.
RC_ERR_PCIE_COMMS_READ_TM_TIME_KEY_INVALID_CLOCK_VALUEAn invalid or corrupt clock time value was read from the TM Key.
RC_ERR_PCIE_COMMS_FAILED_DATA_SENT_IN_COMMAND_MISMATCHED_WITH_REPLYCommunications Error - The data received back in reply to a command did not match what was sent.
RC_ERR_PCIE_COMMS_FAILED_DETERMINE_SYSTEM_COMM_PORTSFailed to determine the system USB serial comm ports.
RC_ERR_PCIE_COMMS_FAILED_FIND_CENCON_KEYBOX_CONNECTED_TO_SYSTEMFailed to find the Cencon USB Key Box as being connected to the system.
RC_ERR_PCIE_COMMS_DEVICE_UNRESPONSIVE_ON_CONNECTDevice is not responsive after opening a connection to it.
RC_ERR_PCIE_COMMS_RECEIVED_DATA_INCOMPLETECommunications Error - data received in response is incomplete.
RC_ERR_PCIE_COMMS_FAILED_TO_OPEN_SOCKET_EXCEPTIONCommunications Error - A TCP communications exception occurred while trying to open the TCP connection.
RC_ERR_PCIE_COMMS_FAILED_TO_SEND_CONNECTION_NOT_CONFIGUREDCommunications Error - Failed to send data. Communications connection has not been configured or opened.
RC_ERR_PCIE_COMMS_FAILED_TO_READ_CONNECTION_NOT_CONFIGUREDCommunications Error - Failed to read data. Communications connection has not been configured or opened.
RC_ERR_PCIE_COMMS_FAILED_TO_OPEN_AUTHENTICATION_EXCEPTIONCommunications Error - An authentication exception occurred while trying to open the TCP secure socket layer connection.
RC_ERR_PCIE_COMMS_FAILED_TO_OPEN_CONNECTION_NOT_CONFIGUREDCommunications Error - Failed to open connection. Communications settings have not been configured for connection.
RC_ERR_PCIE_COMMS_ENCRYPTION_REQUIREDCommunications Error - The operation at the device requires the matching encryption to be used to authenticate the operation.
RC_ERR_PCIE_COMMS_DECRYPTION_FAILEDCommunications Error - The command sent did not decrypt properly. The wrong encryption is being used for the device operation.
RC_ERR_PCIE_COMMS_UNSUPPORTED_ENCRYPTION_MODECommunications Error - An unsupported form of encryption was specified with the command. The device does not support the encryption used.
RC_ERR_PCIE_COMMS_ERR_CHANGE_KEY_REQUIREDThe serial communications command received by the lock requires that a change key be inserted into the lock for the command to be executed, to verify access to the container.
RC_ERR_PCIE_COMMS_ERR_DOOR_CLOSEDThe serial communications command received by the lock requires that the container door be open for the command to be executed, to verify access to the container.

CenTran 4 XML File Format

Appendix B - Automatic Retry

Auto retry for restoring a dropped connection to the transaction directory

The immediate older version of CenTran stops transaction processing when a connection to the input transaction folder is lost, if only for a short duration, due to network failure or other connection issues. CenTran displays a message in the progress report - 'Directory Monitor: Failed to update directory change notification! Stopped transaction processing'.

The current version of CenTran makes repeated attempts to reestablish connection with the input transaction folder and when it succeeds, resumes processing all the transactions stored in the input transaction folder. The attempts to reestablish connection with the input transaction folder are made every two seconds and each failed attempt is displayed in the progress report along with date and time (Example: 'Directory Monitor: Failed to update directory change notification! Another attempt will be made in 2 seconds. Current Date/Time: 2009/2/27 15:36:30').

CenTran's attempts to reestablish connection with the transaction folder can be stopped by simply clicking on the 'Stop' button in the toolbar (also used to stop processing transactions).

When CenTran is able to eventually reestablish a connection to the transaction folder, a message indicating success is displayed in the progress report (Example – 'Directory Monitor: Succeeded in updating directory change notification! Current Date/Time: 2009/2/27 15:36:52'). Then, CenTran resumes processing all the unread transactions in the transaction folder.

Auto retry for restoring a dropped connection to the database

The immediate older version of CenTran stops transaction processing when a remote connection to the database is lost, if only for a short duration, due to network failure. CenTran displays a message box saying that an error occurred while establishing a connection to the server.

The current version of CenTran makes repeated attempts to reestablish connection with the database and when it succeeds, resumes processing all the transactions. The attempts to reestablish connection with the database are made approximately every 15 seconds and each failed attempt is displayed in the progress report along with date and time (Example: 'Database Monitor: Failed to connect to database! Another attempt will be made in a few seconds. Current Date/Time: 2009/2/27 18:6:16').

CenTran's attempts to reestablish connection with the database can be stopped by simply clicking on the 'Stop' button in the toolbar (also used to stop processing transactions).

When the network resumes normal functioning, CenTran reestablishes a connection to the database and a message indicating success is displayed in the progress report (Example – 'Database Monitor: Succeeded in connecting to database! Current Date/Time: 2009/2/27 18:5:31'). Then, CenTran resumes processing all the unread transactions in the transaction folder.

Table of contents Click a title to access it
Manual assistant
Powered by Anthropic
Waiting for your message
Product information

Brand : Dormakaba

Model : CenTran 4

Category : Access Control