29. oktober 2000 - 18:53Der er
7 kommentarer og 1 løsning
Justering af lager
Hej Access Experter.
Jeg har et lille problem jeg håber i kan hjælpe mig med.
Jeg har en lagerdatabase, som ligner en typisk lager database. Dvs. Antal varer på lager, Varenummer, Beskrivelse, Leverandør, osv.
Det jeg gerne ville lave, er at man har et felt der hedder \'Juster\' i en formular. I dette felt indtaster jeg så en værdi, og alt efter om jeg trykker på + eller -, skal denne værdi ligges til eller trækkes fra, antalet af varer på lager.
Jeg har fået det til at fungere ved hjælp af en plus og en minus knap i formularen, (altså knapper jeg klikker på med musen), men når jeg så tager koden og bruger den sammen med enten, keyDown, KeyUp, eller Keypress, kommer problemet.
Koden virker som sådan godt nok. Den reagerer på tastetrykket (Plus eller minus) Den fortsætter med at kontrollere om værdien er henholdsvis større eller mindre end 0. Den juster antal feltet, bare ikke korrekt.
Når jeg åbner min formular, er mit juster felt automatisk sat til nul. Jeg kan sagtens udføre mit tastetryk, og dette giver ingen fejl. FØRSTE GANG! Anden gang jeg taster f.eks. plus, får jeg fejl 13, altså, typerne passer ikke sammen. Hvis jeg indtaster værdien 5 i feltet, går til designvisning, åbner formularen igen, og taster plus, ligger den 5 til. Som den skal. FØRSTE GANG! Herefter fås fejl 13 igen!
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Private Sub Juster_Keydown (Keycode As Integer, Shift As Integer) If Keycode = vbKeyAdd Then If Juster > 0 Then Antal = Antal + Juster Juster = \"\" End If End If End Sub
Og tilsvarende for minus tasten (vbKeySubtract)...
Jeg har ved hjælp af to kommandoknapper, en plus, en minus, og nedenstående kode, fået det ønskede resultat.
Private Sub Plus_click() If Juster > 0 Then Antal = Antal + Juster End If End Sub
Problemet kommer, når jeg bruger koden sammen med KeyDown (vbKeyAdd/vbKeySubtract)
Det driis skrev ovenfor løser godt nok problemet med fejl 13, men koden virker stadig ikke.
Hvis feltet \'juster\' ikke har en værdi når formularen åbnes, sker der intet (værdien er NULL) Hvis feltet HAR en værdi, f.eks. 5, når formularen åbnes, vil ovenstående, ligge 5 til, hver gang der tastes +, uafhængigt af hvad feltet juster ændres til.
Dvs.Lige meget hvad \'Juster\' ændres til i feltet, vil koden bruge den værdi Juster har når formularen åbnes.
Hmmm... Dén kan jeg ikke lige gennemskue herfra. Hvis databasen ikke er hemmelig, kan du prøve at sende den til mig, så skal jeg prøve at se, om jeg kan se hvad der er galt.
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.