Jump to content

Erro 'sql statement doesn't return rows' ao fechar tela com produtos apagados


Carlos1234

Postagens Recomendadas

Olá pessoal da Casa do Desenvolvedor! 😊

Gostaria de pedir ajuda para solucionar um problema com uma mensagem de erro: "sql statement doesn't return rows". Estou utilizando o Postgres PGAdmin e o Delphi 7.

A situação é a seguinte: após limpar ou apagar os produtos da grid e, posteriormente, ao pressionar as teclas Alt e F4 para fechar a tela, essa mensagem de erro é exibida. Estou enfrentando dificuldades para encontrar uma solução para esse problema.

Agradeço muito se alguém puder me orientar.

Link to comment
Compartilhe em outros sites

  • Douglas Garcia mudou o título para Erro 'sql statement doesn't return rows' ao fechar tela com produtos apagados

Carlos,

sobre esse erro, nem todas as vezes o seu dataset retorna informação, então no dataset q deu o erro tente verificar se o mesmo esta ativo antes de testar se tem registros. Por exemplo, após comandos de insert, update e delete não da pra ficar testando a quantidade de registros retornados, já após select sim.

Outra coisa, é bem complicado conseguir responder todos o erros que vc tem tido no seu PDV.

Pelo que entendi vc tá começando a aprender desenvolvimento, uma sugestão que posso te dar é assistir algum curso mais focado em PDV, que ensine o passo a passo, tem algumas opções gratuitas na internet.

  • Curtir 1
Link to comment
Compartilhe em outros sites

Em 22/08/2023 at 17:53, Carlos1234 disse:

boa tarde Gobert.junior ! te agradeço por responder e por ter me ajudado no outro problema do passado.

eu vou fazer esse teste que tu ta me dizendo sobre os registros.

boa tarde ! ta dificil resolver este problema de mensagem 

sql statement doesn't return rows. no delphi 7

Link to comment
Compartilhe em outros sites

SQL comandos como: INSERT, UPDATE e DELETE (assim como comandos que alteram a estrutura do arquivo do DB, ou seja, comandos DDL (Data Definition Language) = Create, Alter, etc...) não retornam linhas (rows), então você não pode utiliza-los no "componente Query" (por exemplo) como se fosse executar um "Select".

Este comandos deveriam ser executados com "ExecSQL" , por exemplo:

  • Para enviar  comando DDL ao database, prefira usar os componentes adequados, e deixar o FDQuery ou similar, para os seus "Selects".
  • Apesar de (no FireDAC) você poder utilizar muitos (dos mesmos) componentes para enviar DDL ou DML (Data Manipulation Language) para o banco de dados!
    • FDConnection1.ExecSQL('drop table testtab');

    • FDConnection1.ExecSQL('create table testtab (id integer, name varchar(10))');

    • FDConnection1.ExecSQL('insert into testtab values (1, ''FireDAC'')');

RAD Studio Help examplo:

// standard parameterized SQL execution
FDQuery1.SQL.Text := 'insert into mytab values (:id, :name)';
FDQuery1.Params[0].AsInteger := 100;
FDQuery1.Params[0].AsString := 'qwe';
FDQuery1.ExecSQL;

// avoid [FireDAC][Phys]-310
FDQuery1.SQL.Clear;
FDQuery1.SQL.Add('SELECT f1 INTO @v1 FROM myTab1 WHERE ...;');
FDQuery1.SQL.Add('INSERT INTO myTab2 VALUES (@v1 + 1, ...)');
FDQuery1.Command.CommandKind := skInsert;
FDQuery1.ExecSQL;

E, para um "SELECT" você deveria usar "FDQuery1.OPEN".

Este, sim, retorna linhas (rows) de dados para o requerente!

Editado por backupnumberum
  • Curtir 1
Link to comment
Compartilhe em outros sites

Em 30/08/2023 at 16:02, gobeti.junior disse:

Tenta fazer um vídeo debugando e mostrando exatamente como o erro ocorre.
Talvez olhando pelo vídeo da pra entender melhor.

esse erro ele acontece é depois que eu finalizo a venda e clico em imprimir a nota fiscal. depois que imprimi a nota fiscal volta pra tela do pdv de vendas. quando aperto as teclas alt e f4 juntos pra fechar a tela de vendas  é que da essa mensagem sql statement does not return rows. e quanto ao vídeo gravei um fazer este procedimento de tamanho 1,41 mb mas o site aqui da casa do desenvolvedor nao ta aceitando talvez pelo formato ou pelo tamanho do video.  tu pode me passar o teu email ?

Editado por Carlos1234
Link to comment
Compartilhe em outros sites

Em 30/08/2023 at 16:02, gobeti.junior disse:

Tenta fazer um vídeo debugando e mostrando exatamente como o erro ocorre.
Talvez olhando pelo vídeo da pra entender melhor.

obrigado a todos da casa do desenvolvedor que me ajudaram ou tentaram me ajudar a resolver este problema de mensagem sql statement does not return rows. gracas ao SR Deus e depois a um colaborador que me ajudou a resolver este problema.

  • Curtir 1
  • Amei 1
Link to comment
Compartilhe em outros sites

Crie uma conta ou entre para comentar 😀

Você precisa ser um membro para deixar um comentário.

Crie a sua conta

Participe da nossa comunidade, crie sua conta.
É bem rápido!

Criar minha conta agora

Entrar

Você já tem uma conta?
Faça o login agora.

Entrar agora
×
×
  • Create New...