W PB mamy już za sobą zmiany afiliacji i mam nadzieję, że zrobiliśmy to poprawnie.
U nas to wyglądało tak:
Ad 1. Katedra (posiadająca pracownie) zmienia nazwę i symbol
1. zmieniliśmy tylko nazwę katedry i zaktualizowaliśmy katedrę dla aktualnych pracowników przy użyciu skryptu otrzymanego z PW (dołączę poniżej)
Ad 2. Katedra przestaje istnieć i dzieli się na dwie inne o innych symbolach (pracownie również trzeba przydzielić do nowych katedr).
czyli katedra 1 --> dzieli się na katedra 1.1, katedra 1.2
1. utworzyliśmy katedrę 1.2 i przypisaliśmy do niej wybranych pracowników z katedry 1
2. zmieniliśmy nazwę katedry 1 na katedrę 1.1 i zaktualizowaliśmy katedrę dla aktualnych pracowników przy użyciu skryptu
Ad 3. Z dwóch katedr powstaje jedna o innym symbolu (pracownie oczywiście powinny zostać przydzielone do tej jednej katedry)
1. połączyliśmy katedry w jedną korzystając z opcji "Połącz zaznaczone rekordy" wybierając jedną z katedr jako główną bez łączenia w historii
2. zmieniliśmy nazwę katedry i zaktualizowaliśmy katedrę dla aktualnych pracowników przy użyciu skryptu

Jeżeli chodzi o identyfikatory jednostek to wydaje się, że jest to wartość potrzebna tylko dla systemu, by móc identyfikować konkretną jednostkę i nie jest nigdzie wyświetlana.
skrypt:
dao = component('daoHelper')
jcr = component('jcrDAO')
newAff = dao.getEntity('BUT9e13ece898b44c528c3434638ffe726d')
newUnit = 'KBEiG'
authors = component('entities').getList();
for (i in authors) {
a = authors.get(i);
a.affiliation = newAff;
a.unit = newUnit;
jcr.saveOrUpdate(a, Packages.pl.edu.pw.ii.framework.dao.GenericDAO$SaveMode.SAVE);
}
opis procedury, która zmienia afiliację dla wszystkich osób z bieżącego zapytania:
1. W jednej zakładce należy znaleźć osoby, którym chcemy zmienić afiliację.
2. W drugiej zakładce należy otworzyć stronę /admin/cli.seam?cid={wkelić cid z pierwszej zakładki}
3. Wkleić poniższy skrypt i w trzeciej linii zmienić identyfikator afiliacji docelowej