19. august 2017 - 14:25Der er
13 kommentarer og 1 løsning
Advare om at indtastet værdi er brugt
Jeg har en Access Database, hvor der på hver Formular-side er 50 unikke indtastnings felter. Kan man indlægge en generel advarsel, der gælder for alle felter? Skal advare mod at den indtastede værdi allerede er brugt et vilkårligt sted i formularen. Kun en advarsel, ikke en spærring. Er det efterfølgende muligt at undtage enkelte felter, f.eks. felt Gadenavn, da Vestergade forekommer flere gange, idet der er flere lejligheder.
OK "You could make a general function/sub which you used to validate all fields and called this from each field you wanted to validate." Har du en "opskrift" på denne funktion?
Not sure why this is relevant "Er det efterfølgende muligt at undtage enkelte felter, f.eks. felt Gadenavn, da Vestergade forekommer flere gange, idet der er flere lejligheder. "
This code checks if the value entered in a specific field exists or not in the corresponding field in the table, it doesnt check to see if the value exists in all fields in the table.
Private Sub Felt1_BeforeUpdate(Cancel As Integer)
CheckValue
End Sub
Private Sub CheckValue()
If DCount("*", "tbl1", Me.ActiveControl.Name & " = " & "'" & Me.ActiveControl & "'") > 0 Then
Tak for info. Databasens indhold er både text, og tal. Dobbeltindtastning er ikke et problem for mig, det er mere når andre bruger den. Så enten må jeg være opmærksom på dobbeltindtastninger, eller køre en forespørgsel der viser dubbletter.
Der er tale om en database til registrering af datakredsløb. Hvis man taster en kobling ind, f.eks. 001/002/234, var tanken at databasen skulle give en advarsel, hvis denne position allerede er brugt. Men jeg tror jeg gør noget helt andet. Hvis man støder på en port hvor der fysisk sidder en ledning i forvejen, så simpelthen køre en søgning i Formular, der søger på alle felter.
If I understand you correctly, the same value can exist in more than one field on the form, so when you enter 001/002/234 in one field it may not exist in the dB in that field but in another field?
Well a redesign of your dB could help but another idea was to have a union query which puts all your fields into one column and then change code to look into query instead of a specific field in table.
If I understand you correctly, the same value can exist in more than one field on the form, so when you enter 001/002/234 in one field it may not exist in the dB in that field but in another field? = Ja, det er korrekt.
Jeg har allerede en qrykobsamlet, hvor alle koblings felter ligger samlet. Den er måske den der skal bygges videre på?
"Jeg har allerede en qrykobsamlet, hvor alle koblings felter ligger samlet. Den er måske den der skal bygges videre på? "
Difficult to say not know how your tables/queries are designed.
I was guessing that when you say "...50 unikke indtastnings felter..." you have a table containing these "50 unikke felter" and the code I gave only checked the field you had entered a value into, against the corresponding field in the table.
Maybe you can explain your design, also why/how the same value can exist in more than one field, and maybe also how you use qrykobsamlet?
Better still, any chance of seeing dB, or an example?
"Maybe you can explain your design, also why/how the same value can exist in more than one field" Fejl 40. Det kan det hvis der foretages en fejlindtastning, og det var det der skulle advares mod. Jeg kan på et tidspunkt prøve at uploade db til dropbox.
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.
Lunar-stifter Ken Villum Klausen har kæmpet med søvnløse nætter, men sidder nu på en tropeø og holder sin første ferie i otte måneder: “I de seneste år har jeg været war-time-CEO”