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

« Previous Version 23 Next »

Overview

This is a field used for a selection of options. The values for this field are set by the 'choices' property. The 'choices' property is also used to receive input in a Rich UI application through field binding.

Validation (Rich UI Only)

Please visit the Validation and Error Messages page.

Field Binding Dialog (Rich UI Only)

(Input link to Field Binding page under Widget section)

Choices / Choice Values

  • Choices field - Is where your set the options in order how you would like the select box to display them.
  • Choice values field - Is where the value you want returned to your application is set.

Here are two ways to populate the choice option/values properties:

  1. Comma separated list - A simple list of values separated by just a comma (i.e. Option 1, Option 2, Option 3, etc...).
  2. JSON array format - Using JSON array format, meaning the choices/values are enclosed in a bracket with quotations and then comma separated (i.e. ["ElementOne", "ElementTwo", "ElementThree"] ) within the choices and choice values fields also allows you to populate the auto-complete, these fields can also be bound to an RPG field (Rich UI only).

2. Database-Driven Auto-Complete - See Database-Driven Auto-Complete section below.

Database-Driven Selection

This section allows choices/choice values to be retrieved from a database file.

Choices database file - Enter the database file to use to populate your options/values. When setting your database file it's not required to qualify with library name, although you can. if the library is omitted, the application job's library list will be used.

Choice options field - Select the field you wish to use to populate the values shown as choice options.

Choice values field - Select the field to return a value to your application.

In the example, records will be loaded from file CATEGP. The options will be populated by field CNAME. The value in field CATID in the selected record will be returned to the program.

Choice selection criteria - This acts as a WHERE clause in an SQL statement to filter your criteria. SQL parameter markers are always specified by a question mark (?). The property "choices parameter value" can be used to provide the value for this parameter marker.

This will produce an SQL statement like this:

SELECT DISTINCT CNAME, CATID FROM CATEGP WHERE CNAME = ?

Choice parameter value - This is where the choice selection criteria value for '?' is set. This value may also be bound to a field (Rich UI only).

By completing the choice parameter value we can see our statement should return only the items named "Soaps". You can have multiple "parameter value" properties, however this does require multiple choices selection criteria. These can be added by right-clicking the choices parameter value property name and selecting "Add Another Choices Parameter Value":

    

To find more information on the choice selection criteria and choices parameter properties, view the Parameter Markers section here.

Max Choices
The max choices property allows you to set the number of choices you will see from your database-driven selection. There is no limit to the number of choices you can show, however if there is no limit set the default is 10.

Dynamic Auto-Complete

Choices URL

The choices URL property allows you to use an external program to return your choice options and values by passing them using JSON formatting. A PHP script would be one example of a custom program used to pass the values to your application. When using the choices URL property, all database-driven auto-complete properties are ignored.

JSON Successful Response Example

These are values returned from an auto-complete select box in a successful response from the external program:

{
    "success": true,
    "response": [
        newOption("Black",
        "Black"),
        newOption("Red",
        "Red"),
        newOption("Aqua",
        "Aqua"),
        newOption("Blue",
        "Blue"),
        newOption("Green",
        "Green"),
        newOption("Silver",
        "Silver"),
        newOption("Yellow",
        "Yellow"),
        newOption("Fuchsia",
        "Fuchsia"),
        newOption("LawnGreen",
        "LawnGreen"),
        newOption("Maroon",
        "Maroon"),
        newOption("Tomato",
        "Tomato")
    ]
}

In the successful response you can see the colors are being set by the values returned.

JSON Error Response Example

This example is JSON information returned when the script encounters an error with an database driven auto-complete.

{
     success:false,
     "errorId":"-204",
     "errorText":"CATEG in *LIBL type *FILE not found.",
     "errorText2":"SQLPrepare()"
}

If you are unable to get any information to display on your choice URL script you can use the showErrors() API to try and debug the reason the results are unable to display.

showErrors() API Documentation

Example of the showErrors() API displaying JSON error response example:

PHP Script Example:

  • No labels