Skip to content

Desktop-based Invoicing System Supporting Full CRUD Process and Basic Error-Checking in a Clean GUI Package.

License

Notifications You must be signed in to change notification settings

LShun/visual-bill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VisualBill

An invoice management system with Full CRUD support, basic error checking, in a clean GUI package.

Technologies Used

  • Programming Langauge: VB.NET
  • Microsoft SQL Server Express, chosen due to built-in compatibility with VB.NET and ease of setup.
  • WinForms, chosen due to native access to Windows User Interface Common Controls which made it easy to develop desktop applications.

Architecture & pattern

This application uses an event-driven architecture. Most of the time, the GUI application will be waiting for the user to do something (i.e. clicking on a button) before deciding on what to do.

The application use the page-controller pattern, as each page has code behind class as controller, and the code behind file depends on view. This pattern is used to separate the request handling logic from the view rendering logic. Furthermore, because the application is simple in nature, page-controller pattern is quicker to implement compared to MVC which introduces additional overhead.

Features

Invoice CRUD

Create Invoice

You can create new invoice into the system.

GIF file showing how to create an invoice

Read Invoice

You can view the invoices in the system via the invoice list.

Direct modification of dataset (i.e. through SSMS) is supported as well, simply click "Refresh Invoice List" once you are done modifying.

Update Invoice

You can update the invoices in the system (except for the invoice ID) by click on the details within the invoice list and making your own adjustments, then press Enter.

GIF file showing how to update an invoice

Delete Invoice

You can delete the invoice in the system by selecting the respective rows and pressing the Delete key on your keyboard.

GIF file showing how to delete an invoice

Error-checking

Duplicate Invoice ID

Duplicate invoice ID are prevented from being entered into the system.

GIF file showing duplicate invoice ID checking

Editing of Invoice ID

Direct editing of invoice ID is not permitted. The only way to do so is to delete and recreate.

GIF file showing invoice ID editing checks

Build instructions

  1. Install Microsoft Visual Studio 2022 or higher
  2. Install Microsoft SQL Server 16.0.1000 or higher
  3. Install MS SQL Server Management Studio v20.2 or higher
  4. Attach the database MDF file to your SQLEXPRESS instance
  5. Modify the connection string under App.config to point to the right DB location if needed
  6. Build the program and run

Credits

About

Desktop-based Invoicing System Supporting Full CRUD Process and Basic Error-Checking in a Clean GUI Package.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published