Capability
The Service Import allows the User to INSERT and UPDATE Service Records. Child records of the Service is association records only. Each Service type requires its own distinct Service Import. For example, Auth Codes are imported using an Auth Code Service import. This accommodates the service-specific fields used by different Service types. For example, Phone Service uses Service Host as a field choice that is not available for other Service types.
The following is generalized functionality that can appear on various Services grids, based on how those Services behave. Most commonly this functionality refers to Phone, Trunk, Authorization Code and Other Services. The Aging Process in PCR-360 is an automated data removal process that will delete old information from Inactive Services. Examples of data that will be removed are the Owner, Service Host, and Location fields. Some information can be deleted or remain on the Service for future use on the Service ID. An example is the User Defined Fields (UDFs) can have the option to have their data persist or be scrubbed on Aging with the Aging Persist flag. Another example is the Configuration Option DELETE_CHARGES_DURING_AGING which will allow you to delete old Charges or leave them on the Service. Sometimes it can be necessary to manually "Age" a Service to make it active again. This process is normally handled automatically by either the setting on the Service Catalog or the Tenant Management Aging fields. To manually Age a Service select the Service and click the button. There are a few requirements before a Service can be aged manually: The History Report of a Service will still show all the old data of the Service. Once a Service has been "Aged" successfully, PCR-360 will change the status to available so that the Service ID can be reused on Service Orders for a new Owner. There may occur a situation where a Service is desired to no longer be available after it has been "Aged" (such as if the number was receiving harassing phone calls). The best way to handle this is to set the Service to a Service Pool with Services that are designated "Do Not Use". By adding the Service to this Pool, the Service will be designated to not be used simply by being in the "Do Not Use" Pool. Additionally, the Administrator can add a UDF that will persist through Aging as well, with the flag "Verify Field Data" set to call attention to UDF. Using this method provides a backstop to the need to not use the Service since a Remark could easily be overlooked when re-assigning the Service with an Add Action. Users can add Services in bulk by clicking on the button located on the Grid Toolbar above the Services grid. In the window, click the Search Icon in the 'Service Type' field and select a type from the list, enter a range of phone numbers to a 'Service Type', and click the button. Each phone number included within the specified range will appear as a separate Service in the Services grid. When a User selects a Service and clicks the button on the Grid, they will open the Estimate Billing form. From this Form, a User can generate an estimation of expected Charges over a provided Billing Period, by clicking the button.Age Selected
Adding a Range of Services
Estimate Billing
Matches On
The Import attempts to match the Service ID. If there is no match, the record from the Import will INSERT. If there is a match, the remaining fields can UPDATE.
Fields
Service ID
Required
Datatype is String.
Service ID will only INSERT if there is not a match in the Import File with an existing Service record based on the Service ID.
Since the Import matches on the Service ID, this field CANNOT UPDATE.
Service Catalog
Datatype is String.
Conditionally Required IF the Import is trying to INSERT a new record.
NOT Required if the Import File is trying to UPDATE an existing record.
Service Catalog can be provided for the whole Import from the Import Record Format definition.
Service Status
Datatype is String.
Conditionally Required IF the Import is trying to INSERT a new record.
NOT Required if the Import File is trying to UPDATE an existing record.
Permitted Values must be one of List Values of type SERVICE_STATUS: Available, Inactive, Active, Reserved, Order Pending, Suspend, or Retired.
Any values added by a User to the SERVICE_STATUS list can also be used.
Service Host
Datatype is String.
Conditionally Required IF all of the following are true.
The Import is trying to INSERT the record and,
The Status is Active and,
The Service Catalog is of the Phone type.
Service Host is NOT required if the Import is trying to UPDATE.
The provided Service Host must be allowed based on the Service Host Permissions on the Service Catalog or the Service Host will not INSERT or UPDATE.
Owner
At least one Owner (either Contact or Dept. Hierarchy) may be conditionally Required IF the following conditions are met:
The Import is attempting to INSERT the Service Record and,
The Service Status is Active.
Otherwise, the Owner field is NOT required.
Contact Owner
Datatype is String.
Import matches on the Customer Number field only.
If the existing Contact is not a Customer type Contact, the record fails to Import.
Dept. Hierarchy Owner
Datatype is String.
Only the Code From the Dept. Hierarchy is expected.
Location
Datatype is String.
Conditionally Required if Status is Active AND if the Service Catalog flag Location Required is set.
The full Location Path is expected.
Location Type
Datatype is String.
Conditionally Required if the provided Location Name exists with multiple Types.
Permitted values are from the LOCATION_TYPE List Values.
This field is used for the Location lookup if provided.
Rating Group
Datatype is String.
Conditionally Required if the following two conditions are met:
If the Service is Active AND,
The USE_RATING_GROUP Configuration flag is set to True.
SLA Catalog
Datatype is String.
Reference
Datatype is String.
Billing Group Override
Datatype is String.
This is an override of the Owner Billing Group.
Multiple Locations
Datatype is Boolean.
Defaults to False [0].
Permitted Values are 1, True, or Yes and set the Flag to True [1].
All other values enter as False [0].
Essential
Datatype is Boolean.
Defaults to False [0].
Permitted Values are 1, True, or Yes and set the Flag to True [1].
All other values enter as False [0].
Billable
Datatype is Boolean.
Defaults to False [0].
Permitted Values are 1, True, or Yes and set the Flag to True [1].
All other values enter as False [0].
Directory
Datatype is Boolean.
Defaults to True [1].
Permitted Values are 1, True, or Yes and set the Flag to True.
All other values enter as False [0].
Report 911
Datatype is Boolean.
Defaults to False [0].
Permitted Values are 1, True, or Yes set the Flag to True [1].
All other values enter as False [0].
Company ID
Datatype is String.
Auth Code Type
Datatype is List.
Default is blank.
Permitted values are from the customer defined AUTH_CODE_TYPE List Values .
Note: This is only available for Auth Code Service Import.
Class of Service
Datatype is String.
Default is blank.
Permitted values must be existing Class of Service Codes from Admin > System Tables > Class of Service.
Note: This is only available for Auth Code Service Import.
Service RECID
Datatype is Number.
Default is blank.
This is used to specify the Service Record for Services that have a blank Service ID.
If this is provided, the provided value must be a valid existing service RECID.
If it is not, it will cause an error.
The only Service Type permitted to have blank Service IDs is Other Services.
Child Records
Charges Tab
Charges are handled with a separate Import file. See the Service Charges Import for details.
GLA Tab
GLAs added to a Service with the Service Import ONLY adds an association between the existing GLAs and the selected Service in the Import File. The Service Import cannot INSERT or UPDATE GLA records.
GLA
Datatype is String.
GLA must be the full GLA Path with all Components separated by the GLA_CONCATENATOR.
Multiple levels of a hierarchy "path" (like Locations, GLAs, and Catalogs) are connected by the HIERARCHYPATH_SEPARATOR string.
The default value for this string is right angle-brace (>) with a space on either side: " > ".
When importing nested Locations, the separator you use for each level of the hierarchy must match the concatenator string.
For example, Site A > Building B > Room C.
GLA Expense Type
Conditionally Required if GLA is provided.
Datatype is String.
Must be one of the following: Default, Usage, Equipment, or Labor.
GLA Split Percent
Conditionally Required if a GLA is provided If a split GLA is desired, the Import File must have one line for each different GLA and its relevant split percentage.
Percentages must be whole integers.
If the percents do not add up to 100%, the Service will still INSERT or UPDATE, but the GLA causes an error and no GLA values change.
If the GLA values do add up to 100%, the GLA for that given GLA Expense Type are replaced with the new values.
Pool Tab
Pool Name
Datatype is String.
Remarks Tab
This adds a Remark through the Import into the Service.
Remarks
Datatype is String.
Equipment Tab
Equipment added to a Service with the Service Import ONLY adds an association between the existing Equipment and the selected Service in the Import File. The Service Import cannot INSERT or UPDATE Equipment records.
This includes the changing of the Equipment Status from Unassigned to Assigned. So if you want the Equipment Status to change, you will need to also run an Equipment import.
The Equipment fields try to identify an existing Equipment record to add to the Equipment tab of the Service. They are checked in the order of the list below. If a value is blank, it is ignored by the Import process. If the value is filled in, the Import attempts to do the lookup.
If the lookup fails, the Import stops and output an error message. This error does not affect the Service INSERT or UPDATE, only the Equipment tab association.
An Equipment can only be associated if the Service Status is 'Active' or 'Suspend'. And the existing Equipment Status must be 'Assigned'.
If the Service Location and Equipment Location are different, it will cause an import Warning, but the association will still get created.
By default, Equipment will get appended to any existing Equipment already on the Service. See the Flags below to change this behavior.
Equipment Asset
Datatype is String.
Equipment ID
Datatype is String.
Equipment Location
Datatype is String.
The full Location Path hierarchy in a single string, with individual parts of the Location Hierarchy separated by the HIERARCHYPATH_CONCATENATOR.
Multiple levels of a hierarchy "path" (like Locations, GLAs, and Catalogs) are connected by the HIERARCHYPATH_SEPARATOR string.
The default value for this string is right angle-brace (>) with a space on either side: " > ".
When importing nested Locations, the separator you use for each level of the hierarchy must match the concatenator string.
For example, Site A > Building B > Room C.
The Equipment Location value is used only with a non-blank Equipment ID. If a non-blank Equipment ID is not provided, then the Location value is ignored. You cannot lookup an Equipment with just a Location.
Equipment Serial Number
Datatype is String.
Equipment Mac Address
Datatype is String.
Equipment Recid
Datatype is Number.
This is the RECID field from the Equipment record. This is usually not visible, but it can be obtained from an export. This method will always provide a unique number. It is useful for Equipment with blank values for all of the other key fields.
Flags / Conditional Logic
REPLACE_EQUIPMENT:
Default Value is False
- True: When the flag is True, all of the Equipment is removed and the Import appends the Import Record item.
- False: The default behavior is to simply append Equipment associations.
CLEAR_EQUIPMENT:
Default Value is False.
- True: If this is set, the Equipment list gets cleared even if no new Equipment is provided.
- False: Equipment is not be cleared.
APPEND_POOLS:
Default Value is False.
- True: Setting the flag to True appends Pools to matching Service ID Pools and does not clear any existing Pools.
- False: Setting the flag to False clears existing Pools on matching Service IDs and updates the Pool on the first instance of that Service. Any additional Service ID Pools are appended after the first instance.
Errors
There are a large number of possible errors for Imports. There are two types: errors that prevent the record from Importing and those that don't but cannot update related Import record information.
The following display if the Service INSERT or UPDATE fails:
- Error : No Service ID Specified
- Error : No Status provided for new Service '<SERVICE_ID>'
- Error : Invalid Contact '<OWNER_CONTACT>'
- Error : Invalid Dept Hierarchy '<OWNER_DEPT_HIERARCHY>'
- Error : Inactive Service Catalog '<SERV_CATALOG>'
- Error : Invalid Service Catalog '<SERV_CATALOG>'
- Error : Inactive Service Catalog '<SERV_CATALOG>'
- Error : No Service Catalog Specified
- Error : Invalid Service Host '<SERVICE_HOST>'
- Error : Provided Service Host not permitted for this service catalog
- Error : Invalid Location '<LOCATION>'
- Error : Invalid Location Type '<LOCATION_TYPE>'
- Error : Provided Location not permitted for this Service Catalog
- Error : Invalid GLA Percent '<percent>'
- Error : Missing GLA Expense Type
- Error : Missing GLA Percent
- Error : Invalid GLA '<gla>'
- Error : Missing GLA
- Error : Invalid Service Pools '<service_pool>'
- Error : Invalid Billing Group '<BILLING_GROUP>'
- Error : Invalid Class Of Service '<class of service>'
- Error : Missing Auth Code type for new Auth Code '<SERVICE_ID>'
- Error : Can't assign Equipment unless Service Status is Active or Suspend
- Error : Can't assign Equipment unless Equipment Status is Assigned
- Error : This Equipment Catalog type is restricted from being on this Service Catalog type
- Error : Failed to save Service record; <errorMessage>
- Error : Service <serviceId>, GLA type <expenseTypeListsRecid>; <errorMessage>
- Error : Service <serviceId>, GLA type <expenseTypeListsRecid>, Percents add up to <sum> (should be 100)
- Error : Invalid Equipment Asset Tag '<asset>"
- Error : Invalid Equipment Location '<location>'
- Error : Invalid Equipment for Equipment ID '<equipmentId>'
- Error : Found multiple existing Equipment for Equipment ID '<equipmentId>'
- Error : Invalid Equipment Serial Number '<serialNumber>'
- Error : Found multiple existing Equipment with Serial Number '<serialNumber>'
- Error : Invalid Equipment MAC Address '<macAddress>'
- Error : Found multiple existing Equipment with MAC Address '<macAddress>'
- Error : Invalid Equipment RECID '<recid>'
These messages are NOT indications that the Service INSERT or UPDATE to failed. The Service will INSERT or UPDATE. However, the subsequent Child record may have a warning generate and the child record is not added to the Service. They are non-essential for the Service or they happen after the Service save.
- Warning : Invalid SLA Catalog '<SLA_CATALOG>'
- Warning : Invalid Service Host '<SERVICE_HOST>'
- Warning : Invalid Available Service Host '<SERVICE_HOST>'
- Warning : Service Location doesn't match Equipment Location
Notes
The ability to append Pools to a Service was added. The default behavior for adding Pools is to clear the Pool list for the first instance of a Service ID in the import file. Then, append to the Pool list for every instance of the Service ID after the first. This can be changed with the APPEND_POOLS flag as described in the Flags section.
If a Remarks value is provided, that value is appended as a new record in the Remarks tab of the Service. This happens even if an identical Remark already exists. Care must be taken to avoid unintentional duplicate Remarks if the same file is Imported multiple times.
UDF Associations
User Defined Fields on any given Import are all handled the same way with Conditional Logic. For more information about adding a UDF to the Import, see the User Defined Fields section of the Imports main page.