|
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 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.