Seite 1 von 1

Descending Index

Verfasst: Di, 05. Sep 2023 7:21
von Jan
Moin,

wenn ich mit FOXCDX unter ADS arbeite, wie bekomme ich da einen descending Index eingebaut? Bei INDEX ON gibt es einen Parameter, der das bewirkt. Ich arbeite aber mit OrdCreate(), wo es nur einen der vielen Parameter aus INDEX ON gibt, nämlich UNIQUE. Aber kein Descending. Alternativ gäbe es noch DbSetDescend(), aber das stellt die Sortierung der gesamten dbf um, nicht nur eines bestimmten Indexes.

Jan

Re: Descending Index

Verfasst: Di, 05. Sep 2023 8:10
von Martin Altmann
Moin Jan,
wenn es gar nicht geht, hilf Dir selbst:
Nimm jedes Zeichen im Index und ersetze es durch chr( 255 - asc( von_diesem_Zeichen ) ) - damit hast Du eine absteigende Sortierung. Solltest Du nicht nur die Sortierung wollen, sondern in dem Index auch nach einem Eintrag suchen, musst Du den zu suchenden Wert natürlich auch entsprechend vorher wandeln.

Viele Grüße,
Martin

Re: Descending Index

Verfasst: Di, 05. Sep 2023 8:25
von Wolfgang Ciriack
Habs zwar noch nicht benutzt, aber es gibt ein OrdCondSet(...)

Re: Descending Index

Verfasst: Di, 05. Sep 2023 8:50
von Jan
Wolfgang,

ja, das hatte ich auch gesehen. Aber nicht verstanden wie das real umgesetzt werden soll.

Jan

Re: Descending Index

Verfasst: Di, 05. Sep 2023 10:03
von Frank Grossheinrich
Hallo Jan,

mach doch ein INDEX ON ... DESCENDING und schau dir das PPO Output an.
Oder schaue gleich ins STD.CH.
Dann wirst du sehen, dass es mit OrdCondSet() umgesetzt ist.

Hilft das?
Grüße
Frank

Re: Descending Index

Verfasst: Di, 05. Sep 2023 10:37
von Jan
Hallo Frank,

vermutlich würde das helfen. Ich habe in die std.ch geschaut und ahne, wie das wohl funktionieren soll.

Einfacher wäre das aber (weil ich dann nicht erst auf die Idee kommen müsste ein INDEX ON mit ppo kompilieren zu müssen, und das dann auch testweise mal umzusetzen), wenn in der Hilfe zu OrdCondSet() direkt drin stehen würde wie das einzusetzen ist.

Jan

Re: Descending Index

Verfasst: Di, 05. Sep 2023 17:35
von Manfred
alb->(ordCondSet(,,,,,,alb->(RECNO()),,,,.T.,,,))
alb->(OrdCreate(UVZ_TEMP() + "\XXX","satz","SubStr(satz ,1,21) + SubStr(satz ,27,1)"))

Re: Descending Index

Verfasst: Di, 05. Sep 2023 17:52
von Frank Grossheinrich
Hallo Jan,

nun gut, die Doku ist hier nicht ausschweifend, aber meiner Meinung nach ausreichend: https://doc.alaska-software.com/content ... ndset.html
Was benötigst du mehr?

Grüße
Frank