/** * 中間テーブルを初期化します。 * * @param dbm DBマネージャ * @throws Exception 処理例外 */ public static void clearAccessSpace(IkenshoFirebirdDBManager dbm) throws Exception { try { // ローカルIPに該当するレコードを消去 StringBuffer sb = new StringBuffer(); sb.append(" WHERE"); sb.append("(RECEIPT_ACCESS_SPACE.LOCAL_IP='"); sb.append(getLocalIP()); sb.append("')"); String where = sb.toString(); sb = new StringBuffer(); sb.append("DELETE FROM"); sb.append(" RECEIPT_ACCESS_SPACE"); sb.append(where); dbm.executeUpdate(sb.toString()); sb = new StringBuffer(); sb.append("SELECT"); sb.append(" COUNT(*)"); sb.append(" FROM"); sb.append(" RECEIPT_ACCESS_SPACE"); sb.append(where); dbm.executeQuery(sb.toString()); } catch (Exception ex) { // 存在しなければ作成してみる StringBuffer sb = new StringBuffer(); sb.append("CREATE TABLE"); sb.append(" RECEIPT_ACCESS_SPACE"); sb.append(" ("); sb.append(" LOCAL_IP VARCHAR(30) NOT NULL"); sb.append(",SERIAL_ID INTEGER NOT NULL"); sb.append(",PTID VARCHAR(10)"); sb.append(",NAME VARCHAR(100)"); sb.append(",KANANAME VARCHAR(100)"); sb.append(",SEX CHAR(1)"); sb.append(",BIRTHDAY CHAR(8)"); sb.append(",HOME_POST VARCHAR(7)"); sb.append(",HOME_ADRS VARCHAR(200)"); sb.append(",HOME_BANTI VARCHAR(200)"); sb.append(",HOME_TEL1 VARCHAR(15)"); sb.append(",LAST_TIME TIMESTAMP"); sb.append(",PRIMARY KEY ("); sb.append(" LOCAL_IP"); sb.append(",SERIAL_ID"); sb.append(" )"); sb.append(")"); dbm.executeUpdate(sb.toString()); dbm.commitTransaction(); // コミットしないとCREATEが反映されない dbm.beginTransaction(); } }
private void initComponent(VRMap affair) throws Exception { // ウィンドウのサイズ setSize(new Dimension(470, 110)); // ウィンドウを中央に配置 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = this.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } this.setLocation( (screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); // 保険者一覧をDBから取得・コンボに設定する IkenshoFirebirdDBManager dbm = new IkenshoFirebirdDBManager(); StringBuffer sb = new StringBuffer(); sb.append(" SELECT"); sb.append(" INSURER_NO"); sb.append(" ,INSURER_NM"); sb.append(" FROM"); sb.append(" INSURER"); insurerData = (VRArrayList) dbm.executeQuery(sb.toString()); IkenshoCommon.applyComboModel( insurerNm, new VRHashMapArrayToConstKeyArrayAdapter(insurerData, "INSURER_NM")); // 渡りデータを取得し、各コンポーネントに設定する this.affair = affair; String actParam = String.valueOf(affair.getData("ACT")); if (actParam.equals("update")) { isUpdate = true; } else { isUpdate = false; } if (isUpdate) { submit.setText("更新(S)"); enteredData = (VRArrayList) affair.getData("DATA"); int selRow = Integer.parseInt(String.valueOf(affair.getData("SEL_ROW"))); VRMap row = (VRMap) enteredData.getData(selRow); // 保険者名 String insurerNmParam = String.valueOf(row.getData("INSURER_NM")); for (int i = 0; i < insurerNm.getItemCount(); i++) { if (insurerNm.getItemAt(i).toString().equals(insurerNmParam)) { insurerNm.setSelectedIndex(i); break; } } // 保険者番号 insurerNoOld = String.valueOf(row.getData("INSURER_NO")); insurerNoField.setText(insurerNoOld); // 事業所番号 jigyoushoNoField.setText(String.valueOf(row.getData("JIGYOUSHA_NO"))); } else { submit.setText("登録(S)"); } // スナップショット撮影 IkenshoSnapshot.getInstance().snapshot(); }