HPE Community read-only access December 15, 2018
This is a maintenance upgrade. You will be able to read articles and posts, but not post or reply.
Dec 15, 4:00 am to 10:00 am UTC
Dec 14, 10:00 pm CST to Dec 15, 4:00 am CST
Dec 14, 8:00 pm PST to Dec 15, 2:00 am PST
Operating System - OpenVMS
Showing results for 
Search instead for 
Did you mean: 

DECforms example

Kevin St
Occasional Visitor

DECforms example

Hello, looking help /assist / example other than what is in the documentation. I have a flat file that I am trying to set up a DECforms Fortran program to maintain. It is very simple: six fields, up to 40 records, 10 displayed. I'm looking for simple Add/Change/Delete or just Add/Delete functionality. Don't know how to read all records into the form, maintain them, and then write them back to the file. Any assistance would be appreciated.
Hein van den Heuvel
Honored Contributor

Re: DECforms example

Did you check the examples DECforms provides in just about any language imaginable, Fortran included?

Check under SYS$HELP
There should be a FORMS.DIR under there.
Define FORMS$EXAMPLE to point there.

run form$checking
Check th review - register selection.
That should be close to your request.
Now examine the sources behind that.

If you have specific questions after that, then be sure to come back with details, preferably using terms from the demo example to help us understand your thinking quicker.

Note, a typical OpenVMS application would use file where each record can be addressed by a key. Most likely an INDEXED file, but sometimes a RELATIVE file or fixed length record sequential. Such application might read all records into a form, but would NOT write them all back, but only UPDATE (keyed write) the changed ones, allowing sharing to the file all along.

Admittedly if the scope is limited to 40, or anything under 4,000 records in a standalone environment, then a simple full read and full write could be rather efficient.

The write would typically create a new version of the output file, but could overwrite.

Good luck!

Hein van den Heuvel
HvdH Performance Consulting

Kevin St
Occasional Visitor

Re: DECforms example


As a matter of fact, I did consult the online examples. The checking app is a single point of entry (either as a deposit or a check) and the display of the register does not allow for Add/Chg/Del. The other app (Mileage) does not allow for Add/Chg/Del in the , just add.

A flat file is the same as a sequential text. I have developed in the Vax environment for 20+ years, and the screen input was through in-house programs. I am trying to do this with DECforms, since I no longer have access to what I have used in the past.

| xxxx xxxxx xxxxx xxxxxxxxxx |
| xxxx xxxxx xxxxx xxxxxxxxxx |
| xxxx xxxxx xxxxx xxxxxxxxxx |
| |

Kind of like the second screen used in the Mileage app, but I want to be able to add a record inside the box, change or delete a record, and then re-write the flat file. Just looking for the mechanisms to do this. The examples do not cover this.


Richard J Maher
Trusted Contributor

Re: DECforms example

Hi Kevin,

I *strongly* advise you to skip (at least at barge-pole's length) anything to do with DECforms! Move straight to a browser-fronted UI pass bollocks and collect $200.

Every addition line of IFDL written is another nail in VMS's coffin :-(

Cheers Richard Maher

PS. Happy New Year to everyone and hope you all had a great Christmas!

PPS. This is the year the rot stops!