× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I've narrowed down the issue with CEEDOD failing. It occurs whenever the
value that is specified for a procedure is a data structure.  I've
written a short example program that reproduces the problem everytime.

In this example, the first call to ODTestProc is successful because I'm
passing in a character value. The second call to ODTestProc calles the
call to CEEDOD to fail because (I'm assuming) the parm in question is
actually a data structure. 

Here's the code, and thanks to those who repsonded, now we just need a
PTF!. 
-Bob Cozzi

     H DFTACTGRP(*NO)

     D ODTestProc      PR            10I 0 OPDESC

     D  m_szParm                  32766A   OPTIONS(*VARSIZE)

     D nDescType       S             10I 0
     D nDataType       S             10I 0
     D nDescInf1       S             10I 0
     D nDescInf2       S             10I 0
     
     D szValue         S             32A
     D szStruct        DS
     D  szSubfield                   32A

     D nLen            S             10I 0

     C                   eval      nLen = OdTestProc(szValue)
     C                   eval      nLen = OdTestProc(szStruct)
     C                   eval      *INLR = *ON

     P ODTestProc      B                   Export

     D ODTestProc      PI            10I 0 OPDESC

     D  m_szParm                  32766A   OPTIONS(*VARSIZE)

     D nBufLen         S             10I 0
     D szLocal         S          32766A
     D ODParmID        S             10I 0

     C                   CALLB(D)  'CEEDOD'
     C                   PARM      1             ODParmID
     C                   PARM                    nDescType
     C                   PARM                    nDataType
     C                   PARM                    nDescInf1
     C                   PARM                    nDescInf2
     C                   PARM                    nBufLen
     C                   PARM                    *OMIT
     C                   eval      szLocal = %subst(m_szParm:1:nBufLen)
     C                   return    nBufLen
     PODTestProc       E



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.