Project Record 1

183
Project Report on E-CYBER SHOPPING Submitted in partial fulfillment of the requirements for the award of the Degree of Master of Computer Application Submitted by C.BALASUBRAMANIYAM.C - 213070906 KUMANAN.T - 213070918 K.J.MANO - 213070920 Under the Supervision and Guidance of Mr.S.MEGANATHAN M.Sc., M.Phil., M.Tech., Assistant Professor II, Department of CSE DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING SHANMUGHA ARTS, SCIENCE, TECHNOLOGY & RESEARCH ACADEMY SASTRA UNIVERSITY (A University under section 3 of the UGC Act, 1956)

Transcript of Project Record 1

Page 1: Project Record 1

Project Report on

E-CYBER SHOPPING

Submitted in partial fulfillment of the requirements for the award of the

Degree of Master of Computer Application

Submitted by

C.BALASUBRAMANIYAM.C - 213070906KUMANAN.T - 213070918

K.J.MANO - 213070920

Under the Supervision and Guidance of

Mr.S.MEGANATHAN M.Sc., M.Phil., M.Tech.,

Assistant Professor II, Department of CSE

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

SHANMUGHA ARTS, SCIENCE, TECHNOLOGY & RESEARCH ACADEMYSASTRA UNIVERSITY

(A University under section 3 of the UGC Act, 1956)

SRINIVASA RAMANUJAN CENTRE

Kumbakonam – 612001

TamilNadu, India

APRIL 2012

Page 2: Project Record 1
Page 3: Project Record 1

Project Report on

E-CYBER SHOPPINGSubmitted in partial fulfillment of the requirements for the award of the

Degree of Master of Computer Application

Submitted by

C.BALASUBRAMANIYAM.C - 213070906KUMANAN.T - 213070918

K.J.MANO - 213070920

Under the Supervision and Guidance of

Mr. S.MEGANATHAN M.Sc., M.Phil., M.Tech.,

Assistant Professor II, Department of CSE

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

SHANMUGHA ARTS, SCIENCE, TECHNOLOGY & RESEARCH ACADEMYSASTRA UNIVERSITY

(A University under section 3 of the UGC Act, 1956)

SRINIVASA RAMANUJAN CENTRE

Kumbakonam – 612001

TamilNadu, India

APRIL 2012

Page 4: Project Record 1

SHANMUGHA ARTS, SCIENCE, TECHNOLOGY & RESEARCH ACADEMYSASTRA UNIVERSITY

(A University under section 3 of the UGC Act, 1956)

SRINIVASA RAMANUJAN CENTRE

Kumbakonam – 612001

TamilNadu, India

Bonafide Certificate

This is to certify that this project report entitled

E-CYBER SHOPPING

is a bonafide record of work done by

C.BALASUBRAMANIYAM.C - 213070906KUMANAN.T - 213070918

K.J.MANO - 213070920

in Partial fulfillment of the requirements for the award of the degree of

Master of Computer Application

During the year 2011 – 2012

Guide HOD (CSE)

Submitted for University Examination held on: …………….2012

Internal Examiner External Examiner

Page 5: Project Record 1

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

SHANMUGHA ARTS, SCIENCE, TECHNOLOGY & RESEARCH ACADEMY

SASTRA UNIVERSITY

(A University under section 3 of the UGC Act, 1956)

SRINIVASA RAMANUJAN CENTRE

Kumbakonam – 612001

TamilNadu, India

DECLARATION

I submit this project entitled “E-CYBER SHOPPING” to SASTRA

University, Thanjavur – 612 402, in partial fulfillment of the requirements for the award

of the degree of Master of Computer Application and declare that this is my original

work carried out under the guidance of Mr.S.MEGANATHAN M.Sc.,M.Phil.,M.Tech.,

Date: Signature:

Place: Name:

Page 6: Project Record 1

ACKNOWLEDGEMENT

Page 7: Project Record 1

ACKNOWLEDGEMENT

I convey our deep sense of gratitude to the Almighty, who has helped us all

the way throughout our life and has modeled us into what we are today.

I would like to express our profound thanks to our Vice Chancellor

Prof.R. Sethuraman and our Registrar Prof. Shri S.N.Srinivastava for showing keen

interest in our academic Progress, who has given us an opportunity to be the student of

this renowned institution.

I express our sincere thanks to Prof.K.G.Ragunathan, Dean Engineering,

Srinivasa Ramanujam Centre for his moral support.

I would like to taken an opportunity to express our deep sense of gratitude

to Mr.K.Arulmani, M.sc.,M.Phil.,M.Tech.,(HOD) Computer Science and

Engineering, SRC for providing an opportunity to undertake this project.

The next honorable bearer of our gratitude is our project coordinators

Mrs.K.B.EASHWAR M.C.A., M.Phil.,M.Tech., Professors II, AP- II.,

Mrs. SHAKE MOHIDEEN SHAH., M.Tech., Assistant Professors II, Department of

CSE for providing ideas and facilities to carry on this project.

We would like to place on record the benevolent approach and pain taking

efforts of Mr.K.B.Eashwar M.sc.,M.Phil.,M.Tech., Assistant Professor II,

Department of CSE our internal guide to whom we owe our hearty thanks forever.

Last but not least, we express our sincere thanks to our parents, friends and

well-wisher. We dedicate this work to all of them with love and affection.

Page 8: Project Record 1

SYNOPSIS

Page 9: Project Record 1

SYNOPSIS

This web application contains software a communication between the parties

through shipment. Shipment means a way of transferring the goods into an optimal

destination. Logistics means a supply of materials through ship. Freight means a charge is

collected for transfer the material to the proper destination. In this project, modules such

as Customer Relationship Management, Job Process Management, User Login Security

Management and Reporting are exist. The Customer Relationship Management is used to

maintain the customer details such as identity number for customer, customer name,

date, material name, material weight, amount, origin and destination etc., The Job Process

Management is used to maintain a plan and monitor the performance of a job. In User

Login Management, the two users are Administrator and Customer. These two users can

be verified through the database. Administrator has the right to perform operations such

as storing, removing and updating. Unauthorized user can view only the entries regarding

details such as identity for customer, date, customer name etc. In Reporting Module,

Conformation of delivery of the material through a delivery report. Report can be viewed

via. E-Mail services. This web application helps to reduce the transportation cost. This

project is going to be done with J2EE as the front end and Mysql as the back end.

Page 10: Project Record 1

TABLE OF CONTENT

Chapter Contents Page no

1 1.0 Introduction 1.1 Background of the project

2 Software Project Plan

3 Software Requirements Specification

4 System Analysis 4.1 DFD 4.2 ERD 4.3 Use-Case Diagram 4.4 CASE Tools for Analysis

5 Design 5.1 Input Design 5.2 Table & Database Design 5.3 Output Design 5.4 CASE Tools Used(if any)

6 Coding 6.1 Sample codes

7 Testing 7.1 Unit Testing 7.2 Integration Testing 7.3 Validation Testing

8 Implementation 8.1 Problem faced 8.2 Lessons learnt

9 Future Enhancement 10 Reference/Bibliography

Page 11: Project Record 1

11 Appendix

INTRODUCTION

Page 12: Project Record 1

1.0 INTRODUCTION

In order to make shipping more affordable for the average shipper by booking

large quantities of space on trade lines and selling space on container vessels in smaller

increments, at lower rates. The freight consolidator accepts Less than Container Load

(LCL) shipments from individual shippers and combines them for delivery to the carrier

in Full Container Load (FCL) shipments. Freight forwarders deliver cargo from an

exporter’s premises to the local customs office. For importers, freight forwarders deliver

cargo from customs to the importer’s premises. Each of these types of companies may

offer overlapping services or even end-to-end service.

With Many combined modules in the project we are planning for Freight

Forwarding, Consolidation and Non-Vessel Operating Common Carrier (NVOCC) is

based on a sophisticated cargo management system that provides visibility on cargo

positions, shipment lead times, delivery dates, freight costs, land volume forecasts,

monitoring shipments, to improving efficiency by eliminating redundant procedures.

1.1 Background of the Project

Once the project is designed and implemented the following is the

expectations of the client

Should enables the client to track shipments on all modes of transportation by any

known reference value, down to the item level, so that they need not have to maintain a

complex cross-reference table for their users. The responsible parties should have several

ways to enter status information, including an automated EDI process. Status information

will be used to create reports on in-process shipments and carrier performance.

Page 13: Project Record 1

Extensive drill-down capabilities should allow seeing all information pertaining to

a shipment down to the detailed line level of the orders. The secure Web system is to be

designed for look-up purposes and can be set to grant different levels of access to the

clients transportation staff, customer service team, and sales/field personnel, as well as

customers.

1.2 Existing System1. The freight consolidator accepts Less than Container Load (LCL) shipments from

individual shippers and combines them for delivery to the carrier in Full Container

Load(FCL) shipments.

2. Each of these types of companies may offer overlapping or even end-to-end

service.

3. There must be willingness in high level of company and also people in management

must be motivator for successful ERP implementation. Excellent training facilities and

skills are required.

4. High testing cost.

5. High training cost of workers and other employees.

1.3 Proposed System

Shipment lead times, delivery dates, freight costs, land volume forecasts

monitoring shipments are used to improving efficiency by eliminating redundant

procedures.

Services include Door to Door delivery, Bulk Break Shipment, Insurance

Warehousing, Inland Transportation, Letter of Credit Shipments, Customs Clearance at

