Online Courier & Cargo System PROJECT REPORT.doc

Share Embed Donate


Short Description

The project “Online Courier & Cargo System” delivery status and notification system is being developed for the need ...

Description

dContents Original Copy of the Approved Proforma…………………………………....3 Project Synopsis………………………………………………………………..4-40 Guide’s Bio-data………………………………………………………………..41-42 Certificate of Originality……………………………………………………….43 Letter from Project Manager………………………………………………….44 Project Report…………………………………………………………………..45 Preface…………………………………………………………………………..46 Acknowledgement................................................................................................47 Candidate’s Declaration………………………………………………………..48 Company Profile………………………………………………………………..49-50 Introduction to the Projects About Project………………………………………………………………..51 Module Description…………………………………………………………52 Project Objective Introduction……………………………………………………………….....54-56 Project Category……………………………………………………………..57-58 Tools & Platform Used…………………………………………………………59-60 System Analysis Introduction…………………………………………………………………..62 Working Process of System ………………………………………….……...62-63 Software Requirement Specification………………………………………...64 Feasibility Study………………………………………………………….….65-67 H/W & S/W Requirement…………………………………………………....68 Time Schedule…………………………………………………………….…69 Reasons for using these tools…………………………………………….….70-75 System Design Introduction……………………………………………………………….….77-79 DFD of the Project……………………………………………………………81-83 ER Diagram…………………………………………………………………..84 Flow Diagram………………………………………………………………...85 Database Design………………………………………………………………...86-94 Project modules Introduction…………………………………………………………………...96104 My module…………………………………………………………………....105

Screen shots............................................................................................................106120 Program Code…………………………………………………………………....121147 System Testing Testing Methodology…………………………………………………………..149 Black-Box Testing…………………………………………………………..…150 White Box Testing……………………………………………………………..151 Control Structure Testing………………………………………………………152 Testing Strategy………………………………………………………………...152153 System Implementation………………………………………………………......154157 Limitations of the project………………………………………………………...158 Future Scope of the Project....................................................................................160 Bibliography……………………………………………………………………….163

2

3

4

1. Title of the Project.

5

2. Introduction. 3. Objectives of the Project. 4. Input to the Project. 5. Output of the project. 6. Process logic. 7. Project modules. 8. Table structure. 9. Limitations of the project. 10. Tools/Platforms, Languages to be used. 11. Minimum system requirements. 12. Are you doing this project for any Industry/Client? 13. Security. 14. Scope of Future Application.

6

Introduction About project: The project “Online Courier & Cargo System” delivery status and notification system is being developed for the need of company running simultaneously courier & cargo service this is specially meant for their frontline user service information. This is one of the best efforts by us to prove that how Internet can be helpful in tire service industry. Where inquiries are always in queue. This system however is a snap shot of the whole scenario for the booming service industry. This basically deals with the queries of user for a company simultaneously running its courier & cargo service where the users having booked some cargo or couriers or both for delivery can view the status online about where there booked courier or cargo. 7

How much more time it will take to reach the place, and whether received it in original state. And many other queries such as the reason of blockage, queries with the user care officers regarding handling etc. there is a user satisfaction guest book where user should put some notes about our service user complaint register. As the domain in of the system is to a bigger area so the best and convenient way is internet as this is the best way to satisfy the user queries. A website can prove the best interface between the user and the company. With the advent of the Internet technologies wavered. Every year millions more people around are using internet interact in more ways than ever before to date the find old classmates check of medical elements and cures to react and express and interactive view of the news also gives live sales, HELP Online and maximum hit mostly in the service industries. This is an instance to show that how internet can be the best deal with the fast growing network of optical fiber making micro broadband and economical to access the Internet. Whether in the modern or Information retrieval term. The extract of all these whether the data access retrieval and our goal is placed in a well ordered by using it’s technologies on net. We will not loose our data whether it is user or service provider. So comp is now helpful in many other cases too:•

Fast retrieval of information around the globe by browsing the net.



Easy access by sitting home to most of the work places.



Easy database access with the invaluable functions of online entertainment and jobs and placements.

Through this portal we have tried to automate the process of an instance of user care industry service a web based support for a cargo and courier to provide automates service regarding their courier (packets and parcels) delivery status.

8

Objectives of the Project The objective of the project “Online courier delivery status Information & notification system” Is to deal with the queries of manger. How much more time it will take to reach the place, and whether received in original state. Queries among the officers regarding handling etc. User satisfaction guest book where user should put some notes about service and other suggestions. User complaint registers to help us get a better feedback for our failures as a hospitable interface.

The major objectives of this project are as follows: 

Providing an interactive interface for the user query for online status of the packets booked. (Current Status) using the net technology under the framework A.S.P.NET with vb.net. After all interface has a lot to do when proper interaction and attraction is necessary.

9



Helping the user to search his specific booked packet & parcel as where it is? Which intermediate office, when it will move from here, reasons for delay, when it will reach the destination?



Online updating of packet & parcel status through intermediate and end office regarding truck no, status, reloading of cargo from one truck to another truck etc.



Providing Secured Environment for secured data access whatever necessary.



Retrieval of data from database using easy buttons links and interfaces in a very fast and efficient manner.



On-line updating of all type of data. Updating data using web based interfaces and with the help of buttons & links in an easy & convenient way.

Developing a viable candidate system that fulfills the following requirements 

Faster and accurate information retrieval.



Easy registration.



Login dependent information updating.



Correct and consistent maintenance of data and its quick retrieval. 

Minimizing the page download time hence less investment.



Improving the switches button and hyperlink so that the candidate could find all the queries they need at the first sight.



Maintaining the fast download of the page by using the flavors of cookies.



Smooth transition and easy access to the pages not requiring much training to the end user.

The overall objective: System helps to bring the company and its user round the globe more closely to each other so that one should have the perfect services.

10

Input to the project User Information:  Booking details of Courier & Cargo.  Suggestions and Queries to administrator.

Administrator Information:  Creation information of all Offices, trucks, Users, routes, route map.  Creation of Network (create country, state, & cities).

11

Output of the project User:  Status of Courier & Cargo.  Status of Lot.  Status of Trucks.

Administrator:  Search the status of Courier & Cargo.  View complaints and suggestions of User and Offices.

12

Process Logic

Online Courier & Cargo System Processes in the following manner: This website contains information about user function such as Booking the couriers and cargo, Loading the collection of lots in the selected truck or container (in case of cargo), Loading the container(s) in the truck (in case of cargo) etc. as well as administrator function such as Office Registration, Creating User, Viewing suggestions and complaints of user, Adding new Cities, State and Countries, View the Status of Container and Truck etc. The project Online Courier & Cargo System delivery status and notification system is being developed for the need of company running simultaneously courier & cargo service this is specially meant for their frontline customer service information. This is one of the best efforts by us to prove that how Internet can be helpful in tire service industry.

DFD of the Project

13

At zero and one level the border scenario of the whole portal is considered and at second level an instance of this project is shown. Each break-up has been numbered as per the rule of DFD. Here we attempted to incorporate all the details of the system.

0 Level DFD: This is the context level DFD of the proposed system. The whole system has been depicted in the way so that the information flow continuity should not be lost in the next level. The purposed system is shown as a whole process and the inputs and outputs are shown with incoming and outgoing arrow from the system.

1st Level DFD: This DFD shows all the processes together with all the data stores (tables). It shows the true data flow i.e. how data is actually flowing in the system. Data is coming from which table and going into which table is clearly shown by this understanding the whole system. The application developer will fall back upon this DFD during the development phase.

14

0 Level DFD

Web Panel Office Registration

Web panel display

Site Data Upload

Display Success/failure

Registration display

Reg. Data

Staff Login

Status Search Delay

Reg. Information User id & pwd Process status search Calculate distance &time Process query

Customer query

Login Success/failure

Online courier & cargo booking delivery status information & notification system

Display Status Show delay Process Response

Process Complaint

Customer Complaints

Process action

Action display

15

Login Display

Status display Delay

Response display

16

LEVEL 1 D.F.D

The Company Database Data upload Web Panel Updating Update Office Reg.

Check administor

Web panel display Process Office Reg.

Staff Login User id and pwd

Valid id msg.

Status search

Reg. Display

Check Office status

Input Booking Id Process Search id

Delay

Check Candidate

Process user id & pwd

Status Data

Process current office

Route Data

Status

Process Route Distance & Date

Process Distance & time Delay reasons Delay

Customer query

Update reasons

Updating

Data

Update new query Response update

Response Handler Response

Response display

Customer Complaints Updating

Update new query

Query Update Response handler

Response Action Display

17

E-R Diagram

Admin_id Administrator

Creat es

Office

Name

City_id

Container

Addres s

User

Provide s

Container_i d

Office_i d

passwor d

User_id

Password

Book ed Base_c ity_id ty_id

Routes

Distance

Office_ bearer Deliver y_statu s

Container_at

18

Courier

Cargo

Detailes_of _courier

Destination _city_id Detailes_of_carg o

Flow Diagram

Suggestion Loading/unloading container

Courier Booking User

Courier booking lot link

Loading/unloading truck

Admin

Office Reg. Other Network Lot Network Transfer Route Detail

Route Map

City

State

Truck Route

Status Information

Truck Truck Route 2

Country Container Lot

Project Modules The proposed website will have its main page and will be mainly divided into partially dependent and partially independent modules as1. Login master 19

Source/Destination

2. Registration master 3. Courier & cargo differentiation master 4. Courier status notification marker 5. The page design maker 6. Delivery status notification system for courier 7. Courier booking detail master 8. The site master (control panel) 9. Customer query handler master 10. The validations master 11. The other network courier – handling master 12. Cargo status notification marker 13. Delivery status notification system for cargo 14. Cargo booking detail master 15. The other network cargo- handling master

Table Structure The normalized form of the table with their structure is describe as under-

Table 1: Login Field Name User_id Office_id Password

Data Type Varchar Integer Varchar

Description Userid(unique) Officeid Password

20

Key Constraint Primary key Foreign Key -

Table 2: Administration login Field Name User_id Password Password

Data Type Varchar Varchar Varchar

Description Userid(unique) Password Password

Key Constraint Primary key -

Table 3: Office registration Field Name

Data Type

Description

Key Constraint

Office_id Name Address1 Address2 Phone1 Phone2 Cell e-mail Country_id

Integer Varchar Varchar Varchar Varchar Varchar Varchar Varchar Integer

Office id Candidate name Permanent address Temporary address Phone(residence) Phone(office) Mobile e-mail id country to which

Primary key Foreign key

Integer Numeric Date Varchar

belong State Registration date Courier, cargo

Foreign key Foreign key -

State_id City_id Registration date Handles

Table 4: courier booked detail Field Name Booked_by_user_id Booking_no Booked_item Booked_weight Handling_description

Data Type Varchar Nvarchar

Description Office Booking no.

Key Constraint Foreign key Primary key

Varchar Integer Varchar

unique Item name Weight About handling the

-

cargo Container id

Lot_id Booking_date Receive_date Receive_at

Integer Date Date Varchar

Receiving date Userid of receiving

Foreign key Foreign key

Whether

Varchar

office Courier/cargo

-

21

Table 5: lot status Field Name Office_id Lot_id Lot_status Reason_of_stay When_moved

Data Type Integer Numeric Varchar Varchar

Description Booking office id Booking no. unique Office_if of office Through which

Key Constraint Foreign key Primary key -

Varchar

passing -

-

Table 6 Lot detail Field Name Lot_id Booking_id Office_id Dispatch_date

Data Type Numeric Numeric

Description Container_id Booking id booked

Key Constraint Foreign key Foreign key

Varchar Date

for special lot Office lot made Date of dispatch

-

Table 7: Route detail Field Name Base_city_id Distintion_city_id Current_delivery_status Average_speed Distance

Data Type Numeric Numeric Integer Integer Numeric

Description Time take Speed Distance in k.m.

Key Constraint Foreign key Foreign key -

Table 8: Route map Field Name Base_city_id Distintion_city_id Original_ via Currently_via Reason_route_change

Data Type Numeric Numeric Integer Integer Varchar

Description City_id City_id Cities Cities reason

22

Key Constraint Foreign key Foreign key -

Table 9: Loading unloading packet

Field Name Office_id

Data Type Numeric

Description Booking id of lot

Key Constraint Foreign key

Booking_id_unloaded

Numeric

unloaded New lot made with

Foreign key

Lotid_loaded Lotid_unloaded Office_id Reason

Numeric Numeric Numeric Varchar

that booked packet From unloaded Unloading reason

Foreign key Foreign key Foreign key -

Table 10: Login status master Field Name Login_id Login_time Logout_time

Data Type Varchar Date/time Date/time

Description User id Login time Logout time

Key Constraint Foreign key Foreign key Primary key

Table 11: Country services Field Name Country_id country

Data Type Numeric Varchar

Description Country_id Country

Key Constraint Foreign key -

Table 12: State services Field Name State_id Country_id State

Data Type Numeric Numeric Varchar

Description **Country id -

Key Constraint Foreign key -

Table 13: City services Field Name State_id Country_id City_id city

Data Type Numeric Numeric Integer Varchar

Description Country id -

23

Key Constraint Foreign key Foreign key Primary key -

Table 14: Lot loading unloading Field Name Lot_id Destroyed_at New_lot_id reason

Data Type Integer Integer Integer Varchar

Description Office Track load -

Key Constraint Foreign key Foreign key -

