The internal buffers that store string variables and text columns are now maintained dynamically, and this allows them to be of any size (within memory limits). If you use Set_Argument_Size in your applications, those commands are ignored and if you use Get_Argument_Size, it returns the current size of the dynamically allocated buffer.
See Also: Append_Output, Direct_Input, Direct_Output, Get_Argument_Size
To set the current argument size setting. Argument size is the largest size permitted for string variables.
set_argument_size bytes
The default maximum argument size can be found under Argument Size in the DataFlex Specifications book. Where arguments of greater size than the default may need to be handled in a program, a larger allocation of memory can be specified by the set_argument_size command.
set_argument_size 256000
In this example, the maximum argument size for a program is set to 256000 bytes.
Argument size can be reset any number of times desired in a program. This is important because large argument sizes consume more memory. Argument work space is twice the amount of memory indicated by the maximum size in effect, and the string expression stack consumes additional memory beyond that when a large argument size is set.
When one program chains to another, the argument size in the first program automatically governs the argument size in all succeeding programs unless it is reset in a succeeding program. If it is reset in a succeeding program and execution returns to an earlier program, the most recent setting (in the chained-to program) continues to govern until the argument size is again explicitly reset.
The Get_Argument_Size command returns the current argument size to a variable.
If the length of the value moved to any argument exceeds the maximum argument size, the value will be truncated in the argument with no error report.