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

CookBookからダウンロードしてきたプロジェクトのインポート方法

このCookBookでは、他のCookBookからダウンロードしてきたe Builderのモジュール・プロジェクトのインポートについて紹介しています。 プロジェクトをインポートし、プロジェクトの設定を …

no image

テナント環境セットアップ時にテーブルが作成されるよう設定する

e Builderを利用して作成したアプリケーションにおいて、テナント環境セットアップ時に自動でテーブルが作成されるように設定する手順を紹介します。 今回は例として、CookBook:フォームに入力し …

IM-LogicDesignerを利用して、IM-Workflowの到達処理で任意の参照者を追加する方法

このCookBookでは、LogicDesignerを利用して、IM-Workflowの到達処理で任意の参照者を追加する方法について紹介しています。 承認ノードの到達処理で、申請者を参照者として登録し …

no image

スクリプト開発モデルで作成した1つのページソースを複数の画面で利用する

このCookBookでは、任意のスクリプト開発モデルプログラムをコールして部分ページソース挿入を行う方法を紹介します。 部分ページソース挿入は<imart type=”include”>タ …

no image

フォームに入力した内容をデータベースに登録する

登録フォームに入力した内容をデータベースに登録する手順をご紹介します。 今回は例として、CookBook:スクリプト開発で登録フォームを作成するで作成した登録フォームに入力された内容をデータベースに登 …

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

RSSRSSRSSRSS