Avatar billede stig3 Mester
31. august 2000 - 10:20 Der er 8 kommentarer og
1 løsning

Parameterværdi ?

Jeg har en stump vb-kode:

Kombinationsboks134.SetFocus
init = CStr(Trim(Kombinationsboks134.Text))

MsgBox (init)

DoCmd.RunSQL \"Update dbo_Cirkulation Set Priotet=Priotet+1 Where Priotet >=\" & Priotet & \" And Bladnr=\" & BladNr & \" And Cirkulationsliste= \" & Me!Tekst132 & \";\"

DoCmd.RunSQL \"Insert into dbo_cirkulation(Bladnr,Initialer,PersonID,Cirkulationsliste,Priotet) values (\" & Me!Kombinationsboks102 & \",\" & init & \",\"\"\" & Me!Kombinationsboks134 & \"\"\",\" & Tekst132 & \",\" & Priotet & \");\"


problemet er at den spørger efter en parameterværdi når den skal skrive den sidste insert-docmd.

Jeg har lavet msgbox\'en for at finde ud af om init indeholder det ønskede og det gør den !!!
Men når den forsøger at skrive den tekststreng ind i databasen spørger den alligevel efter en parameterværdi i stedet for bare at indskrive strengen.

Det skal måske nævnes at kombinationsboks134 er en rullegardinsmenu med en underliggende forespørgsel, der henter personens ID og initialer. Det er nok derfor problemet opstår, men jeg ved ikke hvordan det løses. Jeg har prøvet hvad jeg kunne for at convertere den til en almindelig strengværdi.
Avatar billede sjensen Nybegynder
31. august 2000 - 11:09 #1
Prøv at fjerne alle de ekstra gåseøjne du har i:

& \",\"\"\" & Me!Kombinationsboks134 & \"\"\",\" &

således at det ser således ud:

& \",\" & Me!Kombinationsboks134 & \",\" &
Avatar billede stig3 Mester
31. august 2000 - 11:10 #2
Jeg har set det og ændret det, men det giver desværre ingen forskel.
Avatar billede styrmand Nybegynder
31. august 2000 - 16:30 #3
Du har 2 felter/Variabler med navnene Tekst132 og Prioritet. Hvis det formularfelter, bør du nok også placere Me! foran dem.
Det fremgår ikke helt klart, om det faktisk er ME!Kombinationsboks134, som skaber problemet.
Endelig er der den mulighed at du har en stavefejl i dine feltnavne Bladnr, Initialer, PersonID, Cirkulationsliste og Prioritet. Disse felter skal have eksakt det samme navn som tabellen dbo_Cirkulations navne. Hvis de ikke er stavet på samme måde, vil parameterboksen også fremkomme.
Avatar billede poulh Nybegynder
31. august 2000 - 17:05 #4
Hvis der er tekst værdier i en eller flere af dine felter  mangler der så ikke et sæt \'\' omkring dem
F.eks.    & \",\'\" & me!FeltMedTekst & \"\',\"
Avatar billede poulh Nybegynder
31. august 2000 - 17:10 #5
ja det blev ikke til at se, men jeg mener et sæt
enkelt gåseøjne kan vi jo kalde dem.
Avatar billede stig3 Mester
01. september 2000 - 08:25 #6
Det er IKKE kombinationsboks 134, der er skyld i problemet. Det har kørt og virket i længere tid, hvorefter jeg har tilføjet \"init\" variablen i et forsøg på at få initialerne til at virke.

Jeg har prøvet med Me! så det nu ser således ud:
Kombinationsboks134.SetFocus
init = CStr(Trim(Me!Kombinationsboks134.Text))

MsgBox (init)

DoCmd.RunSQL \"Update dbo_Cirkulation Set Priotet=Priotet+1 Where Priotet >=\" & Priotet & \" And Bladnr=\" & BladNr & \" And Cirkulationsliste= \" & Me!Tekst132 & \";\"

DoCmd.RunSQL \"Insert into dbo_Cirkulation(Bladnr,Initialer,PersonID,Cirkulationsliste,Priotet) values (\" & Me!Kombinationsboks102 & \",\" & init & \",\" & Me!Kombinationsboks134 & \",\" & Tekst132 & \",\" & Priotet & \");\"

Men det gør ingen forskel jeg bliver stadig rykket for en parameterværdi.
Avatar billede stig3 Mester
01. september 2000 - 08:29 #7
Den kommer frem med meddelelsen

\"indtast parameterværdi\"
\"SJE\"                      - som er initialerne der er valgt i kombinationsboks134
\"  ---- tekstfelt ----------    \"

Hvis man så skriver SJE i tekstfeltet virker det efter hensigten, men det burde ikke være nødvendigt at gentage sig selv.
Avatar billede poulh Nybegynder
01. september 2000 - 18:09 #8
Hvis der kommer en meddelelse med det du har tastet ind som så senere bliver til INIT
så tror jeg også stadig det er et par enkelte gåseøjen der mangler
& \",\' \" & init & \" \',\" &
For ikke at komme til at ligne en kvæulant vil jeg love aldrig at nævne fjerkræ igen hvis det ikke er rigtig ;-)
MVH PoulH
Avatar billede stig3 Mester
05. september 2000 - 13:33 #9
Jo du havde ret.

Jeg misforstod i første omgang da du brugte ordet enkelt gåseøjne. Men det virker efter det du har skrevet med......... appostroffer ;-)

Egentligt pinligt logisk at der skal \'\' omkring tekststrenge i SQL.
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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