Ga naar inhoud
  • 0

Markeren (highliten) van zoekterm in doorzochte tekst


hgroenewegen

Vraag

Ik ben op zoek naar een functie en/of script dat de term van de zoekvraag, na het geven van de zoekopdracht markeert (highlite) in de doorzochte tekst.

 

Case: ik heb een FM bestand met daar in een groot aantal records waar de tekst van oude jaarverslagen in is opgeslagen. Regelmatig komen verzoeken voor het vinden van een naam of ander detail in dit bestand. Probleem ontstaat wanneer bv. 15 bladzijden (records) worden gevonden en ik lang moet zoeken waar de gezochte string in de tekst voorkomt. Het zou het bestand bruikbaarder maken als meteen duidelijk wordt waar de gevonden termen op de bladzijde staan. Ik weet dat er een functie bestaat met de naam: HiliteSingle maar dit is geen standaardfunctie in mijn FM 12 pro (onvindbaar!). Daarnaast wordt bij deze functie geen zoekvraag gesteld maar alleen een term ingetypt. Het is belangrijk dat ik eerst door de hele database heen een zoekvraag kan stellen, alvorens de zoekterm gemarkeerd terug te zien in de gevonden bladzijden.

 

Via internet kom ik niet verder. Ik hoop dat het probleem bij dit forum bekend is en er een oplossing is.

 

Groet!

Link naar reactie

8 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Beste Eise (Sumar), dank voor je reactie. Het voorbeeld dat je geeft is voor mij te complex en FM7 converteert niet goed naar FM12. Ik ben op zoek naar iets heel eenvoudigs waarbij op het beeldscherm een zoekveld naast het tekst-veld (gescande bladzijde uit jaarverslag) staat. Een gebruiker zet FM in de zoekmodus, typt een zoekterm in het zoekveld en geeft enter. Vervolgens verschijnt de zoekterm gehighlite (onderstreept, andere kleur, grotere letters, etc.) in de tekst van de gevonden bladzijde. Door verder door de gevonden records te bladeren wordt de gezochte referentie in de tekst gevonden. Het gaat dus uitsluitend over het vinden van de zoekterm in een brij van tekst d.m.v. markering (naald in een hooiberg).

 

Lang geleden heb ik zo'n functie gevonden en gebruikt in FM5 (lang, lang geleden...). Helaas is dit bestand weg. Ik weet nog wel dat het een relatief eenvoudige oplossing was omdat ik toen erg beginnend was met programmeren. Maar nu tast ik in het duister...

 

Hoop dat er ergens nog een oplossing bestaat.

 

Groet, Hans

Link naar reactie
  • 0
Hoi Hans,

 

Bijgaand een eenvoudige versie,

 

Het maakt gebruik van de custom functie 'HiliteSingle' (je hebt FM Advanced nodig om custom functies te kunnen aanmaken/bewerken)

en een calculatie veld wat de zoekterm rood kleurt, deze staat over de tekst.

 

Er is een globaal zoekveld wat een script triggert en een zoekopdracht uitvoert.

 

Groet, Ruben

 

Beste Ruben, ik ben helaas niet in het bezit van Advanced. Ik geloof dat ik nu een oplossing (heb ontvangen) met de functie Substitute in combinatie met TextStyle en een simpele kopieer opdracht die uit een zoekveld de zoekstring naar het globaal veld kopieert. Dus een zoekscript dat zoekt en vanuit het globaal veld de mogelijkheid van highliten biedt.

Groet, Hans

Link naar reactie
  • 0
Zonder custom functions, maar met eenvoudige substitutes.

 

Beste Banach, dank voor je reactie. Ik heb je Substitute functie gebruikt i.c.m. een apart zoekveld en een kopieeropdracht uit het zoekveld naar het globaal veld. Het script geeft een zoek mogelijkheid én de highlite functie. Nu nog de hoofdletter gevoeligheid van Substitute teniet doen.

Groet, Hans

Link naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...