all major ports and seaports apart from grouping / consolidating containers from all major

ports in India.

Our concept involves

It will be a confident way of approaching the users. It helps to reduce the

transportation cost. It will be a good application for the user who wants to protect their

documents safely.

Page 14: Project Record 1

SOFTWARE PROJECT PLAN

Page 15: Project Record 1

2.0 SOFTWARE PROJECT PLAN

Phase /Milestone

Description Time Bound

Deliverable Remarks Responsibilities

Process Initialization

Identification of the process activity and responsible person

Dec 2011

Project kick start

Analyzing data and technologies used in this project

Technologies and objectives were determined

Website Requirement /Estimation

Software/Hardware & Interface Requirements are documented

Dec 2011

SRS (Functional & Non Functional) Report, Person Month, Cost & Resource Estimation

Approved SRS is treated as baseline and distributed to the stakeholder

The functional requirements such as Customer details, Job details and Report details etc. were determined.

Website Design Convert analysis model into a design model and architect

Jan 2012

Architect and Page Design

Activities should be carried out by independent person

Pages required for end user is determined and pages are designed accordingly

Website Development

The design are converted into Functional module & then they are integrated

Feb 2012ToMar2012

Code, Module Integration

Team will carry out the implementation of web page in paralleled manner

Functions to be performed by each page are determined and code generation using HTML, J2EE.

Website Testing Test plan, various testing methods and tools

Mar2012

Test Report and feedback

Various flaws are brought to knowledge of the project team

Different types of testing such as Unit Testing, Integration Testing etc., are performed

Website Website is Apr Site hosting The website is

Page 16: Project Record 1

Deployment launched 2012 launched Website maintenance

Formation of the maintenance team

Apr2012

Problem (Reporting Solution, Defect prevention)

After updating the new baseline become master and previous one is obsolete

New features are added, the bugs in the existing system has been identified and removed.

SOFTWARE REQUIREMENTS SPECIFICATION

Page 17: Project Record 1

3.0 SOFTWARE REQUIREMENTS SPECIFICATION

3.1 Introduction

This web application is used to reduce the transportation cost while transferring

the materials from the origin to the destination.

3.1.1 Purpose

This web application provides a good communication between the buying

and the receiving parties.

It helps to save the time and the conformation between the parties.

Administrator has a right to perform all the activities based on the specific ID.

User can only view the details based on their specific ID.

3.1.2 Document Conventions The font used in this document is Times New Roman with the 12 pts.

This software requirement specification has been written as per IEEE standard

803-1998.

3.1.3 Intended Audience and Reading Suggestions The Administrator is the master who maintains the customer information. This

web application is mainly for the user who wants to transfer the materials to the

proper destination.

3.1.4 Project Scope

Page 18: Project Record 1

Scope of this project is used to transfer the materials safely and reduce

the transportation cost. Materials are properly delivered to the destination based

on the conformation report. It can be used anywhere anytime because it’s a web

application.

3.1.5 References

This web application has been prepared on the basis of discussion with

guide and also taken information from the following websites.

Websites

www.google.com

www.wikipedia.org

www.w3schools.com

3.2 Overall Description

3.2.1 Product Perspective

This web application is a platform dependent and easiest way to

access the information.

3.2.2 Product Features

There are different features in this project.

Customer Relationship Management

Job Process Management

User Login Management

Reporting

Page 19: Project Record 1

3.2.3 User Classes and Characteristics

Customer Relationship Management:

It maintains the customer details and access the information based on their

specific ID.

Job Process Management:

It allocates a job for a particular process and monitors the

performance based on the job ID.

User Login Management:

There are two users namely User and Administrator. User can only

view the details based on their proper id. Administrator can perform the operations

such as Storing, Removing and Updating based on their specific ID.

Reporting:

It maintains the overall information of a process and a delivery of

material can be viewed via. Email services.

Page 20: Project Record 1

3.2.4 Operating Environment

Hardware

Mother Board - Intel 945 chipset and above

Processor - Pentium 4

RAM Memory - 2 GB

Hard Disk - 200 GB

Monitor Resolution - 1024 X

768

Software

Front End - J2EE

Back End - Mysql

Operating SystemWindows 2000/XP/Vista/windows 7

3.2.5 Design and Implementation Constraints

The whole implementation can be performed using the three modules such

as Customer Relationship Management, Job Process Management, User Login

Management and Reporting.

Customer Relationship ManagementThe Customer Relationship Management maintains the customer’s

information such as Customer number, Customer name, Telephone number, Mobile

number, Fax number, Email and Action. Action is the status which will not be provided

to the user. Those users who are all do not have Action status aren’t permissible to access

Page 21: Project Record 1

the information. In this Module, there is a provision to add a new customer to the

database based on the specific ID.

Job Process ManagementThe Job Process Management manages and monitoring the performance of

a process. It allocates a job for a particular process. It contains Job id, Job date, Customer

name, Invoice number and Date, Destination, Number of packages, Total weight,

Original document received on, Cargo received on, Payment mode and Transport name.

In this module, there is a provision to add a new job to the database based on the specific

ID.

User Login ManagementThe User Login Management is used to maintain the user information who

authorize to login. Administrator can maintain the customer details and allocates a job for

them. User can view the details based on their specific ID. User does not perform all the

activities.

ReportingReporting maintains the overall information of a process. It contains Serial

number, Client name, Job id, Client invoice number, S/B number, Destination, Number

of pieces, Total weight, job order date, Number of days, current process. All information

can be accessed based on the specific job ID.

3.2.6 User Documentation

This web application is easy to access anywhere anytime from the user. It’s is a

platform independent.

Page 22: Project Record 1

3.2.7 Assumptions and Dependencies

Full working of this project is based on the two software:

J2EE to develop the product

Mysql database to store the information

3.3 System Features

3.3.1 Login Management

3.1.1.1 Description and Priority

The system can be accessed by entering the username and a unique

password. The username can be handled by the administrator. It provides a

security features in this system.

3.1.1.2 Stimulus/Response Sequences

The user can enter into the system by providing a username

and password, if the username and password is correct then it will successfully

enter otherwise it will give a message as “invalid username and password”. The

username should have a specific length and password must be hidden.

3.1.1.3 Functional Requirements

REQ-1: A username must be 8 and above characters. A password must

be of 8 characters and above. Special characters are not allowed.

REQ-2: If the username and password is correct then the system is

successfully get accessed.

REQ-3: Otherwise it will provide a message as Invalid username and

password.

Page 23: Project Record 1

3.3.2 Functional Requirements

Functional Requirements are nothing but the services provided by the system to

the end users.

There are two sub modules in this phase.

Administrator Module

User Module

The functionality of each module is as follows.

Administrator Module

The Administrator allows the user to access the information. Administrator has all

the rights to access the information based on their specific ID. This module provides a

security question regarding that the answer can be displayed into a text.

User Module

The User cannot access all the information. User can only view the details

based on their proper ID. This module also maintains an image security based on that a

random number can be displayed into a text.

Page 24: Project Record 1

3.4.0 External Interface Requirements

3.4.1 User Interfaces

Application will be accessed through a browser interface. The interface would be

viewed best using 1024 X 768 and 800 X 600 pixels resolution setting. The software

would be fully compatible with Microsoft Internet Explorer for version 6 and above. User

cannot able to access the information without login into the system.

3.4.2 Hardware Interfaces

The communication protocol ‘HTTP’ is needed to interact with the database once

it is uploaded in the Internet server.

3.4.3 Software Interfaces

This product is designed using J2EE and needs Mysql as used for database enable

local host to run locally.

3.4.4 Communications Interfaces

Communication standards that will be used through the software will be J2EE.

For the communication it need web browser (For example: Mozilla Firefox) it act as the

agent for the users to provide the WebPages from the web servers.

3.5.0 Other Nonfunctional Requirements

3.5.1 Performance Requirements

The software shall support multiple user environments. That is, the

software can access multiple users at a time.

This application is used to store and retrieve the information easily.

Page 25: Project Record 1

3.5.2 Safety Requirements

The database may get crashed at any certain time due to virus or operating

system failure. Therefore, Mysql is more safety and secure. Because, all information are

stored in a local host server.

3.5.3 Security Requirements

The safety part of the system will be based on the facilities provided by the

operating system and the security features provided by the J2EE. Image security features

are used to give a protection for the users. Username, Password and Image are case-

sensitive.

3.5.4 Software Quality Attributes

The quality of the system is maintained in such a way so that it can be very user

friendly to all the users. The software quality attributes are assumed as under:

Accurate and ReliableThe Mathematical calculations can be accurate and evaluated. So,

it is reliable to avoid errors and reliable.

SecuredThe user contains a security feature such as image and question to

access their information more secure.

SpeedThis application is a web based. So, it is used to retrieve the

information more speed.

CompatibilityThis application is accessed anywhere anytime. So, it is a

compatible one.

Page 26: Project Record 1

SYSTEM ANALYSIS

Page 27: Project Record 1

DATA FLOW DIAGRAM

Page 28: Project Record 1

4.0 SYSTEM ANALYSIS

4.1 Data Flow Diagram (DFD)

Add customer

Details

Send

Add job detailsSearch

Database

Request

Administrator Create job details

User

Administrator Admin

Login

Maintain job details

Maintain customer details

Maintain report details

Page 29: Project Record 1

ENTITY RELATIONSHIP DIAGRAM

Maintain report details

Page 30: Project Record 1

