|
ok, my curioisty is piqued. What problem does a "null-capable" field solve? I thought it's only function was to signal a data field's virginity, and I can't imagine a problem that solves. btw, please be gentle as you explain my idiocy, ok? Please respond to RPG400-L@midrange.com Sent by: owner-rpg400-l@midrange.com To: RPG400-L@midrange.com cc: Subject: RE: Null Capable Fields Brian, I think that null support is only for database fields. As for workarounds, I think you'll have to add a "null indicator" field that you will manipulate "on the side" so to speak. An alternative is to create a dummy database file containing fields defined as null capable. Define this dummy file as input only, user controlled open and don't open it. This will allow you to create as many null capable work fields as you need. If you're just getting into null support, check out the RPG Reference manual's section on Database Null Value Support. I'll push my luck and post a section that will probably spark another "Why did IBM do it this way?" thread. "You are responsible for ensuring that fields containing null values are used correctly within the program. For example, if you use a null-capable field as factor 2 of a MOVE operation, you should first check if it is null before you do the MOVE, otherwise you may corrupt your result field value. You should also be careful when outputting a null-capable field to a file that does not have the field defined as null-capable, for example a WORKSTN or PRINTER file, or a program-described file. Note: The value of the null indicator for a null-capable field is only considered for these operations: input, output and file-positioning. Here are some examples of operations where the null indicator is not taken into consideration: DSPLY of a null-capable field shows the contents of the field even if the null indicator is on. If you move a null-capable field to another null-capable field, and the factor 2 field has the null indicator on, the result field will get the data from the factor 2 field. The corresponding null indicator for the result field will not be set on. Comparison operations, including SORTA and LOOKUP, with null capable fields do not consider the null indicators." Hope this helps, Buck Calabro Aptis; Albany, NY mailto:Buck.Calabro@aptissoftware.com > -----Original Message----- > From: bellis@ORIENTAL.COM > Sent: Monday, October 11, 1999 4:01 PM > To: RPG400-L@midrange.com > Subject: Null Capable Fields > > We have fields within DB2 files defined as "Null Capable". > > Within an RPG IV program we try to define fields using the "like" keyword > over > these null capable fields, or define fields using externally described > data > structures over the file with null capable fields. > However, none of these fields defined internally to the RPG program keep > the > null capable attribute. > i.e. I cannot use the %NULLIND BIF on the field. > > Here is a excerpt from the on-line AS/400 reference books (V4R4) on this > subject: > "If the file used for an externally described data structure has > null-capable > fields defined, the null attribute is not used in defining the RPG > subfield." > > Is there a way to define fields internal to RPG programs as null capable? > If not, is there a work around for this? > > Thanks, > Brian Ellis. +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +--- +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | 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.