【UiPath×文書管理①】invoiceAgentコネクター（SPA連携コネクター）で文書アーカイブを自動化してみた

## 特に読んで頂きたい方

🌸 **UiPath**を触ったことがある方
🌸 **AIOCR**に興味がある方
🌸 **ペーパーレス化**プロジェクトに携わる担当者の方
🌸 **電子帳簿保存法・インボイス制度**に注目している経理/総務部門の方

## はじめに

今回はRPAツールである[**UiPath**](https://www.uipath.com/ja)を利用し、ウイングアーク１ｓｔ社が提供する電子帳票プラットフォーム [**invoiceAgent**](https://www.wingarc.com/product/ia/) の操作を自動化していきたいと思います。

**自動化には UiPath Marketplaceで提供されている「[invoiceAgent連携コネクター](https://marketplace.uipath.com/ja/listings/6bs5w1o88utj85gxt0qaj)」を使用します。**


　
前編である今回は、

- **invoiceAgentコネクターのダウンロード**
- **UiPath Stuioでコネクターを設定**
- **コネクターからinvoiceAgentにサンプル帳票のアーカイブ**

ここまで実際に行っていきます。
以下イメージの青枠のうち、今回は 「文書自動取込」
次回後編では「OCR処理」に加えてOCRデータのダウンロードを行っていきます。
![連携全体像詳細.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/6e80ed8e-d1c6-2e09-8901-465a26e61201.png)






## invoiceAgentについて

https://www.wingarc.com/product/ia/

<details><summary>【詳細】invoiceAgent は文書の保管や請求書配信等を含む、電子帳票プラットフォームです。

</summary><div>

:::note info
invoiceAgentは、**企業間取引の帳票の送信と受信を電子化し、保管/データ化まで一元管理できるソリューション**です。各企業の帳票のフォーマットをそのままに企業間取引における業務負担を減らし、よりスムーズに、快適な取引をサポートします。
:::

詳しくは公式ホームページをご参照いただきたいのですが、

✅ **電子帳簿保存法に対応した文書管理**
✅ **5つのAIOCRによる帳票データ化**
✅ **請求書の送受信による企業間取引**
✅ **契約の電子化**

これらを可能にする製品群となります。（以下製品ラインナップ）
![製品ラインナップ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/2b66112b-b50a-ea79-0599-f7edf4587f1f.png)

:::note warn
invoiceAgentは有料のソフトウェア（クラウド版 / オンプレミス版あり）です。
本記事の内容をお試し希望される場合は、[トライアル](https://pg.wingarc.com/mkto-form-1728A1.html?_fsi=b75PMLgd
)にお申込みください。
:::

</div></details>



今回の内容は、「**invoiceAgent 文書管理**」× UiPathの連携となります。


## 必要なもの

(1) UiPath Studio
(2) invoiceAgent 文書管理（クラウド版 / オンプレミス版どちらも可）
上記２つを利用できる環境。
　

本記事では、以下バージョンを利用しています。
|UiPath Studio|invoiceAgent文書管理|
|---|---|
|Studio 2022.10.3 Community License|オンプレミス版 ver.10.8.0.0|


　
## アーカイブするサンプル帳票

今回、UiPathによる操作でinvoiceAgentにアーカイブする帳票は、以下の請求書です。
デモ用に用意したサンプルとなります。

<div align="center">
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/5b48b289-1918-4912-b3a2-edbac1b4f69d.png">
</div>
　

**では、ここから準備を始めていきましょう！🔥**

# 0. 事前準備

invoiceAgent側で、帳票のアーカイブ先フォルダを作成します。
はじめに、invoiceAgent 文書管理にログインします。
**トライアル環境申込時のドメイン（local）/ ID / パスワードを入力してください。**
![iAにログインしていきます.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/90996cde-3436-296d-0853-612e98443e2e.png)

ログインすると、以下の画面に遷移します。

[左上のフォルダ作成ボタンから、ファイルアーカイブ用のフォルダを作成します。](https://cs.wingarc.com/manual/ia/doc/cloud/manual/ja/1572349.html)
今回は「99.システム連携」直下に「**01.UiPath連携**」フォルダを用意しました。
![iA側でフォルダ作成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/ccb5e64d-2ed2-2c1d-3043-d11fae891fbd.png)
[invoiceAgent側の準備](https://cs.wingarc.com/ja/howto/ia-d/17026?brand=ia_c&service=5047&scenario=5048)はこれで完了です。


##  1. invoiceAgent（SPA）コネクターのダウンロード

まずは、invoiceAgentをUiPathで簡単に操作するために、
連携コネクターをダウンロードしましょう。[**UiPath Marketplace**](https://marketplace.uipath.com/listings/6bs5w1o88utj85gxt0qaj)にて公開されています。

※サンプルプログラムのため動作保証はしていません。
![SPA連携コネクター@UiPathMarketPalce.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/417d1959-f921-97d2-7e7e-f0e9e646522c.png)
※[こちら](https://marketplace.uipath.com/listings/6bs5w1o88utj85gxt0qaj
)からダウンロードできます。

:::note info
2022年6月より、文書活用ソリューション「SPA」はinvoiceAgentに[ブランド統合](
https://www.wingarc.com/public/202206/news1577.html)されました。
「SPA」はリブランディング前の名称となります。
:::


ページ右上の**Downloadボタン**をクリックしましょう。
ダウンロードした**UiPath_SPA.zip** を解凍し、以下のファイルを確認します。
![連携コネクター中身 true.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/64e3413b-6fb1-bc36-4eaa-d43879c661eb.png)



## 2. プロジェクトの作成

UiPathプロジェクトの作成を行います。
UiPath Studioで「新規プロジェクト」の「プロセス」をクリックし、今回は以下のように設定します。
|プロジェクト名|対応OS|言語|
|---|---|---|
|invoiceAgent文書管理_連携デモ|Windows|VB|

必要項目を入力したら、作成ボタンをクリックします。
![新しい空のプロセス mask.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/8ec9df50-b442-eeed-a734-c77a55d096be.png)


無事にプロジェクトが作成されました。
![プロジェクト作成完了.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/5ab87262-fff3-5a3d-3e0c-06d57ef74bf4.png)


## 3. invoiceAgentコネクターの追加（重要①）

次に、invoiceAgent連携コネクターを使用するためのパッケージを導入していきます。
ここは特に重要な設定なので、一つひとつ丁寧に進めていきましょう🌸

まず、画面上部の「パッケージを管理」を選択します。
![「パッケージを管理」選択.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/1569710c-5244-8da6-8aa3-a679422442ec.png)

① 左側ウィンドウから「すべてのパッケージ」を選択
② 検索窓に「webAPI」を入力　
③ 結果表示された「**UiPath.WebAPI.Activities**」を選択し、最新バージョンをインストールしてください。（今回はVer.1.13.2）
![UiPath.WebAPI.Activitiesをインストール.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/2f5991e7-5be0-e663-b636-7e7ba2f74218.png)


インストールできたら、パッケージを保存しましょう。
![Activitiesインストール後の保存.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/df7f48c9-a0ac-0245-979f-3010cba730d5.png)


プロジェクト画面の左側ツリーに、
「**UiPath.WebAPI.Activities = バージョン名**」が表示されていれば完了です。
![Activitiesインストールされているか確認.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/c2159284-1f47-bdc8-57b4-3f4e53de8113.png)


次に、プロジェクトにコネクターのxamlファイルを追加していきます。
先ほどUiPath MarketPlaceからダウンロードした「UiPath_SPA」フォルダを開きます。
![xamlファイルをDrugDropします.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/4e89916e-5e4d-a2a0-e652-77403a80c66a.png)


中身のxamlファイルを、ドラッグ&ドロップでUiPathのプロジェクトツリーに追加します。
![ドラッグアンドドロップ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/78ba7435-f09c-35bd-bbd2-089642f375d3.png)


以下のようにxamlファイルが追加されていれば、コネクターの追加は完了です。
![コネクター追加完了.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/21e1773c-b954-ff5e-bf5f-b8763267b8c9.png)



## 4. 必要なアクティビティの指定(重要②)


「Sample_FileArchive.xaml」を開きます。
**フロー上部に記載の解説**に従い、必要なアクティビティの項目を入力していきます。

■環境に合わせて指定が必要なアクティビティ
![必要なアクティビティ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/bf22a8e7-bb84-ba93-f029-7a55ae9bf6c4.png)
※注１: 全てダブルクォーテーション("")を忘れず付けてください。
※注２: アーカイブする文書は**フルパス**を指定します。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/46f674b7-3174-23b1-9b64-30a044f18e77.png" width="330" height="500">　<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/32be085f-e7cd-0270-cbf3-d3bcd5c1c2b2.png" width="322" height="520">　
　ここまでで、コネクターのワークフロー実行準備が完了しました。



## 5. ワークフローを実行

画面左上の実行ボタンをクリックして、ファイルアーカイブを実行してみましょう。
![ワークフローの実行！.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/55d6a651-e9d1-e8e9-bf0a-45824fe1fe2e.png)

エラーが起きなければ、以下のようなメッセージボックスが表示されます。
![文書アーカイブ完了-mini.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/36172ce0-e7ed-1f9c-e9b2-1dd950977164.png)
![文書アーカイブ完了.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/3b1c1e06-cbc8-1ec8-dc31-67030a550c88.png)
**ここまでで、invoiceAgent 文書管理への文書のアーカイブが完了しました！🔥**


## 6. アーカイブ文書の確認

文書がきちんとアーカイブされているか、invoiceAgent側で確認します。

以下のように、**UiPath Studio側で指定したファイル名で見積書がアーカイブされました。**
![「アーカイブ済み請求書.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2842935/1ba0d6e6-056b-d8d8-b3ec-b814fcf031ad.png)



## よくあるエラー

コネクターを実行すると、invoiceAgentからログアウトする処理（**SPA_Logout.xaml**）の際に、
以下のエラーが発生することがあります。
```
Expression Activity 型 'VisualBasicValue`1' は、実行するにはコンパイルする必要があります。ワークフローがコンパイルされていることを確認してください。
```

　
**原因と解決策**
異なる文字コードによるダブルクォーテーション(”)がプログラムに混在している可能性があります。
コネクターのSPA_Logout.xaml 内の「SPAログアウト」→「ヘッダー」プロパティ→「Accept」ヘッダーの値(value)に含まれる文字列が " であることを確認してください。
もしそれ以外の “ 等を使っている場合は、 " に置き換えてみてください。

参考：[https://forum.uipath.com/t/topic/481946](https://forum.uipath.com/t/topic/481946)

※現在、エラー発生防止のためコネクター改修中です。更新をお待ちください。

## 最後に

今回はRPAツールのUiPathと連携コネクターを用いて、invoiceAgent 文書管理にファイルを自動アーカイブしてみました。もちろん一連の操作を手動で行うことも可能ですが、UiPath Platformの連携により、電子帳簿保存法改正への対応をはじめ、帳票登録や転記業務の自動化・効率化に繋がるかと思います。この内容が読んでいただいた方のお役に立てれば幸いです。

　
**次回後編では、以下の内容を書きたいと思います🌸**
- UiPathから文書検索してそのまま自動ダウンロード
- 文書のOCR処理結果のCSVファイル自動ダウンロード

## 次回
https://qiita.com/mk_ts/items/7a2f8cbf654e6f40a3d5