Re: What the beep is wrong with this?

Marco Facchinetti <marco.facchinetti-kthxv0ud/[email protected]>
Newsgroups gmane.comp.lang.as400.rpg
Message-ID <CAMsgu4oaR=k8RF0P1bwDhVuSNuFXHHNt51VA4BJbYYMzdBY-+Q@mail.gmail.com>
Hi Jon, if I'm not wrong open has 5 parametrs not 4.

Anyway the most common error using textdata is this one:

If O_CCSID is not specified, and the file CCSID and open CCSID are not the
same, and one of them is not strictly single-byte, open() will fail with
errno set to [ECONVERT].

HTH
--
Marco Facchinetti

Mr S.r.l.

Tel. 035 962885
Cel. 393 9620498

Skype: facchinettimarco


Il giorno dom 25 gen 2026 alle ore 01:07 Jon Paris <[email protected]>
ha scritto:

> I'm playing with Bob and asked him (it?) to create an RPG program to read
> an IFS file.
>
> I'm familiar with all of the required APIs (or thought I was) - but the
> Bob program will not open the file and I'm danged if I can see why.  Here's
> an extract of the code which demonstrates the issue.
>
> Ctl-Opt DftActGrp(*No);
>
> // C API Prototypes - renamed to avoid opcode conflicts
> Dcl-Pr openFile Int(10) ExtProc('open');
>   *N Pointer Value Options(*String);
>   *N Int(10) Value;
>   *N Uns(10) Value Options(*NoPass);
>   *N Uns(10) Value Options(*NoPass);
> End-Pr;
>
> // Constants for open()
> Dcl-C O_RDONLY 1;
> Dcl-C O_TEXTDATA 16777216;
>
> // Variables
> Dcl-S FilePath Varchar(256) Inz('/home/PARIS/Bob/Test.csv');
> Dcl-S FileDesc Int(10);
>
> // Open the IFS file
> FileDesc = openFile(FilePath: O_RDONLY + O_TEXTDATA );
>
> If FileDesc < 0;
>   Dsply 'Error opening file';
> Else;
>   Dsply 'File Open';
> EndIf;
>
> *InLr = *On;
>
> The file opens just fine if I use SQL ( SELECT * FROM
> TABLE(QSYS2.IFS_READ(PATH_NAME => '/home/paris/bob/Test.csv'))
>
> So I don't think it is a permissions problem (and yes I have checked that
> tooj.  It has to be something dumb and I just can't see it.
>
>
> Jon Paris
> [email protected]
>
>
>
> --
> This is the RPG programming on IBM i (RPG400-L) mailing list
> To post a message email: [email protected]
> To subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
> or email: RPG400-L-request-+hD5IHI5Xscn3HwCXmMcX9BPR1lH4CV8@public.gmane.org
> Before posting, please take a moment to review the archives
> at https://archive.midrange.com/rpg400-l.
>
> Please contact support-FMtJrHiV//lnDLsaKlm4mFaTQe2KTcn/@public.gmane.org for any subscription related
> questions.
>
>
-- 
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request-+hD5IHI5Xscn3HwCXmMcX9BPR1lH4CV8@public.gmane.org
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support-FMtJrHiV//lnDLsaKlm4mFaTQe2KTcn/@public.gmane.org for any subscription related questions.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.