古いバージョンでは関数を使っていましたが、たとえば対象とした月の月末日の抽出とかはなかなか もっちゃり した感じでスマートな方法をとれませんでした。
直近のバージョンでは、日付に関わるアクティビティが充実しており、期待大です。
ここで使ったUiPathなどの条件は次のとおりです
UiPath Studio 2023.12.0 Community Edition
UiPath.Automation.Activities v23.10.8
アクティビティの構成
アクティビティは プログラミング ▶ 日付 の中にあります。
アクティビティとプロパティは以下の様になっていて、
入力はDateTime型、出力は[出力をテキストとして書式設定]にチェックを入れてないとDateTime型、チェックを入れているをString型になります。
[テスト]をクリックすると、下のダイアログが表示され出力結果を M月d yyyy の表示で示してくれます。
テストで注意が必要なのは、テストする日付です。これは親のアクティビティにある[変更する日付]が参照されるわけではありません。デフォルトで今日の日付となりますので、変更する場合は下図の赤枠ボタンを押して表示されるカレンダーから選んでください
[変更を追加]をクリックすると、下のように元の日付に対して加えたい変更の種類が3種類表示されます。なお、この変更の種類は異種・同種に限らず複数個の入力が可能です。
日付に変更を加えてみる
2024年10月6日 日曜日現在(入力変数を Today にする)での変更を加えたいと思います。
次/前の曜日を検索
参照元の日付に対して前か後か、曜日を選択します。[テスト]をクリックします。
下のダイアログが表示されるので、ここでも[テスト]を表示すると結果が M月d yyyy の型式で表示されます。この例では参照した日付の前の水曜日である日付が表示されます。
期間を加算/減算
次のように、参照元の日付の加算(未来)か減算(過去)か、またどれだけ加減産するかと、その単位を選びます。
値は " (ダブルクォーテーション)で囲む必要はありません。ここでは、10日先を指定します。
テストのダイアログに表示される結果は、指示通り10日後のものとなっています。
年/月/週の最初/最後の日を検索
それぞれの範囲で、頭の日か末の日かの選択、検索範囲を選択します。
ここでは参照日付の年始の日を選ぶように、[検索範囲]に年を選択します。
なお、週の初日は日曜日となりますのでご注意ください。
テスト結果はご覧の様に2024年元旦となります。
組合せ、追加と削除
追加は、以下の様に[変更の追加]をクリックして行います。
次のように変更の内容を追加できます。
上から順に処理を行うので順序が大切となりますが、順序は通常のアクティビティと同様にドラッグ&ドロップで入れ替える事ができます。一度追加した変更内容は変えることができないので、間違えた変更内容は削除して再度追加するしかなさそうです。
削除は、対象となる変更を選択して DELキーを押下するか、右上の三点リーダーをクリックしてでるメニューから削除を選択すれば行えます。
よく使いそうな処置
日本の決算は4月なので、業績集計は
通期では4月1日~3月31日
半期では上期4月1日~9月30日、下期10月1日~3月31日
となることが多くあります。
では、2024年度を例にして、前年度2023年度の各日付けを取っていきましょう
先期の初日(2023年4月1日)抽出
先期というので、2024年4月1日~2025年3月31日の何時に実施しても同じ日付にならないといけません。
先ず、上記期間のいずれでも2023年の日付になるように、15カ月の減算を行います。
次に2023年のいずれの日でも2023年1月1日になるように下記の様に設定
最後は1月1日に3か月を加算して2023年4月1日を得ます。
全体を通してみると下記の様になります
各種日付を得る方法
先期初日、先上期初日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 期間を加算/減算 | 減算 | 15 | 月 |
Step2 | 年/月/週の最初/最後の日を検索 | 最初の日付 | 年 | |
Step3 | 期間を加算/減算 | 加算 | 3 | 月 |
先期末日、先下期末日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 期間を加算/減算 | 減算 | 3 | 月 |
Step2 | 年/月/週の最初/最後の日を検索 | 最後の日付 | 年 | |
Step3 | 期間を加算/減算 | 減算 | 9 | 月 |
先下期初日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 期間を加算/減算 | 減算 | 15 | 月 |
Step2 | 年/月/週の最初/最後の日を検索 | 最初の日付 | 年 | |
Step3 | 期間を加算/減算 | 加算 | 9 | 月 |
今期初日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 期間を加算/減算 | 減算 | 3 | 月 |
Step2 | 年/月/週の最初/最後の日を検索 | 最初の日付 | 年 | |
Step3 | 期間を加算/減算 | 加算 | 3 | 月 |
n期前の初日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 期間を加算/減算 | 減算 | 3+n×12 | 月 |
Step2 | 年/月/週の最初/最後の日を検索 | 最初の日付 | 年 | |
Step3 | 期間を加算/減算 | 加算 | 3 | 月 |
n期前の末日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 期間を加算/減算 | 減算 | 3+(n-1)×12 | 月 |
Step2 | 年/月/週の最初/最後の日を検索 | 最後の日付 | 年 | |
Step3 | 期間を加算/減算 | 減算 | 9 | 月 |
先月初日
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 年/月/週の最初/最後の日を検索 | 最初の日付 | 月 | |
Step2 | 期間を加算/減算 | 減算 | 1 | 月 |
先月末尾
Step | 変更内容 | 項目1 | 項目2 | 項目3 |
Step1 | 年/月/週の最初/最後の日を検索 | 最後の日付 | 月 | |
Step2 | 期間を加算/減算 | 減算 | 1 | 月 |
出力
出力は何もしないとDateTime型になります。
[出力をテキストとして書式設定]にチェックを入れると、プルダウンが表示されます。
下のようなプルダウンが表示されるので得たいString型式の書式を選択します。
コメント