Seite 1 von 1

Scope auf leeren Wert [ERLEDIGT]

Verfasst: Mo, 24. Okt 2016 16:45
von Manfred
ich müßte einen Scope bilden, der auch mal leer sein kann. Sprich dann darf nichts angezeigt werden. Geht das überhaupt? Im Moment sehe ich das so, oder aber ich stelle mich zu deppert an.

Re: Scope auf leeren Wert

Verfasst: Mo, 24. Okt 2016 16:51
von Tom
Du meinst einen Scope, dessen Rückgabemenge quasi null ist, der also keine Datensätze einschließt? Das ist gang und gäbe. EoF() ist in der Workarea die ganze Zeit .T. .

Oder meinst Du einen Scope ohne Bedingung? DbSetScope(SCOPE_BOTH,NIL) - so etwas?

Re: Scope auf leeren Wert

Verfasst: Mo, 24. Okt 2016 16:56
von Herbert
Falls leer (Blanks? Null? oder NIL?), setze die Bedingung auf einen nie zu erfüllenden Wert...
Falls du mit irgendeinem SQL sprichst, könntest einen Query erstellen, der in diesem Fall nicht ausgeführt würde und entsprechend hättest keine Daten zum Anzeigen oder Verarbeiten.

Re: Scope auf leeren Wert

Verfasst: Mo, 24. Okt 2016 17:02
von Manfred
ok, anders formuliert.
Tabelle mit Index auf Datum Unique und auf Datum ohne Unique
jetzt wird die Tabelle einmal mit dem Unique Index im Browse gezeigt und einem Scope auf Monatsanfang bis Monatsende.
das klappt.
Die Tabelle wird mit dem 2.Index dazugeöffnet in einem weiteren browse, aber jetzt mit einem Scope auf das jeweilige Tagesdatum, auf dem der Unique Index gerade steht. Wenn es einen Satz dazu gibt, dann klappt das, wenn es keinen gibt, dann wird alles angezeigt. Also der Scope scheint überhaupt nicht zu wirken.

Aber ich sehe gerade, Herbert hat einen Tipp dazwischengeworfen, den ich erstmal versuchen werde.

Re: Scope auf leeren Wert [ERLEDIGT]

Verfasst: Mo, 24. Okt 2016 17:07
von Manfred
auh man, welche Blamage. Darauf hätte ich auch alleine kommen müssen. Sieht so aus, als wenn es so klappt.
Danke Herbert.

Re: Scope auf leeren Wert [ERLEDIGT]

Verfasst: Mo, 24. Okt 2016 17:08
von Tom
Wenn dieselbe Tabelle einen Unique-Index auf einem Datumswert hat und einen weiteren Index auf dem selben Datumswert ohne Unique-Eigenschaft, dann kann der Fall nie eintreten, von dem Du da sprichst. Ein Datumswert, der im Unique-Index enthalten ist, muss auch mindestens einmal im zweiten Index vorhanden sein.

Wie sieht Deine Scope-Bedingung für den zweiten Fall aus? Datumssachen sind immer schwierig, wenn man mit CtoD/DtoC arbeitet, weil dann ganz anders sortiert wird.