Endevor

  • 1.  CONPARMX?

    Posted 03-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 03-10-2016 02:17 AM

    This is a part of the Db2 precompile step:

     

    //PREDB2  EXEC PGM=CONPARMX,MAXRC=4,COND=(4,LT),     

    //  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 03-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!