Criei uma função chamada consulta agendamento, onde teria que percorrer todos os TJvGradientHeaderPanel que são onde estás os horários, sendo para cada horário um panel e em coluna uma profissional diferente tipo
Profissional 1 Profissional 2 .......
08:00 08:00
08:15 08:15
08:30 08:30
08:45 08:45
09:00 09:00
09:15 09:15
...
Então preciso percorrer um por um e pegar o Tag desse panel, pois é nessa propriedade que eu gravei o codigo da profissional e preciso pegar o caption para pegar a hora da agenda e ai pesquisar na agenda para depois montar nesse horário um TJvCaptionPanel com informações do cliente, mas ao chegar na consulta quando preciso pegar o Tag e LabelCaption que está dando erro, abaixo a procedure e depois o erro....
procedure TFBelCad001.ConsultaAgendamento(Sender: TObject);
begin
for A := 0 to ComponentCount -1 do
begin
if ( Components [A] is TJvGradientHeaderPanel ) then
begin
{Pesquisa Agenda do Profissional para Mostrar o horário marcado ...}
with QryHoraMarcada do
begin
Close;
sql.Clear;
sql.Add('Select * From BEL_AGENDA where AgeData =:DtAge ');
sql.Add('and ProCodigo =:ProCod and AgeHorIni =:HIni order by ProCodigo');
ParamByName('DtAge').AsDate := TxtDtAgenda.DateTime;
ParamByName('ProCod').AsInteger := ( Sender as TJvGradientHeaderPanel ).Tag;
ParamByName('Hini').AsString := ( Sender as TJvGradientHeaderPanel ).LabelCaption;
open;
end;
while not QryHoraMarcada.Eof do
begin
{Cria o panel dos Horários Marcados ...}
try
pnHorMarcado := TJvCaptionPanel.Create(Self);
with pnHorMarcado do
begin
Parent := Self;
// Top := TJvGradientHeaderPanel ( FindComponent (
// 'pnHor' + QryAge.FieldByName('PhoControle').AsString + IntToStr(Min) ) ).Top;
// Left := TJvGradientHeaderPanel ( FindComponent (
// 'pnHor' + QryAge.FieldByName('PhoControle').AsString + IntToStr(Min) ) ).Left + 10;
Height := 80;
Width := 185;
CaptionPosition := dpTop;
CaptionFont.Color := clBlack;
CaptionFont.Height := -12;
CaptionFont.Name := 'Arial';
CaptionFont.Style := [fsBold];
CaptionHeight := 18;
Tag := QryHoraMarcada.FieldByName('ProCodigo').AsInteger;
Caption := QryHoraMarcada.FieldByName('AgeHorIni').AsString + ' - ' + QryHoraMarcada.FieldByName('AgeCliente').AsString;
end;
except
on E:Exception do
begin
ShowMessage('Erro ao criar pnHorMarcado');
exit;
end;
end;
{... Cria o panel dos Horários Marcados}
QryHoraMarcada.Next;
end;
QryHoraMarcada.Close;
{... Pesquisa Agenda do Profissional para Mostrar o horário marcado}
end;
end;
end;
Pergunta
robinhocne
Criei uma função chamada consulta agendamento, onde teria que percorrer todos os TJvGradientHeaderPanel que são onde estás os horários, sendo para cada horário um panel e em coluna uma profissional diferente tipo
Então preciso percorrer um por um e pegar o Tag desse panel, pois é nessa propriedade que eu gravei o codigo da profissional e preciso pegar o caption para pegar a hora da agenda e ai pesquisar na agenda para depois montar nesse horário um TJvCaptionPanel com informações do cliente, mas ao chegar na consulta quando preciso pegar o Tag e LabelCaption que está dando erro, abaixo a procedure e depois o erro....
Invalid class Typecast
como faço para pegar essas propriedades ?
Editado por robinhocneLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.