つまらない仕事はプログラムにやらせよう

ONE HUMAN UNIT

【RPA】Blue Prismの資格APD01(Professional Developer認定)受験したら、落ちた……アンチパターンをさらすよ

先日のウェビナーでジャナイホーさんからプロフェッショナルディベロッパとソリューションアーキテクトの日本語化が発表されました。

今まで本番英語じゃぁなぁーとやる気になれなかったが、明日から本気出す←

Udemyのコースでなッ!

ちなみにAPD01の受験資格はAD01合格後6か月――

月日が流れるのは早い……

【RPA】Blue Prismの資格AD01(Developer認定試験)に受かったので、対策をさらすよ

BluePrismの資格 AD01を受けてみよう はい。 少し前に、Udemyで過去問を購入して、放置してました。 https://ciprogram.jp/rpa/blueprism_lic/ &n ...

続きを見る

そうッ、機は熟したのだッ!

まずはBlue Prismの試験区分のおさらい

以下テーブルが試験区分です。

そして、今後はAPD01とASD01が日本語対応するようですな!

試験コード 試験名 対応言語 認定
AD01 Blue Prism Developer 英, スペイン, 日本, 中国, ロシア Developer
APD01 Blue Prism Professional Developer 英、日本、中国 Professional Developer
ASD01 Designing Blue Prism Process Solutions 英、日本、中国 Solution Designer
ARA01 Blue Prism ROM Architect ROM Architect
ATA01 Designing a Blue Prism (Version 5.0) Environment Technical Architect
ATA02 Designing a Blue Prism (Version 6.0) Environment Technical Architect
AIE01 Installing and Configuring a Blue Prism (Version 5.0) Environment Installation Engineer

体系的にドキュメントをあさり勉強しつつも、

試験問題を解いて重要な部分を拾っていこう。

通常試験に出題される場所は重要な場所ですし。

そう、G検定などと違ってッ!

2020#2回G検定受験! 受験後のタイムラインは阿鼻叫喚の嵐。完全に落ちたので対策アンチパターンをさらすよ

はじめに G検定。 ディープラーニング系の資格。 どちらかといえば、利用者側の試験。 RPAをやっていると次はAIやらDLやら導入しろといつ言われてもおかしくない。 そこに来て、2020#2 G検定で ...

続きを見る

対象ドキュメントは神谷町ブログにまとめられていました。

さすがエバンジェリストや……

https://www.ebocean.work/entry/2020/06/12/085747

 

Blue PrismのAPD01(Professional Developer)の勉強ノート

APD01はとにかく範囲が広い。

AD01の範囲に加えて、サーフィスオートメーションやらなんやら求められるようです。

うぅーん。

サーフィスオートメーションは最後の手段と頼らずにRPAを作ってきたが……

ここらで本腰をいれねば……

とりあえず、Udemy+ドキュメントで勉強した内容をさらす。

開発ベストプラクティスのおさらい

ベストプラクティスは改めておさえておくべきですな。

たとえば――

◆オブジェクトレイヤー

1画面、1オブジェクトの粒度――いわゆる複数オブジェクト構成――で作成する。

そうすることで、より多くの開発者が同時に作業できる。

つまり、より効率的でスケーラブル!!

小さく作ることで、潜在的なエラーを防ぐことができて、変更時にプロセスレイヤーへの影響を最小限に抑えることができる。

また、オブジェクトが巨大になると、呼び出し時に処理が重くなる原因。

次に重要なことがオブジェクト内に業務上の判断を入れない

そうすることで、汎用性・再利用性が高いオブジェクトになります。

例外ハンドリングとワークキューの操作

例外についての勉強ノート

例外を制する者が安定したRPAを制する。

ということで、例外とワークキューで重要な部分。

まずは例外についてです。

例外のライフサイクルは例外ー復旧ステージ間です。

例外の収集は復旧ステージ前にやっておきましょう。

そして、例外はブロックで括ることでカプセル化できます。

例外が発生しそうな場所をブロックで括ってやることで

そこで発生した例外をキャッチしてやれる……いわば try catch ですな。

ブロックで括ったところで発生した例外をキャッチしたあとに固有の処理が入れることができます。

※再開前にエラーで怒られるような処理を入れないように注意

また再開ステージは一つあればOKで、複数設けるのは冗長です。

再試行回数上限を超えた時に例外を投げるケースがありますが、

例外ステージのプロパティが空の場合には例外詳細もまた空になります。

例外をthrowする場合にはちゃんと入力してあげましょう。

因みに再開ステージを経ずに(回復モード中)で終了ステージに達すると、

内部エラー(Internal: stack imbalance has reached)となります。

例外はシステムタブから管理できます。

ワークキューの勉強ノート

ワークキューと言えば、Blue Prismの重要な機能の一つ。

これも止まらないRPAを作るために重要。

例外が起きたらワークキューを例外マークして次のキューへと仕事を継続する……すばらしい

また、ワークキューを使うことで稼働時間などを調べやすいんですよね。

キューはシステムマネージャーをで再試行回数が構成できます。

▼最大試行回数で定義できます。また暗号化スキームも変更できます

より高度なワークキューの設定と利用

ワークキューで安定性が上がることは前述しました。

より使いこなすために、キューの動きをさらに詳しく学べます。

ワークキューはFIFO(先入先出)方式ですが、優先順位の変更ができます。

▼内部オブジェクト「ワークキュー」の優先度を設定で変更できます

ワークキューはステータスを持ちますが、複数回変更できます。

ワークキューはフィルターすることで、処理対象を絞ることができます。

条件追加 +条件
除外 -条件
複合条件 条件1 ; 条件2

※フィルタには*や?のワイルドカードであいまい検索もできます。

では*が含まれる文字列はどうするかというと**とエスケープしてやります。

Webサービスガイド

この辺りは普段使わない機能で、勉強になりました。

  • 公開されたHTTP APIはWEB APISで接続
  • Webサービス公開時、プロセス名、オブジェクト名は英数字のみ許容
  • http://[マシン名]:[ポート番号]/ws/
  • /regwebsercive でWebサービス自動切換え

認証マネージャとログイン エージェント機能

認証情報は、例えばWebシステムへのログイン情報を保管しておいたり、

LoginAgentのログイン情報をセキュアな環境で保存するために用います。

▼認証情報はシステム>セキュリティ>認証情報にあります

ログインするシステムによっては、ID、PW以外にも何かしら認証情報を要求される場合があります。

そういうケースではプロパティ値に値を保存し、内部オブジェクト「認証」のアクション「プロパティを取得」から取得します。

▼内部オブジェクト「認証」のアクション「プロパティを取得」

ログインエージェント用の資格情報は「Windows Login: PC名」で保存しておきます。

アクション「Login」の中で、PC名の部分が動的に置き換わります。

Java自動化ガイド

Javaアプリケーションを操作するために、Java Access Bridgeを有効化してやります。

【場所】

コントロール パネル\コンピューターの簡単操作\コンピューターの簡単操作センター\コンピューターを画面なしで使用します

▼Java Access Bridgeを有効にするにチェック

アプリケーションウィザードのオプション

descendtreee:表示中のJava要素リストだけを直接取得。このオプションを指定しないで、通常のツリー降下では時間がかかりすぎたり、JREがクラッシュする可能性がある。

ignorenotshowing:表示中要素以外を無視することで、パフォーマンスが大幅に向上する。

PDF文書の読み込み操作

PDFを読み込むためにはWindowsアプリケーションとしてAdobe Acrobat Readerをアプリケーションモデラ―で定義します。

PDFに対するアプローチはいくつかありますが、AI-OCRを使わない場合は以下が代表ていきな手法のはず。

  • PDF文書をクリップボードにコピーして正規表現での操作
  • ReadステージでRead Text with OCRする
  • Adobe Acrobat APIを叩く

ここで分かるように、BPで操作可能なPDFはちゃんと作られたものじゃないといけないということがわかります。

ただスキャンしただけじゃクリップボードにコピーすらままならん。

Tesseract と組み合わせることで読み精度は向上するようですが、

ある程度の成果を見込むためには300dpi以上が必要とのこと。

読み込んだ値を変数に設定するときはテキスト型で受け取ります。

OCRで読み込む場合、想定する型で読み取れるかは神のみぞ知るところ。

OCR精度にベットしたギャンブルで型変換エラーを起こすのはばかげた話。

 

結果は

おちた☆

ちなみに↓らしいです。

2週間後リベンジできないやん………

すべての試験では、試験が失敗してから少なくとも30日間は、再試験を受けることができません。

参考:https://home.pearsonvue.com/blueprism

  • B!