I've gave you an answer in the
previous post[
^].
Because you have an answer, i shoudn't help you... But i decide to show you how to achieve that using class.
Steps to do:
1) Create new project (Windows application)
2) Place on the form 3 controls:
- Label1
- TextBox1
- Button1 and rename it Name as
CmdVerify
3) Insert into project 3 items:
- new class (change its name to:
TBarCodeVer
)
- new interface (change its name to:
IBarCodeVer
)
- new module (change its name to:
ModMain
)
4) copy the below parts of code and paste it into destination modules
IBarCodeVer.vb
Public Interface IBarCodeVer
Property MemberShipNumber() As String
Function BarCode() As String
End Interface
TBarCodeVer.vb
Public Class TBarCodeVer
Implements IBarCodeVer
Private sNumber As String = String.Empty
Private Const sFirstSet As String = "279"
Public Sub New()
End Sub
Public Property MemberShipNumber() As String Implements IBarCodeVer.MemberShipNumber
Get
Return sNumber
End Get
Set(ByVal value As String)
sNumber = value
End Set
End Property
Function BarCode() As String Implements IBarCodeVer.BarCode
Dim sNumbers() As String = Nothing, sTmpNumber As String = String.Empty
Dim i As Integer = 0, iCount As Integer, sRetVal As String = String.Empty
Dim iSum As Integer = 0
Try
iCount = sNumber.Length
If iCount <> 16 Then
MsgBox("The length of MemberShipNumber must be equal 16!", MsgBoxStyle.Exclamation, "Error!")
Exit Try
End If
sTmpNumber = sNumber
Do Until i = iCount
ReDim Preserve sNumbers(i)
sNumbers(i) = sTmpNumber.Substring(0, 1)
sTmpNumber = sTmpNumber.Remove(0, 1)
i = i + 1
Loop
iSum = (Integer.Parse(sNumbers(14)) + Integer.Parse(sNumbers(12)) + Integer.Parse(sNumbers(10)) + Integer.Parse(sNumbers(8)) + Integer.Parse(sNumbers(6)) + 7) * 3
iSum = iSum + Integer.Parse(sNumbers(13)) + Integer.Parse(sNumbers(11)) + Integer.Parse(sNumbers(9)) + Integer.Parse(sNumbers(7)) + 11
iSum = (10 - (iSum Mod 10)) Mod 10
sRetVal = sFirstSet & sNumbers(6) & sNumbers(7) & sNumbers(8) & sNumbers(9) & sNumbers(10) & sNumbers(11) & sNumbers(12) & sNumbers(13) & sNumbers(14) & iSum.ToString
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation, "Error!")
End Try
Return sRetVal
End Function
Protected Overrides Sub Finalize()
MyBase.Finalize()
End Sub
End Class
ModMain.vb
Module ModMain
Public oBarCode As IBarCodeVer = Nothing
End Module
Form1.vb
Public Class Form1
Private Sub CmdVerify_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdVerify.Click
oBarCode.MemberShipNumber = Me.TextBox1.Text
MsgBox(oBarCode.BarCode, MsgBoxStyle.Information, "BarCode for number: " & oBarCode.MemberShipNumber)
End Sub
Public Sub New()
InitializeComponent()
oBarCode = New TBarCodeVer
End Sub
Protected Overrides Sub Finalize()
oBarCode = Nothing
MyBase.Finalize()
End Sub
End Class
5) Compile project
The above code returns 7 for the number: 6008943507588309