Ir para conteúdo
Fórum Script Brasil

Alessandro

Membros
  • Total de itens

    160
  • Registro em

  • Última visita

Tudo que Alessandro postou

  1. Para que você visualize os dados da sua tabela em um dbComboBox verifique se em : DataSource >>você selecionou sua tabela ?? DataField >>você selecionou a coluna desejada ?? Provavelmente não, faça esta alteração e verifique o resultado... Este objeto é normalmente utilizado para (UF, Sexo, DDD,etc...) Referente ao dblookupcombobox funciona parecido ao dbcombobox : 1º ListSource >> Selecione a sua tabela 2º ListField >>Selecione a coluna que você deseja exemplo : nome (ele irá navegar pelo nome dos clientes). 3º KeyField >>Faça o mesmo que o 2º, selecione a coluna nome... ...Vê aí....o resultado é bem legal....
  2. Tenta assim cara....... Query1.SQL.Add('SELECT * FROM cliente WHERE nome LIKE ' + #39 + Edit1.Text + '%' + #39);
  3. daaaard....hehe....foi mal s3c...agora entendi... Fiz td isso, pressionei o F5 no for abaixo do showMessage e compilei... Selecionei 3 códigos para a Lista para aparecer no relatório... Depois que cliquei em gerar ele retornou para o código e eu fui pressionando o F8... Reparei que o compilador entrou 3 vezes no for, ou seja, foi o nº de códigos que solicitei.... Depois deu erro.... Imagem do Break-Point Imagem do compilador saido do for Imagem do compilador saindo do for e dando o erro
  4. Fiz td o q você pediu....ê aí.... Imagem Por fim, acabou não compilando......
  5. Desculpe...mas eu não conhecia este comando é: break-point??? Bom, eu coloquei abaixo do showMessage o compilador apontou o erro para o for.Coloquei o "ponto e virgula ;" e o compilador apontou o erro para o comando break-point; Não chegou a passar disso....
  6. Resultado do Show Message Bom, usando o complemento do código Corposemalma, quando eu clico no botão é apresentad na tela o ShowMessage e depois vai para aquele erro : Erro idsql32.dll
  7. Sim, Arlon...estou fazendo um teste com o corposemalma para ver se aparece no dbGrid.....agora eu tirei o WHERE pois não estava passando nenhum parametro.... sc3 foi mal cara, seu código não tinha esse Where, agora está somente : 'Select * From dbCadAt.db' Por fim o resultado não está sendo como o corposemalma previa...q é aparecer no dbGrid....dá este erro aqui : Erro Por fim o código está assim : var i:Integer; sWhe:String; begin Query1.Close; Query1.SQL.Text := 'Select * From dbCadAt.db'; for i := 0 to Lista2.Items.Count-1 do begin if i = 0 then sWhe := 'CodPart = :P' + IntToStr(i) else sWhe := sWhe + ' or CodPart = :P' + IntToStr(i); end; Query1.SQL.Add(sWhe); for i := 0 to Lista2.Items.Count-1 do begin Query1.ParamByName('P'+IntToStr(i)).asString := Lista2.Items[i]; end; Query1.Open; {fmRelAt := tfmRelAt.create(application); fmRelAt.QuickRep1.Preview; fmRelAt.Release;} end; PS.Desculpe-me pelo deslize....
  8. Confirmando, você quer que eu faça isso : Clique aqui para ver o Form com dbGrid O fonte : Clique aqui para ver a Unit Criei o dbGrid e apontei para Query...deu o mesmo erro : Clique aqui para ver o Erro Ps(Livro).O cruel é que eu aprendi muito pouco sobre os conceitos do Delphi na facul, 99% do que sei hj foi autodidata, comprei livro e perguntei aqui no forum, eu manjo de lógica pois me dou mais com Java...lá eu entendo essas coisas de "parâmetros, instâncias,métodos...até porque eu fiquei 1 ano só na unha...", no delphi eu tive só uma pincelada.....sabe como é faculdade.....mas pode deixar que td serve como estímulo....penso em fazer um curso bom de delphi....este sisteminha que estou fazendo é para uso de duas pessoas, eu e meu companheiro de trabalho....da mesma forma que vocês me passam informação eu passo pra ele....e assim a gente vai mexendo nessa ferramenta que é o DELPHI hehehe...
  9. 1º Utilizei o código feito pelo s3c e deu erro na linha : Query1.clear; Então eu tirei esta parte e ele compilou... 2º Deu este erro : Clique aqui para ver o Erro Coloquei uma Query e um DataSource no Form das duas listas e ficou a seguinte dúvida : Quando o Corposemalma diz : ...é só colocar no botao que chama o relatorio, mas lembra de apontar o relatorio para a QUERY. Eu aponto o relatório para query dessa forma : Clica aqui para ver como eu apontei Tentei de várias formas mas o erro persistiu..... ahh, o código do éverton compilou sem o Query1.clear e não deu erro ao clicar no botão, mas não obtive o resultado... Resumindo ... meu código ficou assim : No evento Onclick do botão "Gerar" (onde estão as duas listas) procedure TfmGerarRelAt.btnGerarClick(Sender: TObject); var i:Integer; sWhe:String; begin Query1.Close; //Query1.clear; Query1.SQL.Text := 'Select * From dbCadAt.db '; for i := 0 to Lista2.Items.Count-1 do if i = 0 then sWhe := 'Where CodPart = :P' + IntToStr(i) else sWhe := sWhe + ' or CodPart = :P' + IntToStr(i); Query1.SQL.Add(sWhe); for i := 0 to Lista2.Items.Count-1 do Query1.ParamByName('P'+IntToStr(i)).asString := Lista2.Items[i]; Query1.Open; //chama o relatorio aqui fmRelAt := tfmRelAt.create(application); fmRelAt.QuickRep1.Preview; fmRelAt.Release; end; Ps. mó chatão eu......
  10. Então Corposemalma, eu estou tentando exatamente isso que você sugeriu, criar um relatório baseado na lista2, que é a dos códigos selecionados... Onde eu coloco este código do s3c ? Tentei fazer de tudo quanto é jeto mas continua aparecendo todos códigos e não só os que eu seleciono.... s3c Obrigado pelo empenho até aqui, você me ajudou muito cara.....valeu pelo código.....
  11. É isso mesmo.... a dúvida ficou em : ...você tem que fazer um Select com a cláusula Where dos códigos existentes na Lista2... Como assim ? Onde ? tem como dar um exemplo?!?!?!;) quando você postou dizendo : Utilize esse mesmo For de Lista2.Items.Count p/ criar a cláusula Where dinamicamente no seu Dataset amarrado ao relatório. Onde eu utilizo exatamente.... Agora só se você tiver paciência einh.....valeu...
  12. s3c, sem querer ser chatão e leigo mas já sendo....eu não entendi o que você quiz dizer...digamos que esta resposta foi de nivel 2 e eu preciso que você esclareça de outra forma......
  13. Cara, estamos quase lá....eu entendi a sua lógica, ele vai contar a qtde individualmente para cada selecionado..... Muito bem, isto o código está fazendo,ou seja, se eu seleciono 2 códigos : BR01AC 2 Ligações BR01AL 1 Ligação No relatório sai o total somente dos selecionados... Evoluímos muito até aqui, por favor não desista.....sei que é na boa vontade, por isso peço mais um help.....o código ainda continua trazendo todos os códigos no relatótrio..... Conclusão, quando eu seleciono...o total de ligações é referente aos selecionados, mas no relatório ainda estão aparecendo todos os código e não somente os cadastrados..... Será que é o SELECT ?
  14. Eu faço para gerar um total de ligações.....vê aí o relatório : Relatório a qrlabel5.Text pega o Total de ligações.
  15. Seu campo CodPart no banco é string? Sim, no caso...é ALPHA...(PARADOX). O seu StringList Lista2 só tem um código na propriedade Text? Neste caso, eu passo da Lista1 para a Lista2. No Lista2 não.....Tem uma porrada de código no Lista1, mas eu passo para o Lista2, assim querendo que gere um relatório somente para os que foram escolhidos...Vê aí..... Quando eu chamo o Form, só tem códigos na Lista1, e clicando no botão eu passo para lista2...
  16. Corposemalma e s3c, evoluímos....complilou, não dá mais erro quando eu gero o relatório, porém ainda estão me trazendo todos e não os selecionados..... o código por fim ficou assim : procedure TfmRelAt.FormCreate(Sender: TObject); var Total : Integer; begin Total := 0; modProjeto.tbCadAt.First; while not modProjeto.tbCadAt.Eof do begin query1.active := false; query1.sql.clear; query1.sql.add('SELECT Quantidade FROM dbCadAt.db WHERE CodPart = :codigo'); query1.parambyname('codigo').asString := fmGerarRelAt.Lista2.Items.Text; query1.active:= true; query1.open; Total := modProjeto.tbCadAtQuantidade.Value + Total; modProjeto.tbCadAt.Next; end; qrLabel5.Caption := inttostr(Total); end; Ahh, eu ví seu post moderador, show de bola usar parametros.....
  17. Show de bola...estou progredindo...agora está compilando mas não está encontrando o Parametro codigo, quando eu seleciono e clico em gerar dá esse erro aí : Erro1 Erro2 No evento do botão Gerar te o seguinte código : procedure TfmGerarRelAt.btnGerarClick(Sender: TObject); begin fmRelAt := tfmRelAt.create(application); fmRelAt.QuickRep1.Preview; fmRelAt.Release; end; O SELECT eu coloquei no oncreate do fmRelAt
  18. query1.parambyname('codigo') := fmGerarRelAt.Lista2.Items.Text dá erro nesta linha..... Eu queria saber porque você está usando codigo ? Não é preciso declarar ? query1.sql.add('SELECT Quantidade FROM dbCadAt.db WHERE CodPart = :codigo');
  19. Serei breve... Tenho um Form chamado fmGerarRelAt : Clique aqui para ver o Form Gerar Relatório Preciso que somente os código selecionados apareçam no relatório, e para isso eu coloquei este código no evento OnCreate do Form do Relatório : procedure TfmRelAt.FormCreate(Sender: TObject); var Total : Integer; begin Total := 0; modProjeto.tbCadAt.First; while not modProjeto.tbCadAt.Eof do begin query1.active := false; query1.sql.clear; query1.sql.add('SELECT Quantidade FROM dbCadAt.db WHERE CodPart = "'+fmGerarRelAt.Lista2.Items.Text+'"'); query1.active:= true; Total := modProjeto.tbCadAtQuantidade.Value + Total; modProjeto.tbCadAt.Next; end; qrLabel5.Caption := inttostr(Total); end; fmGerarRelAt : é o nome do Form do Relatório Lista2 : é o nome da minha ListBox O problema é que mesmo com esse código, o sistema compila mas acaba trazendo todos os códigos como a vocês podem ver na figura abaixo : Clique aqui para ver como sai o Relatório Se alguém tiver alguma sugestão postaí para eu tentar....valeu
  20. procedure TfmRelAt.FormCreate(Sender: TObject); var Total : Integer; begin Total := 0; modProjeto.tbCadAt.First; // Posiciona no primeiro registro da tabela while not modProjeto.tbCadAt.Eof do // Enquanto não for o fim da tabela begin query1.active := false; query1.sql.clear; query1.sql.add('SELECT Quantidade FROM dbCadAt.db'); query1.active:= true; Total := modProjeto.tbCadAtQuantidade.Value + Total; modProjeto.tbCadAt.Next; end; qrLabel5.Caption := inttostr(Total); end; Eu usei a query e deu certo......Fechou
  21. procedure TfmRelAt.FormCreate(Sender: TObject); var Total : Integer; begin Total := 0; modProjeto.tbCadAt.First; // Posiciona no primeiro registro da tabela while not modProjeto.tbCadAt.Eof do // Enquanto não for o fim da tabela begin //Localiza o registro de cada linha na tabela e acumula modProjeto.tbCadAt.Locate('Quantidade',modProjeto.tbCadAtQuantidade.Value,[]); Total := modProjeto.tbCadAtQuantidade.Value + Total; if not modProjeto.tbCadAt.Eof then begin dataProjeto.modProjeto.tbCadAt.Next; end; end; qrLabel5.Caption := inttostr(Total); end; Galera é o seguinte : 1º Eu fiz um relatório para contar o número de ligações que cada Assistência Técnica teve em um Script de Atendimento. 2º O Relatório está funcionando perfeitamente...se eu finalizo a ligação, é acrecentado + 1 na qtde de ligações daquela determinada At e aparece no relatório. 3º Fiz este código aí para saber o total de ligações, e o problema é o seguinte : Quando meus registro de ligações possui qtde diferente, por exemplo: Assistência A = 1 Assistência B = 2 Assistência C = 3 O relatório conta e gera normalmente. Mas quando há qtde de ligações iguais, por exemplo : Assistência A = 1 Assistência B = 2 Assistência C = 2 O sistema para de responder e parece que fica no "while infinito". Alguém sabe me dizer porque ele não acumula valores iguais ? Banco de dados : Paradox Delphi 6 O tipo da Quantidade é "Long Integer"
  22. valeu Galera......pode fechar
  23. Como abrir uma url clicando em um botão ? Como abrir um arquivo do Excel clicando em um botão ? Como abrir o OutLook clicando em um botão ? Não precisa saber todos para responder....valeu
×
×
  • Criar Novo...