|
If I was writing this function in c I would simply pass the file handle as one of the parameters. My main routine would handle the file open and close. There would be no issue as to activation groups, static variables etc. I would use the same routine even when the file was opened more than once (update, read). How would I accomplish the same thing in RPGIV. Coordinating file access and control between a service program and a main program adds a level of complexity which cannot improve program reliability or maintainability. There are constraints and requirements placed on the programmer which, at the current time, the 400 development environment/compilers cannot validate. If the variable CUST_FILE_OPEN is supposed to indicate whether or not the file is open but I neglect to use it or reset it in my main program the compiler will not clearly indicate this. It may or may not place a warning message in the compile about unused variables but when using externally described files you could have hundreds of those. This seems to be a major hurdle to writing a library of universal access routines. John Hall Home Sales Co. paul cunnane wrote: > > > Someone did ask me a question off-line, where is my file being declared? > Well, > > it's being declared in my main program, which brings up the question. > When I > > move this function to it's own source file and compile it, I'm going to > have > > to declare the file spec in the new source file, right? > > Yup. And add the USROPN keyword, and open it on the first call to the > procedure. There was a debate a while back as to whether %OPEN or a static > variable was the better approach to determining whether the file has been > opened yet. The other burning question is whether the add a cleanup > procedure to close the file, or to allow it to be closed when the activation > group ends. > > -- > Paul > +--- | 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 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.