HP OpenVMS Systems

Ask the Wizard
» 

HP OpenVMS Systems

OpenVMS information

» What's new on our site
» Upcoming events
» Configuration and buying assistance
» Send us your comments

HP OpenVMS systems

» OpenVMS software
» Supported Servers
» OpenVMS virtualization
» OpenVMS solutions and partners
» OpenVMS success stories
» OpenVMS service and support
» OpenVMS resources and information
» OpenVMS documentation
» Education and training

Quick Links

» Non-javascript page
» Ask the Wizard
» OpenVMS FAQ

Test Drive OpenVMS

» OpenVMS I64 test drive
» Java test drive

Other information resources available to you include:

» OpenVMS freeware
» ECO kits, software and hardware support, prior version support
» Alpha SRM, ARC, and AlphaBIOS firmware updates
» ENCOMPASS - HP user group
» OpenVMS software downloads, OpenVMS freeware CD-ROM
» OpenVMS firmware locations
» DECconnect passive adaptor charts
» Cables reference guide
» MicroVAX console commands
» OpenVMS student research

Select a topic below to see Questions Frequently Asked by partners

» Using the online documentation library(installing BNU from the asap SDK)
» Global sections(how to create and use.)
» xx$CREATE_BUFOBJ system service(usage)
» Ethernet address(methods of determination)
» Shareable images(cookbook approach to creating one)
» Sharing data/code at absolute addresses(a guide with examples)
» Determining the Alpha microprocessor
» Using GETSYI to get hardware status

Evolving business value

» Business Systems Evolution
» AlphaServer systems transition planning
» Alpha RetainTrust program

Related links

» HP Integrity servers
» HP Alpha systems
» HP storage
» HP software
» HP products and services
» HP solutions
» HP support
disaster proof
HP Integrity server animation
HP Integrity server animation
Content starts here

Ask the Wizard Questions

DCL: /SINCE and /BEFORE problems with opened files

The Question is:

A problem using /BEFORE/SINCE filters:

I have a program which continuously writes data to a text file.
Each 8 hours, the file is closed, and a new one is opened.  The
files have the same base name, but the date is coded in the
file name extension.  I want to copy the files to another VAX node
as they are closed, using a batch job.  Using the following
command:

$PRINT/SINCE=-8/BEFORE=-1 FILE_NAME NODE_2::*

The closed file is properly copied, but the command also tries
to copy the file just opened.  The command bombs out, because
my program has the open file locked.  I though that the
/BEFORE=-1 should filer out files created within the last hour.
The following command:

$DIR/SINCE=-9/BEFORE=-1 FILE_NAME

gives the expected result, reporting only the file created 8 hours
ago, an not the file created a few minutes ago.

What am I doing wrong?


The Answer is:


    Nothing. Just an unfortunate implementation detail.
    Most VMS utilities use a common set of routine to deal
    with file selection qualifiers such as /before and /exclu
    That package use RMS to get dates filled in through an OPEN.
    As you, and others, found out, that open can fail if the
    file is currently opened dis-allowing others.
    Directory, being more intimate with file headers and such,
    will uses a direct ACP QIO to get file attibutes with an
    option to ignore the file access lock.

    Suggestions:
    	- Teach the procedure to ignore the error:
    		$ON ERROR
    		:
    		$IF $STATUS .EQ...
    	- Use directory to build a list of file to copy:
    		$DIR/SINCE=-8/BEFORE=-1/NOHEAD/NOTRAIL ....
    	- Have the application change filenames after the close.