Remove stat cats owned by to be deleted org unit, stat cat entries and entry user...
authorRogan Hamby <rhamby@esilibrary.com>
Mon, 17 Oct 2016 16:25:44 +0000 (12:25 -0400)
committerRogan Hamby <rhamby@esilibrary.com>
Mon, 17 Oct 2016 16:25:44 +0000 (12:25 -0400)
remove_ou_data/02_remove_patron_extras.sql

index b993d7b..9524270 100644 (file)
@@ -63,6 +63,18 @@ WHERE home_ou IN (SELECT (actor.org_unit_descendants(id)).id from actor.org_unit
 DELETE FROM actor.usr_message WHERE usr IN
 (SELECT id FROM actor.usr WHERE home_ou IN (SELECT (actor.org_unit_descendants(id)).id from actor.org_unit where shortname = :ou_to_del));
 
+DELETE FROM actor.stat_cat_entry_usr_map WHERE target_usr IN 
+(SELECT id FROM actor.usr WHERE home_ou IN (SELECT (actor.org_unit_descendants(id)).id from actor.org_unit where shortname = :ou_to_del));
+
+DELETE FROM actor.stat_cat_entry_usr_map WHERE stat_cat IN 
+(SELECT id from actor.stat_cat WHERE owner IN (SELECT (actor.org_unit_descendants(id)).id from actor.org_unit where shortname = :ou_to_del));
+
+DELETE FROM actor.stat_cat_entry WHERE stat_cat IN 
+(SELECT id from actor.stat_cat WHERE owner IN (SELECT (actor.org_unit_descendants(id)).id from actor.org_unit where shortname = :ou_to_del));
+
+DELETE FROM actor.stat_cat WHERE id IN 
+(SELECT id from actor.stat_cat WHERE owner IN (SELECT (actor.org_unit_descendants(id)).id from actor.org_unit where shortname = :ou_to_del));
+
 COMMIT;
 
 DROP INDEX actor.tmp_addr_replaces;