API Reference Manual: Difference between revisions
No edit summary |
|||
Line 876: | Line 876: | ||
|- | |- | ||
|Status | |Status | ||
| | |FLDCRDACCOUNTSTATUS | ||
| | | | ||
|cards | |cards | ||
| | |ACCOUNTSTATUS | ||
|- | |- | ||
|Field1 | |Field1 |
Revision as of 10:25, 12 April 2021
Introduction
In this document you will find:
- Detailed listing of the RangerMSP API functions with their parameters
- Detailed listing of database fields per entity. The database fields are used when adding, updating and retrieving data using the API.
API Functions
The Programming API provides two sets of API functions:
- Data Retrieval API
- Data Update API
Data Retrieval API Functions
The Data Retrieval API is available starting with RangerMSP 5.5.
The Data Retrieval API should be used for read-only purposes. Pulling data from the database using the API should be done using the following steps:
- Execute an SQL query using the data query API function.
- The data query API returns a list of resulting record IDs.
- Read each record separately using another API function.
The Data Retrieval API functions include initialization, error handling and actual data retrieval functions.
The following data retrieval API functions receive and return parameters in XML format:
- CmtGetQueryRecIds - Receives an SQL query and returns a result list of REC IDs.
- CmtGetRecordDataByRecId - Returns record details according to the input REC ID.
- CmtGetFieldAttributesByRecId (advanced) - Returns the database properties of a field.
The following table lists the Data Retrieval API functions and their parameters. You can find more details about each function below the table.
Data Retrieval API Functions:
Method | Return Value | Description |
---|---|---|
CmtInitDbQryDll(app_name, path, status) | status (int) | Establishes a connection to the database. app_name - This string will be used for all functions of the package, and will appear in the application as the user who performs the changes in the records you update. You should specify a meaningful value. path - The path to the DB folder where the RangerMSP server is installed: <server>\RangerMSP \Db status - 1 for success. See Error Codes Description for other values. |
CmtGetQueryRecIds (xml_request_buff, xml_request_buff_len, xml_response_data_buff, xml_response_data_buff_len, status) |
status (int),results (char) | Receives an SQL query and returns a result list of REC IDs. You should then call CmtGetRecordDataByRecId for each record details. xml_request_buff – XML with the SQL query. >> See Error Codes Description for other values. |
CmtGetRecordDataByRecId (xml_request_buff, xml_request_buff_len, xml_response_data_buff, xml_response_data_buff_len, status) |
status (int),details(char) | Returns a record's details according to the input REC ID. xml_request_buff – XML with the REC ID. >> See Error Codes Description for other values. |
CmtGetFieldAttributesByRecId (xml_request_buff, xml_request_buff_len, xml_response_data_buff, xml_response_data_buff_len, status) |
status (int),details(char) | Returns the properties of a database field. xml_request_buff – XML with the requested Field ID. >> See Error Codes Description for other values. |
CmtTerminateDbQryDll | Close the connection to the database | |
CmtGetDescriptionByCode (code, desc_size, desc) |
message (char) | Call this function in case of error in CmtInsUpdRec. |
CmtGetDescriptionByStatus | Call this function in case of error in CmtInitDbQryDll |
CmtGetQueryRecIds
The CmtGetQueryRecIds function receives an SQL query and returns a result list of REC IDs.
Both the request and the response parameters are in XML format. See more details about each XML structure below.
CmtGetQueryRecIds Request
The crmxmlqueryrequest XML contains the following sections:
- Query Data Type – here you should enter which data type you want to query.
- SQL Query – here you build the SQL Query to be executed.
crmxmlqueryrequest XML template:
<?xml version="1.0" ?> <?crmxmlqueryrequest version="1.0" ?> <CRMQueryDataRequest > <ExternalApplicationName>Enter you application name here</ExternalApplicationName> <Datakind> one of the supported data types </Datakind> <MaxRecordCount> Enter the maximum records you want in the results </MaxRecordCount> <Query> <Where> <Link> ( </Link> <FLDTKTCARDID op=" = | > | >= | < | <= | like | not | not like "> value </FLDTKTCARDID> <Link> ) and | or ( </Link> <FLDTKTCARDID op=" = | > | >= | < | <= | like | not | not like "> value </FLDTKTCARDID> <Link> ) </Link> </Where> <Order> <FLDTKTCARDID_FLDCRDFULLNAME dir="asc | desc" /> </Order> </Query> </CRMQueryDataRequest >
See more details about each XML token below.
Query Data Type
The Data Type should be entered in the following token:
<Datakind> one of the supported data types </Datakind>
The following table lists the entities supported by the Data Retrieval API. In this list you will find the entity name as it appears in the application and the data kind which is the string you should use in the XML token: Datakind in the XML.
Data Retrieval API Supported data types (Data Kind):
Entity in Application | Data Kind |
---|---|
Account | ACCOUNT |
Opportunity | OPPORTUNITY |
Document | DOCUMENT |
Charge | CHARGE |
Appointment | APPOINTMENT |
Task | TASK |
History Note | HISTORY-NOTE |
History Audit Line | HISTORY-AUDIT |
Ticket | TICKET |
Item | ITEM |
Asset | ASSET |
Knowledge Base Article | ARTICLE |
Contract | CONTRACT |
Tax | TAX |
SQL Query
The Query part in the XML lets you build the actual text of the SQL query, providing you with maximum flexibility.
<Query> <Where> <Link> ( </Link> <FLDTKTCARDID op=" = | > | >= | < | <= | like | not | not like "> value </FLDTKTCARDID> <Link> ) and | or ( </Link> <FLDTKTCARDID op=" = | > | >= | < | <= | like | not | not like "> value </FLDTKTCARDID> <Link> ) </Link> </Where> <Order> <FLDTKTCARDID_FLDCRDFULLNAME dir="asc | desc" /> </Order> </Query>
The Query section may contain the following tokens:
- Where – here you build your actual "where" clause of the query, providing the filtering criteria you want to execute.
- Field Names and operators – here you can enter the fields to filter by, the operators and the value (e.g. FLDTKTCARDID = CRDIBR5V3SGPKGCSYCEF).
- Link – this token lets you link text, such as brackets, commas, etc.
- Order – here you define the sorting criteria for your query (e.g. FLDTKTCARDID_FLDCRDFULLNAME dir="asc").
CmtGetQueryRecIds Response
CmtGetQueryRecIds returns the result in XML format as follows:
<?xml version="1.0" ?> <?crmxmlqueryresponse version = "1.0" ?> <CRMQueryDataResponse> <Status></Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData></RecordData> </CRMQueryDataResponse>
Where:
- Status, Result Codes – the function returns a main status and in case of error it may return
- Result Message – contains the error message text in case of an error.
- Record Data – contains a list of record IDs which answer the query. This list contains the database REC IDs separated by commas.
CmtGetRecordDataByRecId
The CmtGetRecordDataByRecId function receives a record ID and a list of fields for the requested entity, and returns the requested data in XML format.
CmtGetRecordDataByRecId Request
Example of a request to read an Account:
<?xml version="1.0" ?> <?crmxmlgetrecorddatarequest version = "1.0" ?> <CRMGetRecordDataRequest> <ExternalApplicationName>MySoftwareName</ExternalApplicationName> <GetRecordByRecId>CRDC1VTHMDF627HJECG7</GetRecordByRecId> <SelectFieldsList> FLDCRDCOMPANY, FLDCRDCONTACT, FLDCRDADDRESS1, FLDCRDCITY, </SelectFieldsList> </CRMGetRecordDataRequest>
The crmxmlgetrecorddatarequest XML contains the following parameters:
- Get Record by Rec ID – here you should enter the Record ID you want to read, usually an ID from the list which was returned from the query function.
- Select Fields List – here you build the list of fields to be returned for the requested entity.
CmtGetRecordDataByRecId Response
The CmtGetRecordDataByRecId function returns the result in XML format as follows:
<?xml version="1.0" ?> <?crmxmlgetrecorddataresponse version = "1.0" ?> <CRMGetRecordDataResponse> <Status> </Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData> database fields tokens </RecordData> </CRMGetRecordDataResponse>
Where:
- Status, Result Codes – the function returns a main status and in case of error it may return
- Result Message – contains the error message text in case of an error.
- Record Data – contains a list of database fields as requested. This list contains holds each database field as a token and the data itself is the token's value.
Example of a response:
Account Data
<?xml version="1.0" ?> <?crmxmlgetrecorddataresponse version = "1.0" ?> <CRMGetRecordDataResponse> <Status>SUCCESS</Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData> <FLDCRDCOMPANY> <![CDATA[ Business Solutions ltd.]]></FLDCRDCOMPANY> <FLDCRDCONTACT> <![CDATA[John Smith]]> </FLDCRDCONTACT> <FLDCRDADDRESS1> <![CDATA[107 Severin Street]]> </FLDCRDADDRESS1> <FLDCRDCITY> <![CDATA[London]]> </FLDCRDCITY> </RecordData> </CRMGetRecordDataResponse>
Ticket Data
<?xml version="1.0" encoding="ISO-8859-8" ?> <?crmxmlgetrecorddataresponse version = "1.0" ?> <CRMGetRecordDataResponse> <Status>SUCCESS</Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData> <FLDTKTTICKETNO><![CDATA[0500-1009]]></FLDTKTTICKETNO> <FLDTKTSTATUS CmtRawData="900">Cancelled</FLDTKTSTATUS> <FLDTKTUPDATEDATE>24/01/2011 18:03</FLDTKTUPDATEDATE> </RecordData> </CRMGetRecordDataResponse>
CmtGetFieldAttributesByRecId
The CmtGetRecordDataByRecId function receives a Field ID and returns the field details in XML format. Field details include the same details that can be found when viewing the field attributes in the application. The details are returned in an XML including: Field Type, Size, Label, Hint, Name and Default Value.
Both the request and response parameters are in XML format.
CmtGetFieldAttributesByRecId Request
The crmxmlgetfieldattributesrequest XML contains the requested Field ID:
<?xml version="1.0" ?> <?crmxmlgetfieldattributesrequest version = "1.0" ?> <CRMGetFieldAttributesRequest> <ExternalApplicationName>MySoftwareName</ExternalApplicationName> <GetRecordByRecId> Enter the Field ID here (e.g. FLDCRDCITY) </GetRecordByRecId> </CRMGetFieldAttributesRequest>
Where:
- Get Record by Rec ID – here you should enter the Field ID you want to read. The Field ID which should be transferred to request can be found in the application, by right-clicking the field > Field Attributes > Advanced > Tech. Rec ID.
CmtGetFieldAttributesByRecId Response
The CmtGetRecordDataByRecId function returns the result in XML format as follows:
The CmtGetFieldAttributesByRecId function returns the result in XML format as follows
<?xml version="1.0" ?> <?crmxmlgetfieldattributesresponse version = "1.0" ?> <CRMGetFieldAttributesResponse> <Status> </Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData> <TYPE></TYPE> <SIZE></SIZE> <LABEL></LABEL> <HINT></HINT> <NAME></NAME> <DEFAULTVALUE></DEFAULTVALUE> <DISPLAYSYMBOL></DISPLAYSYMBOL> </RecordData> </CRMGetFieldAttributesResponse>
Where:
- Status, Result Codes – the function returns a main status and in case of error it may return
- Result Message – contains the error message text in case of an error.
- Record Data – contains a list of database fields containing the field details.
- DEFAULTVALUE: contains the default value for the field.
- DISPLAYSYMBOL: refers to the default value and optionally returns a symbol when relevant for a numeric value (such as currency symbol, percentage symbol, etc.).
Example of a response:
<?xml version="1.0" ?> <?crmxmlgetfieldattributesresponse version = "1.0" ?> <CRMGetFieldAttributesResponse> <Status>SUCCESS</Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData> <TYPE><![CDATA[CHAR]]></TYPE> <SIZE>30</SIZE> <LABEL><![CDATA[City]]></LABEL> <HINT><![CDATA[City of account's address]]></HINT> <NAME><![CDATA[Address: City]]></NAME> <DEFAULTVALUE></DEFAULTVALUE> <DISPLAYSYMBOL></DISPLAYSYMBOL> </RecordData> </CRMGetFieldAttributesResponse>
OR (returning a numeric field value)
<?xml version="1.0" ?> <?crmxmlgetfieldattributesresponse version = "1.0" ?> <CRMGetFieldAttributesResponse> <Status>SUCCESS</Status> <ResultCodes></ResultCodes> <ResultMessage></ResultMessage> <RecordData> <TYPE><![CDATA[DOUBLE]]></TYPE> <SIZE></SIZE> <LABEL><![CDATA[Adjust Percent]]></LABEL> <HINT><![CDATA[Percent of discount or markup]]></HINT> <NAME><![CDATA[Adjust Percent]]></NAME> <DEFAULTVALUE><![CDATA[0]]></DEFAULTVALUE> <DISPLAYSYMBOL><![CDATA[%]]></DISPLAYSYMBOL> </RecordData> </CRMGetFieldAttributesResponse>
Data Update API Functions
The Data Update API allows you to add and update data using Programming API and API by Email (using XML transactions).
Each Data Update API function requires a list of database fields and their values. Database field names can be found by right-clicking the field > Field Settings > Advanced Tab > Rec ID field. You can also find detailed information about each entity and its fields in Database Field Listing.
Following are the API functions for adding and updating data:
Method | Return Value | Description |
---|---|---|
CmtInitDbEngDll (app_name, path, status) | status (int) | Establishes a connection to the database. app_name - This string will be used for all functions of the package, and will appear in the application as the user who performs the changes in the records you update. You should specify a meaningful value. path - The path to the DB folder where the RangerMSP server is installed: <server>\RangerMSP\Db status - 1 for success. See Error Codes Description for other values. |
CmtInsUpdRec(app_name, table_id, data_buff, map_buff, flag, tbd, rec_id_buff_size, error_codes_buff_size, |
status (int), rec_id (char) | Adds/Updates records. app_name - string containing your application name |
CmtTerminateDbEngDll | Close the connection to the database | |
CmtGetDescriptionByCode (code, desc_size, desc) |
message (char) | Call this function in case of error in CmtInsUpdRec. |
CmtGetDescriptionByStatus | Call this function in case of error in CmtInitDbEngDll |
Field buffers The record to be added/updated in the database is passed to the RangerMSP API in two buffers:
Parameter | Description | Example |
---|---|---|
data_buff | String containing the values to insert into the Database. Separators between the fields are defined in the map_buff | "17/04/2008 14:44", "CRD7C9KZPS9JN3LEZVD9", "Charge", "CRDGO0SVQ6074CMAN7DW","Closed","test note in DB Engine", "NTBL6PDPKUU6NXLRHLHP","CRDBSMJ3P72EHMU0HB LX","TKT4S81466E05IM8P23X" |
map_buff | Mapping of the data_buff: separators, field names.
Field names must be in the same order as the data_buff values. The field names should be separated with a different separator than the values (e.g. "new line"). |
" , FLDHISNOTEDATETIME FLDHISWORKERID |
Database Field Listing
Following is a detailed listing of fields per entity which can be added/updated using the API. The API parameters are the same when using the Programming API or the XML API.
The API allows you to add, update and retrieve the following entities:
- Accounts
- Tickets
- Charges (and Contract-price Charges)
- Items
- History Notes
- Assets
- Calender (Appointments and Tasks)
- Opportunities
- Documents
- Knowledge Base Articles
All API functions may return error codes. You can find the possible error codes in:
In the following section you will find a detailed listing of the database fields. Each table includes the fields Display name (as shows in the application), the Database Field Name (internal database field identifier) and comments.
Note that when using XML formatted messages, the database field name refers to the name to be provided within the XML token. For example, when the field name is FLDSLPQUANTITY, the XML token should look like this: <FLDSLPQUANTITY>10</FLDSLPQUANTITY>
The following table shows the data kind code when using XML or when using the API functions:
Application entity | Table name | Programming Code | XML Data Kind Name |
---|---|---|---|
Accounts | Cards | 10 | ACCOUNT |
Opportunities | Opps | 20 | OPPORTUNITY |
Documents | Docs | 30 | DOCUMENT |
Charges | Slips | 40 | CHARGE |
Appointments/Tasks | Events | 50 | APPOINTMENT-OR-TASK |
History Notes | Notebook | 60 | HISTORY-NOTE |
Tickets | Tickets | 70 | TICKET |
Items | Items | 80 | ITEM |
Assets | Assets | 90 | ASSET |
Knowledge Base | KBArticles | 100 | ARTICLE |
You can find examples of adding and updating records in the database by using the database field in the API Code Samples section.
Account Fields
The following table lists the most important parameters for adding/updating Account records. Note slight differences when adding a main account vs. adding a secondary contact.
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Account REC ID | FLDCRDRECID | The Account record ID (20 chars). The Account Rec ID can be taken from:
|
cards | RECID |
Account Manager | FLDCRDASSIGNCARDID | This field has two roles:
This field should contain the ID of the main Account to which the secondary contacted is added. |
cards | ASSIGNCARDID |
Status | FLDCRDSUBCONTSTATUS | Relevant only for Secondary Contacts. Possible values: A-ctive N-ot Active. Default value if not passed to the API is Active. |
cards | SUBCONTSTATUS |
Company name | FLDCRDCOMPANY | cards | COMPANY | |
Contact: First & Last Name | FLDCRDCONTACT | cards | CONTACT | |
Assistant | FLDCRDASSISTANT | cards | ASSISTANT | |
Contract | FLDCRDBCRECID | The default Contract for this Account (not required) | cards | BCRECID |
Account Number | FLDCRDCARDID2 | cards | CARDID2 | |
ID | FLDCRDCARDID3 | cards | CARDID3 | |
Popup Message | FLDCRDCARDMESSAGE | cards | CARDMESSAGE | |
Address: Line1 | FLDCRDADDRESS1 | cards | ADDRESS1 | |
Address: Line2 | FLDCRDADDRESS2 | cards | ADDRESS2 | |
Address: Line3 | FLDCRDADDRESS3 | cards | ADDRESS3 | |
Address: City | FLDCRDCITY | cards | CITY | |
Address: State | FLDCRDCOUNTRY | cards | COUNTRY | |
Address: Country | FLDCRDSTATE | cards | STATE | |
Address: Zip | FLDCRDZIP | cards | ZIP | |
Creation Date | FLDCRDCREATEDATE | Any date format, such as DD/MM/YYYY | cards | CREATEDATE |
Created by User | FLDCRDCREATEUSERID | Foreign Software Name which created the account | cards | CREATEUSERID |
Dear | FLDCRDDEAR | cards | DEAR | |
Department | FLDCRDDEPARTMENT | cards | DEPARTMENT | |
Documents Store Directory | FLDCRDDOCSFOLDER | cards | DOCSFOLDER | |
E-Mail Address 1 | FLDCRDEMAIL1 | cards | EMAIL1 | |
E-Mail Address 2 | FLDCRDEMAIL2 | cards | EMAIL2 | |
Account Type | FLDCRDENTITYKIND | When adding a Main Account = 1 When adding a secondary contact = 5 When adding a Employee Account = 4 |
cards | ENTITYKIND |
Fax Number | FLDCRDFAX1 | cards | FAX1 | |
Fax Number Extension | FLDCRDFAXDESC1 | cards | FAXDESC1 | |
File as | FLDCRDFULLNAME | cards | FULLNAME | |
Type | FLDCRDKIND | cards | KIND | |
Last Name | FLDCRDLASTNAME | cards | LASTNAME | |
Notes | FLDCRDNOTES | cards | NOTES | |
Field | FLDCRDPERSONID | cards | PERSONID | |
Phone 1 Ext. | FLDCRDPHNDESC1 | cards | PHNDESC1 | |
Phone 2 Ext. | FLDCRDPHNDESC2 | cards | PHNDESC2 | |
Phone 3 Ext. | FLDCRDPHNDESC3 | cards | PHNDESC3 | |
Phone 4 Ext. | FLDCRDPHNDESC4 | cards | PHNDESC4 | |
Phone 1 | FLDCRDPHONE1 | cards | PHONE1 | |
Phone 2 | FLDCRDPHONE2 | cards | PHONE2 | |
Phone 3 | FLDCRDPHONE3 | cards | PHONE3 | |
Phone 4 | FLDCRDPHONE4 | cards | PHONE4 | |
Region | FLDCRDREGIONCODE | cards | REGIONCODE | |
Popup Message: Display Indication | FLDCRDSHOWMESSAGE | cards | SHOWMESSAGE | |
Sub-Contact Code | FLDCRDSUBCODE | cards | SUBCODE | |
Salutation | FLDCRDSUFFIX | cards | SUFFIX | |
Tax1 | FLDCRDTAXCODE1 | Tax1 & 2 use a reference in the cards table and actual taxcodes are in the Taxes table | cards, Taxes | cards.TAXCODES, Taxes.TAXNUM |
Tax2 | FLDCRDTAXCODE2 | cards, Taxes | cards.TAXCODES, Taxes.TAXNUM | |
Title | FLDCRDTITLE | cards | TITLE | |
Last Updated by | FLDCRDUPDATEUSERID | When performing updates on existing Account - pass the Foreign Software Name which performs the update. | cards | UPDATEUSERID |
Web Address 1 | FLDCRDURL1 | cards | URL1 | |
Web Address 2 | FLDCRDURL2 | cards | URL2 | |
Status | FLDCRDACCOUNTSTATUS | cards | ACCOUNTSTATUS | |
Field1 | FLDCRDUSER2 | cards | USER2 | |
Field2 | FLDCRDUSER3 | cards | USER3 | |
Field3 | FLDCRDUSER4 | cards | USER4 | |
Field4 | FLDCRDUSER5 | cards | USER5 |
Ticket Fields
The table below lists the most important Ticket parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Account REC ID | FLDTKTCARDID | The Account record ID (20 chars). The Account Rec ID can be taken from:
|
tickets | CARDID |
Contact REC ID | FLDTKTCONTACTID | The Contact for this Account. If not provided, the main Contact for the Account is taken. | tickets | CONTACTID |
Contract REC ID | FLDTKTBCRECID | The Contract ID. If not supplied, will be taken from the Account's default contract. | tickets | RECID |
Emp. REC ID | FLDTKTWORKERID | The worker ID to be linked to the Ticket. Must be an active employee. This is an optional parameter. If not passed, the system default will be used. | tickets | WORKERID |
Priority | FLDTKTPRIORITY | The ticket priority. If not passed in the transaction, the default value for new Tickets will be used.
Immediate = 10 |
tickets | PRIORITY |
Ticket Number | FLDTKTTICKETNO | The Ticket number. If passed, must be an existing Ticket, and this will update the Ticket with the details in the transaction. | tickets | TICKETNO |
Description | FLDTKTPROBLEM | This is the Ticket Description. This is a mandatory field, which must contain text. | tickets | PROBLEM |
Ticket Type | FLDTKTKIND | Ticket Type (optional). The Ticket Type string should be passed. If not provided, default is used. | tickets | KIND |
Source | FLDTKTSOURCE | tickets | SOURCE | |
Estimated Duration Time | FLDTKTSCHEDLENESTIM | Estimated duration time for the Ticket in minutes. | tickets | SCHEDLENESTIM |
Show Ticket in Dispatcher | FLDTKTFORDISPATCH | Possible values: Yes/No | tickets | FORDISPATCH |
Status | FLDTKTSTATUS | The Ticket Status (optional). Possible values: |
tickets | STATUS |
Created by User | FLDTKTCREATEUSER | Should contain the external software name which created the Ticket | tickets | CREATEUSER |
Due Date | FLDTKTDUEDATETIME | Due date for the Ticket.
Should be passed in date/time format. e.g. MM/DD/YYYY HH:MM AM/PM |
tickets | DUEDATETIME |
Resolution | FLDTKTSOLUTION | Ticket resolution text | tickets | SOLUTION |
Charge Fields
The table below lists the most important Charge parameters and behavior.
Contract-price Charges have some special characteristics (see comments marked by * in the table below):
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDSLPRECID | The Charge record ID. If provided, the existing Charge will be updated. Otherwise, this will be
added as a new Charge. |
slips | RECID |
Charge Source | FLDSLPSOURCERECID | The Charge source is the entity for which the charge is created. Possible values:
|
slips | SOURCERECID |
Account REC ID | FLDSLPCARDID | The Account record ID (20 chars). The Account REC ID can be taken from:
|
slips | CARDID |
Employee REC ID | FLDSLPWORKERID | The worker record ID to be linked to the Charge. Must be an active employee. This is an optional parameter. If not passed, the system default will be used. | slips | WORKERID |
Charged Item | FLDSLPITEMID | The Item Record ID to be linked to the Charge. This is a mandatory field.
|
slips | ITEMID |
Contract REC ID | FLDSLPBCRECID | The contract record ID (must be a Contract of the Account) | slips | BCRECID |
Ticket REC ID | FLDSLPTICKETID | The Ticket ID to be linked to the Charge.
|
slips | TICKETID |
Date | FLDSLPSLIPDATE | The date for the Charge. This is an optional parameter. If not provided, the current date will
be used. Should be passed in date format. e.g. MM/DD/YYYY |
slips | SLIPDATE |
Description | FLDSLPDESC | The Charge Description. If not provided, will be taken from the Item's description. | slips | DESCRIPTION |
Hours | FLDSLPHOURSAMOUNT | This is the amount of hours | slips | HOURSAMOUNT |
Units | FLDSLPQUANTITY | This is the quantity of units | slips | QUANTITY |
Adjust Amount | FLDSLPADJUSTAMOUNT | Discount/Markup amount. Positive number means Markup, negative number means Discount. | slips | ADJUSTAMOUNT |
Adjust Percent | FLDSLPADJUSTPERCENT | Discount/Markup in percentage, must be between (-100) - 100. Positive number means Markup, negative number means Discount. | slips | ADJUSTPERCENT |
Adjust Type | FLDSLPADJUSTTYPE | The Discount/Markup type: A - total amount adjustment |
slips | ADJUSTTYPE |
From Time | FLDSLPSTARTTIME | From time for labor Charges e.g. 12:06
|
slips | FROMTIME |
To Time | FLDSLPENDTIME | From time for labor Charges e.g. 14:50
|
slips | TOTIME |
Price/Rate | FLDSLPPRICE | If not provided, the price is taken from the Item. | slips | PRICE |
Billable | FLDSLPBILLKIND | B - Billable N - Not Billable |
slips | BILLKIND |
Billed | FLDSLPSTAGE | D - Draft
B - Billed |
slips | STAGE |
Field1 | FLDSLPUSER1 | User defined field | slips | USER1 |
Create User | FLDSLPCREATEUSER | External software name which created the Charge | slips | CREATEUSER |
Item Fields
The table below lists the most important Item parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDITMRECID | The Item record ID. If provided, the existing item will be updated. Otherwise, this will be added as a new item. | Items | RECID |
Item Group | FLDITMITEMTYPEGROUP | The Item Group to be linked to the Charge. This is a mandatory field: F - Labor (Fee) |
Items | ITEMTYPEGROUP |
Item Code | FLDITMITEMNO | The item code is a mandatory field | Items | ITEMNO |
Item Name | FLDITMNAME | The item name is a mandatory field | Items | NAME |
Price Source | FLDITMPRICESOURCE | F - Fixed Price W - by Employee Rate |
Items | |
Price per Hour/Unit | FLDITMUNITISHOUR | This field indicated whether the price is unitbased or hours-based. Y - by Hours |
Items | UNITISHOUR |
Price | FLDITMUNITPRICE | Must be a valid numeric value | Items | UNITPRICE |
Cost | FLDITMSTANDARDCOST | The date for the Charge. This is an optional parameter. If not provided, the current date will
be used. Should be passed in date format. e.g. MM/DD/YYYY |
Items | STANDARDCOST |
Taxes | FLDITMTAXCODE1 FLDITMTAXCODE2 |
You can pass up to 3 different tax codes. | Items, Taxes | Items.TAXCODES, Taxes.TAXNUM |
Description by Name | FLDITMDESCBYNAME | Y - take the description from the name field N - take the description from the Description field |
Items | DESCBYNAME |
Description | FLDITMDESC | If not provided, the description is taken from the name. | Items | DESCRIPTION |
Suspend | FLDITMSUSPENDED | Indicated whether this item is currently suspended: Y - yes |
Items | SUSPENDED |
Notes | FLDITMNOTES | Items | NOTES | |
Field1 | FLDITMUSER1 | User defined field | Items | USER1 |
Create User | FLDITMCREATEUSER | External software name which created the Charge | Items | |
Created by User | FLDTKTCREATEUSER | Should contain the external software name which created the Ticket | Items | CREATEUSER |
History Note Fields
The table below lists the most important History Note parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDHISRECID | The History Note record ID. If provided, the existing History Note will be updated. otherwise, this will be added as a new History Note. | NoteBook | RECID |
Date | FLDHISNOTEDATETIME | Any date format, such as DD/MM/YYYY | NoteBook | NOTEDATETIME |
Description | FLDHISDESCRIPTION | The Description text | NoteBook | DESCRIPTION |
Opportunity/Ticket/Contract | FLDHISLINKRECID | Link to Opportunity or Ticket or Contract | NoteBook | LINKRECID |
Field | FLDHISUSER1 | User defined field | NoteBook | USER1 |
About | FLDHISKIND | Optional field | NoteBook | KIND |
Employee | FLDHISWORKERID | The employee ID to be linked to the History Note. This is a mandatory parameter and must contain an ID of an active employee. | NoteBook | WORKERID |
Account | FLDHISCARDID | The Account record ID (20 chars). The Account Rec ID can be taken from:
|
NoteBook | CARDID |
Contact | FLDHISCONTACTID | The Contact for this Account. If not provided, the main Contact for the Account is taken. | NoteBook | CONTACTID |
Document | FLDHISDOCID | Linked Document ID, can be taken from the Document Properties window (right-click RecID and use Copy), or using the Data Retrieval API to pull information from the database. | NoteBook | DOCID |
Created by User | FLDHISCREATEUSER | Name of the external software which created this History Note | NoteBook | CREATEUSER |
Asset Fields
The table below lists the most important Asset parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Asset Code | FLDASTASSETCODE | If an existing Asset Code is provided, then existing Asset is updated. Otherwise a new Asset is added. | assets | ASSETCODE |
Asset Type | FLDASTASSETTYPE | The Type field is mandatory: Hardware = H |
assets | ASSETTYPE |
Asset Name | FLDASTNAME | assets | NAME | |
Status | FLDASTSTATUS | Mandatory field. Active = A |
assets | STATUS |
Record ID | FLDASTRECID | If provided, must exist in the database. Ignored if empty | assets | RECID |
Serial No. | FLDASTSERIALNO | assets | SERIALNO | |
Account | FLDASTACCRECID | The Account which is linked to the Asset | assets | ACCOUNTRECID |
Contact | FLDASTCONTACTRECID | The Contact for this Account. If not provided, the main Contact for the Account is taken. | assets | CONTACTRECID |
Created by user | FLDASTCREATEUSER | Name of external software which created this Asset | assets | CREATEUSER |
Purchase Date | FLDASTCUSTPURDATE | Any date format, such as DD/MM/YYYY | assets | CUSTPURCHASEDATE |
Purchased From Us | FLDASTCUSTPURFROMUS | Possible values: Y/N. If not provided, default value Y is used. |
assets | CUSTPURCHASEDFROMUS |
Purchase Invoice # | FLDASTCUSTPUROURINV | assets | CUSTPURCHASEDOURINV | |
Customer PO | FLDASTCUSTPURPO | assets | CUSTPURCHASEPO | |
Purchase Price | FLDASTCUSTPURPRICE | assets | CUSTPURCHASEPRICE | |
Delivered Date | FLDASTDELIVEDATE | assets | DELIVERDATE | |
Description | FLDASTDESC | assets | DESCRIPTION | |
Installed By | FLDASTINSTALBY | assets | INSTALLEDBY | |
Installed Date | FLDASTINSTALDATE | assets | INSTALLEDDATE | |
License Codes | FLDASTLICENSECODE | assets | LICENSECODE | |
License Keys | FLDASTLICENSEKEYS | assets | LICENSEKEYS | |
License Notes | FLDASTLICENSENOTES | assets | LICENSENOTES | |
Location | FLDASTLOCATION | assets | LOCATION | |
Manufacturer | FLDASTMANUFACTURER | assets | MANUFACTURER | |
Mnf Serial No. | FLDASTMNFSERIALNO | assets | MNFSERIALNO | |
Model | FLDASTMODEL | assets | MODEL | |
Notes | FLDASTNOTES | assets | NOTES | |
Quantity | FLDASTQUANTITY | If not provided, default value of 1 is used. | assets | QUANTITY |
Last Update By | FLDASTUPDATEUSER | Name of externals software which performed the update | assets | UPDATEUSER |
Field1 | FLDASTUSER1 | User defined field | assets | USER1 |
Field2 | FLDASTUSER2 | User defined field | assets | USER2 |
Field3 | FLDASTUSER3 | User defined field | assets | USER3 |
Field4 | FLDASTUSER4 | User defined field | assets | USER4 |
Field5 | FLDASTUSER5 | User defined field | assets | USER5 |
Date1 | FLDASTUSERDATE1 | User defined field | assets | USERDATE1 |
Number1 | FLDASTUSERNUMBER1 | User defined field | assets | USERNUMBER1 |
Vendor Purchased Date | FLDASTVENDORDATEPURC | assets | VENDORDATEPURCHASED | |
Vendor Invoice # | FLDASTVENDORINVNO | assets | VENDORINVOICENO | |
Vendor PO | FLDASTVENDOROURPO | assets | VENDOROURPO | |
Vendor Price | FLDASTVENDORPRICE | assets | VENDORPRICE | |
Vendor | FLDASTVENDORRECID | assets | VENDORRECID | |
Vendor Serial No. | FLDASTVENDORSERNO | assets | VENDORSERIALNO | |
Vendor Warranty Exp. Date | FLDASTVENDORWARREXP | Any date format, such as DD/MM/YYYY | assets | VENDORWARRANTYEXP |
Version | FLDASTVERSION | assets | VERSION | |
Warranty/License Exp. | FLDASTWARREXPDATE | Any date format, such as DD/MM/YYYY | assets | WARRANTYEXPDATE |
Date |
Calendar Fields
The table below lists the most important Calendar parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDEVTRECID | The Appointment/Task record ID. If provided, the existing entity will be updated. Otherwise, this
will be added as a new Appointment/Task. |
Events | RECID |
Event Type | FLDEVTWRITETOID | The Event type is a mandatory field. Appointment = 1 |
Events | WRITE_TO_ID |
Employee | FLDEVTWORKERID | The Task/Appointment owner (for private events) | Events | WORKER_ID |
Private: User | FLDEVTPRIVATEID | If an Employee was set, this field contain the same REC ID as the Employee field (FLDEVTWORKERID). |
Events | PRIVATE_ID |
Account | FLDEVTCARDID | The Account record ID (20 chars). The Account REC ID can be taken from:
the REC ID field and selecting Copy
new Account with the API |
Events | CARD_ID |
Contact | FLDEVTCONTACTID | The Contact for this Account. If not provided, the main Contact for the Account is taken. | Events | CONTACTID |
Document | FLDEVTDOCID | Linked Document ID, can be taken from the Document Properties window (right-click RecID and use Copy), or using the Data Retrieval API to pull information from the database. | Events | DOCID |
Done Indication | FLDEVTDONE | Possible values: Y/N | Events | DONE |
Date | FLDEVTEVENTDATE | The Appointment/Task date is a mandatory field of Any date format, such as DD/MM/YYYY. If not
provided, the current date will be used. |
Events | EVENT_DATE |
Description | FLDEVTFREETEXT | Events | FREE_TEXT | |
Time: Start | FLDEVTFROMTIME | Mandatory field | Events | FROM_TIME |
Time: End | FLDEVTTOTIME | Relevant only for Appointments. If this parameter is not provided, 30 min. interval from Start Time is used. | Events | TO_TIME |
Opportunity/Ticket | FLDEVTLINKRECID | Linked Ticket/Opportunity/Contract/Asset | Events | LINKRECID |
Field1 | FLDEVTFAMILY | User Defined field | Events | FAMILY |
Field2 | FLDEVTACTION | User Defined field | Events | ACTION |
Field3 | FLDEVTPLACE | User Defined field | Events | PLACE |
Field4 | FLDEVTPLACE1 | User Defined field | Events | PLACE1 |
Field5 | FLDEVTPLACE2 | User Defined field | Events | PLACE2 |
Created by User | FLDEVTCREATEUSERID | Name of external software which created the event | Events | CREATEUSERID |
Last Update: By User | FLDEVTUPDATEUSER | Name of external software which updated the
event |
Events | UPDATE_USER |
Opportunity Fields
The table below lists the most important Opportunity parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDOPPRECID | The Opportunity record ID. If provided, the existing Opportunity will be updated. Otherwise, this will be added as a new Opportunity. | Opps | RECID |
Opportunity Name | FLDOPPNAME | Mandatory field. | Opps | NAME |
Opportunity ID | FLDOPPUSERID | Optional (Oppty ID) | Opps | USERID |
Account | FLDOPPCARDID | The Account record ID (20 chars). The Account REC ID can be taken from:
|
Opps | CARDID |
Contact | FLDOPPCONTACTID | The Contact for this Account. If not provided, the main Contact for the Account is taken. | Opps | CONTACTID |
Source | FLDOPPSOURCE | Opps | SOURCE | |
Close Date | FLDOPPCLOSEDATE | Opps | CLOSEDATE | |
Manager | FLDOPPWORKERID | The Manager's REC ID | Opps | WORKERID |
Open Date | FLDOPPOPENDATE | Opps | OPENDATE | |
Close By Date | FLDOPPESTDATE | Opportunity must be closed by this date | Opps | ESTDATE |
Amount | FLDOPPAMOUNT | Opps | AMOUNT | |
Probability % | FLDOPPPROBABILITY | Opps | PROBABILITY | |
Stage | FLDOPPSTAGE | Opps | STAGE | |
Status | FLDOPPSTATUS | Opps | STATUS | |
Closing Amount | FLDOPPCLOSEAMOUNT | Opps | CLOSEAMOUNT | |
Description | FLDOPPDESCRIPTION | Opps | DESCRIPTION | |
Opportunity Type | FLDOPPKIND | Opps | KIND | |
Opportunity Reason | FLDOPPREASON | Opps | REASON | |
Note | FLDOPPNOTES | Opps | NOTES | |
Territory | FLDOPPREGION | Opps | REGION | |
Field1 | FLDOPTFAMILY | User Defined field | Opps | USER1 |
Field2 | FLDOPTACTION | User Defined field | Opps | USER2 |
Field3 | FLDOPTPLACE | User Defined field | Opps | USER3 |
Created by User | FLDOPTCREATEUSERID | Name of external software which created the event | Opps | CREATEUSER |
Last Update: By User | FLDOPTUPDATEUSER | Name of external software which updated the event | Opps | UPDATEUSER |
Document Fields
The table below lists the Document parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDDOCRECID | The Document record ID. If provided, the existing Document will be updated. Otherwise, this will be added as a new Document. | docs | RECID |
Document Date | FLDDOCDOCDATE | The date for the Document. This is an optional parameter. If not provided, or if the value is illegal, the current date will be used. Should be passed in date format. e.g. MM/DD/YYYY | docs | DOC_DATE |
Subject | FLDDOCDOCUMENTDESC | docs | DOCUMENT_DESC | |
Linked Record | FLDDOCLINKRECID | The RECID of a linked object. Each Document can be linked to one of the following objects:
The Record ID (20 chars) can be taken from:
|
docs | LINKRECID |
Account Rec ID | FLDDOCCARDID | The Account record ID (20 chars). The Account REC ID can be taken from:
|
docs | CARD_ID |
Contact REC ID | FLDDOCCONTACTID | The Contact for this Account. If not provided, the main Contact for the Account is taken. | docs | CONTACTID |
Field1 | FLDDOCTRANSPORT | User Defined field | docs | TRANSPORT_ID |
Field2 | FLDDOCFOLDER | User Defined field | docs | FOLDER_ID |
Field3 | FLDDOCUMENTPLACE | User Defined field | docs | DOCUMENT_PLACE |
File Path + File name | FLDDOCDOCUMENTNAME | The Document path | docs | DOCUMENT_NAME |
Category | FLDDOCTREEID | The category record ID should be taken from the database table called TreeTbl which contains the Category tree | TreeTbl | TREE_ID |
Employee REC ID | FLDDOCWORKERID | The worker record ID to be linked to the Document. Must be an active employee. | docs | WORKER_ID |
Created by User | FLDDOCCREATEUSER | Name of external software which created the document | docs | CREATE_USERNAME |
Last Update: By User | FLDDOCUPDATEUSER | Name of external software which updated the document | docs | UPDATE_USERNAME |
Knowledge Base Article Fields
The table below lists the Knowledge Base Article parameters and behavior:
Field Name | API Field Name | Comment | Physical DB Tables | Physical DB Fields |
---|---|---|---|---|
Record ID | FLDKBARECID | The Article record ID. If provided, the existing Article will be updated. Otherwise, this will be added as a new Article. | KBArticles | RECID |
Document Date | FLDKBACREATEDATE | The date for the Document. This is an optional parameter. If not provided, or if the value is illegal, the current date will be used. Should be passed in date format. e.g. MM/DD/YYYY | KBArticles | CREATEDATE |
Title | FLDKBATITLE | KBArticles | TITLE | |
Problem | FLDKBAPROBLEM | KBArticles | PROBLEM | |
Solution | FLDKBASOLUTION | KBArticles | SOLUTION | |
Status | FLDKBASTATUS | Possible values:
|
KBArticles | STATUS |
Category | FLDKBACATEGORY | KBArticles | CATEGORY | |
Public | FLDKBAISPUBLIC | Is the Document public. Possible values:
|
KBArticles | ISPUBLIC |
Created by User | FLDKBACREATEUSER | Name of external software which created the document | KBArticles | CREATEUSER |
Last Update: By User | FLDKBAUPDATEUSER | Name of external software which updated the document | KBArticles | UPDATEUSER |
Error Codes Description
These error codes are returned when calling the CmtGetDescriptionByStatus function:
1001 Invalid value for this Data Kind.
1002 Invalid DATA buffer received. Make sure you have allocated the buffer correctly and that you have passed the correct buffer length
1003 Invalid MAP buffer received. Make sure you have allocated the buffer correctly and that you have passed the correct buffer length.
1004 Invalid RECID buffer received. Make sure you have allocated the buffer correctly and that you have passed the correct buffer length.
1005 Invalid LOG buffer received. Make sure you've allocated the buffer correctly and that you've passed the correct buffer length
1006 Invalid RECID buffer received. It should be at least 20 characters.
1007 Invalid external software name received. Specify a unique name that identifies your software.
1008 Cannot process the transaction. Make sure to call the INIT procedure at least once prior to sending transactions for processing.
1009 Path specified for RangerMSP DB folder not found.
1010 Path specified for RangerMSP DB folder found, but its contents do not reflect a valid DB folder.
1011 The RECID received for the employee/user was not found in RangerMSP, is invalid or is related to an inactive employee record.
1013 Software name is missing. Make sure you specify a name that identifies your software.
1014 Software name is less than 3 characters long. Make sure you specify your software name has 3 to 15 characters.
1015 Software name is too long. Make sure your software name has 3 to 15 characters.
1016 Invalid CODES buffer received. Make sure you've allocated the buffer correctly and that you've passed the correct buffer length
1017 Invalid Record ID received. Record ID should consist of exactly 20 characters.
1018 The Record ID (RECID) is missing.
1019 Invalid RECID received. Its value cannot point to any entity in RangerMSP.
1020 The size for the result buffer is too small. Increase its size and try again.
1021 CmtDbQry.dll not found.
1022 API calls cannot currently be processed due to periodic maintenance. Please try again in a few moments.
1023 A newer API version was found. Please restart any applications that use the RangerMSP API and try again.
1100 Database access error.
1501 Cannot delete this type of record
1502 This record cannot be deleted by a customer.
2000 General Error Occurred
These error codes are returned when calling the CRMQueryDataRequest function:
110001 The application entity for the query (Subject) is missing.
110002 Invalid XML request. Couldn’t find the XML request name: CRMQueryDataRequest
110003 Invalid value was requested for the record count.
110004 The size for the result buffer is too small. Increase its size and try again.
110005 The query filtering structure is invalid (should form an SQL-like query).
110006 This Code is not exists in RangerMSP
110008 Invalid application entity for the query (Subject) was received
110019 Additional records answer the query. Only the amount of records you requested was returned.
110020 This Code is not exists in RangerMSP
110021 Empty result set. No records were found for the query
These error codes are returned when calling the CRMxmlGetRecDataRequest function:
150001 Invalid XML received. Please verify that the XML structure is valid.
150002 Invalid field identifiers were received.
150003 No records in RangerMSP database match the received RECID
150004 The received XML version number is not supported.
150005 XML version number is missing.
150006 The received RECID does not point to an Appointment or Task record (it points to an internal place holder only).
150007 The received RECID does not point to a valid History record (it points to an internal place holder only).
150008 Invalid RECID received. Its value cannot point to any entity in RangerMSP.
150009 The received RECID points to object which is not supported by the API.
150011 Invalid XML request. Couldn’t find the XML request name: CRMxmlgetrecdatarequest
General error codes, returned when calling the functions CmtGetDescriptionByCode:
50000 The data is not correct for its type.
50001 The field value has been truncated due to the field length in the database.
50002 The insert operation Failed because the REC ID already existed in the database.
50003 Failed to update Record since it is being updated by another user.
50103 Illegal REC ID.
50104 REC ID Creation failed.
50105 Illegal Sub-Contact REC ID.
50106 Illegal Contract REC ID.
50107 Illegal Employee REC ID.
50108 Illegal Ticket REC ID.
50109 Illegal Account REC ID.
50110 Illegal data for that Contract.
50111 This Employee is not active.
50112 Illegal Document REC ID.
50113 Illegal linked object REC ID.
50114 Employee not found.
50115 Some mandatory fields have no values.
50116 Invalid REC ID buffer received. It should be at least 20 characters.
50117 The Record ID (RECID) is missing.
50118 Invalid Record ID received. Record ID should consist of exactly 20 characters.
50119 Invalid RECID received. Its value cannot point to any entity in RangerMSP.
50120 Software name is missing. Make sure you specify a name that identifies your software.
50121 Software name is less than 3 characters long. Make sure your software name has 3 to 15 characters.
50122 Software name is too long. Make sure your software name has 3 to 15 characters.
51000 Illegal kind of Account entity.
51001 Account Manager not found.
51002 The REC ID of the Account Manager is illegal.
51003 Illegal tax code.
51004 This code does not exist in RangerMSP.
52000 Illegal kind of event.
52001 Illegal start time.
52002 Illegal end time.
52003 Illegal event date.
52004 The field Reminder1 has Illegal Value.
52005 The amount in the field has an illegal value.
52006 The Field Remider1:Units has Illegal Value.
52007 The Field Remider2:Active has Illegal Value.
52008 The Field Remider2:Amount has Illegal Value.
52009 The Field Remider2:Units has Illegal Value.
52010 Illegal employee REC ID.
52011 Error occurred while updating the Task/Appointment employee field.
54000 Illegal Ticket open date.
54001 Illegal Ticket close date.
54002 Illegal Ticket code area.
54004 Illegal Ticket priority.
54005 Illegal Ticket status.
54006 The Ticket Account was not found in the database.
54007 The Ticket Account Manager was not ound in the database.
54008 This code does not exist in RangerMSP.
54009 This code does not exist in RangerMSP.
54010 This code does not exist in RangerMSP.
54011 This code does not exist in RangerMSP.
54012 This code does not exist in RangerMSP.
55000 Illegal charge date.
55001 Illegal charge REC ID.
55002 Illegal start date.
55003 Illegal start time.
55004 Illegal amount entered for hours.
55005 Illegal quantity.
55006 Illegal price.
55007 Illegal total.
55008 Illegal value in the Adjust Amount field.
55009 Illegal value in the Adjust Percent.
55010 The Discount/Markup field has an illegal value.
55011 Illegal value in the Adjust Kind field.
55012 Illegal bill total.
55013 You can not create a charge for a suspended item.
55014 Item was not found in RangerMSP.
55015 This code does not exist in RangerMSP.
55016 This code does not exists in RangerMSP.
55017 This Code does not exist in RangerMSP.
55018 This Code does not exist in RangerMSP.
55019 This Code does not exist in RangerMSP.
55020 This Code does not exist in RangerMSP.
55021 This Code does not exist in RangerMSP.
56000 Illegal item code.
56001 The field that indicates the item group type has an illegal value.
56002 The field that indicates if the Item is suspended has an illegal value.
56003 Illegal value of The field that indicate if the item is suspended.
56004 Mismatch found between the fields price and price source.
56005 Illegal cost.
56006 Mismatch found between the fields cost and item group type.
56007 The field that indicates if the charge is by unit or by hours has an illegal value.
56008 Illegal value in the Description.
56009 The field that indicates the item type has an illegal value.
57000 This Code does not exist in RangerMSP.
58000 Illegal date time.
58001 The Description field was not found.
58002 The field kind was not found.
58003 The Account member was not found.
59000 This code does not exists in RangerMSP.
59001 This Code does not exist in RangerMSP.
59002 This Code does not exist in RangerMSP.
59003 This Code does not exist in RangerMSP.
59004 This Code does not exist in RangerMSP.
59005 This Code does not exist in RangerMSP.
60000 Invalid web user record ID number.
60001 This customer web user is not active.
60002 This user is not a customer.