Avatar billede maxwell Nybegynder
01. april 2008 - 09:23 Der er 15 kommentarer og
1 løsning

dblookup i lokalt view

Jeg har et lille view med navn samt afdeling. På en form (i samme database) skal jeg vælge et navn fra listen og når det er valgt skal feltet med afdeling lave et opslag i viewet for at finde afdelingen - men jeg kan ikke få den til at lave opslaget - hurtig hælp søges.. er jeg ved at stirre mig blid på det ... hvordan gør jeg???
Avatar billede jogii Nybegynder
01. april 2008 - 09:30 #1
den oversigt , som du slår op i, skal være sorteret i første kolonne, som indeholder navnet.
Navnet, er det af Names-felt typen, altså et felt som indeholder ekstra tegn som "CN= og O=", så skal oversigten du slår op i også have det. Hvis ikke, så brug @Name( [CN] ; <navnet>) for at få CommonName ind i nøglevariablen

Jeg kan høre det er første gang du har prøvet DbLookup, er det rigitg?
Avatar billede maxwell Nybegynder
01. april 2008 - 09:35 #2
nej - det er faktisk ikke første gang... :-((((

men navnet er ren tekst (ikke hentet fra NAB'en) mit opslag ser sådan ud:
@DbLookup( "":"NoCache" ; "" : "" ; opslag-med-afd ; bruger ; 2 ; "");
mit felt med navn hedder "bruger" og i viewet skal ha værdien i kollone 2....
Avatar billede jogii Nybegynder
01. april 2008 - 10:57 #3
Prøv med "" i stedetfor "" : "" for angivelse af database. "" betyder blot "denne base", ligemeget om det er på serveren eller lokalt basen er placeret.

@DbLookup( "":"NoCache" ; "" ; opslag-med-afd ; bruger ; 2 ; "");
mit felt med navn hedder "bruger" og i viewet skal ha værdien i kollone 2...
Avatar billede maxwell Nybegynder
01. april 2008 - 11:40 #4
Denne er hvad den så sætter ind i feltet...
ERROR: Incorrect data type for operator or @Function
Avatar billede jogii Nybegynder
01. april 2008 - 11:43 #5
så vis hele koden. Hvad er oplsag-med-afd for en størelse?
Du må da ikke bruge - i feltnavn eller variable. det eret minustegn
Avatar billede maxwell Nybegynder
01. april 2008 - 12:00 #6
"opslag-med-afd" er et alias til mit view som indholder navn i col1 og afdeling i col2 - jeg har nu omdøbt det til "opslag1"
Avatar billede jogii Nybegynder
01. april 2008 - 12:05 #7
eller har du bare glemt anførselstegn "opslag-med-afd"
Avatar billede maxwell Nybegynder
01. april 2008 - 12:06 #8
det har jeg med nu....
samme problem
Avatar billede maxwell Nybegynder
01. april 2008 - 12:13 #9
jeg har ikke lige overskud til at prøve at løse dette nu - men smid et svar så får du for forsøget...
Avatar billede jogii Nybegynder
01. april 2008 - 12:29 #10
det er normal ikke noget problem overhovedet ...

@DbLookup( class : cache ; server : database ; view ; key ; columnNumber ; keywords)

Prøv at undlade keyword, som du sætter til blank.

så med andre ord:

_variabel := @DbLookup( "":"NoCache" ; "" ; "opslag1" ; bruger ; 2);


Kolonne 1 i oversigten "opslag1" er sorteret efter navn.
Variblen <bruger> indeholder det navn som du leder efter. Har du tjekket om bruger indeholder værdi ved at prompte først
@Prompt([OK]; "debug"; @Text(bruger));
Avatar billede maxwell Nybegynder
01. april 2008 - 12:44 #11
OK - nu har jeg også sat den prompt ind - den skriver det rigtige navn - men nu sætter den "1" ind - og ikke den afdeling som bruger sidder i????
Avatar billede maxwell Nybegynder
01. april 2008 - 12:45 #12
måske skal jeg også fortælle at jeg har skrivet koden under - afdeling (Field) : Value

Den skulle være god nok ikke??
Avatar billede maxwell Nybegynder
01. april 2008 - 13:00 #13
OK - så prøver jeg lige igen... min @Prompt giver mig det rigtige resultat nu - men den skrives ikke til feltet???? hvad gør jeg galt HER?

@Prompt([Ok]; "debug"; @Text(bruger)+" " +@Text(@DbLookup( "":"NoCache" ; "" ; "opslag1" ; bruger ; 2)));
@SetField(afdeling ; @Text(@DbLookup( "":"NoCache" ; "" ; "opslag1" ; bruger ; 2)));
@All
Avatar billede jogii Nybegynder
01. april 2008 - 13:17 #14
Du skal lige finde ud af hvor koden skal placeres.
Jeg synes den skal ligge i feltet Afdeling, som skal være computed.


_key := Bruger;
_view := "opslag1";
_column := 2;
_look := @DbLookup( "":"NoCache" ; "" ; _view ; _key ; _column);
@If(@IsError(_look); @Text(_look); _look);

Jeg tror det der fejler i din egen kode er at du skriver @SetField( afdeling ; ..)
det er nok @SetField ( "afdeling"; ... ) du skal bruge.

du skal med andre ord passe på hvornår det er konstanter (strenge) du angiver eller variable.
Avatar billede jogii Nybegynder
01. april 2008 - 13:17 #15
Nå det var efterhånden nok et svar :-)
Avatar billede maxwell Nybegynder
01. april 2008 - 13:25 #16
tak for hjælpen...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester