Fórum Indicar baixa (era: Preciso de ajuda para terminar....) #347768
23/10/2007
0
Estou terminando um projeto de Auto Escola, então coloquei estes campos:
para que quando a cnh chegue o usuário vai lá e seleciona o radiobox (CNHENTREGUE) e coloque os dados da cnh, fiz dessa maneira:
procedure Tfrmalunos.RdbEntClick(Sender: TObject); begin inherited; If RdbEnt.Checked Then TxtNom.Font.Color:= clred; If RdbEnt.Checked Then TxtMat.Font.Color:= clred; end;
O erro é que ná hora que eu retorno os dados tudo ok, mas se eu efetuo outra consulta o usuário que não está com a cnh baixada ele aparece como baixado, Por exemplo o nome fica em vermelho!
Como posso resolver esse problema?
Robinhocne
Curtir tópico
+ 0Posts
23/10/2007
Jeimyson
para que quando a cnh chegue o usuário vai lá e seleciona o radiobox (CNHENTREGUE) e coloque os dados da cnh, fiz dessa maneira:
procedure Tfrmalunos.RdbEntClick(Sender: TObject); begin inherited; If RdbEnt.Checked Then TxtNom.Font.Color:= clred; If RdbEnt.Checked Then TxtMat.Font.Color:= clred; end;
O erro é que ná hora que eu retorno os dados tudo ok, mas se eu efetuo outra consulta o usuário que não está com a cnh baixada ele aparece como baixado, Por exemplo o nome fica em vermelho!
Como posso resolver esse problema?[/quote:086538c25b]
Quando refizer a consulta verifique se a nova CNH consultada ja foi entregue, se nao foi faz o inverso do que ta fazendo, pinta de ´Black´.
8)
_________________________________________________________
[size=14:086538c25b][b:086538c25b]Jeimyson de O. Souza[/b:086538c25b][/size:086538c25b]
[size=10:086538c25b][color=blue:086538c25b]Analista e Desenvolvedor[/color:086538c25b][/size:086538c25b]
[size=10:086538c25b][color=darkred:086538c25b][i:086538c25b]´Só erra quem é capaz de fazer, pois o sucesso chega para quem ousou tentar!´[/i:086538c25b][/color:086538c25b][/size:086538c25b]
Gostei + 0
23/10/2007
Robinhocne
Eu uso esses dados para fazer as consultas:
procedure Tfrmalunos.spbpesClick(Sender: TObject); begin with vcpo do begin clear; add (´Codigo´); add (´Nome´); add (´Cpf´); add (´Processo´); end; with vvlr do begin clear; add (´Codigo´); add (´Nome´); add (´Cpf´); add (´Processo´); end; with tfrmpesquisa.create (application) do begin try tabela := ´alunos´; camporetorno := ´codigo´; showmodal; finally free; end; end; if (retorno<> ´´) then begin inherited; LeRegistro(); TxtMat.Text := StrZero( StrToFloat( TxtMat.Text ), 6 ); ContaAulasCarro; ContaAulasMoto; RdbBaixa.Enabled := True; TxtDat.Enabled := False; TxtDtEnt.Enabled := False; TxtAr.Enabled := False; TxtReg.Enabled := False; TxtVen.Enabled := False; TxtCate.Enabled := False; end; end;
E uma Procedure, para retornar os dados:
procedure Tfrmalunos.leregistro; begin Consultaregistros(´Alunos´, ´Codigo, DtCadastro, Servicos, Categoria, Nome, Rg, Uf_Rg, Emissor,´ + ´Cpf, Cnh, Cnh_Cat, Dt_Nascimento, Naturalidade, Uf_Natu, Pai, Mae, Residencial,Telefone,´ + ´Celular,Contato, Cidade, Cep, Uf_Cid, Endereco, Numero, Bairro, Complemento,´ + ´Processo, Dt_Abe, Dt_Venc, Dt_Emi, Lic_Apren, Observacoes, CnhEntregue, DtEntregue, Ar,´ + ´Registro, Venc_Cnh, Cat´,´Codigo =´ + Retorno); TxtMat.text := Ledados (´Codigo´) ; TxtDat.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´DtCadastro´)); RdbHab.Checked := ( LeDados( ´Servicos´ ) = 1 ); RdBalt.Checked := ( LeDados( ´Servicos´ ) = 2 ); RdbRen.Checked := ( LeDados( ´Servicos´ ) = 3 ); TxtCth.Text := LeDados (´Categoria´); TxtNom.text := LeDados (´Nome´); TxtRg.text := LeDados (´Rg´); TxtUf2.text := LeDados (´Uf_Rg´); CboOrg.text := LeDados (´Emissor´); TxtCpf.Text := StrZero (LeDados (´Cpf´), 11); TxtCat.Text := LeDados (´Cnh´); TxtCat.Text := LeDados (´Cnh_Cat´); TxtNas.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Nascimento´)); TxtNat.Text := LeDados (´Naturalidade´); TxtUf1.Text := LeDados (´Uf_Natu´); TxtPai.Text := LeDados (´Pai´); TxtMae.Text := LeDados (´Mae´); TxtRes.Text := LeDados (´Residencial´); TxtTel.Text := LeDados (´Telefone´); TxtCel.Text := LeDados (´Celular´); TxtCon.Text := LeDados (´Contato´); TxtCodCid.Text := LeDados (´Cidade´); TxtCep.Text := LeDados (´Cep´); TxtUf.text := LeDados (´Uf_Cid´); TxtEnd.Text := LeDados (´Endereco´); TxtNum.Text := LeDados (´Numero´); TxtBai.Text := LeDados (´Bairro´); TxtCom.Text := LeDados (´Complemento´); TxtProc.text := LeDados (´Processo´); TxtAbe.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Abe´)); TxtVenc.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Venc´)); TxtEmi.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Emi´)); TxtLa.Text := LeDados (´Lic_Apren´); MemObs.Text := LeDados (´Observacoes´); RdbEnt.Checked := LeDados( ´CnhEntregue´ ); TxtDtEnt.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´DtEntregue´)); TxtAr.Text := LeDados (´Ar´); TxtReg.Text := LeDados (´Registro´); TxtVen.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Venc_Cnh´)); TxtCate.Text := LeDados (´Cat´);
Eu fazeria isso Onde e como?
Mais uma questão que esqueci de citar, gostaria de que os alunos baixados na hora da consulta que mostra os alunos mostrasse o que esta baixado em vermelho como foi salvo!
Gostei + 0
23/10/2007
Jeimyson
A lógica é a seguinte:
Ao carregar os dados do ´Proprietario da CNH´ verifique se existe a carteira entregue na tabela que criou, se existir, vc ja carrega os dados em vermelho como fez. Caso nao exista, carregue como Preto.
Dai no evento click do Componente, você apenas trata se ele clicar em entregue muda pra vermelho, se clicar em nao entregue muda pra preto.
E ai quando gravar, ja grava com a ultima situação da carteira selecionada pelo usuario.
:D
________________________________________________________
[size=14:5fb8f94ebd][b:5fb8f94ebd]Jeimyson de O. Souza[/b:5fb8f94ebd][/size:5fb8f94ebd]
[size=10:5fb8f94ebd][color=blue:5fb8f94ebd]Analista e Desenvolvedor[/color:5fb8f94ebd][/size:5fb8f94ebd]
[size=10:5fb8f94ebd][color=darkred:5fb8f94ebd][i:5fb8f94ebd]´Só erra quem é capaz de fazer, pois o sucesso chega para quem ousou tentar!´[/i:5fb8f94ebd][/color:5fb8f94ebd][/size:5fb8f94ebd]
Gostei + 0
23/10/2007
Robinhocne
Eu não tenho uma tabela denominada para isso, apenas acrescentei na propria tabela de Alunos.
Por isso que para min tá sendo conplicado!
Gostei + 0
24/10/2007
Facc
vc tem algum campo que ´diz´ que a CNH foi entregue? Caso tenha, qndo realizar a busca faça uma verificação se está marcado e pinta, caso contrario não...
Gostei + 0
24/10/2007
Robinhocne
Tenho, eu uso um RadioBox, o nome do campo na tabela é CnhEntregue (1,0), então 1 = para baixado e 0 = para não baixado, fiz dessa maneira, mas como eu faço o resto:
procedure Tfrmalunos.RdbEntClick(Sender: TObject); begin inherited; If RdbEnt.Checked Then TxtNom.Font.Color:= clred; If RdbEnt.Checked Then TxtMat.Font.Color:= clred; end
Gostei + 0
24/10/2007
Jeimyson
Tenho, eu uso um RadioBox, o nome do campo na tabela é CnhEntregue (1,0), então 1 = para baixado e 0 = para não baixado, fiz dessa maneira, mas como eu faço o resto:
procedure Tfrmalunos.RdbEntClick(Sender: TObject); begin inherited; If RdbEnt.Checked Then TxtNom.Font.Color:= clred; If RdbEnt.Checked Then TxtMat.Font.Color:= clred; end
Brother...
No evento On Click do seu RadioBox faz somente o seguinte:
procedure TForm1.RdbEntClick(Sender: TObject); begin inherited; if RdbEnt.Checked then begin TxtNom.Font.Color:= clred; TxtMat.Font.Color:= clred; end else begin TxtNom.Font.Color:= clBlack; TxtMat.Font.Color:= clBlack; end; end;
Dai onde vc carrega os dados do ´Proprietario da CNH´ vc faz o seguinte:
- Verifica se o campo <CnhEntregue> é igual a 1 (Baixado).
Se for,
RdbEnt.Checked := True;
RdbEnt.OnClick(Sender);
Se NÃO for
RdbEnt.Checked := False;
RdbEnt.OnClick(Sender);
Espero ter finalmente ajudado! 8)
_________________________________________________________
[size=14:efe5e5b19f][b:efe5e5b19f]Jeimyson de O. Souza[/b:efe5e5b19f][/size:efe5e5b19f]
[size=10:efe5e5b19f][color=blue:efe5e5b19f]Analista e Desenvolvedor[/color:efe5e5b19f][/size:efe5e5b19f]
[size=10:efe5e5b19f][color=darkred:efe5e5b19f][i:efe5e5b19f]´Só erra quem é capaz de fazer, pois o sucesso chega para quem ousou tentar!´[/i:efe5e5b19f][/color:efe5e5b19f][/size:efe5e5b19f]
Gostei + 0
24/10/2007
Robinhocne
procedure Tfrmalunos.leregistro; begin Consultaregistros(´Alunos´, ´Codigo, DtCadastro, Servicos, Categoria, Nome, Rg, Uf_Rg, Emissor,´ + ´Cpf, Cnh, Cnh_Cat, Dt_Nascimento, Naturalidade, Uf_Natu, Pai, Mae, Residencial,Telefone,´ + ´Celular,Contato, Cidade, Cep, Uf_Cid, Endereco, Numero, Bairro, Complemento,´ + ´Processo, Dt_Abe, Dt_Venc, Dt_Emi, Lic_Apren, Observacoes, CnhEntregue, DtEntregue, Ar,´ + ´Registro, Venc_Cnh, Cat´,´Codigo =´ + Retorno); TxtMat.text := Ledados (´Codigo´) ; TxtDat.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´DtCadastro´)); RdbHab.Checked := ( LeDados( ´Servicos´ ) = 1 ); RdBalt.Checked := ( LeDados( ´Servicos´ ) = 2 ); RdbRen.Checked := ( LeDados( ´Servicos´ ) = 3 ); TxtCth.Text := LeDados (´Categoria´); TxtNom.text := LeDados (´Nome´); TxtRg.text := LeDados (´Rg´); TxtUf2.text := LeDados (´Uf_Rg´); CboOrg.text := LeDados (´Emissor´); TxtCpf.Text := StrZero (LeDados (´Cpf´), 11); TxtCat.Text := LeDados (´Cnh´); TxtCat.Text := LeDados (´Cnh_Cat´); TxtNas.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Nascimento´)); TxtNat.Text := LeDados (´Naturalidade´); TxtUf1.Text := LeDados (´Uf_Natu´); TxtPai.Text := LeDados (´Pai´); TxtMae.Text := LeDados (´Mae´); TxtRes.Text := LeDados (´Residencial´); TxtTel.Text := LeDados (´Telefone´); TxtCel.Text := LeDados (´Celular´); TxtCon.Text := LeDados (´Contato´); TxtCodCid.Text := LeDados (´Cidade´); TxtCep.Text := LeDados (´Cep´); TxtUf.text := LeDados (´Uf_Cid´); TxtEnd.Text := LeDados (´Endereco´); TxtNum.Text := LeDados (´Numero´); TxtBai.Text := LeDados (´Bairro´); TxtCom.Text := LeDados (´Complemento´); TxtProc.text := LeDados (´Processo´); TxtAbe.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Abe´)); TxtVenc.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Venc´)); TxtEmi.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Dt_Emi´)); TxtLa.Text := LeDados (´Lic_Apren´); MemObs.Text := LeDados (´Observacoes´); RdbEnt.Checked := LeDados( ´CnhEntregue´ ); TxtDtEnt.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´DtEntregue´)); TxtAr.Text := LeDados (´Ar´); TxtReg.Text := LeDados (´Registro´); TxtVen.Text := FormatDateTime (´dd/mm/yyyy´, LeDados (´Venc_Cnh´)); TxtCate.Text := LeDados (´Cat´);
Esse é o RadioButton que eu uso:
[b:24bfd37f2b] RdbEnt.Checked := LeDados( ´CnhEntregue´ );[/b:24bfd37f2b]
Então no caso aqui que eu deveria verificar os dados atualizando
Gostei + 0
24/10/2007
Jeimyson
if LeDados( ´CnhEntregue´ ) = 1 then begin RdbEnt.Checked := True; RdbEnt.OnClick(Sender); end else begin RdbEnt.Checked := False; RdbEnt.OnClick(Sender); end;
Só nao se esqueça de implementar o evento On Click do RdbEnt conforme citado acima.
8)
__
[size=14:a3f751412c][b:a3f751412c]Jeimyson de O. Souza[/b:a3f751412c][/size:a3f751412c]
[size=10:a3f751412c][color=blue:a3f751412c]Analista e Desenvolvedor[/color:a3f751412c][/size:a3f751412c]
[size=10:a3f751412c][color=darkred:a3f751412c][i:a3f751412c]´Só erra quem é capaz de fazer, pois o sucesso chega para quem ousou tentar!´[/i:a3f751412c][/color:a3f751412c][/size:a3f751412c]
Gostei + 0
24/10/2007
Robinhocne
if LeDados( ´CnhEntregue´ ) = 1 then begin RdbEnt.Checked := True; RdbEnt.OnClick(Sender); end else begin RdbEnt.Checked := False; RdbEnt.OnClick(Sender); end;
Cara deu esse erro aqui no Sender:
Undeclared Identifier :´Sender´
Gostei + 0
24/10/2007
Jeimyson
if LeDados( ´CnhEntregue´ ) = 1 then begin RdbEnt.Checked := True; RdbEnt.OnClick(Nil); end else begin RdbEnt.Checked := False; RdbEnt.OnClick(Nil); end;
8)
__
[size=14:fe83da93df][b:fe83da93df]Jeimyson de O. Souza[/b:fe83da93df][/size:fe83da93df]
[size=10:fe83da93df][color=blue:fe83da93df]Analista e Desenvolvedor[/color:fe83da93df][/size:fe83da93df]
[size=10:fe83da93df][color=darkred:fe83da93df][i:fe83da93df]´Só erra quem é capaz de fazer, pois o sucesso chega para quem ousou tentar!´[/i:fe83da93df][/color:fe83da93df][/size:fe83da93df]
Cara deu esse erro aqui no Sender:
Undeclared Identifier :´Sender´
Gostei + 0