From: Owen Leonard <owen@balawis.leonard.fam>
Date: Sat, 18 Sep 2010 20:47:07 +0000 (-0600)
Subject: added cleanup functionality for tc_scheduling_priority during import of new data
X-Git-Tag: release_1_0_0~24
X-Git-Url: http://git.pippins.net/%27%20%20%20%20.%20%24GLOBALS%5B%27phpgw%27%5D-%3Elink%28%27inc/jquery/images/%7Bediturl%7D?a=commitdiff_plain;h=5d71d9514473854e9cb35c6cc57fa172957ed47f;p=eq%2F.git

added cleanup functionality for tc_scheduling_priority during import of new data
---

diff --git a/bin/import_ward_data b/bin/import_ward_data
index a11906b..800f28e 100755
--- a/bin/import_ward_data
+++ b/bin/import_ward_data
@@ -559,6 +559,7 @@ sub update_tc_scheduling_priority_table
 			$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
@@ -577,6 +578,7 @@ sub update_tc_scheduling_priority_table
 			$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
@@ -595,7 +597,35 @@ sub update_tc_scheduling_priority_table
 			$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";
+		}
+	}
 }
 
 ######################################################################