Personally, debugging is just done by putting print statements in the code to test my assumptions. You have already done this. I would help you debug it but you would have to provide a runnable program that exhibits the undesirable behaviour. I tried to reproduce your bug with the code you have provided by doing the following
I copied
show_amend_userorderroute()
removed the sub declaration, commented out the sql and put
use Tk;
my $window = MainWindow->new();
at the beginning, changed
my $frame = $mainmenu->Toplevel(-title => 'Amend User',);
to
my $frame = $window->Toplevel(-title => 'Amend User',);
and put
MainLoop();
at the end. I get
Tk::Error: Undefined subroutine
&main::process_amend_userorderroute called at C:
\Documents and Settings\blm\Desktop\test2.pl line 37.
Tk callback for .toplevel.button
Tk::__ANON__ at C:/Perl/site/lib/Tk.pm line 247
Tk::Button::butUp at C:/Perl/site/lib/Tk/Button.pm line 111
<ButtonRelease-1>
(command bound to event)
This means the program tried to run the desired routine and I was unsuccessful in reproducing your bug.
(I didn't bother copying and pasting the process_amend_userorderroute to my test code)
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.