4.2 Entity Relationship Diagram (ERD)

Page 31: Project Record 1

USE CASE DIAGRAM

Page 32: Project Record 1

4.3 Use-case Diagram

Page 33: Project Record 1

4.4 CASE TOOLS FOR ANALYSIS

4.4.1 INTERNATIONAL SHIPPING, LOGISTICS, FREIGHT AND

GLOBAL DISTRIBUTION NETWORK INTEGRATION

Page 34: Project Record 1

4.4.2 ATTRIBUTE MATRIX FOR FEATURE REQUIREMENT TYPE

Page 35: Project Record 1

4.4.3 TRACEABILITY MATRIX

4.4.3.1. Feature and Use Case Requirement Type

Page 36: Project Record 1
Page 37: Project Record 1

DESIGN

Page 38: Project Record 1

5.0 DESIGN

5.1 Input Design

5.1.1 Login

Page 39: Project Record 1

5.1.2 HOME:

Page 40: Project Record 1

5.1.3 CUSTOMER RELATION:

Page 41: Project Record 1
Page 42: Project Record 1

5.1.4 ADD NEW CUSTOMER:

Page 43: Project Record 1

5.1.5 JOB PROCESS:

Page 44: Project Record 1

5.1.6 JOB PROCESS IN LIST:

Page 45: Project Record 1

5.1.7 UPDATE JOB:

Page 46: Project Record 1

5.1.8 SEARCH:

REPORTS:

5.1.9 JOB IN PROCESS REPORT:

Page 47: Project Record 1

5.1.10 PENDING JOBS WITH DAYS REPORT:

Page 48: Project Record 1

5.1.11 CUSTOMERS JOB ORDER REPORT:

Page 49: Project Record 1
Page 50: Project Record 1

5.1.12 CHANGE PASSWORD:

Page 51: Project Record 1

5.1.13 CUSTOMER E-MAIL:

5.2 Table & Database Design

5.2.1 Login

S.no Field name Table Data type Size

1 U_Name Donate Varchar 20

Page 52: Project Record 1

2 Password Donate Varchar 20

5.2.2 Customer Relationship Management

S.no Field name Table Name Data type Size

1 Cust_No crm Varchar 20

2 Cust_Name crm Varchar 20

3 Tele_No crm Int

4 Cell_No crm Int

5 Fax_No crm Int

6 Email crm Varchar 30

5.2.3 Job Process

S.no Field name Table Name Data type Size

1 Job_id jobprocess Varchar 15

2 Job_date jobprocess date

3 Cust_Name jobprocess Varchar 25

4 Inv_No jobprocess Int

5 Desig jobprocess Varchar 25

6 No_Pakg jobprocess Int

7 Total_Weight jobprocess Int

8 Org_Doc_Recv jobprocess varchar 35

9 Caro_recv jobprocess Varchar 35

10 Pay_Mode jobprocess Varchar 35

11 Trans jobprocess varchar 35

5.2.4 Users

S.no Field name Table Name Data type Size

1 U_Name Users varchar 30

Page 53: Project Record 1

2 Pass Users Varchar 30

3 Perm Users varchar 30

4 Access Users Varchar 30

5 Stat Users Varchar 30

5.2.5 Complete Job Report

S.no Field name Table Name Data type Size

1 C_Name Completejobreport varchar 30

2 J_ID Completejobreport Int

3 C_Invoice Completejobreport varchar 30

4 Sbno Completejobreport Varchar 30

5 Dest Completejobreport Varchar 30

6 N_O_P Completejobreport Int

7 T_W Completejobreport Int

8 D_R_O Completejobreport varchar 30

9 C_R_O Completejobreport Varchar 30

10 CSON Completejobreport Varchar 30

11 No_Of_Days Completejobreport varchar 30

12 Rem Completejobreport Varchar 30

5.2.6 Job In Progress

S.no Field name Table Name Data type Size

1 C_Name jobinprocess varchar 30

2 J_ID jobinprocess Int

Page 54: Project Record 1

3 C_Invoice jobinprocess varchar 30

4 Sbno jobinprocess Varchar 30

5 Dest jobinprocess Varchar 30

6 N_O_P jobinprocess Int

7 T_W jobinprocess Int

8 J_O_D jobinprocess varchar 30

9 NOD_SS jobinprocess varchar 30

10 CPS jobinprocess Varchar 30

5.2.7 Total Expense Report

S.no Field name Table Name Data type Size

1 C_Name TotalExpenceReport varchar 30

Page 55: Project Record 1

2 J_ID TotalExpenceReport Int

3 C_Invoice TotalExpenceReport varchar 30

4 Sbno TotalExpenceReport Varchar 30

5 Dest TotalExpenceReport Varchar 30

6 N_O_P TotalExpenceReport Int

7 T_W TotalExpenceReport Int

8 R_P_C TotalExpenceReport varchar 30

9 Cle_Char TotalExpenceReport Varchar 30

10 WHC TotalExpenceReport Varchar 30

11 LUC TotalExpenceReport varchar 30

12 TC TotalExpenceReport Varchar 30

13 TMC TotalExpenceReport varchar 30

14 TE TotalExpenceReport Varchar 30

5.2.8 Complete Job Report

S.no Field name Table Name Data type Size

Page 56: Project Record 1

1 C_Name CompleteJobReport varchar 30

2 J_ID CompleteJobReport Int

3 C_Id CompleteJobReport Int

4 NOJI CompleteJobReport Varchar

5 NOCO CompleteJobReport Varchar 30

6 NOPO CompleteJobReport varchar 30

7 TNOPH CompleteJobReport Varchar 30

8 TWOAJ CompleteJobReport varchar 30

9 AJCD CompleteJobReport Varchar 30

5.3 Output Design

5.3.1 LOGIN

Page 57: Project Record 1
Page 58: Project Record 1

ACTIVITY DIAGRAM

5.4 CASE-TOOLS USED

5.4.1 Activity Diagram

Login

Page 59: Project Record 1

Maintain Customer

Enter Username and Password

Proceed Further

Login Failed

Admin

Check in Database

Yes

No

Enter Username and Password

Proceed Further

Login Failed

User

Check in Database

Yes

No

Page 60: Project Record 1

Maintain Job

Maintain forms

want to add customer

N

Enter customer details

Check with the databaseAdd customer to database

N

Customer Already found

Y

Enter Customer Id

Y Modify and Update

N

Enter customers Id

YCheck with the database

Modify and Delete

N

Inform Customer not found

Y

Customer not found and inform

N

Y

N

Y

Check with the database

Page 61: Project Record 1

Maintain forms

Enter Job details Add job to database

Job details Already found

Enter Job Id Modify and Update

Enter Job Ids Modify and Delete

Inform Job not found

Job not found and inform

want to add job

N

YCheck with the database

N

Y

YCheck with the database

N

N

YCheck with the database

N

Y

Y

N

Page 62: Project Record 1

Maintain Report

Maintain forms

Enter Report details

Add Report details to database

Report details Already found

Enter Customer name or ID

Modify and Update

Enter customer name or ID

Modify and Delete

Inform Report not found

Report details not found and inform

N

YCheck with the database

N

Y

YCheck with the database

N

N

YCheck with the database

N

Y

Y

N

Page 63: Project Record 1

User View Customer

User View Report

Enter Customer ID or Name

Search

View Customer

User

Page 64: Project Record 1

Enter Customer ID or Name

Search

View Report

User

Page 65: Project Record 1

CLASS DIAGRAM5.4.2 Class Diagram

5.4.2.1 Login

5.4.2.2 Customer Relationship Management

AdminUname:VariantPass:Variant

Inform()

Log databaseUname:VariantPass:Variant

Validate()Check()

Login form

Pass detls()Pass msgs()

userUname:VariantPasswrd:variant

Inform()

Login DdbUname:VariantPasswrd:Variant

validate()check()

Log form

Pass details()Pass msgs()

AdministratorUsname:VariantPasswd:Variant

Display()

Main_Form

Add Cus()Update cus()Remove Cus()Action()

Detail Validator

Pass ()Valdt()

Customer DbC.no:VariantC.name:VariantTel.no:VariantMob.no:VariantFax no:VariantE-mail:Variant

Page 66: Project Record 1

5.4.2.3 Associating Report

userUname:VariantPasswrd:variant

Inform()

Customer DbC.no:VariantC.name:VariantTel.no:VariantMob.no:VariantFax no:VariantE-mail:Variant

Report Dbct.name:Variantct.no:VariantMo.no:Variantdate:DateCt. inv.no:VariantS/B no:VariantDes:VariantNo.of pcs:VariantTot. wt:VariantJ.odr.date:DateNo.of days:DateCt.process:Variant

association

Page 67: Project Record 1

5.4.2.4 Associations

5.4.2.5 View Customer

userUname:VariantPasswrd:variant

Inform()

Main frm

View cus()

Detail Validator

Pass ()Valdt()

Customer DbC.no:VariantC.name:VariantTel.no:VariantMob.no:VariantFax no:VariantE-mail:Variant

Page 68: Project Record 1

5.4.2.6 View Report

Main frms

View Rept()

userUname:VariantPasswrd:variant

Inform()Report Db

ct.name:Variantct.no:VariantMo.no:Variantdate:DateCt. inv.no:VariantS/B no:VariantDes:VariantNo.of pcs:VariantTot. wt:VariantJ.odr.date:DateNo.of days:DateCt.process:Variant

Detail Validator

