質問
ある月の最終日を期日指定などに利用したいのですが。ワークフローで月の最終日を取得する方法を教えてください。
回答
月の末日を取得するには、算術式を使用します。 お客様のシステムで実装する場合は、以下の方法をご検討ください。
この例では、 LastDayOfMonth1、LastDayOfMonth2、 LastDayOfMonth3の3 つのテキストグローバル変数を作成します。 以下の方法を使います、
- 最終日が必要な月の最初の日を取得する。
- 1ヶ月先にジャンプ
- 最後に1日引いて、必要な月の最終日にする。
ワークフローでは、以下のような「データの割り当て」ステップを用意する、
ワークフローグローバル変数 = Date = Fixed entry = first day of month
ワークフローグローバル変数 = LastDayofMonth1 =Arithmetic expressions = Date(GV_Date.Year,GV_Date.Month,1)
ワークフロー グローバル変数 = LastDayofMonth1= 算術式= DateAdd("m", 1, GV_LastDayOfMonth1)
ワークフローグローバル変数 = LastDayofMonth1 =算術式 = DateAdd("d", 1, GV_LastDayOfMonth1)DateAdd("d", -1, GV_LastDayOfMonth2)
テスト用に、Dateグローバル変数を作成し、最終日にしたい月として1月を指定した。
Date(GV_Date.Year,GV_Date.Month,1)
このメソッドには、Year、Month、Dayのパラメータが必要です。この例では、.Yearと.Monthを変数の最後に置くことで、日付のYearとMonthを提供し、この情報を取得しています。
DateAdd("m", 1, GV_LastDayOfMonth1)
DateAddメソッドを使って1ヶ月先にジャンプしています。最初のパラメータとして "m "を指定し、月を変更することを示します。最後に、LastDayOfMonth1変数を指定します。
DateAdd("d", -1, GV_LastDayOfMonth2)
このプロセスの最後のステップは、ターゲットとする月の最終日に到達するために、今1日引くことです。
最後のステップと同じように、最初のパラメータに "d "を使って日を変更することを示し、-1を使って日付から1日引いて、最後にLastDayOfMonth2変数を指定します。
ワークフローでこの処理をテストすると、履歴に以下のような結果が表示されるはずです。