Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from this space and version 2019.2

Table of Contents
outlinetrue
stylenone

Summary

Admin Users can access the Imports/Exports function to export and import batch data. For example, a User could export their organization's E911 data to a local PSAP (Public Safety Answering Point) in order to update critical service location information. Similarly, a User could import monthly billing details from their organization's cellular carrier.

For flexible ad hoc imports and exports, the PCR-360 application also supports an API (Application Programmer Interface) as documented in the ‘API' section of this document. The Imports/Exports function affords Users the ability to adapt to changes in batch file import and export formats and removes the need to seek customization from PCR whenever these changes occur.

none
Table of Contents
outlinetrue
style
Insert excerpt
HTML Appendix
HTML Appendix
nopaneltrue

Exporting Data From the System

  1. Navigate to the Export Files grid by opening the 'Admin' tab and clicking on the node labeled 'File Management'. Click on the node labeled 'Export Files'. Admin > Imports/Exports > Export Files
  2. Click the row containing the information you want to export.
  3. Click the Generate Export File button. 
  4. You can choose to View Export or Download Export file.

Adding a File For Export

To Export a file, Users must first add the file as an item on the Export Files grid. Click the 'Add' button located on the Grid Toolbar above the Export Files grid.

...

In the form, Users can select the desired column of data in the field labeled 'Source Column'. The options listed in the 'Source Column' field depend on the User's selection of 'Source Data'. For example, if the User selected 'General Ledger' as the 'Source Data', the 'Source Column' field will list each column eachcolumn that exists on the General Ledger Grid. If your export file requires a static, repeating value in a particular column; select the Source Column option of “Constant Value”. You can then enter that repeating value in the Constant Value field.

...

Once these required fields have been satisfied, click the 'Save New' button  . The new header/footer will appear on the 'Headers/Footers Line' grid.

Editing a File For Export

Users can edit existing files for export by double-clicking on an item in the File Exports grid.

This opens the data entry form. Once all required fields have been fulfilled, click 'Save' to make changes permanent.

Deleting a File For Export

To delete one or more existing files for export, highlight each item to be removed and click the 'Delete Selected' button on the Grid Toolbar above the Export Files Grid.

Importing Data to the System

To Import a file, Users must first define the nature of the data to be Imported. Since a single file often contains multiple types of information, the User must define the format of the file itself, allowing the PCR-360 application to process the data using the same format as that implemented by the external file. These Import Formats all related to specific things that can be imported. A list of all the definitions that can be utilized can be found in the Imports wiki.

Import File Formats

Navigate to the Import File Formats grid by opening the 'Admin' tab and clicking on the node labeled 'File Management'. Click on the node labeled 'Import Files'. Then click on the node labeled 'Import File Formats'. To add a new import file format, click the 'Add' button on the Grid Toolbar above the Import File Formats Grid.

...

In the tab labeled 'Record Format', the User can define all of the unique record types and what columns are contained in each one.

Image RemovedImage Added

The Record Format section builds on the Record Format Flag from mentioned above. On the previous screen, we identified the location of Record Format Flag. In this section, we use that location to identify each unique record type. For Example, if we said the Record Format Flag started in 1 and was 1 position long, we can now say that calls in this file are Flag Value “C”, Taxes are “T”, etc. Each one of these unique record types is defined here. Therefore, in the Record Format Field, you select the type of data in the record type you are identifying. In the example above, this is 'Calls'. Users can enter a Flag Value. In our example, it was the letter “C” but it can be any value that the system generating the data chooses. Note: If the type of data in this record type is ‘Usage’, you must also select the Usage Type and Service Type.

Column Mapping

Now that we know that call records all have a C in position 1, we need to say what and where the rest of the data is in this record type - that is what the Column Mapping is for.

Image Removed

To add entries into the Column Mapping table, simply select the Add button in the Grid. The data entry form looks like this:

Image Removed

The Map To field is required and the list of values is displayed is linked to the type of data that you will be importing in this record type. In our example, because we selected the “Call” Map Type, the Map To fields are all related to Call data. Note: Your import file may not have all of the columns in the Map To field. This is OK.

Once the column is selected, you must enter the Start and Width information for Fixed Width files or the Delimited Index for Delimited files to define where this column of data is in the record. Certain types of data, like dates, can be in any number of formats in the import file such as MM-DD-YY or MM-DD-YYYY, etc. For these fields, we need to know the format. If the Format Mask field is enabled, please select the appropriate Format Mask from the values displayed.

Conditional Logic

Image Removed

The Conditional Logic form allows you attach conditional logic to the import. This functionality is very flexible but also highly technical and will require the skills of technical personnel. Due to the complex nature of the capabilities of this functionality, this portion of the import will be reviewed by the customer and a PCR-360 programmer.

Conditional Logic Flags

Sometimes an import process needs to behave in a non-standard way due to special circumstances. To control this behavior, you can set flags in the import conditional logic. Usually the flags are boolean, but they could be other types.

Syntax to set the flag in the conditional logic:

Code Block
languagephp
[FLAGS.CONTACTS_CHECK_NAMES] = true;

Syntax to check the flag value in the code:

