ORDSCOPE() com code block

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

Moderador: Moderadores

Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

ORDSCOPE() com code block

Mensagem por Eolo »

A função ORDSCOPE() exige que o DBF esteja indexado e que o campo sobre o qual vai ser feito o filtro esteja no COMEÇO da chave. Até aqui beleza. Mas eu preciso que esse campo filtro NÃO esteja no começo.

Bem, descobri, no help do XH, que é possível usar code blocks como argumentos da função, então imagino que seria possível ter o seguinte: um code block "capturaria" o campo filtro onde ele estiver (no final ou no meio da chave) e retornaria o seu valor para a função ORDSCOPE()...

Pergunto:
- isso é possível?
- se sim, como seria esse code block?
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: ORDSCOPE() com code block

Mensagem por sygecom »

Olá Eolo,
Não sei a resposta para sua duvida, mas andei fazendo uns teste com o ADS, e atende bem o que você me passou pelo MSN, sobre a questão da ordem de apresentação.
Se quiser, pode baixar no link abaixo o uma custumização do ADS e é simples de implantar no sistema, duas Linhas no inicio do .PRG principal.
http://www.fivewin.com.br/exibedicas.asp?id=955
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

Re: ORDSCOPE() com code block

Mensagem por Eolo »

Leonardo, vou dar uma olhada na sua sugestão, mas é o seguinte: como eu tava meio no sufoco pra resolver a coisa de imediato, tive que achar uma alternativa, então acabei usando a cláusula FOR do INDEX, com umas dicas do Dércio Zanatta. Consegui enfim matar a charada com o mesmo efeito do ORDSCOPE() e sem perder rapidez.

Semana que vem, com o cliente já atendido, vou estudar a sua sugestão.

Valeu, Mestre.
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: ORDSCOPE() com code block

Mensagem por sygecom »

Unico problema do ADS que é somente free até 30 estações, acima disso tem que comprar a licença deles, na tenho muitos clientes acima de 30 micros, porem onde ja começa a ser limitado, começamos a pensar a fugir disso, talvez ainda não seja a melhor saida, e se for para comprar uma licença, vou direto para uma SQLLIB e uso MYSQL.
Resumindo ADS é bom, até certo ponto....acho que cada caso é um caso !!!
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder