| Title: | *OLD* ALL-IN-1 (tm) Support Conference |
| Notice: | Closed - See Note 4331.l to move to IOSG::ALL-IN-1 |
| Moderator: | IOSG::PYE |
| Created: | Thu Jan 30 1992 |
| Last Modified: | Tue Jan 23 1996 |
| Last Successful Update: | Fri Jun 06 1997 |
| Number of topics: | 4343 |
| Total number of notes: | 18308 |
ALL-IN-1 3.0
My customer has written an application that used to happily print files
in batch in v2.4 by calling WPPSYSTEM.SCP but which now access violates
with the same code. He has written an example script to demonstrate the
problem which follows below :-
$!replace UVOF$LN03 below with a real print queue name
$!remove the comments on the line !!!form auto... to stop the accvio
$!(usually)
$create sys$login:d1.tmp
This is a test #1
Please ignore this print
$!
$create sys$login:d2.tmp
This is a test -#1
Please ignore this print
$!
$allin /noinit/nocustom oa$ini_init
oa$tra_set log,script,symbol,mess
!!!form auto select for smprintdesttype do sel_style
.%key/style=file/list="d1.tmp"
get #PRINT_FMTCTL = #PRINT_FEEDCTL = #PRINT_PASSALLCTL = #PRINT_NOEJECT_FF = ""
get #copies = 1
get#print_outfile_1="sys$login:d1.tmp"
get #print_outfile_2="sys$login:d2.tmp"
get #print_out_count = 2
get #print_queue="UVOF4LN03"
do wppsystem
$exit
The command procedure as is access violates but removing the comments
on the line !!!form auto... prevents the access violation. However this
fix does not work in their application !!
Apparently (the customer says) there is a problem with
oa$scroll_selected not being defined (or something like that -
a1trace.log shows this is the case). They can therefore work around the
issue by commenting out the lines in WPPSYSTEM.SCP that read
.if OA$SCROLL_SELECTED eqs "" -
then get #PRINT_TEMP = #PRINT_SELECTED -
else get #PRINT_TEMP = OA$SCROLL_SELECTED
.if #PRINT_MULTIPLE lt #PRINT_TEMP and -
#PRINT_COMBINE_MULTIPLE_JOBS eqs OA$Y then .exit
However this is not satisfactory for them. Does anyone know why the
script changed and what if anything can be done to stop the access
violation ?
Thanks,
Clive
| T.R | Title | User | Personal Name | Date | Lines |
|---|---|---|---|---|---|
| 3273.1 | WPPSYSTEM changes | IOSG::NEWLAND | Richard Newland, IOSG, REO2-G/L2 | Tue Sep 14 1993 18:59 | 33 |
WPPSYSTEM.SCP was changed in V3.0 to support many more print options (e.g.
Number_up, Sides) and to support the multiple print to a single print job
option. The OA$SCROLL_SELECTED symbol is examined during the processing
for multiple print to a single job print operations.
Print Completion scripts, such as WPPSYSTEM, WPPBGFORMAT and WPPPORT, are
designed only to be called from WPPPRINT. The customer has called WPPSYSTEM
directly. We do not and cannot guarantee that scripts called in a
non-standard way will work from one version to another. WPPSYSTEM now has
many more input symbols (which WPPRINT will set-up) so other problems may
occur if it is called without these symbols set.
Do you know why the customer is calling WPPSYSTEM?
An alternative method for creating a print job with two files without
calling WPPSYSTEM is to use the SEND_JBC function directly, e.g.
SEND_JBC CREATE_JOB/QUEUE="UVOF4LN03"/PAGINATE/NO_PASSALL
SEND_JBC ADD_FILE/FILE_SPECIFICATION="sys$login:d1.tmp"
SEND_JBC ADD_FILE/FILE_SPECIFICATION="sys$login:d2.tmp"
SEND_JBC CLOSE_JOB
This will be much faster than calling WPPSYSTEM, and will not be affected
by any future changes we make to print completion scripts.
The problem with getting the value of OA$SCROLL_SELECTED before it has been
initialized by performing index form operations is known and will be fixed
in a PFR.
Richard
| |||||