A message ***** INVALID PARAMETER ***** follows a ++CONTROL card that appears to have the correct library control code.
If the control code entered on the ++CONTROL parm matches the value of the library security code as determined by record 1 bytes 19-20 (decimal) as seen in an IDCAMS print of the PANLIB but you still get message ***** INVALID PARAMETER *****, then you probably have an installation security code defined as well. If so then the installation code must be added to the library code and used in the ++CONTROL parm.
The installation code is set by PVOPT macro variable INSTSEC and assembled into CAILIB module FGPAN23 by USERMOD CX7UM01. The deault is 0. One way to check what was used for INSTSEC is to run a DUMPT of module FGPAN23 in CAILIB. Bytes x'9E' and x'9F' contain the value of the installation security code. For example a hex value in x'9E' and x'9F' of x'4EEA' would be an installation security code of 20202 decimal. You must then add that value to the decimal value of the library security code and use that sum in your ++CONTROL parm.