Creating Library Request

Here is a short video that explains how to create a request using Request Modeler.

Alternatively you can refer the following section for step by step procedure for the same.


Let's see how to create a new Library request using the Request Modeler in Canvas Studio.

  1. Click Create >Request.

  2. In the Create New Request screen, enter the values for the fields as shown in the following table:

    #

    Field Name

    Description

    Sample Value

    1

    Request Id

    Unique ID of the request.

    CARD_INFO

    2

    Request display name

    Label key of the request name appears as the request title.

    CARD INFO

    3

    Service Type

    Database: When selected, this service type will enable the Request Modeler to communicate with the local database for fetching the required data through the connection configured to it. 

    HAL: When selected, this service type will enable the Request Modeler to communicate with the Web service for fetching the required data through the system parameter configured to it. 

    Web Service: When selected, this service type will enable the Request Modeler to communicate with a REST Web service for posting data to it. For more information, refer Creating Web Service Connection and Data Source. 

    Database

    4

    Request Type

    Enables you to select the request type from the listed options: 

    Admin - Enables the admin level events (back office) in the entitlement action mapping. See Event Type for more details. 

    Customer - Enables the customer level events (front office) in the entitlement action mapping. See Event Type for more details.

    Customer

    5

    Bundle Key

    Name of the bundle key associated with the property file.

    common

    6

    Request Mode

    Enables you to select the request mode from the listed options:

    Private - The library data created with this mode will be visible only to the creator of the request and others will not be able to view it. The GCIF Column and User Number Column fields will be enabled along with the business key.
    By default private request should not have any authorization flow. However, there could be exceptions to this rule. Let us take a scenario where there are joint account holders. If one of the partners submits a private request to add a beneficiary to transfer funds, the other one should be able to view and approve it. However, the request created should not be visible to others apart from the joint account holders as it is private in nature. In this case, a tailored authorization flow must be attached. For example, you may want the private request to go through two levels of approval based on the minimum and maximum amount specified. For this, you must select the 'six eye' option in the TYPE field on the Request Authorization Flow screen OR you could also define a custom approval work flow. If it is not a special scenario, you must select the 'None' option in the TYPE field on the Request Authorization Flow screen.

    If the entitlements attached to the private requests do not have any work flow or 'None' work flow defined, you will have to specify the work flow or define the 'None' workflow for the request according to your requirement.

    Public - The library data created with this mode will be visible for everyone. Only the Business Key is required for this mode.

    SemiPrivate - The library data created with this mode will be visible for all the users who are entitled to access the specific GCIF category. GCIF Column field will be enabled along with business key.

    Note

    If the public or semi-private requests do not have authorization workflows attached, you will have to specify the work flow. If not, the default work flow (four eyes) will be set for the requests. You can change the default work flow as per your requirements.

    Public

    7

    Request Category

    Enables you to select any one of the listed type of requests: 

    Library

    8

    Request Description

    A brief description of the request for easy identification and understanding.

    Customer Public Library Request

    9

    Connection

    If there are multiple databases, this option allows you to select the connection that is associated with the database of the relevant data source. The connection must be created within Canvas Studio. Refer Creating DB Connection and Data Source for more information on connections.

    This field is applicable only for requests where the service type field is selected as 'Database' or 'Web Service'.

    Note

    The connection created must refer to the specific database and need not have any data source configured within it. However, to publish forms created in the Request Modeler to a REST Web service, the connection must have the data source configured accordingly. For more information, refer Creating Web Service Connection and Data Source.

    DATABASE1

    9.1

    Add New Connection

    When selected, redirects you to the Create New Connection screen where you can configure a new connection. To create a new connection using this feature, do the following steps: 

    1. Click Add New Connection. 
       
    2. Create the connection in the Create New Connection screen and save it. The connection created by you gets listed in the Connections List screen. 

       
    3. Double click the new connection that you have created to select it.

    10System Parameter

    Enables you to select the web service. 

    The OD_SYSTEM_PARAMETER_MB table in the database contains the following data:

    Columns

    Value

    OD_CODE_TYPEUnique ID.
    OD_DESCRIPTIONBase URL for invoking the web service.
    OD_VALUE1URL for fetching the list of services available in the web server.
    OD_VALUE2URL for fetching the details of the selected service from the web server.
    The MST_CIB_APPID_HANDLER_MAP table utilizes the OD_CODE_TYPE data from the OD_SYSTEM_PARAMETER_MB table to invoke the formatter and communicator classes.

    This field is applicable only for requests where the service type field is selected as 'HAL'.


    Entitlement Details
    11

    Function Category

    Enables you to select the function category. 

    Function Category and Function Mapping:

    Function Category

    Function
    EnquiryView
    ApproveApprove
    InitiateEdit
    Initiate

    Enquiry and initiate function categories are mandatory for every request. The Approve function category is mandatory for Public and Semi Private requests if an approval work flow is required for them. However, if you do not want the approval flow for Semi Private and Public requests, you can use the default workflow provided by Canvas (four eyes). You can change the default work flow as per your requirements.

    Enquiry

    12       

    Product

    Name of the Product that the app stands for. Only the users who are authorized to this product can view/access this request.

    CUSER

    13        

    Sub Product

    Name of the Sub Product within the Product for which the app stands for. Only the users who are authorized to this sub product can view/access this request.

    CUSER

    14        

    Function

    Once the function category is selected, the relevant functions are listed within this field. Only the users who are authorized to this function can view/access this request.

    View

    15 

    Add Actions button

    See Map Action Codes for more details.

    -

    16        

    Add Entitlement button

    Adds an additional row to add another entitlement. Do the steps 11 to 15 again to configure the new entitlement.

    -

    17

    Delete Entitlement button

    Deletes the selected entitlement row.

    -

    18 

    Create Table button

    Enables you to create a new table for the request.

    -

    19        

    Add Table button

    If the Service Type field is selected as Database, this field enables you to select the required table or multiple tables and add it to the request.

    If the Service Type field is selected as HAL, this field enables you to select the required services through business service listing and business service details and add the required service to the request. When a service is selected, all the sections (tables) within the service will be added to the request.

    All the sections within a service have to be passed through the request. If you choose to delete any section then the web service will not publish it due to the unavailability of the section in the request.

    If the Service Type field is selected as Web Service, this field enables you to select the required Web service data source for the POST HTTP method.

    -

    20        

    Edit Table button

    Enables you to edit the table and the other related properties. See Table Details for more details.

    -

    21       

    Delete Table button

    Deletes the selected table from the Create New Request screen.

    -

    22        

    Additional Params

    This fields can be used for several purpose, e.g. when you need to add custom publishing.

    • Custom Publishing:

    Enables you to add a custom class along with its key value for publishing a request using the custom publisher class specified in this field. See Publishing for more details. You can also use a custom entitlement class, if required.

    If there are no custom classes to be specified in this field, enter {} so that the default Database/HAL publisher related classes will be used based on the publish mode associated with the request.

    Example:

    {
    	"CUSTOM_PUBLISHER":"com.intellectdesign.classname",
    
    	"CUSTOM_ENT_CHECKER":"com.intellectdesign.classname"
    }

    {}

    23        

    Validation Rule {JSON}

    Enables you to enter the validation syntax in the JSON format. See Validation JSON for more details.

    {}

    Create New Request - 'Database' as Service Type 

     

    Create New Request - 'HAL' as Service Type
     
     

    Create New Request - 'Web Service' as Service Type 

     
    Map Action Codes Screen: 

    #

    Field Name

    Description

    Sample Value

    1

    Product Code

    Auto populated field that shows the product code that was entered in the Create New Request screen.

    -

    2

    Sub Product Code

    Auto populated field that shows the Sub Product code that was entered in the Create New Request screen.

    -

    3

    Function

    Auto populated field that shows the Function that was entered in the Create New Request screen.

    -

    Action Details

    4

    Position

    Allows you to specify the position of the action button in the widget.

    1

    5

    Action

    Enables you to select the action that is associated with the function that was selected in the Create New Request screen.

    View

    6

    Action Type

    Allows you to specify the action type for the action buttons.

    Positive

    7 Event Type

    Enables you to select the event that is associated with the function in accordance to the selected request type.

    Request Type

    Event Type
    Admin

    BO LOGOUT

    SYSTEM_BO

    SECURITYBO

    BO LOGIN

    CUST MAINTENANCE

    Customer

    NON FINANCIAL

    SECURITYFO

    LEGAL AGRMNT PRINT

    FO LOGINFAIL

    FINANCIAL

    FO LOGIN

    SYSTEM

    FO MAINTENANCE

    FO LOGOUT

    FO MAINTENANCE
    8Add Action

    Enables you to add an additional row to associate another action to the function.

    -

    9        

    Enables you to delete the action associated with the function.

    -

     
    Table Details Screen: 

    #

    Field Name

    Description

    Sample Value

    1

    Table Name

    This is an auto-populated field that fetches the table name from the database.

    -

    Column Details

    2

    Column Name

    This field automatically fetches the column name from the database. The user is allowed to edit the column name only if it is a new table.

    CARD_NO

    3

    Data Type

    This field automatically fetches the data type associated with the column from the database. The user is allowed to edit the data type only if it is a new table.

    String

    4

    Size

    This field automatically fetches the size associated with the column from the database. The user is allowed to edit the input size only if it is a new table.

    40

    5

    Is Mandatory Field?

    Indicates that the user input for the respective field is mandatory.

    [Checked]

    6

    Default Value

    Assigns the default value for the respective field if no input is provided during the request submission.

    -

    7

    Validation Type

    Enables you to select the validation type for the respective field.

    Number

    8

    Entitlement Criteria

    Enables you to select the entitlement criteria for the respective field.

    -

    9

    Primary Key

    This is a special relational database table column designated to uniquely identify all table records. It cannot contain null values in the database table. 
    If the primary key is defined in the database, the same will be fetched.

    CARD_NO

    10

    Summary Columns

    Enables you to select the columns that are required to be displayed in the summary screen.

    CARD_NO 
    CURRENT_BALANCE

    11

    Primary Table ID

    Enables you to select the primary/parent table for the current table. 

    This field is applicable only in multiple database table scenario where the tables are related to each other with respect to the Primary Key or Business Key and HAL request where the section can have multiple sections within it.

    -

    12

    GCIF Column

    Enables you to select any of the table columns as GCIF (Customer Identification Folio) column based on the requirement. 
    This field value should not be same as the Business key.

    CARD_NO

    13

    User Number Column

    Enables you to select any of the table columns as User Number Column based on the requirement. 
    This is required for a private request where the ID of the user who is placing the request gets stored. This will be used to ensure privacy of the data (which means when a user logs in, only records pertaining to the user will be shown in the enquiry grid). 
    This field value should not be same as the Business key.

    CARD_TYPE

    14

    Business Key

    This key identifies the uniqueness of a row based on columns that exist in a table according to the business rules. 
    This field value should not be same as the GCIF or CIF values.

    CARD_NO 

    15

    Parent Table Business Key

    Displays the business key of the parent table selected in the Primary Table ID field. 

    This field is applicable only in multiple database table scenarios where the tables are related to each other with respect to the Primary Key or Business Key and HAL request where the section can have multiple sections within it.

    -

    16

    Transaction Amount Field

    Enables you to select the primary amount field in your table. Based on the amount value entered in this field and the Transaction Currency field, the respective authorization workflow will be delegated by the Request Modeler engine to the specific request.

    CURRENT_BALANCE

    17

    Transaction Currency Field

    Enables you to select the currency type column in your table. Based on the currency type entered in this field and the Transaction Amount field, the respective authorization workflow will be delegated by the Request Modeler engine to the specific request.

    CURRENCY

    Table Details - Single Table Configuration 
     

    Table Details - Multiple Table Configuration
     
    Request Authorization Flow screen:

    This screen is launched at the time of submitting the request in the following scenarios:

    • When the user creates a private request with approval work flow but then chooses to create the request with the 'None' workflow.
    • When the user creates a private request with neither the 'None' workflow nor other approval workflow.
    • When the user creates public or semi-private requests without any approval workflow defined.

    #

    Field Name

    Description

    Sample Value

    1

    GCIF

    Customer Identification Folio. This ID must be unique for a company.

    8HIG1002

    2

    Channel ID

    Specify the channel ID for which you would like the approval work flow to be respected. The available options are: 

    • Desktop 
    • Mobile 
    • Tablet 
    • All channels

    All Channels

    3

    Eval Condition Type

    The evaluation condition type based on which the approval work flow must be picked and the request is to be processed. 

    Default: The default evaluation condition is used for processing the request. 
    Custom: Allows you to specify the evaluation condition in the Eval Condition field to process the request.

    Default

    4

    Eval Condition

    In this field you can specify the evaluation condition for the request. This field is enabled when the 'custom' option is selected in the Eval Condition Type field.

    Sample evaluation condition is as follows:

    {
    "condition" : 
    	[{	"id" : "equals", 
    		"field" : "$context.authflow", 
    		"value" : true
    	}] 
    }

    -

    5

    Type

    Select the approval workflow for the request. The options are Four eye, Six eye, None, Tree, and custom.

    foureye

    6

    Auth Flow

    Provide the approval work flow JSON in this field. This field is enabled when the 'custom' option is selected in the Type field. 
    Sample authorization flow is available in the embedded file.

    {
    	"authflow": [
    	{
    		"tier": [
    		{
    		"type": "number",
    		"min": 10,
    		"max": 100,
    		"workflow": 
    		{
    			"type": "foureye",
    			"flow": 
    		{
    			"completed": false
    		}
    		}
    	},
    	{
    		"type": "number",
    		"min": 100,
    		"max": 1000,
    		"workflow": {
    		"type": "sixeye",
    		"flow": {
    		"completed": false
    				}
    			}
    		}
    	]
    	}
    ]
    }
    7

    Flow Control Name

    Specify a unique name for the approval workflow.

    Customer_Public_Request

    8

    Submit

    Click this button to submit the approval work flow updates.

    -

    9

    Cancel

    Click this button to cancel the authorization flow changes.

    -

  3. Click Save.



  4. In the Workspace Menu Selection screen, enter the Workspace ID in which the request must be displayed.

    #

    Field Name

    Description

    Sample Value

    1

    Request Id

    This is an auto-populated field that fetches the request Id that was specified in the Create New Request screen.

    -

    2

    Request Display Name

    This is an auto-populated field that fetches the request display name that was specified in the Create New Request screen.

    -

    3

    Workspace Id

    Enables you to select an existing workspace in which the request is to be rendered.

    PAYMENT_WS

  5. Click Save.
  6. Click OK in the pop-up window.

 
Once all the above steps are completed, you can find that the Request Modeler has automatically generated the relevant form definition for the request that is created.

Even apps will automatically get generated for each and every created request in App Designer. For detailed information on the automatic generation of apps for the created requests, refer Automatic App Generation of Requests




For the full set of information on the usage of phrase variables to display error messages in Request Modeler sequences, refer Using Phrase Variables for Error Handling in Requests.