lugao 0 Denunciar post Postado Dezembro 12, 2007 boa tarde a todos, estou tentando inserir valores por um componente TQuery quando clico em um botao mas ta dando um erro: (Project DescInventario.exe raised exception class ENoResultSet with message "Error creating cursor handle". Process Stoped. Use Step or Run to continue) os comandos que estou usando sao: procedure TForm1.BitBtn5Click(Sender: TObject); begin spidinvent.ExecProc; quinsereproduto.Close; quinsereproduto.active:=false; quinsereproduto.sql.Clear; quinsereproduto.sql.Add('declare @maximo int'); quinsereproduto.sql.Add('set @maximo = (select max(iditminventario) from titminventario)'); quinsereproduto.sql.Add('insert titminventario'); quinsereproduto.sql.Add('select '+''''+'1'+''''+' ,'+''''+'U.01.02.05-1207'+''''+' ,idprd ,'+''''+'1'+''''+' ,'+''''+'02'+''''+' ,sum(quantidade),NULL ,NULL ,'+''''+'1'+''''+' ,'); quinsereproduto.sql.Add('NULL ,NULL ,NULL ,NULL ,NULL ,NULL ,min(id+@maximo) ,NULL'); quinsereproduto.sql.Add('from invent010782'); quinsereproduto.sql.Add('inner join tprdcodigo on invent010782.codigo = tprdcodigo.codigo'); quinsereproduto.sql.Add('group by idprd'); quinsereproduto.open; quinsereproduto.active:=true; end; sera que alguem pode me dar uma ajuda? obrigado Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Dezembro 12, 2007 No lugar de: quinsereproduto.open; quinsereproduto.active:=true; Tente trocar por: quinsereproduto.ExecSQL; Compartilhar este post Link para o post Compartilhar em outros sites
C_Pereira 0 Denunciar post Postado Dezembro 14, 2007 tente fazer assim pra ver se dar certo, talvez possa dar certo --Retire essa duas linhas abaixo -- tiere essa linha aqui por que você já ta fechando a query quinsereproduto.active:=false; --tire essa outra linha aqui por que você ja ta dando um open na query (quinsereproduto.active:=true); begin spidinvent.ExecProc; quinsereproduto.Close; quinsereproduto.sql.Clear; quinsereproduto.sql.Add('declare @maximo int'); quinsereproduto.sql.Add('set @maximo = (select max(iditminventario) from titminventario)'); quinsereproduto.sql.Add('insert titminventario'); quinsereproduto.sql.Add('select '+''''+'1'+''''+' ,'+''''+'U.01.02.05-1207'+''''+' ,idprd ,'+''''+'1'+''''+' ,'+''''+'02'+''''+' ,sum(quantidade),NULL ,NULL ,'+''''+'1'+''''+' ,'); quinsereproduto.sql.Add('NULL ,NULL ,NULL ,NULL ,NULL ,NULL ,min(id+@maximo) ,NULL'); quinsereproduto.sql.Add('from invent010782'); quinsereproduto.sql.Add('inner join tprdcodigo on invent010782.codigo = tprdcodigo.codigo'); quinsereproduto.sql.Add('group by idprd'); quinsereproduto.ExecSQL; quinsereproduto.open; end; Compartilhar este post Link para o post Compartilhar em outros sites
C_Pereira 0 Denunciar post Postado Dezembro 14, 2007 Amigo so uma pergunta . o que mesmo você quer fazer ? Compartilhar este post Link para o post Compartilhar em outros sites