Gary, Albert :

>
When I have a large list such as this, I do a dialog first to grab a first
few characters as a filter to reduce the size of the return set.
<

I had also this problem and found this solution convenient :
Column 'lettre' is a computed column that contains the first char
(SGET(motcle,1,1)) of the column to seek (motcle).
So, user don't have to type into a dialog box (just choose the rigth
letter), and only the rigth occurences are shown ....

SET WALKMENU ON
-- Phase 1 : Choix de la 1�re lettre
SET VAR vcaption = ('LOGINTRA. Interface fichier NC8 du' & (CTXT(.vdate)))
CHOOSE vchoix FROM #VALUES FOR DISTINCT lettre +
FROM motcle AT 10, 20 +
TITLE 'Choisir le 1er caract�re du mot-cl� � rechercher :' +
CAPTION .vcaption LINE 18
IF vchoix = '[Esc]' THEN
   -- Fin recherche
   GOTO suite
ENDIF

-- Phase 2 : Pr�sentation des mots cl�s commencant par la lettre choisie
SELECT COUNT(*) INTO vINT FROM motcle WHERE lettre = .vchoix
SET VAR vINT = (LMIN(18, (.vINT + 1)))
SET WALKMENU ON
CHOOSE vchoix FROM #VALUES +
FOR motcle +
FROM motcle WHERE lettre = .vchoix AT 10, 20 +
TITLE 'Choisir le mot-cl� � rechercher :' +
CAPTION .vcaption LINE .vINT
SET WALKMENU .vwalkmenu
IF vchoix = '[Esc]' THEN
   -- Fin recherche
   GOTO debut
ENDIF

Just an idea ....

J.M. GRATIAS, Logimatique

Reply via email to