Table 15: Country Services Field Name Booking_no Customer_name Address Complaint_against Complaint_regarding Complaint_detail Date Action_taken By Against Action_details Date_action

Data Type Nvarchar Varchar Varchar Varchar Varchar Varchar Datetime Varchar Varchar Varchar Varchar Datetime

Description Booking Number Administrator id Office id -

Key Constraint Foreign key Foreign key Foreign key -

Table 16: Suggestion Register Field Name Booking_id Suggestion To_office_id Responce Date_suggest Date_responded

Data Type Integer Varchar Integer Varchar Datetime Datetime

Description Booking id Suggestion Suggestion -

Key Constraint Foreign key Foreign key -

Table 17: Other Network Colaboration Field Name Network_id Company_name Company_office Website Customer_care_no Whether_collaborated Date_collaboration Whether_handles

Data Type Integer Varchar Integer Varchar Datetime Datetime Date Varchar

24

Description Booking id Suggestion Suggestion Courier/cargo

Key Constraint Foreign key Foreign key -

Table 18: Other Network Courier Transfer Field Name Network_id Office_id Lot_id New_network_lot_id Date_transfer Office_id_received Date_received

Data Type Integer Numeric Numeric Varchar

Description Boking id Suggestion Lot Courier company

Key Constraint Foreign key -

Date Numeric Date

transfer Date booked -

-

Table 19 Truck Details Field Name Office_id Truck_id Truck_no Drivers Truck_status Reason_of_stay When_moved

Data Type Integer Numeric Varchar Varchar Varchar

Description User id of office Office id of office

Key Constraint Foreign key Primary key -

Varchar Datetime

at which staying -

-

Table 20: Container Field Name Container_id Office_bearer Container_at

Data Type Numeric Integer Integer

Description Container id Offince id Office id

Key Constraint Primary key Foreign key Foreign key

Table 21: Truck Container Mapping Field Name Truck_id Container_id Booking_date Booked_base_office Whether_unload_truck Unloading_date Whether_unloaded_container Cdate

Data Type Numeric Numeric Date Varchar Char Date Char Date

Description Office id Yes/No Yes/No Unloaded container date

Table 22: Loading Unloading Container 25

Key Constraint Foreign key Foreign key Foreign key -

Field Name Office_id Container_id_unloaded

Data Type Varchar Integer

Description Container id from

Key Constraint Foreign key Foreign key

which cargo Container_id_loaded

unloaded Container id from

Integer

-

which cargo Reason

loaded Unloading reason

Varchar

-

Table 23: Truck Loading Unloading Field Name Truck_id Unloaded_at Loaded_to reason

Data Type Integer Integer Integer varchar

Description Office Truck loaded -

Key Constraint Foreign key Foreign key -

Table 24: Other Network Cargo Transfer Field Name Network_id Office_id Lot_id Net_network_lot_id Date_transfer Office_id_received Date_received

Data Type Integer Numeric Numeric Varchar

Description Bookingid Suggestion Lot Courier company

Key Constraint Foreign key -

Date Numeric Date

Transferred Date booked -

-

Limitations of the Project Though this project is very useful and has several advantages over a manual system. Use of this no doubt will result in faster processing and a better service but has some limitations also. These limitations include

 We do not have online transactions.

26

 This application can run on the Web server and SQL server.  End user cannot directly interact with the dynamic performance of this project.

Tools/Platforms, Languages to be used:

For the undergoing project, following tools are used: Platform Operating System

Windows Windows XP professional with Service

Framework

Pack 2 ASP.Net FRAMEWORK 2.0

27

Front-End Tool Scripting Language Interface Server Back-End Tool Technology

Visual Studio 2005 C#, HTML HTML, Photoshop, Visual Studio Internet Information Server SQL Server 2000 ASP.NET

HARDWARE: Processor Memory Network Adapter Modem Secondary Storage

Intel Pentium 2.4 GHZ 256 M.B., D.D.R. RAM Ethernet Adapter 56kpbs Voice Fax Data Samsung/Seagate Hard disk (40 G.B)

Reasons for using these tools:

What is ASP.NET ASP.NET is a programming framework built on the common language runtime that can be used on a server to build powerful Web applications. ASP.NET offers several important advantages over previous Web development models: •

Enhanced Performance: ASP.NET is compiled common language runtime code running on the server. Unlike its interpreted predecessors, ASP.NET can take advantage of early binding, just-in-time compilation, native optimization, and caching services right out of the box. This amounts to dramatically better performance before you ever write a line of code.



World-Class Tool Support: The ASP.NET framework is complemented by a rich toolbox and designer in the Visual Studio integrated development environment. WYSIWYG editing, drag-and-drop server controls, and

28

automatic deployment are just a few of the features this powerful tool provides. •

Power and Flexibility: Because ASP.NET is based on the common language runtime, the power and flexibility of that entire platform is available to Web application developers. The .NET Framework class library, Messaging, and Data Access solutions are all seamlessly accessible from the Web. ASP.NET is also language-independent, so you can choose the language that best applies to your application or partition your application across many languages. Further, common language runtime interoperability guarantees that your existing investment in COM-based development is preserved when migrating to ASP.NET.



Simplicity: ASP.NET makes it easy to perform common tasks, from simple form submission and client authentication to deployment and site configuration. For example, the ASP.NET page framework allows you to build user interfaces that cleanly separate application logic from presentation code and to handle events in a simple, Visual Basic - like forms processing model. Additionally, the common language runtime simplifies development, with managed code services such as automatic reference counting and garbage collection.



Manageability: ASP.NET employs a text-based, hierarchical configuration system, which simplifies applying settings to your server environment and Web applications. Because configuration information is stored as plain text, new settings may be applied without the aid of local administration tools. This "zero local administration" philosophy extends to deploying ASP.NET Framework applications as well. An ASP.NET Framework application is deployed to a server simply by copying the necessary files to the server. No server restart is required, even to deploy or replace running compiled code.



Scalability and Availability: ASP.NET has been designed with scalability in mind, with features specifically tailored to improve performance in clustered and multiprocessor environments. Further, processes are closely monitored and managed by the ASP.NET runtime, so that if one misbehaves (leaks, deadlocks), a new process can be created in its place, which helps keep your application constantly available to handle requests.

29



Customizability and Extensibility: ASP.NET delivers a well-factored architecture that allows developers to "plug-in" their code at the appropriate level. In fact, it is possible to extend or replace any subcomponent of the ASP.NET runtime with your own custom-written component. Implementing custom authentication or state services has never been easier.



Security: With built in Windows authentication and per-application configuration, you can be assured that your applications are secure.

What is ASP.NET? ASP 3.0 is the latest version of ASP, but there will never be an ASP 4.0 version. ASP.NET is the next generation ASP, but it's not an upgraded version of ASP. ASP.NET is an entirely new paradigm for server-side ASP scripting. ASP.NET is a part of the .NET Framework. Microsoft spent three years rewriting ASP.NET from the ground up, and ASP.NET is not fully backward compatible with ASP 3.0.

.NET Framework The .NET Framework is the infrastructure for the Microsoft .NET platform. The .NET Framework is an environment for building, deploying, and running Web applications and Web Services. The .NET Framework contains a common language runtime and common class libraries - like ADO.NET, ASP.NET and Windows Forms - to provide advanced standard services that can be integrated into a variety of computer systems. The .NET Framework provides a feature-rich application environment, simplified development and easy integration between a number of different development languages. The .NET Framework is language neutral. Currently it supports C++, C#, Visual Basic, and JScript (Microsoft's version of JavaScript).

30

Microsoft's Visual Studio.NET is a common development environment for the .NET Framework.

New in ASP .NET 

Better language support



Programmable controls



Event-driven programming



XML-based components



User authentication, with accounts and roles



Higher scalability



Increased performance - Compiled code



Easier configuration and deployment



Not fully ASP compatible

Microsoft Introduces C# C# is Microsoft's new programming language for the .NET platform. It combines some of the best features of modern programming languages such as Java, C++ or Visual Basic. C# is an object-oriented language with single inheritance but multiple interfaces per class. It supports component-based programming by properties (smart fields), events and delegates (enhanced function pointers). C# is fully interoperable with other .NET languages such as VB.NET, Eiffel.NET or Oberon.NET. C# is designed to be a platform-independent language in the tradition of Java. It's syntax is similar to C and C++ syntax, and C# is designed to be an object-oriented language. There are, for the most part, minor variations in syntax between C++ and C#. Main has no return type, there are no semicolons after class names, there are some (to C++ programmers) strange decisions regarding capitalization - such as the capitalisation of Main. Other a few differences, the syntax is often the same. This decision is reasonable, in light of the fact that C syntax has been used with several other languages - notably Java. Similar to Java, C# does not support multiple inheritance; instead it provides Java's solution: interfaces. Interfaces implemented by a class specify certain functions that 31

the class is guaranteed to implement. Interfaces avoid the messy dangers of multiple inheritance while maintaining the ability to let several classes implement the same set of methods. Another helpful feature of C# is garbage collection. Therefore, it is unnecessary to include a destructor for each class unless a class handles unmanaged resources; if so, it's necessary to release control those resources from within the class (The Finalize function is used to clear up these unmanaged resources; it can even be abbreviated with the same syntax as a C++ destructor). Of course, C# also provides direct access to memory through C++ style pointers, but these pointers are not garbage collected until specificially released by the programmer. C#, as part of the .NET framework, is compiled to Microsoft Intermediate Language (MSIL), which is a language similar to Java's bytecode. MSIL allows C# to be platform independent and runs using just in time compiling. Therefore programs running under .NET gain speed with repeated use. Furthermore, because the other languages that make up the .NET platform (including VB and COBOL) compile to MSIL, it is possible for classes to be inherited across languages. The MSIL, like bytecode, is what allows C# to be platform independent.

C# Advantages: •

XML documentation generated from source code comments. (This is coming in VB.NET with Whidbey (the code name for the next version of Visual Studio and .NET), and there are tools which will do it with existing VB.NET code already.)



Operator overloading - again, coming to VB.NET in Whidbey.



