Fórum Agenda com StringGrid #429836
27/11/2012
0
Comecei a seguir um exemplo de como fazer esse modelo de agenda:
Hora Nome
----- --------------
07:00
07:30 Fulano
08:00
E não to conseguindo listar os dados do banco na StringGrid... No banco tenho 2 horarios cadastrados: 15:30:00 e 20:30:00, mas n aparecem, tentei adaptar para o meu código mas não deu certo...
var
i: Integer;
hora: string;
begin
//qryAgenda.Active:= true;
hora := '06:30';
//Preenche a primeira coluna com os horarios
for i := 1 to 30 do
begin
hora := FormatDateTime('hh:mm:ss',
IncMinute(StrtoDateTime(FormatDateTime('hh:mm:ss',StrToDateTime(hora))), 30));
StringGrid2.Cells[0, i] := hora;
end;
while not qryAgenda.Eof do
begin
for i := 1 to StringGrid2.RowCount - 1 do
begin
//Se a hora for igual a que esta na coluna lança na grade
if Copy(qryAgenda.FieldByName('hrservico').AsString, 0, i) = StringGrid2.Cells[0, i] then
begin
StringGrid2.Cells[0, i] := qryAgenda.FieldByName('dtservico').AsString;
//Abandona o laço
Break;
end;
end;
//Vai para o proximo registro
Next;
end;
Vander Carlos
Curtir tópico
+ 0Posts
27/11/2012
Claudia Nogueira
Tenta assim:
var
i, iColuna: Integer;
hora: string;
horabd : TTime;
begin
hora := '06:30';
//Preenche a primeira coluna com os horarios
for i := 1 to 30 do
begin
hora := FormatDateTime('hh:mm:ss',IncMinute(StrtoDateTime(FormatDateTime('hh:mm:ss',StrToDateTime(hora))), 30));
StringGrid2.Cells[0, i] := hora;
end;
while not qryAgenda.Eof do
begin
iColuna := 1;
try
horabd := StrToTime(qryAgenda.FieldByName('hrservico').AsString);
for i := 1 to StringGrid2.RowCount - 1 do
begin
//Se a hora for igual a que esta na coluna lança na grade
if FormatDateTime('hh:mm:ss',horabd) = StringGrid2.Cells[0, i] then
begin
if StringGrid2.Cells[iColuna, i] <> '' then
Inc(iColuna);
StringGrid2.Cells[iColuna, i] := qryAgenda.FieldByName('dtservico').AsString;
//Abandona o laço
Break;
end;
end;
except
end;
//Vai para o proximo registro
qryAgenda.Next;
end;
end;
Gostei + 0
27/11/2012
Vander Carlos
while (not qryAgenda.Eof) do begin
// Procurando a linha que o horário está
vLinha := 0;
for I := 0 to (StringGrid2.RowCount - 1) do begin
if (StringGrid2.Cells[0,I] = qryAgenda.FieldByName('hrservico').AsString) then begin
vLinha := I;
Break;
end;
end;
//Pegando os registros do banco e inserindo na hora que foi localizada
StringGrid2.Cells[2,vLinha] := qryAgenda.FieldByName('cliente').AsString;
qryAgenda.Next;
//Definindo o nome das colunas
StringGrid2.Cells[0,0]:= 'Horário';
StringGrid2.Cells[1,0]:= 'Nome';
end;
end;Só me tira mais uma dúvida, no banco as datas estão salvas assim: 27/11/2012 00:00:00
E quando eu tento fazer alguma consulta só para listar os horários daquela data, não me retorna nenhum registro.
Consulta:
qryAgenda.Close;
qryAgenda.SQL.Clear;
qryAgenda.SQL.Add('SELECT * FROM cadagenda WHERE dtagendamento = ' + edtDataAtual.Text); //que é essa 27/11/2012 00:00:00
qryAgenda.Open;Estou usando o MySQL, mudei essa semana pra ele :(
Grato.
Gostei + 0
27/11/2012
Claudia Nogueira
qryAgenda.Close;
qryAgenda.SQL.Clear;
qryAgenda.SQL.Add('SELECT * FROM cadagenda WHERE dtagendamento = ' + QuotedStr(FormatDateTime('yyyy-mm-dd hh:mm:ss', StrToDateTime(edtDataAtual.Text)))); //que é essa 27/11/2012 00:00:00
qryAgenda.Open;
Gostei + 0
28/11/2012
Vander Carlos
Muito obrigado, resolvido.
Gostei + 0
28/11/2012
Vander Carlos
Quando eu faço essa consulta:
qryAgenda.SQL.Add('SELECT * FROM cadagenda WHERE dtagendamento = ' + QuotedStr(FormatDateTime('yyyy-mm-dd hh:mm:ss' MonthCalendar1.Date)));
Ele me retorna a data + a hora atual, e eu queria que ele me retornasse a data + o tempo zerado: 2012-11-28 00:00:00
Grato.
Gostei + 0
28/11/2012
Claudia Nogueira
qryAgenda.SQL.Add('SELECT * FROM cadagenda WHERE dtagendamento = ' + QuotedStr(FormatDateTime('yyyy-mm-dd hh:mm:ss', DateOf(MonthCalendar1.Date))));
Quando eu faço essa consulta:
qryAgenda.SQL.Add('SELECT * FROM cadagenda WHERE dtagendamento = ' + QuotedStr(FormatDateTime('yyyy-mm-dd hh:mm:ss' MonthCalendar1.Date)));
Ele me retorna a data + a hora atual, e eu queria que ele me retornasse a data + o tempo zerado: 2012-11-28 00:00:00
Grato.
Gostei + 0
28/11/2012
Vander Carlos
Muito obrigadooo.
Gostei + 0
07/12/2012
Glebson Guimaraes
Muito obrigadooo.
kara pelo amor de Deus não Sei Como fazer essa agenda me ajuda ai por favor por onde eu começo?
Tenho um a cliente que quer uma agenda assim
Gostei + 0
07/12/2012
Vander Carlos
Gostei + 0
07/12/2012
Glebson Guimaraes
quais sao que precisa para essa agenda?
Gostei + 0
07/12/2012
Vander Carlos
Gostei + 0
23/03/2015
Jeferson Machia
Gostei + 0
08/05/2017
Cleber Oliveira
Gostei + 0
08/05/2017
Robson Morais
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)