抽出条件式にを勤務地(area)を指定して、すべての項目をファイルに出力する例を用いて、Java APIの使用例を示します。
使用例
import com.fujitsu.iis.IisAPI; /** * 抽出条件式にを勤務地(area)を指定して、すべての項目をファイルに出力する */ public class Sample_2 { public static void main(String[] args) { new Sample_2().execute(); } public boolean execute() { // APIインスタンス IisAPI api = null; // 戻り値 boolean ret = true; // 抽出結果情報 String[] select_result = null; // 抽出結果件数 int data_count = 0; // 抽出結果ファイル名(絶対パス) String file_name = null; // エラー詳細番号 int error_no = 0; try { api = new IisAPI(); } catch (NullPointerException e) { System.out.println("APIの初期化に失敗しました"); return false; } // 環境設定 // 制御サーバセットのホスト名 api.setRequestorHostName("192.0.2.1"); // 制御サーバセットのポート番号 api.setRequestorPortNo(24101); // カテゴリ名 api.setCategoryName("SAMPLE"); // 実行クラス名 api.setTargetClassName("Class1"); // データ形式 api.setTargetFileType("CSV"); // 半角英字大小区別 api.setANKmix(true); // 全角英字大小区別 api.setKNJmix(true); // CSVヘッダレコード api.setLabelLine(true); // 抽出条件式:areaの値が東京に完全一致するデータを抽出 String query = "$area=='東京'"; // リターン式:全項目を取得 String returnItem = null; // 抽出を依頼 select_result = api.requestSelect(query, returnItem); // 抽出正常復帰 if (select_result != null) { // 抽出件数取得 data_count = api.getDataCount(); // 件数取得異常復帰 if (data_count == -1) { // エラー詳細番号取得 error_no = api.getLastError(); // エラー詳細番号とメッセージを出力し終了する System.out.println("エラー番号 = " + error_no + ", エラーメッセージ = " + api.getLastErrorMessage(error_no)); // 抽出結果情報および抽出結果中間ファイル破棄 api.deleteInstance(select_result); return false; } // 件数出力 System.out.println("抽出件数 = " + data_count); // 抽出件数確認 if (data_count > 0) { // 抽出件数が1件以上の場合 // ファイルに抽出したデータを出力 file_name = "/tmp/select_result"; ret = api.outputResultFile(file_name, select_result); if (ret == true) { System.out.println("抽出したデータを" + file_name + "に出力しました。"); } else { // エラー詳細番号取得 error_no = api.getLastError(); // エラー詳細番号とメッセージを出力し終了する System.out.println("エラー番号 = " + error_no + ", エラーメッセージ = " + api.getLastErrorMessage(error_no)); // 抽出結果情報および抽出結果中間ファイル破棄 api.deleteInstance(select_result); return false; } // 抽出結果情報および抽出結果中間ファイル破棄 ret = api.deleteInstance(select_result); // 破棄異常復帰 if (ret == false) { // エラー詳細番号取得 error_no = api.getLastError(); // エラー詳細番号とメッセージを出力し終了する System.out.println("エラー番号 = " + error_no + ", エラーメッセージ = " + api.getLastErrorMessage(error_no)); return false; } } // 抽出件数が0件の場合 else if (data_count == 0) { // 抽出結果情報および抽出結果中間ファイル破棄 api.deleteInstance(select_result); } return true; } // 抽出異常終了 else { // エラー詳細番号取得 error_no = api.getLastError(); // エラー詳細番号とメッセージを出力し終了する System.out.println("エラー番号 = " + error_no + ", エラーメッセージ = " + api.getLastErrorMessage(error_no)); return false; } } }
実行結果
抽出件数 = 2 抽出したデータを/tmp/select_resultに出力しました。
/tmp/select_result
empno,"name","Date","team","area","pict1" 199801,"鈴木太郎","2007/06/30","1開発部","東京","199801.jpg" 200130,"山本清","2010/07/01","3開発部","東京","200130.jpg"