Language support for unsigned types (you can use them from VB.NET, but they aren't in the language itself). Again, support for these is coming to VB.NET in Whidbey.



The using statement, which makes unmanaged resource disposal simple.

32



Explicit interface implementation, where an interface which is already implemented in a base class can be reimplemented separately in a derived class. Arguably this makes the class harder to understand, in the same way that member hiding normally does.



Unsafe code. This allows pointer arithmetic etc, and can improve performance in some situations. However, it is not to be used lightly, as a lot of the normal safety of C# is lost (as the name implies). Note that unsafe code is still managed code, i.e. it is compiled to IL, JITted, and run within the CLR.

SQL Server 2000

SQL Server 2000 only works on Windows-based platforms, including Windows 9x, Windows NT, Windows 2000 and Windows CE. In the case of SQL Server, authentication is handled by comparing credentials provided by a connecting user with set of entries stored in the sysxlogin table of the SQL server master database (to get familiar with its content, you might want to use sysloging view, presenting data in a more friendly format). The way these credentials are provided depends on the authentication mode, which can be set to one of the following:

33

Minimum System Requirements Hardware requirement:  Processor : Pentium IV 2.4 GHZ.  Memory

: 256 MB RAM

 Hard Disk : 10 GB  Keyboard  Monitor

Software requirement: The minimum requirement for the application to run is given below: 

Front End : ASP.NET C#



Back End : SQL Server 2000



Operating System : WINDOW XP with SP2, WINDOW 2000

34

Are you doing this project for any Industry/Client? Yes, this project is developed by Infowave IT Solution at Noida for the marketing courier companies.

My Role: I worked as a trainee cum programmer. My responsibilities included development of web portal having “Login Master, Registration Master, Courier & Cargo differentiation Master, Courier status notification master” modules which handles the functionality of the web portal. I worked under one senior programmer.

Name & address of the industry INFOWAVE IT SOLUTION J 41/42, 1ST FLR, SEC-18, NOIDA. NEAR RADISSON HOTEL. PH: - 9911517542

35

Security

Physical Security The Divisional/Central Security Administrator shall be responsible for the physical security of the system Their responsibilities shall include  Maintenance of security of Database Servers by keeping it locked and prohibiting entry of any unauthorized person to prevent thefts and other untoward incidents  Access to the database server shall be protected by password and only the System Administrator shall be aware of the same.  Maintenance of multiple power supply connections for uninterrupted power supply.

Database Security  SQL Server authentication: In this case, SQL Server requires that a user specifies a name and password at the time when connection is attempted. The login name and one-way hash of the password need to match one of entries in the sysxlogin table for the login attempt to be successful.  Windows authentication: With built in Windows authentication and perapplication configuration, you can be assured that your applications are secure.

36

Scope of Future Application

It is highly likely that the scope will change as the web application moves forward the web process model should be incremental. This allows development team to freeze the scope for one increment so that an operation web application of the preceding increment but once the second increment commence, scope is again frozen temporarily. This approach enables the web application team to work with having to accommodate continual stream of change be still recognized. The continuous evolutions characteristics of most web application. Beside that the following basic quality in the software always safeguards the future scope of the software.

37

38

39

40

41

Preface This project “Online Courier & Cargo System” has been developed keeping in mind the heights “Information Technology has reached” and when everything is powered with computers does make a great difference. This website contains information about user function such as Booking the couriers and cargo, Loading the collection of lots in the selected truck or container (in case of cargo), Loading the container(s) in the truck (in case of cargo) etc. as well as administrator function such as Office Registration, Creating User, Viewing suggestions and complaints of user, Adding new Cities, State and Countries, View the Status of Container and Truck etc.

42

The project online courier & cargo System delivery status and notification system is being developed for the need of company running simultaneously courier & cargo service this is specially meant for their frontline customer service information. This is one of the best efforts by us to prove that how Internet can be helpful in tire service industry. This report is written as a text for the partial fulfillment of the BCA program

pursuing

for

INDIRA

GANDHI

NATIONAL

OPEN

UNIVERSITY (IGNOU).

Acknowledgement I would like to take this opportunity to thanks everybody who guided me and extended possible help for the successful completion of the project “Online Courier & Cargo System”. This work would not have been a reality without the permission of management of Infowave IT Solution, which gave me the opportunity to work in a professional environment. I am indebted to Mr. Sunil Kumar Sharma, Team Leader, to whom I owe the success of this project, for his whole hearted corporation and guidance, which helped me in overcoming the teething problems of an industrial environment and carrying on the project work smoothly.

43

I am thankful to all the members of my team involved in the development of project. I am also indebted to my friends whose moral support always inspired me to come out with the best. Last but not the least, my project would not have seen the light of the day without the blessings of my parents which was a constant help in the times of need.

ANIRBAN DUTTA BCA VI Semester I.G.N.O.U New Delhi

Candidate’s Declaration

I, Anirban Dutta declare that the work which is being presented by me in this project entitled “Online Courier & Cargo System” in partial fulfillment of the requirement for the Bachelor Of Computer Application by Indira Gandhi National Open university, Delhi is an authentic record of my own work carried out from November to March 2008 under the supervision of Mr. Sunil Kumar Sharma, Team Leader of Infowave IT Solution.

Anirban Dutta BCA VI Semester

44

I. G.N.O.U. New Delhi

Company Profile

INFOWAVE IT SOLUTION: INFOWAVE IT SOLUTION is a company based in New Delhi. The Company’s motto is to develop software products for “Automating Business Operation” and market the same world wide. It is a software company which focuses on delivering the best and most cost-effective solutions to our clients in areas such as e-shopping, healthcare, and payroll, Income Tax, etc. We provide offshore software development services (“off sourcing”) for companies. Using proven methods of documentation, design, testing, implementation and most importantly, communication, ANNIK is one of the few Indian companies that truly

45

understand the business of providing offshore and remote services. We have offices in the New Delhi and Pune. The Company currently have customers in India, US, Hong Kong and Singapore but is looking to expand in other countries too. Mr. Sandeep, CEO and CTO of the Company believes in “Trust and Quality”. He is Engineer in Electronics and communication from reputed Organization. Prior to starting and company, he was worked with the testing team of leading Software and Telecommunication companies.

WE HAVE BRANCHES AT DELHI: D 18, 2ND FLR, CENTRAL MARKET, OPP. METRO SHOES. LAJPAT NAGAR 2. ND-24 PH: - 011-41722331

K2, 1ST FLR, CENTRAL MARKET, LAJPAT NAGAR 2. ND-24 PH:-011-46573287

MOHALI: S.C. F 26 2ND FLR, PHASE 3B-2. PH: - 0172-3244106, 09356252524

NOIDA:

46

J 41/42, 1ST FLR, SEC-18, NOIDA. NEAR RADISSON HOTEL. PH: - 9911517542

47

Introduction to the Project About project: The project “online courier & cargo System” delivery status and notification system is being developed for the need of company running simultaneously courier & cargo service this is specially meant for their frontline user service information. This is one of the best efforts by us to prove that how Internet can be helpful in tire service industry where inquiries are always in queue. This system however is a snap shot of the whole scenario for the booming service industry. This basically deals with the queries of user for a company simultaneously running its courier & cargo service where the users have booked some cargo or couriers or both for delivery, can view the status online about where they booked courier or cargo. How much more time it will take to reach the place, and whether received it in original state. And many other queries such as the reason of blockage, queries with the user care officers regarding handling etc. There is a user satisfaction guest book where user should put some notes about our services in user complaint register. As the domain in of the system is to a bigger area so the best and convenient way is internet as this is the best way to satisfy the user queries. A website can prove the best interface between the user and the company. With the advent of the Internet technologies wavered. Every year millions more people around are using internet interact in more ways than ever before to date the find old classmates check of medical elements and cures to react and express and interactive view of the news also gives live sales, HELP Online and maximum hit mostly in the service industries. This is an instance to show that how internet can be 48

the best deal with the fast growing network of optical fiber making micro broadband and economical to access the Internet whether in the modern or Information retrieval term. The extract of all these, whether the data access retrieval and our goal is placed in a well ordered by using it’s technologies on net. We will not loose our data whether it is user or service provider. So comp is now helpful in many other cases too:•

Fast retrieval of information around the globe by browsing the net.



Easy access by sitting home to most of the work places.



Easy database access with the invaluable functions of online entertainment and jobs and placements.

Through this portal we have tried to automate the process of an instance of user care industry service a web based support for a cargo and courier to provide automates service regarding their courier (packets and parcels) delivery status.

Modules Description: The project is based on the online courier & cargo delivery status and notification system. There are total 15 modules: 1. Login master 2. Registration master 3. Courier & cargo differentiation master 4. Courier status notification marker 5. The page design maker 6. Delivery status notification system for courier 7. Courier booking detail master 8. 8’ The site master (control panel) 9. User query handler master 10. The validations master 11. The other network courier – handling master 12. Cargo status notification marker 13. Delivery status notification system for cargo 14. Cargo booking detail master

49

15. The other network cargo- handling master

50

Project Objective The objective of the project “Online courier delivery status Information & notification system” is to deal with the queries of manger. •

How much time will it take to reach the place, and whether received in original state.



Queries among the officers regarding handling etc.



User satisfaction guest book where user should put some notes about service and other suggestions.



User complaint registers to help us get a better feedback for our failures as a hospitable interface

.

The major objectives of this project are as follows: 

Providing an interactive interface for the user query for online status of the packets booked. (Current Status) using the net technology under the framework A.S.P.NET with C#. After all interface has a lot to do when proper interaction and attraction is necessary.



Helping the user to search his specific booked packet & parcel as where it is? Which intermediate office, when it will move from here, reasons for delay, when it will reach the destination?



Online updating of packet & parcel status through intermediate and end office regarding truck no., status, reloading of cargo from one truck to another truck etc.



Providing Secured Environment for secured data access whatever necessary.



Retrieval of data from database using easy buttons links and interfaces in a very fast and efficient manner.



On-line updating of all type of data. Updating data using web based interfaces and with the help of buttons & links in an easy & convenient way.

Developing a viable candidate system that fulfills the following requirements

51



Faster and accurate information retrieval.



Easy registration.



Login dependent information updating.



Correct and consistent maintenance of data and its quick retrieval. 

Minimizing the page download time hence less investment.



Improving the switches button and hyperlink so that the candidate could find all the queries they need at the first sight.



Maintaining the fast download of the page by using the flavors of cookies.



Smooth transition and easy access to the pages not requiring much training to the end user.

The overall objective: System to bring the company and its users round the globe more closely to each other so that one should have the perfect services.

52

Project Category The undergoing project falls under internet technologies and RDBMS (Relational Database Management System) category. Since the project is mainly responsible for the creation of the portal with the online database at backend. As we know that, the internet is huge client server architecture. The client is the web browser; it is requesting a web based data, a file, or whatever, from some computer somewhere – anywhere – in the world. The server is a computer that holds the information you want. ASP.NET is the rich programming framework for building web based applications. It offers outstanding support for both developers and administrators providing improved ease-of-used, tools support, reliability scalability, administration and security how it works? ASP.NET is a programming framework build on the common language run time that can be used on the sever to built powerful web applications. ASP.NET offers several important advantages over previous web development modules. We know that database is a respiratory for stored operational data. Database environment and common data are available and used by several users. Instead of each program or user to manage it’s own data. The data across applications are shared by all authorized users with help of database software managing the data as an entity. The general concept behind the database is to handle information as an integrated whole. A database is a collection of inter related data stored with the minimum redundancy to serve many users quickly and effectively. The general objective is to make information easy quick expressive and flexible for the user. In database design specific objectives are considered. •

Ease of learning and use



More information at low cost



Accuracy and integrity



Recovery from failure 53



Performance

In this way SQL Server 2000 is one of the leading RDBMS in the world. It is characterized by the quick retrieval of information from huge tables. The quality allows it to cater to the ever changing business needs of the present age. It supports 4th generation language, SQL there by making it easier for the user to grasp it, a development language where complicated procedures, functions etc can be used.

54

TOOLS / PLATFORM USED For the undergoing project, following tools are used: Platform

Windows

55

Operating System Framework Front-End Tool Scripting Language Interface Server Back-End Tool Technology

Windows XP professional with SP-2 ASP.Net FRAMEWORK 2.0 Visual Studio 2005 C#, HTML HTML, Photoshop, Visual Studio Internet Information Server SQL Server 2000 ASP.NET

HARDWARE: Processor Memory Network Adapter Modem Secondary Storage

Intel Pentium 2.4 GHZ 256 M.B., D.D.R. RAM Ethernet Adapter 56kpbs Voice Fax Data Samsung/Seagate Hard disk (40 G.B)

56

System Analysis System analysis is the first step towards the software building process. The purpose of system analysis is to understand the system requirements, identify the data, functional and behavioral requirements and building the models of the system for better understanding of the system. In the process of system analysis one should first understand that what the present system, what is does, is how it work (i.e. processes). After analyzing these points we become able to identify the problems the present system is racing. Upon evaluating 57

current problems and desired information (input and output to the system). The analyst looks towards one or more solutions. To begin with the data objects, processing, functions and behavior of the system are defined in details. After this, a module forms three different aspects of the system data, function and behavior. The module created during the system analysis process helps in better understanding of data and control flow, functional processing, operational behavioral and information content.

Working Process of the System: The system contains the following main processes: The system contains many simultaneous processes. We have optimized the processes to make the whole system working as a one. This system has developed in a way to provide a single dynamic interface for all the processes. User logins into the user page of the site and can book, search, make queries, submit complaints and suggestions. The status of the particular booking can be searched by entering the Booking No or Concern Lot No in which booking is sent. He can also search for the particular Cargo Carrier may it be container or truck by their corresponding unique numbers which are carrying the particular item with the enquired Booking no. The system needs updating at different stages and from different offices including end offices of the company regarding couriers and cargo so a user dependent candidate validation and information updating system is necessary and is included in the user login area apart from the administration area who have all the right of users including additional rights of creating new entitles or users as per the requirement of the company.

The User Creation and Login: User Login: Each end office is provide with the User Id through which they can upload the information regarding the packet details, cargo details and status as the system is user dependent (only for updating) so proper user Id and password based user system is

58

provided to accomplish the fact whether and however the system is to maintain the user status and specific user enable service for security and privacy reasons. •

Based on the login , User is provided with a control panel



Only administrator has right to create User Id and Password and distribute them to the concern managers.



Administrator can any time change the User Id and Password of the User/Manager for security reasons as the User navigation area of the portal is strictly private for the company.

Office Registration: Office registration is attached with the master mode of the service and can be done by the administrator only. •

Office registration form asks for Name, address and other information the branch office of the company.



Office registration is important, as based on the registered existing office the users and other entities of the companies like Cargo Carrier etc are linked.

Status Enquiry of Cargo and Courier: User uploads the information of each booked courier and cargo before dispatching from his office which generates the unique booking no, by which courier or cargo can be traced by any user over the network through the portal. Couriers are sent in lots and Cargo through containers and containers through truck. The status of the dispatched Courier can be searched by:•

Tuck No



Container No



Lot No



Booking No

Each search will provide the status along with the rest 3 corresponding entities information. This makes the search very convenient for the user. The results of the search are dynamic and changes as per adding lot, loading containers with lots and loading the truck with container or lots and finally unloading the truck.

59

Submitting the Complaints and Suggestions: The user can submit the complaints and suggestions from his login. These suggestions and complaints can be viewed by administrator and thus acted upon.

Software Requirement Specification: The SRS (Software Requirement Specification) is very important art of the software building process, which describes the actual user level requirement from technical point of view i.e. what the user exactly wants? The objective of preparing the SRS is to represent the requirements of the software in such a manner that ultimately leads to successful software implementation. It is the result of the analysis process of the software development. It should contain all the data, the software is going to process, the function it will provide the behavior it will exhibit. SRS is defined in IEEE standard. IEEE recommended practice for SRS.

Feasibility study Feasibility study is the determination whether or not a project is worth doing. The process followed in making this is called feasibility study. When the developer is building any system, he/she should make sure that the system he/she is going to build is feasible. Since the feasibility study may lead to commitment of large resources, it becomes necessary that it should be conducted competently and that no fundamental errors of judgment are made. Preliminary investigation examines project feasibility; the likelihood the system will be useful to the organization. Three important test of feasibility are described below.

60



Technical feasibility



Operational feasibility



Economical feasibility

In feasibility study, we check the durability, reliability, operability, compatibility etc. of the system. A feasibility study is a preliminary study undertaken to determine and document a project's viability. The results of this study are used to make a decision whether to proceed with the project, or table it. If it indeed leads to a project being approved, it will - before the real work of the proposed project starts be used to ascertain the likelihood of the project's success. It is an analysis of possible alternative solutions to a problem and a recommendation on the best alternative. It, for example, can decide whether an order processing be carried out by a new system more efficiently than the previous one.

Economical feasibility study: This involves questions such as whether the firm can afford to build the system, whether its benefits should substantially exceed its costs, and whether the project has higher priority and profits than other projects that might use the same resources. This also includes whether the project is in the condition to fulfill all the eligibility criteria and the responsibility of both sides in case there are two parties involved in performing any project.

In this study, we analysis the cost of different parts related with software. It may be either manpower cost or cost of hardware or software.



Manpower cost:

61

Here the manpower cost is reduced as the work can now be done by lesser number of powers. If work is done by greater number of manpower, the cost will increase, so manpower should be low. In this project there are six peoples. And one is team leader.



Hardware and Software cost:

Hardware and Software cost will be added in the total cost, because whole project is designed and developed at the administrator site.



Justification:

Justification for any capital outlay is that it will increase profit, reduce expenditure, or improve quality of a service which in turn may be expected to provide profits proposed or developing system must be justified by cost and benefit criteria to ensure that effort is concentrated on projects which wil give the best return at the earliest opportunities. The technique of cost benefit analysis is often used as a basis for assessing Economis Feasibility. The factors for evaluation are:



Cost of operation of the existing and proposed system.



Cost of development of the proposed system.



Value of the proposed system.

Economic Feasibility Study plays a very important role in a development of software.

Technical Feasibility study:

62

This involves questions such as whether the technology needed for the system exists, how difficult it will be to build, and whether the firm has enough experience using that technology. The assessment is based on an outline design of system requirements in terms of Input, Output, Fields, Programs, and Procedures. This can be qualified in terms of volumes of data, trends, frequency of updating, etc. In order to give an introduction to the technical system. Technical Feasibility is concerned with the availability and capability of hardware, software and people.In Technical Feasibility Study we studied on those facts that are covering the whole technological facts such as: 

Hardware requirement specification



Software requirement specification



Technology used

What software technology should be opted so as to develop the project efficiently.

Hardware requirement: A computer should be available that is powerful enough to handle the proposed system. DBMS systems usually consume more computer power because of its data structure, security, rule and index pointers to the records. These take more machines processing time. Now almost any system is technically feasible. The minimum requirement for the application to run is given below:  Processor : Pentium IV 2.4 GHZ.  Memory

: 256 MB RAM

 Hard Disk : 10 GB  Keyboard  Monitor

Software requirement: 63

According to convenience of the system, the system developer should decide which computer languages or software he/she is going to use for the proposed project. The developer should keep in mind that the software or languages he/she is going to use should be easily available, efficient, portable and the database languages which he uses, should be preferably Relational Database Language (RDBMS). In case of software the languages used to build the system are very popular languages namely ASP.Net with C#. The minimum requirement for the application to run is given below: 

Front End : ASP.NET C#



Back End : SQL Server 2000



Operating System : WINDOW XP, WINDOW 2000

Since, in the request clarification, it was found that the main need was for better response on the throughput from the system. The assessment of technical feasibility must be based on an out line design of system requirements in terms of inputs, outputs, files, programs, procedures and staff. This evaluation determines whether the technology needed for proposed system is available or not and how it can be integrated with the organization.

Time Schedule: The cumulative distribution of time for the various phases of the lifecycle (inclusive of all the increments) was done by the Project Leader, as depicted in the table below:

Phase

Time

Analysis

5 weeks

64

Design

4 weeks

Coding

8 weeks

Testing

5 weeks

Table: Distribution of Time amongst Lifecycle Phases

Reasons for using these tools: What is ASP.NET ASP.NET is a programming framework built on the common language runtime that can be used on a server to build powerful Web applications. ASP.NET offers several important advantages over previous Web development models: •

Enhanced Performance: ASP.NET is compiled common language runtime code running on the server. Unlike its interpreted predecessors, ASP.NET can take advantage of early binding, just-in-time compilation, native optimization, and caching services right out of the box. This amounts to dramatically better performance before you ever write a line of code.



World-Class Tool Support: The ASP.NET framework is complemented by a rich toolbox and designer in the Visual Studio integrated development environment. WYSIWYG editing, drag-and-drop server controls, and automatic deployment are just a few of the features this powerful tool provides.

65



Power and Flexibility: Because ASP.NET is based on the common language runtime, the power and flexibility of that entire platform is available to Web application developers. The .NET Framework class library, Messaging, and Data Access solutions are all seamlessly accessible from the Web. ASP.NET is also language-independent, so you can choose the language that best applies to your application or partition your application across many languages. Further, common language runtime interoperability guarantees that your existing investment in COM-based development is preserved when migrating to ASP.NET.



Simplicity: ASP.NET makes it easy to perform common tasks, from simple form submission and client authentication to deployment and site configuration. For example, the ASP.NET page framework allows you to build user interfaces that cleanly separate application logic from presentation code and to handle events in a simple, Visual Basic - like forms processing model. Additionally, the common language runtime simplifies development, with managed code services such as automatic reference counting and garbage collection.



Manageability: ASP.NET employs a text-based, hierarchical configuration system, which simplifies applying settings to your server environment and Web applications. Because configuration information is stored as plain text, new settings may be applied without the aid of local administration tools. This "zero local administration" philosophy extends to deploying ASP.NET Framework applications as well. An ASP.NET Framework application is deployed to a server simply by copying the necessary files to the server. No server restart is required, even to deploy or replace running compiled code.



Scalability and Availability: ASP.NET has been designed with scalability in mind, with features specifically tailored to improve performance in clustered and multiprocessor environments. Further, processes are closely monitored and managed by the ASP.NET runtime, so that if one misbehaves (leaks, deadlocks), a new process can be created in its place, which helps keep your application constantly available to handle requests.



Customizability and Extensibility: ASP.NET delivers a well-factored architecture that allows developers to "plug-in" their code at the appropriate

66

level. In fact, it is possible to extend or replace any subcomponent of the ASP.NET runtime with your own custom-written component. Implementing custom authentication or state services has never been easier. •

Security: With built in Windows authentication and per-application configuration, you can be assured that your applications are secure.

What is ASP.NET? ASP 3.0 is the latest version of ASP, but there will never be an ASP 4.0 version. ASP.NET is the next generation ASP, but it's not an upgraded version of ASP. ASP.NET is an entirely new paradigm for server-side ASP scripting. ASP.NET is a part of the .NET Framework. Microsoft spent three years rewriting ASP.NET from the ground up, and ASP.NET is not fully backward compatible with ASP 3.0.

.NET Framework The .NET Framework is the infrastructure for the Microsoft .NET platform. The .NET Framework is an environment for building, deploying, and running Web applications and Web Services. The .NET Framework contains a common language runtime and common class libraries - like ADO.NET, ASP.NET and Windows Forms - to provide advanced standard services that can be integrated into a variety of computer systems. The .NET Framework provides a feature-rich application environment, simplified development and easy integration between a numbers of different development languages. The .NET Framework is language neutral. Currently it supports C++, C#, Visual Basic, and JScript (Microsoft's version of JavaScript).

67

Microsoft's Visual Studio.NET is a common development environment for the .NET Framework.

New in ASP .NET 

Better language support



Programmable controls



Event-driven programming



XML-based components



User authentication, with accounts and roles



Higher scalability



Increased performance - Compiled code



Easier configuration and deployment



Not fully ASP compatible

Microsoft Introduces C# C# is Microsoft's new programming language for the .NET platform. It combines some of the best features of modern programming languages such as Java, C++ or Visual Basic. C# is an object-oriented language with single inheritance but multiple interfaces per class. It supports component-based programming by properties (smart fields), events and delegates (enhanced function pointers). C# is fully interoperable with other .NET languages such as VB.NET, Eiffel.NET or Oberon.NET. C# is designed to be a platform-independent language in the tradition of Java. It's syntax is similar to C and C++ syntax, and C# is designed to be an object-oriented language. There are, for the most part, minor variations in syntax between C++ and C#. Main has no return type, there are no semicolons after class names, there are some (to C++ programmers) strange decisions regarding capitalization - such as the capitalization of Main. Other a few differences, the syntax is often the same. This decision is reasonable, in light of the fact that C syntax has been used with several other languages - notably Java. Similar to Java, C# does not support multiple inheritance; instead it provides Java's solution: interfaces. Interfaces implemented by a class specify certain functions that 68

the class is guaranteed to implement. Interfaces avoid the messy dangers of multiple inheritance while maintaining the ability to let several classes implement the same set of methods. Another helpful feature of C# is garbage collection. Therefore, it is unnecessary to include a destructor for each class unless a class handles unmanaged resources; if so, it's necessary to release control those resources from within the class (The Finalize function is used to clear up these unmanaged resources; it can even be abbreviated with the same syntax as a C++ destructor). Of course, C# also provides direct access to memory through C++ style pointers, but these pointers are not garbage collected until specifically released by the programmer. C#, as part of the .NET framework, is compiled to Microsoft Intermediate Language (MSIL), which is a language similar to Java's byte code. MSIL allows C# to be platform independent and runs using just in time compiling. Therefore programs running under .NET gain speed with repeated use. Furthermore, because the other languages that make up the .NET platform (including VB and COBOL) compile to MSIL, it is possible for classes to be inherited across languages. The MSIL, like byte code, is what allows C# to be platform independent.

C# Advantages: •

XML documentation generated from source code comments. (This is coming in VB.NET with Whidbey (the code name for the next version of Visual Studio and .NET), and there are tools which will do it with existing VB.NET code already.)



Operator overloading - again, coming to VB.NET in Whidbey.



Language support for unsigned types (you can use them from VB.NET, but they aren't in the language itself). Again, support for these is coming to VB.NET in Whidbey.



The using statement, which makes unmanaged resource disposal simple.

69



Explicit interface implementation, where an interface which is already implemented in a base class can be reimplemented separately in a derived class. Arguably this makes the class harder to understand, in the same way that member hiding normally does.



Unsafe code. This allows pointer arithmetic etc, and can improve performance in some situations. However, it is not to be used lightly, as a lot of the normal safety of C# is lost (as the name implies). Note that unsafe code is still managed code, i.e. it is compiled to IL, JITted, and run within the CLR.

Conclusion: C# is a modern, object-oriented language that enables programmers to quickly and easily build solutions for the Microsoft .NET platform. The framework provided allows C# components to become XML Web services that are available across the Internet, from any application running on any platform. The language enhances developer productivity while serving to eliminate programming errors that can lead to increased development costs. C# brings rapid Web development to the C and C++ programmer while maintaining the power and flexibility that those developers call for.

SQL Server 2000

SQL Server 2000 only works on Windows-based platforms, including Windows 9x, Windows NT, Windows 2000 and Windows CE. In the case of SQL Server, authentication is handled by comparing credentials provided by a connecting user with set of entries stored in the sysxlogin table of the SQL server master database (to get familiar with its content, you might want to use sysloging view, presenting data in a more friendly format). The way these credentials

70

are provided depends on the authentication mode, which can be set to one of the following: •

SQL Server authentication: in this case, SQL Server requires that a user specifies a name and password at the time when connection is attempted. The login name and one-way hash of the password need to match one of entries in the sysxlogin table for the login attempt to be successful.



Windows authentication: in this case, SQL Server does not prompt a user for credentials, but instead it uses an access token assigned at the time the user logged on using a Windows account. This can be a token generated by the Windows operating system on which SQL Server was installed (in case of a local user account) or by a Windows NT 4.0 or Active Directory domain, (if a user domain account is used). The token contains a security identifier (SID) which uniquely identifies the user, as well as SIDs of local (or domain) groups that the user is a member of. SQL compares all of the SIDs stored in the token against entries in the sysxlogin table and, depending on the outcome; it grants or denies login privileges. Presence of a matching entry is not sufficient though for logon to be allowed, since with Windows authentication, it is possible to not only grant login privileges to a specific SID but also deny them (denying rights will always take precedence over granting them). This means that you can, for example, grant login privileges to a Windows group, but still deny access to SQL server to some of its members.

SQL Server creates two default logins (entries in the sysxlogin table) at the installation time, granted the highest possible level of administrative privileges. The first one is the SA login, allowing access using SQL Server authentication, the second is the BUILTIN Administrators, representing SID of the local Administrators Windows group on the SQL Server computer and allowing every member of this group to access the server via Windows authentication.

71

72

System Design System design phase starts after the software requirements have been analyzed and specified. System design is the first of the three technical activities: Design, code and test that is required to build and verify the software. A design methodology is a systematic approach to create a design by application of a set techniques and guidelines. Some desirable properties for a software system design are as follows: • Verifiability • Completeness • Consistency • Efficiency • Traceability • Simplicity/Understandability

The system design considerations are: 

The design objective that include practicality, efficiency, security etc.



The constraints, which include the hardware, software, budget, time, scale and the interface with all other systems.



The processing techniques, which include batch processing, real time processing and on-line processing.

There are three methodologies for designing which are as follows: (i) Top – down: 73

The top – down approach starts from the highest-level component of the hierarchy and proceeds through to lower levels. It starts by identifying the major components of the system, decomposing them into lower level components and iterating until desired level of details is achieved. This approach of designing the system might be best if the designer has detail idea about the whole “Courier & Cargo System” project to be developed. In this methodology designer start with a front or top form, often called MAIN PAGE, for the project and work branching off from there. The advantage of the top-down approach is that form can be changed to affect the look and feel of the whole project because all forms are designed according to the top form look and feel.

(ii) Bottom-up:

A bottom-up approach starts from the lowest level of component hierarchy and proceeds through progressively higher levels to top levels components. This design approach starts with designing the most basic or primitive components and proceed to higher-level components that use this lower level components. This approach is adopted when the designer hasn’t a good idea about the layout of final project, but know how specific forms look and work. It might be that working from these specific forms to the top forms is the way to proceed. This is particularly true if there are, already, existing forms as a result of development of some other project made by some one having the same concept. If there are no forms from which the designer has to start, then he can begin by designing leave forms that accomplish specific objectives and then linking them together through intermediate forms to the top forms. The advantage of this design is that the designer is not constrained by the style of top forms in the leaf form.

(iii) Incremental/In times:

74

Similar in

ways

to

both

the

top-down

and

bottom-up

approaches,

the

Incremental/ In time approach develops forms "just in time" when they are needed. It may be the case that an initial top form is needed and specific leaf forms that implement particular objectives. These are created and linked together with understanding that later, intermediate forms may be needed. This works well if the client wants very quickly have a working project that will grow incrementally, rather than being developed all at once. The “Courier & Cargo System” Project has been designed by following the down approach as well as Incremental/In time approach. Design step produces a data design, an architectural design and a procedural design. In the data design phase information domain model created during analysis phase is transformed into the data structure. In the architectural design the relationship among major structural components of the “Courier & Cargo System” Project are defined. In the procedural design major structural components transformed into a procedural description of the software.

DFD Of The Project At zero and one level the border scenario of the whole portal is considered and at second level a instance of this project is shown. Each break-up has been numbered as per the rule of DFD. Here we attempted to incorporate all the details of the system.

0 Level DFD:

75

This is the context level DFD of the proposed system. The whole system has been depicted in the way so that the information flow continuity should not be lost in the next level. The purposed system is shown as a whole process and the inputs and outputs are shown with incoming and outgoing arrow from the system.

1st Level DFD: This DFD shows all the processes together with all the data stores (tables). It shows the true data flow i.e. how data is actually flowing in the system. Data is coming from which table and going into which table is clearly shown by this understanding the whole system. The application developer will fall back upon this DFD during the development phase.

0 Level DFD

76

Web Panel Office Registration

Web panel display

Site Data Upload

Display Success/failure

Registration display

Reg. Data

Staff Login

Status Search Delay

Reg. Information User id & pwd Process status search Calculate distance &time Process query

Customer query

Login Success/failure

Online courier & cargo booking delivery status information & notification system

Display Status Show delay Process Response

Process Complaint

Customer Complaints

Process action

Action display

77

Login Display

Status display Delay

Response display

LEVEL 1 D.F.D The Company Database Data upload Web Panel Updating Update Office Reg.

Check administor

Web panel display Process Office Reg.

Staff Login User id and pwd

Valid id msg.

Status search

Reg. Display

Check Office status

Input Booking Id Process Search id

Delay

Check Candidate

Process user id & pwd

Status Data

Process current office

Route Data

Status

Process Route Distance & Date

Process Distance & time Delay reasons Delay

Customer query

Update reasons

Updating

Data

Update new query Response update

Response Handler Response

Response display

Customer Complaints Updating

Update new query

Query Update Response handler

Response Action Display

78

E-R Diagram

Admin_id Administrator

Creat es

Office

Name

City_id

Container

Addres s

User

Provide s

Container_i d

Office_i d

passwor d

User_id

Password

Book ed Base_c ity_id ty_id

Routes

Distance

Office_ bearer Deliver y_statu s

Container_at

79

Courier

Cargo

Detailes_of _courier

Destination _city_id Detailes_of_carg o

Flow Diagram

Suggestion Loading/unloading container

Courier Booking User

Courier booking lot link

Loading/unloading truck

Admin

Office Reg. Other Network Lot Network Transfer Route Detail

Route Map

City

State

Truck Route

Status Information

Truck Truck Route 2

Country Container Lot

80

Source/Destination

81

Table Structure The normalized form of the table with their structure is describe as under-

Table 1: Login Field Name User_id Office_id Password

Data Type Varchar Integer Varchar

Description Userid(unique) Officeid Password

Key Constraint Primary key Foreign Key -

Table 2: Administration login Field Name User_id Password Password

Data Type Varchar Varchar Varchar

Description Userid(unique) Password Password

Key Constraint Primary key -

Table 3: Office registration Field Name

Data Type

Description

Key Constraint

Office_id Name Address1 Address2 Phone1 Phone2 Cell e-mail Country_id

Integer Varchar Varchar Varchar Varchar Varchar Varchar Varchar Integer

Office id Candidate name Permanent address Temporary address Phone(residence) Phone(office) Mobile e-mail id country to which

Primary key Foreign key

Integer Numeric Date Varchar

belong State Registration date Courier, cargo

Foreign key Foreign key -

State_id City_id Registration date Handles

Table 4: courier booked detail Field Name Booked_by_user_id Booking_no

Data Type Varchar Nvarchar

Description Office Booking no.

Key Constraint Foreign key Primary key

Booked_item Booked_weight Handling_description

Varchar Integer Varchar

unique Item name Weight About handling the

-

Lot_id

Integer

cargo Container id

Foreign key

82

Booking_date Receive_date Receive_at

Date Date Varchar

Receiving date Userid of receiving

Foreign key

Whether

Varchar

office Courier/cargo

-

Table 5: lot status Field Name Office_id Lot_id Lot_status Reason_of_stay

Data Type Integer Numeric Varchar Varchar

Description Booking office id Booking no. unique Office_id of office Through which

Key Constraint Foreign key Primary key -

When_moved

Varchar

passing -

-

Table 6 lot detail Field Name Lot_id Booking_id Office_id Dispatch_date

Data Type Numeric Numeric

Description Container_id Booking id booked

Key Constraint Foreign key Foreign key

Varchar Date

for special lot Office lot **maid Date of dispatch

-

Table 7: Route detail Field Name Base_city_id Destination_city_id Current_delivery_status Average_speed Distance

Data Type Numeric Numeric Integer Integer Numeric

Description Time take Speed Distance in k.m.

Table 8: Route map 83

Key Constraint Foreign key Foreign key -

Field Name Base_city_id Distintion_city_id Original_ via Currently_via Reason_route_change

Data Type Numeric Numeric Integer Integer Varchar

Description City_id City_id Cities Cities reason

Key Constraint Foreign key Foreign key -

Table 9: Loading unloading packet

Field Name Office_id

Data Type Numeric

Description Booking id of lot

Key Constraint Foreign key

Booking_id_unloaded

Numeric

unloaded New lot made with

Foreign key

Lotid_loaded Lotid_unloaded Office_id Reason

Numeric Numeric Numeric Varchar

that booked packet From unloaded Unloading reason

Foreign key Foreign key Foreign key -

Table 10: Login status master Field Name Login_id Login_time Logout_time

Data Type Varchar Date/time Date/time

Description User id Login time Logout time

Key Constraint Foreign key Foreign key Primary key

Table 11: Country services Field Name Country_id country

Data Type Numeric Varchar

Description Country_id Country

Key Constraint Foreign key -

Table 12: State services Field Name State_id Country_id State

Data Type Numeric Numeric Varchar

Description **Country id 84

Key Constraint Foreign key -

Table 13: City services Field Name State_id Country_id City_id city

Data Type Numeric Numeric Integer Varchar

Description Country id -

Key Constraint Foreign key Foreign key Primary key -

Table 14: Lot loading unloading Field Name Lot_id Destroyed_at New_lot_id reason

Data Type Integer Integer Integer Varchar

Description Office Track load -

Key Constraint Foreign key Foreign key -

Table 15: Country Services Field Name Booking_no Customer_name Address Complaint_against Complaint_regarding Complaint_detail Date Action_taken By Against Action_details Date_action

Data Type Nvarchar Varchar Varchar Varchar Varchar Varchar Datetime Varchar Varchar Varchar Varchar Datetime

Description Booking Number Administrator id Office id -

Key Constraint Foreign key Foreign key Foreign key -

Table 16: Suggestion Register Field Name Booking_id Suggestion To_office_id Responce Date_suggest Date_responded

Data Type Integer Varchar Integer Varchar Datetime Datetime

Description Booking id Suggestion Suggestion -

Table 17: Other Network Colaboration

85

Key Constraint Foreign key Foreign key -

Field Name Network_id Company_name Company_office Website Customer_care_no Whether_collaborated Date_collaboration Whether_handles

Data Type Integer Varchar Integer Varchar Datetime Datetime Date Varchar

Description Booking id Suggestion Suggestion Courier/cargo

Key Constraint Foreign key Foreign key -

Table 18: Other Network Courier Transfer Field Name Network_id Office_id Lot_id New_network_lot_id Date_transfer Office_id_received Date_received

Data Type Integer Numeric Numeric Varchar

Description Boking id Suggestion Lot Courier company

Key Constraint Foreign key -

Date Numeric Date

transfer Date booked -

-

Table 19 Truck Details Field Name Office_id Truck_id Truck_no Drivers Truck_status Reason_of_stay When_moved

Data Type Integer Numeric Varchar Varchar Varchar

Description User id of office Office id of office

Key Constraint Foreign key Primary key -

Varchar Datetime

at which staying -

-

Table 20: Container Field Name Container_id Office_bearer Container_at

Data Type Numeric Integer Integer

Description Container id Offince id Office id

Key Constraint Primary key Foreign key Foreign key

Table 21: Truck Container Mapping Field Name Truck_id

Data Type Numeric

86

Description -

Key Constraint Foreign key

Container_id Booking_date Booked_base_office Whether_unload_truck Unloading_date Whether_unloaded_container Cdate

Numeric Date Varchar Char Date Char Date

Office id Yes/No Yes/No Unloaded

Foreign key Foreign key -

container date

Table 22: Loading Unloading Container Field Name Office_id Container_id_unloaded

Data Type Varchar Integer

Description Container id from

Key Constraint Foreign key Foreign key

which cargo Container_id_loaded

unloaded Container id from

Integer

-

which cargo Reason

loaded Unloading reason

Varchar

-

Table 23: Truck Loading Unloading Field Name Truck_id Unloaded_at Loaded_to reason

Data Type Integer Integer Integer varchar

Description Office Truck loaded -

Key Constraint Foreign key Foreign key -

Table 24: Other Network Cargo Transfer Field Name Network_id Office_id Lot_id Net_network_lot_id

Data Type Integer Numeric Numeric Varchar

Description Bookingid Suggestion Lot Courier company

Key Constraint Foreign key -

Date_transfer Office_id_received Date_received

Date Numeric Date

Transferred Date booked -

-

87

Project Modules

88

The proposed website will have its main page and will be mainly divided into partially dependent and partially independent modules as1. Login master 2. Registration master 3. Courier & cargo differentiation master 4. Courier status notification master 5. The page design maker 6. Delivery status notification system for courier 7. Courier booking detail master 8. The site master (control panel) 9. Customer query handler master 10. The validations master 11. The other network courier – handling master 12. Cargo status notification marker 13. Delivery status notification system for cargo 14. Cargo booking detail master 15. The other network cargo- handling master These modules with their sub modules are describe below-

1. LOGIN MASTER: Login master is the specific module, which only has to deal with the updating of the database. Two types of user can login administrator and the employee. It checks for a valid candidate when the user enters his user id password and link to the correct page and link to the registration page. It is divided into following functions.

(a) USER ID CHECKER: As user id rules the system for updating (control panel). So his uniqueness and type of his user id know a person whether he is master or one of the employee. As it is to provide the viable candidate system, so the user id is being validated with password in different cases to validate the genuinely of the candidate.

89

(b) THE LOGIN STATUS MASTER: This module keeps the status of who and when logged in and for which purpose and for how much time.

2. REGISTRATION MASTER: As this module is only accessible through administrator password. So this has not much to do directly. This modules deal with the different state of registration asa.

Registration form display

b.

Client’s does validation being handles by validation master

c.

Unique user id checker (checks that the user id being entered by the candidate is unique or no)

d.

Auto user id generator (user id field by taking the email id of the user if it is unique or suggest by combining it will some number).

3. COURIER AND CARGO DIFFERENTIATION MASTER: This module checks the booking id as of courier and cargo, and act according with that. This module differentiates the data as well as process the credential regarding to that, this module handles to and from data from the intermediate process.

4. COURIER STATUS NOTIFICATION MASTER: This module handles the query of customer and displays the result according to that customer is asked to enter the booked id in the specified input area. On the basis of input the detail regarding where material exactly is shown. This module contains the following sub modules(a) QUERY HANDLER: 90

This module handles to and from the courier and cargo differentiation master searches the data in the database, which through different conversion through numbers of tables shows the result regarding where exactly the cargo is? The booking id is first searched into the courier booked table. Each booking id has a unique number associated with the different offices and also with the courier. On the basis of that booking id, matched with the lot id, and then with the medium and after that medium halted at which station. These statuses are shown.

5. THE PAGE DESIGN MASTER: This module is specially meant for auto style sheet generator by using XML. The document object modeling basically deals with the development of a common model for display to have a better interface and look. DTD (the document type declaration) helps the generated page to be validated with tile DTD object and file inserted into, so that tile generated should follow the rules and regulation defined in the document type declaration. Simply one is validating the page so that strict entry should be made to avoid any failure and redundancy in the database. The style sheet generation through XSL has lot to do and much work is their when you defined and generalize an instances of the tag defined to display in a common attractive and impulsive format. Here in some pages CSS is being used and for some common XSL will be used for the generation of fully formatted and fully validated web pages.

6. DELIVERY STATUS NOTIFICATION SYSTEM FOR COURIER: This module deals with the delivery status whether the following courier has been delivered to the destination or not, how much time it will take to reach the destination. It has following sub modules-

(a)

DISTANCE CALCULATOR:

91

It takes the data from the route table that specifies distance between the current city (the city through which tile courier is passing and the destination).

(b)

TIME CALCULATOR:

An average time is calculated on the basis of the average time taken to reach the two adjoining city subsequently to the destination.

(c)

DELEVERED STATUS: It checks the current status if the current status of the courier gives the destination address and after taking the received detail. It display whether the courier is on its way or delivered successfully.

7. THE SITE MASTER: The site maintenance master is the main and the biggest module handling the updating of all type of information regarding the courier & cargo system. It can only be accessed through user id and password, as it deals with the work related the date necessary to keep the site working. A menu is displayed asking for to update the instance of the site a user wants, as the size of the module directly depend upon the table design and updating. A special control panel is design to use for uploading of data in different table. This is done through a site master account and the employee account. It includes the following sub modules-

(a) COUNTRY SERVICE ENTRY: i) country in which true courier & cargo service is available(only administrator) ii)

