VAX/VMS & SQL*Menu v5 os_command
Date: 11 Aug 93 13:26:58 EDT
Message-ID: <1993Aug11.132658.1_at_ocvaxc.cc.oberlin.edu>
This problem is specific to SQL*Menu v5 running on VAX/VMS, using a procedure when a menu option is chosen, that includes:
os_command('(type=2) _at_or_com:orsj0200 "&cp"');
The above command runs orsj0200.com on a VAX/VMS machine from a SQL*Menu v5 type 7 (PL/SQL) menu item. It is used to recompile/relink Pro*C and Pro*Cobol modules and user exits when the Oracle Kernel has been changed and some or all modules need to be relinked.
The command file includes the following:
$!--------------------------------------------------------------- $! Create Temporary Data File of Module Information $!---------------------------------------------------------------
$ write sys$output "BEFORE:"
$ sho log sys$command
$ define/proc sys$command sys$input
$ write sys$output "AFTER:"
$ sho log sys$command
$ create or_temp:orsj0200_'user'.dat
MODULE:AR1P0700,LANG:CO,SYS:AR,SUB:N,UEXIT:N,MACHINE:VAXC,SPEC:Y MODULE:AR1P2000,LANG:CO,SYS:AR,SUB:N,UEXIT:N,MACHINE:VAXC,SPEC:Y ...
$ deassign/proc sys$command
The "$define/proc sys$command sys$input" is needed so that the command file won't come back to the terminal user looking for the input to the temporary file.
When this menu option is chosen from the menu, the user sees something like this:
Module specified: FASP0070
BEFORE:
"SYS$COMMAND" = "_NTY140:" (LNM$PROCESS_TABLE)
AFTER:
"SYS$COMMAND" = "SYS$INPUT" (LNM$PROCESS_TABLE)
1 "SYS$INPUT" = "_OCVS1$DKA0:" (LNM$PROCESS_TABLE)
Updating FASP0070
Pro*C: Release 1.5.6.2.0 - Production on Wed Aug 11 12:01:18 1993
Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
Precompiling fa_src:fasp0070.PC
- Linking FASP0070.EXE
This is a successful recompile and relink of the module called FASP0070. However, lines 2-6,
BEFORE:
"SYS$COMMAND" = "_NTY140:" (LNM$PROCESS_TABLE)
AFTER:
"SYS$COMMAND" = "SYS$INPUT" (LNM$PROCESS_TABLE)
1 "SYS$INPUT" = "_OCVS1$DKA0:" (LNM$PROCESS_TABLE)
are only there as debug statements. They are not necessary to
the process.
But, if I leave out the debug statements:
The command file then includes only the following:
$!--------------------------------------------------------------- $! Create Temporary Data File of Module Information $!---------------------------------------------------------------$ define/proc sys$command sys$input
$ create or_temp:orsj0200_'user'.dat
MODULE:AR1P0700,LANG:CO,SYS:AR,SUB:N,UEXIT:N,MACHINE:VAXC,SPEC:Y MODULE:AR1P2000,LANG:CO,SYS:AR,SUB:N,UEXIT:N,MACHINE:VAXC,SPEC:Y ...
$ deassign/proc sys$command
and the output looks like this:
Module specified: FASP0070
%CREATE-E-OPENIN, error opening SYS$INPUT as input
-RMS-F-LNE, logical name translation count exceeded
%DCL-W-SKPDAT, image data (records not beginning with "$") ignored
This is a total mystery to me. Any clues?
Please respond via email, our newsfeed isn't working.
Thanks,
Jennifer R. Amon PHONE: (216) 775-6987 Houck Computing Center FAX: (216) 775-8573 Oberlin College Oberlin, OH 44074 INTERNET: bamon_at_ocvaxc.cc.oberlin.edu _____________________________________________________________________Received on Wed Aug 11 1993 - 19:26:58 CEST