in reply to RTF Table function

I believe it is your use of multiple lists as arguments to the RTFTable function that causes this behavior. You cannot use multiple lists as arguments, since Perl does not know where one list ends and another starts. Use references to lists instead. Reading perlref and perlreftut is an excellent start.
#!/usr/bin/perl use warnings; use strict; use Data::Dumper; use Log::Log4perl qw(:easy); Log::Log4perl->easy_init($DEBUG); my $logger = get_logger(); my @tableProp5 = ( widths => [3*1440, 4*1400], align => 'l l', ); my @myText = ( ['\fs20\b this', 'that'], ['\fs20\b this', 'that'], ['\fs20\b this', 'that'], ['\fs20\b this', 'that'], ); RTFTable(@tableProp5, 9, 7, @myText); sub RTFTable{ my (@tableProps, $headerColor, $bgColor, @Text ) = @_; my $count = 0; my $oDecl5; $logger->debug("tableProps:". Dumper(@tableProps)); $logger->debug("headerColor:". Dumper($headerColor)); $logger->debug("bgColor:". Dumper($bgColor)); $logger->debug("Text:". Dumper(@Text)); } __END__ C:\src\perl\perlmonks\635868>perl 635868.pl 2007/08/29 20:15:44 tableProps:$VAR1 = 'widths'; $VAR2 = [ 4320, 5600 ]; $VAR3 = 'align'; $VAR4 = 'l l'; $VAR5 = 9; $VAR6 = 7; $VAR7 = [ '\\fs20\\b this', 'that' ]; $VAR8 = [ '\\fs20\\b this', 'that' ]; $VAR9 = [ '\\fs20\\b this', 'that' ]; $VAR10 = [ '\\fs20\\b this', 'that' ]; 2007/08/29 20:15:44 headerColor:$VAR1 = undef; 2007/08/29 20:15:44 bgColor:$VAR1 = undef; 2007/08/29 20:15:44 Text:
As you can see, Perl puts all arguments into the first list. The three last variables headerColor, bgColor, Text are all undefined.
--
Andreas