View Only
  • 1.  CONPARMX?

    Posted Mar 09, 2016 07:37 PM

    Does anyone have a working invocation step using CONPARMX they can share? I've read the manual multiple times and I think I have my call coded correctly, but I keep getting the "Parms not found" error.


    If someone has a working example, I would HIGHLY appreciate it!

  • 2.  Re: CONPARMX?
    Best Answer

    Posted Mar 10, 2016 02:17 AM

    This is a part of the Db2 precompile step:



    //  PARM=(DSNHPC,,$$$$DFLT,&C1PRGRP,&C1ELEMENT,,'N','N')

    //STEPLIB  DD  .... 


    //PARMSDEF  DD DISP=SHR,DSN=<Endevor>.<admin>.<dataset>.PARMLIB,     

    //            MONITOR=COMPONENTS                     

    //          DD DISP=SHR,DSN=<Customer>.<dataset>.PARMLIB,   

    //            MONITOR=COMPONENTS   


    The $$$$DFLT and &C1PRGRP members reside in the <Endevor>.<admin>.<dataset>.PARMLIB

    Customer can override these ones bij placing a member (name equal to element name) in the <Customer>.<dataset>.PARMLIB

    The $$$$DFLT should always be present when there is no &C1PRGRP or &C1ELEMENT member and it contains the defaults for several (pre)compilers etc.


    Off course you can define a Type for the PARMSDEF and keep it under Endevor control, but this is how it works for us.

  • 3.  Re: CONPARMX?

    Posted Mar 10, 2016 09:15 AM

    Hmmmm... interesting. I've copied your invocation step and it works.


    The difference is in the interpretation of what the manual means when it says a parameter is "optional". I interpret that as meaning "I don't have to specify it if I agree with the default". However, that does not appear to be the way CONPARMX works. I originally coded my PARM list as:

    PARM=(IGYCRCTL,,$$$$DFLT,&C1PRGRP,,). I then tried various combinations of including null parameters up to and include PARM8.


    To make a long story short, what I've learned is "none" of the parameters are actually "optional". They all need to be specified and accounted for in the PARM list provided to CONPARMX. I even tried PARM=(IGYCRCTL,,$$$$DFLT,&C1PRGRP,&C1ELEMENT,,,) where I would have assumed it would work with default values for PARM7 and PARM8... nope. I also tried PARM=(IGYCRCTL,,$$$$DFLT,&C1PRGRP,&C1ELEMENT,,'N',)..... nope.


    It wasn't until I FULLY qualified every PARM field that it worked: PARM=(IGYCRCTL,,$$$$DFLT,&C1PRGRP,&C1ELEMENT,,'N','N')


    Thanks for your help! It would have taken me a lot longer (and a trouble ticket with CA) to figure this out without it!