Fórum ENoResultSet - Error creating cursor handle #258945
18/11/2004
0
Se alguém puder me dar uma luz eu agradeço.
Sabrina :D
Fellyne
Curtir tópico
+ 0Posts
18/11/2004
Bruno_fantin
Gostei + 0
18/11/2004
Emerson Nascimento
se for, não utilize OPEN. open deve ser utilizado quando há retorno de registros (resultset). no seu caso deve ser ExecSQL ou Execute. depende do componente utilizado.
Gostei + 0
19/11/2004
Fellyne
var
CodCG:String;
CGen,CSub,CC1,CC2,CC3,CC4,CC5:String;
C_Gen_Aux:Integer;
qryNRegistros: TQuery;
begin
if MessageDlg(´Deseja realmente remover a Classe Genérica ?´, mtConfirmation, [mbYes, mbNo], 0) = mrNo then
begin
Abort;
Screen.Cursor := crDefault;
end
else
begin
CodCG :=FrmDtM.TblClasse_gen.FieldByName(´Cod_Gen_Classe´).AsString;
qryNRegistros := TQuery.Create(Screen.ActiveForm);
qryNRegistros.DatabaseName := ´Museu´;
qryNRegistros.SQL.Clear;
consulta := ´SELECT Cod_Gen_Classe ´
+ ´FROM Clas_Sub Where Cod_Gen_Classe = ´´´
+ CodCG + ´´´ ORDER BY Cod_Gen_Classe´;
qryNRegistros.SQL.Add(consulta);
qryNRegistros.Open;
if (qryNRegistros.recordcount = 0) then
begin
FrmDtm.TblClasse_gen.Locate(´Cod_Gen_Classe´,CodCG,[loCaseInsensitive]);
FrmDtm.TblClasse_gen.Delete; //linha onde gera a mensagem de erro
FrmDtm.TblClasse_gen.Close;
FrmDtm.TblClasse_gen.Open;
//Screen.Cursor := crDefault;
exit;
end
else
begin
if (qryNRegistros.Recordcount > 0) then
begin
showMessage(´Esta Classe Genérica possui uma(s) Sub Classe(s).´+chr(13)+´Exclua a(s) Sub Classe(s) relacionada(s) e´+chr(13)+´depois exclua a Classe Genérica.´+chr(13)+´Classe relacionada:´+CSub);
exit;
end;
end;
end;
end;
Gostei + 0
19/11/2004
Fellyne
Grata pela colaboração! :D :D :D :D e aí vai o código:
If MessageBox(Handle, ´Tem certeza que deseja excluir esta Classe Genérica?´, ´Confirmar Exclusão de Classe Genérica´, Mb_YesNo + Mb_IconQuestion + Mb_DefButton2) = IdYes Then begin CodCG :=FrmDtM.TblClasse_gen.FieldByName(´Cod_Gen_Classe´).AsString; qryNRegistros := TQuery.Create(Screen.ActiveForm); qryNRegistros.DatabaseName := ´Museu´; qryNRegistros.SQL.Clear; consulta := ´SELECT Cod_Gen_Classe ´ + ´FROM Clas_Sub Where Cod_Gen_Classe = ´´´ + CodCG + ´´´ ORDER BY Cod_Gen_Classe´; qryNRegistros.SQL.Add(consulta); qryNRegistros.Open; if (qryNRegistros.recordcount = 0) then begin qryNRegistros := TQuery.Create(Screen.ActiveForm); qryNRegistros.DatabaseName := ´Museu´; qryNRegistros.SQL.Clear; del := ´DELETE ´ + ´FROM Clas_Gen Where Cod_Gen_Classe = ´´´ + CodCG + ´´´ ´; qryNRegistros.SQL.Add(del); qryNRegistros.ExecSQL; FrmDtm.TblClasse_gen.Close; FrmDtm.TblClasse_gen.Open; exit; end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)