in reply to Re: Catching errors.
in thread Catching errors.
I am trying to catch the errors within the perl application using a number of standard routines like this one:
$sth=$dbh->prepare($sql_string) or die_db(...) sub die_db{ # # Send emails. # my $message=shift; my $line_number=shift; print STDOUT $line_number, "\n", $message; my $from = hostname().'@i-mageonline.com'; my $msg = "There has been an error at line $line_number. \nThe err +or message is '$message'. "; my $sender = send_email("DB Error at line $line_number", $msg, $fr +om); my $result = $sender->MailMsg({ msg => $sender->{msg}, }) or die "$Mail::Sender::Error\n"; die "DB Error" . DBI->errstr; }
Update
If your application is throwing 'missing perl function errors' then that suggests that you are not testing your code sufficiently.
This is mostly caused by uninitialised objects, like this:
Because $self->{calendar_9} is not created (undefined), GetValue does not exist.$self->{"calendar_".$n} = Wx::Calendar->new(.....); . . . $self->{calendar_9}->GetValue();
Are you really compiling code on user machines?
By 'compile time', I mean starting the perl interpreter, and the interpreter checks (compiles) all the dependencies and says that such-and-such a module has a syntax error and the code does not even execute.
|
---|
In Section
Seekers of Perl Wisdom