I create a temp file to transfer the record from one program to the next and use a Shell Command to launch the new program.

Code:
    Call OpenCBPgmChain
    
    CBPgmChain.mintControlNum = CBCFile.mintControlNum
    CBPgmChain.msngAcctNum = CBCFile.msngAcctNum
    CBPgmChain.msngFileRec = fsngSaveRecord
    CBPgmChain.mstrCreditBureau = "CB"
    CBPgmChain.mintFileSource = 5           'cbc innovis
    
    Call PutCBPgmChain
    
    Close 55
    
    Call SyncShell(mstrPgmDir + "CB_DirectCommunications")
SynnShell is a routine that launches a new program and it is designed to keep the current program holding it's place while the other program runs.