Thanks all...
john

On 1/24/08, David Murray <[EMAIL PROTECTED]> wrote:
> Hi all,
>
> UniVerse and SB+ also have this technique built in.
>
> UniVerse is via the OPEN.FILE.B in the APP.PROGS file (uv account) and SB+
> via the SB.FILEVAR.S subroutine.
>
> I had written an article regarding the UniVerse routines:
> http://u2blog.org/2007/11/05/appprogs-open-tools/
>
> Cheers,
>
> David Murray
>
>
> .learn and do
> .excel and share
>
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Scott Ballinger
> Sent: Thursday, January 24, 2008 11:37 AM
> To: u2-users@listserver.u2ug.org
> Subject: Re: [U2] Universe 20.1 itype perf enhancer
>
> Hi John,
>
> As you surmised, this is not a new trick. Here is my version:
>
> SUBROUTINE OPEN.FILE.SUB(FILENAME,FILEVAR,ERROR)
> * open filename to filevar, keep opened files in named common
> * 01-20-01 asb
> COMMON /OPEN.FILE.SUB/ FILENAMES,FILEVARS(1000)
> IF ASSIGNED(FILENAMES) ELSE
>  FILENAMES = ""
> END
> ERROR = ""
> LOCATE(FILENAME,FILENAMES;POS) THEN
>  FILEVAR = FILEVARS(POS)
> END ELSE
>  OPEN FILENAME TO FILEVAR THEN
>    IF POS LE 1000 THEN
>      FILENAMES<POS> = FILENAME
>      FILEVARS(POS)  = FILEVAR
>    END
>  END ELSE
>    FILEVAR = ""
>    ERROR = 1
>    CRT @(0):"ERROR! can't open ":FILENAME:@(-4)
>  END
> END
> RETURN
>
> In use, you CALL OPEN.FILE.SUB("MYFILE",FILEVAR,ERR) ; IF ERR THEN ....
>
> Interestingly, on D3 this does not seem to have much benefit, where the OPEN
> function seems faster than the LOCATE.
>
> /Scott Ballinger
> Pareto Corporation
> Edmonds WA USA
> 206 713 6006
>
> On Jan 24, 2008 6:56 AM, john reid <[EMAIL PROTECTED]> wrote:
>
> > I just saw this today, and although i am certain that everyone must
> > know it already, i am including it.
> > For itypes that call subroutines, where the subroutines open lots of
> > files, put a named common in the subroutine that contains what amounts
> > to dimensioned arrays that hold the file vars. Put a switch in so that
> > the files are opened only once.
> > Anecdotally, this appears to work more efficiently than not having the
> > common. If there are reasons why this is ill-advised, I'd like to see
> > that as well.
> > thanks.
> > John
> > COMMON /SETUP.STUFF/MY.FILES(15),FIRST.IN.SWITCH
> > --
> > john
> > -------
> > u2-users mailing list
> > u2-users@listserver.u2ug.org
> > To unsubscribe please visit http://listserver.u2ug.org/
> -------
> u2-users mailing list
> u2-users@listserver.u2ug.org
> To unsubscribe please visit http://listserver.u2ug.org/
> -------
> u2-users mailing list
> u2-users@listserver.u2ug.org
> To unsubscribe please visit http://listserver.u2ug.org/
>


-- 
john
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to