Database Programming using C# 2008, Visual Basic 2008 and SQL Server
( Secrets of Developing an Accounting Package using C#, Visual Basic 2008 revealed )
Objective
The objective of this book is to teach the secrets of developing an accounting software package for the .Net platform using Visual Basic, C# , ADO .Net, SQL Server and Crystal Reports. Techniques of developing a complete accounting software package are taught using business logics, programs, flow charts and this makes learning easier. You will also learn how to create stored procedures and triggers, program the transactions of an Accounting Software, program reports using Crystal Reports, about disconnected architecture, MDI applications and how to use T-SQL.
Contents
Chapter : 1. Visual Basic 2008.
- Components of the .NET Framework 3.5
- ASP.Net
- .Net Ajax
- LINQ
- ADO.Net Entity Framework and DataServices
- Windows Workflow Foundation
- Windows Communication Foundation
- Windows Presentation Foundation
- Windows Cardspace
- Windows Forms
- Console Application Services
- ADO.Net
- .Net Framework base classes
- Common Language Runtime
- Namespaces
- Assemblies
- Features Provided by the CLR
- Compiling and Execution Steps in Net framework
- Visual Studio 2008 Integrated Development Environment
- Creating a New Project in Visual Studio 2008
- User Interface elements of Visual Studio 2008 IDE
- Design Window
- WPF Designer
- Web Forms Designer
- The Solution Explorer Window
- The Properties Window
- Toolbox
- The Output Window
- The Task list window
- The Server Explorer Window
- The Class View Window
- The Code Editor Window
- Windows Forms
- Windows Form Properties
- Windows Forms Events, Handles keyword
- Windows Form Methods
- How to set the Startup form in VB 2008
- How to set the Startup form in C# 2008
- Windows Form Controls and Events
- Text box Control
- Label Control
- ListBox Control
- Selecting Items in ListBox Control
- CheckBox Control
- ComboBox Control
- RadioButton Control
- GroupBox Control
- Button Control
- Control Events
- Keyboard Events
- Mouse events
- Control - specific events
- Visual Basic 2008 Language Features
- Data Types
- Variables
- Declaring Variables
- Variable Naming Conventions
- Variable Initialization
- Variable Scope
- Block Scope
- Procedure Scope
- Module Scope
- Namespace Scop
- Life time of a variable
- Constants
- Arrays
- Declaring an array
- Multidimensional Arrays
- Assigning values to array elements
- Dynamic Arrays
- Preserve Keyword
- Operators
- Arithmetic Operators
- Comparison Operators
- Logical Operators
- Concatenation Operators
- Control flow constructs
- Decision structures
- If - Then - Else
- Select Case Construct
- Loop structures
- While - End While Loop Structure
- Do-Loop Structure
- For-Next Loop Structure
- Nested Control Statements
- Procedures in Visual Basic 2008
- Sub Procedures
- Access Modifiers used with Sub Procedures
- Argument Declaration in a Sub Procedure
- Passing arguments to a Sub Procedure
- Calling a Sub Procedure
- Types of Sub procedures
- General procedures
- Event-handling procedures
- Function procedures
- Return Values of a Function Procedure
- Calling a Function Procedure
- Property Procedures
- Procedure Overloading
- How to create Parameter Array
- Rules to be followed while using a Paramter Array
- Passing arguments of a Parameter Array
Chapter : 2. Visual C# 2008
- Data Types in C# 2008
- Variables
- Rules to create an identifier
- Initialization of Variables
- Variable Scope
- Block Scope
- Constants
- Arrays
- Assigning values to Arrays
- Two Dimentional Arrays
- MultiDimensional Arrays
- Jagged Arrays
- Operators
- Arithmetic Operators
- Relational Operators
- Logical Operators
- Assignment Operators
- Increment and Decrement Operators
- Ternary Operators
- Control flow constructs
- Conditional Statements
- if..else
- switch..case statement
- Loops
- while loop
- do...while loop
- for loop
- Collections
- Non-Generic Collections
- Generic Collections
- Working with ArrayList
- Adding items to the ArrayList using an Add Method
- Iterating through items
- Using Indexers
- Using Enumerators
- Using ForEach loop
- Inserting items to the ArrayList using Insert and InsertRange method
- Adding items to the ArrayList using AddRange Method
- Removing items from ArrayList
- IndexOf Method
- Problems with ArrayList
- Generics
- When to use a Collection?
- Performance issues when working with collectins -List and Dictionary
- Adding Data into List
- Collection initializers
- Interating through the Customer List
- Sorting in Lists
- Usageof IComparable and IComparer and interafce to sort Lists of objects on custom classes
Chapter : 3. OOPs in VB and C# 2008.
- Namespaces
- Creating a Namespace in VB.Net
- Creatig a Namespace in C#
- Creating Nested Namepsaces in VB.Net
- Creating Nested Namepsaces in C#
- How to access members of a namespace in VB.Net
- Creation of aliases for namespaces in VB.Net and C#.Net
- How to access members of a namespace in C#
- Structures
- Declaring a Structure
- Access Modifiers
- Similarities between Classes and Structures
- Differences between Classes and Structures
- Create a Structure in Visual Basic 2008
- Structures and Property Procedures
- Initialization in Structures
Structure and Constructors
- Create a Structure in C #
- Writing a Constructor to initialize Structure member variables in C# 2005
- Class
- Advantages of using Classes and Objects
- Creating a Class in Visual Basic 2008
- Property Procedures
- Property Declaration in VB 2008
- Property Declaration in C# 2008
- C# Language Feature: Automatic Properties
- Constructors
- Instance Constructor in VB 2008
- Instance Constructor in C# 2008
- Write the code to instantiate the class
- Run the application
- Shared constructor in VB 2008
- Static constructor in C# 2008
- Destructors
- Finalize() Destructor
- Dispose() method
- Inheritance
- Declaration of Account Class
- Constructor overloading in vb.net
- Creating a derived class - PartyAccount
- Creating a constructor in derived class with parameters
- Creating a derived class - BankAccount
- Polymorphism
- Compile time Polymorphism/ Method OverLoading
- Implementing runtime Polymorphism / Overriding
- example of runtime Polymorphism in Vb 2008 and C#
- Abstract Classes
- Creating Abstract Classes
- Creating Abstract Members in Abstract Class
- Implementing Abstract Class
- Testing - Abstract class
- Testing - Abstract class and Polymorphism
- Polymorphism through Inheritance
- Creating An Abstract Class in C# 2008
- Implementing An Abstract Class in C#
- Testing - Abstract class and Polymorphism in C#
- Interfaces
- Difference between interfaces and abstract classes
- Why use interfaces
- Declare an Interface in VB 2008
- Create Invoice class which implements IPayableHandler Interface
- Create Employee class which implements IPayableHandler Interface
- Testing - Interface and Polymorphism in VB 2008
- Declare an Interface in C# 2008
- Create Invoice class which implements IPayableHandler Interface
- Create Employee class which implements IPayableHandler Interface
- Testing - Interface and Polymorphism in C# 2008
- Implementing Visual Inheritance
Chapter : 4. SQL Server
- SQL Server Management Studio
- Authentication Modes in SQL Server
- Understanding Windows Authentication mode
- Understanding SQL Server Authentication mode
- Changing SQL Server Authentication mode
- SQL Server Object Explorer
- Securing the Database
- Create Logins
- Add Logins to Server Roles
- Fixed Roles
- Grant access to Databases
- Implementing Physical Database Schema
- Creating the Database Files
- Configuring the File Growth
- Using Multiple Files
- Multiple File Groups
- Creating a Database with File Groups
- Creating schemas
- Tables with SQL Server Management Studio
- Creating Tables with SQL Server Script
- Creating Primary Keys
- Using Identity Columns and GUIDS
- Declarative referential integrity
- Creating Indexes
- Structured Query Language
- T-SQL
- Triggers
- Transactions
Chapter : 5. ADO.Net
- An introduction to ADO.Net
- The ADO.Net Object Model
- Dot Net Data Providers
- Connection Object
- Command Object
- DataReader
- DataAdapter
- DataSet
- Typed vs Untyped Datasets
- Navigating through Datasets
- Updating the Database using Dataset and DataAdapter
- Detecting & Handling changes to Data in a Dataset
Chapter : 6. Accounting
- Business Transactions
- Financial Position and Accounting Equation
- Accounts
- Commonly used Accounts
- Chart of Accounts
- Groups
- Double Entry System
- Analysis of Transactions
- The Voucher System
- Typcial Transactions
- Financial Statements
Chapter : 7.
Developing the Financial Accounting Application - Visual Basic 2008 and C# 2008
- Developing the Masters
- Creating the Project
- Writing Standard Modules
- Creating the FinAccounting Database
- Exploring the FinAccounting Database
- Populating the Group Table with Chart of Accounts
- Designing & Programming the Accounts Form
- Programming the AccountsForm
- Writing a Constructor
- Programming the AccountsForm_Load() event procedure
- Saving Account details into the DataSet
- Moving to a particular row in the DataSet
- Achieving error free/rapid data entry by enable/disable controls
- Validating the data entered in the Amount TextBox control
- Developing the Transactions
- Developing the Tran Class
- Designing and Programming the Journal form
- Designing and Programming the VouRec form
- Designing and Programming the PurSal form
Chapter : 8. Creating Reports in Crystal Reports using Visual Basic and C#
- Introduction
- Designing and Programming the Trial Balance
- Designing and Programming the DayBook
- Designing and Programming the Registers
Chapter : 9.
Developing Components for Three Tier Applications
- Introduction to Class Libraries
- Multi Tier Architecture
- Creating a Class Library for the Data Layer
- Creating a Class Library for the Business Layer
Technical Perspective
This book adopts an object oriented approach to develop an Visual Basic 2008 and C# 2008 and SQL Server Accounting application. You will appreciate why an object oriented approach is used in application development. The programs which come with source code reveal the benefits of OOPs. The reports and transactions dealt with in this book are unique to an Accounting application. This book lays a good foundation for developing a client/server accounting application.
Unlike most other books, Application Series books cover all the end to end issues of developing database applications.