Avatar billede lasse_32 Nybegynder
23. marts 2004 - 19:45 Der er 23 kommentarer og
1 løsning

Referencefelt på variable

Jeg har på en form indsat en variabel og ønsker at der skal være referencefelt på feltet. Ved tryk på alt H, skal jeg kunne slå op i Medarbejder.Medarbejder. Er det muligt at gøre det..... så det virker på samme måde, som hvis det er et databasefelt, man har indsat?
Avatar billede mariaf Juniormester
23. marts 2004 - 20:02 #1
Ja det kan man sagtens. Koden er GET(&var REF kartotek.felt)
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 20:05 #2
Og hvor skal man skrive det?
Måske i pre-field triggeren på feltet?
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 20:19 #3
Det virker ikke i pre-field. Bl.a. vil den ikke acceptere min syntaks, når jeg skriver den som du siger!?
Avatar billede mariaf Juniormester
23. marts 2004 - 20:45 #4
Åh, misforstod spørgsmålet.
Ja, det kan man godt, men jeg er ikke lige sikker på syntaksen. Finder lige ud af det.
Avatar billede mariaf Juniormester
23. marts 2004 - 20:58 #5
Teksten skal lægges på Pre-field, så den er god nok :-)
Men den er noget langhåret, så hvis det driller, er det ikke uden grund.

SET &help = "Her står hjælpeteksten"
SET &Parm = 'File='+FileStr(kartoteksnavn)+
            'List=Felt'+
            'Command='+IndexStr(kartotek,index)+
            'Command=Search'+
            'Mode=Selece='FieldStr(Kartotek,felt)

Pas på at der ikke er mellemrum. Af en eller anden grund, så virker koden nemlig ikke med mellemrum.
Der skal eksistere et listbillede, der har samme navn som Felt, og selvfølgelig med de ting, du ønsker at vise fra kartoteket (få men relevante oplysninger).
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 21:14 #6
Det virker nogenlunde, men jeg bliver bedt om at vælge et kartotek og derefter et indeks, når jeg slår op med alt H. Men jeg har sat kartotek, felter samt indeks ind der hvor de skal. Desuden findes der et listbillede som hedder medarbejder og det er det jeg vil bruge.
Kan du regne ud, hvad der er galt?
Avatar billede mariaf Juniormester
23. marts 2004 - 21:30 #7
Indexet skal nok være MedIdx, Kartoteket Medarbejder og Felt Medarbejder. Listbilledet skal hedde medarbejder.
Hvis det er på plads, så begynder det at knibe med idéer (lige nu).
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 21:37 #8
Her er teksten, måske det hjælper?:

SET &help="Her står hjæpeteksten"
SET &Parm='file='+FileStr(Medarbejder)+
'list=Medarbejder'+
'command='+indexstr(Medarbejder,MedIdx)+
'command=search'+
'mode=select='+FieldStr(Medarbejder,Medarbejder)
Avatar billede mariaf Juniormester
23. marts 2004 - 21:56 #9
Du får mig da også på arbejde i aften :-)
Der skal være mellemrum mellem ' og hhv list, command, og mode, så virker det.

