Alteryxワークフローを配布する時には以前にも紹介いたしましたがパッケージワークフロー(yxzp)が非常に便利です。
しかし特殊な作りのワークフローの場合パッケージワークフローで配布を行っても上手く動作しない場合が存在します。
注意点1 インターフェース アクションツール使用時の場合
注意点1はインターフェースを用い、特定の文字列を置換するアクションを行い、その文字列にパスが含まれる場合です。かなり限定できですがExcelなどファイルのみを指定し特定のSheetを複数読み込むワークフローなどを作成してる時などに該当する場合があります。
このワークフローをパッケージ化すると下記の様に変更されます。
この様にFile-valueの項目のパスはワークフローの相対パスに変わりますが、置換の指定部分は変更されません。
よってパッケージワークフローではインターフェースによる入力ファイルの変更が無効になっていまいます。
対処方法
この様な場合の対処方法はアクションツールをフォーミュラで値を更新に変更する方法が良いでしょう。
フォーミュラで値を更新にし、入力されたファイルパス+Sheet名になるようにフォーミュラ式を設定します。
この様に変更する事でパッケージワークフローとして公開しても問題なく動くようになります。
注意点2 入出力にワークフロー保存フォルダ以外のパス情報を含む場合
注意点2はワークフローの入出力で任意のフォルダを指定してる場合、相対パスに変更されます。
ワークフローの保存場所は c:\Blog です。
この時、ワークフローの保存フォルダより上位のフォルダを指定してる場合、以下の様に変更されます。
上位フォルダの場合、下位フォルダに変更されますが_externalsというフォルダ配下に変更されます。
パッケージワークフローを解凍したフォルダは以下になります。
この時、ワークフロー作成時に想定していなかったフォルダ_externalsを削除するとワークフローは動かなくなります。
この様にパッケージワークフローは配布を行う場合は非常に便利ですが、フォルダパスが書き換わることを念頭に置いてワークフローを作成していない場合に動作不良の原因になってしまいます。配布を前提にワークフローを作成する時には注意しましょう。