Simon Coulter wrote:
I managed to do it--full
support for every feature offered by the APIs too (multiple languages,
multiple product libraries, folders, directories and stream files,
optional components, dynamic installation, PTF support for objects and
stream files, exit program examples, etc.).
I pretty much did the same. I used two documentation sources -- the
docs for the various APIs themselves plus the System Manager (SM)
manuals. For this, SM is essentially a LPP that guides you through
what the APIs can do.
I followed the ideas in the SM manuals while looking up which API
provided what capability. I then created commands over the APIs that
were patterned after SM commands so that I could almost take example
code from the SM manuals, compile it and run it. (Almost. Not quite!)
It's not technically
difficult but does require a thorough ferreting through IBM
documentation to get the full picture. I did take advantage of IBM
contacts to answer some questions I had and to provide a work-around for
a defect in the API directory support in VRM420 but other than that it
was simply persistence. The issues I had could have been resolved
without help from IBM contacts but would have taken more effort.
But after six different LPPs with multiple upgrades on a lot of
systems, I would not say it isn't technically difficult.
There are numerous documentation errors, not to mention major gaps
in concepts and descriptions of them. E.g., docs say that some
QPZCRTFX parms require a minimum of 1 (one) specified -- but the
docs are wrong.
I took advantage of a _lot_ of IBM (Partner World) support to gather
descriptive info in order to understand how product loads, product
options, product features, and various other terms fit together --
it sure ain't clearly described anywhere. The IBMers available
through support contracts go to great lengths to track down good
info for us, and I never got the idea that they thought it wasn't
Some simple concepts took almost sheer luck to figure out. E.g., you
can specify a bunch of pre-operation exit programs, but it's not
described anywhere what it means to have more than one. And grasping
the total meaning of having only the exit program(s) available
during pre-restore has a major impact on exit program design -- *PGM
object(s) only, not even a *MSGF available.
For PTFs, it's far from clear what the minimal requirements are for
having an "installed" version of the product before you can generate
a PTF. And heaven help anyone the first time they try to include
database objects as part of the product -- be prepared for a
'learning experience' the first time you get to upgrade your LPP
(and, worse, the customer has never maintained their DB2 PTFs!) And
if it's a SQL database...?
Having the right IBM contacts would help a lot. I know I'd have been
seriously stuck without help at a number of points. Questions to IBM
often started with "WTF???"