top of page

最新記事リスト

ファイル更新後の自動アップロード

  • 執筆者の写真: とも
    とも
  • 6月12日
  • 読了時間: 3分

更新日:7月1日

以前、ファイルサーバーにつなぎたい!で社内ファイルサーバーからのデータ取得についてお伝えしました。

今回は特定のCSVファイルが更新されたらQlik Cloudに自動でアップロードし、関連アプリのリロードも実行する方法をご紹介します。



<設定するもの>

  1. CSVファイル更新後、Qlik Cloud にCSVファイルを保存するためのアプリ

  2. Qlik Cloud のCSVファイルのデータを使うアプリ

  3. リロードタスク


1.CSVファイル更新後、Qlik Cloud にCSVファイルを保存するためのアプリ このアプリでは、参照先のファイルが更新されたら、データを読み込んでStoreステートメントでQlik Cloudにファイルを作成する動作を設定します。

ロード スクリプト 記述例 ~必要な方は展開してご参照ください~

// 変数「vFileTime」にFileTime関数で取得した対象ファイルの更新時間を持たせます。
Let vFileTime = FileTime('lib://Sample_shared:Sample_DirectAccess_Cdata/TEST.csv');

/* if..then 制御ステートメントで以下の処理を行っています。
 変数「vFileTime」と「vStoreTime」を比較して、vFileTimeが大きい(つまり、CSVファイルが更新されている)場合は
 対象ファイルの読み込み、QCA内へのCSVファイル保存、変数 vStoreTime の更新と本アプリのデータを削除しています。
 条件に合致しない時は、存在しないCSVファイルを読み込んでエラーを発生させます。   */

if '$(vFileTime)' > '$(vStoreTime)' then

/*  条件を満たす場合の処理 */
// 対象データの読み込み
TEST:
LOAD
    "NO",
    NAME
FROM [lib://Sample_shared:Sample_DirectAccess_Cdata/TEST.csv]
(txt, codepage is 28591, embedded labels, delimiter is ',', msq);

//Store ステートメントでQCA内にCSVファイルを生成
STORE [TEST] INTO [lib://Sample_shared:DataFiles/TEST.csv](txt);

// 変数「vStoreTime」の更新
Let vStoreTime = Localtime('Tokyo');

// TEST テーブルの削除も行っています。
Drop Table TEST;

/*  条件を満たさない場合の処理 */
// あえてエラーになる処理を設定します。

Else

Error:
LOAD *
FROM [lib://Sample_shared:Sample_DirectAccess_Cdata/Error.csv]
(txt, codepage is 28591, embedded labels, delimiter is ',', msq);

End If

2.Qlik Cloud のCSVファイルのデータを使うアプリ

実際に業務で利用するのはこちらのアプリです。 上記、1のアプリで出力したCSVファイルを読み込んで、必要なチャート等を設定します。



3.リロードタスク

1つ目のアプリは、ファイル更新されるタイミングに合わせたスケジュールを設定します。

例)毎日9:00-17:00のどこかでCSVファイルが更新される場合   以下のようなスケジュール設定にすることで9:00-18:00の毎時40分に1つ目のアプリの   リロードが行われます。 注意:連続して失敗するとタスクが「無効化」されてしまったので、実行時間帯を短くする、あるいは、2時間おきにする等の調整が必要そうでした。

1つ目のアプリのスケジュール設定例

2つ目のアプリは、1つ目のリロードが成功した時にリロードするように設定します。

2つ目のアプリのスケジュール設定例

このような設定で、特定ファイルが更新された後に自動でQlik Cloudの所定のスペースへのアップロードと関連アプリのリロードを行えます。

基幹システムからのデータ転送後に処理をしたい場合などにご活用ください。


 
 
 

Comentarios


© 2023 by Kathy Schulders. Proudly created with Wix.com 

  • Grey Twitter Icon
bottom of page