AnsweredAssumed Answered

During Upgrade tryying for define a User BIF outisde of ADSOVCON or ADSOMAI

Question asked by cak on May 21, 2013
Latest reply on May 22, 2013 by ChuckHardee
* First of all I tried to format this to make it easy to read..... and the site turned this into one huge run on paragraph???

I looked at the post from April which addressed User-Defined BIFs. And one of the points was that they do NOT have to be linked to ADSOVCON (formerly ADSOMAIN).

The main question is the first part of this:

Since the documentation states that it is NOT required to have a user-defined BIF in ADSOVCON (R18) or ADSOMAIN (R16), then wha has to be done to make an Assember BIF execute in ADS/O dialogs?

"Note: Creating an ADSOVCON module is not required. CA ADS dynamically loads user-written BIFs if they are not linked with ADSOVCON."

We have an assembler user-defined BIF which is accessed in a lot of ADS dialogs. It had been working until we upgraded to R18. (test environment only to date)
I saw the note about ADSOVCON vs ADSOMAIN on the board, but with the main DBA on vacation I was trying to first just get the program identified (found) and functional. I see the message that it is not mandatory to have the program in ADSOVCON, and I was told that I could DCMT the program . (We kept getting messages saying that the program was not found while it WAS in a the first member in the CDMSLIB.)

I DCMT'd the program and can find it when I LOOK and I see it now when I display it. However, it keeps going back to disabled and out of service when I do a LOOK.
I believe what I did (I was told that I should do a V DYNAMIC PROG)


But when I try to execute a program which uses it I get the following message - and I get the same error when I try to recompile the dialog

Then I wondered whether somehow it were still in ADSOMAIN and whether that could be causing the problem. So I started looking at a different CV to compare how the program and environment look in a R16.

A couple things I found:
1. I displayed the program in the R16 and R18 CV. The only difference I saw were that they had different values for PDE address, and:
in R16 Ddname = CDMSLIB, Type = LOADLIB, Dictname is blank‘
in R18 - Type = DICTIONARY, Dictname = ‘DD01’ (no entry for Ddname)

2. What I’ve found so far in R16. Which is kind of confusing reading that the user-defined BIF would either be dynamically loaded or in ADSOMAIN?

I found the program name in RHDCEVBF in the DBDC LOADLIB and it seems to be tied to USERXDE1 (and another program tied to USERXDE2).

I found the program name in the USERXDE1 member in the same LOADLIB

I I have NOT been able to find the source lib – though I did find some member in Endevor

Summarizing with respect to the R16 environment I found: (in the loadlib)
ADSOMAIN I cannot find the program name, or RHDCEVBF, just USERBIF1 and USERBIF2 (and RHDCEV##s)
RHDCEVBF has the program name and USERXDE1
USERXDE1 had the program name and USERBIF1
USERBIF1 I don’t see a member in the loadlib (but did not check all of the concatenations

3. In the test CV at Release 18... I check a few thing in two of the LOADLIBs in the CDMS (I know that this part is totally not done and not sure what the current status is, so these are just notes of what I found)

In ADSOMAIN - the only references to modules were the two USERBIF1 and USERBIF1) (not the program name of RHDCEVBF or the USERXDE1 or 2)

I found the compiled program (the BIF) in a user lib (in the CDMS concatenation)

RHDCEVBF does not exist in the loadlibs/CDMSlibs

USERXDE1 exists with a reference to USERBIF1 and the program (BIF) [in the first lib in the concatenation]

USERBIF1 exists but with no reference to the program (user defined BIF) or to USERXDE1 [in the first lib in the concatenation]

SO even if I decided to play with ADSOVCON, which it is not my preference at this point (but will have to be done at some point), I am not sure what is required in R18 (what has to point to what)


Any ideas - has anyone else had this kind of problem in upgrading to R18? (or any other)