}
}
-# TC_DISTRICT
-#+------------+------------------+------+-----+---------+-------+
-#| Field | Type | Null | Key | Default | Extra |
-#+------------+------------------+------+-----+---------+-------+
-#| district | int(16) unsigned | | PRI | 0 | |
-#| name | varchar(30) | YES | | NULL | |
-#| supervisor | int(16) unsigned | YES | | NULL | |
-#| valid | tinyint(1) | YES | | NULL | |
-#+------------+------------------+------+-----+---------+-------+
-sub update_tc_district_table
-{
- # Districts should be created by hand. This subroutine only
- # updates the supervisor's ID in each district.
- print "\n-> Updating tc_district table\n";
- $sth = $dbh->prepare("select * from tc_district");
- $sth->execute or die "-E- DB error: $DBI::errstr\n";
- while($sqlhashref = $sth->fetchrow_hashref) {
- $supervisor_name = $sqlhashref->{name};
- $district = $sqlhashref->{district};
- $sth2 = $dbh->prepare("select * from tc_individual where name='$supervisor_name'");
- $sth2->execute or die "-E- DB error: $DBI::errstr\n";
- $sqlhashref2 = $sth2->fetchrow_hashref;
- $supervisor_id = $sqlhashref2->{individual};
- $sth2->finish();
- $sth2 = $dbh->prepare("update tc_district set supervisor='$supervisor_id' where district='$district'");
- $sth2->execute or die "-E- DB error: $DBI::errstr\n";
- $sth2->finish();
- }
- $sth->finish();
-}
-
# TC_COMPANIONSHIP
#+----------------------+------------------+------+-----+---------+-------+
#| Field | Type | Null | Key | Default | Extra |
$sth2->execute or die "-E- DB error: $DBI::errstr\n";
}
}
+ &remove_obsolete_scheduling_priority("tc_individual");
# families
# TODO: make steward flexible with a setting in the config file
$sth2->execute or die "-E- DB error: $DBI::errstr\n";
}
}
+ &remove_obsolete_scheduling_priority("tc_family");
# companionships
# TODO: make steward flexible with a setting in the config file
$sth2->execute or die "-E- DB error: $DBI::errstr\n";
}
}
+ &remove_obsolete_scheduling_priority("tc_companionship");
+}
+
+sub remove_obsolete_scheduling_priority
+{
+ my $table_name = $_[0];
+
+ #print "\n-> Cleaning $table_name\n";
+ #$sth = $dbh->prepare("SELECT scheduling_priority FROM $table_name where scheduling_priority IS NOT NULL AND valid=0");
+ $sth = $dbh->prepare("SELECT * FROM $table_name WHERE valid=0");
+ $sth->execute or die "-E- DB error: $DBI::errstr\n";
+ while($sqlhashref = $sth->fetchrow_hashref) {
+ $scheduling_priority = $sqlhashref->{scheduling_priority};
+ $individual = $sqlhashref->{individual};
+ #$name = $sqlhashref->{name};
+ if ($scheduling_priority != "NULL") {
+ #print "$name\n";
+ # set scheduling_priority to NULL
+ #print "UPDATE $table_name SET scheduling_priority=NULL WHERE individual=$individual\n";
+ $sth2 = $dbh->prepare("UPDATE $table_name SET scheduling_priority=NULL WHERE individual=$individual");
+ $sth2->execute or die "-E- DB error: $DBI::errstr\n";
+
+ # remove entry from tc_scheduling_priority
+ #print "DELETE FROM tc_scheduling_priority WHERE scheduling_priority=$scheduling_priority\n";
+ $sth2 = $dbh->prepare("DELETE FROM tc_scheduling_priority WHERE scheduling_priority=$scheduling_priority");
+ $sth2->execute or die "-E- DB error: $DBI::errstr\n";
+ }
+ }
}
######################################################################
if($opt_s) { $dbh->disconnect(); exit; }
-# Now update the various eq DB tables
+# Now update the various DB tables
&update_tc_calling_table();
&update_tc_individual_table();
-&update_tc_district_table();
&update_tc_companionship_table();
&update_tc_family_table();
&update_tc_visit_table();