Make $open a global variable and use it instead of 'datafile.name':
in reply to Re^6: Perl tk - How to integrate external scripts
in thread Perl tk - How to integrate external scripts
Variables are global by default - if you don't understand this just take care never to declare it with 'my' ( don't write "my $open='foo';" just "$open='foo';" ). Set the value for $open with your file selection widget and the bind will call the get_statistics routine with the appropriate value ('value of the $open global variable at the time of the button click') as an argument for you.
-command => [ \&get_statistics , $open ]