Eksportowanie i importowanie workflowów listy w SharePoint Designer 2013
Table of Contents
Pomimo tego, że historia SharePoint Designer 2013 powoli się kończy i jest już pewne, że niedługo po 2020 aplikacja nie będzie współpracować z nowymi wersjami SharePoint, wciąż istnieje wielu klientów, którzy z niej korzystają i z jej pomocą budują swoje rozwiązania.
Niedawno znalazłem się w sytuacji, gdzie musiałem dla jednej listy przygotować nieomal 3 identyczne workflowy, różniące się detalami. Najszybszym więc sposobem byłoby wzięcie jednego workflowu i zrobienie jego dwóch kopii, pod innymi nazwami. Zacząłem googlać, ale nic nie mogłem znaleźć. Spróbowałem więc wyeksportować workflow do Visio, zmienić mu nazwę i zaimportować ponownie. Jednak to podejście sprawiło jedynie, że mój istniejący workflow zmienił nazwę, żaden nowy nie został jednak utworzony.
Jak się to robiło w SharePoint Designer 2010?
Następnie, mając wskazówki, jak proces ten wyglądał w SharePoint Designer 2010, czyli (źródło):
- Przejdź do istniejącego workflowu.
- Opublikuj go.
- Kliknij na „Eksportuj do Visio”. Zapisz plik jako NowyWorkflow.vwi lub pod inną nazwą.
- Następnie utwórz nową listę w tej samej witrynie lub nowej. Nie ma możliwości importu wyeksportowanego pliku Visio (z pkt. 3) na tę nową listę.
- Następnie, będąc na nowej liście, utwórz nowy workflow listy.
- Pamiętaj, by workflow był pusty, żadnych akcji!
- Opublikuj workflow.
- Następnie kliknij na „Exportuj do Visio” i zapisz plik pod wybraną nazwą (np. PustyWorkflow.vwi).
- Zmień rozszerzenia obu wyeksportowanych plików na „zip”.
- Następnie plik „workflow.xoml.wfconfig.xml” z archiwum utworzonego z pliku Visio, z punktu 8, skopiuj i zamień w archiwum utworzonym z pliku Visio, w punkcie 3. Chodzi o to, by definicję „nowego workflowu” wstawić do pliku istniejącego workflowu.
- Zmień rozszerzenie archiwa, utworzonego z pliku Visio, z punktu 3 z powrotem na „vwi”.
- Dzięki temu, otrzymasz importowalny plik Visio workflowu listy.
- W SharePoint Designer 2010 kliknij na „Importuj z Visio” i wybierz zmodyfikowany plik.
- Brawo! Udało Ci się zaimportować swój workflow jako nowy.
Generalnie pomyślałem, że czemuż by nie zrobić tak samo w 2013? Wyeksportowałem plik Visio, zmieniłem rozszerzenie by uzyskać archiwum ZIP, skopiowałem plik konfiguracyjny z jednego, do drugiego pliku, zapisałem, ale… okazało się, że tak stworzony plik Visio jest popsuty nie może zostać otworzony przez aplikację, a co dopiero zaimportowany w SPD (być może jest to wykonalne, aczkolwiek nie miałem dość czasu by to rozpoznać).
Jak to powinno być zrobione w SharePoint Designer 2013?
Okazało się, że rozwiązanie jest dużo prostsze, niż myślałem. Jedyne, co należy zrobić, to:
- Wyeksportować istniejący workflow do pliku Visio.
- Otworzyć plik w programie Visio.
- Skopiować jego zawartość.
- Utworzyć nowy plik Visio, wkleić skopiowaną zawartość.
- Zapisać workflow jako nowy plik, pod nową nazwą.
- Zaimportować z powrotem w aplikacji SharePoint Designer.
I już! 🙂
Marcin Jarco
Sposób dobry, ale nie tworzy zmiennych istniejących w źródłowym Workflow.
Tomasz Poszytek
Czy zna Pan lepszy sposób? Może jakoś PowerShellem?