今回でWinAutomationによる交通費精算チェックの自動化作成の3回目になります。
前回は駅探で乗車駅~下車駅までの経路を検索し金額を取得するところまで作成しました。
今回は駅探から取得した金額を交通費精算書に記入し、元の金額と比較チェックします。
交通費精算書に金額を記入する
駅探で検索した結果を交通費精算書に記入するのですが、交通費精算書には片道・往復の両方の場合の金額が記載されています。
この後金額を比較するため駅探で検索した金額も往復の場合には2倍にして記入しておきましょう。
まず最初に準備が必要です。
駅探で検索した結果は”200円”のように”円”がついています。これを取り除きましょう。
今回は「Replace Text」アクションを使います。
空白は 「%””%」で表すことができます。
これで例えば”200円”が”200”になります。
次に取得して”円”を取り除いた金額ですが、これはテキスト型になっています。
テキスト型だと計算ができません。(往復の場合に×2 しますよね)
そこでテキスト型から数値型に変換した変数を作ります。
数値型に変換した値を%SearchedFeeNumber%という変数に入れました。
それでは金額を設定していくのですが、対象の明細が片道か往復なのかを判定する必要があります。
そのため交通費精算書の「片道・往復」の列を参照します。
この処理は「WinAutomationで作ってみるシリーズ – 交通費精算チェックその1」で作成した箇所に追加します。
取得した値を%Oneway_Roundtrip%という変数に入れています。
それではこの%Oneway_Roundtrip%変数の値を見て片道なのか往復なので条件分岐してみましょう。
一気にIfアクションで分岐して交通費精算書に記入するところまで作ってしまいました。
Ifアクションで%Oneway_Roundtrip%が往復の場合は%SearchedFeeNumber%を2倍にして交通費精算書に記入しています。
%Oneway_Roundtrip%が片道の場合は金額はそのままでOKですね。
金額を比較チェックする
ここまでできれば金額のチェックは簡単ですね。
今回もIfアクションを使って金額が一致した場合、一致しなかった場合の条件分岐をします。
これで交通費精算書の金額を駅探で検索してチェックすることができました。
ですがまだ明細行を1行処理しただけです。全ての明細行をチェックする必要がありますね。
また実は他にも検討すべきことが残っています。それはまた次回。