ファイルからデータの追加/修正を行います。
事務局権限をもつグループのみがこの処理を行えます。
DBIPgSystem::file_check メソッド や、
DBIPgSystem::file_insert メソッド によって処理されます。
DBIPgSystem::file_check メソッドでは、
フォームからファイルを受け取り、データをチェックした後、
draft用のテーブルにデータを挿入します。
DBIPgSystem::file_insert メソッドでは、
draft用のテーブルに挿入されているデータを、
本テーブルに移動させます。あるいは処理をキャンセルします。
パラメータ
- remove_head ( BOOLEAN )
- ファイルの1行目をヘッダとみなし、無視する場合は true にします。
- revise ( BOOLEAN )
- ファイルの修正の場合は true にします。
- system_state ( NUM )
- システムの状態。1 ( 申請中 ) or 2 ( 有効 ) を指定します。
- type ( STRING )
- ファイルの形式。'csv' または 'tab' で指定します。
- file
- アップロードされるファイル。
通常は <input type="file" name="file"> のようなフォームを用意
します。
- code_dist
- 文字コードに判別に利用される文字列。
文字コード のページを参照してください。
出力
- error ( ARRAYREF )
- エラーの情報。
- warning ( ARRAYREF )
- 警告の情報。
- over ( ARRAYREF )
- ファイル中に重複のあったデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- ignored ( ARRAYREF )
- 本テーブル中のデータと重複したデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- invalid ( ARRAYREF )
- 外部から修正のあったデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- permission ( ARRAYREF )
- アクセス権がなかったデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- num ( HASHREF )
- 各データの件数や個数。各値は整数です。
キーは error, over, ignored, success, warning, noactive, invalid,
permission, error_i, warning_i, total があります。
error_i, warning_i はエラー, 警告の個数を、
それ以外は該当するデータの件数を示しています。
- inssid ( STRING )
- セッションID(挿入用)
- revise = $qs->{revise} ( BOOLEAN )
- total_large ( BOOLEAN )
- 途中経過を表示した場合は 1 を返します。
補足説明
パラメータ
- cancel ( BOOLEAN )
- 追加/修正をキャンセルする場合は true にします。
- inssid ( STRING )
- 挿入用のセッションのID。
出力
- ins_ignored ( ARRAYREF )
- draft用テーブルに挿入された後で、
(外部からデータが挿入されたなどの理由で)
本テーブル中のデータと重複したデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- ins_invalid ( ARRAYREF )
- draft用テーブルに挿入された後で、
外部から修正のあったデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- ins_permission ( ARRAYREF )
- draft用テーブルに挿入された後で、
(外部からデータが挿入されたなどの理由で)
アクセス権がなくなったデータの位置。
各要素には、対応するファイルの行番号が格納されています。
- num ( HASHREF )
- 各データの件数や個数。各値は整数です。
file_checkメソッドの出力 num に加え、
キー ins_ignored, ins_invalid, ins_permission が追加されています。
また、キー success の値は file_check のときとは異なりますが、
その他の対応する値は file_check のときと同じです。
error_i, warning_i はエラー, 警告の個数を、
それ以外は該当するデータの件数を示しています。
- where_all ( STRING )
- 挿入に成功したデータを検索するためのWHERE句を返します。
- revise ( BOOLEAN )
- データの修正の場合は 1 を返します。
- total_large ( BOOLEAN )
- 途中経過を表示した場合は 1 を返します。
補足説明