Code Block
languagephp
if (isset($params["FLAGS___CONTACTS_CHECK_NAMES"]) &&
        $params["FLAGS___CONTACTS_CHECK_NAMES"] === true) {

or for default case:

Code Block
languagephp
if (!isset($params["FLAGS___UPDATE_CONTACT_EMAIL"]) ||
         (isset($params["FLAGS___UPDATE_CONTACT_EMAIL"]) &&
          $params["FLAGS___UPDATE_CONTACT_EMAIL"] === true)) {

The following is a list of all of the import conditional logic flags that we have so far:

FLAGS_IGNORE default false

If set to true, this line will be ignored (skipped) by the import process. This replaces the Call Import specific method of setting the Call_Type to "Ignore" since this works with all import types.

Contact Import Flags:

FLAGS_CONTACTS_CHECK_NAMES default false

If set to true, try to look up the contact name in the existing records. It will error out if multiple matches are found. The default behavior is to ignore the name matches and just look up existing records by Customer Number or Email.

FLAGS_CONTACTS_INSERT_INACTIVE default false

If set to true and inserting a new contact, the status will be set to Inactive instead of the default Active.

FLAGS_UPDATE_CONTACT_EMAIL default true

If set to false, the email value is not changed in the contact import. The default behavior is to add a new email line to the contact if the value provided in the import is not already in the list of emails for that contact.

FLAGS_UPDATE_CONTACT_PHONE default true

If set to false, the phone value is not changed in the contact import. The default behavior is to add a new phone line to the contact if the value provided in the import is not already in the list of phones for that contact.

GLA Import Flags:

FLAGS__GLA_ALLOW_UPDATE _default true

If set to false, then if the GLA being imported already exists, the import will give an error for that line. The default true behavior would update the GLA.

FLAGS_GLA_UNIQUE_NUM_ITEMS integer value, default is the number of component items in the GLA being imported.

When testing to see if a GLA already exists, this is the number of components to compare or the number of components that will make a unique GLA during the import when testing whether or not to throw a Duplicate error on the Save New.

Once all of your values have been entered, press ‘Save’ or ‘Save New’ to continue 

Calls and Usage Import 

If Calls or Usage are selected as the Import Record Type, then you will see these additional fields on the Import File Record Format form:

Image Added

Usage Import Fields

When the Usage Record Type is selected there are some fields that become required. Below are what those required fields are and how they operate

Usage Type

The Usage Type Field is an Informational Field that inserts a Value as a Column  into all the Records for that Record Format. 

When a value is selected from from the this value will get applied to the resulting Usage Records.

The name of a Usage Type can be changed as well as new Usage types added by going to Admin > System Tables > List Values. 

The PCR-360 default values for Usage Type are Data Storage and Bandwidth. However, you can add as many new values as you like.

Service Type:

If a value for this is selected, then only that type of service will be searched for when we are looking up the service that the Usage will be billed to.

Rating Method

A Rating Method is the method used to assign charges to a call record format. For a Usage Record Type the Rating Method is required. The three types or Rating Methods are listed below.

Rate Tables

Maps to given Rate Table defined in Admin.

The rate must be found in the Call Rates Table.

Pass through cost in file

The costs for the call will come from the file that is being imported.

Flat Rate

Activates additional fields to set flat rate. 

The additional information comes from the fields in the Initial and Additional sections.

Column Mapping

Now that we know that call records all have a C in position 1, we need to say what and where the rest of the data is in this record type - that is what the Column Mapping is for.

 Image Added

To add entries into the Column Mapping table, simply select the Add button in the Grid. The data entry form looks like this:

Image Added

The Map To field is required and the list of values is displayed is linked to the type of data that you will be importing in this record type. In our example, because we selected the “Call” Map Type, the Map To fields are all related to Call data. Note: Your import file may not have all of the columns in the Map To field. This is OK.

Once the column is selected, you must enter the Start and Width information for Fixed Width files or the Delimited Index for Delimited files to define where this column of data is in the record. The Start Field defines where the column start in the Import File. The Width Column defines where the Column starts in the Import File. Certain types of data, like dates, can be in any number of formats in the import file such as MM-DD-YY or MM-DD-YYYY, etc. For these fields, we need to know the format. If the Format Mask field is enabled, please select the appropriate Format Mask from the values displayed.

Conditional Logic

Image Added

The Conditional Logic form allows you attach conditional logic to the import. This functionality is very flexible but also highly technical and will require the skills of technical personnel. Due to the complex nature of the capabilities of this functionality, this portion of the import will be reviewed by the customer and a PCR-360 programmer.

Conditional Logic Flags

Sometimes an import process needs to behave in a non-standard way due to special circumstances. To control this behavior, you can set flags in the import conditional logic. Usually the flags are boolean, but they could be other types.

Syntax to set the flag in the conditional logic:

Code Block
languagephp
[FLAGS.IGNORE] = true;

The following is a list of the import conditional logic flags that are available in all import types:

[FLAGS.IGNORE] default false

If set to true, this line of the input file will be ignored (skipped) by the import process. 

[FLAGS.FILENAME]

This is a read only field that contains the filename of the import file being imported.

[FLAGS.FILELINE]

This is a read only field that contains the line number from the import file of the record currently being imported.

There are other flags available in specific import types that are described in the specific import wiki pages.

User Defined Fields

User Defined Fields (UDFs) are handled through the Conditional Logic tab. Any UDFs have to be included in Conditional Logic in order to Import them into PCR-360.

The process of assigning User Defined Fields in Conditional Logic can be found in this link:

Header Lines Tab

If you specified either Header or Footer lines in the Manage Import File Format in Tenant form, the Header Lines Tab will appear. These headers and footers may be defined by pressing the Header Lines tab. The data entry form is displayed.Image Removed


You should define the total number of lines that you specified in the Manage Import File Format in Tenant form. For example, if you entered 2 Header Lines and 1 Footer Line, you should define 3 lines in the form shown above.

Image Added

For each line, you should define the columns that have pertinent information relating to the file, for example, bill date. If the header or footer is simply memo data from the originating application (description of file, record counts, etc.), the columns don’t need to be defined, just the line itself. In this case, the line needs to be defined so that PCR-360 can recognize that it is a record that can be ignored since it doesn’t contain importable information.

...