Connection List
Connection Listには[インポートインタフェース」と「エクスポートインタフェース]を組み合わせてデータ抽出方法を登録します。 Connection Listはそれぞれが完全に独立したスレッドで動作します。
On this page
- DSN Settings
- FileSave Settings
- Connection List
- Dashboard
- 以下付録(設定事例)
Connection追加/削除
-
[Dashboard]>[Connection List]の右下にある「+」ボタンで新しいConnectionを作成します。
-
まずは識別名となるラベル名を登録します。入力が完了したら[Save Data]ボタンを押します。(ここでは「PatientInfo」としました。)
-
DashbordのConnection Listに登録されます。(ここでは「PatientInfo」としました。)●各設定の完了後StatusをOnにすれば該当するConnectionのスケジュールが実行(Offにすれば停止)されます。スケジュールはサーバー上で動作している為、画面を閉じても実行され続けます。●Auto Startはホストマシンの再起動時に該当のConnectionのスケジュールを自動実行する場合Onにします。
-
Connectionの削除は、Label横のチェックボックスをOffにすると[Delete]ボタンが表示されます。削除したデータは復帰できません。
Connection設定
[Dashboard]>[Connection List]の●Labelをクリックし、このConnectionの詳細を登録します。
-
最初にInputとFilesaveを登録します。(「Output」と「下段のCron設定」は無視してください)Resource Settings(DSN/Filesave)で設定した内容がリストアップされますので選択します。この段階で、読み込んだデータをファイルに書き出すという設定が完了した事になります。まだ、「どのようなデータ」か決まっていないので、以下で設定を行います。
-
Input AddonSelect Tableに対象となるテーブルをポップアップから選びます。(ここでは「public.tbl_ptinf」としました。)システムテーブルから選択したテーブルのカラム名を取得するSQL文作成します。例:SELECT [FieldId],[FieldName],[FieldType] FROM [Catalog(System)_TableName] WHERE (FieldId or TableName) のように記載されますが[]内の語句は、DBMS毎に決められた内容があります。マニュアルなどから参照し正しい語句のSQL文を記入してください。SQLを記入したら[Get Columns]ボタンを押し、関連カラムデータを取得します。成功すれば画面下のDataTable with default featuresに表示されます。※赤枠は後術するSQL Statementの中に説明があります。
-
Filesave AddonResource Settings(FileSave)で選択した情報が表示されています。(ここで何かする必要はありません)
-
SQL Statement検索条件を指定します。WHERE句に続く内容を登録してください。デフォルトで「WHERE 'search' = {D-3:%Y/%m/%d}」とありますが多くの場合この内容は無効ですので、実際のDBMSに即した内容に変更してください。 記載方法の詳細は本ページ下にあります。条件が登録できたら[Execute Test]で、正しく情報が取得できるかテストします。[Execute Test]では最初の10レコードのみが取得結果として表示されます。実際のデータ出力まで確認したい場合は[One time exec]ボタンを押します。対象の全レコードが指定フォルダに出力されます。
-
WHERE句以後の{*}内の記載方法例えば、本操作説明では例としてtbl_ptinf(患者情報)を取得しようとしています。
定期的に欲しいデータとして更新日(upymd)カラムが昨日以後のものを対象にしておけば、 データの漏れがない妥当という想定で設定した場合、
検索条件は「WHERE upymd >= ?」のようになります。?には常に前日という変数を設定しないといけません。 さらにupymdのデータ型はcharactor(文字列)となっているので、
実際のSQLでは、例えば今日が2023/04/05であれば「WHERE upymd >= '20230404'」となる必要があります。これを表現するには、WHERE upymd >= {-1|%Y%m%d}とします。Value SQL Execute Description WHERE upymd >= {-3|%Y%m%d} ... WHERE upymd >= '20230605' 3days ago(charactor) WHERE upymd >= {NUM-3|%Y%m%d} ... WHERE upymd >= 20230605 3days ago(number) WHERE upymd >= {DATE-3|%Y-%m-%d} ... WHERE upymd >= DATE '2023-06-05' 3days ago(DATE) WHERE upymd >= {TS-3|%Y-%m-%d %H:%M:%S} ... WHERE upymd >= TIMESTAMP '2023-06-05' 3days ago(TIMESTAMP) -
日付フォーマット
Format Description Example %Y 西暦(4桁表記。0埋め) 2021 %m 月(2桁表記。0埋め) 11 %d 日(2桁表記。0埋め) 04 %H 時(24時間制。2桁表記。0埋め) 17 %M 分(2桁表記。0埋め) 37 %S 秒(2桁表記。0埋め) 28 %y 西暦の下2桁(0埋め) 21 %l AM/PMを表す文字列 PM %x 日付をMM/DD/YY形式にしたもの 11/04/21 %X 時刻をhh:mm:ss形式にしたもの 17:37:28 %a 曜日の短縮形 Thu %A 曜日 Thursday %z 現在のタイムゾーンとUTC(協定世界時)とのオフセット +0900 %Z 現在のタイムゾーン JST -
実行スケジュールThe cron command-line utility is a job scheduler on Unix-like operating systems. Users can set up and maintain software environments use cron to schedule.Cronは秒、分、時間、日、月、週の区分があります。デフォルトでは全てに*(アスタリスク)が入っていますがこれは毎?と同じ意味になります。 つまりこの状態で毎秒この処理が行われる事になります。なのでこのConnectionは、まだスケジュールに登録すべきではありません。 Cronは強力なコマンドですが、ユーザーが正しく理解しないと思わぬ負荷をシステムに与えますので充分に理解した上でスケジュールに登録してください。設定方法
Method Example Description リスト指定(list) 0,10,20,30 「,」で区切る
分フィールド指定した場合は0,10,20,30分に実行します。範囲指定(range) 1-5 「-」で範囲指定
月フィールドで指定した場合1,2,3,4,5月に処理を実行します間隔指定(Interval) */10 「*/数値」で間隔を設定
分フィールドで指定した場合、10分間隔で処理を実行します。「/」の後ろに指定した値の間隔で処理を実行します。「リスト」や「範囲」をあわせて指定することも可能で時間フィールドで「1,6,9-11」と指定した場合、1時、6時、9時、10時、11時に処理を実行します。設定可能な数値Part Value Description second 0-59 秒 minute 0-59 分 hour 0-23 時刻 day 1-31 日付 month 1-12 月 week 0-6 週(0=Sun、1=Mon、2=Tue、3=Wed、4=Thu、5=Fri、6=Sat)