Can't call method "My" on an undefined value at G:\PERLCODE\NEWSCR~1.CGI line 23."
####
global symbol $LogMsg requires explicit package name".
####
#! perl -w
use strict;
use diagnostics;
use Time::localtime;
use Config::IniFiles;
MAIN:{
my $DirPath = 'A:\\TempIMS_Work\\Listings\\';
my $Logfile = 'DRS_FileModify.log';
my $StdErrfile = 'DRS_FileModify_StdErr.log';
my $Log = $DirPath.$Logfile;
my $StdErr = $DirPath . $StdErrfile;
# Just to get around warning of "Only Used Once"
my $dummystmt = $Log . $StdErr;
#Error1
My $MAIN::LogMsg = "\n\n" . &getDateTime() . "\ - Starting Processing\n\n";
# Start the log and StdErrLog
&writeLog();
&writeStdErr();
# Ensure the log path exists
opendir (Dir, $MAIN::DirPath)
or die "\n\nCannot open the path for the processing log: $MAIN::DirPath -- $!\n";
closedir(Dir);
# Loop
# Process each DRS file -- Call processDRS_File
# EndLoop
# If error, FTP the errmsg
# if FTP failure, write to logs
# if success, write o.k. msg to logs
#EOJ
}
# Subroutines and Functions
sub getDateTime {;
my $tm = localtime(time);
my $ampm = "am";
my $tempHour = undef;
if ($tm->hour > 12)
{$tempHour = $tm->hour - 12;
$ampm = "pm";
}
else {
$tempHour = $tm->hour;
};
return (sprintf("%02d/%02d/%02d %02d:%02d %02s",
$tm->mon+1, $tm->mday, substr($tm->year + 1900, 2, 2),
$tempHour, $tm->min, $ampm)
);
};
sub writeLog() {
#Error2
# $^W = 0;
open LOGFILE, '>>', "$MAIN::Log"
or die "ERROR: Cannot open Log file: $!";
# $^W = 1;
#Error3
# my $temp = $MAIN::Log;
print LOGFILE $MAIN::LogMsg;
close LOGFILE;
};
sub writeStdErr() {
open STDERRFILE, '>>', "$MAIN::StdErr"
or die "ERROR: Cannot open StdErr file: $!";
my $temp = $MAIN::StdErr;
print STDERRFILE $MAIN::LogMsg;
close STDERRFILE;
};