|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
Dúvida Performance - Percorrer Base |
|
Versão: |
11.8 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
|
|
|
Mensagem do
ZERO
em 13/11/2017, 13:23 h
Local: RJ Registro: 09/02/2015 Postagens: 235 |
Prezados,
me digam o que acham, olhando do ponto de vista de performance mesmo.
Preciso gerar cartas de cobranças de inadimplentes, logo, preciso varrer a base atrás dos devedores em um período, só que como estamos chegando no final do ano (já sei) q no mínimo irão querer fazer de 01/01/2017 até hoje, período grande e mais um agravante, gerar isso em PDF, a carta de cada pessoa que deve, etc.
Para esse tipo de coisa eu logo penso em escrever uma query e varrer o result set dela e talz...
Será q seria melhor usar pelos comandos como DbSeek ao invés da Query?
Agradeço a ajuda |
|
|
Mensagem do
ROBERTOMEN
em 13/11/2017, 14:21 h
Local: PR Registro: 04/07/2017 Postagens: 450 |
no meu ponto de vista uma query processa mais rápido !!! |
|
|
Mensagem do
JESSEALVES
em 13/11/2017, 21:31 h
Local: SP Registro: 16/08/2012 Postagens: 68 |
Olá ! Boa noite ! Recomendo o uso da query.
Com ela você pode realizar um filtro mais específico, logo os dados que você procura estarão todos em seu Alias e isso te traz mais performance.
Eu, particularmente, gosto mais de trabalhar com as querys pois, além de serem mais dinâmicas eficiente na buscas dos dados, me abre mais possibilidade de montar uma "tabela virtual" conforme o perfil da minha necessidade.
Att,
|
|
|
Mensagem do
ZERO
em 13/11/2017, 22:59 h
Local: RJ Registro: 09/02/2015 Postagens: 235 |
hmmm, pelo visto Query é melhor mesmo
vou ver q bicho dá hahahaha |
|
|
Mensagem do
FRANCODAN
em 14/11/2017, 01:45 h
Local: SP Registro: 25/09/2007 Postagens: 46 |
Use query, pois sem dúvida nenhuma é
muito mais dinâmico e versatil. Não
Esqueça do truque para a query ficar
Muito mais rápida, a cláusula ejete,
Captou ?
Fco C Dantas - 11 9 8275-0920 |
|
|
Mensagem do
FRANCODAN
em 14/11/2017, 01:57 h
Local: SP Registro: 25/09/2007 Postagens: 46 |
A cláusula where ...
Fco C Dantas - 11 9 8275-0920 |
|
|
Mensagem do
ROBERTOMEN
em 14/11/2017, 07:43 h
Local: PR Registro: 04/07/2017 Postagens: 450 |
um detalhe importante no uso de querys é não usar select * from ....
selecione sempre somente os campos que irá utilizar,,exemplo:
select a1_nome,a1_cpf,a1_end from...
fica muito mais rápido !!! |
|
|
Mensagem do
ZERO
em 14/11/2017, 11:00 h
Local: RJ Registro: 09/02/2015 Postagens: 235 |
Sim sim, raramente uso Select * from mas é sempre bom lembrar!
Mas em uma consulta básica vai dar mais de 700 cartinhas PDF O.o |
|
|
Mensagem do
FRANCODAN
em 14/11/2017, 12:29 h
Local: SP Registro: 25/09/2007 Postagens: 46 |
Set um índice na
cláusula where e vai ver a
performance... vrruuunnn...
ABS,
Fco C Dantas - 11 9 8275-0920 |
|
|
Mensagem do
ZERO
em 16/11/2017, 09:44 h
Local: RJ Registro: 09/02/2015 Postagens: 235 |
Vc fala usar um campo índice, digo um dos índices da tabela ou está se referindo a outra coisa? |
|
|
Mensagem do
FRANCODAN
em 16/11/2017, 11:43 h
Local: SP Registro: 25/09/2007 Postagens: 46 |
Selrct col1, col2,col3, ...
where a1_filial="01"
And a1_cod="002200"
And a1_loja="001"
ANd d_e_l_e_t_=" "
... para os camos que
vc não tem tem o valor
Use por exemplo
A1_loja IS NOT NULL
Desta forma vc está dizendo
Para a query trabalhar com
o índice 1 da tabela SA1
Vai notar a diferença...vrruu...
Fco C Dantas - 11 9 8275-092024 0853-69 |
|
Para postar no Fórum você precisa efetuar o seu login ou se registrar
|
|