my @AlleWochen; my @EineWoche; my %EineWoche; for my $d ( 1 .. Days_in_Month($year, $month) ) { my $dow = Day_of_Week($year, $month, $d); # Am Monatsersten wenn kein Montag Leerzellen einfügen if ( $d == 1 && $dow > 1 ) { for my $i ( 1 .. $dow - 1 ) { my %EinTagDummy = ( TAG => 'xx', ); push (@EineWoche, \%EinTagDummy); } my %EinTag = ( TAG => $d, ); push (@EineWoche, \%EinTag); } else { my %EinTag = ( TAG => $d, ); push (@EineWoche, \%EinTag); } # am letzten Tag der Woche Zeile übergeben if ( $dow == 7 ) { $EineWoche{EINE_WOCHE} = \@EineWoche; push (@AlleWochen, \%EineWoche); @EineWoche = (); } } $template->param( ALLE_WOCHEN => \@AlleWochen );