robinhocne Postado Agosto 15, 2007 Denunciar Share Postado Agosto 15, 2007 Olá pessoal, Estou querendo fazer uma contage em meu programa, é assim tenho uma tabela para a marcação de aulas e eu gostaria de quando eu marcar as aulas o programa fazer a contage das aulas e mostar em um grid e em edits.Alguém pode me ajudar? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --Jonas -- Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 Olá pessoal, Estou querendo fazer uma contage em meu programa, é assim tenho uma tabela para a marcação de aulas e eu gostaria de quando eu marcar as aulas o programa fazer a contage das aulas e mostar em um grid e em edits.Alguém pode me ajudar?Use uma query para issoprocedure TForm1.Button1Click(Sender: TObject); var i,x : integer; begin x := 0; for i := 1 to Query1.RecordCount do begin x := x + Query1Aulas.Value; Edit1.Text := 'Total de Aulas' + inttostr(x); end end; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 robinhocne Postado Agosto 17, 2007 Autor Denunciar Share Postado Agosto 17, 2007 Valeu Jonas mas, não deu certo vou mostrar um exemplo do visual:Ord. Data Horário Instrutor 01 13/08/07 09:00 02 02 14/08/07 09:00 02 03 15/08/07 09:00 02 04 16/08/07 09:00 02 05 17/08/07 09:00 02Então esse é o visual do meu grid aparece as aulas marcadas, agora gostaria de saber como posso colocar esses numeros de ordem. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --Jonas -- Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 Crie numa query a seguinte instrução SQLSelect * from NOME_ARQUIVO Order by Ord, Data, Horario, InstrutorVai aparecer no dbgrid na ordem que voce esta querendo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 robinhocne Postado Agosto 17, 2007 Autor Denunciar Share Postado Agosto 17, 2007 Crie numa query a seguinte instrução SQLSelect * from NOME_ARQUIVO Order by Ord, Data, Horario, InstrutorVai aparecer no dbgrid na ordem que voce esta querendonão deu certo!Como ele vai contar? Eu tenho que mandar ele fazer alguma função?Só assim não resolveu!Me especifique melhor! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --Jonas -- Postado Agosto 17, 2007 Denunciar Share Postado Agosto 17, 2007 Vamos supor que seu arquivo chama-se AulasDadas e que contenha os campos Ord, Data, Horario e Instrutorvoce vai pegar um componetente Query1 e vai colocar o codigo na SQLSelect * from AulasDadasOrder by Ord, Data, Horario, Instrutor // order by faz a ordenação dos campos na sequencia colocadaAgora vamos supor que voce queira contar quantas aulas o instrutor "02" deu, então num botao voce coloca o codigo de acordo com o que voce quer que ele façaprocedure TForm1.Button1Click(Sender: TObject); var i,x : integer; begin x := 0; for i := 1 to Query1.RecordCount do // varrer todo o aquivo begin if Query1Instrutor.Value = '02' then // testar se é o instrutor 02 x := x + 1; // contar o total de aulas end; Edit1.Text := 'Total de Aulas Dadas pelo Instrutor 02 = ' + inttostr(x); end;Outra forma seria voce fazer isso na query automaticamente selecionando o instrutor fixoSelect * from AulasDadaswhere Instrutor = '02' Order by Ord, Data, Horario, InstrutorOutra forma seria voce fazer isso na query automaticamente selecionando o instrutor variavelSelect * from AulasDadaswhere Instrutor = :Inst // parametro a ser passado via codigo em tempo de execução Order by Ord, Data, Horario, Instrutor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Agosto 19, 2007 Denunciar Share Postado Agosto 19, 2007 Jonas, estou achando que este campo Ord não existe na tabela do robinhocne. Está parecendo a mesma situação o colega vms questionou em junho.robinhocne, se realmente este campo Ord não existe na sua tabela, então dê uma olhada neste post. A idéia a de utilizar um campo calculado (neste caso você criaria um chamado Ord, por exemplo) e atribuiria a ele o valor de RecNo.Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 robinhocne Postado Agosto 20, 2007 Autor Denunciar Share Postado Agosto 20, 2007 Jonas, estou achando que este campo Ord não existe na tabela do robinhocne. Está parecendo a mesma situação o colega vms questionou em junho.robinhocne, se realmente este campo Ord não existe na sua tabela, então dê uma olhada neste post. A idéia a de utilizar um campo calculado (neste caso você criaria um chamado Ord, por exemplo) e atribuiria a ele o valor de RecNo.AbraçosExatamente o mesmo caso Micheus, mas o Problema que eu não entendi essa parteMas com relação ao título do tópico, tenho a dizer que as colunas do DBGrid já são, de certo modo, numeradas. Basta que você utilize a propriedade Columns. Ela é uma lista de colunas (TColumn).Assim, se você utilizar DBGrid.Columns[indice], você observa que indice já funciona como uma numeração, não?Onde eu faço isso? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Agosto 20, 2007 Denunciar Share Postado Agosto 20, 2007 Exatamente o mesmo caso Micheus, mas o Problema que eu não entendi essa parteMas com relação ao título do tópico, tenho a dizer que as colunas do DBGrid já são, de certo modo, numeradas. Basta que você utilize a propriedade Columns. Ela é uma lista de colunas (TColumn).Assim, se você utilizar DBGrid.Columns[indice], você observa que indice já funciona como uma numeração, não?se era o seu caso, esta parte é justamente a que não lhe interessa. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 robinhocne Postado Agosto 21, 2007 Autor Denunciar Share Postado Agosto 21, 2007 Exatamente o mesmo caso Micheus, mas o Problema que eu não entendi essa parteMas com relação ao título do tópico, tenho a dizer que as colunas do DBGrid já são, de certo modo, numeradas. Basta que você utilize a propriedade Columns. Ela é uma lista de colunas (TColumn).Assim, se você utilizar DBGrid.Columns[indice], você observa que indice já funciona como uma numeração, não?se era o seu caso, esta parte é justamente a que não lhe interessa.E qual seria ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Agosto 21, 2007 Denunciar Share Postado Agosto 21, 2007 E qual seria ?Justamente aquela que indiquei no post (voce leu o comentário que fiz no início do tópico, não o que eu indiquei a você <_<). Mas, vou colocar aqui denovo:vms, você poderia tentar utilizar um campo calculado, do tipo inteiro, e para este campo você moveria o RecNo.Supondo o nome da coluna NumOrdem (vamos deixar o campo Numero do seu banco em off), você no evento OnCalcField você faria:TabTesteNumOrdem.Value := TabTeste.RecNo;Este outro comentário, também está lá no mesmo post:Se tiver dúvida de como criar o campo calculado dá uma olhada neste tutorial e pesquise pelo texto: "DataModule:" (sem as aspas), é o segundo item nesta sessão.Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
robinhocne
Olá pessoal,
Estou querendo fazer uma contage em meu programa, é assim tenho uma tabela para a marcação de aulas e eu gostaria de quando eu marcar as aulas o programa fazer a contage das aulas e mostar em um grid e em edits.
Alguém pode me ajudar?
Link para o comentário
Compartilhar em outros sites
10 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.