On Tuesday, April 16, 2002, at 10:11  AM, Ho, Tony wrote:

> Hi guys
> I was wondering if you could help me.
> Does anybody know how to write formatted results to a file ?
>
> I am getting the following error :
>
> write() on closed filehandle main::ADDRESSLABEL at ./test.pl line 2785,
> <SUMMARYTMP> line 5.
> write() on closed filehandle main::ADDRESSLABEL at ./test.pl line 2785,
> <SUMMARYTMP> line 15.
> write() on closed filehandle main::ADDRESSLABEL at ./test.pl line 2785,
> <SUMMARYTMP> line 21.
>
> This is the section of my perl code reads results from an BCP output file
> and is as follows :
>
> sub create_summary_report
> {
>      my (@record, $element, $rows_copied, $line_output);
>      @record = qw(A B C);
>      $rows_copied = "rows copied";
>      $element = 0;
>
>      open SUMMARYTMP, "<$bcp_file_directory$log_file_summary_tmp"
>           or die "Unable to open $log_file_summary_tmp for reading: $!\n"
> ;
>
>      open SUMMARY, ">$log_directory$log_file_summary_final"
>           or die "Unable to open $log_file_summary_final for writing: 
> $!\n";
>
>      print SUMMARY "Summary Details\n";
>      print SUMMARY "--------------------------\n";
>      print SUMMARY "Account (From) : $fromAccount\n";
>      print SUMMARY "Account (To)   : $toAccount\n\n\n";
>      print SUMMARY "Record Types\n";
>      print SUMMARY "------------\n";
>
> format ADDRESSLABEL =
> @<<<<<, @<<<<<
> $record[$element], $line_output
> ..
>
>      while(<SUMMARYTMP>) {
>           chop;
>           $line_output = $_;
>           if ($line_output =~ /\b$rows_copied\b/) {
>              print SUMMARY write(ADDRESSLABEL);
>              $element = $element + 1;
>           }
>      }
>

in addition you need to quote the format label when assigning:
$~ = 'ADDRESSLABEL';

>      close SUMMARYTMP
>           or die "Error closing $log_file_summary_tmp";
>
>      close SUMMARY
>           or die "Error closing $log_file_summary_final";
> }
>
> I would be most grateful with any advice.
>
> Thanks in advance
> Tony
>


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to