お世話になっております。
UiPath製品版の利用において、XAMLファイルの管理についてご相談がございます。
現在、複数のプロジェクトで共通して使用したいXAMLファイルがあるのですが、その際に絶対パスを使わずに相対パスで指定し、かつコピペではなく共通ファイルとして参照・利用できる方法があればご教示いただけますでしょうか。
お世話になっております。
UiPath製品版の利用において、XAMLファイルの管理についてご相談がございます。
現在、複数のプロジェクトで共通して使用したいXAMLファイルがあるのですが、その際に絶対パスを使わずに相対パスで指定し、かつコピペではなく共通ファイルとして参照・利用できる方法があればご教示いただけますでしょうか。
Hi @111281
UiPathでは、共通のXAMLファイルを絶対パスではなく相対パスで指定するには、ソリューション内に共有フォルダを作成し、Invoke Workflow Fileアクティビティで例えば「..\Common\MyWorkflow.xaml」のように相対パスを使って参照します。これによりファイルをコピーせずに共通利用が可能です。もし参考になったら、解決済みにチェックをお願いします。
No you can’t do that. Every xaml files will get compiled and packaged as NuGet package which requires every xaml files in the project folder.
The best practice here would be create a library of reusable components and invoke that library in your both projects/bots.
数個とか言うレベルであればXAMLの共有でもいいですが
もうちょっと本格的にちゃんとした共有をしたいんであればライブラリ化することを検討することもよろしいかと。
こんにちは。
以前の職場で使っていた辞書変数を使う方法を紹介します。
下記dic_Config、dic_共通部品は辞書変数名です。インスタンス生成は不要です。
1.config\config.xlsxに共通部品管理表Common_Parts.xlsxのファイルパスを記述します。
2.ForEachRowアクティビティの中でdic_Config(row("key").ToString.Trim)=row("value")
のコードを実行した後で、dic_Config("共通部品ファイルパス").ToString
をExcelファイルを使用アクティビティで開いて、Common_Parts.xlsxを開きます。
3.Common_Parts.xlsxのシートA列に共通部品1の名、B列に共通部品1のファイルパスを記述します。
ForEachRowアクティビティの中でdic_共通部品(row("key").ToString.Trim)=row("value")
のコードを実行した後で、dic_共通部品("共通部品1").ToString
をInvoke workflow fileアクティビティで開いて共通部品1を開きます。
以上の手順で共通部品を使うプログラマーは、ファイルパスを意識しないで、共通部品名だけで共通部品を使うことができるようになります。辞書変数の特徴をうまく活かした事例だと思います。
回答が役立ったらSolutionにチェックをお願いします。