Pass ()Valdt()

Page 69: Project Record 1

SEQUENCE DIAGRAM

Page 70: Project Record 1

5.4.3 Sequence Diagram

5.4.3.1 Login

Ad : Admins Log : Lg form Log : lgn Db Adm : AdminstPass Details

Validate Admin

Check

Inform

Page 71: Project Record 1

5.4.3.2 Maintain Customer

User : Users Log : Lg form Log : lgn Db us : userss

Check

Pass details

Validate user

Inform

Page 72: Project Record 1

Ad : Admins Maintain : Maintain frm cus db : customer DBAdd

Update

Remove

Action

Pass

Store

Page 73: Project Record 1

5.4.3.3 Maintain Job

Ad : Admins Maintain : Maintain frm Job : Job DB

Add

Update

Remove

Action

Pass

Store

Page 74: Project Record 1

5.4.3.4 Maintain Report

Ad : Admins Maintain : Maintain frm Report : Report DdbAdd

Update

Remove

Action

Pass

Store

Page 75: Project Record 1

5.4.3.5 Validate Customer

Administr : Adminsss

main : Maintain Frm Validate : Cus dbase

Cust. Db : Cus. Dbase

Request

Display

Pass

Validate

Store

Page 76: Project Record 1

5.4.3.6 Validate Job

Administr : Adminsss

main : Maintain Frm Valid : Job db Job : Job Dbase

Request

Display

Pass

Validate

Store

Page 77: Project Record 1

5.4.3.7 Validate User View Report

Users : User view

Maintain : Maintain frm

Pass

Validate

Report : Report Ddb

Store

Page 78: Project Record 1

5.4.3.8 User View Customer

Users : User view

cus db : customer DB

Store

Maintain : Maintain frm

Pass

Validate

Page 79: Project Record 1

COLLABORATION DIAGRAM

5.4.4 Collaboration Diagram

Page 80: Project Record 1

5.4.4.1 Login

5.4.4.2 Maintain Customer

Ad : Admins Log : Lg form

Log : lgn Db Adm : Adminst

1: Pass Details

2: Validate Admin

3: Check

4: Inform

User : Users Log : Lg form

Log : lgn Db us : userss

1: Pass details

2: Validate user

3: Check

4: Inform

Page 81: Project Record 1

5.4.4.3 Maintain Job

5.4.4.4 Maintain Report

Ad : Admins Maintain : Maintain frm

cus db : customer DB

1: Add2: Update3: Remove4: Action

5: Pass

6: Store

Ad : Admins Maintain : Maintain frm

Job : Job DB

1: Add2: Update3: Remove4: Action

5: Pass

6: Store

Page 82: Project Record 1

5.4.4.5 User View Customer

Ad : Admins Maintain : Maintain frm

Report : Report Ddb

1: Add2: Update3: Remove4: Action

5: Pass

6: Store

Users : User view cus db : customer DB

Maintain : Maintain frm

1: Pass

2: Validate

3: Store

Page 83: Project Record 1

5.4.4.6 User View Report

Users : User view Maintain : Maintain frm

Report : Report Ddb

1: Pass

2: Validate

3: Store

Page 84: Project Record 1

CODING

Page 85: Project Record 1

6.0 Coding

6.1 Sample code

Login.jsp<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Welcome to C. C. Shah&amp;Sons :: Fright Management</title><style type="text/css"><!--

--></style><link href="../../../wamp/www/joe/main.css" rel="stylesheet" type="text/css" /></head>

<body><div align="center"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="98" bgcolor="#DCF2FE"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td><div align="right"> <table width="50%" border="0" cellspacing="0" cellpadding="0">

Page 86: Project Record 1

<tr> <td>&nbsp;</td> </tr> </table> </div></td> </tr> <tr> <td height="56"><table width="100%" border="0" cellspacing="0" cellpadding="0"> </table></td> </tr> </table></td> </tr> <tr> <td height="35" bgcolor="#4A89AA"><div align="center" class="white_text_14px">Authorised User Area </div></td> </tr> <tr> <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td width="3%">&nbsp;</td> <td width="94%"><div align="center"><span class="page_title">Please Login </span> </div> <hr /> <br />

Page 87: Project Record 1

<form id="form1" name="form1" method="post" action="action.controller"> <table width="46%" border="0" align="center" cellpadding="2" cellspacing="0" class="tgrid1"> <tbody> <tr id="611307"> <td height="18" nowrap="nowrap">&nbsp;</td> <td nowrap="nowrap">&nbsp;</td> <td nowrap="nowrap">&nbsp;</td> </tr> <tr id="611307"> <td width="248" height="28" nowrap="nowrap"><div align="right">Login Name </div></td> <td width="19" nowrap="nowrap"><div align="center">:</div></td> <td width="262" nowrap="nowrap"><div align="left"> <input name="username" type="text" class="table_text_11px" id="username" /> </div></td> </tr> <tr id="611307"> <td height="28" nowrap="nowrap"><div align="right">Password</div></td> <td nowrap="nowrap"><div align="center">:</div></td> <td nowrap="nowrap"><div align="left"> <input name="pass" type="password" class="table_text_11px" id="pass" /> </div></td> </tr> <tr id="611307">

Page 88: Project Record 1

<td height="37" colspan="3" nowrap="nowrap"><div align="center"> <input name="Submit" type="submit" class="button" value=" Login " /> </div></td> </tr> <tr id="611307"> <td height="18" colspan="3" nowrap="nowrap">&nbsp;</td> </tr> </tbody> </table> </form> <p>&nbsp;</p></td> <td width="3%">&nbsp;</td> </tr> </table></td> </tr> </table></div></body></html>

Controller.javapublic class controller extends HttpServlet{

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

masterCon(request,response);System.out.println("doget");}

Page 89: Project Record 1

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("dopost");masterCon(request,response);

}protected void masterCon(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

System.out.println("Masterconnection");String username= request.getParameter("username");String password=request.getParameter("pass");

System.out.println("username :"+username);System.out.println("Pass word :"+password);

/*masterBean bean= new masterBean();bean.setusername(username);bean.setpassword(password);RequestDispatcher requestDispat= null;

loginDAO logdao= new loginDAO();*/loginDAO dao = new loginDAO();boolean flag= dao.getConnect(username, password);System.out.println("FLAG STATUS"+flag);

if (flag == true){

RequestDispatcher rd = getServletContext().getRequestDispatcher("/home.jsp");

rd.forward(request, response);}else{

Page 90: Project Record 1

request.setAttribute("msg", "Enter correct user name and password");

RequestDispatcher rd = getServletContext().getRequestDispatcher("/index.jsp");

rd.forward(request, response);}

}}

public class login {

public boolean getConnect(String un1,String pw2) {boolean flag=false;

try {System.out.println("databases");

Class.forName("com.mysql.jdbc.Driver");Connection

con=DriverManager.getConnection("jdbc:mysql://localhost:3306/ccshaw","root","");

PreparedStatement pst= con.prepareStatement("select * from login where username=? && password=? ");

pst.setString(1, un1);pst.setString(2, pw2);ResultSet rs= pst.executeQuery();System.out.println("rs

string"+pst.toString());if(rs.first()) {

flag= true;System.out.println(flag);

}} catch (Exception ex) {

Page 91: Project Record 1

ex.printStackTrace();}return flag;

}

}

Main.jsp<%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Welcome to C. C. Shah & Sons</title></head>

<body><%

int val=Integer.parseInt(request.getParameter("val")); %><table width="1213" height="808" border="0"> <tr align="right" > <td height="102" colspan="2" align="left" bgcolor="#00CCCC"><div align="right"><img align="left" alt="" src="logo.png" /> <font color="#800040" size="4">Welcome&nbsp; <strong>admin</strong>&nbsp; |

Page 92: Project Record 1

&nbsp; <a href="home.jsp?val=16">Change Your Password</a>&nbsp; |&nbsp; <a href="login.jsp">Logout</a></font><font size="4"><br /></font></div><div align="right"><font size="4"><br /></font></div><font size="4"><img width="261" height="58" align="right" alt="" src="logo2.png" /></font></td> </tr> <tr align="right"> <td height="50" colspan="2" bgColor="#ac59ff" align="left" valign="middle"><font size="4">&nbsp;&nbsp; <a href="home.jsp?val=1">HOME</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="home.jsp?val=2">CUSTOMER RELATION </a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="home.jsp?val=3">JOB PROCESS</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="home.jsp?val=4">UPDATE JOB</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="home.jsp?val=5">REPORTS</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="home.jsp?val=6">SEARCH</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="home.jsp?val=7">USERS&nbsp;</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="login.jsp">LOGOUT</a></font> </td> </tr> <tr align="right">

Page 93: Project Record 1

