This isn't very elegant (and maybe not too efficient), but it will store and extract the data in a way that is usable. I don't do html work, so you are on your own for figuring that part out :)
Note: it assumes that in milestones.xls, all the taskID's are stored in a single cell.
use Spreadsheet::ParseExcel::Simple;
my (%milestones, %taskID);
my $xls = Spreadsheet::ParseExcel::Simple->read('milestones.xls');
foreach my $sheet ($xls->sheets) {
while ($sheet->has_data) {
my @data = $sheet->next_row;
next if $data[0] =~ m/ID/;
next if $data[0] eq '';
my @tasks = split(",", $data[1]);
foreach my $task (@tasks) {
$milestones{$data[0]} = [ @tasks ];
}
}
}
my $xls = Spreadsheet::ParseExcel::Simple->read('TaskLists.xls');
foreach my $sheet ($xls->sheets) {
while ($sheet->has_data) {
my @data = $sheet->next_row;
next if $data[0] =~ m/ID/;
next if $data[0] eq '';
my @tasks = @data[2..3];
$taskID{$data[0]} = [ @tasks ];
}
}
foreach my $milestone (keys %milestones) {
my @tasks = @{ $milestones{$milestone} };
foreach my $task (@tasks) {
print "milestone = $milestone, id = $task, start = @{ $taskID{
+$task} }[0], stop = @{ $taskID{$task} }[1]\n";
}
}
exit;
|