CookBook

ViewCreatorの計算式で日付データを操作する例

投稿日:2016-04-22 更新日:

ViewCreatorを利用するとデータベース等に格納されているデータを簡単に画面に表示することが出来ます。
ViewCreatorについて - intra-mart Accel Platform ViewCreator 管理者操作ガイド

テーブルに格納されているデータをそのまま表示するだけでなく、関数や演算子を用いて計算した結果を表示させることも可能です。
計算式カラムの設定 - intra-mart Accel Platform ViewCreator 管理者操作ガイド

計算式で目的のデータを取得するには、様々な関数を組み合わせる必要がある場合があります。
そこで今回は日付系のデータに関する計算式の記述例をご紹介します。

システム日付の5日前を計算する方法

ここでは、システム日付の5日前を計算して画面に表示する例を示します。

システム日付はTODAY関数で取得できます。

上記の計算式を実行すると、以下のような結果が得られます。

関数についての詳細は下記を参照してください。
利用可能な関数一覧

TODAY関数が返すデータ型は「日付型」です。

計算する前に日付型データを数値型データへ変換します。
NUM関数を利用すると日付型データを数値型データ(ミリ秒)へ変換することができます。

下記のように記述してください。

実行すると以下のような結果が得られます。

数値データに変換しておくと演算子を利用した計算が可能です。
計算を行うには単位を合わせておく必要があります。

今回は5日前を計算したいので、5日をミリ秒に変換しておきます。

よって、システム日付の5日前は下記のように表すことが出来ます。

可読性を高めたい場合は、下記のように記述する方が良いかもしれません。

これで、システム日付の5日前を表すミリ秒の数値データが取得できました。

しかし、ミリ秒表記のままでは読みにくいのでFORMAT関数を利用して整形すると分かりやすいです。

第3引数にtrueを指定すると、第2引数は数値データ(ミリ秒)として扱われます。

実行結果

和暦表示も可能です。

実行結果

リスト集計のフッタに上記の計算式の埋め込みを行った例です。
計算式の利用例

埋め込みはデータ参照編集画面で行います。
計算式の設定例
リスト集計とサマリ集計ではヘッダとフッタに入力された文字列のうち [[ と ]]で括られた部分文字列は計算式として解釈されます。

日付の差分計算で利用可能な関数

日付型データ同士の差分を取得したい場合はSUBTRACT関数で計算が可能です。

上記の計算式ではシステム日付と作成日フィールドから取得したデータの差分をミリ秒で取得することができます。

日付の差分計算式

先ほどと同じく、ミリ秒表記では読みづらいので整形を行います。
ただし、今回算出したミリ秒データは時間軸上の1点を表すデータではなく時間の長さですのでFORMAT関数は利用できません。

このような場合はDATETIMEDURATIONFORMAT関数を利用してください。

日付の差分計算+フォーマット

上記の例ではシステム日付と「作成日」の差分が1日と1時間であることが算出されています。
言い換えると、作成日から1日と1時間経過していることが分かります。

-CookBook
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

IM-FormaDesignerで作成したフォーム内で、外部連携を利用して最も簡単に値を渡す方法(単一アイテム編)

このCookBookでは、IM-FormaDesignerで作成したフォーム画面の中で、アイテムからアイテムへ値を渡す方法について紹介します。 今回は例として、文字列と数値の値を同時にアイテムからアイ …

no image

【ViewCreator】検索にヒットした件数を取得する関数の作り方。

このCookBookでは、ViewCreatorで検索にヒットした件数を取得する関数の作り方についてご紹介します。 ユーザ定義関数についての詳細は下記のドキュメントを参照してください。 ViewCre …

スプレッドシートでシートの保護を利用して、ノード毎に入力セルを制御する

このCookBookでは、スプレッドシートでシートの保護を利用して、ノード毎に入力セルを制御する方法について紹介しています。 Excelでは、シートの保護を利用して、特定のセルのみ入力できるように制御 …

no image

ワークフローの一覧を使い分けるには(改訂版)

このCookbookでは、以前に公開した「IM-Workflowの一覧を業務別に使い分けるには」に関して、お問い合わせいただいた内容を追加してワークフローの一覧の検索条件を付与する方法をご紹介いたしま …

no image

Formaの実行画面でアクセスログを収集する

このCookBookでは、Formaの実行画面で、アクセスログを収集する方法を紹介します。 サンプルでは、登録画面を開いた時点とデータ登録を実行した時点で、ログを収集します。 ログを収集することで、登 …

まだデータがありません。

RSSRSSRSSRSS