Fórum Select COUNT(*) + DBGrid + IBQuery #441628

01/05/2013

0

Galera boa tarde...
Estou tendo dificuldades no final do meu projeto...
Eu sou iniciante em delphi,mas gostaria de saber se teria como eu fazer uma consulta que conta-se quantos registros foram usados e que essa informação fosse direto para o dbgrid que no caso só uso 1...,a configuração eu já fiz e a criação da coluna que é a "vagains" vagas inseridas...,também!
Ouvi falar de um recordcount...facheall,algo assim....,mas nao tenho nem ideia do que seja...
Como falta só isso,se for o caso de facilitar minha e usasse um edit para visualizar e nao implica-se no relatorio que vou fazer...,faria de bom grade,desde ja agradeço a todos
Edon Ramos

Edon Ramos

Responder

Posts

02/05/2013

Cesar Roniglei

Bom dia você pode fazer da seguinte maneira:

Edit1.Text:= SeuDataSource.DataSet.RecordCount;
Responder

Gostei + 0

02/05/2013

Edon Ramos

Bom vamos lá...
to lascado...

Criei uma tabela no ibconsole que possui os seguintes campos

"REGISTRO" INTEGER NOT NULL,
"SECRETARIA" VARCHAR(40) NOT NULL,
"MATRICULA" INTEGER NOT NULL,
"NOME" VARCHAR(40) NOT NULL,
"CARGOFLU" VARCHAR(40),
"CARGOPADRAO" VARCHAR(30),
"SALARIO" VARCHAR(10),
"VAGADISP" INTEGER,
"VAGATOTAL" INTEGER,
"DATANOMEACAO" DATE NOT NULL,
"DATAPUBLIC" DATE NOT NULL,
"DATAEXO" DATE,
"DATAPUBLICEXO" DATE,
"REFERENCIA" VARCHAR(50),

então...,o campo vagadisp e vagatotal não estão preenchidos,sendo que a vaga total eu posso alimentar com um insert.
O vaga disponivel depende do "select count" que eu preciso usar dentro do ibquery,a configuração dentro dele eu fiz,mas você deve me perguntar porque eu não fiz uma tabela separada para isso,no caso uma tabela de cargoflu e vagasdisponiveis,explico a você que o dbgrid não aceita mais de uma tabela para visualização dos campos,como você pode ver são muitos campos,então mesmo que conseguisse ou melhor que existisse essa opção ficaria horrível...,ok ok,voltamos a linha de raciocine-o...,de qualquer forma deixei o campo na tabela,mas não deixei exibido dentro do form principal de cadastro,pois de qualquer forma o cargo flutuante estará disponível para o "usuário final" poder escolher e seleciona-lo,com o fim de dar solução ao meu problema pensei e ainda tenho a esperança que pelo mesmo modo de exibição de consultas simples com selects o dbgrid mostra,dei continuidade para que pudesse fazer o "select count" e exibir no dbgrid,como no caso do access que o próprio programa em sua execução exibe uma coluna,mas mesmo assim eu falei para mim mesmo,na pior das opções, jogo o resultado atual em um edit,somente para que o usuário visualize e sanar o problema,mas ainda tenho o relatório para ser feito...,me preocupa,pois acho que o resultado do relatório,deve ser puxado da tabela...
Em sua foma de aplicação criei no segundo form para consulta os seguintes campos,usando um botao pesquisar:

Matricula,nome,secretaria e salario (<- campos)...cada consulta feita com o ibquery devo usar os campos(opcionais para o usuario final),no caso por exemplo,preciso através dessas opções exibir essa vaga disponível...

Responder

Gostei + 0

02/05/2013

Edon Ramos

Bom vamos lá...
to lascado...

Criei uma tabela no ibconsole que possui os seguintes campos

"REGISTRO" INTEGER NOT NULL,
"SECRETARIA" VARCHAR(40) NOT NULL,
"MATRICULA" INTEGER NOT NULL,
"NOME" VARCHAR(40) NOT NULL,
"CARGOFLU" VARCHAR(40),
"CARGOPADRAO" VARCHAR(30),
"SALARIO" VARCHAR(10),
"VAGADISP" INTEGER,
"VAGATOTAL" INTEGER,
"DATANOMEACAO" DATE NOT NULL,
"DATAPUBLIC" DATE NOT NULL,
"DATAEXO" DATE,
"DATAPUBLICEXO" DATE,
"REFERENCIA" VARCHAR(50),

então...,o campo vagadisp e vagatotal não estão preenchidos,sendo que a vaga total eu posso alimentar com um insert.
O vaga disponivel depende do "select count" que eu preciso usar dentro do ibquery,a configuração dentro dele eu fiz,mas você deve me perguntar porque eu não fiz uma tabela separada para isso,no caso uma tabela de cargoflu e vagasdisponiveis,explico a você que o dbgrid não aceita mais de uma tabela para visualização dos campos,como você pode ver são muitos campos,então mesmo que conseguisse ou melhor que existisse essa opção ficaria horrível...,ok ok,voltamos a linha de raciocine-o...,de qualquer forma deixei o campo na tabela,mas não deixei exibido dentro do form principal de cadastro,pois de qualquer forma o cargo flutuante estará disponível para o "usuário final" poder escolher e seleciona-lo,com o fim de dar solução ao meu problema pensei e ainda tenho a esperança que pelo mesmo modo de exibição de consultas simples com selects o dbgrid mostra,dei continuidade para que pudesse fazer o "select count" e exibir no dbgrid,como no caso do access que o próprio programa em sua execução exibe uma coluna,mas mesmo assim eu falei para mim mesmo,na pior das opções, jogo o resultado atual em um edit,somente para que o usuário visualize e sanar o problema,mas ainda tenho o relatório para ser feito...,me preocupa,pois acho que o resultado do relatório,deve ser puxado da tabela...
Em sua foma de aplicação criei no segundo form para consulta os seguintes campos,usando um botao pesquisar:

Matricula,nome,secretaria e salario (<- campos)...cada consulta feita com o ibquery devo usar os campos(opcionais para o usuario final),no caso por exemplo,preciso através dessas opções exibir essa vaga disponível...

Responder

Gostei + 0

02/05/2013

Edon Ramos

Antes que me chamem de burro,rsrsrs,calmaaaaaaaa...
Os campos que criei como matricula do tipo integer e salario do tipo varchar foi proposital,a necessidade aqui inverte os tipos de campos que tenho por isso defini eles assim,mas isso não interfere em nada,foi só uma observação para que a apresentação do meu problema não seja colocado como algo de dá dó,rsrsrrsrsrsrrsrsrs

Tem jeito eu sei,mas preciso de ajuda,até estou fazendo tudo isso sozinho e sou apenas um técnico...e pra piorar não tenho ninguém da minha área e as pessoas me julgam pela demora,tenho 3 semanas no caso prometi entregar em 1 mes e meio,faltam +- 2 semanas,mas se não fosse por isso aí da vagadisp eu ja teria termindado,abraços
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar