26. februar 2002 - 14:50Der er
41 kommentarer og 1 løsning
Søgning
Jeg har en medarbejderDB hvori jeg gerne vil kunne søge efter medarbejdere eller kontorvis! Jeg vil gerne lave min egen "søgebjælke" (ikke bare den grimme standrd søgning Notes har indbygget)hvori man skal vælge fra en kombinationsboks om det er navn eller kontor man vil søge efter. Altså ligesom man ville gøre det hvis det var på web! Men hvordan sætter jeg søgningen igang så den søger alle docs i basen igennem og viser svarerne i en frame for sig? /roed
To views og en dblookup der laver opslag udfra valget i kombinationsboxen ? Derefter vise viewet som "embedded" på en page i et frameset.. (bare en hurtig tanke)...
Jeg tror ikke views er godt at basere det på, eftersom at de jo som regel er statiske. Og det skal de jo ikke være i dette tilfælde. Men hvis du mener dte kan lade sig gøre ser jeg da gerne et eksempel på det (koden altså :o)
Det er faktisk lige meget!!! Så længe man kan vælge om man vil søge efter "Mic" og så få en liste over alle der hedder noget med Mic og man kan søge efter "Info" og få de kontorer som hedder noget med Ínfo, så er det lige meget om det er en visning eller søgning som står til grund herfor!
Så kan du også godt nøjes med at bruge to forskellige views - eet til infoopslag og et til mic. Du behøver ikke engang at bruge dblookup. Views er jo ikke statiske på den måde (!)...
For at sige det nemt, så er det faktisk Notes søgebjælke(forstørelsesglasset) som jeg vil have flyttet ned midt i et frameset og så tilpasse det lidt i designet. Men basisfunktionen skal afktisk være det som den kan !!!
Så kan du ikke bruge embedded views. Du kan godt få det til at vise bestemte dokmneter baseret på en kategori, men du kan hverken lave en søgning eller en 'Search text starting with..' (hvor du bare skriver noget mens et view er vist). Hvis du virkelig mener at du kun vil søge efter noget 'der starter med' så er det nemmeste, at lave et view der indeholder alle relevante dokumenter. Dernæst aktiverer du 'Clcik on column header to sort' i relevante koloner (2. tab næsten nederst på kolonnens property i design). Når man herefter klikker på kolonne overskriften sorteres viewet ud fra kolonen, og funktionen 'Search text starting with..' virker nu på denne kolonne og ikke den første sorteret kolonne som normalt.
Notes' egen søge funktion kan du ikke flytte rundt med eller ændre. Alternativt kan du stjæle lidt fra templaten 'Site search', men det er ikke så nemt endda.
Jeg ved godt at jeg ikke rent fysisk kan flytte dens egen søgebjælke, men jeg vil kunne lave et søge felt som har samme funktionalitet. Det må vel være muligt at kunne søger efter en hvilket somhelst del af et ord uden at man SKAL bruge Notes egen!!!
Ja, men så skal du ud i noget med LotusScript, FTSearch method som giver dig en doc.colection som du selv skal håndtere for at få vist, dvs. selv ligge i en folder og jeg-skal-gi'-dig-ska'-jeg... Var det noget? ;-)
Ja, men det er et krav at brugerne kan skrive "And" og så kommer både "Anders" og "Andersine" frem. Ellers er det ikke løsningen!! Og det skriver du jo at jeg IKKE vil kunne! Men jeg behøver heller ikke have et view vist imens, bare en søge side og derefter åbner den evt. et view som viser svarene. Men man kan vel også lave det i HTML med noget JSP eller noget???
Nej, du misforstår. Hvis du enabler 'Click on...' så kan du skrive A og cursoren hopper til første dokumnet der starter med A i den aktiverede kolonne. Skriver du And hopper den til det første dok der starter med And i den kolonne osv. Der er ikke tale om en udvælgelse, blot en styring af cursoren.
Nu var der jo nogen der nævnte script og jeg-skal-gi'-dig-skal-jeg, der kan jeg så indskyde, at hvis det var noget med en formular, hvorfra man kan vælge søgekriterier, hvorefter en søgning placere relevante dokumenter i en mappe (eller hvor det nu skal være), hvorefter formularen lukker uden at gemme (dvs. at hver søgning åbner et nyt dokument, som ikke bliver gemt ved lukning) - så har jeg koden.
Hallo mand! Det lyder interresant. Kan man også få dokumenterne vist i et view i en anden frame end den man søgte fra?? Det hele er bygget op i frames med et weblook nemlig!
Flg. script ligger på en knap, på en form med feltet "searchword". Det søger et view i db'en - alldoc - igennem for alle ord der starter med det indtastede "searchword", og placerer/opretter resultatet i mappen "searchresult". Jeg har ikke gennemtestet det - og er pt ude i "..nu virker det og nu virker det ikke..." - men det BURDE virke, jeg tror at det er en fejl andetsteds der driller mig. Men måske kan det bruges til at bygge videre på.
Sub Click(Source As Button) Dim session As New NotesSession Dim db As NotesDatabase Dim view As NotesView Dim doc As NotesDocument Dim workspace As New NotesUIWorkspace Dim uidoc As NotesUIDocument Set uidoc = workspace.CurrentDocument Dim j As Integer Dim searchword As String soegeord = uidoc.fieldgettext("searchword") + "*" Set db = session.CurrentDatabase Set view = db.GetView( "alldoc" ) j = view.FTSearch(searchword, 0 ) Set doc = view.GetFirstDocument For i = 1 To j Call doc.PutInFolder( "serchresult", True ) Set doc = view.GetNextDocument(doc) Next End Sub
Jeg har lagt søgeformen i et framesæt med to frames. I den anden frame har jeg lagt folder'en og derudover tilføjet call workspace.viewrefresh. Når mappen searchresult først ER oprettet, så kører det fint....
OK, jeg kan ikke rigtig få dit script til at virke fordi jeg ikke kan lave et index i denne base. Det virker åbenbart ikke med DECS?! Men nu harjeg fundet på at lave en liste(kombinationsboks) hvorfra man vælger et kontor og trykker på en knap der så åbner en "page" med et embeddeview på den pågælende kontor. Så er der nogen som kan fortælle mig hvordan man får vist det rette kontor når man har valgt det og trykker på knappen??? /Michael
>>roed, du skriver: "Så er der nogen som kan fortælle mig hvordan man får vist det rette kontor når man har valgt det og trykker på knappen???" Hvilken knap taler vi om her?
I den ne løsning jeg har udtænkt har jeg et felt(kombinaionsboks) med alle de forskellige kontorer. Man vælger så hvilket kontor man vil se og ved at trykke på "Søg"-knappen bliver der vist den page som er knyttet til det valg der er gjort! Er det forståeligt nu???
ja ja, så skal du bare oprette et view kategoriseret på kontor og vise dette som dit embeddede view. For at vise det på en page skal du oprette en form der indeholder appletten og 2 felter: VisView og VisKategori. Det embeddede view opretter du som 'based on formula'. Det har 2 properties du kan accesse: 'Embedded selection' og 'Show single category'. Koden til disse skal være henholdsvis VisView og VisKategori. Nu lader du din 'søg' knap opdatere disse to felter med henholdsvis navnet på dit view (kat. på kontor) og navnet på dit kontor (kategorien). Voilá - det embeddede view viser kun dokumenter i denne kategori! Husk: at knappen skal enden med command refreshhidden fields (eller hva' det nu hedder :-) )
PS: VisView kan helt udelades hvis du kun har et view, men du startede med at tale både at vise pr. kontor og pr. navn. Med feltet kan du skifte mellem flere views.
Hmmm, lad mig lige se om jeg forstår dette rigtigt. Jeg laver en formular hvor jeg har min kombinationsboks med kontor valgmulighederne og min søge knap. Så tilføjer jeg to skjulte felter VisView og VisKategori. Dernæst opretter jeg en page hvor jeg embedder et view på baggrund af en formel. Jeg indtaster 'VisView' i 'Embedded selection' og 'VisKategori' i 'Show single category'! Er det korrekt? For jeg får en fejl når jeg indtaster 'VisView' under 'Embedded selction' på min page !!!
Det virker stadig ikke. Den vil ikke æde VisView somen værdi i det embeddede view. Den vil kun godtage navne på de views som jeg har oprettet! Hvilken funktion skal de to felter have? Skal de afspejle mit kontorfelt?
Man kan da ikke inkludereren form på en page, eller kan man??? Jeg kan ikke finde det nogen steder ihvertfald! Og kan man undgå at man bliver spurgt om man vil gemme dokumentet når man lukker søgningsdokumentet???
Det virker bare perfekt. Nu mangler jeg bare at kunne lave den ski... "fritekstsøgning" så man kan søge på dele af et navn! Kan man ikke lave det på nogenlunde samme måde som den anden søgning?? Altså med at søge i et view og få det vist der???
Joe, delvist. Du er så blot nødt til at have samtlige navne som kategorier. Jeg ved faktisk ikke om du kan få vist en kategori ved at blot at skrive noget af den. Under alle omstændigheder kan du kun 'søge' på starten af kategorien, dvs. de navne der starter med det du søger på. Du kan ikke vise alle med navn der ender på 'sen' e.lign.
Alle navne som kategorier!?!? Det går ikke, der er mere en 350 navne, så det er udelukket. Det skal bare være et felt vhor man netop kan skrive "sen" og så kommer "Petersen & Pallesen & Poulsen" uden Pil ;o) Det har jeg stadig ikke fået ovenstående script til at gøre. Brokker sig over at basen ikke er indekseret, selvom den er det !
Så ved jeg s.. ikke lige på stående fod (siddende r..) :-) Jeg har ikke lige tid at teste, men lad høre hvis du finder en løsning i mellem tiden. "I'll be back" :-)
Ja, det var jo så lidt, selv om det jo ikke var med min gode vilje at jeg hjælper dig til tops på Top10 ;o) Jeg ånder dig lidt i nakken, men jeg må sgu se at få besvaret nogle fede spørgsmål så jeg kan komme op på dig...Jeg synes du begynder at løbe lige lovlig hurtigt...Hi hi /roed
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.