# Link Switcher

> Zamienia linki jednego typu na inny albo odwraca ich kierunek, w całym module lub w zaznaczeniu, bez ręcznego usuwania i tworzenia linków.

Source: https://widgets.doorsnext.com/pl/widgets/link-switcher/

- Dyscyplina: Linki i identyfikowalność
- Działa w: Moduł IBM DOORS Next
- Obsługiwane produkty: RM (IBM Engineering Requirements Management DOORS Next (Requirements Management))
- Zmienia dane
- Keywords: zmiana typu linku, konwersja linków, odwrócenie kierunku linku, kopiowanie linków jako inny typ, zmiana modelu identyfikowalności, zbiorcza zmiana linków, traceability, Link To na Satisfies, change link type, IBM DOORS Next
- Wersja: 1.21 (Data wydania 2026-10-27)
- Vendor: SmarterProcess (https://doorsnext.com, info@smarterprocess.pl)
- Przebieg pracy: 1. From: zaznacz typy linków do zmiany → 2. To: wybierz nowy typ i kierunek → 3. Find links: pokazuje, czym stanie się każdy link (W razie potrzeby: Albo Selection: artefakty zaznaczone w DOORS Next) → 4. Change: po potwierdzeniu (W razie potrzeby: Błędy: Retry) → 5. Wynik z Log w Excelu

## Czym jest i dlaczego powstał
Modele identyfikowalności (traceability) się zmieniają. Zespół zaczyna od ogólnych linków „Link To”, a później ustala, że powinny to być „Satisfies”; import tworzy linki „Validated By” skierowane w złą stronę; nowy model wymaga drugiego typu linku obok istniejącego. W standardowym interfejsie każdy taki link trzeba usunąć i utworzyć od nowa, jeden po drugim, a po drodze łatwo jakiś link zgubić.

Link Switcher zmienia istniejące linki zbiorczo i bezpiecznie: wybierasz, które linki zmienić, na jaki typ i w jakim kierunku, widzisz każdy link, zanim cokolwiek się zmieni, i wykonujesz zmianę w jednym kontrolowanym przebiegu. Może też skopiować linki jako inny typ i zostawić oryginały.

## Jakie problemy rozwiązuje
- Setki linków niewłaściwego typu po imporcie, migracji lub zmianie modelu identyfikowalności.
- Linki skierowane w złą stronę, które trzeba odwrócić.
- Ręczne usuwanie i ponowne tworzenie linków, które jest powolne i grozi utratą linków.
- Nowy typ linku, który przez okres przejściowy musi istnieć obok starego.
- Brak zapisu, które linki zostały zmienione.

## Korzyści
- **Zmiana zbiorcza:** dowolna liczba typów linków staje się jednym nowym typem, w tym samym lub odwróconym kierunku.
- **Bezpieczna kolejność:** najpierw powstaje nowy link, a oryginał jest usuwany dopiero potem; jeśli utworzenie się nie uda, oryginał zostaje.
- **Tryb kopiowania:** „Keep the original links” dodaje kopię z nowym typem i nie rusza oryginałów.
- **Podgląd:** każdy link jest pokazany przy swoim artefakcie razem z tym, czym się stanie, a liczby widać przed uruchomieniem.
- **Domyślnie bezpiecznie:** zmieniane są tylko linki w kontekście modułu, chyba że dołączysz linki na artefaktach bazowych; ta opcja wyłącza się sama po każdym przebiegu.
- **Długie przebiegi pod kontrolą:** postęp, Stop i kontynuacja na bardzo dużych modułach, lista linków, których nie udało się zmienić, z przyciskiem Retry oraz raport zmian w Excelu.

## Jak używać
1. W sekcji **Link types** kliknąć **Change**. W części **From** zaznaczyć typy linków do zmiany i wybrać ich **Direction**: **All directions**, **Outgoing** lub **Incoming**. Lista pochodzi z typów linków zdefiniowanych w projekcie.
2. W części **To** wybrać **New link type** i **Direction of the new link**: **Same as original** lub **Reversed**.
3. Opcjonalnie zaznaczyć **Keep the original links** (kopiowanie zamiast zmiany) i **Change links in the module and on base artifacts**, a potem kliknąć **Done**.
4. W sekcji **Change** wybrać **Whole module** lub **Selection** (artefakty zaznaczone w DOORS Next) i kliknąć **Find links**. Nic się jeszcze nie zmienia: rozwinięcie wiersza w **Links** pokazuje każdy link i to, czym się stanie.
5. Kliknąć **Change** (lub **Copy**), przeczytać potwierdzenie i potwierdzić przyciskiem **Change N links** (lub **Copy N links**).
6. Wynik pokazuje zmienione linki, nowe linki, które już istniały, linki na artefaktach bazowych i błędy, z **Retry**. **Log** zapisuje raport zmian do Excela.

## Warto wiedzieć
- Link dwukierunkowy pozostaje dwukierunkowy: zmienia się tylko jego typ, a wybór Reversed go nie dotyczy.
- Jeśli wybrane linki mają już nowy typ i kierunek, nie ma czego zmieniać i widget o tym informuje.
- Link między dwoma artefaktami tego samego modułu jest zmieniany raz, a nie dwa razy.
- Linki na artefaktach bazowych zmieniają się w każdym module, który używa tych artefaktów; korzystaj z tej opcji świadomie.
- Zawsze pracuj w change secie: jego odrzucenie to jedyny sposób na przywrócenie oryginalnych linków.
- Dla całego modułu **Change** działa także bez wcześniejszego wyszukiwania, w jednym przebiegu po tym samym potwierdzeniu. W bardzo dużych modułach zatrzymany przebieg można kontynuować przyciskiem **Continue from …**, także po przeładowaniu strony.
- Poza modułem widżet działa na artefaktach zaznaczonych w DOORS Next.
- Jeśli nie da się odczytać artefaktu bazowego danego artefaktu, jego linki w module i tak są zmieniane, a ostrzeżenie wskazuje ten artefakt.
