Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?


Variable Containers


You use variable containers to pass data values back and forth between scripts and data accessors. Each data accessor instance has two variable containers: an input variable container and an output variable container. The input container receives data values from the script, and the output container returns data values to the script.

Variable containers are data arrays. Rows in the array have three columns:

  • A unique string identifying one variable in the container.

  • The variable data type (string, binary, integer, ipaddress, ipv6address, ipv6prefix, ipv6interface, or date).

  • The actual data value.

Settings in the .gen file specify the number of rows in each variable container, the variable names, and their data types. These settings are fixed when Steel-Belted Radius Carrier starts up and cannot be changed by your scripts. Only the data values change when you call the DataAccessor script API.

Call the SetInputVariable() and GetOutputVariable() API calls to transfer data values into and out of the variable containers. Each function call transfers a single data value. The name argument selects the container row to read or modify. The name must match one of the variable declarations in the .gen file or a runtime error occurs.

To clear all values in both the input and output variable containers, call the data accessor object’s Clear() method.

When you call the Execute() method, values from the input container are bound into the SQL query or LDAP search specified in the .gen file. When the operation completes, selected values are copied from the result to the output container where they may be read by your script.