15 # &Date_Init("DateFormat=non-US"); # set non-USA date, eg:19/08/2005
18 my $csv = Text::CSV_XS->new(
29 my $supplierid = $query->param('supplierid');
30 my @serialid = $query->param('serialid');
31 my $op = $query->param('op');
32 my $serialidcount = @serialid;
34 my %supplierlist = GetSuppliersWithLateIssues;
38 my ($count, @lateissues);
40 ($count, @lateissues) = GetLateIssues($supplierid);
41 for (my $i=0;$i<@lateissues;$i++){
42 my @rows1 = ($lateissues[$i]->{'name'}, # lets build up a row
43 $lateissues[$i]->{'title'},
44 $lateissues[$i]->{'serialseq'},
45 $lateissues[$i]->{'planneddate'},
47 push (@loop1, \@rows1);
52 my ($count2, @missingissues);
53 for (my $k=0;$k<@serialid;$k++){
54 ($count2, @missingissues) = GetLateOrMissingIssues($supplierid, $serialid[$k]);
56 for (my $j=0;$j<@missingissues;$j++){
57 my @rows2 = ($missingissues[$j]->{'name'}, # lets build up a row
58 $missingissues[$j]->{'title'},
59 $missingissues[$j]->{'serialseq'},
60 $missingissues[$j]->{'planneddate'},
62 push (@loop2, \@rows2);
64 $totalcount2 = $totalcount2 + $count2;
65 # update claim date to let one know they have looked at this missing item
66 updateClaim($serialid[$k]);
72 if($missingissues[0]->{'name'}){ # if exists display supplier name in heading for neatness
73 # not necessarily needed as the name will appear in supplier column also
74 $heading = "FOR $missingissues[0]->{'name'}";
75 $filename = "_$missingissues[0]->{'name'}";
80 -type => 'application/vnd.ms-excel',
81 -attachment => "claims".$filename.".csv",
85 print "LATE ISSUES ".$heading."\n\n";
86 print "SUPPLIER,TITLE,ISSUE NUMBER,LATE SINCE\n";
88 for my $row ( @loop1 ) {
91 my $string = $csv->string;
97 if($serialidcount == 1){
98 print "MISSING ISSUE ".$heading."\n\n";
100 print "MISSING ISSUES ".$heading."\n\n";
102 print "SUPPLIER,TITLE,ISSUE NUMBER,LATE SINCE\n";
104 for my $row ( @loop2 ) {
106 $csv->combine(@$row);
107 my $string = $csv->string;
114 print ",,Total Number Late, $count\n";
116 if($serialidcount == 1){
119 print ",,Total Number Missing, $totalcount2\n";