TSearch

Iz SDMS
Jump to navigationJump to search

Razred Search je namenjen iskanju po bazi v smislu spletnih iskalnikov ("Full Text Search").

Določanje nastavitev

V kolikor nameravate uporabljati "Full Text Search", je potrebno najprej sistemu povedati, po katerih plasteh in poljih naj se iskanje izvaja ter v kakšni obliki naj se prikazujejo zadetki. Te nastavitve naj se dodajo v nek modul, ki se naloži ob zagonu aplikacije.

 // v iskanje dodamo parcele
 Search.AddCategory('Katastrske parcele', 'parc', [parcele], 'hint', '')
 // določimo način prikazovanja parcel v programu
 Search.AddTemplate('txt', [parcele], '[F a], [F b],[F b]')
 // določimo način prikazovanja parcel na spletni strani
 Search.AddTemplate('htm', [parcele], '[F a]<br>[F b]<br>[F b]')

AddCategory

Metoda AddCategory doda novo kategorijo iskanja.

Method TSearch.AddCategory (Title, Name As String, Layer As TLayer, Fields, SQL As String)
TitleStringNaslov kategorije, ki se prikaže ob skupini zadetkov te kategorije,
NameStringIme oz. šifra kategorije, s katerim lahko omejimo iskanje samo na to kategorijo,
LayerTLayerPodatkovna plast, iz katere se črpajo podatki,
FieldsStringSeznam imen polj, ki jih uvrščamo v iskanje (ločena so z vejico),
SQLStringOpcijsko lahko navedemo še pogoj za filtriranje podatkov (če želimo uvrstiti v iskanje samo del podatkov).

AddTemplate

Metoda AddTemplate doda novo obliko prikaza zadetkov.

Method TSearch.AddCategory (Name As String, Layer As TLayer, Template As String)
NameStringIme oz. šifra predloge,
LayerTLayerPodatkovna plast, na katero je vezana predloga,
TemplateStringPredloga, ki se uporabi za oblikovanje zadetkov,

Izdelava indeksa

Sama nastavitev parametrov za "Full Text Search" ni dovolj, naslednji korak je izgradnja indeksa. Ta operacija je pri manjših podatkovnih plasteh skoraj trenutna, pri večjih pa lahko traja tudi nekaj minut.

BuildIndex

Metoda BuildIndex na novo izgradi indeks za eno ali vse kategorije iskanja.

Method TSearch.BuildIndex (Category As String)
CategoryStringOpcijsko ime kategorije, za katero naj se na novo izgradi index. Če je ta parameter prazen, se na novo izgradijo vse kategorije.

Update

Metoda UpdateIndex na novo izgradi samo tiste kategorije, ki so potrebne prenove.

Method TSearch.UpdateIndex

Iskanje

Ko smo določili nastavitve iskanja ter izgradili indeks, se lahko lotimo samea iskanja.

Execute

Metoda Execute nam izvede iskanje po danem besedilu in vrne zadetke v željeni obliki.

Method TSearch.Execute (Query, Template, Category As String, Hits As Long) As String
QueryStringKljučne besede, ki jih iščemo. V seznamu zadetkov bodo le tisti zapisi, ki vsebujejo vse podane besede.
TemplateStringIme predloge, ki naj se uporabi za oblikovanje zadetkov,
CategoryStringOpcijsko ime kategorije, na katero želimo omejiti iskanje,
HitsLongNajvečje število zadetkov po kategoriji. Če je ta parameter 0, se izpišejo vsi zadetki, kar pa ni priporočljivo, ker jih je lahko zelo veliko.
ResultStringSeznam zadetkov v želeni obliki.

<source class="example">

Write(Search.Execute('laško 223/1', 'txt', , 10))

<source>