Okay, I am truly lost here. I am missing something really simple.
this is a quick test program that fails when called by the exit with
RNQ0115 when it does the upper=sqlstuff
RNQ0115 is Length of varying length variable is out of range.
Dcl-s pEZDQLSTL pointer inz( %Addr( EZDQLSTL ) );
Dcl-s SQLStuff VarChar(32000: 4) Based( pEZDQLSTL );
Dcl-s Upper Varchar(128);
dcl-pr ODBCEXIT extpgm('ODBCEXITN');
allow = *on;
Upper = SQLStuff; // This will truncate to 1024 if needed.
*inlr = *on;