マスタメンテの修正は、基本的に問合せからの呼び出しとする。 1) gen 使用時に主キーが必要なので、以下のようなビューから gen すると良い 拡張子:txtvbswsfjsphpjavahtmlutf8sjis select 0 as ID ,テーブル名.* from テーブル名 ※ テーブル名.* だと、既存テーブルの列全てとなるが、必要な列のみを選択する。 2) ID をキーとして gen を行う。 3) 呼び出しに ai=yes を付加すると、ID を自動採番扱いになるので、1フレームで登録・修正が可能なように変更
select 0 as ID ,テーブル名.* from テーブル名
拡張子:txtvbswsfjsphpjavahtmlutf8sjis if ( $_POST['ai'] == 'yes' ) { $HID = "style='display:none'"; } else { $DIS = 'disabled'; } 拡張子:txtvbswsfjsphpjavahtmlutf8sjis # ********************************************************** # 処理コントロール # ********************************************************** switch( $_POST['GNO'] ) { # ヘッド部からの処理 case PASS_HEAD: if ( $_POST['ai'] != 'yes' ) { CheckDataHead( ); if ( $ErrMessage == "" ) { GetData( $SQL ); } else { $_POST['GNO'] = PASS_MESSAGE; } } break;
if ( $_POST['ai'] == 'yes' ) { $HID = "style='display:none'"; } else { $DIS = 'disabled'; }
# ********************************************************** # 処理コントロール # ********************************************************** switch( $_POST['GNO'] ) { # ヘッド部からの処理 case PASS_HEAD: if ( $_POST['ai'] != 'yes' ) { CheckDataHead( ); if ( $ErrMessage == "" ) { GetData( $SQL ); } else { $_POST['GNO'] = PASS_MESSAGE; } } break;
入力項目にキーが含まれているので、存在チェック用のクエリーの条件を変更し、 新規の場合に既に存在している場合をエラーにする 拡張子:txtvbswsfjsphpjavahtmlutf8sjis $Query = 'select * from ' . $Target; $Query .= ' where 学生CD = ' . Ss($_POST['In21']); $Query .= ' and 会社CD = ' . Ss($_POST['In22']); if ( $SQL->QueryEx( $Query ) ) { if ( $_POST['ai'] == 'yes' ) { $ErrMessage = '既に登録されています'; return FALSE; }
$Query = 'select * from ' . $Target; $Query .= ' where 学生CD = ' . Ss($_POST['In21']); $Query .= ' and 会社CD = ' . Ss($_POST['In22']); if ( $SQL->QueryEx( $Query ) ) { if ( $_POST['ai'] == 'yes' ) { $ErrMessage = '既に登録されています'; return FALSE; }