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 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| Private Sub CmbCodeAccess_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles CmbCodeAccess.KeyDown
Dim x As Integer = 0
If e.KeyCode = Keys.F1 Then 'si F1 est appuyé
Call FncPasVerifie()
Exit Sub
End If
If e.KeyCode = Keys.F2 Then 'si F2 est appuyé
Call FncQtDiff()
Exit Sub
End If
If e.KeyCode = Keys.F3 Then 'si F3 est appuyé
Call FncQtDiffLive()
Exit Sub
End If
If e.KeyCode = Keys.F4 Then 'si F4 est appuyé
Call FncRecherche()
Exit Sub
End If
If e.KeyCode = Keys.Down Then 'si bas est enfoncé(ne rien faire)
Exit Sub
End If
If e.KeyCode = Keys.Up Then 'si haut est enfoncé(ne rien faire)
Exit Sub
End If
If e.KeyCode = Keys.Escape Then 'si escape est enfoncé
saisie = Nothing
derniereR = 0
CmbCodeAccess.SelectedItem = Nothing
TxUPC.Focus()
LbProcess.Text = "Scannez/entrez code UPC, TAB pour code access"
Exit Sub
End If
If e.KeyCode = Keys.Enter Then 'si enter est enfoncé
x = 0
Timer1.Interval = 100
Timer1.Enabled = True
Do While TabTSVCodeInventaire(x).NoCode <> Nothing 'lecture de la table inventaire
If TabTSVCodeInventaire(x).CodeAccess = CmbCodeAccess.SelectedItem Then
If TabTSVCodeInventaire(x).NoFicheRef <> 0 Then 'si le produit a un numéro de fiche référence
NoMG3 = TabTSVCodeInventaire(x).NoFicheRef
Call RechercheNoMG3() 'appel de la fonction de désignation du parent
Dim xx As Integer = 0
Do While TabTSVCodeInventaire(xx).NoCode <> Nothing 'lecture de tsvcodeinventaire
If TabTSVCodeInventaire(xx).NoCode = NoCode Then 'si le code lu est celui recherche
TxQtInv.Text = TabTSVCodeInventaire(xx).Quantite
TxQtLive.Text = TabTSVCodeInventaire(xx).InvLive
CmbCodeAccess.SelectedItem = TabTSVCodeInventaire(xx).CodeAccess
PtCodeAccess = TabTSVCodeInventaire(xx).CodeAccess
Exit Do
End If
xx = xx + 1
Loop
Else 'si le produit a pas de numéro de fiche référence
NoCode = TabTSVCodeInventaire(x).NoCode
TxQtInv.Text = TabTSVCodeInventaire(x).Quantite
TxQtLive.Text = TabTSVCodeInventaire(x).InvLive
CmbCodeAccess.SelectedItem = TabTSVCodeInventaire(x).CodeAccess
PtCodeAccess = TabTSVCodeInventaire(x).CodeAccess
Exit Do
End If
End If
x = x + 1
Loop
TxQtVer.Focus()
Call BipOk()
LbProcess.Text = "Entrez votre quantité"
saisie = Nothing
Exit Sub
End If
'Fonction de recherche de code access-------------------------------------------------------------------------------------------------------------------------
x = derniereR
If e.KeyCode.ToString.Length = 2 Then 'si la saisie est de 2 caractères (nombre (Dx))
saisie = saisie + e.KeyCode.ToString.Substring(1, 1)
Else 'si la saisie est de 1 caractère
saisie = saisie + e.KeyCode.ToString
End If
Do While x <= CmbCodeAccess.Items.Count - 1 : Application.DoEvents() 'vérification dans la table de code inventaire
Dim verifi As String
If CmbCodeAccess.Items(x).ToString.Length >= saisie.Length Then : Application.DoEvents() 'si la saisie est plus petite que le code inventaire
verifi = CmbCodeAccess.Items(x).ToString.Substring(0, saisie.Length) : Application.DoEvents()
Else 'si la saisie est plus grande que le code inventaire
verifi = "anticonstitutionnellement"
End If
CmbCodeAccess.Text = Nothing
Application.DoEvents()
Dim a As String = verifi.ToUpper.Substring(0, saisie.Length) : Application.DoEvents()
Dim b As String = saisie.ToUpper : Application.DoEvents()
If a = b Then : Application.DoEvents() 'si la vérification est égale à la saisie
CmbCodeAccess.SelectedItem = CmbCodeAccess.Items(x)
PtCodeAccess = CmbCodeAccess.Items(x)
derniereR = x
Exit Sub
End If
x = x + 1
Loop
Call BipMessage()
MsgBox("aucun resultat")
saisie = Nothing
derniereR = 0
End Sub |
Partager