6 $mydir = `cd \$(dirname $0) 2>/dev/null; pwd`; chomp($mydir);
7 unshift @INC,("$mydir/../setup");
8 if( -f "$mydir/../setup/db_config.local") { require "db_config.local"; }
9 else { require "db_config"; }
11 %hometeaching_data = ();
12 %membership_data = ();
15 ######################################################################
17 ######################################################################
20 my ($filename, $hashref) = @_;
22 open(FILE,$filename) || die "-E- Could not open $filename for reading\n";
24 my $found_header = 0; my $index = 0;
28 @data = split /\",/, $line;
29 if(!$found_header) { @header = @data; $found_header = 1; }
31 foreach $i (0..$#data-1) {
33 $header[$i] =~ s/\"//g;
34 $hashref->{$index}{$header[$i]} = $data[$i];
35 #print "$index: $i: $header[$i]: $data[$i]\n";
44 ######################################################################
49 foreach $key (sort {$a <=> $b} keys %$hashref) {
50 print "Index: $key\n";
51 foreach $field (keys %{$hashref->{$key}}) {
52 print "$field: $hashref->{$key}{$field}\n";
58 ######################################################################
60 ######################################################################
62 ###################################################
63 # Open a connection to the database
64 $dbh=DBI->connect("dbi:mysql:dbname=$dbname:host=$dbhost:port=$dbport",$dbuser,$dbpass,{
66 PrintError=>0}) or print "Connect Failure:".$DBI::errstr."\n" and exit 2;
68 ###################################################
69 # Process command line options
70 if(defined $opt_n) { $datadir = $opt_n; }
71 else { $datadir = shift(@ARGV); }
72 print "-> Processing all ward data files in $datadir\n";
74 ###################################################
75 # Parse Ward Data Files
76 &csv_to_hash("$datadir/Membership.csv",\%membership_data);
77 &csv_to_hash("$datadir/HomeTeaching.csv",\%hometeaching_data);
80 print "-> Membership Data Dump\n\n";
81 &print_hash(\%membership_data);
82 print "-> HomeTeaching Data Dump\n\n";
83 &print_hash(\%hometeaching_data);
86 if($opt_s) { $dbh->disconnect(); exit; }
88 ###################################################
89 # Disconnect from the database
92 ######################################################################