Creating Accounting Application With C# Tutorial - Part One

Introduction

According to Aspiring Minds National Employability Report, which is based on a study of more than 1,500,000 engineering students who graduated in 2015 from over 650 colleges, 80% of them are unemployable.

Over 1.5 million engineering students graduate every year in India. This makes it difficult for everyone to get a job. I think self-employment is a good solution for this crisis. The creation of useful applications for mobile, web and desktop is a good choice for earning money.

In this article series, I intend to disclose my Windows desktop accounting software creation experience for you.

C#

To know more about the accounting application I have made, please click on the link.

Requirement

1Basic Computer Knowledge 
1Windows PC(Desktop or Laptop)
2Visual Studio (VS 2010 or above)

Topics Covering In this Series 

1Accounting Basics
2C# programing language
3Visual Studio
4Windows Form Application
5T-SQL
6SQL Server
7Ado.net
8Linq
9Storing data in XML
10DataGridview in details
11Printing Technics
12Publishing the Application (Setup Creation with Database)
13ASMX web service
14Security (Prevention of Reverse Engineering)

Accounting Basics

To create an accounting application we need to know something about accounting.

The foundation of accounting is Debit and Credit -- debt comes in and credit goes out.

For example, we are purchasing furniture for our company office by paying cash of Rs. 500. So, debit Rs. 500 in the furniture account and credit the same in the cash account.  The value of the furniture is increased by the addition of Rs. 500 and at the same time the amount of cash in hand is decreased by paying Rs. 500.    

In accounting applications, all transactions are in voucher type. In a voucher table normally there are the followings columns.

1VoucherId
2VoucherType
3vouchernumber
4VoucherDate
5AccountingID
6OppositeAccountingId
7DebitAmount
8CreditAmount
9Narration
10EntryDate
11EnteredBy

In here, we want to create two voucher entries. Please note that for every accounting transaction there will be two accounts. So we want two entries.

  AB
1VoucherId12
2VocherTypePurchaseOfFixedAssetPurchaseOfFixedAsset
3VoucherNumber11
4VoucherDate15/03/201815/03/2018
5AccountIdFurnitureAccountIDCashAccountID
6OppsiteAccountIdCashAccountIDFurnitureAccountID
7DebitAmount5000.00
8CrditAmount0.00500
9NarrationA chair PurchasedA chair Purchased
10EntryDate04/03/201804/03/2018
11EnteredByEnteredPersonIDEnteredPersonID

This is the basic idea. But we have to mention in detail about ledger group, ledger account, trading account, profit and loss account and balance sheet, etc.  In the coming chapters, we will cover all these accounting topics. Also, we have to mention about Inventory.

Inventory

In accounting, maintaining inventory is important. Products and services are Inventory.

There are two types of products, manufacturing products and purchased products. We want to make an entry to maintain the stock of the product. That is, when we sell one product to a person there are two types of entries.

1Accounting entries
2Inventory Entry

Beside the accounting entry we want to make an Inventory entry. Earlier, we have seen that in accounting, all transactions are in voucher type. Normally there will be the following columns for Inventory Transaction Table. 

1TransactionId
2VoucherID
3ProductId
4UnitId
5QuantityIn
6QuantityOut

By giving the format of the table, I think you will understand about an inventory type transaction. In the case of the purchase, the stock of that particular product is increasing. At the same time in the case of a sale, the stock of such a product is decreasing.

For example, I am a local dealer of Chairs. I am selling a Chair to a person. Then the following entry will happen.

1TransactionId1
2VoucherID1
3ProductIdChairID
4UnitIdUnitID
5QuantityIn0.00
6QuantityOut1.00

We have mentioned two types of tables for understanding the basics of accounting entries. In an accounting application, we have to create more than 25 tables.

We have discussed about accounting, now we can go to the development section.

Firstly, we want to download Visual Studio. 

Downloading Visual Studio

I am using Visual Studio 2010. But the latest version is Visual Studio 2017. You can download the community edition for free.

Let us type ‘Visual Studio Community’ in the Google search bar and then double click on the first link.

C#

Then we can see the download page. Click the download button.

C#

Now, the download of Visual Studio Community Installer will start. You can save the file to the Download folder or somewhere else you want.

C#

If the download process is completed, you can see the file in the download file. To start the installation, double-click on the file.

C#

The installer will start. For that press on Continue button

C#

C#

Then the Visual Studio Installer window will open. There are many options for installation. If you are a cross-platform mobile developer you can put a tick on Xamarin. And web developers can select Asp.net development option.

Here for us, we have to select two categories. One is “.Net Desktop Development” and the second is “Data Storage and Processing”.

We select .Net Desktop Development for Windows Form Application development purposes. In this platform, we will develop our Accounting Application with C# programing language.

C#

We want to store our data in SQL Server. So, we also select Data Storage and Processing option.
C#

After finishing the installation, click on the start menu icon. We can see the Start Page. For creating a new project click on the link named “Create new project.”

C#

Now the project window will open.

Select C# programming language, then Windows Classic Desktop and finally select Windows Forms App. In the name section, you can type any name you want. And then press the ‘OK’ button.

C#

Now we can see the window where all the application development process is happening. I have marked five areas. All are important in visual studio.

C#

  1. Solution Explorer
    In here, we can see the files in our project
  1. Graphics User Interface
    This is the interface of our application. Here we create our application.
  1. Tool Boxes
    From here we can drag and drop controls like button label and textboxes to the GUI to create the application.

  2. Properties
    From here, we can change properties of controls in the Graphic User Interface.
  1. Server Explorer
    In here we can see the server and databases we use in the application.

Conclusion

Referring to  the projects I have made will help you to understand the lessons completely. If you want them, please email me at: ashpro2013@gmail.com.

Thank you for reading this article.