| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
Artorius Novato

Registrado: Segunda-Feira, 20 de Fevereiro de 2017 Mensagens: 7
|
Enviada: Sáb Mai 06, 2017 10:06 am Assunto: Como chamar um dado que está no banco de dados. |
|
|
Estou fazendo um programa que tem que acessa um banco de dados. No banco tem informações dos pacientes. Eu tenho um dado Índice de massa corporal, IMC, (no banco ele está como 'decimal 3,1') se o IMC ficar entra uma valor X ele é automaticamente preenchido (TDBEdit) como normal, sobre peso e obesidade sendo que essa informações já estão no banco como enum.
if (qryPacienteIMC.AsFloat>=18.5) and (qryPacienteIMC.AsFloat<25) then dbeSobrepeso.Text:= qryPacienteSobrepeso.AsString; |
|
| Voltar ao Topo |
|
 |
johnny-walker Moderador


Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Sáb Mai 06, 2017 10:15 am Assunto: |
|
|
Pelo que vi aí, você chamou somente um tipo, terá de fazer isto para os outros tipos de peso conforme a nomenclatura e as faixas que você citou.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
| Voltar ao Topo |
|
 |
Artorius Novato

Registrado: Segunda-Feira, 20 de Fevereiro de 2017 Mensagens: 7
|
Enviada: Sáb Mai 06, 2017 10:21 am Assunto: |
|
|
| johnny-walker escreveu: | Pelo que vi aí, você chamou somente um tipo, terá de fazer isto para os outros tipos de peso conforme a nomenclatura e as faixas que você citou.
bye |
Sim sim, mas o codigo
dbeSobrepeso.Text:= qryPacienteSobrepeso.AsString
está errado ele nao roda e essa a minha duvida, o que tenho que fazer para ele captura essa informação. Eu sou aluno de farmacia estou tentando fazer uma calc para o lab que faço estagio. |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 10:25 am Assunto: |
|
|
Olá!
Além do que o Johnny-walker disse, penso também que você já está fazendo isto. Ou seja já está "chamando um dado que está no banco de dados".
Não é verdade? No momento que que o TDBEdit está recebendo o valor do objeto qryPaciente, não está "chamando um dado que está no banco de dados"? _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 10:27 am Assunto: |
|
|
Por causa da sua resposta, eu sugiro que você mostre o código. _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
Artorius Novato

Registrado: Segunda-Feira, 20 de Fevereiro de 2017 Mensagens: 7
|
Enviada: Sáb Mai 06, 2017 10:31 am Assunto: |
|
|
| conorte escreveu: | Olá!
Além do que o Johnny-walker disse, penso também que você já está fazendo isto. Ou seja já está "chamando um dado que está no banco de dados".
Não é verdade? No momento que que o TDBEdit está recebendo o valor do objeto qryPaciente, não está "chamando um dado que está no banco de dados"? |
Não está ele dá um erro. Eu sei que e algo de errado na linha de comando.
procedure TfCadastro.qryPacienteBeforeRefresh(DataSet: TDataSet);
begin
begin
qryPacienteSC.AsFloat:= sqrt((qryPacienteAltura.AsFloat)*(qryPacienteMassa.AsFloat)/3600);
qryPacienteIMC.AsFloat:= ((qryPacienteMassa.AsFloat)/((qryPacienteAltura.AsFloat/100)*(qryPacienteAltura.AsFloat/100)));
end;
begin
if (qryPacienteIMC.AsFloat>=1 and (qryPacienteIMC.AsFloat<25) then
// não sei o que fazer aqui para chamar o dado //
end;
end; |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 10:39 am Assunto: |
|
|
Olá!
Informe o erro também. Tudo o que estiver escrito no erro. _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
Artorius Novato

Registrado: Segunda-Feira, 20 de Fevereiro de 2017 Mensagens: 7
|
Enviada: Sáb Mai 06, 2017 10:59 am Assunto: |
|
|
| conorte escreveu: | Olá!
Informe o erro também. Tudo o que estiver escrito no erro. |
Projeto Hiperdia elevou classe exceção 'EDatabaseError' com a mensagem:
qryPaciente: Operation not allowed, dataset "%s" is not in an edit or insert state.
No endereço 10022A0B3 |
|
| Voltar ao Topo |
|
 |
johnny-walker Moderador


Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Sáb Mai 06, 2017 1:37 pm Assunto: |
|
|
Desabilite o HTML ao postar o código, pois assim está sendo colocado smiles no código e acaba atrapalhando a leitura e visualização.
Descreva direito o que você quer, com os campos da tabela e o que você quer acessar, junto com os componentes de acesso, assim o pessoal monta o código e fica mais fácil esclarecer sua dúvida. Admito que até o momento não tinha compreendido sua dúvida, já que não foi expresso o erro que está acontecendo.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 3:58 pm Assunto: |
|
|
Olá!
Fiz um suporte remoto pra ajudar o amigo.
Ele não usa Delphi. A princípio achei que fosse com o Lazarus, mas apesar dele também usar Lazarus ele está usando um outro que deve ser alguma distribuição do Lazarus ou algo assim.
Não sei direito o nome mas o ícone é o desenho de um furacão azul.
Tentamos de várias maneiras e no fim fizemos algo simples. Na saída de um TDBedit ele executa um comando sql para atualizar um campo no banco. _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
johnny-walker Moderador


Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Sáb Mai 06, 2017 6:52 pm Assunto: |
|
|
interessante, não sabia que havia outras IDE baseadas no Lazarus.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 7:11 pm Assunto: |
|
|
Veja umas imagens.
 _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 7:22 pm Assunto: |
|
|
Veja umas imagens.
 _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 7:30 pm Assunto: |
|
|
 _________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
conorte Experiente


Registrado: Quinta-Feira, 8 de Mai de 2014 Mensagens: 406 Localização: Porto Alegre/RS
|
Enviada: Sáb Mai 06, 2017 7:46 pm Assunto: |
|
|
Ficamos algumas horas ... ele disse que já estava a dois meses nestes problemas ... e que estava acordado desde as cinco da manhã ... ele é lá da região da Amazônia ... é farmacêutico e não manja muito de programação ... mas fico pensando ... imagine se manjasse ... pois as ideias dele e as interfaces são muito interessantes ...
... mas na verdade, esta solução não vai dar certo. Depois que você postou pedindo pra ele desabilitar o html, que eu parei um pouco pra pensar e notei o erro. Então informei ele por email:
| Citação: | Artur,
me lembrei de algo agora.
Não está correto fazer aquele update.
Se fizer assim vai atualizar todos os outros campos.
O UPDATE tem que ser assim:
UPDATE PACIENTE SET CLASSIFICAÇÃO = 'NORMAL' WHERE código_do_paciente = 10,
por exemplo.
Como dava erro quando o dbedit recebia o valor então tente usar quando apertar o botão de gravar. Ou seja, coloque aquele código no botão de gravar.
|
_________________ Luciano Moraes
1º curso de Pascal em 1998. |
|
| Voltar ao Topo |
|
 |
|