Umlaute im Index und SCOPE und FILTER

Zugriff, Engines, Konvertierung. Von ADS über DBF bis zu SQL.

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Umlaute im Index und SCOPE und FILTER

Beitrag von Manfred »

Das war mal wieder ein tolles Erlebnis. Ich habe etliche Zeit verbraten, bis ich den Fehler endlich gefunden habe.
In einer DBF sind mehrere Sätze mit gleichem Inhalt, auf denen ein Index liegt. Soweit so gut. Ich mußte auf dieses Feld einen Scope setzen SCOPE_BOTH. Leider kam überhaupt nicht das Ergebnis dabei heraus, was ich erwartet habe und haben wollte. Es waren 2 Sätze mit ü an gleicher Stelle drin, aber nur der erste wurde immer angezeigt. Irgendwann zweifelt man an seinem Verstand. nachdem ich immer wieder die Sache von allen Seiten beleuchtet habe aber keine Lösung am Horizont war, habe ich den Scope weggelassen und mir angeschaut, was denn da überhaupt angezeigt wird. Und jetzt kommt der Klops: Zwischen den beiden ü hat sich ein ue in der Sortierung geschoben. Und damit war der Scope natürlich überfordert. Ü und dann ue? Nö, das gehört da nicht zu also wird hier abgeschlossen. Also sieht man auch immer nur den 1 Satz. Was für ein Mist.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von brandelh »

und wieder erinnere ich an meine Funktion, die für die indizierung ü nach ue umsetzt, und das seit ich mit clipper angefangen habe 1987 !
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Manfred »

das ungewohnte für mich war ja nur, das "ü" "ue" "ü" erfolgt. ich dachte eigentlich dass entweder "ue" "ü" oder "ü" "ue" sein müßte. Aber durcheinander?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von UliTs »

Das hängt davon ab, was nach dem ü oder ue kommt... ;-)
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Werner_Bayern »

Servus,

bei mir läuft unter dbfntx und set collation to german eine Suche über Scope mit Umlauten nicht. Also z. B. top "Ü", Bottom "Z" bringt keine Ergebnisse, top "U" dann schon.
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von AUGE_OHR »

Werner_Bayern hat geschrieben: Di, 16. Okt 2018 13:32 bei mir läuft unter dbfntx und set collation to german
warum verwendest du eine Collation mit DBFNTX :shock:

@Manfred : schon mal mit

Code: Alles auswählen

SET OPTIMIZE OFF
versucht ?
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Jan »

Ich hab das mal vor einiger Zeit nach einer Diskussion hier im Forum per SetLexRules gelöst.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Manfred »

@Jimmy,
nein habe ich noch nicht versucht. habe ich auch nicht dann gedacht bisher. Ich möchte es aber derzeit nicht probieren, wer weiß welche Seiteneffekte ich dann wieder erlebe, die mir neue Sorgen bereiten. :roll:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Werner_Bayern »

AUGE_OHR hat geschrieben: Di, 16. Okt 2018 18:29 warum verwendest du eine Collation mit DBFNTX :shock:
Was schockiert Dich daran?
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von AUGE_OHR »

Werner_Bayern hat geschrieben: Di, 16. Okt 2018 20:10 Was schockiert Dich daran?
DBFNTX hat ja default

Code: Alles auswählen

  SET COLLATION TO GERMAN
also frage ich mich was du das (wann) setzt :?:

---

ich kann es nicht nachvollziehen mit DBFNTX (default Einstellung)

Code: Alles auswählen

PROC MAIN
LOCAL x
   CLS
   dbCreate( "__COLL", {{ "CHAR", "C", 3, 0}})
   USE __COLL EXCLUSIVE NEW
   FOR x := 1 TO 255
      dbAppend()
      __Coll->Char := Replicate( CHR( x),3)
      dbCommit()
   NEXT
   INDEX ON __Coll->Char TO __COLL
   browse()
RETURN
gibt bei mir
UUU -> CHR(85)
ÜÜÜ -> CHR(154)
VVV -> CHR(86)

uuu -> CHR(117)
üüü -> CHR(129)
vvv -> CHR(118)
gruss by OHR
Jimmy
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Manfred »

SetLexRule. Was passiert denn dann da? Wird dabei nicht nur der Index "beinflusst". Die Eintragungen öäü oe ae ue bleiben doch trotzdem in der DBF selbst erhalten und da wird ja bei Filter oder Scope drauf zugegriffen!? Somit gelten doch die Werte, die in der DBF stehen und nicht die, die im Index stehen, oder? Und wenn dann trotzdem ae mit ä vermischt in der Reihenfolge erscheint, dann klappt doch Scope und Filter genauso wenig. oder denke ich jetzt falsch?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Jan »

Manfred,

klar bleiben die Einträge in den dbf erhalten. Das wäre ja übel, wenn die automatisch verändert werden würden.

Nein, bei allen Zugriffen werden einfach die aufgeführten Zeichen gegen die Gegenparts ersetzt. Nur intern. Aber wenn ich dann z. B. einen Eintrag {"ä", "ae"} habe, dann ist ä und ae gleichwertig in allen Sortierungen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Manfred »

im Index, aber was passiert wenn Scope geetzt wird, ist dann dafür auch alles gleich? Es steht ja in der DBF selbst immer noch ä oder ae und würden dann

1) ä
2) ae
3) ä
4) ä

alle 4 genommen werden oder nur der 1. wenn ich ä scopen würde. Jetzt ist es ja ja so, das nur der 1. genommen wird bei Scope
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Umlaute im Index und SCOPE und FILTER

Beitrag von Jan »

Manfred,

bau es doch einfach mal ein. Dann siehst Du es doch sofort.

Auf jeden Fall - und ohne es jetzt explizit getestet zu haben - würde ich sagen, daß es klappen müßte. Der Scope orientiert sich ja am Index, und den beeinflusst Du mit SetLexRule().

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Antworten