Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Marcelo Silva To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 5:37 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Ei Alexandre verifiquei no Help do Delphi e vi o que quis dizer... Be fiz assim Accept := DataSet['COD_CLI'] = Edit1.Text; Mas teve o Mesmo efeito de um if dentro do while... e desta forma acaba demorando para trazer os resultados... O detalhe é que ele carrega a tabela inteira desta forma o while percorre toda esta tabela que tem uns 300.000 registros e a cada dia cresce mais... Preciso de uma forma eficiente... A Maneira que o Vitor colocou é ótima ... porém gostaria que fosse possivel passar tipo um Array de opçõe tipo: SetRange([Array],[Array]); Mas o SetRange não trabalha assim... ele trabalha SetRange([Inicio],[Final]); Preciso de algo como o clausula IN de um select tipo SetRange(IN [Valore1,Valor2. Etc]); Entendeu ? Ou é claro... uma outra forma que de uma melhor performance a busca de uma TTable * Não posso utilizar outros componentes por que já existe um programa em clipper que acessa a mesma tabela e faz uso dos indices em outra pasta ... é uma saquinho... só consegui fazer funcionar com AdsTables. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Alexandre Oliveira To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 6:17 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Olá, Olha Marcelo, veja, se (tipopagto='D') = verdadeiro(boolean), então acepta este registro no filtro, senão falso, não acepta. No caso de um while esse registro fará ou não parte dele. É isso que o exemplo quer dizer. Você quer filtrar registros, então qual é a condição para filtrá-los ? Tipo NumDependentes 0 ? Mande a expressão do filtro pra gente ver. Alexandre Oliveira - Original Message - From: Marcelo Silva [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 3:52 PM Subject: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Stock [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:04 PM Subject: [Norton AntiSpam] Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? como vc ta fazendo esse filtro? o componente table, filtrado, so traz os registros solicitados, no while so ira percorrer estes registros... vc deve ta carregando a tabela toda... [EMAIL PROTECTED] 600 modelos de sites profissionais - Imperdivel http://www.kitsites.com/index.php?ref=50 ---Mensagem original--- De: [EMAIL PROTECTED] Data: 11/08/04 11:38:50 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Estou trabalhando com arquivos DBF e gostaria de saber qual a melhor maneira de se trabalhar com TTables ? Tipo... Para abrir a tabela ele abre numa boa bem rapido... Quando coloco o Filtro que quero no DBGrid ele mostra somente os registro que preciso.. Mas vejo que no While ele percorre toda a tabela
Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
É, no seu caso, acho que a melhor maneira, é Setar o Range para o menor e maior valor, e depois filtrar como puder ... Mas o ideal mesmo, era usar uma Query, assim, você faria isso rapidinho ... Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Marcelo Silva To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 5:37 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Ei Alexandre verifiquei no Help do Delphi e vi o que quis dizer... Be fiz assim Accept := DataSet['COD_CLI'] = Edit1.Text; Mas teve o Mesmo efeito de um if dentro do while... e desta forma acaba demorando para trazer os resultados... O detalhe é que ele carrega a tabela inteira desta forma o while percorre toda esta tabela que tem uns 300.000 registros e a cada dia cresce mais... Preciso de uma forma eficiente... A Maneira que o Vitor colocou é ótima ... porém gostaria que fosse possivel passar tipo um Array de opçõe tipo: SetRange([Array],[Array]); Mas o SetRange não trabalha assim... ele trabalha SetRange([Inicio],[Final]); Preciso de algo como o clausula IN de um select tipo SetRange(IN [Valore1,Valor2. Etc]); Entendeu ? Ou é claro... uma outra forma que de uma melhor performance a busca de uma TTable * Não posso utilizar outros componentes por que já existe um programa em clipper que acessa a mesma tabela e faz uso dos indices em outra pasta ... é uma saquinho... só consegui fazer funcionar com AdsTables. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Alexandre Oliveira To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 6:17 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Olá, Olha Marcelo, veja, se (tipopagto='D') = verdadeiro(boolean), então acepta este registro no filtro, senão falso, não acepta. No caso de um while esse registro fará ou não parte dele. É isso que o exemplo quer dizer. Você quer filtrar registros, então qual é a condição para filtrá-los ? Tipo NumDependentes 0 ? Mande a expressão do filtro pra gente ver. Alexandre Oliveira - Original Message - From: Marcelo Silva [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 3:52 PM Subject: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Stock [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:04 PM Subject: [Norton AntiSpam] Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? como vc ta fazendo esse filtro? o componente table, filtrado, so traz os registros solicitados, no while so ira percorrer estes registros... vc deve ta carregando a tabela toda... [EMAIL PROTECTED] 600 modelos de sites profissionais - Imperdivel http://www.kitsites.com/index.php?ref=50 ---Mensagem original--- De: [EMAIL PROTECTED] Data: 11/08/04 11:38:50 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Estou trabalhando com arquivos DBF e gostaria de saber qual a melhor maneira de se trabalhar com TTables ? Tipo... Para
Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
Eu Utilizei AdsQuery ela demora pra abrir porque não faz uso eficiente dos Indices como a Table quando estão em outra pasta (que é meu caso). E outra coisa ... quando gravo através da Query ela não atualiza os arquivos de indices e desta forma o Clipper não encherga o que foi inserido... Esse clipper foi ótimo por uns tempos mas agora nas empresas que persistem nele ele está atrapalhando pra caramba ... Estou na corrida pra conseguir melhorar o sistema ... as dicas vindas da lista ja ajudaram muito ... Bem... a briga continua ... Se fosse EU x BANCO eu daria um jeito... mas é EU x BANCO x Patrão aí a briga fica desigual :-) Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Tuesday, November 09, 2004 10:21 AM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? É, no seu caso, acho que a melhor maneira, é Setar o Range para o menor e maior valor, e depois filtrar como puder ... Mas o ideal mesmo, era usar uma Query, assim, você faria isso rapidinho ... Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Marcelo Silva To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 5:37 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Ei Alexandre verifiquei no Help do Delphi e vi o que quis dizer... Be fiz assim Accept := DataSet['COD_CLI'] = Edit1.Text; Mas teve o Mesmo efeito de um if dentro do while... e desta forma acaba demorando para trazer os resultados... O detalhe é que ele carrega a tabela inteira desta forma o while percorre toda esta tabela que tem uns 300.000 registros e a cada dia cresce mais... Preciso de uma forma eficiente... A Maneira que o Vitor colocou é ótima ... porém gostaria que fosse possivel passar tipo um Array de opçõe tipo: SetRange([Array],[Array]); Mas o SetRange não trabalha assim... ele trabalha SetRange([Inicio],[Final]); Preciso de algo como o clausula IN de um select tipo SetRange(IN [Valore1,Valor2. Etc]); Entendeu ? Ou é claro... uma outra forma que de uma melhor performance a busca de uma TTable * Não posso utilizar outros componentes por que já existe um programa em clipper que acessa a mesma tabela e faz uso dos indices em outra pasta ... é uma saquinho... só consegui fazer funcionar com AdsTables. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Alexandre Oliveira To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 6:17 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Olá, Olha Marcelo, veja, se (tipopagto='D') = verdadeiro(boolean), então acepta este registro no filtro, senão falso, não acepta. No caso de um while esse registro fará ou não parte dele. É isso que o exemplo quer dizer. Você quer filtrar registros, então qual é a condição para filtrá-los ? Tipo NumDependentes 0 ? Mande a expressão do filtro pra gente ver. Alexandre Oliveira - Original Message - From: Marcelo Silva [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 3:52 PM Subject: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o
Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Stock [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:04 PM Subject: [Norton AntiSpam] Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? como vc ta fazendo esse filtro? o componente table, filtrado, so traz os registros solicitados, no while so ira percorrer estes registros... vc deve ta carregando a tabela toda... [EMAIL PROTECTED] 600 modelos de sites profissionais - Imperdivel http://www.kitsites.com/index.php?ref=50 ---Mensagem original--- De: [EMAIL PROTECTED] Data: 11/08/04 11:38:50 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Estou trabalhando com arquivos DBF e gostaria de saber qual a melhor maneira de se trabalhar com TTables ? Tipo... Para abrir a tabela ele abre numa boa bem rapido... Quando coloco o Filtro que quero no DBGrid ele mostra somente os registro que preciso.. Mas vejo que no While ele percorre toda a tabela ignorando o filtro... ou seja desta forma não sei pra que o filtro. Já Estou fazendo uso de Indices. Teria algum outro macete pra trazer os resultados de forma mais rápida ? Estou usando D7 com ADS (não posso mudar) Obs. Não posso mudar de base ok... Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: -- Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
Olá, Olha Marcelo, veja, se (tipopagto='D') = verdadeiro(boolean), então acepta este registro no filtro, senão falso, não acepta. No caso de um while esse registro fará ou não parte dele. É isso que o exemplo quer dizer. Você quer filtrar registros, então qual é a condição para filtrá-los ? Tipo NumDependentes 0 ? Mande a expressão do filtro pra gente ver. Alexandre Oliveira - Original Message - From: Marcelo Silva [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 3:52 PM Subject: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Stock [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:04 PM Subject: [Norton AntiSpam] Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? como vc ta fazendo esse filtro? o componente table, filtrado, so traz os registros solicitados, no while so ira percorrer estes registros... vc deve ta carregando a tabela toda... [EMAIL PROTECTED] 600 modelos de sites profissionais - Imperdivel http://www.kitsites.com/index.php?ref=50 ---Mensagem original--- De: [EMAIL PROTECTED] Data: 11/08/04 11:38:50 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Estou trabalhando com arquivos DBF e gostaria de saber qual a melhor maneira de se trabalhar com TTables ? Tipo... Para abrir a tabela ele abre numa boa bem rapido... Quando coloco o Filtro que quero no DBGrid ele mostra somente os registro que preciso.. Mas vejo que no While ele percorre toda a tabela ignorando o filtro... ou seja desta forma não sei pra que o filtro. Já Estou fazendo uso de Indices. Teria algum outro macete pra trazer os resultados de forma mais rápida ? Estou usando D7 com ADS (não posso mudar) Obs. Não posso mudar de base ok... Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: -- Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e
Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
O filtro que estou usando é assim: AdsTable1.Open; AdsTable1.IndexFieldNames := 'DAT_QUI;COD_CLI'; // AdsTable1.SetRange(['',80084],['',80084]); // Dica do Vitor AdsTable1.Filter := ''; AdsTable1.Filter := '((OBS = ''N'') AND (DAT_QUI = )OR(DAT_QUI = NULL)AND (COD_CLI = '+Edit1.Text+'))'; AdsTable1.Filtered := True; while not(AdsTable1.Eof) do begin //if (AdsTable1COD_CLI.AsInteger = StrToInt(Edit1.Text)) then // Senao colocar if ele traz todos os registros Memo1.Lines.Add(AdsTable1COD_CLI.AsString); AdsTable1.Next; end; Estou fazendo testes com essa rotina acima ... Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Alexandre Oliveira To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 6:17 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Olá, Olha Marcelo, veja, se (tipopagto='D') = verdadeiro(boolean), então acepta este registro no filtro, senão falso, não acepta. No caso de um while esse registro fará ou não parte dele. É isso que o exemplo quer dizer. Você quer filtrar registros, então qual é a condição para filtrá-los ? Tipo NumDependentes 0 ? Mande a expressão do filtro pra gente ver. Alexandre Oliveira - Original Message - From: Marcelo Silva [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 3:52 PM Subject: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Stock [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:04 PM Subject: [Norton AntiSpam] Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? como vc ta fazendo esse filtro? o componente table, filtrado, so traz os registros solicitados, no while so ira percorrer estes registros... vc deve ta carregando a tabela toda... [EMAIL PROTECTED] 600 modelos de sites profissionais - Imperdivel http://www.kitsites.com/index.php?ref=50 ---Mensagem original--- De: [EMAIL PROTECTED] Data: 11/08/04 11:38:50 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Estou trabalhando com arquivos DBF e gostaria de saber qual a melhor maneira de se trabalhar com TTables ? Tipo... Para abrir a tabela ele abre numa boa bem rapido... Quando coloco o Filtro que quero no DBGrid ele mostra somente os registro que preciso.. Mas vejo que no While ele percorre toda a tabela ignorando o filtro... ou seja desta forma não sei pra que o filtro. Já Estou fazendo uso de Indices. Teria algum outro macete pra trazer os resultados de forma mais rápida ? Estou usando D7 com ADS (não posso mudar) Obs. Não posso mudar de base ok... Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br
Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ?
Ei Alexandre verifiquei no Help do Delphi e vi o que quis dizer... Be fiz assim Accept := DataSet['COD_CLI'] = Edit1.Text; Mas teve o Mesmo efeito de um if dentro do while... e desta forma acaba demorando para trazer os resultados... O detalhe é que ele carrega a tabela inteira desta forma o while percorre toda esta tabela que tem uns 300.000 registros e a cada dia cresce mais... Preciso de uma forma eficiente... A Maneira que o Vitor colocou é ótima ... porém gostaria que fosse possivel passar tipo um Array de opçõe tipo: SetRange([Array],[Array]); Mas o SetRange não trabalha assim... ele trabalha SetRange([Inicio],[Final]); Preciso de algo como o clausula IN de um select tipo SetRange(IN [Valore1,Valor2. Etc]); Entendeu ? Ou é claro... uma outra forma que de uma melhor performance a busca de uma TTable * Não posso utilizar outros componentes por que já existe um programa em clipper que acessa a mesma tabela e faz uso dos indices em outra pasta ... é uma saquinho... só consegui fazer funcionar com AdsTables. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Alexandre Oliveira To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 6:17 PM Subject: Re: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Olá, Olha Marcelo, veja, se (tipopagto='D') = verdadeiro(boolean), então acepta este registro no filtro, senão falso, não acepta. No caso de um while esse registro fará ou não parte dele. É isso que o exemplo quer dizer. Você quer filtrar registros, então qual é a condição para filtrá-los ? Tipo NumDependentes 0 ? Mande a expressão do filtro pra gente ver. Alexandre Oliveira - Original Message - From: Marcelo Silva [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 3:52 PM Subject: Ao Vitor [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Vitor sua dica foi muito boa e retorna o resultado praticamente instantaneamente Tenho outro detalhe em questão... Como trazer varios Clientes (CODCLI) que não sejam sequenciais, por exemplo 10089 , 34556, 23321, 12345 etc... (Não posso coloca de 0 a tal porque não quero todos) Acho que deu pra entender né... Ou seja, um será o Cliente Principal e os outros seriam dependentes Então teria que buscar if (CODCLI Tem Dependentes) then Quem são ? Pega todos e verifica em outra tabela se estes tem vendas na tabela Vendas... Então preciso que este range me traga como se fosse um IN de um select. Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] - Original Message - From: Vitor Luiz Redes To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:20 PM Subject: Re: Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Para percorrer no While, somente os registros desejados ... altere as propriedades IndexFieldNames e Sete um Range da seginte maneira ... Table.IndexFieldNames:='CODCLI'; Table.SetRange([1],[50]); Veja que no exemplo acima, o while irá percorrer somente os registro que estejam entre 1 e 50. Se não o Hospedeiro, quem faz do parasita, um parasita ? Vitor Luiz Redes Redsystem Informática - Original Message - From: Stock [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, November 08, 2004 12:04 PM Subject: [Norton AntiSpam] Res: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? como vc ta fazendo esse filtro? o componente table, filtrado, so traz os registros solicitados, no while so ira percorrer estes registros... vc deve ta carregando a tabela toda... [EMAIL PROTECTED] 600 modelos de sites profissionais - Imperdivel http://www.kitsites.com/index.php?ref=50 ---Mensagem original--- De: [EMAIL PROTECTED] Data: 11/08/04 11:38:50 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Qual a melhor maneira de trabalhar com TTable ? Estou trabalhando com arquivos DBF e gostaria de saber qual a melhor maneira de se trabalhar com TTables ? Tipo... Para abrir a tabela ele abre numa boa bem rapido... Quando coloco o Filtro que quero no DBGrid ele mostra somente os registro que preciso.. Mas vejo que no While ele percorre toda a tabela ignorando o filtro... ou seja desta forma não sei pra que o filtro. Já Estou fazendo uso de Indices. Teria algum outro macete pra trazer os resultados de forma mais rápida ? Estou usando D7 com ADS (não posso mudar) Obs. Não posso mudar de base ok... Marcelo Silva Cel. 11 9693-4251 ICQ - 49224093 MSN [EMAIL PROTECTED] [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse