On Tue, 27 Jul 2004 11:58:51 -0400, Bob Showalter wrote > > It's really not a Perl issue per se. I assume you're talking about variables > used by Oracle libraries, like ORACLE_HOME and ORACLE_SID. > > I advise you to *not* attempt to set or monkey with these variables inside > the Perl script. The whole point of environment variables is so the > user can establish his environment *before* invoking your script.
I agree with this in general, but sometimes the environment in which your Perl runs cannot define these variables for you. For instance, Interwoven TeamSite Data Capture Template inline callout invocations clear all environment variables before forking your process (the vendor claims this is for security reasons). For Oracle you must set ORACLE_HOME, etc, and for SQL Server you have to define SYSTEMROOT or something like that or ODBC or whatever doesn't work. If coded, this logic of course belongs in a module. I also sometimes use environment variables to hold global configurables when it is not feasible to pass these values to the subroutines that need them. It's faster for the subroutine to use an environment variable than to do a lookup into a flat file to get some configuration info. If I put this in the environment before forking the process the space would be cluttered. If there's a better way to cache global confgiurables or other feedback on these subjects I am all ears - I don't like using the environment, let alone setting values that should be set elsewhere. Thanks, -John -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>