Generic-size arguments

Generic-size (or any-size) arguments offer more flexibility for strings and numerics. You can declare character strings or numerics by using the ANY keyword in the signature (or in the return value). For example:
TEST.TESTSCH(USR)=> CREATE PROCEDURE customer(VARCHAR(ANY))
RETURNS VARCHAR(ANY) LANGUAGE NZPLSQL AS 
BEGIN_PROC
    BEGIN
        remaining text omitted for example...

The stored procedure accepts an input string of up to 64,000 characters (the maximum for a VARCHAR). Within the body of the stored procedure, the code must process the strings and numerics with the plan that you can receive a string of any valid length. That is, you can check and obtain their size, process them as needed, and return the value for the procedure.

Generic-size arguments help you to avoid specific limits for the input strings and numerics, or to use overly large or maximum size values that result in unnecessary resource allocation for the procedure. This format can also reduce the need to register and maintain similar procedures that take different input arguments or have different return values, and possible casting of input values.