Larry Oltmanns wrote:
Thanks Brian, your on the Mark, the likly hood of Solaris placing the /usr/tmp into var/tmp
with an alias is a very good observation, and the FILEPREFIX variable which as I have attached below
show that in fact this is the issue. I can appreciate using search engines "find" on a LAN for these
types of problems are just that an egg hunt. To take it a step further I think if hundreds of letters would be comming through CCLTRGEN.sqr then it would make sense to have set directory structure and output variables setup. As an example:In CCLTRGEN we could have move '{FILEPREFIX_NEW}' to $Filename [ as a mod ] or leave it.
setenv.sqc
for UNIX we could have #define FILEPREFIX_NEW /reports/sa/adm_sys_cntl/act/
for UNIX we could have #define FILEPREFIX_NEW /reports/sa/adm_sys_cntl/eos/
for UNIX we could have #define FILEPREFIX_NEW /reports/sa/adm_sys_cntl/gre/
for UNIX we could have #define FILEPREFIX_NEW /reports/sa/adm_sys_cntl/sat/
for UNIX we could have #define FILEPREFIX_NEW /reports/sa/adm_sys_cntl/sss/
1) Question what is that logic like "Using the SQR getenv function to set the directory dynamically ".
If I had a directory like the one above (i.e. /reports/sa/adm_sys_cntl/)2) Question what UNIX environment variables were changed in your findings.
=========extracted from ccltrgen.sqr ===================
begin-procedure Print-Record
if #First_Print
move 0 to #First_Print
move '{FILEPREFIX}' to $FileName
concat 'CC' with $FileName
concat $Letter_Cd with $FileName
concat '.' with $Filename
evaluate $xtrct_file_type
when = 'W'
concat 'LTR' with $Filename
break
when = 'J'
concat 'DAT' with $FileName
end-evaluate
concat '{FILESUFFIX}' with $Filename
let $Filename = lower($Filename)====extracted from ========== setenv.sqc ======= enterprise testing environment=============
#ifdef UNIX
#define FILEPREFIX /usr/tmp/
#define FILESUFFIX
#endif
===========================SQR Users Group=================================Apologies in advance to non-PeopleSoft users.
I've been out a few days, sorry if this has already been answered. In
PeopleSoft, you can easily direct the output of SQR's that generate
listing in the "normal" methods: i.e. those whose destinations you
specify with the -f option on the SQR command line. However, there are
a number of PeopleSoft SQR programs which generate files, not listings,
and the name and/or location of the file is set in the program itself.
Typically, these SQR's use the substitution variable FILEPREFIX to set
the directory name. This FILEPREFIX is set in the setenv.sqc and for
UNIX (in a vanilla install) is defined as /usr/tmp. In some UNIX
flavors, /usr/tmp is a link/alias for /var/tmp.I would suggest a quick scan of the offending SQR (ccltrgen) to see
where it is setting up the file name for your letters file. I suspect
you will find it uses FILEPREFIX. If you don't like /usr/tmp then you
have a couple of options:
1. Modify setenv.sqc. Unfortunately this is a global setting for ALL
sqr's which use this sqc and you will not be able to set this value
dynamically (e.g. different settings for test and production) without
creating separate sqc's.
2. Modify the SQR and put in your own file naming logic. We've taken
this approach a couple of times. We set some UNIX environment variables
and use the SQR's getenv function so that we can set the directory
dynamically.
--
Brian Murray Brian.C.Murray@vanderbilt.edu
Office of Administrative Systems
Vanderbilt University
begin: vcard fn: Larry Oltmanns n: Oltmanns;Larry org: University of Minnesota ISS adr: ;;;Minneapolis;Minnesota;;United States of America email;internet: oltma004@tc.umn.edu title: Soft Link Inc., PeopleSoft Consultant tel;work: 612-624-8352 Pager = 612-579-597tel x-mozilla-cpt: ;0 x-mozilla-html: TRUE version: 2.1 end: vcard