<td width="901" height="567" align="left" valign="top"><font size="4">&nbsp;<%if(val==1){ %><jsp:include page="wel.jsp"></jsp:include></font><font size="4">&nbsp;&nbsp; <%} else if(val==2) { %></font> <font size="4"><jsp:include page="viewcust.jsp"></jsp:include></font> <font size="4"><% } else if(val==3) { %></font> <font size="4"><jsp:include page="jobview.jsp"></jsp:include></font> <font size="4"><% } if(val==4) { %></font> <font size="4"><jsp:include page="jobviewin.jsp"></jsp:include></font> <font size="4"><%} else if(val==5) { %></font> <font size="4"><jsp:include page="jobrep.jsp"></jsp:include></font> <font size="4"><%} else if(val==6) { %></font>

Page 94: Project Record 1

<font size="4"><jsp:include page="sear.jsp"></jsp:include></font> <font size="4"><%} else if(val==7) { %></font> <font size="4"><jsp:include page="userview.jsp"></jsp:include></font> <font size="4"><%} else if(val==8) { %> <jsp:include page="jobreg.jsp"></jsp:include><% } else if(val==9) { %></font> <font size="4"><jsp:include page="jobprogrep.jsp"></jsp:include></font> <font size="4"><%}else if(val==10) { %></font> <font size="4"><jsp:include page="jobpenrep.jsp"></jsp:include></font> <font size="4"><%} else if(val==11) { %></font> <font size="4"><jsp:include page="exprep.jsp"></jsp:include></font> <font size="4"><%} else if(val==12) {

Page 95: Project Record 1

%></font> <font size="4"><jsp:include page="custjob.jsp"></jsp:include></font> <font size="4"><%} else if(val==13) { %></font> <font size="4"><jsp:include page="userreg.jsp"></jsp:include></font> <font size="4"><%} else if(val==14) { %></font> <font size="4"><jsp:include page="userview.jsp"></jsp:include></font> <font size="4"><%} else if(val==16) { %></font> <font size="4"><jsp:include page="changepass.jsp"></jsp:include></font> <font size="4"><%} else if(val==15) { %></font> <font size="4"><jsp:include page="custreg.jsp"></jsp:include></font> <font size="4"></font> <%}else if(val==18) { %>

Page 96: Project Record 1

<font size="4"><jsp:include page="mail.jsp"></jsp:include></font> <font size="4"><%} else if(val==17) { %> <font size="4"><jsp:include page="login.jsp"></jsp:include></font> <font size="4"><%} else if(val==19) { %> <font size="4"><jsp:include page="update.jsp"></jsp:include></font> <font size="4"><%}%> <font size="4"><br /></font></td> <td width="296" valign="top" bgColor="#d3d3d3" ><font size="4">&nbsp; <%if(val==2||val==15) { %></font> <font size="4"><jsp:include page="custcont.jsp"></jsp:include></font> <font size="4"><% }else if(val==8||val==3||val==4) { %></font> <font size="4"><jsp:include page="joboper.jsp"></jsp:include></font> <font size="4"><%} if(val==4) { %></font> <!--<jsp:include page="viewcust.jsp"></jsp:include>-->

Page 97: Project Record 1

<font size="4"><%} else if(val==5||val==9||val==10||val==11) { %></font> <font size="4"><jsp:include page="repoper.jsp"></jsp:include></font> <font size="4"><%} else if(val==7||val==13||val==14) { %></font> <font size="4"><jsp:include page="useroper.jsp"></jsp:include></font> <font size="4"><%} %></font> </td> </tr> <tr> <td colspan="2" bgColor="#dbdbdb" align="right"><font size="4">&nbsp;</font></td> </tr></table></body></html>

Jobprocess.jsp<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>

Page 98: Project Record 1

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>My JSP 'custjob.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"> <meta http-equiv="keywords"

content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">-->

</head> <body><u><u><u><u><strong><font size="5">Customers Job Order Report&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; </font></strong><br></u></u></u></u><br><br><br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; From Date :&nbsp;&nbsp;&nbsp; <input type="text" maxlength="25" size="25" name="datefrom">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; To&nbsp; Date&nbsp; :&nbsp; <input type="text" maxlength="25" size="25" name="dateto"> &nbsp;&nbsp; <input type="submit" value="View Report" name="btsub"> &nbsp; <br><br></body>

Page 99: Project Record 1

</html>

Main.cssbody {

margin-left: 0px;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;

}

.body_text {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }

.top_link {font-family: Arial, Helvetica, sans-serif; font-size: 13px; }.top_link a:link {font-family: Arial, Helvetica, sans-serif; font-size: 13px; text-decoration:underline; color:#666666; }.top_link a:hover {font-family: Arial, Helvetica, sans-serif; font-size: 13px; color:#666666; }.top_link a:visited {font-family: Arial, Helvetica, sans-serif; font-size: 13px; text-decoration:underline; color:#666666; }

/* Menu */

#menu {width: 800px;height: 32px;margin: 0 auto;float:left;

}

#menu ul {margin: 0;padding: 0;

Page 100: Project Record 1

list-style: none;}

#menu li {display: inline;

}

#menu a {display: block;float: left;margin: 0 7px 0 0;padding: 8px 10px 8px 10px;border: none;text-decoration: none;font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 13px;color: #000000;background-color:#80BEF3;

}

#menu a:hover {background-color:#4A89AA;margin: 0 7px 0 0;padding: 8px 10px 8px 10px;color: #FFFFFF;

}

#menu .current_page_item a {background-color:#4A89AA;margin: 0 7px 0 0;padding: 8px 10px 8px 10px;color: #FFFFFF;

}

Page 101: Project Record 1

/* Menu */

#menu1 {width: 1024px;height: 32px;margin: 0 auto;float:left;

}

#menu1 ul {margin: 0;padding: 0;list-style: none;float:left;

}

#menu1 li {display: inline;float:left;

}

#menu1 a {display: block;float: left;margin: 0 0 0 0;padding: 8px 20px 8px 20px;border: none;text-decoration: none;font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 13px;color: #FFFFFF;background-color:#4A89AA;

}

Page 102: Project Record 1

#menu1 a:hover {background:url(images/hover1.gif) center no-repeat;padding: 8px 20px 8px 20px;color: #FFFFFF;

}

#menu1 .current_page_item a {padding: 8px 20px 8px 20px;background:url(images/hover1.gif) center no-repeat;font-weight:bold;color: #FFFFFF;font-weight:bold;

}

.right_menu {background:url(images/right_menu.gif) repeat-y;background-color:#F6F6F6;

}

.right_menu_link {background:url(images/link_bg1.png) no-repeat;height:36px;width:230px;padding-left:35px;font-family: Verdana, Arial, Helvetica, sans-serif;

font-size: 12px;font-weight:bold;

}.right_menu_link a:link {

text-decoration:none;color:#000000;

}.right_menu_link a:hover {

text-decoration:underline;

Page 103: Project Record 1

}.right_menu_link a:visited {

text-decoration:none;color:#000000;

}

.page_title {font-family: Arial, Helvetica, sans-serif;font-size: 28px;font-weight: bold;

}

/* Data Table */table.tgrid { border-left: 0px solid;}

