Cálculo de total

Delphi

27/08/2004

ola pessoal...

eu tenho um programa com cadastro de eleitores 3100 eleitores...

preciso calcular o total de eleitores que estao cadastrados em um partido especifico.

por exemplo (pstu)...

nao estou conseguindo...

ja tentei essa formula mas sempre trava!!!

TABLE1.FIRST;
TABLE1.DISABLECONTROLS;
PSTU := 0;
WHILE NOT TABLE1.EOF DO
BEGIN
IF TABLE1PARTIDO.VALUE = ´PSTU´ THEN
BEGIN
PSTU := PSTU + 1;
LABEL6.CAPTION := INTTOSTR(PMDB);
END;
TABLE1.ENABLEDCONTROLS;
END;


NAO FUNCIONOU JA MUDEI NO WHILE (WHILE TABLE1.EOF DO) TBM NAO FUCIONOU...

ME AJUDEM NAO SEI MAS O QUE FAÇO...

POR FAVOR...

AGRADEÇO ANTECIPADAMENTE...

COLEGASS.......

[b:8574dc731b][color=red:8574dc731b]Título editado pelo Moderador (AZ) -Removido: ´CALCULO DE TOTAL´[/color:8574dc731b][/b:8574dc731b]


Marcelo_vms

Marcelo_vms

Curtidas 0

Respostas

Maurício Santos

Maurício Santos

27/08/2004

Olá!!!

O único erro que encontrei em seu código é este

Você digitou
Label6.Caption := IntToStr(PMDB)

Mas tem que ser assim
Label6.Caption := IntToStr(PSTU)

Não sei se foi erro de digitação na hora de criar a mensagem, mas de resto tá tudo certo. Tente depurar o seu código, assim você encontra o local onde está o erro.


Sucesso!!!


Maurício


GOSTEI 0
Marcelo_vms

Marcelo_vms

27/08/2004

AMIGO SERÁ Q ESTA TRAVANDO PORQUE SAO MUITOS ELEITORES, OU É ALGUM ERRO MESMO...

ALGUEM SABE OUTRA FORMULA NO QUAL EU POSSA FAZER ESSE CALCULO.

VIA SQL POR EXEMPLO...

AGRADEÇO


OBRIGADO...


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

27/08/2004

Colega,

SELECT partido, COUNT(*) qtde
FROM eleitores
GROUP BY partido
ORDER BY partido



GOSTEI 0
Pro-luck

Pro-luck

27/08/2004

ola pessoal... eu tenho um programa com cadastro de eleitores 3100 eleitores... preciso calcular o total de eleitores que estao cadastrados em um partido especifico. por exemplo (pstu)... nao estou conseguindo... ja tentei essa formula mas sempre trava!!! TABLE1.FIRST; TABLE1.DISABLECONTROLS; PSTU := 0; WHILE NOT TABLE1.EOF DO BEGIN IF TABLE1PARTIDO.VALUE = ´PSTU´ THEN BEGIN PSTU := PSTU + 1; LABEL6.CAPTION := INTTOSTR(PMDB); END; TABLE1.ENABLEDCONTROLS; END; NAO FUNCIONOU JA MUDEI NO WHILE (WHILE TABLE1.EOF DO) TBM NAO FUCIONOU... ME AJUDEM NAO SEI MAS O QUE FAÇO... POR FAVOR... AGRADEÇO ANTECIPADAMENTE... COLEGASS....... [b:5f0facdc65][color=red:5f0facdc65]Título editado pelo Moderador (AZ) -Removido: ´CALCULO DE TOTAL´[/color:5f0facdc65][/b:5f0facdc65]




Vou te mandar um programinha simples com SQL, que com certeza vai te ajudar muito.
A partir do exemplo vc implementa o seu sistema. Mas, adianto que o total sairá no preview do QuickReport e vc imprime se quiser. Se não quiser apenas visualiza. Valeu.

Agora manda o teu e-mail para mim.


Aloísio Santos
polisuporte@hotmail.com


GOSTEI 0
Pro-luck

Pro-luck

27/08/2004

AMIGO SERÁ Q ESTA TRAVANDO PORQUE SAO MUITOS ELEITORES, OU É ALGUM ERRO MESMO... ALGUEM SABE OUTRA FORMULA NO QUAL EU POSSA FAZER ESSE CALCULO. VIA SQL POR EXEMPLO... AGRADEÇO OBRIGADO...



Vou te mandar um programinha simples com SQL, que com certeza vai te ajudar muito.
A partir do exemplo vc implementa o seu sistema. Mas, adianto que o total sairá no preview do QuickReport e vc imprime se quiser. Se não quiser apenas visualiza. Valeu.

Agora manda o teu e-mail para mim.


Aloísio Santos
polisuporte@hotmail.com


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

27/08/2004

são duas observações a fazer:

1o. No seu código está faltando um NEXT, que é o responsável por movimentar o ponteiro de registros. Por isso está ´travando´. O código correto seria:

Table1.First;
Table1.DisableControls;
PSTU := 0;
while not Table1.Eof do
begin
    if Table1Partido.AsString = ´PSTU´ then
    begin
        Inc(PSTU);
        Label6.Caption := IntToStr(PSTU);
    end;
   
    Table1.Next   // a trava se dá por falta dessa linha
end;
Table1.EnableControls;


2o. Utilize, como informou o nosso colega Aroldo Zanela, instruções SQL:

select partido, count(partido)
from TabEleitores
group by partido
order by partido


GOSTEI 0
POSTAR