Microsoft Access Sample Database: Bethesda Car Rental
Microsoft Access Sample Database: Bethesda Car Rental
Introduction
Bethesda Car Rental is a fictitous company that rents cars to individuals and companies. In this exercise, we will use Microsoft Access to create a database for our company.
Practical Learning: Introducing the Application
Employees
Employees are people who perform the transactions for an application. We will create a table and forms for them.
Practical Learning: Introducing the Application
| Field Name | Data Type | Field Size | Caption |
| EmployeeID | AutoNumber | Employee ID | |
| EmployeeNumber | Short Text | 10 | Employee # |
| FirstName | Short Text | 25 | First Name |
| LastName | Short Text | 25 | Last Name |
| EmployeeTitle | Short Text | 50 | Employee Title |

Private Sub cmdClose_Click()
DoCmd.Close
End SubCategories of Cars
To assist customers who want to rent cars, a company has different types or sizes. In our application, we will create a table for categories of cars
Practical Learning: Creating the Cars to Rent
| Field Name | Data Type | Field Size | Format | Caption |
| CategoryID | AutoNumber | Category ID | ||
| Category | Short Text | 32 | ||
| Daily | Number | Double | Currency | |
| Weekly | Number | Double | Currency | |
| Monthly | Number | Double | Currency | |
| Weekend | Number | Double | Currency |

The Cars to Rent
A car rental company rents car. For its business, the company should have a fleet of cars from which to choose when a customer desires a car. In this section, we create the objects that are necessary to manage cars.
Practical Learning: Creating the Cars to Rent
| Field Name | Data Type | Field Size | Caption |
| CarID | AutoNumber | Car ID | |
| TagNumber | Short Text | 10 | Tag Number |
| Make | Short Text | 40 | |
| Model | Short Text | 40 | |
| Passengers | Number | Byte | |
| Category | |||
| Condition | |||
| Availability |


Private Sub cmdClose_Click()
DoCmd.Close
End SubRental Orders
To rent a car to a customer, the company must create a contract. In this section, we will create the objects that are necessary for such a contract.
Practical Learning: Creating Rental Contracts
| Field Name | Data Type | Field Size | Format | Caption |
| RentalOrderID | AutoNumber | Rental Order ID | ||
| ReceiptNumber | Number | Integer | Receipt # | |
| OrderStartProcessedBy | Short Text | 10 | Processed By | |
| OrderEndProcessedBy | Short Text | 10 | Processed By | |
| CustomerDrvLicNumber | Short Text | 40 | Driver's License # | |
| CustomerName | Short Text | 25 | First Name | |
| CustomerAddress | Short Text | 100 | Address | |
| CustomerCity | Short Text | 40 | City | |
| CustomerState | Short Text | 32 | State | |
| CustomerZIPCode | Short Text | 16 | ZIP Code | |
| CarTagNumber | Short Text | 12 | Tag Number | |
| CarCondition | Short Text | 25 | Car Condition | |
| TankLevel | Short Text | 12 | Tank Level | |
| MileageStart | Number | Integer | Mileage Start | |
| MileageEnd | Number | Integer | Mileage End | |
| TotalMileage | Number | Integer | Total Mileage | |
| StartDate | Date/Time | Long Date | Start Date | |
| EndDate | Date/Time | Long Date | End Date | |
| TotalDays | Number | Integer | Total Days | |
| RateApplied | Number | Double | Currency | Rate Applied |
| TaxRate | Number | Double | Percent | Tax Rate |
| TaxAmount | Number | Double | Currency | Tax Amount |
| OrderTotal | Number | Double | Currency | Order Total |
| OrderStatus | Short Text | 25 | Order Status |


| Control | Caption | Name | Back Color | Border Color | Other Properties |
| Text Box/Label | Receipt #: | txtReceiptNumber | |||
| Button | Find | cmdFind | |||
| Label | Order Start Processed By | #ECD9CA | #7F001F | ||
| Text Box/Label | Employee #: | txtOrderStartProcessedBy | |||
| Text Box/Label | txtOrderStartEmployeeName | ||||
| Label | Order End Processed By | #ECD9CA | #7F001F | ||
| Text Box/Label | Employee #: | txtOrderEndProcessedBy | |||
| Text Box/Label | txtOrderEndEmployeeName | ||||
| Label | Rental Order Processed For | #ECD9CA | #7F001F | ||
| Label | Car Rented | #ECD9CA | #7F001F | ||
| Rectangle | #000000 | Special Effect: Shadowed | |||
| Label/Text Box | First Name: | txtCustomerFirstName | |||
| Label/Text Box | Tag Number: | txtTagNumber | |||
| Label/Text Box | Last Name: | txtCustomerLastName | |||
| Label/Text Box | Make: | txtMake | |||
| Label/Text Box | Address: | txtCustomerAddress | |||
| Label/Text Box | Model: | txtModel | |||
| Label/Text Box | City: | txtCustomerCity | |||
| Label/Text Box | Passengers: | txtPassengers | |||
| Label/Text Box | State: | txtCustomerState | |||
| Label/Combo Box | Condition: | cbxConditions | |||
| Label/Text Box | ZIP Code: | txtCustomerZIPCode | |||
| Label/Combo Box | Tank Level: | cbxTankLevels | |||
| Label | Mileage and Time Information | #ECD9CA | #7F001F | ||
| Label/Text Box | Mileage Start: | txtMileageStart | |||
| Label/Text Box | End: | txtMileageEnd | |||
| Label/Text Box | Total Mileage: | txtTotalMileage | Format: General Number | ||
| Label/Text Box | Start Date: | txtStartDate | |||
| Label/Text Box | End: | txtEndDate | |||
| Text Box | Total Days: | txtTotalDays | Format: General Number | ||
| Label | Cost Summary | #ECD9CA | #7F001F | ||
| Label/Text Box | Rate Applied: | txtRateApplied | |||
| Label/Text Box | Sub Total: | txtSubTotal | Control Source: =Nz([txtRateApplied])*Nz([txtTotalDays]) | ||
| Label/Text Box | Tax Rate: | txtTaxRate | Default Value: 0.075 | ||
| Label/Text Box | Tax Amount: | txtTaxAmount | Control Source: =CLng(Nz([txtSubTotal])*Nz([txtTaxRate])*100)/100 | ||
| Label/Combo Box | Orders Status: | cbxOrdersStatus | |||
| Text Box | Rent Total: | txtRentTotal | Control Source: =Nz([txtSubTotal])+Nz([txtTaxAmount]) | ||
| Button | Submit | cmdSubmit | |||
| Button | Reset | cmdReset | |||
| Button | Close | cmdClose |
Private Sub cmdFind_Click()
On Error GoTo cmdFind_Click_Error
Dim rsCars As New ADODB.Recordset
Dim rsEmployees As New ADODB.Recordset
Dim rsRentalOrders As New ADODB.Recordset
rsRentalOrders.Open "SELECT * FROM RentalOrders WHERE ReceiptNumber = " & CLng(txtReceiptNumber), _
CurrentProject.Connection, _
adOpenStatic, _
adLockOptimistic, _
adCmdText
If IsNull(txtReceiptNumber) Then
cmdReset_Click
Exit Sub
Else
With rsRentalOrders
txtOrderStartProcessedBy = .Fields("OrderStartProcessedBy").Value
txtCustomerDrvLicNumber = .Fields("CustomerDrvLicNumber").Value
txtCustomerName = .Fields("CustomerName").Value
txtCustomerAddress = .Fields("CustomerAddress").Value
txtCustomerCity = .Fields("CustomerCity").Value
txtCustomerState = .Fields("CustomerState").Value
txtCustomerZIPCode = .Fields("CustomerZIPCode").Value
txtCarTagNumber = .Fields("CarTagNumber").Value
cbxConditions = .Fields("CarCondition").Value
cbxTankLevels = .Fields("TankLevel").Value
txtMileageStart = .Fields("MileageStart").Value
txtStartDate = .Fields("StartDate").Value
txtRateApplied = .Fields("RateApplied").Value
cbxOrdersStatus = .Fields("OrderStatus").Value
End With
End If
If IsNull(txtOrderStartProcessedBy) Then
Exit Sub
Else
rsEmployees.Open "SELECT * FROM Employees " _
, CodeProject.Connection _
, adOpenStatic _
, adLockOptimistic _
, adCmdText
With rsEmployees
Do While Not .EOF
If .Fields("EmployeeNumber").Value = txtOrderStartProcessedBy Then
txtOrderStartEmployeeName = .Fields("FirstName").Value & " " & .Fields("LastName").Value & " (" & .Fields("EmployeeTitle").Value & ")"
Exit Do
End If
.MoveNext
Loop
End With
End If
If IsNull(txtCarTagNumber) Then
Exit Sub
Else
rsCars.Open "SELECT ALL * FROM Cars " & _
"WHERE TagNumber = '" & txtCarTagNumber & "';", _
CodeProject.Connection, _
adOpenStatic, _
adLockOptimistic, _
adCmdText
txtMake = rsCars("Make").Value
txtModel = rsCars("Model").Value
txtPassengers = rsCars("Passengers").Value
End If
rsCars.Close
rsEmployees.Close
rsRentalOrders.Close
Set rsCars = Nothing
Set rsEmployees = Nothing
Set rsRentalOrders = Nothing
Exit Sub
cmdFind_Click_Error:
If Err.Number = 3021 Then
MsgBox "No receipt with that number was found.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Else
MsgBox "An error occurred when trying to retrieve the car's information.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
End If
Resume Next
End SubPrivate Sub txtOrderStartProcessedBy_LostFocus()
On Error GoTo cmdFind_Click_Error
Dim rsEmployees As New ADODB.Recordset
If IsNull(txtOrderStartProcessedBy) Then
cmdReset_Click
Exit Sub
Else
rsEmployees.Open "SELECT * FROM Employees " _
& "WHERE OrderStartProcessedBy = '" & txtOrderStartProcessedBy & "';" _
, CodeProject.Connection _
, adOpenStatic _
, adLockOptimistic _
, adCmdText
With rsEmployees
Do While Not .EOF
If rsEmployees("EmployeeNumber").Value = txtOrderStartProcessedBy Then
txtOrderStartEmployeeName = .Fields("FirstName").Value & " " & .Fields("LastName").Value
Exit Do
End If
.MoveNext
Loop
End With
End If
rsEmployees.Close
Set rsEmployees = Nothing
Exit Sub
cmdFind_Click_Error:
If Err.Number = 3021 Then
MsgBox "No employee with that number was found.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Else
MsgBox "An error occurred when trying to retrieve the car's information.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
End If
Resume Next
End SubPrivate Sub txtOrderEndProcessedBy_LostFocus()
On Error GoTo cmdFind_Click_Error
Dim rsEmployees As New ADODB.Recordset
If IsNull(txtOrderStartProcessedBy) Then
cmdReset_Click
Exit Sub
Else
rsEmployees.Open "SELECT * FROM Employees " _
, CodeProject.Connection _
, adOpenStatic _
, adLockOptimistic _
, adCmdText
With rsEmployees
Do While Not .EOF
If rsEmployees("EmployeeNumber").Value = txtOrderEndProcessedBy Then
txtOrderEndEmployeeName = .Fields("FirstName").Value & " " & .Fields("LastName").Value
Exit Do
End If
.MoveNext
Loop
End With
End If
rsEmployees.Close
Set rsEmployees = Nothing
Exit Sub
cmdFind_Click_Error:
If Err.Number = 3021 Then
MsgBox "No employee with that number was found.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Else
MsgBox "An error occurred when trying to retrieve the car's information.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
End If
Resume Next
End SubPrivate Sub txtTagNumber_LostFocus()
On Error GoTo txtTagNumber_LostFocusError
Dim rsCars As New ADODB.Recordset
If IsNull(txtTagNumber) Then
Exit Sub
End If
rsCars.Open "SELECT Make, Model, Passengers " & _
"FROM Cars " & _
"WHERE TagNumber = '" & txtCarTagNumber & "';", _
CodeProject.Connection, _
adOpenStatic, _
adLockOptimistic, _
adCmdText
If IsNull(rsCars("Make")) Then
MsgBox "Invalid tag number.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Exit Sub
Else
txtMake = rsCars("Make").Value
txtModel = rsCars("Model").Value
txtPassengers = rsCars("Doors").Value & " / " & rsCars("Passengers").Value
End If
Set rsCars = Nothing
Exit Sub
txtTagNumber_LostFocusError:
If Err.Number = 3021 Then
MsgBox "No car was found with that tag number.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Else
MsgBox "An error occurred when trying to retrieve the car's information.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
End If
Resume Next
End SubPrivate Sub txtMileageEnd_LostFocus()
If IsNull(txtMileageEnd) Then
Exit Sub
End If
txtTotalMileage = CStr(CLng(txtMileageEnd) - CLng(txtMileageStart))
End SubPrivate Sub cmdReset_Click()
txtReceiptNumber = ""
txtOrderStartProcessedBy = ""
txtOrderStartEmployeeName = ""
txtOrderEndProcessedBy = ""
txtOrderEndEmployeeName = ""
txtCustomerDrvLicNumber = ""
txtCustomerName = ""
txtCustomerAddress = ""
txtCustomerCity = ""
txtCustomerState = ""
txtCustomerZIPCode = ""
txtCarTagNumber = ""
txtMake = ""
txtModel = ""
txtPassengers = ""
cbxConditions = ""
cbxTankLevels = ""
txtMileageStart = ""
txtMileageEnd = ""
txtTotalMileage = ""
txtStartDate = Date
txtEndDate = Date
txtTotalDays = ""
txtRateApplied = ""
cbxOrdersStatus = ""
End SubPrivate Sub cmdSubmit_Click()
On Error GoTo cmdSubmit_ClickError
Dim rsRentalOrders As ADODB.Recordset
Set rsRentalOrders = New ADODB.Recordset
rsRentalOrders.Open "SELECT * FROM RentalOrders " & _
"WHERE ReceiptNumber = " & CLng(txtReceiptNumber), _
CurrentProject.Connection, _
adOpenStatic, _
adLockOptimistic, _
adCmdText
If IsNull(txtReceiptNumber) Then
MsgBox "You must enter a valid receipt number.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Exit Sub
End If
With rsRentalOrders
.Fields("OrderStartProcessedBy").Value = txtOrderStartProcessedBy
.Fields("OrderEndProcessedBy").Value = txtOrderEndProcessedBy
.Fields("CustomerDrvLicNumber").Value = txtCustomerDrvLicNumber
.Fields("CustomerName").Value = txtCustomerName
.Fields("CustomerAddress").Value = txtCustomerAddress
.Fields("CustomerCity").Value = txtCustomerCity
.Fields("CustomerState").Value = txtCustomerState
.Fields("CustomerZIPCode").Value = txtCustomerZIPCode
.Fields("CarTagNumber").Value = txtCarTagNumber
.Fields("CarCondition").Value = cbxConditions
.Fields("TankLevel").Value = cbxTankLevels
.Fields("MileageStart").Value = txtMileageStart
.Fields("MileageEnd").Value = txtMileageEnd
.Fields("TotalMileage").Value = txtTotalMileage
.Fields("StartDate").Value = txtStartDate
.Fields("EndDate").Value = txtEndDate
.Fields("TotalDays").Value = txtTotalDays
.Fields("RateApplied").Value = txtRateApplied
.Fields("TaxRate").Value = txtTaxRate
.Fields("OrderStatus").Value = cbxOrdersStatus
.Update
End With
MsgBox "The customer's record has been updated.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
cmdReset_Click
rsRentalOrders.Close
Set rsRentalOrders = Nothing
Exit Sub
cmdSubmit_ClickError:
MsgBox "An error occurred when trying to update the customer's rental order. " & _
"Please report the error as follows." & vbCrLf & _
"Error #: " & Err.Number & vbCrLf & _
"Description: " & Err.Description, _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Resume Next
End SubPrivate Sub cmdClose_Click()
On Error GoTo cmdClose_ClickError
DoCmd.Close
Exit Sub
cmdClose_ClickError:
MsgBox "An error occured as follows." & vbCrLf & _
"Error #: " & Err.Number & vbCrLf & _
"Message: " & Err.Description, _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Resume Next
End Sub
Private Sub txtOrderStartProcessedBy_LostFocus()
On Error GoTo txtOrderStartProcessedBy_LostFocusError
Dim rsEmployees As New ADODB.Recordset
' This variable will be used to find if the user
' entered a valid employee number
Dim EmployeeFound As Boolean
If IsNull(txtOrderStartProcessedBy) Then
Exit Sub
End If
' To start, assume that we haven't found an employee
EmployeeFound = False
rsEmployees.Open "Employees", _
CodeProject.Connection, _
adOpenStatic, _
adLockOptimistic, _
adCmdTable
If IsNull(rsEmployees) Then
Rem ("FullName")
MsgBox "Invalid employee number.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Exit Sub
Else
' We will refer to the recordset many times
With rsEmployees
' Check each employee record from the first to the last
Do While Not .EOF
' Every time you get to the EmployeeNumber column,
' if its value is the same as the one entered
' in the Employee #...
If rsEmployees("EmployeeNumber").Value = txtOrderStartProcessedBy Then
' ... display its full name
txtOrderStartProcessedByName = .Fields("FirstName").Value & " " & .Fields("LastName").Value
' Make a note that we found the employee number
EmployeeFound = True
End If
.MoveNext
Loop
End With
' If no employee was found, let the user know
If EmployeeFound = False Then
txtOrderStartProcessedBy = ""
MsgBox "There is no employee with that number.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
End If
End If
Set rsEmployees = Nothing
Exit Sub
txtOrderStartProcessedBy_LostFocusError:
If Err.Number = 3021 Then
MsgBox "No employee was found with that number.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Else
MsgBox "An error occurred when trying to get the employee's information.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
End If
Resume Next
End SubPrivate Sub cmdReset_Click()
txtReceiptNumber = ""
txtOrderStartProcessedBy = ""
txtOrderStartProcessedByName = ""
txtCustomerDrvLicNumber = ""
txtCustomerName = ""
txtCustomerAddress = ""
txtCustomerCity = ""
txtCustomerState = ""
txtCustomerZIPCode = ""
txtCarTagNumber = ""
txtMake = ""
txtModel = ""
txtPassengers = ""
cbxConditions = ""
cbxTankLevels = ""
txtMileageStart = ""
txtStartDate = Date
txtRateApplied = ""
cbxOrdersStatus = ""
End SubPrivate Sub cmdSubmit_Click()
On Error GoTo cmdSubmit_ClickError
Dim rsRentalOrders As ADODB.Recordset
Set rsRentalOrders = New ADODB.Recordset
rsRentalOrders.Open "RentalOrders", _
CurrentProject.Connection, _
adOpenStatic, _
adLockOptimistic
With rsRentalOrders
If .Supports(adAddNew) Then
.AddNew
.Fields("OrderStartProcessedBy").Value = txtOrderStartProcessedBy
.Fields("CustomerName").Value = txtCustomerName
.Fields("CustomerAddress").Value = txtCustomerAddress
.Fields("CustomerCity").Value = txtCustomerCity
.Fields("CustomerState").Value = txtCustomerState
.Fields("CustomerZIPCode").Value = txtCustomerZIPCode
.Fields("CarTagNumber").Value = txtCarTagNumber
.Fields("CarCondition").Value = cbxConditions
.Fields("TankLevel").Value = cbxTankLevels
.Fields("MileageStart").Value = txtMileageStart
.Fields("StartDate").Value = txtStartDate
.Fields("RateApplied").Value = CDbl(Nz(txtRateApplied))
.Fields("OrderStatus").Value = cbxOrdersStatus
.Update
End If
End With
MsgBox "The new rental order has been processed and submitted.", _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
rsRentalOrders.Close
Set rsRentalOrders = Nothing
cmdReset_Click
Exit Sub
cmdSubmit_ClickError:
MsgBox "An error occurred when trying to create the new rental order. " & _
"Please report the error as follows." & vbCrLf & _
"Error #: " & Err.Number & vbCrLf & _
"Description: " & Err.Description, _
vbOKOnly Or vbInformation, "Bethesda Car Rental"
Resume Next
End SubTesting the Application
We will test with application with a few values.
Practical Learning: Simulating a Car Rental Business
| Employee # | First Name | Last Name | Title |
| 92735 | Jeffrey | Leucart | General Manager |
| 29268 | Kathleen | Rawley | Technician |
| 73948 | Allison | Garlow | Accounts Associates |
| 40508 | David | Stillson | Accounts Manager |
| 24793 | Michelle | Taylor | Accounts Associates |
| 20480 | Peter | Futterman | Accounts Associates |
| 72084 | Georgia | Rosen | Customer Service Representative |
| 38240 | Karen | Blakney | Accounts Associates |
| Category | Daily | Weekly | Monthly | Weekend |
| Economy | 34.95 | 28.75 | 24.95 | 24.95 |
| Compact | 38.95 | 32.75 | 28.95 | 28.95 |
| Standard | 45.95 | 39.75 | 35.95 | 34.95 |
| Full Size | 50.00 | 45.00 | 42.55 | 38.95 |
| Mini Van | 55.00 | 50.00 | 44.95 | 42.95 |
| SUV | 56.95 | 52.95 | 44.95 | 42.95 |
| Truck | 62.95 | 52.75 | 46.95 | 44.95 |
| Grand Van | 69.95 | 64.75 | 52.75 | 49.95 |
| Tag Number | Make | Model | Passengers | Category | Condition | Availability |
| 8AL8033 | Toyota | Corolla LE | 5 | Compact | Excellent | Available |
| 4AF9284 | Ford | F-150 Reg Cap 4X4 | 4 | Pickup Truck | Other | Available |
| 6AP2749 | Toyota | Corolla LE | 5 | Compact | Excellent | Rented |
| 2MD8382 | Toyota | 4Runner | 5 | SUV | Needs Repair | Available |
| VGT927 | GMC | Sierra 1500 | 5 | Pickup Truck | Excellent | Available |
| 3AD9283 | Toyota | Yaris | 5 | Economy | Good | Rented |
| 8AE9294 | Lincoln | MKT 3.5L | 5 | Full Size | Excellent | Available |
| KLT840 | Ford | E-350 XL | 15 | Passenger Van | Excellent | Available |
| 2AM9952 | Ford | Fiesta SE | 5 | Economy | Good | Available |
| 6AD8274 | Mazda | CX-9 | 5 | Mini Van | Driveable | Available |
| ADG279 | GMC | Acadia SLE | 5 | SUV | Excellent | Rented |
| 1AD8049 | Dodge | Charger | 5 | Standard | Excellent | Available |
| 9MD3974 | Toyota | Sienna LE FWD | 8 | Passenger Van | Needs Repair | Rented |
| 5AJ9274 | BMW | 528i | 5 | Full Size | Excellent | Available |
| GTH295 | Kia | Rio EX | 5 | Economy | Other | Available |
| 8AT2408 | Mazda | Miata MX-5 | 2 | Compact | Driveable | Available |
| 6AP2486 | Fiat | 500 | 4 | Economy | Excellent | Available |
| 2AL9485 | Chrysler | 200 | 2 | Compact | Excellent | Available |
| DFP924 | Honda | Odyssey | 8 | Passenger Van | Needs Repair | Available |
| KER204 | Ford | Focus RS | 5 | Compact | Good | Needs Repair |
| 8AR9374 | Honda | Accord LX | 5 | Standard | Other | Rented |
| 5MD2084 | Buick | Enclave | 5 | Mini Van | Excellent | Available |
| BND927 | Nissan | Leaf | 5 | Economy | Excellent | Available |
| 8AG3584 | Chrysler | Pacifica | 8 | Passenger Van | Driveable | Available |
| 8AL7394 | Ford | F-250 SD Reg Cab 4X4 | 5 | Pickup Truck | Good | Available |
| 4MD2840 | Chevrolet | 2500 LS | 15 | Passenger Van | Excellent | Rented |
| G249580 | Nissan | Sentra SR | 5 | Compact | Excellent | Available |
| 3AK7397 | Chrysler | 200 | 2 | Compact | Driveable | Available |


