I did not know about this.
Todays a good day ---- I learnt something new.

Alan Shore
Programmer/Analyst, Direct Response
E:AShore@xxxxxxxx
P:(631) 200-5019
C:(631) 880-8640
"If you're going through Hell, keep going" - Winston Churchill


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Birgitta Hauser
Sent: Thursday, April 19, 2012 2:07 PM
To: 'RPG programming on the IBM i / System i'
Subject: AW: Need help with varlen fields

How about using embedded SQL to read the file and using null
indicators to
determine if the field is null and initialize it to blanks.
NULL Values can also be detected and set with native I/O, embedded SQL is not necessary.

When adding the keyword ALWNULL(*USRCTL) to the H-Specs or set the appropriate option in the compile command.
Use build-in-function %NULLIND to detect or set a NULL Value:

Example:
H ALWNULL(*USRCTL)

/Free
...
Read MyFileF;
If Not %EOF;
If %NULLInd(MyFld); //NULL value in MyFld
%NULLInd(MyFld) = *Off; //Remove NULL value from MyFld;
MyFld = 'XXX'; //Fill any value into Myfld;
EndIf;
...
EndIf;

%NULLInd(MyFld2) = *ON; //Set NULL value for MyFld2;
Write MyFldF; //Write Record with a NULL value in MyFld2

Mit freundlichen Grüßen / Best regards

Birgitta Hauser

"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok) "What is worse than training your staff and losing them? Not training them and keeping them!"

-----Ursprüngliche Nachricht-----
Von: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] Im Auftrag von Robert J. Mullis
Gesendet: Thursday, 19.4 2012 19:33
An: RPG programming on the IBM i / System i
Betreff: Re: Need help with varlen fields

How about using embedded SQL to read the file and using null indicators to determine if the field is null and initialize it to blanks.

-----Original Message-----
From: Albert York
Sent: Thursday, April 19, 2012 1:27 PM
To: RPG programming on the IBM i / System i
Subject: Re: Need help with varlen fields

I can do that but then I can't process the record

On Thu, Apr 19, 2012 at 10:22 AM, Alan Shore <ashore@xxxxxxxx> wrote:
How about using monitor, endmon wrapped around the read

Alan Shore
Programmer/Analyst, Direct Response
E:AShore@xxxxxxxx
P:(631) 200-5019
C:(631) 880-8640
"If you're going through Hell, keep going" - Winston Churchill


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Albert York
Sent: Thursday, April 19, 2012 1:19 PM
To: RPG programming on the IBM i / System i
Subject: Re: Need help with varlen fields

I get the error on the read statement.

On Thu, Apr 19, 2012 at 10:09 AM, Jon Paris <jon.paris@xxxxxxxxxxxxxx>
wrote:

On 2012-04-19, at 1:00 PM, rpg400-l-request@xxxxxxxxxxxx wrote:

I have an RPG program that is having a problem with var length fields.
I get the error 'unexpected null value' How can I fix this?

We really need a bit more info than that. But the most common cause
of varying length problems is incorrect initialization due to
including it in a DS that has no INZ keyword and no INZ on the field
itself.

Since you are getting a null error though we're probably going to
need to see some code.

Jon Paris

www.partner400.com
www.SystemiDeveloper.com




--
This is the RPG programming on the IBM i / System i (RPG400-L)
mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/rpg400-l.

--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/rpg400-l.


Disclaimer: This message contains confidential information and is
intended

only for the individual named. If you are not the named addressee you
should not disseminate, distribute or copy this e-mail. Please notify
the sender immediately by e-mail if you have received this e-mail by
mistake and delete this e-mail from your system. E-mail transmission
cannot be guaranteed to be secure or error-free as information could
be intercepted,

corrupted, lost, destroyed, arrive late or incomplete, or contain viruses.

The sender therefore does not accept liability for any errors or
omissions

in the contents of this message, which arise as a result of e-mail
transmission. If verification is required please request a hard-copy
version. Any views or opinions presented are solely those of the
author and do not necessarily represent those of the company.
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/rpg400-l.

--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.

--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.



This thread ...

Replies:

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

This mailing list archive is Copyright 1997-2019 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].