|
In addition to my earlier post on the IFS here is some code used
along with the header file that I posted. I ran out of time earlier to
include this with that post...
This file creates a file on the UNIX system over a mount using the OS/400 NFS...
D RC S 10I 0
DIR/File Name
D FileNam S 50A INZ('/qualcomm/test1')
D FileNamP S * INZ(%ADDR(FileNam))
D FileDescr S 10I 0
D O_CREAT S 10I 0 INZ(8) Create File Code
D O_RDWR S 10I 0 INZ(4) Authorities on File
D O_TEXTDATA S 10I 0 INZ(16777216) Conversion to Ascii
D O_CODEPAGE S 10I 0 INZ(8388608)
D Oflag S 10I 0 INZ(0) Field Sent
D Omode S 10U 0 INZ(511)
D cp S 10U 0 INZ(819) ** This is the Code
Page of File**
D ZeroBin S 1A INZ(*ALLX'00')
D NLZero S 2A INZ(X'1500')
D SI_Fmt S 50A INZ('\n')
D SI_FmtP S * INZ(%ADDR(SI_Fmt))
D SI_Msg S 50A
D SI_MsgP S * INZ(%ADDR(SI_Msg))
D Num_DS DS
D Num_Hex 4A INZ(X'00000000')
D Num 10I 0 OVERLAY(Num_Hex)
D Buf S 100A ** This is Information
Sent **
D BufP S * INZ(%ADDR(Buf))
D BufLen S 10U 0
D/copy IFSHEAD
** Create File Name String **
C EVAL FileNam = %TRIM(FileNam) + ZeroBin
C Z-add O_CREAT Oflag
C Add O_RDWR Oflag
C Add O_CODEPAGE Oflag
** This command opens the file and create it if it does not exist and
assigns code page C EVAL
FileDescr=open(FileNamP:Oflag:Omode:cp)
** Print error if error in opening or creating file **
C IF FileDescr = -1
C EVAL RC = perror(FileNamP)
C Return
C ENDIF
** Close the File **
C EVAL RC = close(FileDescr)
** Print Error if Error when closeing file **
C IF RC = -1
C EVAL RC = perror(FileNamP)
C Return
C ENDIF
** Reopen file ** I was informed that I had to open file twice like this in
order for the conversion to ascii to take place.
C Z-Add O_RDWR Oflag
C Add O_TEXTDATA Oflag
C EVAL FileDescr=open(FileNamP:Oflag)
** Again print any errors **
C IF FileDescr = -1
C EVAL RC = perror(FileNamP)
C Return
C ENDIF
** Populate feild with information to write to file **
** HEX 25 if I remember right is Line Feed...**
C EVAL Buf='This is a Test number 1' + X'25'
** Write information to file **
C EVAL RC = write(FileDescr: BufP: BufLen)
** Print any Errors
C IF RC = -1
C EVAL RC = perror(FileNamP)
C Return
C ENDIF
** Close the File **
C EVAL RC = close(FileDescr)
C IF FileDescr = -1
C EVAL RC = perror(FileNamP)
C Return
C ENDIF
C SETON LR
I hope this will help in writing any program. If you have any quesitons
please let me know. I also wrote a program that reads a directory on the
Unix box and looks for a paticular file. If it finds the file it opens and
reads the file then moves it or deletes it... If you need help building a
header for a command I might be able to help out in that area as well.
Sometimes it get kinda confusing trying to translate the C header files over
to RPGIV format needed...
Hope this Helps,
Wayne Cork
Groendyke Transports, Inc.
Wcork@Ionet.net
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to "MIDRANGE-L@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 mailing list archive is Copyright 1997-2025 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.