Other network collaboration for cargo

iii)

Other network collaboration for courier

iv)

Other network services country

(b)

STATE ENTRY:

The state in which the courier service is available (only administrator)

(c) CITY ENTRY: The city in which the service is available (only administrator). 92

(d)OFFICE ENTRY: Offices, their address and other credentials (only administrator).

(e) ROUTE MASTER: Distance and time taken between each city, shortest route between two destinations (only administrator) and other entries to keep the site working.

8. BOOKING DETAILS FOR COURIER : Courier booked, source office, destination office, lot, container, truck details, date dispatched etc regarding booking of new courier with a unique id. It includes the following sub modules-

(a)

COURIER STATUS : This specially deals with the updating at intermediate office about the truck number that passed through office.

(b)LOADING UNLOADING DETAILE : This deals with the loading and unloading courier from one truck to another truck or one container to another container and other entries to keep the site working.

9. BOOKING DETAILS FOR CARGO : Cargo booked, source office, destination office, container, truck detail, date dispatched etc regarding booking of new courier with a unique id. It includes the following sub modules-

(a) CARGO STATUS : This specially deals with the updating at intermediate office about the truck number that passed through office.

93

(b)

LOADING UNLOADING DETAILE : This deals with the loading and unloading cargo from one truck to another truck or one container to another container and other entries to keep the site working.