SET &Parm='file='+FileStr(Medarbejder)+
' list=Medarbejder'+
' command='+indexstr(Medarbejder,MedIdx)+
' command=search'+
' mode=select='+FieldStr(Medarbejder,Medarbejder
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 22:11 #10
Det er ikke meget der skal til hva *sg*. Du har ret, nu ryger jeg direkte ind i listbilledet, som jeg gerne ville. Nu er mit eneste problem bare, at jeg ikke kan trække værdien med ned i det felt, hvor jeg kalder fra. Tjah, hvis du snart skal til at i seng, kan vi jo fortsætte en anden dag!? Må jeg forresten spørge, hvad din baggrund er for at have al den viden om c5/xal!?
Avatar billede mariaf Juniormester
23. marts 2004 - 22:20 #11
Jeg er systemprogrammør på C5 og XAL, så jeg _skal_ vide det. Der er bare langt imellem at jeg bruger lige netop denne problemstilling.
På feltet er der en række parametre (findes ved at trykke F6). En af dem hedder Søgning efter input. Det skal stå til Ja.
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 22:24 #12
Har prøvet at sætte til JA, men det hjælper ikke.
Er det måske fordi at ordet file skal erstattes med det variabelnavn jeg bruger på mit skærmbillede. Eller skal &Parm evt. erstattes?
Hvor er du systemprogrammør?
Avatar billede lasse_32 Nybegynder
23. marts 2004 - 22:49 #13
Nå, nu er jeg hoppet i seng.
Kigger efter et svar i morgen.
Tak så langt.
Avatar billede mariaf Juniormester
23. marts 2004 - 22:56 #14
Jeg har oprettet et skærmbillede, en blok og et virtuelt felt. Der har jeg lagt koden ind, og det virker fint her. Der mangler nok en opsætning et andet sted - tænker lige over det.
Jeg er konsulent hos Conzern, København
Avatar billede holgergluesing Nybegynder
24. marts 2004 - 02:10 #15
Undskyld jeg mænger mig men måske jeg må bidrage med " putfield=xxx" og "command=find".

I et nyoprettet skærmbillede hvori jeg har oprettet en blok ud fra kartoteket Parametre, hvori jeg igen har indsat feltet Tekst1 kan jeg få flg. til at du
SET &Parm= "File=Medarbejder "+
          "List=Medarbejder "+
          "Index=MedarbejderIdx "+
          "SearchField=Medarbejder="+Tekst1+" "+
          "Command=Find "+
          "Mode=Select=Medarbejder "+
          "PutField=Tekst1"

Til gengæld er min XAL slet ikke med på at den vil være med til noget som helst 'virtuelt'. Når jeg fx. opretter et alfa 10 felt i samme blok der navngives HGL
og derpå skriver
SET &Parm= "File=Medarbejder "+
          "List=Medarbejder "+
          "Index=MedarbejderIdx "+
          "SearchField=Medarbejder="+&HGL+" "+
          "Command=Find "+
          "Mode=Select=Medarbejder "+
          "PutField=&HGL"
... terminerer XAL'en bare med sådan et drøn!

Netop den detalje har jeg også bakset med før og endte så op med at lave en semi-virtuel løsning nemlig at oprette et felt i den aktuelle database-tabel hvorpå jeg derpå satte NEJ i 'Gem feltets indhold'.

I øvrigt er det indrømmet enormt bavlet at fedte med de der forb..... blanke og anførselstegn! Hvis ellers man har tålmodighed til at sætte sig ind i dets inkonsekvente virkemåde findes der i CtrlF12-menuen (udvikling) et 'hjælpeværktøj' kaldet 'Listbilleder' (IKKE det nederste menupunkt!).
Avatar billede lasse_32 Nybegynder
24. marts 2004 - 17:07 #16
Jeg har lige prøvet det du skriver først i dit indlæg.
Når jeg sætter mit variabelnavn ind får jeg følgende fejl:
Databasen er kaldt med et illegalt kartotek....... osv osv.
Skal din kode ikke tages helt bogstaveligt?
Jeg har bl.a. byttet indekset ud med MedIdx!?
Avatar billede lasse_32 Nybegynder
24. marts 2004 - 17:15 #17
Hvad med dig Maria... fandt du ud af noget?
Avatar billede holgergluesing Nybegynder
24. marts 2004 - 21:33 #18
Hej Torben
Din oplevelse svarer præcis til mit 2. eksempel - hvor jeg altså bare oprettede en virtuel streng på 10 karakterer som jeg navngav "HGL".

I mit 1. eksempel har jeg taget udgangspunkt i en nyoprettet formblok til hvilken (blokken) jeg havde tilknyttet en DK/DK-XAL's standard "Parameter"-tabellen. I den findes der et databasefelt, der hedder 'Tekst1', som iht. ovenstående benyttes som afsæt og modtage-areal for listbilledet. Såvidt jeg kan forstå på den tekniske reference er der vist ingen vej udenom at benytte et databasefelt hvis man vil undgå 'udsmidningen'.

.... og så var det at jeg en gang fandt på at arrangere mig med et semi-virtuelt felt.
Avatar billede mariaf Juniormester
24. marts 2004 - 23:10 #19
->holgergluesing: Du har samme fejl som mit første forsøg - der mangler blanke (mellemrum) i kaldet. Du kan sagtens lave et virtuelt felt, og koden virker fint her, og dermed er det lidt svært at gennemskue hvad der er galt hos torben_32.

Checket plejer at hedde "dbd - er der sat referencekartotekt og -felt på" - lst - har det samme feltnavn og slutteligt at der er ja i søg efter input på feltet. Der mangler så lige en.........Du har ikke ændret i opsætningerne på kartoteket, vel? Så er der kun formen tilbage. Du har Ja i rette feltets indhold? Og Ja til søg efter input?
Avatar billede holgergluesing Nybegynder
25. marts 2004 - 13:51 #20
Må jeg erfare hvorledes i hver især opretter / tilknytter de felter i den blok I har oprettet i jeres skærmbilleder?

1) et database-felt, som fx. Tekst1 i Parameter-tabellen, tilknyttes ved at man i
  blokken taster
  a) F2
  b) enter i det felt der dukker op
  c) udvælgelse af feltnavnet 'Tekst1'
