Block of Code

Practical Examples for Programmers

  • Home
  • C++
  • Java
  • Visual Basic
  • Discrete Math
  • Ask a Question

Employee Data Part One

Using Visual Basic, write a program that will allow the user to enter the follow employee data:  First Name, Middle Name, Last Name, Employee Number, Department, Telephone Number, Telephone Extension, and Email Address.  The valid selections for department are Accounting, Administration, Marketing and MIS, and Sales.  Once the data has been entered, the user should be able to save it to a sequential file of type LSV (Line Separated Values).  The following figure shows the form. Employee Data Part One Screenshot   Suggested Control Names and Attributes:

Name Property Text Property Container Control Type Notes
frmEmployeeDataPart1 Employee Data  N/A Form Holds Controls
grpEmployeeData Enter Employee Data frmEmployeeDataPart1 GroupBox Contains controls for input
txtFirstName grpEmployeeData TextBox Captures first name
txtMiddleName grpEmployeeData TextBox Captures middle name
txtLastName grpEmployeeData TextBox Captures last name
txtEmployeeNumber grpEmployeeData TextBox Captures employee number
cboDept grpEmployeeData ComboBox Select department *
txtTelephone grpEmployeeData TextBox Captures phone number
 txtExtension grpEmployeeData TextBox Captures phone extension
 txtEmail grpEmployeeData TextBox Captures email address
 btnSave  &Save and Record frmEmployeeDataPart1 Button Triggers event to save record
 btnClear C&lear frmEmployeeDataPart1 Button Triggers event to clear form
 btnExit E&xit frmEmployeeDataPart1 Button Triggers event to exit program

* Set the DropDownStyle property to DropDownList.

Hints:

  • Use the name Employees.txt for your text file.
  • When you create the text file, use only the file name and not the folder.  Visual Basic assumes that the file location is in the bin/Debug folder.
  • Note that all of the controls for input are contained in a GroupBox.  The buttons are not.
  • The input for departments should be a DropDownList with style ComboBox.  This means the user must choose an option and not type in a response.
  • After each record has been input, the form needs to be cleared before entering the next record by pressing the “Clear” button.
  • After each record has been input, the user needs to press the “Save” button in order to write that data to the file.

Write the Code:

' Project: Employee Data Part 1
' Description:  Program receives input from the user and assigns the values to variables.
' When the user clicks save, the input is added to a text file until the user exits the program.

Imports System.IO

Public Class frmEmployeeDataPart1
    ' Declare global variables
    Dim fileName As String
    Dim firstName As String
    Dim middleName As String
    Dim lastName As String
    Dim employeeNumber As Integer
    Dim department As String
    Dim telephone As String
    Dim extension As Integer
    Dim emailAddress As String
    Dim valid As Boolean = True

    Private Sub frmEmployeeDataPart1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Do
            fileName = InputBox("Input Needed", "Enter the name of the file.")
            If fileName = Nothing Or fileName = "" Then
                MessageBox.Show("No file name entered.")
            Else
                Exit Do
            End If
        Loop
    End Sub

    Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
        valid = True ' reset value to account for prior invalid input
        InputData()
        If valid = True Then
            WriteDataToFile()
        Else
            InputData()
        End If
    End Sub

    Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click
        txtFirstName.Text = ""
        txtMiddleName.Text = ""
        txtLastName.Text = ""
        txtEmployeeNumber.Text = ""
        cboDepartment.SelectedIndex = -1
        txtTelephone.Text = ""
        txtExtension.Text = ""
        txtEmail.Text = ""
    End Sub

    Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
        ' Ends the program when the user clicks on the Exit button
        End
    End Sub

    Sub InputData()
        ' populate the variables
        firstName = txtFirstName.Text
        If (firstName.ToUpper >= "A") And (firstName.ToUpper <= "Z") Then
            firstName = firstName
        Else
            valid = False
            MessageBox.Show("First Name must start with a letter")
        End If
        middleName = txtMiddleName.Text
        If (middleName.ToUpper >= "A") And (middleName.ToUpper <= "Z") Then
            middleName = middleName
        Else
            valid = False
            MessageBox.Show("Middle Name must start with a letter")
        End If
        lastName = txtLastName.Text
        If (lastName.ToUpper >= "A") And (lastName.ToUpper <= "Z") Then
            lastName = lastName
        Else
            valid = False
            MessageBox.Show("Last Name must start with a letter")
        End If
        Try
            employeeNumber = CInt(txtEmployeeNumber.Text)
        Catch
            MessageBox.Show("You must enter an integer for Employee Number.")
            valid = False
        End Try
        If cboDepartment.SelectedIndex <> -1 Then
            department = cboDepartment.Text
        Else
            valid = False
            MessageBox.Show("You must select a department.")
        End If
        telephone = txtTelephone.Text
        Try
            extension = CInt(txtExtension.Text)
        Catch
            MessageBox.Show("You must enter an integer for Extension.")
            valid = False
        End Try
        emailAddress = txtEmail.Text
    End Sub

    Sub WriteDataToFile()
        ' write the data to the file
        Dim sw As StreamWriter = File.AppendText(fileName)
        sw.WriteLine(firstName)
        sw.WriteLine(middleName)
        sw.WriteLine(lastName)
        sw.WriteLine(employeeNumber)
        sw.WriteLine(department)
        sw.WriteLine(telephone)
        sw.WriteLine(extension)
        sw.WriteLine(emailAddress)
        sw.Close()
        MessageBox.Show("Record Saved.  Please clear the form and enter additional records or exit.")
    End Sub
End Class

Secondary Sidebar

This is the secondary sidebar

Copyright © 2025 · Metro Pro Theme on Genesis Framework · WordPress · Log in