Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Summary

This article describes adding profile questions. Profile questions provide a way to request information from the interface user (to specify a security question, a MAC address, etc.). The user could be an agent, admin or an end customer. Profile questions can be configured to require manual input, a 'select from' list or even a multi-select list.

Profile questions are applied to specific roles, packages or services. To apply a profile question to all packages or roles (user types) you would create 'Extended Attributes'. If you wish to apply profile questions in this way (globally) reference Extended Attributes (Extended Profile Questions) after reading this article.

Profile Data can be transferred when a package is upgraded for example to another package. Details for the transfer process are listed in the Upgrade Component article.

Adding Profile Questions

Profile questions can be created and associated with various EngageIP elements. Below are instructions how to navigate to and setup profile questions.

Setting up Role specific Profile Questions

Role specific profile questions will appear when creating a new account then selecting the specified role in the 'RoleFilter' field.

Setup Steps

  1. Click on the Setup tab

  2. Click on Roles

  3. Click on the name of the role you wish to add the profile question to (Customer, Admin, etc.)

  4. Scroll down to the Components section and click the Add Button then Profile Question

  5. See Profile Question Definitions below for information on how to fill out the fields on the profile questions page

  6. Click the Save button when finished

Setting up Package Profile Questions

Permissions Required

Note: In order to perform the configuration steps below role permissions for your role must be enabled for PackageProfileQuestion and PackageAttributeProfileAnswer. See the Roles – Adding Roles, Setting Role Permissions and Importing guide for instructions on adding permissions.

Package Profile Questions can be added to Packages from the Setup tab, they do not propagate down to the User-Package level (i.e. agents will not see the profile question when adding a Package to a users account in the AdminPortal)

Setup Steps

  1. Click on the Setup tab

  2. Click on Package Profile Questions

  3. Click on the Add button in the lower right

  4. See Profile Question Definitions below for information on how to fill out the fields on the Profile Questions page

  5. Click the Save button when finished

Adding Package Profile Questions to specific Packages

  1. Click on the Setup tab

  2. Click on Packages

  3. Click on the name of an existing Package you want to add the Profile Question to

  4. Scroll down to the Components section and click the Add Button then select the name of the Package Profile Question you setup above

Setting up Service Profile Questions

New in EngageIP 8.5.21.0

Permissions Required

Note: In order to perform the configuration steps below role permissions for your role must be enabled for ServiceProfileQuestion and ServiceAttributeProfileAnswer. See the Roles – Adding Roles, Setting Role Permissions and Importing guide for instructions on adding permissions.

Service Profile Questions can be added to Services from the Setup tab, they do not propagate down to the User-Service level (i.e. agents will not see the Profile Question/Answer when editing a Service within a User-Package on an Account in the AdminPortal).

Note: it is possible to add Profile Questions as Components on Services so that they are presented at the User-Service level (see the section Setting up User-Service Profile Questions below)

Service Profile Questions can store information related to services for reporting or quick reference purposes. The Profile Questions can store any data you wish to track, for instance server details, capacity of the service, speed or availability/class of the service (residential, business), etc. If you wish to generate a Custom Report in the AdminPortal that will output the Service Profile Questions data you can do so. For more information on generating Custom Reports see the Creating Custom Reports in EngageIP Billing article.

Setup Steps

  1. Click on the Setup tab

  2. Click on Service Profile Questions

  3. Click on the Add button in the lower right

  4. See Profile Question Definitions below for information on how to fill out the fields on the Profile Questions page

  5. Click the Save button when finished


Adding Service Profile Questions to specific Services

  1. Click on the Setup tab

  2. Click on Services

  3. Click on the name of an existing Service you want to add the Profile Question to

  4. Scroll down to the Components section and click the Add Button then select the name of the Service Profile Question you setup above

Setting up User-Service Profile Questions

Permissions Required

Note: In order to perform the configuration steps below role permissions for your role must be enabled for ServiceAttributeProfileQuestion. In order to modify or delete Profile Questions on User-Services within an account UserServiceAttributeProfileAnswer role permissions must be enabled. See the Roles – Adding Roles, Setting Role Permissions and Importing guide for instructions on adding permissions.

If you want to add Profile Questions which will appear when adding/editing services on a user's account in the AdminPortal (i.e. exist at the User-Service level), follow the steps below.

Setup Steps

  1. Click on the Setup tab

  2. Click on Services

  3. Click on the name of the Service you wish to add the profile question to

  4. Scroll down to the Components section and click the Add Button then Profile Question

  5. See Profile Question Definitions below for information on how to fill out the fields on the profile questions page

  6. Click the Save button when finished

  7. Repeat the process above to add additional Profile Questions to any Service

Profile Question Definitions

  • Name - Descriptive name for profile questions for internal use

  • Question - Question for the data being requested

  • Required - check box to force this question to be required when its shown, for example on add account

  • Hidden - Does the profile question appear on the account

  • Read Only - Cannot be editted once entered

  • Display Name - The name that will show to the user in the interface when this profile questions is presented

  • Default Answer - This can be completed or left blank, if completed, it will pre-populate the profile question answers on the page

  • Multiple Answers - Allows the user to add the Profile Question more than once in the interface, meaning the same Question can be added with multiple answers. E.g. this could be used to track MAC Addresses for multiple CPE devices

  • Unique Answer - Require that the answer provided be unique within EngageIP. For example a DID / WTN that needs to be unique within EngageIP for usage billing purposes

  • Profile Questions Type Options

    • Parent - If parent is selected, it will set this profile questions as a parent / container to which you can add other profile questions It basically allows grouping of profile questions under the 'parent' entity / profile questions. For example, you may want to group a set of security questions together and add them all at once to each of your services, you could put them under a 'parent' profile questions and then when they are answered, they would show as one line item under the service with multiple answers (one per profile questions). They would also be editable all on the same page for quick updating as opposed to separate profile questions which you would need to edit individually.

      • To add parent / child profile questions, do the following:

        • Add profile question, configure as parent, really just need a parent name here, click save

        • Add another profile question. Select the above profile question as the parent of this one, enter your question and datatype and other appropriate info. This is the profile question which will ask and house the data

        • Add more profile questions underneath the parent as needed.

        • When complete, the profile questions will show in a tree format similar to the image here. Child questions show below the parent with arrows indicating the relationship:

      Entered - this is the start of the radio button list to select the type of input, entered means a text box is available

      • Data Type - defines the validation, for example if Phone Number is selected, it will validate inputted data to be sure its a real phone number

    • Select From List - radio button for list selection

      • Options - options for select list can be comma separated. e.g. 'red,blue,purple,yellow'. This allows the user to select from this custom set of options

    • Select From Table - radio button for a dropdown with options from a table

      • Table - this lists the tables in the EngageIP database (named BOSS usually). The options presented will be the first column from the table. The tables listed will only be EngageIP default tables, no custom or added tables will be available. To create your own, use a List Provider, detailed below

    • Selected From List Provider - radio button to allow selection from an external data source

      • List Provider - the list providers as configured on the setup tab. These can be configured to pull data from any external source or database

    • Multi-Select From List Provider - radio button for allowing multiple selections

      • Multi-Select List Provider - similar to above, allows more then one option from an external database

  • Data Type - radio button that allows you to select the data type used to validate the profile answer entered

  • Help Text  - text that displays under the text box or to provide an example for the format of the inputted data

  • Show on Overview (not shown in image) - this when checked will show the profile answer on the user overview page in the components section
    Notice: there is a limit of 50 Profile Answers on a given Overview page to prevent performance issues, if there are more than 50 answers to display you will see the message, "Sorry there are too many UserService Profile Answers to display. Please use the search box for accessing these details."  The Search Box is located on the left sidebar

  • Show on User Package (not shown in image) - this when checked will show the answer on the users package when on the packages tab. For detail and troubleshooting with this option, please see Package and Service Icons

  • Invoice in Invoice XML (not shown in image)- This allows you to reference the profile questions and answer in the invoice template so that you can display or use this data. See Invoice Template Sample Code

  • Restrict Access To Only These Roles - Allows you to restrict access to this profile questions from certain roles

  • Show On View Filter (not shown in image)- allows the profile answers to show as a column on views or reports where the report includes account names


Example of a List provider as entered on the setup tab. The below queries an external database with an SQL statement:

Note: The script below is only an example and will require modification before it can be used. See the following script for a usable example

using System;
using System.Data;
using System.Data.SqlClient;
OrderedDictionary od = new OrderedDictionary();
string connectionString ="Persist Security Info=False;User ID=*****;Password=*****;Initial Catalog=AdventureWorks;Server=MySqlServer";

// Provide the query string with a parameter placeholder.string queryString =

"SELECT ProductID, ProductName from dbo.products " + "WHERE UnitPrice > @pricePoint "

+ "ORDER BY UnitPrice DESC;";
// Specify the parameter value.

int paramValue = 5;

// Create and open the connection in a using block. This
// ensures that all resources will be closed and disposed
// when the code exits.

using (SqlConnection connection = new SqlConnection(connectionString))

{
// Create the Command and Parameter objects.
SqlCommand command = new SqlCommand(queryString, connection);
command.Parameters.AddWithValue("@pricePoint", paramValue);

// Open the connection in a try/catch block.
// Create and execute the DataReader, writing the result
// set to the console window.
try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
od.Add("reader[0], "," reader[1]");   //Adds each item to the Ordered Dictionary
}
reader.Close();
}
catch (Exception ex)
{
//May need to do something here
}
}
return od;

Note: you need to edit the SQL query and column name in below

using System.Data;
OrderedDictionary od = new OrderedDictionary();
System.Data.SqlClient.SqlConnection myConnection = new System.Data.SqlClient.SqlConnection(Logisense.Boss.Logic.DomainModel.Config.GetConnectionString());
myConnection.Open();
string queryString ="SELECT Account, Name FROM dbo.[User] WHERE RoleID = 570 ORDER BY Name;";
System.Data.SqlClient.SqlCommand sqlComm = new System.Data.SqlClient.SqlCommand(queryString, myConnection);
System.Data.SqlClient.SqlDataReader resourceList = sqlComm.ExecuteReader();
string resource, selecttitle;
selecttitle = "-- Select One --";
od.Add(selecttitle, selecttitle);
while(resourceList.Read())
{
resource = (string)resourceList["account"];
od.Add(resource, resource);
}
resourceList.Close();
myConnection.Close();
return od;


Translation Import:

Profile questions currently will display much more detail on reports than just the display name. It includes owner name, module name, and package name or the like depending on where its used. To shorten these, you can use 'Language' options to replace the text seen on the report with a shorter name as desired. The format is below and also on the general XML import KB:

  • No labels