The ASQL_COBOL_DATA_SIZE configuration variable uses the size of the COBOL data item instead of the information returned from the SQLDescribeParam function to determine the size of the bind variable. When set to TRUE, the size of the COBOL data item determines the column size. For character fields, the size of the COBOL field is used. For numeric fields, it uses the value of an auto-parameterized query with the constant value is first numeric (10,0). The variable is read at run time before the values are bound, which allows it to be set it for an individual query.
ASQL_COBOL_DATA_SIZE should only be used to work around an issue where SQLDescribeCol returns the wrong column size in a complex union query with parameters since the field sizes it uses may not be the most accurate. The default value of this variable is FALSE. See http://support.microsoft.com/kb/308264/ for more in the issue that is resolved by setting this variable to TRUE.