table.tgrid td { border:0px solid; border-top:none; border-left:none; border-bottom:1px solid; border-bottom-color:#ECEAEA;}

table.tgrid th { color: #FFF; font-size: 12px; font-weight:bold;}

Page 104: Project Record 1

table.tgrid, table.tgrid td, table.tgrid th { border-color:#ADADAD; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;}

/* Table headings */table.tgrid th { background:#80BEF3;; color:#000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px;}

table.tgrid th a, table.tgrid th a:hover { color:#000; text-decoration:underline;}

/* row highlighting on hover */.tgrid tr:hover td { background-color: #F6F6F6; }

/* Alt rows used on most data tables */.row1 { background-color: #F4FAFF; }.row2 { background-color: #FFFFFF; }

/* auto-highlight */.row1.highlight td,.row2.highlight td { background-color: #FFFFDD;}

/* Data Table */

Page 105: Project Record 1

table.tgrid1 { border-color:#80BEF3; border: 2px solid ; }

table.tgrid1 td { border:0px solid; border-top:none; border-left:none;}

table.tgrid1 th { color: #FFF; font-size: 12px; font-weight:bold;}

table.tgrid1, table.tgrid1 td, table.tgrid1 th { border-color:#ADADAD; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;}

/* Table headings */table.tgrid1 th { background:#80BEF3; color:#000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px;}

table.tgrid1 th a, table.tgrid1 th a:hover {

Page 106: Project Record 1

color:#000; text-decoration:underline;}

/* Data Table */table.tgrid2 { border-top:2px solid; border-top-color:#ECEAEA; border-bottom:2px solid; border-bottom-color:#ECEAEA;}

table.tgrid2 td { border:0px solid; border-top:none; border-left:none; border-bottom:1px solid; border-bottom-color:#ECEAEA;}

table.tgrid2 th { color: #FFF; font-size: 12px; font-weight:bold; border-bottom:2px solid; border-bottom-color:#ECEAEA;}

table.tgrid2, table.tgrid2 td, table.tgrid2 th { border-color:#ADADAD; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;}

Page 107: Project Record 1

/* Table headings */table.tgrid2 th { background:#F1F1F1; color:#000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px;}

table.tgrid2 th a, table.tgrid2 th a:hover { color:#000; text-decoration:underline;}

.white_text_14px {font-family: Verdana, Arial, Helvetica, sans-serif;font-weight: bold;font-size: 14px;color: #FFFFFF;

}

/* Text Box */.table_text_10px {

FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #303030; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif}.table_text_11px {

FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #303030; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif}.table_text_12px {

Page 108: Project Record 1

FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #303030; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif}

/* Buttons */.button, .button2 { font-family: Arial, Helvetica, sans-serif; font-size: 11px; font-weight: bold;

background-image:url(images/but_bg.png);padding: 2px 0 2px 0;

margin: 5px;}.button { border: 1px solid;}Calendar.js// default settinsvar A_TCALDEF = {

'months' : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],

'weekdays' : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],'yearscroll': true, // show year scroller'weekstart': 0, // first day of week: 0-Su or 1-Mo'centyear' : 70, // 2 digit years less than 'centyear' are in 20xx,

othewise in 19xx.'imgpath' : 'img/' // directory with calendar images

}// date parsing functionfunction f_tcalParseDate (s_date) {

var re_date = /^\s*(\d{1,2})\-(\d{1,2})\-(\d{2,4})\s*$/;if (!re_date.exec(s_date))

Page 109: Project Record 1

return alert ("Invalid date: '" + s_date + "'.\nAccepted format is dd-mm-yyyy.")

var n_day = Number(RegExp.$1),n_month = Number(RegExp.$2),n_year = Number(RegExp.$3);

if (n_year < 100)n_year += (n_year < this.a_tpl.centyear ? 2000 : 1900);

if (n_month < 1 || n_month > 12)return alert ("Invalid month value: '" + n_month + "'.\

nAllowed range is 01-12.");var d_numdays = new Date(n_year, n_month, 0);if (n_day > d_numdays.getDate())

return alert("Invalid day of month value: '" + n_day + "'.\nAllowed range for selected month is 01 - " + d_numdays.getDate() + ".");

return new Date (n_year, n_month - 1, n_day);}// date generating functionfunction f_tcalGenerDate (d_date) {

return ( (d_date.getDate() < 10 ? '0' : '') + d_date.getDate() +

"-"+ (d_date.getMonth() < 9 ? '0' : '') + (d_date.getMonth()

+ 1) + "-"+ d_date.getFullYear()

);}

// implementationfunction tcal (a_cfg, a_tpl) {

// apply default template if not specified

Page 110: Project Record 1

if (!a_tpl)a_tpl = A_TCALDEF;

// register in global collectionsif (!window.A_TCALS)

window.A_TCALS = [];if (!window.A_TCALSIDX)

window.A_TCALSIDX = [];

this.s_id = a_cfg.id ? a_cfg.id : A_TCALS.length;window.A_TCALS[this.s_id] = this;window.A_TCALSIDX[window.A_TCALSIDX.length] =

this;

// assign methodsthis.f_show = f_tcalShow;this.f_hide = f_tcalHide;this.f_toggle = f_tcalToggle;this.f_update = f_tcalUpdate;this.f_relDate = f_tcalRelDate;this.f_parseDate = f_tcalParseDate;this.f_generDate = f_tcalGenerDate;

// create calendar iconthis.s_iconId = 'tcalico_' + this.s_id;this.e_icon = f_getElement(this.s_iconId);if (!this.e_icon) {

document.write('<img src="' + a_tpl.imgpath + 'cal.gif" id="' + this.s_iconId + '" onclick="A_TCALS[\'' + this.s_id + '\'].f_toggle()" class="tcalIcon" alt="Open Calendar" />');

this.e_icon = f_getElement(this.s_iconId);}// save received parametersthis.a_cfg = a_cfg;this.a_tpl = a_tpl;

Page 111: Project Record 1

}

function f_tcalShow (d_date) {

// find input fieldif (!this.a_cfg.controlname)

throw("TC: control name is not specified");if (this.a_cfg.formname) {

var e_form = document.forms[this.a_cfg.formname];if (!e_form)

throw("TC: form '" + this.a_cfg.formname + "' can not be found");

this.e_input = e_form.elements[this.a_cfg.controlname];

}else

this.e_input = f_getElement(this.a_cfg.controlname);

if (!this.e_input || !this.e_input.tagName || this.e_input.tagName != 'INPUT')

throw("TC: element '" + this.a_cfg.controlname + "' does not exist in "

+ (this.a_cfg.formname ? "form '" + this.a_cfg.controlname + "'" : 'this document'));

// dynamically create HTML elements if neededthis.e_div = f_getElement('tcal');if (!this.e_div) {

this.e_div = document.createElement("DIV");this.e_div.id = 'tcal';document.body.appendChild(this.e_div);

}this.e_shade = f_getElement('tcalShade');if (!this.e_shade) {

Page 112: Project Record 1

this.e_shade = document.createElement("DIV");this.e_shade.id = 'tcalShade';document.body.appendChild(this.e_shade);

}this.e_iframe = f_getElement('tcalIF')if (b_ieFix && !this.e_iframe) {

this.e_iframe = document.createElement("IFRAME");this.e_iframe.style.filter = 'alpha(opacity=0)';this.e_iframe.id = 'tcalIF';this.e_iframe.src = this.a_tpl.imgpath + 'pixel.gif';document.body.appendChild(this.e_iframe);

}

// hide all calendarsf_tcalHideAll();

// generate HTML and show calendarthis.e_icon = f_getElement(this.s_iconId);if (!this.f_update())

return;

this.e_div.style.visibility = 'visible';this.e_shade.style.visibility = 'visible';if (this.e_iframe)

this.e_iframe.style.visibility = 'visible';

// change icon and statusthis.e_icon.src = this.a_tpl.imgpath + 'no_cal.gif';this.e_icon.title = 'Close Calendar';this.b_visible = true;

}

function f_tcalHide (n_date) {if (n_date)

Page 113: Project Record 1

this.e_input.value = this.f_generDate(new Date(n_date));

// no action if not visibleif (!this.b_visible)

return;

// hide elementsif (this.e_iframe)

this.e_iframe.style.visibility = 'hidden';if (this.e_shade)

this.e_shade.style.visibility = 'hidden';this.e_div.style.visibility = 'hidden';

// change icon and statusthis.e_icon = f_getElement(this.s_iconId);this.e_icon.src = this.a_tpl.imgpath + 'cal.gif';this.e_icon.title = 'Open Calendar';this.b_visible = false;

}

function f_tcalToggle () {return this.b_visible ? this.f_hide() : this.f_show();

}

function f_tcalUpdate (d_date) {

var d_today = this.a_cfg.today ? this.f_parseDate(this.a_cfg.today) : f_tcalResetTime(new Date());

var d_selected = this.e_input.value == ''? (this.a_cfg.selected ?

this.f_parseDate(this.a_cfg.selected) : d_today): this.f_parseDate(this.e_input.value);

Page 114: Project Record 1

// figure out date to displayif (!d_date)

// selected by defaultd_date = d_selected;

else if (typeof(d_date) == 'number')// get from numberd_date = f_tcalResetTime(new Date(d_date));

else if (typeof(d_date) == 'string')// parse from stringthis.f_parseDate(d_date);

if (!d_date) return false;

// first date to displayvar d_firstday = new Date(d_date);d_firstday.setDate(1);d_firstday.setDate(1 - (7 + d_firstday.getDay() -

this.a_tpl.weekstart) % 7);

var a_class, s_html = '<table class="ctrl"><tbody><tr>'+ (this.a_tpl.yearscroll ? '<td' + this.f_relDate(d_date, -

1, 'y') + ' title="Previous Year"><img src="' + this.a_tpl.imgpath + 'prev_year.gif" /></td>' : '')

+ '<td' + this.f_relDate(d_date, -1) + ' title="Previous Month"><img src="' + this.a_tpl.imgpath + 'prev_mon.gif" /></td><th>'

+ this.a_tpl.months[d_date.getMonth()] + ' ' + d_date.getFullYear()

+ '</th><td' + this.f_relDate(d_date, 1) + ' title="Next Month"><img src="' + this.a_tpl.imgpath + 'next_mon.gif" /></td>'

+ (this.a_tpl.yearscroll ? '<td' + this.f_relDate(d_date, 1, 'y') + ' title="Next Year"><img src="' + this.a_tpl.imgpath + 'next_year.gif" /></td></td>' : '')

Page 115: Project Record 1

+ '</tr></tbody></table><table><tbody><tr class="wd">';

// print weekdays titlesfor (var i = 0; i < 7; i++)

s_html += '<th>' + this.a_tpl.weekdays[(this.a_tpl.weekstart + i) % 7] + '</th>';

s_html += '</tr>' ;

// print calendar tablevar n_date, n_month, d_current = new Date(d_firstday);while (d_current.getMonth() == d_date.getMonth() ||

d_current.getMonth() == d_firstday.getMonth()) {

// print row heders_html +='<tr>';for (var n_wday = 0; n_wday < 7; n_wday++) {

a_class = [];n_date = d_current.getDate();n_month = d_current.getMonth();

// other monthif (d_current.getMonth() != d_date.getMonth())

a_class[a_class.length] = 'othermonth';// weekendif (d_current.getDay() == 0 || d_current.getDay()

== 6)a_class[a_class.length] = 'weekend';

// todayif (d_current.valueOf() == d_today.valueOf())

a_class[a_class.length] = 'today';// selectedif (d_current.valueOf() == d_selected.valueOf())

Page 116: Project Record 1

a_class[a_class.length] = 'selected';

s_html += '<td onclick="A_TCALS[\'' + this.s_id + '\'].f_hide(' + d_current.valueOf() + ')"' + (a_class.length ? ' class="' + a_class.join(' ') + '">' : '>') + n_date + '</td>'

d_current.setDate(++n_date);while (d_current.getDate() != n_date &&

d_current.getMonth() == n_month) {d_current.setHours(d_current.getHours + 1);d_current = f_tcalResetTime(d_current);

}}// print row footers_html +='</tr>';

}s_html +='</tbody></table>';

// update HTML, positions and sizesthis.e_div.innerHTML = s_html;

var n_width = this.e_div.offsetWidth;var n_height = this.e_div.offsetHeight;var n_top = f_getPosition (this.e_icon, 'Top') +

this.e_icon.offsetHeight;var n_left = f_getPosition (this.e_icon, 'Left') - n_width +

this.e_icon.offsetWidth;if (n_left < 0) n_left = 0;

this.e_div.style.left = n_left + 'px';this.e_div.style.top = n_top + 'px';

this.e_shade.style.width = (n_width + 8) + 'px';this.e_shade.style.left = (n_left - 1) + 'px';

Page 117: Project Record 1

this.e_shade.style.top = (n_top - 1) + 'px';this.e_shade.innerHTML = b_ieFix

? '<table><tbody><tr><td rowspan="2" colspan="2" width="6"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td><td width="7" height="7" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + this.a_tpl.imgpath + 'shade_tr.png\', sizingMethod=\'scale\');"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td></tr><tr><td height="' + (n_height - 7) + '" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + this.a_tpl.imgpath + 'shade_mr.png\', sizingMethod=\'scale\');"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td></tr><tr><td width="7" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + this.a_tpl.imgpath + 'shade_bl.png\', sizingMethod=\'scale\');"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td><td style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + this.a_tpl.imgpath + 'shade_bm.png\', sizingMethod=\'scale\');" height="7" align="left"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td><td style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + this.a_tpl.imgpath + 'shade_br.png\', sizingMethod=\'scale\');"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td></tr><tbody></table>'

: '<table><tbody><tr><td rowspan="2" width="6"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td><td rowspan="2"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td><td width="7" height="7"><img src="' + this.a_tpl.imgpath + 'shade_tr.png"></td></tr><tr><td background="' + this.a_tpl.imgpath + 'shade_mr.png" height="' + (n_height - 7) + '"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td></tr><tr><td><img src="' + this.a_tpl.imgpath + 'shade_bl.png"></td><td background="' + this.a_tpl.imgpath +

Page 118: Project Record 1

'shade_bm.png" height="7" align="left"><img src="' + this.a_tpl.imgpath + 'pixel.gif"></td><td><img src="' + this.a_tpl.imgpath + 'shade_br.png"></td></tr><tbody></table>';

if (this.e_iframe) {this.e_iframe.style.left = n_left + 'px';this.e_iframe.style.top = n_top + 'px';this.e_iframe.style.width = (n_width + 6) + 'px';this.e_iframe.style.height = (n_height + 6) +'px';

}return true;

}

function f_getPosition (e_elemRef, s_coord) {var n_pos = 0, n_offset,

e_elem = e_elemRef;

while (e_elem) {n_offset = e_elem["offset" + s_coord];n_pos += n_offset;e_elem = e_elem.offsetParent;

}// margin correction in some browsersif (b_ieMac)

n_pos += parseInt(document.body[s_coord.toLowerCase() + 'Margin']);

else if (b_safari)n_pos -= n_offset;

e_elem = e_elemRef;while (e_elem != document.body) {

n_offset = e_elem["scroll" + s_coord];if (n_offset && e_elem.style.overflow == 'scroll')

n_pos -= n_offset;

Page 119: Project Record 1

e_elem = e_elem.parentNode;}return n_pos;

}

function f_tcalRelDate (d_date, d_diff, s_units) {var s_units = (s_units == 'y' ? 'FullYear' : 'Month');var d_result = new Date(d_date);d_result['set' + s_units](d_date['get' + s_units]() + d_diff);if (d_result.getDate() != d_date.getDate())

d_result.setDate(0);return ' onclick="A_TCALS[\'' + this.s_id + '\'].f_update(' +

d_result.valueOf() + ')"';}

function f_tcalHideAll () {for (var i = 0; i < window.A_TCALSIDX.length; i++)

window.A_TCALSIDX[i].f_hide();}

function f_tcalResetTime (d_date) {d_date.setHours(0);d_date.setMinutes(0);d_date.setSeconds(0);d_date.setMilliseconds(0);return d_date;

}

f_getElement = document.all ?function (s_id) { return document.all[s_id] } :function (s_id) { return document.getElementById(s_id) };

if (document.addEventListener)window.addEventListener('scroll', f_tcalHideAll, false);

Page 120: Project Record 1

if (window.attachEvent)window.attachEvent('onscroll', f_tcalHideAll);

// global variablesvar s_userAgent = navigator.userAgent.toLowerCase(),

re_webkit = /WebKit\/(\d+)/i;var b_mac = s_userAgent.indexOf('mac') != -1,

b_ie5 = s_userAgent.indexOf('msie 5') != -1,b_ie6 = s_userAgent.indexOf('msie 6') != -1 &&

s_userAgent.indexOf('opera') == -1;var b_ieFix = b_ie5 || b_ie6,

b_ieMac = b_mac && b_ie5,b_safari = b_mac && re_webkit.exec(s_userAgent) &&

Number(RegExp.$1) < 500;customer.jsp<%@ page language="java" %><%@ page import="java.sql.*" %><%@ page import="javax.servlet.http.*" %><%@ page import="javax.servlet.*" %><%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head>

<body><form method="post" action="home.jsp?val=18"> <%String cri=request.getParameter("cbcriteria");String key=request.getParameter("tfkey");//int id=request.getParameter("id");

Page 121: Project Record 1

out.println(cri);Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con=DriverManager.getConnection("jdbc:odbc:ccss","root","root");

Statement stmt=con.createStatement();if(cri.equals("Customer Name")){ResultSet rs=stmt.executeQuery("select * from cust_reg

where cname='"+key+"'");//ResultSet rs=stmt.executeQuery("select * from cust_reg");

%> <u><strong><font size="5">Customer Relation...... &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></strong><br /> </u> <p align="center">Active Customer List - Total Customer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

Page 122: Project Record 1

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" value="Email To Customer" name="btcust" /></p> <table width="1124" height="130" border="0"> <tr> <td width="125" height="36" align="center" bgcolor="#00c161"><font size="3"><strong>Cust No </strong></font></td> <td width="232" align="center" bgcolor="#00c161"><font size="3"><strong>Customer Name </strong></font></td> <td width="216" align="center" bgcolor="#00c161"><font size="3"><strong>Telephone No </strong></font></td> <td width="189" align="center" bgcolor="#00c161"><font size="3"><strong>Mobile No </strong></font></td> <td width="153" align="center" bgcolor="#00c161"><font size="3"><strong>Fax No </strong></font></td> <td width="183" align="center" bgcolor="#00c161"><font size="3"><strong>Email</strong></font></td> </tr><% while(rs.next())

{String id=rs.getString(1);String name=rs.getString(2);int telstd=rs.getInt(3);int tel=rs.getInt(4);int mob=rs.getInt(5);int fstd=rs.getInt(6);

int fax=rs.getInt(7);

Page 123: Project Record 1

String mail=rs.getString(8);//out.println(id+" "+name);

%> <tr> <td height="25" align="center" valign="middle"><%= id %></td> <td valign="middle" align="center"><%= name %></td> <td valign="middle" align="center"><%= telstd %>-<%= tel %> </td> <td align="center" valign="middle"><%= mob %></td> <td align="center" valign="middle"><%= fstd %>-<%= fax %></td> <td align="center" valign="middle"><%= mail %></td> </tr> <%} } else if(cri.equals("Invoice ID"))

{ResultSet rs=stmt.executeQuery("select * from jobreg where

cname='"+key+"'");//ResultSet rs=stmt.executeQuery("select * from cust_reg");

%> <u><strong><font size="5">Customer Relation...... &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

Page 124: Project Record 1

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></strong><br /> </u> <p align="center">Active Customer List - Total Customer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" value="Email To Customer" name="btcust" /></p> <table width="1124" height="130" border="0"> <tr> <td width="125" height="36" align="center" bgcolor="#00c161"><font size="3"><strong>Cust No </strong></font></td> <td width="232" align="center" bgcolor="#00c161"><font size="3"><strong>Customer Name </strong></font></td> <td width="216" align="center" bgcolor="#00c161"><font size="3"><strong>Telephone No </strong></font></td> <td width="189" align="center" bgcolor="#00c161"><font size="3"><strong>Mobile No </strong></font></td>

Page 125: Project Record 1

<td width="153" align="center" bgcolor="#00c161"><font size="3"><strong>Fax No </strong></font></td> <td width="183" align="center" bgcolor="#00c161"><font size="3"><strong>Email</strong></font></td> </tr><% while(rs.next())

{String id=rs.getString(1);String name=rs.getString(2);int telstd=rs.getInt(3);int tel=rs.getInt(4);int mob=rs.getInt(5);int fstd=rs.getInt(6);

int fax=rs.getInt(7);String mail=rs.getString(8);//out.println(id+" "+name);

%> <tr> <td height="25" align="center" valign="middle"><%= id %></td> <td valign="middle" align="center"><%= name %></td> <td valign="middle" align="center"><%= telstd %>-<%= tel %> </td> <td align="center" valign="middle"><%= mob %></td> <td align="center" valign="middle"><%= fstd %>-<%= fax %></td> <td align="center" valign="middle"><%= mail %></td> </tr> <%} }%>

Page 126: Project Record 1

<tr> <td height="29">&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr> <td height="30">&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr></table> <h1>&nbsp;</h1></form></body></html>

Page 127: Project Record 1

TESTING

Page 128: Project Record 1

7.0 Testing

7.1 Unit Testing

Unit testing focuses verification effort on the smallest unit of software design, the

software component or module. Using the component level design description as a guide,

important control paths are tested to uncover errors within the boundary of the module.

The relative complexity of tests and the errors those tests uncover is limited by the

constrained scope established for unit testing. The unit test focuses on the internal

processing logic and datastructures within the boundaries of a component.

TEST – ID UTST01

UNIT TESTED Requesting the customer details to add.

PURPOSE To test whether the system can get input

from the admin and it stored on the

Page 129: Project Record 1

database.

PRE-REQUIREMENT User must enter the details before adding.

TEST DATA http://local host:8084/Main/Jobcreation.jsp

TEST STATUS Pass

TEST RESULT In the above page which containing the

details of the customer is successfully

added to the database.

TEST – ID UTST02

UNIT TESTED Edit the customer details.

PURPOSE To test whether the system can find the

appropriate customer details.

PRE-REQUIREMENT Keyword should be the something

TEST DATA 2345

TEST STATUS Pass

TEST RESULT The site displayed all the details for the

above customer id number.

7.2 System Testing

The system testing is used to find the integration of each module in the system. It

is also tested to find the discrepancies between the system and its original objectives,

current specifications and system documentation. System testing is a series of different

Page 130: Project Record 1

tests whose primary purpose is to fully exercise the computer based system. Testing is

used to find the compatability between the various program units available in the system.

The system test will focus on the behavior of the application and system as a

whole. Scenarios will be executed

Within the application

Through file transfers

Reports genaration

Other outputs or data checks

To verify that the system successfully accomoplishes the functions included in the

scope of the project

Test cases and scripts / scenarios should be mapped to business requirements

oulined in the User Requirements document. This will ensure that all

requirements have been addressed and tested.

TEST – ID ITST01

UNIT TESTED Adding all details of the single staff.

PURPOSE To test whether the system can get all the

details as input and it stored successfully in

database.

PRE-REQUIREMENT User must enter the details for a single

customer.

TEST DATA 2345

TEST STATUS Pass

TEST RESULT After entering all the details of a single

Page 131: Project Record 1

customer successfully stored in the

appropriate databases which are available

in our system.

7.3 Integration Testing

Integration testing is a systematic testin for constructing the program structure,

while at the same time conducting test to uncover errors associated within the interface.

Bottom-up integration is used for this phase. It begins construction and testing with

atomic modules. This strategy is implemented with the following steps.

Low-level modules are combined to form clusters that perform a specific software

sub function.

The cluster is tested .

Drivers are removed and clusters are combined moving upward in the program

structure.

TEST – ID VTST01

UNIT TESTED Requesting the Valid customer id number.

PURPOSE To test whether the system can only get the

valid input from the Admin.

PRE-REQUIREMENT Valid customer ID has to be entered.

TEST DATA 2345

TEST STATUS Pass

TEST RESULT “Enter the valid customer Id” error is

displayed.

Page 132: Project Record 1

7.4 Validation Testing

This provides the final assurance that the software meets all funtional, behavioral

and performance requirements. The software is completely assembled as a package.

Validation succeeds when the software functions in which the user expects.

7.5 Acceptance Testing

There are four categories of tests that a programmer will typically performed on a

program unit.

Functional Tests

Performance Tests

Stress Tests

Structural Tests

Functional testing, the code is tested with nominal input values for which the

expected results are known. I have tested it by giving characters to a quantity

number value. It shows me an error that it can contain only numerals. In this way,

I have tested with a number of inputs to my project fields.

Performance testing is applied to determine the evaluation speed on various

parts; memory utilization, throughput, and response time and device utilization of

various program units are tested. This is achieved by using the efficient query

analysis in the data base retrieval.

Stress testing, which is designed to intentionally, to break the unit, is done.

This testing is performed to find the limitations of the system developed by us.

This is achieved , as I tested the individual units first. As they have shown no

error, I integrate all of them.

Structure testing that is concerned with exercising the internal logic of a

program and travelling particular execution paths. I have structured my project by

having various fucntional calls that are invoked by different modules and in

different ways. This reduces the replication.

7.6 Boundary Testing

Page 133: Project Record 1

The Systematic testing of error handling is called boundary testing During your

pedal-to-the –floor, no-test-plan testing project, boundary testing refers to the testing of

forms and data inputs, starting from known good values, and progressing through

reasonable but invalid inputs all the way to known extreme and invalid values. The logic

for boundary testing forms is straightforward:start with known good and valid values

because if the system chokes on that, it’s not ready for testing. Move through expected

bad values because if those fail, the system isn’t ready for testing. Try reasonable and

predictable mistakes because users are likely to make such mistakes – we all screw up on

forms eventually. Then start hammering on the form logic with extreme errors and crazy

inputs in order to catch problems that might affect the site’s functioning.

7.7 Good Values

Enter in data formatted as the interface requires. Include all required fields. Use

valid and current information (what “valid and current” means will depend on the test

system, so some systems will have a set of data points that are valid for the context of

that test systems). Do not try to cause errors.

7.8 Expected Bad Values

Some invalid data entries are intrinsic to the interface and concepts domain. For

examples, any credit card information form will expect expired credit card dates –and

should trap for them. Every form that specifies some fields as required should trap for

those fields being left blank. Every form that has drop-down menus that default to an

instruction(“select one”,etc.) should trap for that instruction. What about punctuation in

name fields?

7.9 Stress Testing

Testing conducted to evaluate a system or component at or beyond the limits of its

specified requirements. Syn: testing, boundary value testing, structural. (1) Testing that

takes into account the internal mechanism [structure] of a system or component. Types

Page 134: Project Record 1

include branch testing, path testing, statement testing. (2) Testing to insure each program

statement is made to execute during testing and that each program statement performs its

intended fucntion. Contrast with functional testing. Syn: White-box testing, glass-box

testing, logic driven testing.

IMPLEMENTATION

Page 135: Project Record 1

8.0 Implementation

8.1 Problem faced:

We had problem while design the pre-models. It is too diffcult to gather the pre

model requirements and the ways to implement the designs. Also during database

connection we feel difficult to connect the database. Initally we had difficulty to track the

records by using search control, but later after applying proper queries we obtained the

necessary result.

8.2 Lesson Learnt

By learning through this project we can able to create any queries and the way to

connect both front-end and back-end . We have learned many new ideas by this project.

Page 136: Project Record 1

FUTURE ENHANCEMENT

Page 137: Project Record 1

9.0 FUTURE ENHANCEMENT

In future, there is an alert to the customer’s mobile number where the material is located.

Page 138: Project Record 1

BIBLIOGRAPHY

Page 139: Project Record 1

10.0 BIBLIOGRAPHY

Websites

www.google.com www.wikipedia.org www.w3schools.com

References

Professional Java Server Programming J2EE, 1.3 Edition

Author: Ramesh Nagappan

Page 140: Project Record 1

APPENDIX

Page 141: Project Record 1

11.0 APPENDIX

Login.jsp

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Welcome to C. C. Shah&amp;Sons :: Fright Management</title><style type="text/css"><!--

--></style><link href="../../../wamp/www/joe/main.css" rel="stylesheet" type="text/css" /></head>

<body><div align="center"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr>

Page 142: Project Record 1

<td height="98" bgcolor="#DCF2FE"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td><div align="right"> <table width="50%" border="0" cellspacing="0" cellpadding="0"> <tr> <td>&nbsp;</td> </tr> </table> </div></td> </tr> <tr> <td height="56"><table width="100%" border="0" cellspacing="0" cellpadding="0"> </table></td> </tr> </table></td> </tr> <tr> <td height="35" bgcolor="#4A89AA"><div align="center" class="white_text_14px">Authorised User Area </div></td> </tr> <tr> <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr>

Page 143: Project Record 1

<td width="3%">&nbsp;</td> <td width="94%"><div align="center"><span class="page_title">Please Login </span> </div> <hr /> <br /> <form id="form1" name="form1" method="post" action="action.controller"> <table width="46%" border="0" align="center" cellpadding="2" cellspacing="0" class="tgrid1"> <tbody> <tr id="611307"> <td height="18" nowrap="nowrap">&nbsp;</td> <td nowrap="nowrap">&nbsp;</td> <td nowrap="nowrap">&nbsp;</td> </tr> <tr id="611307"> <td width="248" height="28" nowrap="nowrap"><div align="right">Login Name </div></td> <td width="19" nowrap="nowrap"><div align="center">:</div></td> <td width="262" nowrap="nowrap"><div align="left"> <input name="username" type="text" class="table_text_11px" id="username" /> </div></td> </tr> <tr id="611307"> <td height="28" nowrap="nowrap"><div align="right">Password</div></td> <td nowrap="nowrap"><div align="center">:</div></td> <td nowrap="nowrap"><div align="left"> <input name="pass" type="password" class="table_text_11px" id="pass" />

Page 144: Project Record 1

</div></td> </tr> <tr id="611307"> <td height="37" colspan="3" nowrap="nowrap"><div align="center"><input name="Submit" type="submit" class="button" value=" Login " /> </div></td> </tr> <tr id="611307"> <td height="18" colspan="3" nowrap="nowrap">&nbsp;</td> </tr> </tbody> </table> </form> <p>&nbsp;</p></td> <td width="3%">&nbsp;</td> </tr> </table></td> </tr> </table></div></body></html>

Controller.java

public class controller extends HttpServlet{

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

masterCon(request,response);

Page 145: Project Record 1

System.out.println("doget");}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("dopost");masterCon(request,response);

}