• 文字サイズ変更
  • S
  • M
  • L

FAQのNo.から検索


  • No : 30253
  • 公開日時 : 2019/03/15 06:47
  • 印刷

HULFT活用事例 ~【DataSpider】ある期間の日付データのみ抽出する方法 ~

DataSpiderを使用して、ある期間の日付データを抽出する方法についてご紹介いたします。
 
 
カテゴリー : 

回答

要件として、前月の21日から当月の20日までのデータを抽出したいと仮定します。
また、CSVファイルから読み込んで、抽出後、CSVファイルに書き込みます。
 
file_image
 

【処理の流れ】

プロジェクトの処理の流れは以下の通りです。

1.「CSVファイル読み取り処理」でCSVファイルより日付データを読み取ります。

2.「マッピング処理」で以下の演算を行い、前月の21日以後かつ今月の20日を取得します。

 2-1 前月の21日以後:
  「現在日時取得ロジック」で現在日付を取得します。
  「月を増減ロジック」で月を「-1」増やします。
  「日の設定ロジック」で日を「21」に設定します。
  「以後ロジック」で前月の21日以後を取得します。

 2-2 今月の20日以前:
  「現在日時取得ロジック」で現在日付を取得します。
  「日の設定ロジック」で日を「20」に設定します。
  「以後ロジック」で今月の20日以後を取得します。

 2-3 「And演算ロジック」で、前月21日以後かつ今月20日以前を取得します。

 2-4 「条件による抽出」にて、前月21日以後かつ今月20日以前を抽出します。

3.「CSVファイル書き込み処理」で前月の21日から当月の20日までのデータをCSVファイルへ出力します。

【ポイントとなる機能】

 file_image

 

 

【処理のポイント】

 例:現在日付 2019/03/04
 

■月を増減ロジック・日の設定ロジックを使用して、前月の21日を取得します。

 データの流れは以下の通りです。

 月を増減ロジックで月を「-1」増やします。  ※「1」減らします
 file_image
 

 日の設定ロジックで日を「21」に設定します。 
 file_image

■日の設定ロジックを使用して今月の20日を取得します。

  データの流れは以下の通りです。

 日の設定ロジックで日を「20」に設定します。 
 file_image
 

■以後ロジック・以前ロジック・And演算ロジックにて、前月の21日から今月の20日以前のデータを取得し、条件による抽出にて、上記データのみ抽出します。

 マッピングキャンバスは、以下のように設定します。


 【マッピングキャンバス】

 file_image
 

 file_image
 

■参考
 

条件による抽出ロジック:
 条件にマッチしたもののみ繰り返して出力します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [繰り返し] - [条件による抽出]
http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/ifLoop.html

現在日時ロジック:
 現在日時を出力します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [日付] - [現在日時]
 http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/now.html

月を増減ロジック:
 入力日時の月を増減して返します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [日付] - [月を増減]
 http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/calcMonth.html

数値定数ロジック:
 数値定数を出力します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [数値] - [数値定数]
http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/numberConstant.html

以後ロジック:
 上入力日時が下入力日時以後かどうか判定します
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [条件] - [以後]
http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/isAfter.html

日の設定ロジック:
 入力日時に日を設定して返します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [日付] - [日の設定]
http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/setDate.html

以前ロジック:
 上入力日時が下入力日時以前かどうか判定します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [条件] - [以前]
http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/isBefore.html


And演算ロジック:
 二つの入力真偽値の論理積(AND条件)を返します。
・[Mapper] - [ドキュメントMapper] - [Mapperロジックガイド] - [条件] - [And演算]
http://patch.appresso.com/DataSpider/help/DSS42/doc/help/ja/mapper/document/logic/and.html