-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathbursar.pl
More file actions
77 lines (65 loc) · 1.76 KB
/
bursar.pl
File metadata and controls
77 lines (65 loc) · 1.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#!/usr/bin/perl
use lib qw(../);
use strict;
use Loghandler;
use Mobiusutil;
use DBhandler;
use sierraScraper;
use Data::Dumper;
use Date::Manip;
#use warnings;
#use diagnostics;
my $configFile = shift;
if(!$configFile)
{
print "Please specify a config file\n";
exit;
}
my $mobUtil = new Mobiusutil();
my $conf = $mobUtil->readConfFile($configFile);
if($conf)
{
my %conf = %{$conf};
if ($conf{"logfile"})
{
my $log = new Loghandler($conf->{"logfile"});
$log->addLogLine(" ---------------- Script Starting ---------------- ");
my @reqs = ("dbhost","db","dbuser","dbpass","port","bursaroutputdir");
my $valid = 1;
for my $i (0..length(@reqs))
{
if(!$conf{@reqs[$i]})
{
$log->addLogLine("Required configuration missing from conf file");
$log->addLogLine(@reqs[$i]." required");
$valid = 0;
}
}
if($valid)
{
my $dbHandler;
eval{$dbHandler = new DBhandler($conf{"db"},$conf{"dbhost"},$conf{"dbuser"},$conf{"dbpass"},$conf{"port"});};
if ($@) {
$log->addLogLine("Could not establish a connection to the database");
$valid = 0;
}
if($valid)
{
my $dt = DateTime->now;
$dt = $dt->subtract(days=>1);
if($dt->local_day_of_week() == 1)#correct for weekend
{
$dt = $dt->subtract(days=>2);
}
my $datestamp = $dt->year."-".$mobUtil->padLeft($dt->month,2,'0')."-".$mobUtil->padLeft($dt->day,2,'0');
my $scraper = new sierraScraper($dbHandler,$log,"SELECT INVOICE_NUM FROM SIERRA_VIEW.FINE WHERE ASSESSED_GMT > TO_DATE('$datestamp','YYYY-MM-DD')");
$scraper->getBursarInfo($conf{"bursaroutputdir"});
}
}
$log->addLogLine(" ---------------- Script Ending ---------------- ");
}
else
{
print "Config file does not define 'logfile'\n";
}
}