本記事はinvoiceAgent Connect for Java APIの使い方について解説した「Connect for Java APIを使ってみる」シリーズのまとめ記事になります。
invoiceAgentと他のシステムを「最小限の工数で連携したい」「自動化したい」といった際にはConnect for Java APIがお役に立てるのではないかと思います。
例えば以下のようなケースです。
- invoiceAgentへ外部システムで添付されたファイルを投入したい
- invoiceAgentにあるファイルやデータを外部システムへ連携したい
- invoiceAgentだけでは実現できない機能を実装したい/自動化したい
invoiceAgentにPDFを投入するという意味では電子帳簿保存法対応での用途であったり、invoiceAgentのデータを外部システムで活用という意味ではAI OCRでテキストにしたデータの活用等が多いのではないかと思います。
本まとめではシリーズ各記事への補足と「こんな要件には解説記事はコレを見ればOK」といった逆引き形式で各記事へのリンクをご紹介します。
「Connect for Java APIを使うか」「Web APIを直接使うか」迷っている方へ
システム間連携を行う場合、Web APIを直接利用する選択もありますが、Connect for Java APIの利用に向いているのは以下のようなケースです。
- システム間連携の要求が多く、コーティング量が多くなる可能性がある場合
- Web APIの処理に不慣れで学習コストが高くなってしまうことを避けたい場合
- 短期間で実装を行う必要がある場合
- 既にConnectPackを購入済みで他システムとの連携を行う場合
Web APIを直接利用することも検討されている場合は以下の記事もご参考にしてください。
Connect for Java APIを使うメリットは「実装工数と学習コストを小さくできる」ことです。
ソースコードの量だけで比較できるものではありませんが実装に必要なソースコードの量はWeb APIを直接利用する場合に比べてConnect for Java APIを使った方が1/3~1/5程度となることが多いかと思います。
Web APIの利用経験が無い方でもJavaのAPI関数を呼び出すだけなので、学習コストについてもConnect for Java APIの方が短期間で済ませることができます。
Connect for Java APIを使う場合、ConnectPackの購入が必要になるため、その購入コストと実装+学習コストの比較でご検討ください。
Connect for Java APIのマニュアル
Connect for Java APIの利用にあたっては必ずマニュアルをご確認ください。
invoiceAgent Connect Pack ユーザーズガイド
invoiceAgent Connect for Java API
https://cs.wingarc.com/manual/ia/doc/10.10/ja/1092424.html
記事中の情報はタイミングにより情報が古かったり、情報を分かりやすく伝えるため個別のケースにおける情報を省略して記載している場合があります。
Connect for Java APIのJavaDocはConnectPackのメディア内にあります。
詳細は以下の記事をご確認ください。
要件から記事への逆引き
invoiceAgent Connect for Java API とは
Web APIとConnect for Java APIの比較詳細や、入手方法について説明しています。
記事:
トライアル前に確認いただくと、利用期間の間にスムーズに検証を進めていただけるのではないかと思います。
まずはコレを覚えて ログインとセッション管理
実際にinvoiceAgent Connect for Java APIを使う第一歩です。
ログインとセッション管理は必ず必要な処理なのでまずはここからスタートしてください。
記事:
付属のサンプルプログラムをベースに解説を行っています。
外部システムからPDFファイルをinvoiceAgentへアーカイブしたい
単に画面からPDFファイルをアップロードしたり、Bridgeサービスで取り込むことでは事足りない自動化の要件があった場合にinvoiceAgent Connect for Java APIを使用してアーカイブすることでさまざまな要件に対応することができます。
例えば外部システムに添付されたPDFをinvoiceAgentへ保管して、プレビューURLを保存してリンクさせたいといったケースです。
記事:
添付ファイルの処理は面倒なケースが多いかと思いますが、Connect for Java APIを使うことで簡単に実装できることがお分かりいただけると思います。
また戻り値を取得してプレビューURLを取得する方法も参考にしていただけると思います。
アーカイブ時にカスタムプロパティをセットしたい
アーカイブ時に取引先、取引日付、取引金額の情報を付与して検索できるようにしておくことで電子帳簿保存法の要件へ対応したい等の、カスタムプロパティへ値をセットすることで検索要件に対応したいケースに参考にいただける記事です。
記事:
アーカイブ処理時にカスタムプロパティを同時にセットできます。解説では電子帳簿保存法ではおなじみの取引金額、取引日付、取引先をセットしています。
フォルダーパスからフォルダーIDを取得する
「/得意先名/年月/帳票種類」といったフォルダーパスから、検索等のAPI利用に必要なフォルダーIDを取得する方法です。
記事:
日付項目等で動的にフォルダー階層を作成している場合は必要なケースが多い処理ではないかと思います。
特定フォルダー配下のファイル一覧を取得したい
使用頻度の高いAPIの一つなので、一度目を通されることをおススメします。
文書IDをはじめとした文書の情報取得できるので、ファイルをダウンロードする、プレビューURLのリンクを取得するといった目的で利用するケースが多いかと思います。
記事:
とてもシンプルに利用できることがお分かりいただけると思います。
アーカイブされたPDFファイルを検索したい
invoiceAgentにアーカイブしたファイルを外部システムから利用する際には必須の検索機能についての説明です。
全文検索とファイル名検索を例に実装を行っていますが、パラメータを変えることで他の検索方法にも対応できるので汎用的に利用することができます。
記事:
さまざまな検索に対応できるために、JavaDocだけだと少し分かりにくい処理かと思います。こちらの記事を確認いただくことで使い始の参考にしていただけると思います。
AI OCRデータ(SVF検索フィールド)のCSVダウンロード
invoiceAgentのAI OCRを使用してデータ化した情報をCSVファイルに出力してダウンロードし2次活用いただくことができます。
記事:
CSVファイルの生成リクエストを送信しますが生成処理は非同期で実行されるので、完了するまで待機処理と生成ステータスのチェック処理が必要になります。
少しAPIの使い方にクセがあるので本記事を参考にしていただけると良いと思います。
Connect for Java APIを使ってみる まとめ 最後に
いかがだったでしょうか?
システム間連携の要件を考えると「アーカイブする」「検索する」「SVF検索フィールドをファイル出力」が3大要件になるかと思いますので、それらの要件を実装するサンプルを作り解説しました。
各記事の末尾には必ずサンプルソースファイルのダウンロードがあるので、まずは記事を読んだ上でダウンロードいただき、動かしていただくのがご理解いただく最短の方法かもしれません。
多くの方はこの解説を実装の足掛かりにしていただけるものと思っています。
今回の記事を書く中で気がついたこととしては、要件の起点になるクラスはほとんどが
com.wingarc.svf.pdfarchiver.client.api.resourceパッケージにあるXXXResourceというクラスに実装されています。
記事の中でも「DocumentsResource」「FoldersResource」「OutputResource」といったクラスを使用しました。
この処理を実装したいといった要件がある場合は、このあたりのクラスを探してみると該当の処理が見つかるかもしれませんね。
ぜひConnect for Java APIを利用してアイディアを形にし、さまざまな業務要件への対応や業務効率化/自動化に取り組んでみてください。
※本記事の情報は、2023年05月01日現在のものです。(invoiceAgent V10.9/ invoiceAgent Cloud Ver.10.9.0.1006)