10.CUSTOMER QUERY HANDLER MASTER : This module specially deals with the handling of query of the customer. This module has following sub modules –

(a)

CUSTOMER QUERY HANDLING : This module generates a input form through which customer can directly interact with tile intermediate office where there courier & cargo is! Through different function and tables.

(b)

CUSTOMER COMPLAINT REGISTER : Customer can directly enter the complaint regarding end office, and the response is sending through the head office. This complaint is only viewable through administrator account.

11.THE VALIDATION MASTER : This basically deals with the validation of different entries done during form building process. This module specially uses the client side validation scripting from java script and server side scripting from vb.net to make the system robust reliable and error free. This module as specially integrated with the different page and forms checks all the discrepancies such as incorrect email, date of birth, address, etc to finally deal with the any wrong entries being done by the user . it validates as well Is suggests for correct input. This module has the different sub modules depending upon the above modules find forms. i. CARGO UPDATE VALIDATION MASTER : Deal with the validation regarding the updating of product.

94

ii. REGISTRATION VALIDATION MASTER : Deals with the discrepancies in registration process etc. iii. COURIER UPDATE VALIDATION MASTER : Deals with the validation regarding the updating of courier and its status.

12.THE OTHER NETWORK COURIER HANDLING MASTER : This module deals specifically with the handling of packet to other network for future delivery and their status mapping with their server to our server. This part of module simply tries to correct to their server automatically to retrieve the details with the no being mapped with the original booking id, this helps the customer to remember only one booking id but track the status of the courier while it travels through other network to.