2) et virtuelt felt, som fx. &HGL, OPRETTES/ERKLÆRES ved at man i blokken taster
  a) F2
  b) HGL
  c) udvælger felttypen (her Alfanummerisk)
  d) 10 (for længden)

Det første (ex. database-feltet Parameter.Tekst1) virker fint som vist i mit allerførste eksempel. Mens det sidste (ex. &HGL) tilsyneladende IKKE SKAL kunne lade sig gøre.
Avatar billede lasse_32 Nybegynder
25. marts 2004 - 15:17 #21
Nå, jeg tabte tråden lidt! Har fundet en anden løsning til at klare problemet, så jeg kan undgå at slå op i det virtuelle felt. Bare noget med at lave en lille form, hvor medarbejder er kartotek/felt og når jeg skifter medarbejderen følger min globale variabel med. Nok lidt nemmere, er jeg ved at tro :-). Slut på spørgsmålet for mit vedkommende og mange tak for budene.
Avatar billede mariaf Juniormester
25. marts 2004 - 20:37 #22
->holgergluesing: Løsning 2 virker, hvis du bruger den kode, jeg har skrevet 21:56:38 - prøv at kopiere den direkte ind.
->Torben_32: Selv tak. Det var dejligt lige at få genopfrisket lidt af barnelærdommen.
Avatar billede holgergluesing Nybegynder
25. marts 2004 - 23:31 #23
Også jeg takker for hjernegymnastikken ... og at jeg herved fandt frem til løsningen på et problem jeg tidligere har måttet parkere.

Jeg fandt frem til, at det XAL'en i mit allerførste indlæg terminerede for er sekvensen 'Putfield=&HGL' ... og den tumpet nok bare kan undelades!

Således blev mit resultat
SET &Parm =
"File=Medarbejder "+
"List=Medarbejder "+
"Index=MedarbejderIdx "+
"SearchField=Medarbejder="+&HGL+ " " +
"Command=Find "+
"Mode=Select=Medarbejder "

Fremfor
"Command=Search "
der altid lister toppen af oversigten bevirker sekvensen
"SearchField=Medarbejder="+&HGL+ " " +
"Command=Find "
at listbilledet positioners på den forekomst, der ligger nærmest det der i opslagsøjeblikket står i det virtuelle felt ... der i øvrigt er oprettet som beskrevet i den anden metode i mit foregående indlæg.
Avatar billede lasse_32 Nybegynder
28. juli 2004 - 11:50 #24
Slut.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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