1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| Private Sub champ_BeforeUpdate(Cancel As Integer)
Dim champ, resultat, mat, typeop, numchassis As String
Dim longueur As Integer
Dim db As DAO.Database
Dim rs, rs1, rs2 As Recordset
champ = Forms![essai].[champ]
longueur = Len(champ)
If longueur = 3 Then
Forms![essai].[Matricule] = champ
mat = Forms![essai].[Matricule]
Set db = CurrentDb()
Set rs = db.OpenRecordset("select operateurs.* from operateurs where ((operateurs.matricule)=" & mat & ");")
Forms![essai].[champ].SelStart = 0
Forms![essai].[champ].SelLength = Len(Forms![essai].[champ].Value)
Cancel = True
If rs.EOF = True Then
MsgBox ("nom d'utilisateur inconnu, Veuillez resaisir un matricule valide ou contacter le service informatique")
End If
Else
If longueur = 7 Then
Forms![essai].[code_type_op] = champ
typeop = Forms![essai].[code_type_op]
Set db = CurrentDb()
Set rs1 = db.OpenRecordset("select typeoperation.* from typeoperation where ((typeoperation.codetypeop)=" & typeop & ");")
Forms![essai].[champ].SelStart = 0
Forms![essai].[champ].SelLength = Len(Forms![essai].[champ].Value)
Cancel = True
If rs1.EOF = True Then
MsgBox ("Type d'opération inconnu, Veuillez resaisir un code opération valide ou contacter le service informatique")
End If
Else
If longueur > 13 Then
Forms![essai].[num_chassis] = champ
Forms![essai].[heure_debut] = FormatDateTime(Time, vbLongTime)
Forms![essai].[Date] = FormatDateTime(Now, vbShortDate)
Else
If longueur <> 3 Or longueur <> 7 Then
MsgBox ("Le code barre saisi n'est pas un code barre valide")
Forms![essai].[champ].SelStart = 0
Forms![essai].[champ].SelLength = Len(Forms![essai].[champ].Value)
Cancel = True
End If
End If
End If
End If
End Sub |
Partager