13.CARGO STATUS NOTIFICATION MARKER : This modules handles the query of customer and display the result according to that customer is asked to enter the booked id in the specified input area. On the basis of input the detail regarding where there material exactly is shown. This modules contains the following sub modules-

(a)QUERY HANDLER : This modules handles the query of the customer searches the data in the database, through number of tables shows the result regarding where exactly the cargo is? The booking id is first searched in to the cargo booked table. Each booking id has unique number associated with the different offices and also with the cargo. On the basis that booking id, matched with the

95

container, and then with the truck, and after that true halted at which station. The status is shown.

14.DELIVERY STATUS NOTIFICATION SYSTEM FOR CARGO: This system deals with the delivery status whether the following cargo has been delivered to the destination or not or how much time it will take to reach the destination. It has following sub modules-

(a) DISTANCE CALCULATOR: It takes the data from the route table that specifies distance between the places then calculates the distance between the current cargo (the city through which the cargo is passing and the destination).

(b)TIME CALCULATOR: An average time is calculated on the basis of the average time taken to reach the two adjoining city subsequently to the destination average truck halt time and a time in day returned.

(c) DELEVERED STATUS: It checks the current status if the current status of the cargo gives the destination address and after taking the received detail. it display whether the cargo is delivered successfully or not?.

15.THE OTHER NETWORK CARGO HANDLING MASTER : This modules deal specifically with the handling of cargo or container to other network for future delivery and their status mapping with their server to our server. This part of module simply tries to connect to their server automatically to retrieve the details with the number being mapped with the original booking id. This helps the customer to remember only one booking id, but track the status of the courier while it travels through other network to.

96

My Module Administrator Module: •

Administrator Login Form



Administrator Page after login



Create new office



Create container.



Create truck



Create network



Create route form



Create route map form



Create city form



Search booking status form

97

User Module: •

User login form



User page after login



Booking form

Finally unloading the truck and the container to concern destination office and make it free to reuse for another dispatch.

98

Home Page

99

Administrator Login Form

100

Administrator Page After Login

101

Create New Office

102

Create Container

103

Create Truck

104

Create Network

105

Create Route Form

106

Create Route Map Form

107

Create City Form

108

Search Booking Status Form

109

User Login Form

110

User Page After Login

111

Booking Form

112

113

ADMINISTRATOR LOGIN FORM CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class AdminForm : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; protected void Page_Load(object sender, EventArgs e) {

114

lblMessage.Text = "";

}

protected void btnLogin_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("select * from AdminLogin", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { if (txtAdminId.Text == dr[1].ToString() && txtPassword1.Value == dr[2].ToString() && txtPassword2.Value == dr[3].ToString()) { Response.Redirect("AdminArea.aspx"); } else {

lblMessage.Text = "You are Not a authorized

user";

} } } catch (Exception ex) { lblMessage.Text = ex.Message; } finally { con.Close(); }

} protected void btnLogOut_Click(object sender, EventArgs e) { Response.Redirect("Index.htm"); } }

CREATE NEW OFFICE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class OfficeRegistration : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { }

115

public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; protected void btnNext_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); con.Open(); try { SqlCommand cmd = new SqlCommand("insert into OfficeRegistration(Name,Address1,Address2,Phone1,Phone2,Cell,EMail,Co untryId,StateId,CityId,RegDateDay,RegDateMonth,RegDateYear,Handles)va lues(@Name,@Address1,@Address2,@Phone1,@Phone2,@Cell,@EMail,@CountryI d,@StateId,@CityId,@RegDateDay,@RegDateMonth,@RegDateYear,@Handles)", con); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50 )); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50));

