index + descend

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

wagnervidal
Usuário Nível 1
Usuário Nível 1
Mensagens: 27
Registrado em: 21 Out 2010 11:35
Localização: Araguari/MG

index + descend

Mensagem por wagnervidal »

Ae galera blz?
antes de converter para harbour eu usava na indexação dessa maneira,

INDEX ON CODIGO+DESCEND(DTOS(INCLUSAO)) TO COMVAIND

agora no harbour nao funciona.
Qual a maneira certa?
Vlw
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Re: index + descend

Mensagem por alxsts »

Olá!
wagnervidal escreveu:agora no harbour nao funciona
Poderia informar se dá alguma mensagem de erro (na compilação ou execução)?

Você colocou a linha Request Descend ?
[]´s
Alexandre Santos (AlxSts)
wagnervidal
Usuário Nível 1
Usuário Nível 1
Mensagens: 27
Registrado em: 21 Out 2010 11:35
Localização: Araguari/MG

Re: index + descend

Mensagem por wagnervidal »

Ola ...
não apresenta erro nenhum.
essa linha Request Descend onde eu coloco ela?
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Re: index + descend

Mensagem por alxsts »

Olá!

Coloque esta linha no início do teu .PRG principal.

Código: Selecionar todos

REQUEST Descend

Function Main()
   // mais código...
Talvez você esteja se perguntando: por que?

Quando você escreve a chave de indexação para uma tabela em seu .PRG, ela é tratada pelo compilador como uma simples string, mesmo que contenha chamadas a outras funções.

Assim, a chamada a uma função que não está numa biblioteca que o linkeditor pesquise por padrão, ficará "mascarada", implícita ou escondida e não será ligada ao executável. Aí, em tempo de execução ocorre erro. Acho estranho não ter acontecido contigo.

Para contornar isso, existe o REQUEST. Ele força a linkedição de um módulo ao executável, mesmo que não haja nenhuma chamada explícita a ele no teu código.

Note que no momento de pesquisar este índice, é necessário usar Descend() também.

Código: Selecionar todos

DbSeek( cCodigo + DESCEND( DTOS( dDtInclusao ) ) )
O fórum dispõe de um recurso de busca. Pesquise.
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

index + descend

Mensagem por Pablo César »

Boa explicação Sr. Alexandre ! Você sempre tão atencioso e objetivo.
O fórum dispõe de um recurso de busca. Pesquise.
O que o colega quis dizer que este assunto foi tratado em vários tópicos, por exemplo:

https://pctoledo.org/forum/viewto ... end#p67556
https://pctoledo.org/forum/viewto ... end#p60989
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Responder