2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

BizRobo!開発時に気づいた「コマンド活用」の重要性

2
Posted at

はじめに

2024年6月から株式会社エクスブレーンでRPAエンジニアとして働いている、fujiwaraです。

これまでBizRobo!で開発を行う際、私は「BizRobo!内で用意されているステップだけで処理を実現する」ことにこだわってしまっていました。

しかし今回の開発を通して、コマンドを活用することで、よりシンプルに実装できるケースがあることに気づきました。

本記事では、その気づきを具体例とともに紹介します。


気づきポイント

既存のステップだけにこだわらない

BizRobo!には以下のような便利なステップが用意されています。

  • ファイルコピー / 削除
  • ファイルループ
  • 変数操作

これらを組み合わせることで多くの処理は実現できますが、場合によっては処理が冗長になってしまうこともあります。

今回の開発を通して、
👉 コマンド(Command)を併用することで、処理をシンプルにできる場合がある
という点を学びました。


具体例:当日ファイルのチェック処理

自動化の要件

今回自動化の対象とした処理は、以下の通りです。

  1. 指定フォルダに当日日付のファイルが格納される
  2. ファイル数を確認する
    • 0個 → エラー通知
    • 2個以上 → エラー通知
    • 1個 → 正常
  3. 正常時のみ
    • ファイル名を取得
    • 別フォルダへコピー

当初の実装案(ステップのみ)

当初は、ファイルループステップと正規表現を組み合わせて実現しようとしていました。

対象ファイル名

〇〇株式会社yyyymmddhhmmss.xlsx

やろうとしていたこと

  • ファイルループと正規表現を組み合わせて、当日日付ファイルのみを取得
  • 変数の割り当てステップで件数をカウント
正規表現

〇〇株式会社yyyymmdd\d{6}.xlsx
※ yyyymmdd の部分を当日日付に置き換えて判定

ステップのイメージ
image.png


改善案:コマンドの活用

改善のきっかけ

現場で運用されている既存ロボを参考にしていた際、
コマンドを使ってシンプルに実装している例を発見したことがきっかけです。

当日ファイル数の取得コマンド

dir /b /a-d "フォルダパス" 2>nul | find /c /v ""

このコマンドを使用することで、1回の実行でファイル数を取得できるようになりました。

一見するとステップ数は変わらないように見えますが、
ループ処理が不要になるため、実行されるステップ総数は削減できます。

ステップのイメージ
image.png


学び

今回の経験から、以下のことを学びました。

  • BizRobo!のステップだけに固執しすぎないこと
  • 「ステップでやるか、コマンドでやるか」を常に比較すること

今後は、それぞれの特性を踏まえた上で、より適した方法を選択して実装していきたいと思います。


おわりに

同じようにBizRobo!を触っている方の参考になれば幸いです。
「自分はこうしている」といった工夫があれば、ぜひ共有いただけると嬉しいです!
最後まで読んでいただき、ありがとうございました!


補足

私の所属するエクスブレーンDX事業部の採用情報と紹介記事のリンクを貼っておきます。
興味がありましたら覗いてみてください。よろしくお願いします!


2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?