| Receipt #: | 374683 |
| Employee #: | 20480 |
| Driver's License #: | 270-384-850 |
| Customer Name: | Merten Fuhler |
| Address: | 6800 Haxell Crt |
| City: | Alexandria |
| State: | VA |
| ZIP Code | 22314 |
| Tag Number: | 8AG3584 |
| Condition: | Excellent |
| Tank Level: | Empty |
| Mileage Start: | 12728 |
| Start Date: | 04/10/2022 |
| Rate Applied: | 78.55 |
| Order Status: | Rented - Vehicle With Customer" |

| Receipt #: | 648842 |
| Employee #: | 24793 |
| Driver's License #: | 826-384-584 |
| Customer Name: | Joan Altman |
| Address: | 3725 South Dakota Ave NW |
| City: | Washington |
| State: | DC |
| ZIP Code | 20012 |
| Tag Number: | KER204 |
| Condition: | Driveable |
| Tank Level: | 3/4 Full |
| Mileage Start: | 24715 |
| Start Date: | 04/14/2022 |
| Rate Applied: | 62.95 |
| Order Status: | Rented - Vehicle With Customer |
| Receipt #: | 147930 |
| Employee #: | 38240 |
| Driver's License #: | 947-957-395 |
| Customer Name: | Thomas Filder |
| Address: | 4905 Herrenden Street |
| City: | Arlington |
| State: | VA |
| ZIP Code | 22204 |
| Tag Number: | 8AL8033 |
| Condition: | Excellent |
| Tank Level: | Full |
| Mileage Start: | 6064 |
| Start Date: | 04/14/2022 |
| Rate Applied: | 34.95 |
| Order Status: | Rented - Vehicle With Customer |


| End Processed By: | 24793 |
| Customer Name: | Martin Buhler |
| Address: | 6800 Haxell Court |
| Tank Level: | Half Tank |
| Mileage End: | 13022 |
| End Date: | 04/15/2022 |
| Total Days: | 4 |
| Rate Applied: | 69.95 |
| Tax Rate: | 7.75% |
| Order Status: | Rental Order Complete |

| End Processed By: | 40508 |
| Mileage End: | 6298 |
| End Date: | 04/17/2022 |
| Total Days: | 3 |
| Tax Rate: | 7.75% |
| Order Status: | Car Returned/Order Complete |
|
|
|||
| Home | Copyright © 2005-2022, FunctionX, Inc | Tuesday 17 May 2022 | Home |
|
|
|||