SqlParameter("@Name", SqlParameter("@Address1", SqlParameter("@Address2", SqlParameter("@Phone1", SqlParameter("@Phone2", SqlParameter("@Cell", SqlParameter("@EMail", SqlParameter("@CountryId", SqlParameter("@StateId", SqlParameter("@CityId", SqlParameter("@RegDateDay", SqlParameter("@RegDateMonth", SqlParameter("@RegDateYear", SqlParameter("@Handles",

cmd.Parameters["@Name"].Value = txtname.Text; cmd.Parameters["@Address1"].Value = txtaddress1.Text; cmd.Parameters["@Address2"].Value = txtaddress2.Text; cmd.Parameters["@Phone1"].Value = txtphone1.Text; cmd.Parameters["@Phone2"].Value = txtphone2.Text; cmd.Parameters["@Cell"].Value = txtcell.Text; cmd.Parameters["@EMail"].Value = txtemail.Text; cmd.Parameters["@CountryId"].Value = txtcountry.Text; cmd.Parameters["@StateId"].Value = txtstate.Text; cmd.Parameters["@CityId"].Value = txtcity.Text; cmd.Parameters["@RegDateDay"].Value = cboregDate.SelectedItem.Text.ToString(); cmd.Parameters["@RegDateMonth"].Value = cboregMonth.SelectedItem.Text.ToString();

116

cmd.Parameters["@RegDateYear"].Value = cboregYear.SelectedItem.Text.ToString(); cmd.Parameters["@Handles"].Value = txthandlers.Text; cmd.ExecuteNonQuery();

} catch (Exception ex) { Response.Write(ex.Message); } finally { con.Close(); } Response.Redirect("AdminLogin.htm");

} protected void Button1_Click(object sender, EventArgs e) { Response.Redirect("Index.htm"); } protected void Button1_Click1(object sender, EventArgs e) { } }

CREATE CONTAINER CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class Container : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; public DataSet ds = new DataSet(); public DataSet dsContainer = new DataSet(); public long ID = 1; public int checkflag = 0;

protected void btnSave_Click(object sender, EventArgs e) {

117

lblMessage.Text = cboOfOffice.Text;

SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("insert into Container(OfOfficeId,ContainerNo,Description)values(@OfOfficeId,@Cont ainerNo,@Description)", con); cmd.Parameters.Add(new SqlParameter("@OfOfficeId", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@ContainerNo", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Description", SqlDbType.NVarChar, 50)); cmd.Parameters["@OfOfficeId"].Value =int.Parse( cboOfOffice.SelectedValue); cmd.Parameters["@ContainerNo"].Value = txtContainerNo.Text; cmd.Parameters["@Description"].Value = txtCDescription.Text; con.Open(); cmd.ExecuteNonQuery(); lblMessage.Text = "Saved"; Response.Redirect("Container.aspx"); txtCDescription.Text = ""; txtContainerNo.Text = ""; } catch (Exception ex) { if (ex.Message == "Violation of PRIMARY KEY constraint 'PK_Container'. Cannot insert duplicate key in object 'Container'. The statement has been terminated") { lblMessage.Text = "You can add duplicate value of Container No"; } else { lblMessage.Text = ex.Message; } } finally { con.Close(); }

} public void fill() { cboOfOffice.Items.Clear(); SqlConnection con = new SqlConnection(str); try {

118

SqlDataAdapter da = new SqlDataAdapter("Select * from OfficeRegistration", con); da.Fill(ds, "OfficeRegistration"); foreach (DataRow dr in ds.Tables["OfficeRegistration"].Rows) { cboOfOffice.Items.Add(dr[1].ToString()); } } catch (Exception ex) { Response.Write(ex.Message); } }

}

CREATE TRUCK CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class Truck : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; protected void Page_Load(object sender, EventArgs e) { } protected void btnSave_Click(object sender, EventArgs e) { string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; SqlConnection con = new SqlConnection(str); con.Open(); try { SqlCommand cmd = new SqlCommand("insert into Truck(OfOfficeId,description,TruckNo,Driver,AtOfficeId,Reason_Of_Stay ,Moved_Date,Moved_Month,Moved_Year)values(@OfOfficeId,@Description,@T

119

ruckNo,@Driver,@AtOfficeId,@Reason_Of_Stay,@Moved_Date,@Moved_Month,@ Moved_Year)", con); cmd.Parameters.Add(new SqlDbType.BigInt,8)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.BigInt,8)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar,50)); cmd.Parameters.Add(new SqlDbType.VarChar,50)); cmd.Parameters.Add(new SqlDbType.VarChar,50));

SqlParameter("@OfOfficeId", SqlParameter("@Description", SqlParameter("@TruckNo", SqlParameter("@Driver", SqlParameter("@AtOfficeId", SqlParameter("@Reason_Of_Stay", SqlParameter("@Moved_Date", SqlParameter("@Moved_Month", SqlParameter("@Moved_Year",

cmd.Parameters["@OfOfficeId"].Value = int.Parse(cboOfOffice.SelectedValue); cmd.Parameters["@Description"].Value = txtDescription.Text.ToString(); cmd.Parameters["@TruckNo"].Value = txtTruckNo.Text.ToString(); cmd.Parameters["@Driver"].Value = txtdrivername.Text.ToString(); cmd.Parameters["@AtOfficeId"].Value =int.Parse(cboOfficeAt.SelectedValue); cmd.Parameters["@Reason_Of_Stay"].Value = txtReasonOfStay.Text.ToString(); cmd.Parameters["@Moved_Date"].Value = cboMoveDate.SelectedItem.Text; cmd.Parameters["@Moved_Month"].Value = cboMoveMonth.SelectedItem.Text; cmd.Parameters["@Moved_Year"].Value = cboMoveYear.SelectedItem.Text; cmd.ExecuteNonQuery(); lblMessage.Text = "Saved"; Response.Redirect("http://localhost:1088/CargoSevice/Truck.aspx"); } catch (Exception ex) { if (ex.Message == "Violation of PRIMARY KEY constraint 'PK_Container'. Cannot insert duplicate key in object 'Truck No'. The statement has been terminated") { } else { Response.Write( ex.Message); } } finally {

120

con.Close(); } } protected void btnUpdate_Click(object sender, EventArgs e) { string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; SqlConnection con = new SqlConnection(str); con.Open(); SqlCommand cmd = new SqlCommand("update Truck set description =@description,TruckNo=@TruckNo,Driver=@Driver,AtOfficeId=@AtOfficeId, Reason_Of_Stay=@Reason_Of_Stay,Moved_Date=@Moved_Date,Moved_Month=@Mo ved_Month,Moved_Year=@Moved_Year where TruckNo=@TruckNo)", con); cmd.Parameters.Add(new SqlDbType.BigInt, 8)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.BigInt, 8)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50)); cmd.Parameters.Add(new SqlDbType.VarChar, 50));

SqlParameter("@OfOfficeId", SqlParameter("@Description", SqlParameter("@TruckNo", SqlParameter("@Driver", SqlParameter("@AtOfficeId", SqlParameter("@Reason_Of_Stay", SqlParameter("@Moved_Date", SqlParameter("@Moved_Month", SqlParameter("@Moved_Year",

cmd.Parameters["@OfOfficeId"].Value = int.Parse(cboOfOffice.SelectedValue); cmd.Parameters["@Description"].Value = txtDescription.Text.ToString(); cmd.Parameters["@TruckNo"].Value = txtTruckNo.Text.ToString(); cmd.Parameters["@Driver"].Value = txtdrivername.Text.ToString(); cmd.Parameters["@AtOfficeId"].Value = DBNull.Value ; cmd.Parameters["@Reason_Of_Stay"].Value = txtReasonOfStay.Text.ToString(); cmd.Parameters["@Moved_Date"].Value = cboMoveDate.SelectedItem.Text; cmd.Parameters["@Moved_Month"].Value = cboMoveMonth.SelectedItem.Text; cmd.Parameters["@Moved_Year"].Value = cboMoveYear.SelectedItem.Text; cmd.ExecuteNonQuery(); lblMessage.Text = "Saved"; Response.Redirect("http://localhost:1088/CargoSevice/Truck.aspx"); }

121

Response.Write(ex.Message); }

con.Close();

}

CREATE NETWORK CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class Network : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI";

protected void btnAdd_Click1(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("insert into Network(CompanyName,CompanyOffice,Website,CostumerCareNo,WhetherColla borated,ExpDate,ExpMonth,ExpYear,Whether_handles)values(@CompanyName, @CompanyOffice,@Website,@CostumerCareNo,@WhetherCollaborated,@ExpDate ,@ExpMonth,@ExpYear,@Whether_handles)", con); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlDbType.NVarChar, 50));

SqlParameter("@CompanyName", SqlParameter("@CompanyOffice", SqlParameter("@Website", SqlParameter("@CostumerCareNo", SqlParameter("@WhetherCollaborated", SqlParameter("@ExpDate", SqlParameter("@ExpMonth", SqlParameter("@ExpYear", SqlParameter("@Whether_handles",

122

cmd.Parameters["@CompanyName"].Value = txtCompanyName.Text; cmd.Parameters["@CompanyOffice"].Value = txtCompanyOffice.Text; cmd.Parameters["@Website"].Value = txtWebSite.Text; cmd.Parameters["@CostumerCareNo"].Value = txtCNumber.Text; if (rblCollabated.Items[0].Selected == true) { cmd.Parameters["@WhetherCollaborated"].Value = "Yes"; } else { cmd.Parameters["@WhetherCollaborated"].Value = "No"; } cmd.Parameters["@ExpDate"].Value = cboDateExp.Text; cmd.Parameters["@ExpMonth"].Value = cboExpMonth.Text; cmd.Parameters["@ExpYear"].Value = cboExpYear.Text; cmd.Parameters["@Whether_handles"].Value = cboHandles.Text; txtCompanyName.Text = ""; txtCompanyOffice.Text = ""; txtWebSite.Text = ""; txtCNumber.Text = ""; con.Open(); cmd.ExecuteNonQuery(); lblMessage.Text = "Saved"; } catch (Exception ex) { if (ex.Message == "Violation of PRIMARY KEY constraint 'PK_Container'. Cannot insert duplicate key in object 'Container'. The statement has been terminated") { lblMessage.Text = "You can add duplicate value of Country"; } else { lblMessage.Text = ex.Message; } } finally { con.Close(); } } }

123

CREATE ROUTE FORM CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class RouteDetail : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; protected void Page_Load(object sender, EventArgs e) { } protected void btnModify_Click(object sender, EventArgs e) { } protected void btnSave_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); con.Open(); try { SqlCommand cmd = new SqlCommand("insert into Route_Details(RouteNo,BaseCity_Id,DestinationCity_Id,Origin,Destinati on,AverageSpeed,Distance)values(@RouteNo,@BaseCity_Id,@DestinationCit y_Id,@Origin,@Destination,@AverageSpeed,@Distance)", con); cmd.Parameters.Add(new SqlParameter("@RouteNo", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@BaseCity_Id", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@DestinationCity_Id", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@Origin", SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlParameter("@Destination", SqlDbType.NVarChar,50)); cmd.Parameters.Add(new SqlParameter("@AverageSpeed", SqlDbType.Decimal)); cmd.Parameters.Add(new SqlParameter("@Distance", SqlDbType.Decimal)); cmd.Parameters["@RouteNo"].Value = int.Parse(txtRouteno.Text); cmd.Parameters["@BaseCity_Id"].Value = int.Parse(cboOrigin.SelectedValue); cmd.Parameters["@DestinationCity_Id"].Value = int.Parse(cboDestination.SelectedValue);

124

cmd.Parameters["@Origin"].Value = cboOrigin.SelectedItem.Text; cmd.Parameters["@Destination"].Value = cboDestination.SelectedItem.Text; cmd.Parameters["@AverageSpeed"].Value = decimal.Parse( txtAverageSpeed.Text); cmd.Parameters["@Distance"].Value = decimal.Parse(txtDistance.Text); cmd.ExecuteNonQuery(); lblMessage.Text = "Saved"; Response.Redirect("RouteDetail.aspx"); } catch (Exception ex) {

}

Response.Write(ex.Message);

finally { con.Close(); } } protected void btnSearch_Click(object sender, EventArgs e) { }

}

CREATE ROUTE MAP FORM CODE using System;

125

using using using using using using

System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class RouteMap : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; protected void Page_Load(object sender, EventArgs e) { } protected void btnGo_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); try { btnAdd.Visible = true; SqlCommand cmd = new SqlCommand("select Origin,Destination from Route_Details where Id='" + cboRouteNo.SelectedValue + "' ", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { lblOrigin.Text = dr[0].ToString(); lblDestinaion.Text = dr[1].ToString(); } } catch (Exception ex) { Response.Write(ex.Message ); } finally { con.Close(); } } protected void btnAdd_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("insert into Route_Map(RouteMapNo,Origin,Destination,OriginalyVia,CurrentlyVia,Rea son_RouteChange,RouteDetailId)values(@RouteMapNo,@Origin,@Destination ,@OriginalyVia,@CurrentlyVia,@Reason_RouteChange,@RouteDetailId)", con); cmd.Parameters.Add(new SqlParameter("@RouteMapNo", SqlDbType.NVarChar, 50));

126

cmd.Parameters.Add(new SqlParameter("@Origin", SqlDbType.NVarChar , 50)); cmd.Parameters.Add(new SqlParameter("@Destination", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@OriginalyVia", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@CurrentlyVia", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Reason_RouteChange", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@RouteDetailId", SqlDbType.BigInt,8)); cmd.Parameters["@RouteMapNo"].Value = txtRouteMapNo.Text; cmd.Parameters["@Origin"].Value = lblOrigin.Text; cmd.Parameters["@Destination"].Value = lblDestinaion.Text; cmd.Parameters["@OriginalyVia"].Value = txtOriginallyVia.Text; cmd.Parameters["@CurrentlyVia"].Value = txtCurrentlyVia.Text; cmd.Parameters["@Reason_RouteChange"].Value = txtReasonChange.Text; cmd.Parameters["@RouteDetailId"].Value = int.Parse(cboRouteNo.Text); con.Open(); cmd.ExecuteNonQuery(); lblMessage.Text = "Saved"; Response.Redirect("RouteMap.aspx"); txtRouteMapNo.Text = ""; lblOrigin.Text = ""; lblDestinaion.Text = ""; txtOriginallyVia.Text = ""; txtCurrentlyVia.Text = ""; txtReasonChange.Text = "";

} catch (Exception ex) { if (ex.Message == "Violation of PRIMARY KEY constraint 'PK_Container'. Cannot insert duplicate key in object 'Container'. The statement has been terminated") { lblMessage.Text = "You can add duplicate value of Country"; } else { lblMessage.Text = ex.Message; } } finally { con.Close(); }

127

btnAdd.Visible = false; lblDestinaion.Text = " "; lblOrigin.Text = " "; } protected void btnSearch_Click(object sender, EventArgs e) { } }

CREATE CITY FORM CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class City :System.Web.UI.Page {

128

public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; public DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { }

protected void btnAddCity_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("insert into City(City,StateId,CountryId)values(@City,@StateId,@CountryId)", con); cmd.Parameters.Add(new SqlParameter("@City", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@StateId", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@CountryId", SqlDbType.BigInt)); cmd.Parameters["@City"].Value = txtCity.Text; cmd.Parameters["@StateId"].Value = int.Parse(cboState.SelectedValue); cmd.Parameters["@CountryId"].Value = int.Parse(cboCountry.SelectedValue); con.Open(); cmd.ExecuteNonQuery(); txtCity.Text = ""; txtCity.Focus(); } catch (Exception ex) { if (ex.Message == "Violation of PRIMARY KEY constraint 'PK_Container'. Cannot insert duplicate key in object 'Container'. The statement has been terminated") { } else { } } finally { con.Close(); } } }

129

SEARCH BOOKING STATUS FORM CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class ASearchByBookingNo : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; public string LotId; protected void Page_Load(object sender, EventArgs e) { } protected void btnSearch_Click(object sender, EventArgs e)

130

{

SqlConnection con = new SqlConnection(str); try {

SqlCommand cmd = new SqlCommand("select LotId from BookingLotLink where BookingId = '" + cboBookingNo.SelectedValue + "'", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { LotId = dr[0].ToString(); } cmd.ExecuteNonQuery(); dr.Close();

} catch (Exception ex) { } finally { con.Close(); } try {

SqlCommand cmd = new SqlCommand("select Origin,Destination,CurrentlyVia,RouteMapNo,Name,TruckNo,LotNo from TruckRouteView where status = 0 and LotId = '" + LotId + "'", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { lblOrigin.Text = dr[0].ToString(); lblDestination.Text = dr[1].ToString(); lblCurrentlyVia.Text = dr[2].ToString(); lblRouteMap.Text = dr[3].ToString(); lblOffice.Text = dr[4].ToString(); lblStatus.Text = "Lot is not Delivered"; lblTruckNo.Text = dr[5].ToString(); lblContainterNo.Text = "--"; lblLotNo.Text = dr[6].ToString(); }

131

cmd.ExecuteNonQuery(); dr.Close();

} catch (Exception ex) { } finally { con.Close(); }

try { SqlCommand cmd = new SqlCommand("select Origin,Destination,CurrentlyVia,RouteMapNo,Name,ContainerNo,TruckNo,L otNo from TruckContainerRouteView where status = 0 and LotId = '" + LotId + "'", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { lblOrigin.Text = dr[0].ToString(); lblDestination.Text = dr[1].ToString(); lblCurrentlyVia.Text = dr[2].ToString(); lblRouteMap.Text = dr[3].ToString(); lblOffice.Text = dr[4].ToString(); lblStatus.Text = "Lot is Not Delivered"; lblContainterNo.Text = dr[5].ToString(); lblTruckNo.Text = dr[6].ToString(); lblLotNo.Text = dr[7].ToString(); } cmd.ExecuteNonQuery(); dr.Close();

} catch (Exception ex) { }

132

finally { con.Close(); } }

}

USER LOGIN FORM CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page { public string str = "Server = (local);Database = couriercargo;Integrated Security = SSPI"; public string User1 = "Vishal"; protected void Page_Load(object sender, EventArgs e) {

lblMessage.Text = ""; } protected void Button1_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("select * from UserLogin", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); int flag = 0; while (dr.Read()) {

133

if (txtuserid.Text == dr[1].ToString() && txtpassword.Value == dr[2].ToString() ) { Session.Timeout = 30; Session["Login"] = txtuserid.Text ; flag = 1; Response.Redirect("ClientArea.aspx"); } if (flag == 0) { lblMessage.Text = "You are Not a authorized user";

} } } catch (Exception ex) { lblMessage.Text = ex.Message; } finally { con.Close(); }

} protected void Button2_Click(object sender, EventArgs e) { } }

134

BOOKING FORM CODE using using using using using using using

System; System.Data; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Data.SqlClient;

public partial class FrmBooking : System.Web.UI.Page { public string str = "Server = (local);Database = CourierService;Integrated Security = SSPI"; protected void cboExpMonth_SelectedIndexChanged(object sender, EventArgs e) { } public void Submit() { SqlConnection con = new SqlConnection(str); try { SqlCommand cmd = new SqlCommand("insert into Booking ( Booked_by_UserId,Booked_Item,Booked_Weight,OfficeId_Recv,OfficeId_S end,ExpReceiveDate,ExpReceiveMonth,ExpReceiveYear,ActualReceiveDate,A ctualReceiveMonth,ActualReceiveYear,Origin_CityId,Destination_CityId, Whether)values(@Booked_by_UserId,@Booked_Item,@Booked_Weight,@OfficeI d_Recv,@OfficeId_Send,@ExpReceiveDate,@ExpReceiveMonth,@ExpReceiveYea r,@ActualReceiveDate,@ActualReceiveMonth,@ActualReceiveYear,@Origin_C ityId,@Destination_CityId,@Whether)", con); cmd.Parameters.Add(new SqlParameter("@Booked_by_UserId", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Booked_Item", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Booked_Weight", SqlDbType.NVarChar, 50));

135

cmd.Parameters.Add(new SqlParameter("@OfficeId_Recv", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@OfficeId_Send", SqlDbType.BigInt)); cmd.Parameters.Add(new SqlParameter("@ExpReceiveDate", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@ExpReceiveMonth", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@ExpReceiveYear", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@ActualReceiveDate", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@ActualReceiveMonth", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@ActualReceiveYear", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Origin_CityId", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Destination_CityId", SqlDbType.NVarChar, 50)); cmd.Parameters.Add(new SqlParameter("@Whether", SqlDbType.NVarChar, 50)); cmd.Parameters["@Booked_by_UserId"].Value = txtUserId.Text; cmd.Parameters["@Booked_Item"].Value = txtItem.Text; cmd.Parameters["@Booked_Weight"].Value = txtWeigth.Text; cmd.Parameters["@OfficeId_Recv"].Value = int.Parse(cboOfficeR.SelectedValue); cmd.Parameters["@OfficeId_Send"].Value = int.Parse(cboOfficeS.SelectedValue); cmd.Parameters["@ExpReceiveDate"].Value = cboDateExp.Text; cmd.Parameters["@ExpReceiveMonth"].Value = cboExpMonth.Text; cmd.Parameters["@ExpReceiveYear"].Value = cboExpYear.Text; cmd.Parameters["@ActualReceiveDate"].Value = cboRecvDate.Text; cmd.Parameters["@ActualReceiveMonth"].Value = cboRevMonth.Text; cmd.Parameters["@ActualReceiveYear"].Value = cboRecvYear.Text; cmd.Parameters["@Origin_CityId"].Value = int.Parse(cboOrigin.SelectedValue); cmd.Parameters["@Destination_CityId"].Value = int.Parse(cboDestination.SelectedValue); cmd.Parameters["@Whether"].Value = cboWhether.SelectedItem.Text;

con.Open();

136

cmd.ExecuteNonQuery(); Label1.Text = "Booked Thankyou !"; } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { con.Close(); }

try { SqlCommand cmd1 = new SqlCommand("select max([ID]) from Booking", con); con.Open(); object BookingId = cmd1.ExecuteScalar(); Label1.Text = " This Item is Booked ! Booking No is BookingId.ToString();

" +

} catch (Exception ex) { Label1.Text = ex.Message; } finally { con.Close(); } } protected void btnUpdate_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(str); int flag = 0; try {

from

SqlCommand cmd = new SqlCommand("select UserId,OfOffice ManagerDetail where UserID = '" + txtUserId.Text + "'", con); con.Open(); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { //OfficeId = dr[1].ToString(); flag = 1; } else

137

{

flag = 0;

} } catch (Exception ex) { Label1.Text

= ex.Message;

} finally { con.Close(); } if (flag == 0) { Label1.Text = "This User Id does'nt exit.Please enter the valid UserId"; } else { Submit(); } } protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) { } protected void Page_Load(object sender, EventArgs e) { } }

138

Testing 139

Testing Methodology: Software testing is critical element of software quality assurance and represents the ultimate review of specification, design and coding. It is used to detect errors. Testing is a dynamic method for verification and validation, where the system to be tested is executed and the behavior of the system is observed.

Testing Objectives: 1.

Testing is a process of executing a program with the intent of finding an error.

2.

A good test case is one that has a high probability of finding an as-yetundiscovered error.

3.

A successful test is one that uncovers an as-yet-undiscovered error.

4.

The above objectives imply a dramatic change in viewpoint. They move counter to the commonly held view that a successful test is one in which no errors are found. Our objective is to design tests that systematically uncover different classes of errors and do so with a minimum amount of time and effort.

If testing is conducted successfully (according to the objectives stated above), it will uncover errors in the software. Testing cannot show the absence of defects, it can only show that software errors are present.

Testing Technique: The techniques followed throughout the testing of the system are as under

Black-Box Testing: Black box testing focuses on the functional requirements of the software. That is, Black Box testing enables the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program. Black Box Testing is not

140

an alternative to white-box techniques. Rather, it is a complementary approach that is likely to uncover a different class of errors than white-box methods. Black-Box Testing attempts to find errors in the following categories: 1.

Incorrect or missing functions.

2.

Interface errors.

3.

Errors in data structures or external data base access.

4.

Performance errors.

5.

Initialization and termination errors.

Unlike White Box Testing, which is performed early in the testing process, Black Box Testing tends to be applied during later stages of testing. Because Black Box Testing purposely disregards control structure, attention is focused on the information domain. Tests are designed to answer the following questions: 1)

How is functional validity tested?

2)

What classes of input will make good test cases?

3)

Is the system particularly sensitive to certain input values?

4)

How are the boundaries of a data class isolated?

5)

What data rates and data volume can the system tolerate?

6)

What effect will specific combinations of data have on system operation?

By applying black box techniques, we derive a set of test cases that satisfy the following criteria: 

Test cases that reduce, by a count that is greater than one, the number of additional test cases that must be designed to achieve reasonable testing.



Test cases that tell us something about the presence or absence of classes of errors, rather than errors associated only with the specific test at hand.

141

White-Box Testing: White Box Testing knowing the internal workings of a product tests can be conducted to ensure that internal operations are performed according to specifications and all internal components have been adequately exercised. Using white box testing methods the test cases that can derived are: (1)

All independent paths with in a module have been exercised at least once.

(2)

Exercise all logical decisions on their true and false sides.

(3)

Execute all loops at their boundaries and within their operational bounds.

(4)

Exercise internal data structures to ensure their validity.

Control Structure Testing 1) Condition Testing : Condition testing is a test case design method that exercises the logical conditions contained in a program module. If a condition is incorrect then at least one component of the condition is incorrect. Therefore types of errors in a condition include the following. 

Boolean operator error



Boolean variable error



Boolean parenthesis error



Relational operator error



Arithmetic expression error

2) Loop Testing : Loops are the corner stone for the vast majority of all algorithms implemented in software. Loop testing is a white-box testing technique that focuses exclusively on the validity of loop constructs. Four different classes of loops: 

Simple Loops



Nested Loops

142



Concatenated Loops



unstructured Loops

3) Dataflow Testing : The dataflow testing method selects test paths of a program according to the location of definitions and uses of variables in the program. In this testing approach, assume that each statement in a program is assigned a unique statement number and that each function does not modify its parameters or global variables. It is useful for selecting test paths of a program containing nested if and loop statement. This approach is effective for error detection. However, the problems of measuring test coverage and selecting test paths for data flow testing are more difficult than the corresponding problems for condition testing.

Testing Strategies A strategy for software testing integrates software test case design methods into a well planned series of steps that result in the successful construction of software. A software testing strategy should be flexible enough to promote a customized testing approach.

Unit Testing: Unit testing focuses verification efforts on the smallest unit of software design. It is white box oriented. Unit testing is essentially for verification of the code produced during the coding phase and hence the goal is to test the internal logic of the module. Others consider a module for integration and use only after it has been unit tested satisfactorily. (1)

The module interface is tested to ensure that information properly flows in and out of program.

(2)

Local data structure is examined to ensure that data stored temporarily maintain its integrity.

(3)

Boundary conditions are tested to ensure that modules operate properly at boundary limits of processing.

143

(4)

All independent paths are exercised to ensure all statements in a module have been executed at least once.

(5)

All error-handling paths are tested.

Integration Testing: Integration testing focuses on design and construction of the software architecture. For example: - We followed a systematic technique for constructing the program structure that is “putting them together”- interfacing at the same time conducting tests to uncover errors. We took unit tested components and build a program that has been dictated by design.

Validation Testing: It is achieved through a series of Black Box tests. An important element of validation process is configuration review. It is intended for all the elements are properly configured and cataloged. It is also called AUDIT.

System Testing: The last high-order testing step falls outside the boundary of software engineering and into tile broader context of computer system engineering. Software, once validated, must be combined with other system element (e.g., hardware, people, and database). System testing verifies that all elements mesh properly and that overall system function/performance is achieved. It is a series of different tests whose primary purpose is to fully exercise the computer-based system. Although each test has a different purpose all work to verify that system elements have been properly integrated and perform allocated functions.

144

System implementation Putting a planned system into action. The stage of systems development in which hardware and software are acquired, developed and installed, the system is tested and

145

documented, people are trained to operate and use the system, and an organization converts to the use of a newly developed system. Process of installing a new computer system. To ensure that a system's implementation takes place as efficiently and with as little disruption as possible, a number of tasks are necessary. These include ordering and installing new equipment, ordering new stationery and storage media, training personnel, converting data files into new formats, drawing up an overall implementation plan, and preparing for a period of either parallel running. The resources that Imaging Solutions applies to an Enterprise Content Management system implementation depend on the scope and complexity of the system. During implementation all necessary software and hardware is obtained and the system is staged where the components are configured according to the System Design Specification

and

tested.

Systems can be staged at our facility or at the customer’s site if required. If staged at Imaging Solution’s offices, they are shipped to the client site once the configuration is complete. A final test is performed on all components and system training is commenced. Once the system training is complete, the system is rolled out into production. On-site support can also be provided to handle post-implementation issues and questions. The process of planning, designing, and implementing computer system is called a project. It is directed by a project manager who uses available resources to produce system for the organization. It takes an effective manager resource, schedule the events, establish standards, and complete the project on time, within budget, and with successful results. With parallel running, the new system is introduced alongside the existing system. With parallel running both systems (manual and computer, or old computer and new computer system) will be in operation at the same time. This has the advantage that the results from the new system can be compared with those of the old system.

146

Project management: Project management is a technique used by a manager to ensure successful completion of a project. It includes the following functions;  Estimating resource requirements  Scheduling tasks and events  Providing for training and site preparation  Selecting qualified staff and supervising their work  Monitoring the project’s program  Documenting  Periodic evaluating  Contingency planning From these functions, we can see that project management is a specialized area. It involves the application of planning, organization, and control concepts to critical, one-of-a-kind projects. It also uses tools and software packages for planning and managing each project.

Project organization: The project team: The term team is used here to mean a group of people with similar skills and sharing a common activity. Some of the questions a project manager may ask are: what comprises the project team? Who should be on it? What skills must they have? For

147

large projects, a project team is staffed by systems analysts, programmers, prime user(s), hardware/software suppliers, and even subcontractors. The staff may retain for the duration of the project. The skills expected of a project team are the same skills required in computer system development projects:  Systems analysis  Detailed system design  Program design  System testing  Conversion  Cost justification  Planning and estimating  Hardware/software experience  Leading teams

148

Limitations of the Project

149

Though this project is very useful and has several advantages over a manual system. Use of this no doubt will result in faster processing and a better service but has some limitations also. These limitations include

 We do not have online transactions.  This application can run on the Web server and SQL server.  End user cannot directly interact with the dynamic performance of this project.

150

Future Scope of the Project

It is highly likely that the scope will change as the web application moves forward the web process model should be incremental. This allows development team to freeze the scope for one increment so that an operation web application of the preceding

151

increment but once the second increment commence, scope is again frozen temporarily. This approach enables the web application team to work with having to accommodate continual stream of change be still recognized. The continuous evolutions characteristics of most web application. Beside that the following basic quality in the software always safeguards the future scope of the software.

Extensibility: This software is extended in a way that its original developer may not expect. The following principal enhances extensibility like hide data structure. Avoid traversing multiple links or methods, avoid age statement on object type and distinguish public and private operations.

Portability: Since it is an internet based application, so its portability and usability depends upon the client connected with the internet. The interface designed that is the web page designing which one of the major part of web application because it is the first impression regardless of the value of its contents interface should must grab a potential user immediately.

Project manager: To plan, and control the project team’s effort, the project manager expected to have unique qualities: Flexibility and adaptability to changing situations. Ability to communicate and persuade people affected by the project as well as those working on it about changes or enhancements to incorporate into the plan. Commitment to planning the system development aspect of the project and ability to minimize the risks when assessing different approaches to develop a project. Understanding technical problems and design details. Understanding the motivations and interests of members of the project staff and the ability to implement ways to improve job satisfaction.

Implementation phase The following steps were carried out in implementation phase.

152



Conduct Training: The training was conducted for the employees of the company to make them familiar with the system.



Bug fixing and documentation: Any errors that occurred were solved and documented.



Install the system: The system was then installed.

153

Bibliography We referred some books which had provides us with much of guidance to develop the code for the website. There are a few good books and websites that we referred to develop asp, css, JavaScript and HTML codes. Apart from codes these books and websites had provides us with few good techniques and methodologies to develop the website. There are a list of few books and websites that we referred are: BOOKS: •

C# Professional By Wrox Publication



ASP.Net By Wrox Publication



SQL SERVER 2000 In Techmedia, 21 Days 154

SITES FOR REFERENCE •

www.google.com



www.aspcode.net



http://msdn2.microsoft.com/en-us/asp.net/default.aspx

155

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF