Project Korm03pe.exe raised exception class EDatabaseError with message'Query2:
Cannot perform this operation on a closed dataset'. Porcess stopped. Use Step or
Run to continue.
위와 같은 에러가 나는데요..
무슨문제가 있는것인지... 여러 텍스트박스에 데이타들을 채워넣고 저장버튼을 눌러 데이터를 update시켜주는데서 이런 에러가 나는데요...
소스가.... 아래와 같은데요....
뭐가문제인지... ㅜ.ㅜ 아시는분 도움좀 주세요~ 감사함다~
procedure TForm1.BtnPostClick(Sender: TObject);
Var L1 : String;
begin
If
MessageDlg('☞ 수정된 내용을 저장하시겠습니까?...',mtConfirmation, [mbYes, mbNo], 0) = mrYes Then
begin
With UPDATE_QRY Do
Begin
ParamByName('S1').AsString := eITEM.Text;
ParamByName('S2').AsString := eNAME.Text;
ParamByName('S3').AsString := eTEL.Text;
ParamByName('S4').AsString := eADDR.Text;
ParamByName('S5').AsString := eTOUR.Text;
ParamByName('S6').AsString := ePARK.Text;
ParamByName('S7').AsString := eOPEN_MSSG1.Text;
ParamByName('S8').AsString := eOPEN_MSSG2.Text;
ParamByName('S9').AsString := eOPEN_MSSG3.Text;
ParamByName('S10').AsString := eOPEN_MSSG4.Text;
ParamByName('S11').AsString := eREMARK1.Text;
ParamByName('S12').AsString := eREMARK2.Text;
ParamByName('S13').AsString := eREMARK3.Text;
ParamByName('S14').AsString := eREMARK4.Text;
ParamByName('S15').AsString := eURL.Text;
ParamByName('F1').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
ExecSql;
END;
// PostTable.Refresh;
L1 := Query2.FieldByName('LAYER_ITEM').AsString;
{ L2 := Query2.FieldByName('LAYER_ITEM').AsString; }
//@@@
// L3 := Query2.FieldByName('CDNAME1').AsString;
User_MOpen(11);
With Query2 Do
Locate('LAYER_ITEM', VarArrayOf([L1]), [loPartialKey]);
panel3.enabled := true;
panel4.enabled := False;
BtnPost.Enabled := False;
BtnCancel.Enabled := False;
Dbgrid1.SetFocus;
end
else
With UPDATE_QRY Do
Begin
ParamByName('S1').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
ParamByName('S2').AsString := Query2.FieldByName('ITEM_NAME').AsString;
ParamByName('S3').AsString := Query2.FieldByName('ITEM_TEL').AsString;
ParamByName('S4').AsString := Query2.FieldByName('ITEM_ADDRESS').AsString;
ParamByName('S5').AsString := Query2.FieldByName('ITEM_TOUR').AsString;
ParamByName('S6').AsString := Query2.FieldByName('ITEM_PARKING').AsString;
ParamByName('S7').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_1').AsString;
ParamByName('S8').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_2').AsString;
ParamByName('S9').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_3').AsString;
ParamByName('S10').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_4').AsString;
ParamByName('S11').AsString := Query2.FieldByName('ITEM_REMARK_1').AsString;
ParamByName('S12').AsString := Query2.FieldByName('ITEM_REMARK_2').AsString;
ParamByName('S13').AsString := Query2.FieldByName('ITEM_REMARK_3').AsString;
ParamByName('S14').AsString := Query2.FieldByName('ITEM_REMARK_4').AsString;
ParamByName('S15').AsString := Query2.FieldByName('ITEM_URL').AsString;
ParamByName('F1').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
// ParamByName('F2').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
ExecSql;
L1 := Query2.FieldByName('LAYER_ITEM').AsString;
// L2 := Query2.FieldByName('LAYER_ITEM').AsString;
// L3 := Query2.FieldByName('CDNAME1').AsString;
User_MOpen(11);
With Query2 Do
Locate('LAYER_ITEM', VarArrayOf([L1]), [loPartialKey]);
panel3.enabled := true;
panel4.enabled := false;
BtnPost.Enabled := false;
BtnCancel.Enabled := false;
Dbgrid1.SetFocus;
end;
end;
짱아 wrote:
> Project Korm03pe.exe raised exception class EDatabaseError with message'Query2:
> Cannot perform this operation on a closed dataset'. Porcess stopped. Use Step or
> Run to continue.
>
> 위와 같은 에러가 나는데요..
> 무슨문제가 있는것인지... 여러 텍스트박스에 데이타들을 채워넣고 저장버튼을 눌러 데이터를 update시켜주는데서 이런 에러가 나는데요...
> 소스가.... 아래와 같은데요....
> 뭐가문제인지... ㅜ.ㅜ 아시는분 도움좀 주세요~ 감사함다~
>
> procedure TForm1.BtnPostClick(Sender: TObject);
> Var L1 : String;
> begin
> If
> MessageDlg('☞ 수정된 내용을 저장하시겠습니까?...',mtConfirmation, [mbYes, mbNo], 0) = mrYes Then
> begin
> With UPDATE_QRY Do
> Begin
> ParamByName('S1').AsString := eITEM.Text;
> ParamByName('S2').AsString := eNAME.Text;
> ParamByName('S3').AsString := eTEL.Text;
> ParamByName('S4').AsString := eADDR.Text;
> ParamByName('S5').AsString := eTOUR.Text;
> ParamByName('S6').AsString := ePARK.Text;
> ParamByName('S7').AsString := eOPEN_MSSG1.Text;
> ParamByName('S8').AsString := eOPEN_MSSG2.Text;
> ParamByName('S9').AsString := eOPEN_MSSG3.Text;
> ParamByName('S10').AsString := eOPEN_MSSG4.Text;
> ParamByName('S11').AsString := eREMARK1.Text;
> ParamByName('S12').AsString := eREMARK2.Text;
> ParamByName('S13').AsString := eREMARK3.Text;
> ParamByName('S14').AsString := eREMARK4.Text;
> ParamByName('S15').AsString := eURL.Text;
> ParamByName('F1').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
> ExecSql;
> END;
> // PostTable.Refresh;
> L1 := Query2.FieldByName('LAYER_ITEM').AsString;
> { L2 := Query2.FieldByName('LAYER_ITEM').AsString; }
> //@@@
> // L3 := Query2.FieldByName('CDNAME1').AsString;
> User_MOpen(11);
>
> With Query2 Do
> Locate('LAYER_ITEM', VarArrayOf([L1]), [loPartialKey]);
> panel3.enabled := true;
> panel4.enabled := False;
> BtnPost.Enabled := False;
> BtnCancel.Enabled := False;
> Dbgrid1.SetFocus;
> end
> else
> With UPDATE_QRY Do
> Begin
> ParamByName('S1').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
> ParamByName('S2').AsString := Query2.FieldByName('ITEM_NAME').AsString;
> ParamByName('S3').AsString := Query2.FieldByName('ITEM_TEL').AsString;
> ParamByName('S4').AsString := Query2.FieldByName('ITEM_ADDRESS').AsString;
> ParamByName('S5').AsString := Query2.FieldByName('ITEM_TOUR').AsString;
> ParamByName('S6').AsString := Query2.FieldByName('ITEM_PARKING').AsString;
> ParamByName('S7').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_1').AsString;
> ParamByName('S8').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_2').AsString;
> ParamByName('S9').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_3').AsString;
> ParamByName('S10').AsString := Query2.FieldByName('ITEM_OPEN_MSSG_4').AsString;
> ParamByName('S11').AsString := Query2.FieldByName('ITEM_REMARK_1').AsString;
> ParamByName('S12').AsString := Query2.FieldByName('ITEM_REMARK_2').AsString;
> ParamByName('S13').AsString := Query2.FieldByName('ITEM_REMARK_3').AsString;
> ParamByName('S14').AsString := Query2.FieldByName('ITEM_REMARK_4').AsString;
> ParamByName('S15').AsString := Query2.FieldByName('ITEM_URL').AsString;
> ParamByName('F1').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
> // ParamByName('F2').AsString := Query2.FieldByName('LAYER_ITEM').AsString;
> ExecSql;
> L1 := Query2.FieldByName('LAYER_ITEM').AsString;
> // L2 := Query2.FieldByName('LAYER_ITEM').AsString;
> // L3 := Query2.FieldByName('CDNAME1').AsString;
> User_MOpen(11);
>
> With Query2 Do
> Locate('LAYER_ITEM', VarArrayOf([L1]), [loPartialKey]);
> panel3.enabled := true;
> panel4.enabled := false;
> BtnPost.Enabled := false;
> BtnCancel.Enabled := false;
> Dbgrid1.SetFocus;
> end;
> end;
>