sql statement doesnt return rows
Pessoal preciso muito da ajuda d vcs
eu coloco este comando:
With dmDados.qryMaterial do
Begin
Close;
Sql.clear;
Sql.add('UPDATE MAN_TAB_MATERIAL SET');
SQL.ADD('ESTOQUE = ESTOQUE + '+floattostr(dmDados.qryItemsICMS1.value));
SQL.ADD('WHERE CODIGO = '+inttostr(Jig));
Clipboard.AsText := SQL.Text;
ExecSQL;
dmDados.qryItems.Next;
end;
dmdados.IBCTransaction1.CommitRetaining;
funciona perfeitamente, mas qdo eu abro a tabela de material
aparece essa mensagem: 'sql statement doesn't return rows'
ai eu tenho q reeiniciar o sistema p poder abrir,
alguem pode me ajudar?
fico muito agradecido
eu coloco este comando:
With dmDados.qryMaterial do
Begin
Close;
Sql.clear;
Sql.add('UPDATE MAN_TAB_MATERIAL SET');
SQL.ADD('ESTOQUE = ESTOQUE + '+floattostr(dmDados.qryItemsICMS1.value));
SQL.ADD('WHERE CODIGO = '+inttostr(Jig));
Clipboard.AsText := SQL.Text;
ExecSQL;
dmDados.qryItems.Next;
end;
dmdados.IBCTransaction1.CommitRetaining;
funciona perfeitamente, mas qdo eu abro a tabela de material
aparece essa mensagem: 'sql statement doesn't return rows'
ai eu tenho q reeiniciar o sistema p poder abrir,
alguem pode me ajudar?
fico muito agradecido
Paulo Borges
Curtidas 0
Melhor post
Raimundo Pereira
06/09/2016
Ao iniciar uma nova venda.
dmDados.qryMaterial.close
dmDados.qryMaterial.sql.clear;
dmDados.qryMaterial.sql.text:='select * from suatabeladematerial';
Ai sim você pode realizar o open
dmDados.qryMaterial.open;
Pois, ao realizar o update ficaram resíduos e ao tentar abrir o dmDados.qryMaterial.sql que tem lá está o update
se quiser conferir pode realizar o showmessa(dmDados.qryMaterial.sql.text);
ele retornará os dados do update.
dmDados.qryMaterial.close
dmDados.qryMaterial.sql.clear;
dmDados.qryMaterial.sql.text:='select * from suatabeladematerial';
Ai sim você pode realizar o open
dmDados.qryMaterial.open;
Pois, ao realizar o update ficaram resíduos e ao tentar abrir o dmDados.qryMaterial.sql que tem lá está o update
se quiser conferir pode realizar o showmessa(dmDados.qryMaterial.sql.text);
ele retornará os dados do update.
GOSTEI 2
Mais Respostas
Paulo Borges
06/09/2016
e ai turma me ajudem, vlw
GOSTEI 0
Paulo Borges
06/09/2016
pq eu dou um update e
nao consigo abrir a tabela de material?
aparacendo esta mensagem?
nao consigo abrir a tabela de material?
aparacendo esta mensagem?
GOSTEI 0
Luiz Santos
06/09/2016
Paulo, tem como você passar mais detalhes?
Por exemplo, o banco que está usando.
Você diz que funciona.
Será que funciona mesmo, ou simplesmente não da erro?
Já tentou verificar como está sendo montada a sua stringSQL?
Abs
Por exemplo, o banco que está usando.
Você diz que funciona.
Será que funciona mesmo, ou simplesmente não da erro?
Já tentou verificar como está sendo montada a sua stringSQL?
Abs
GOSTEI 1
Raimundo Pereira
06/09/2016
Brother,
Este erro acontece após usar "Open" em uma query,sustende-se que irá retornar registros, como se fosse um "select" por exemplo.
No caso do "Update" não é retornado nenhum registro, apenas é enviado ao banco um comando de atualização.
Debug o seu código e verifique se não está realizando um open após realizar ExecSQL;
Caso precise realizar o open deverá limpar o Sql anterior que é referente ao update.
Se for isso que ocorreu,espero que ajude.
Posta o feed back ai.
Abrç
Este erro acontece após usar "Open" em uma query,sustende-se que irá retornar registros, como se fosse um "select" por exemplo.
No caso do "Update" não é retornado nenhum registro, apenas é enviado ao banco um comando de atualização.
Debug o seu código e verifique se não está realizando um open após realizar ExecSQL;
Caso precise realizar o open deverá limpar o Sql anterior que é referente ao update.
Se for isso que ocorreu,espero que ajude.
Posta o feed back ai.
Abrç
GOSTEI 1
Paulo Borges
06/09/2016
eu estou usando firebird 2.1,
o update funciona na tabela material,
ai eu vou fazer outra venda, (pq abre a tabela material)
e aparece este erro.
ai se quiser usar esta tabela eu tenho q fechar o sistema e abrir de
novo.
o update funciona na tabela material,
ai eu vou fazer outra venda, (pq abre a tabela material)
e aparece este erro.
ai se quiser usar esta tabela eu tenho q fechar o sistema e abrir de
novo.
GOSTEI 0
Paulo Borges
06/09/2016
este é o comando:
With dmDados.qryMaterial do
Begin
Close;
Sql.clear;
Sql.add('UPDATE MAN_TAB_MATERIAL SET');
SQL.ADD('ESTOQUE = ESTOQUE + '+floattostr(dmDados.qryItemsICMS1.value));
SQL.ADD('WHERE CODIGO = '+inttostr(Jig));
ExecSQL;
end;
With dmDados.qryMaterial do
Begin
Close;
Sql.clear;
Sql.add('UPDATE MAN_TAB_MATERIAL SET');
SQL.ADD('ESTOQUE = ESTOQUE + '+floattostr(dmDados.qryItemsICMS1.value));
SQL.ADD('WHERE CODIGO = '+inttostr(Jig));
ExecSQL;
end;
GOSTEI 0
Raimundo Pereira
06/09/2016
Paulo,
Veja isso
ai eu vou fazer outra venda, (pq abre a tabela material)
e aparece este erro.
ai se quiser usar esta tabela eu tenho q fechar o sistema e abrir.
Mais anteriormente você realizou um update.
Porém ficou resíduos do update.
With dmDados.qryMaterial do
Begin
Close;
Sql.clear;
Sql.add('UPDATE MAN_TAB_MATERIAL SET');
SQL.ADD('ESTOQUE = ESTOQUE + '+floattostr(dmDados.qryItemsICMS1.value));
SQL.ADD('WHERE CODIGO = '+inttostr(Jig));
Clipboard.AsText := SQL.Text;
Ai você tenta realizar um open, ao tentar fazer nova venda, ele vai apresentar o erro.
ao realizar nova venda você deve
dmDados.qryMaterial.close;
dmDados.qryMaterial.sql.clear;
dmDados.qryMaterial.sql.text:='select * from suatabela de material';
ai sim você realiza o open
dmDados.qryMaterial.open;
Veja isso
ai eu vou fazer outra venda, (pq abre a tabela material)
e aparece este erro.
ai se quiser usar esta tabela eu tenho q fechar o sistema e abrir.
Mais anteriormente você realizou um update.
Porém ficou resíduos do update.
With dmDados.qryMaterial do
Begin
Close;
Sql.clear;
Sql.add('UPDATE MAN_TAB_MATERIAL SET');
SQL.ADD('ESTOQUE = ESTOQUE + '+floattostr(dmDados.qryItemsICMS1.value));
SQL.ADD('WHERE CODIGO = '+inttostr(Jig));
Clipboard.AsText := SQL.Text;
Ai você tenta realizar um open, ao tentar fazer nova venda, ele vai apresentar o erro.
ao realizar nova venda você deve
dmDados.qryMaterial.close;
dmDados.qryMaterial.sql.clear;
dmDados.qryMaterial.sql.text:='select * from suatabela de material';
ai sim você realiza o open
dmDados.qryMaterial.open;
GOSTEI 0
Paulo Borges
06/09/2016
Amigo, agora sim, funcionou perfeitamente,
muito obrigado. valeu mesmo, ótimo
muito obrigado. valeu mesmo, ótimo
GOSTEI 0