Página 1 de 1
Indice descendente
Enviado: 16 Mar 2007 08:37
por leandrolinauer
Bom dia a todos.
Estou com um problema na indexação de indices descendentes com valores positivos e negativos no campo, exemplo:
Resultado:
15.000,00
5.000,00
1,00
0,00
-5.000,00 -> este deveria ficar no fim da relação
-1.000,00
-1,00 -> e este no lugar do -5.000,00
Se alguem souber e puder me informar porque o indice fica desta forma, fico grato.
:'(
Enviado: 16 Mar 2007 10:53
por Grings
Grings escreveu:Post editado
Isso é óbvio, -5000,00 é maior que -1,00. O índice não é descendente ?
Nota de Moderação:por
[url=https://pctoledo.org/forum/memberlist.php?mode=viewprofile&u=100899][color=#00AA00]Pablo César[/color][/url]: Mensagem recuperada através de citações de outros usuários. Pois esta mensagem foi re-editada pelo próprio autor apagando o seu conteúdo e prejudicando o entendimento do tópico. Esta prática não é aceita no fórum.
Enviado: 16 Mar 2007 13:31
por Luiz
Grings escreveu:Isso é óbvio, -5000,00 é maior que -1,00. O índice não é descendente ?
ná verdade -5000 é menor que -1
Código: Selecionar todos
USE 'teste.dbf' EXCLUSIVE NEW
INDEX ON valor TAG '01'
Ascendente
Recno 9 -> -15000.00
Recno 8 -> -10000.00
Recno 7 -> -5.00
Recno 6 -> -1.00
Recno 5 -> 0.00
Recno 4 -> 1.00
Recno 3 -> 5.00
Recno 2 -> 10000.00
Recno 1 -> 15000.00
USE 'teste.dbf' EXCLUSIVE NEW
INDEX ON valor TAG '01' DESCENDING
Descendente
Recno 1 -> 15000.00
Recno 2 -> 10000.00
Recno 3 -> 5.00
Recno 4 -> 1.00
Recno 5 -> 0.00
Recno 6 -> -1.00
Recno 7 -> -5.00
Recno 8 -> -10000.00
Recno 9 -> -15000.00
Fiz os testes e funcionou beleza, tanto com CDX como com NTX.
obs: com o xHarbour 0.99.71
Enviado: 16 Mar 2007 14:04
por Grings
Tens razão Luiz, raciocinei de forma matemática, dever 100 é mais do que dever 2, mas não é assim que funciona.
Enviado: 16 Mar 2007 16:07
por leandrolinauer
Luiz, fiz exatamente como vc usando DBFCDX - INDICES IDX AINDA EM CLIPPER, ABAIXO A LINHA DE INDEXAÇÃO
Index On &Chave. To (Arquivo)+"."+wRdd Eval ContaReg(Linha,Coluna) Every LastRec()/100 DESCENDING
RESULTA
Descendente
Recno 1 -> 15000.00
Recno 2 -> 10000.00
Recno 3 -> 5.00
Recno 4 -> 1.00
Recno 5 -> 0.00
Recno 6 -> -15000.00
Recno 7 -> -10000.00
Recno 8 -> -5.00
Recno 9 -> -1.00
PARA MIM TERIA QUE SER -1.00 PRIMEIRO E DEPOIS -15000.00
MAS NA TELA A VISUALIZACAO DO ARQUIVO ESTA ERRADA.
Descending
Enviado: 16 Mar 2007 17:58
por leandrolinauer
Ao fórum.

) Perdoem-me minha falha de principiante, indexei os indices com Strzero(), o que não pode ser feito, por isto que os valores estavam errados, quando ví ja tinha feito.
Eu deveria estar #-) nesta hora, puts nem acredito.
Tirei a função e indexou normal e funcionou perfeitamente.
Obrigado a todos.
Grato -:]