CSVデータ送信機能

CSVファイルをJSONデータに変換し、PD RepeaterやNode-REDのUnix Domain Socketに対して書き込みを行うことができます。
本機能では、対象のディレクトリにファイルを配置した際に自動で変換し書き込みを行います。なお、一時的に有効にしていない状態でのファイル配置時にも処理が行うよう30分に1度処理を行います。
WEB-UIのIoTデータCSV送信タブから設定可能です。また、本機能はダッシュボードのプロセス状況のIoT制御(IoTデータ)の起動停止にも連動しています。
(ただし、30分に一度の定期実行は連動していません)

CSVデータ送信設定

初期状態では上図のようになっています。

使用設定有効にすると上図のように設定項目が表示されます。

CSVデータ送信設定の設定項目
設定項目説明
CSVデータ送信機能本機能の使用設定となります。使用する場合には使用するを選択してください。
入力ディレクトリ本機能の入力とするCSVファイルのディレクトリの指定です。
処理済ディレクトリ本機能にて処理を行ったCSVファイルの退避先ディレクトリの指定です。
エラーディレクトリ本機能の処理時にエラーとなったCSVファイルの移動先ディレクトリの指定です。
処理データ確保日数処理済ディレクトリに配置したファイルの確保しておく日数の指定です。
エラーデータ確保日数エラーディレクトリに配置したファイルの確保しておく日数の指定です。

保存ボタンを押すことに反映されます。
また、処理データ及びエラーデータは各確保日数経過後に削除されます。そのため、自動で削除したくない場合には、確保日数を大きくし定期的にクリーンナップ処理を行ってください。

CSV変換設定

CSV変換設定の設定項目
設定項目説明
変換ルールCSVの変換ルールをユニークに扱うための目ルール名を設定します。
処理対象ファイルルール正規表現に処理対象のファイル名を指定します。
対象ファイルルール処理対象のファイルの区切り文字を選択します。サポートしているのはカンマ区切りまたはスペース区切りとなります。
JSON書込先CSVをJSONへ変換した際に書き込む先のUnix Domain Socketを指定します。
ソケット種類書き込み先のUnix Domain SocketがAbstractソケットか通常のUnix Domainソケットかを選択します。
変換ルール詳細
    対象カラムCSVのレコードの何カラム目を取り込むかの指定を行います。
    JSONキー取り込み対象のカラムに対して設定するJSONキーを指定します。
値種類が"ISO8601日時用日付のみ"の場合、設定したJSONキーは無視されます。
    値種類値の取り込み時に設定するデータの型を指定します。
  • "ISO8601日時フォーマット"は自動変換を行います。変換に失敗した場合は、値は設定されません。
  • "ISO8601日時用日付のみ"はISO8601日時の日付として用います。この値自体はJSON変換は行われません。
  • "ISO8601日時用時刻のみ"の値は、前述の"ISO8601日時用日付のみ"と組み合わされISO8601日時フォーマットとして変換されます。"ISO8601日時フォーマット"と同様に変換に失敗した場合は、値は設定されません。
    未存在時処理対象カラムが存在しない場合の処理を設定します。
なお、空文字設定は値種類が"文字列"の場合に適用されます。
固定付与データ(JSON)CSVをJSONへ変換した際に固定情報として付与したいデータをJSON形式にて記載します。
なお、本項目に設定可能なJSONは第一階層がHash情報となります。
Ex.)
     {"add_info": "sample", "add_value": 1 }
caution

処理対象ファイルルールの正規表現はPHPにおけるpreg_match関数を適用しています。
そのため、WEB等にてpreg_matchの正規表現の確認を推奨いたします。
なお、入力フォーム部に設定する箇所はpreg_match関数の以下の部分となります。

preg_match('/<入力フォーム部>/', $filename)

CSV変換ルール一覧

CSV変換設定の一覧が表示されます。
編集ボタンを押すことにより、CSV変換設定のフォームに設定している内容が入力されます。
また、削除ボタンを押すことにより設定したルールを削除することができます。