|
Bob Cozzi <BobCozzi@ibm.net> wrote >Okay, here's some code that saves absolutely nothing, but is more >English-like that %NULLID(ddd)=*ON > > > D IsNULL PR 1S 0 > D TestDate L Const > > PIsNULL B Export > D IsNull PI 1S 0 > D TestDate L Const > C Return (%NULLID(TestDate)=*ON) > PIsNULL E > >Using this procedure, you can then do this in Calcs > >C If IsNull(MyDateFld) >C /* do your null-date routine here */ >C endif > > >This would be the same as: > >C If %NullID(MyDateFld)=*ON >C /* do your null-date routine here */ >C endif > > >Now, I suppose the thing that might byte me is the return type on the >procedures. I used a 1-digit signed numeric. I don't know if Indicators can >automatically be cast to zoned decimals, so if it doesn't work, do a Z-ADD >deal right before the return, or similar. Bob: Have you actually tried coding this? Here's a hint: It won't compile! The expression in the IF statement must return an indicator value. Your procedure "IsNULL" returns a numeric value. Here's another hint: Since the built-in function %NULLIND returns an indicator value, you just have to code: C IF %NULLIND(MyDateField) C /* stuff */ C ENDIF (This is described on page 342 of the RPG Reference Manual.) Cheers! Hans Hans Boldt, ILE RPG Development, IBM Toronto Lab, hboldt@vnet.ibm.com +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to "MIDRANGE-L@midrange.com". | To unsubscribe from this list send email to MAJORDOMO@midrange.com | and specify 'unsubscribe MIDRANGE-L' in the body of your message. | Questions should be directed to the list owner/operator: david@midrange.com +---
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.