SharePointのワークフローを別サイトへ移行する

SharePoint

SharePoint Designerで作成したワークフローを別サイトへ移行する手順について。

概要

SharePoint Designer(以降デザイナ)で作成されたワークフローは通常、別サイトへ移行等ができません。つまり、開発環境で作成したワークフローはそのままでは本番環境へ実装できないということになります。

しかし、ちょっとゴニョゴニョいじくってやると移行することができるようになりますので、その方法について紹介します。

 

環境

今回の手順紹介に使用した環境は以下の通りです。

  • Windows10
  • SharePoint server 2013
  • SharePoint Designer 2013

今回2013で説明していますが、恐らくは2010やOnlineでも大まかな手順は変わらないかと思います。

 

詳細手順

エクスポートする

まずはデザイナで対象のワークフローを開き、「ワークフローの設定」タブから「Visioへエクスポート」を選択します。

すると、ワークフロー名.vwi というファイルが作成されます。こいつに作成したワークフローの情報が詰まっています。

拡張子変更と展開

前手順で作成されたファイルの拡張子を .zip へ変更して展開します。

workflow.xoml.wfconfig.xmlというファイルは削除します。

テキストエディタで編集

ワークフロー内でリスト参照をしている箇所がある場合、それらリストのIDを書換えてやる必要があります。リスト参照がない場合は編集部分は不要ですので、再圧縮の手順に進んでください。

workflow.xoml 内に記載されているリストIDを移行先サイトのリストIDに置換しましょう。リストのIDはデザイナ上から確認できます。

この時、xomlファイルはUTF-8で開き、UTF-8で保存してください。ANSIなどでは正しくインポートすることができません。

本番環境で作業する場合、メモ帳で編集することになると思います。その時はメモ帳を開き、ファイルメニューの「開く」からファイルを選択し、文字コードにUTF-8を指定して開きましょう。

再度圧縮して拡張子を戻す

ファイルの編集が終わったら(もしくは編集しなかった場合)、3つのファイルを選択して再度ZIP形式で圧縮します。

ファイル名を ワークフロー名.vwi にリネームします。

インポート

最後に移行先サイトにデザイナで接続し、「ワークフローの設定」タブの「Visioからインポート」を選択し、先ほどのファイルをインポートしてやれば完了です。

紐づけするリストなどはこのタイミングで指定できます。

 

制限事項

ワークフローの持つ情報を全て移行できそうな感じもありますが、実は一部の情報は移行できません。

全ては確認できていませんが、ワークフローの開始オプションについては移行できず、デフォルトの状態となっていました。ファイルなどが作成された際に動くワークフローについては忘れずに設定を変更するようにしましょう。

 

コメント

タイトルとURLをコピーしました