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


  • Subject: RE: Null Capable Fields
  • From: Buck Calabro <mcalabro@xxxxxxxxxxxx>
  • Date: Tue, 12 Oct 1999 08:47:40 -0400

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


As an Amazon Associate we earn from qualifying purchases.

This thread ...


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.