COMMIT
Nancy Tietz
ntietz@MCARE.MED.UMICH.EDU
Thu, 24 May 2001 11:16:30 -0400
You could try making the Reference file a Designer instead, since you are
coding the GET yourself anyway.
Also, check that the TEMP field doesn't get reset. You can do that with the
RESET AT STARTUP option on the TEMP statement.
If you use DEBUG in Qdesign, you could see what was happening to your temp
and define fields.
I hope that helps,
Nancy
-----Original Message-----
From: Kesterson, Roger [mailto:Roger.Kesterson@mtdsw.com]
Sent: Thursday, May 24, 2001 11:12 AM
To: 'powerh-l@list.swau.edu'
Subject: RE: COMMIT
Thanks for all the responses. It wasn't clear to me from reading the manual
that it is only for relational. We only use PH with RMS, so I guess that's
all I needed to know.
I am experiencing another strange problem. One thing we are using PH for
(PH 7.10.G2, OpenVMS 7.1) is to run a QUICK program in batch that acts as a
"server" for some data collection systems running on remote nodes. The
communication is via a combination of mailboxes and DECNET transparent
task-to-task. This setup, so far, appears to be very robust, and seems to
recover quickly and cleanly from network "glitches" which we experience on a
regular basis since one of our nodes is in Mexico, where the power grid and
data lines are quite unstable. But I digress.
The error is:
"Data access error. (LOAD_LISTS*01)?%RMS-F-FAC, record operation not
permitted by
specified file access (FAC)"
The LOAD_LISTS file is defined as:
FILE LOAD_LISTS DESIGNER OPEN WRITE SHARE
FILE LOAD_LISTS DESIGNER ALIAS LOAD_LISTS_REF OPEN READ SHARE
Even though the error message says (LOAD_LISTS*01), it is occurring in a
procedure that is trying to read from LOAD_LISTS_REF. It seems to only
occur after it writes a record to LOAD_LISTS for one request from the data
collection system, and then the very next request causes it to attempt to
read the same record from LOAD_LISTS_REF.
Here are the code snipets:
PROCEDURE INTERNAL PROCESS_TRC
BEGIN
LET T-TRAILER = (MBX_BUF OF MBXOUT)[1:9]
LET T-LOAD-LIST = (MBX_BUF OF MBXOUT)[10:6]
LET LOAD_LIST_NUMBER OF LOAD_LISTS = T-LOAD-LIST
LET TRAILER_NO OF LOAD_LISTS = T-TRAILER
LET DATE_TIME_CREATED OF LOAD_LISTS = &
ASCII(SYSDATE,8) + ASCII(SYSTIME,8)
PUT LOAD_LISTS RESET
END
PROCEDURE INTERNAL PROCESS_CMP
BEGIN
LET T-LOAD-LIST = (MBX_BUF OF MBXOUT)[1:6]
GET LOAD_LISTS_REF VIA LOAD_LIST_NUMBER &
USING T-LOAD-LIST OPTIONAL
IF ACCESSOK
THEN
BEGIN
.
.
.
END
END
So basically, PROCESS_TRC is called, followed fairly quickly by PROCESS_CMP,
using the same value for T-LOAD-LIST, and the program blows on the GET with
the above error. It seems like it might be a timing issue, because when the
program comes back up, the PROCESS_CMP works fine on the same load list
number.
Thanks,
Roger
> -----Original Message-----
> From: Kesterson, Roger [mailto:Roger.Kesterson@mtdsw.com]
> Sent: Wednesday, May 23, 2001 9:54 AM
> To: PowerHouse List Server (E-mail)
> Subject: COMMIT
>
>
> This might seem like a silly question, but when might one use a COMMIT
> command in QUICK?
>
> = = = = = = = = = = = = = = = = = = = = = = = = = = = =
> Mailing list: powerh-l@lists.swau.edu
> Subscribe: "subscribe" in message body to
> powerh-l-request@lists.swau.edu
> Unsubscribe: "unsubscribe" in message body to
> powerh-l-request@lists.swau.edu
> http://lists.swau.edu/mailman/listinfo/powerh-l
> This list is closed, thus to post to the list you must be a
> subscriber.
>
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Mailing list: powerh-l@lists.swau.edu
Subscribe: "subscribe" in message body to powerh-l-request@lists.swau.edu
Unsubscribe: "unsubscribe" in message body to
powerh-l-request@lists.swau.edu
http://lists.swau.edu/mailman/listinfo/powerh-l
This list is closed, thus to post to the list you must be a subscriber.