- 概要
- 暗号化
- データベース
- Java
- Python
- Web API
XML ファイルを検出し分析する
以下の例では、[XML を逆シリアル化] や [XPath を実行] などのアクティビティを使用して XML ファイルを逆シリアル化および分析する方法について説明します。これらのアクティビティは、UiPath.WebAPI.Activities パッケージに含まれています。
サンプルと同等のオートメーション プロセスは以下のように構築できます。
- Studio を開いて、新しいプロセスを作成します。
-
デザイナー パネルに [シーケンス] コンテナーをドラッグします。
-
次の変数を作成します。
変数名
変数の型
既定値
SelectedProjectPath
文字列
WorkflowXMLString
文字列
WorkflowXML
XDocument
ScreenshotAttributes
オブジェクト
-
-
[シーケンス] 内に [フォルダーを選択] アクティビティを追加します。
- [プロパティ] パネルの [選択されたフォルダー] フィールドに変数
SelectedProjectPath
を追加します。
- [プロパティ] パネルの [選択されたフォルダー] フィールドに変数
-
[フォルダーを選択] アクティビティの後に [繰り返し (コレクションの各要素)] アクティビティを追加します。
- [繰り返し] フィールドに値
WorkflowFile
を追加します。 - 式
Directory.GetFiles(SelectedProjectPath, "*.xaml", SearchOption.AllDirectories)
を Value (値) フィールドに追加します。
- [繰り返し] フィールドに値
-
[繰り返し] アクティビティの [本文] コンテナー内に [テキスト ファイルを読み込み] アクティビティを追加します。
- FileName フィールドに値
WorkflowFile
を追加します。 - [プロパティ] パネルの [コンテンツ] フィールドに変数
WorkflowXMLString
を追加します。
- FileName フィールドに値
-
[テキスト ファイルを読み込み] アクティビティの後に [XML を逆シリアル化] アクティビティを追加します。
- [XML 文字列] フィールドに変数
WorkflowXMLString
を追加します。 - [プロパティ] パネルの [XML ドキュメント] フィールドに値
WorkflowXML
を追加します。
- [XML 文字列] フィールドに変数
-
[XML を逆シリアル化] アクティビティの後に [XPath を実行] アクティビティを追加します。
- [既存の XML] フィールドに値
WorkflowXML
を追加します。 - 式
"//@InformativeScreenshot"
を [XPath 式] フィールドに追加します。 - [プロパティ] パネルの [結果] フィールドに変数
ScreenshotAttributes
を追加します。
- [既存の XML] フィールドに値
-
[XPath を実行] アクティビティの後に [繰り返し (コレクションの各要素)] アクティビティを追加します。
- [繰り返し] フィールドに値
Attribute
を追加します。 - 式
CType(ScreenshotAttributes, IEnumerable).Cast(Of XAttribute)
を Value (値) フィールドに追加します。 -
アクティビティの [本体] コンテナーを選択し、次の変数を作成します。
変数名
変数の型
既定値
ScreenshotFileExists
Boolean
- [繰り返し] フィールドに値
-
[繰り返し (コレクションの各要素)]アクティビティの[本体] コンテナー内に [メッセージをログ] アクティビティを追加します。
- 式
"Looking for: " + SelectedProjectPath + "\.screenshots\" + Attribute.Value + ".png"
を Message フィールドに追加します。
- 式
-
[メッセージをログ] アクティビティの後に [パスの存在を確認] アクティビティを追加します。
- [パスの種類] ドロップダウン リストから [ファイル] を選択します。
- 式
SelectedProjectPath + "\.screenshots\" + Attribute.Value + ".png"
を [XPath 式] フィールドに追加します。
-
[パスの存在を確認] アクティビティの後に [条件分岐 (if)] アクティビティを追加します。
- [条件 (Condition)] フィールドに式
Not ScreenshotFileExists
を追加します。
- [条件 (Condition)] フィールドに式
-
[条件分岐 (if)] アクティビティの [Then] フィールドに [メッセージをログ] アクティビティを追加します。
- [レベル] ドロップダウン リストから [Warn] オプションを選択します。
-
式
String.Format("Could not find the screenshot file {0}.png referenced by file {1}", Attribute.Value, WorkflowFile)
を Message フィールドに追加します。
- プロセスを実行します。プロンプトが表示されたら、MissingScreenshotSampleProject-ForTestPurposes フォルダーを選択します。フォルダー内の XML ワークフロー ファイルが読み取られ、逆シリアル化されます。フォルダー内で見つかったスクリーンショットと見つからないスクリーンショットを特定し、記録するために、XAML 内で参照されているスクリーンショットに関する情報が使用されます。
こちらからサンプルをダウンロードできます。