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



Alan,

There is a typo in your declare for o_codepage.  Change 8588608 to
8388608 and try it again.

You are correct: all errnos map to CPE error messages.  And in a quick
scan of a few publications I must admit I couldn't find this documented
anywhere.

Bruce

>
> Hi Bruce and everyone,
>
> > I'm not sure what the invalid argument may be, but errno 3021 is
> > the same as getting CPE3021 (which is not overly useful).
>
> CPE3021 may not be useful, but knowing that this is the same as ERRNO 3021
> is! Am I right to assume that all ERRNOs have a corresponding CPExxxx
> message? Where do IBM document this support?
>
> > What you want to do is first create the file with codepage 437;
> > close the file; and then re-open the file in text mode.
> > This will cause the second open to convert data from your job
> > CCSID to/from 437.
>
> Yes, I am already doing this, my program was cobbled together using a
> previous posting to the midrange list by Jon Paris:
> http://archive.midrange.com/midrangelarchives/199712/msg01181.html
>
>Can anybody confirm that my open prototype is correct, because I think there
>may be a problem with the codepage?
>
>      * open(path, open flags, mode (opt), codepage (opt))
>      *  rtn(file descriptor ! -1 = error)
>     Dopen             pr            10i 0 extproc('open')
>     D                                 *   value
>     D                               10i 0 value
>     D                               10u 0 value options(*nopass)
>     D                               10u 0 value options(*nopass)
>
>It is fine for the first 3 parameters: file name, open flag and mode and
>will work if I call with just these (and omit o_codepage from the open
>flags). It fails with ERRNO 3021 whenever I try to use the o_codepage flag
>and the codepage parameter.
>
>Here is the rest of the relevant code:
>  * ASCII codepage value
>     Dascii            s             10i 0 inz(437)
>     Docp              s             10u 0
>  * Open Flags
>     Doflag            s             10u 0
>     Do_codepage       s             10i 0 inz(8588608)
>     Do_creat          s             10i 0 inz(8)
>     Do_textdata       s             10i 0 inz(16777216)
>     Do_trunc          s             10i 0 inz(64)
>     Do_wronly         s             10i 0 inz(2)
>  * Open Modes
>     Domode            s             10u 0
>     Ds_irwxu          s             10i 0 inz(448)
>     Ds_irwxg          s             10i 0 inz(56)
>     Ds_irwxo          s             10i 0 inz(7)
>
>      * Open the Stream File
>     C  eval  filename='/home/am/ifstest.txt'
>     C  eval  filename=%trim(filename) + null
>     C  eval  oflag=o_wronly + o_creat + o_trunc +
>     C        o_codepage
>     C  eval  omode=s_irwxu + s_irwxg + s_irwxo
>     C  eval  ocp=ascii
>     C  eval  fd=open(%addr(filename):oflag:omode:ocp)
>
>Thanks for all your help.
>
>Alan
>


+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-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-Ups:

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.