navneet file

Upload: navneet-kaur

Post on 07-Apr-2018

317 views

Category:

Documents


1 download

TRANSCRIPT

  • 8/6/2019 Navneet File

    1/75

    INTRODUCTION

    A Transportation Management System (TMS) is a software that is aimed at helping business

    and organizations to effectively manage its logistics supply chain, it helps organizing and

    tracking the movements of the products and materials. A Transportation Management

    System also helps in managing shipping units, outbound and inbound shipment scheduling,

    transportation mode selection, freight bill auditing, payment and processing of loss and

    damage claims etc.

    Some of the basic functions and ad vantages of a transportation management system are

    shipment load planning and shipment routing optimization, routing guide, execution

    management and carrier communication, shipment tracking, freight bill audit & payment,

    business intelligence and reporting , claims management, returns management, appointment

    scheduling etc.

    The shipment load planning and routing optimization helps the shippers to plan the loading

    and then find a suitable and optimized routes as per their requirements. This helps to save a

    lot of money and time and as a results makes it easy for the shippers to manage.

    The routing guide is another feature of a TMS which helps the vendors to get an idea about

    the inbound routing guides for better cost management. The execution management and

    carrier communication helps the shippers to find the tools needed to help them in selecting

    the right carriers along with shipping cost calculation. The TMS also helps you in getting an

    accurate freight bill audit and also in implementing the payment part. A s with any other tools,

    a transportation management solution also offers business intelligence reporting, which

    helps you to get more idea about your business and ways to improve it.

    A TMS or a logistics management system can also be used as an effective v ehicle routing

    software which helps you in the effective utilization of vehicles used for your transportation

    purposes. It identifies areas where the vehicles can be utilized effectively without spending

    much time and money. Since the TMS identifies the sh ortest route, it will result in reduced

    fuel consumption and enhanced fleet management and utilization.

  • 8/6/2019 Navneet File

    2/75

    F or small companies which have a remarkable small transportation operations, the use of

    such a tool is not recommended, as they might not have any diffi culty in managing all their

    transportation activities manually. But for a big company with a large number of vehicles and

    transportation activities, it is a better idea to avail the services of a transport management

    system, as it will ease their managemen t activities and help them to save a lot money.

    More and more companies have started using logistic management system and hence the

    demand and competition have increased considerably. So the number of companies

    providing customized transport management systems has increased. Some of the software

    offered are not having the expected quality and one must be sure to select the right and the

    best transportation management system for their company. There are also many software

    having advanced options such as GPS vehicle tracking or GPS fleet tracking system. So

    while purchasing the transportation scheduling software, make sure that you have spend the

    money on the right tool.

    INTRODUCTION TO TRANSPORTATION PROBLEM

    Transportation problem is a special variety of classical linear-programming problem. In this

    model, shipments of goods from few locations (or origins) to other locations (or destinations)

    are planned. Due to specific characteristics of transportation problems, special approaches

    are available to solve them.

    Let us understand the transportation problem through an example. A company has three

    bread manufacturing units : located at F aridabad, Noida and Gurgaon. Each unit has a

    limited capacity to produce. Bread -cartons are transported to four warehouses located in

    South, West, East and North Delhi for supply in different markets of Delhi. Each warehouse

    has a known maximum demand. Each manufacturing unit can provide goods to any

    destination, but the cost of transportation would be different for each combi nation of

    manufacturing unit and destination. The objective is to provide the following information to

    the decision makers:

    (1) What quality should be transported from a manufacturing unit to all possible

    destination?

  • 8/6/2019 Navneet File

    3/75

    (2) What would be the cost for this allocation?

    The objective is to make the allocations in such a way that total cost of shipment is

    minimum.

    A transportation problem

    Transtutors is the best place to get answers to all your doubts regarding the transportation

    problem and uses of linear programming to minimize the total cost of shipment with

    examples. You can submit your school, college or university level homework or assignment

    to us and we will make sure that you get the answers you need which are timely and also

    cost effective. Our tutors are available round the clock to help you out in any way with

    industrial management.

  • 8/6/2019 Navneet File

    4/75

    Transtutors has a vast panel of experienced industrial ma nagement tutors who specialize in

    the transportation problem and can explain the different concepts to you effectively. You

    can also interact directly with our industrial management tutors for a one to one session and

    get answers to all your problems in yo ur school, college or university level industrial

    management . Our tutors will make sure that you achieve the highest grades for your

    industrial management assignments. We will make sure that you get the best help possible

    for exams such as the AP, AS, A level, GCSE, IGCSE, IB, Round Square etc.

  • 8/6/2019 Navneet File

    5/75

    OBJECTIVES

    y To facilitate the provision of an enhanced public transport system which is punctual,

    reliable, not overcrowded and accessible to all and has greater capacity, especially at

    peak times.y To facilitate greater ease of interchange and higher standards of customer

    information.

    y To maintain productive and effective relationships with the strategic transport

    authorities, operators and policy makers, including the development and

    maintenance of robust contingency plans.

    y To improve the pedestrian experience.

    y To encourage improvements to the safety of all modes of transport.

    y To encourage cycling.

    y To deter breaches of traffic regulations.

    y To facilitate the maximisation of transport cho ice at all times of day.

    y To maintain the traffic flow.

    y To develop the transport system

    y so as to make it less expensive,

    y safe, non-polluting, equipped

    y with facilities, competitive and

    y self-dependent.

    y To make the transport sector

    y efficient, transparent, serviceoriented

    y and effective

  • 8/6/2019 Navneet File

    6/75

  • 8/6/2019 Navneet File

    7/75

  • 8/6/2019 Navneet File

    8/75

    The bottom-up approach starts by the gen eral public, coming up with requests to the

    decision makers, politicians or civil servants to act. If such requests are accepted, the

    executive public administration bodies are again asked to act.

    Probably the less frequent way of starting public administ ration projects is the combined

    way, when executive organs find reserves and start to act on the base of their own initiative

    2.Information gathering :-

    The key part of the system analysis is gathering information about the present system .The

    system analyst must know what information to gather. Where to find it, how to collect it and

    what to make of it. The proper use of the tools for gathering informatio n is the key to

    successful analysis. The tools are traditional interview, questionnaire and on site

    observation. These tools when learned help analyze and assess the effectiveness of the

    present system and provide the ground work for recommending a candida te system.

    3.Preliminary Investigation

    A preliminary investigation begins with the impetus or desire to Change

    The impetus for change can come from a variety of sources including

    Internal Sources

    y The users of the system

    y The Management

    y Legal advice

    y Personnel needs

    y Analysis of the system

    External Sources

    y Customers

    y Government

  • 8/6/2019 Navneet File

    9/75

    y Competition (seizing opportunities)

    y External Audits

    y Unions``

    From a management point of view, a new system may be inspired by a range of possibilities

    including Increased producti vity

    This could be from Bar code readers at checkouts, Robots in assembly

    lines, etc

    Improved Management decision making based on better data provided by the new

    system.

    Real time data can be accessed, and data from various areas can be cross -referenced or

    linked giving the opportunity for better management decisions.

    Strengthening System Control : Ex using computer systems to track baggage more

    completely at international airports, Student cards with bar codes on them that are read by

    readers in every classroom to keep track of students attendance.

    Improve Customer Service: Better and more accurate Bill paying, Better and more

    accurate Invoices to Customers. Provide special services or discounts to categories or

    customers identified under various criteria by the system.

    F or a Systems Analyst to become involved in looking at the existing System they must have

    the necessary Management support and authority to proceed.

    Key issues in the Preliminary Investigation

    1. Emphasis on the User (those who use the system)

    a. One of the main objectives is to provide adequately for the needs of the user as without

    the involvement and co-operation of the user any new system will never work.

    b. The User must be involved at the very beginning and at every stag e.

    c. Some users may have a high level of computer knowledge, others may have none but in

    either case they must be involved from the onset.

    d. The users are needed to provide the authority to find out how the system works. They are

    also vital at the point when a new system is being designed, developed and later tested.

    They will also be involved in the training of other users, and their own training

    e. If the user is a full partner during the whole cycle they will then have the confidence toimplement and use the new system and make it a success rather than jack up

    2. Begin with the Organization Chart.

    a. If there is no chart then the Systems Analysis must create one. It is a hierarchical chart

    showing management by name and by title (S ee King Book Organization Chart p84)

    b. The Analysis must also be aware also that there is an informal organization with its own

  • 8/6/2019 Navneet File

    10/75

    organisational chart with political influences on what might occur. The informal

    organization is how the people sort themselves out in alliances, pecking orders and

    factions and something the informal organization has more influence than the formal one.

    3. Problem Definition

    a. The Analyst and the users of the system must come to a common agreement on what the

    Problem is. This is no easy feat as often the problem turns out to be something different

    that initially envisaged.

    b. There also must be an agreement on the Scope of the problem this means what are the

    clearly defined limits to the problem and/or what is going to be done about it. If the scope

    is too broad the project may never be finished, if too narrow it may not meet the users

    needs.

    c. Establish what the User Needs these will be the Objectives of the new system and this

    will lead to a solution to the problemWhat follows is a subset of the entire Systems Analysis cycle but at a lees rigorous level

    than the real thing. The preliminary Investigation is basically a feasibility study from

    which the decision about whether to proceed further or not will be made .

    4. Evaluation of Preliminary Investigation. The decision on whether to proceed with the

    solution or not will be made according to 3 criteria.

    a. Is a proposed solution Technically feasible - are the resources that are needed actually

    available and will they do the job?

    b. Will the solution be workable for the organization? This is called Operational feasibility.

    Do the Users agree that it would meet the Objectives of the organization.

    c. Is it Cost Effective ? The bottom line is can the organization afford the new system

    both for development, training and at an operational level.

    5. Courses of Action : These are the courses of action based on the feasibility study

    a. Do nothing . Keep the current system for various reasons, which could include the cost of

    the new system may be too large

    b. Modify the Existing System . Perhaps new technology may help.

    c. Develop an entirely New System This means a custom system be created to replace the

    existing system. This would involve the development of custom programs andapplications (software) and the purchasing of new hardware.

    d. Use off the shelf software that is customised to achieve the Objec tives or the

    organization. An example of this might be the MS Access Database customised for a

    specific function. Companies with an IT department may contain personnel who can do

    the customisation of Access or other program, or an outside compa ny can be used for

    this purpose.

  • 8/6/2019 Navneet File

    11/75

    6. The Plan the plan must contain all of the following

    a. The schedule in other words the envisaged time line for the project

    b. The budget how much it will cost. The costs for the next stage the detailed

    investigation should be quite accurate and will mainly be labour costs, but the rest of

    the costing would by necessity be quite rough and labelled as such.

    c. The personnel costs for the business this means the their staff how mush of their time

    will be needed etc

    4.FEASIBILITY STUDY

    F easibility studies aim to objectively and rationally uncover the strengths and weaknesses of

    the existing business or proposed venture, opportunities and threats as presented by the

    environment, the resource s required to carry through, and ultimately the prospects for

    success. In its simplest term, the two criteria to judge feasibility are cost required and value

    to be attained. As such, a well -designed feasibility study should provide a historical

    background of the business or project, description of the product or service, accounting

    statements, details of the operations and management, marketing research and policies,

    financial data, legal requirements and tax obligations. Generally, feasibility studies pre cede

    technical development and project implementation.

    Technology feasibility

    Technological feasibility is carried out to determine whether the company has the capability,

    in terms of software, hardware, personnel and expertise, to handle the completion o f the

    project. QAInfotech has enough resource in all respect viz. software, hardware, personneland expertise. It is achieved by smartly utilizing the resources eg. By creating virtual

    machines, PQuest Images etc. and in case of urgent requirement of human resource it does

    ramp up to fulfill the requirements. So this project is technically feasible .

    Economic feasibility

  • 8/6/2019 Navneet File

    12/75

    Economic analysis is the most frequently used method for evaluating the effectiveness of a

    new system. More commonly known as cost/benefit analysis, the procedure is to determine

    the benefits and savings that are expected from a candidate system and compar e them with

    costs. If benefits outweigh costs, then the decision is made to design and implement the

    system. An entrepreneur must accurately weigh the cost versus benefits before taking an

    action. QAInfotech does cost analysis at the very initial stage of every project. So this project

    is economically feasible .

    Schedule feasibility

    A project will fail if it takes too long to be completed before it is useful. Typically this means

    estimating how long the system will take to develop, and if it can be complete d in a given

    time period using some methods like payback period. Schedule feasibility is a measure of how reasonable the project timetable is. Given our technical expertise, are the project

    deadlines reasonable? Some projects are initiated with specific de adlines. One need to

    determine whether the deadlines are mandatory or desirable. QAInfotech achieves by taking

    daily status report for the internal performance measuring purpose and weakly status report

    to the client. So this project is feasible with respe ct to schedule.

    4.Project Planning and Scheduling

    Project Planning, Project Scheduling

    Project Planning means different things to different people. To some the Project Plan is all

    of the project management documentation: the project definition document, organisation

    chart, quality plan, schedule, change control procedure, risk management strategy, etc. (And

    some use the term Quality Plan to mean all of these.) To others the Project Plan is simply

    the schedule that shows who will do which work tasks and when, and to them Project

    Planning is the act of building this schedule.

  • 8/6/2019 Navneet File

    13/75

  • 8/6/2019 Navneet File

    14/75

  • 8/6/2019 Navneet File

    15/75

    2. External interfaces: - How does the software interact with people, the systems

    hardware, and other hardware and other software?

    3. Performance: - what is the speed availability, response time, recovery time etc. of

    various software functions?

    4. Attributes: -what are considerations for portability, correctness, maintainability, security,

    reliability etc?

    5. Design constraints imposed on implementation: - are there any required standers in

    effect, independent language, policies for database integrity, resources limits, operating

    environments etc?

    Since the SRS has a specific role to play in the software development process, SRS writers

    should be careful not to go beyond the bounds of that role. This means SRS.

    1. Should correctly define all the software requirements. Software may exist because of

    the nature of the tasks to be solve d or because of special characteristics of the project.

    2. Should not describe or implementation data. These should be described in the design

    stage of the project.

    3. Should not imposed additionally contains the software, these are properly specified in

    other documents such as a software quality assurance plan.

    Therefore, a properly writers SRS limited the range of valid design, but does not specify any

    particular design.

    Characteristics of a good SRS

  • 8/6/2019 Navneet File

    16/75

    The SRS should be:

    y Correct

    y Unambiguous

    y Complete

    y Consistent

    y Ranked for importance and / or stability

    y Verifiable

    y Modifiable

    y Traceable

    y Each of the above mentioned characteristics is discussed below:

    [THAY97, IEEE87, IEEE97]

    Correct

    The SRS is correct if, and only if; every requirement stated therein is one that the software

    shall meet. There is no tool or procedure that assures correctness. If the software must

    respond to all button presses within 5 seconds and the SRS is stated that the software shall

    respond to all buttons presses within 10 second , then that requirement is incorrect.

    Un ambiguous

  • 8/6/2019 Navneet File

    17/75

    The SRS is unambiguous if, and only if; every requirement state therein has only one

    interpretation. Each sentence in the SRS should have the unique interpretation. Imagine that

    a sentence is abstracted f rom the SRS, given to ten people who are asked for their

    interpretation. If there more than one such interpretation then that sentence is probably

    ambiguous.

    In cases, where a team used in a particular context could have multiple meanings,

    the team should be included in a glossary where its meaning is made more specific. The

    SRS should be unambiguous to both those who create it and to those who use it. However,

    these groups often do not have the same background and theref ore do not tend to describe

    software requirements in the same way.

    Requirements are often written in natural language (for example,

    English).Natural language is inherently ambiguous. A natural language SRS should be

    reviewed by an independent party to identify ambiguous use of a language so that it can be

    corrected. This can be avoided by using a particular requirement specification language. Its

    language processors automatically detect many lexical, syntactic, and semantic errors.

    Disadvantages is the time required to learn the language which may also not be undertaken

    to the customers/users. Moreover, these languages tend to be better at expressing only

    certain types of requirements and addressing certain types of systems.

    Complete

    The SRS is complete if, and only if; it includes the following elements.

  • 8/6/2019 Navneet File

    18/75

  • 8/6/2019 Navneet File

    19/75

    (b)One requirement may state that A must always B, while another requires that A and

    B occur simultaneously.

    3. Two or more requirements may describe the same real -world object but use different

    terms for that object. F or example, a progra ms request for a user input may be called a

    prompt in one requirement and a cue in another. The use of standard terminology and

    definitions promotes consistency .

    SOFTWARE ENGINEERING PARADIGM APPLIED

    Software Engineering is the establishment and use of sound engineering principles in

    order toobtain economically software that is both reliable and works efficiently on real

    systems.To solve actual problems in an industry / organizations setting, such as C entral

    or State Govt.Sectors, Public / private Sectors, Colleges, Schools, etc., a Software

    Engineer or a team of engineers must incorporate a development strategy that

    encompasses the process, methods,tools layers, and the generic phases. This strategy

    is referred to as a Process Model or aSoftware Engineering Paradigm.

    y Models used for system development in project Custom

    y er Relationship Management and

    y Sales F orce Automation , is Prototyping. Descriptions of these models are as

    following

    -

    PROTOTYPE MODEL

    Prototyping is the process of building a model of a system. In terms of an information

    system,prototypes are employed to help system designers build an information system

    that intuitiveand easy to manipulate for end users. Prototyping is an iterative process that

    is part of the analysis phases of the system development life cycle. During the

    requirements determination portion of the systems analysis phase, system analystsgather

  • 8/6/2019 Navneet File

    20/75

    information about the organization's current procedures and business processes

    relatedthe proposed information system. In addition, they study the current information

    system, if there is one, and conduct user interviews and collect documentation. This helps

    the analystsdevelop an initial set of system requirements.Prototyping can augment this

    process because it converts these basic, yet sometimesintangible, specifications into a

    tangible but limited working model of the desired informationsystem. The user feedback

    gained from developing a physical system that the users can touchand see facilitates an

    evaluative response that the analyst can employ to modify existingrequirements as well as

    developing new ones .

    y The prototyping model is a software development process that begins with

    requirementscollection, followed by prototyping and user evaluation. Often the end

    users may not be ableto provide a complete set of application objectives, detailed input,

    processing, or outputrequirements in the initial stage. After the user evaluation, another

    prototype will be builtbased on feedback from users, and again the cycle returns to

    customer evaluation. The cyclestarts by listening to the user, followed by building or

    revising a mock-up, and letting the usertest the mock-up, then back.

    y Some Advantages of Prototyping:

    y Reduces development time.

    y Reduces development costs.

    y Requires user involvement.

    y Developers receive quantifiable user feedback.y F acilitates system implementation since users know what to expect.

    y Results in higher user satisfaction.

    y Exposes developers to potential future system enhancements.

    y independent project plan reviews

    y getting resource commitments

    y time recording

    y what tools like MSP can and cannot do for you

    y tracking progress against the project plany revising the project plan during the project

  • 8/6/2019 Navneet File

    21/75

  • 8/6/2019 Navneet File

    22/75

    SYSTEM DESIGN

    System design, the most creative and challenging phase of the system life cycle, refer to the

    technical specifications that will be applied in implementing the proposed system. It also

    includes the construction of program testing.

    Process of design:

    The design phase is a transition from a user -oriented document (system proposal) to a

    document oriented to programmer or database personal.

    The E-MAIL system is design as a dummy of the existing system. The choice of hardware

    and software to be used for the later is just little improvement in the former.

    System design goes through two phase of the development:

    y Logical design

    y Physical design

    Logical design :

    Design consideration:

    Software life cycle: - the programs were to be designed so as to ensure the longevity of the

    software being developed. F or this effort were made to make the software less rule based

    and more flexible. This was ensuring that external changes e.g. changes in E-MAIL

    SYSTEM by the company would not need a drastic change in the existing software. The

  • 8/6/2019 Navneet File

    23/75

    software was too designed with the aim of minimizing effort that means the system to be

    made more data driven.

    Physical design:

    The physical design is used to produce the working system by defining the design

    specifications that defined exactly what the proposed system would do. This system will

    accepts input from user, perform necessary works, then produce output on the screen and

    maintains updating the account when it is login.

    MODULES DESCRIPITION

    This project has the following modules to manage all the requirement of transportion.

    1. Admin details

    2. Customer details

    3. Driver details

    4. Truck details

    5. Order details

    6. Reports details

    Modules used in this project:

    Admin details

    Admin is one of the important modules in each and every application. Throughthis module admin can easily make the changes on the places on thewebsite.Updataion is important thing for every application.Admin can update theinformation whi ch was already displayed in the website depends upon the changes.Then they can easily insert the new places information, and also upload the newimages related to the places.Admin can easily update the facilities module also. This

  • 8/6/2019 Navneet File

    24/75

    module has the information about accommodation, travels, and money exchange.centers. All these things must have some updating; these updating will easily doneby using admin module.

    Customer details

    In this module administrator can maintain a database for the clients who are ordering for trucks for the delivery of products from the company and their details such as client name,address, product name, quantity, invoice no, rate of the product. These details are used for future references.

    Driver details

    In this module a administrator can maintain a database for the drivers who areconducted for transporting the products through trucks to the destinationfollowing the instruction given by the admin and their details such as driver name,driver id,truck no allocated.These details are used for further references.

    Truck details

    In this module a administrator can maintain a database for the trucks allocated for thetransportation of the different products across the country from one place to other and t heir details as truck no.,RC no., Insurance no., model.These details are used for the further references.

    Order details

    In this module a administrator can maintain a database for the details of the order by the

    customer for booking the trucks for transporting the products and also contain the details of cancelled order if any such as date of order,order no.,customer id,customer name, reason for cancellation.

  • 8/6/2019 Navneet File

    25/75

    CODING

    Code 1 :loading

    Private Sub Command1_Click()

    End

    End Sub

    Private Sub Form_Load()

    bar.Value = 0

    Timer1.Enabled = True

    End Sub

    Private Sub Timer1_Timer()

    bar.Value = bar.Value + 5

    If bar.Value = bar.Max Then

    first.Visible = True

    Unload Me

    End If

    End Sub

    Code 2 :first

    Private Sub Command1_Click()

    rs.Open "select * from passwor", con, adOpenDynamic, adLockBatchOptimistic

    Do Until rs.EOF = True

    If rs!u_name = Text1.Text And rs!u_pass = Text2.Text Then

    home.Visible = True

  • 8/6/2019 Navneet File

    26/75

    rs.Close

    first.Visible = False

    Exit Sub

    Else

    rs.MoveNext

    End If

    Loop

    MsgBox "Password is incorrect", vbInformation, "JM"

    Text1.Text = ""

    Text2.Text = ""

    Text1.SetFocus

    rs.Close

    End Sub

    Code 3 :home

    Dim rs As New ADODB.Recordset

    Dim rs1 As New ADODB.Recordset

    Dim a As Integer

    Dim j As Integer

    Private Sub addTruck_Click()

    newTruckForm.Visible = True

    End Sub

    Private Sub attenRE_Click()

    attenReport.Visible = True

    End Sub

  • 8/6/2019 Navneet File

    27/75

    Private Sub attenRS_Click()

    staffReprt.Visible = True

    End Sub

    Private Sub cinfo_Click()

    If DataEnvironment1.rsCommand7.State = adStateOpen Then

    DataEnvironment1.rsCommand7.Close

    End If

    C_info.Visible = True

    End Sub

    Private Sub einfo_Click()

    If DataEnvironment1.rsCommand8.State = adStateOpen Then

    DataEnvironment1.rsCommand8.Close

    End If

    empinfo.Visible = True

    End Sub

    Private Sub g1_Click()

    home.BackColor = vbButtonFace

    Label1.BackColor = vbButtonFace

    Label1.ForeColor = RGB(196, 0, 0)

    Label2.BackColor = vbButtonFace

    Label2.ForeColor = RGB(196, 0, 0)

  • 8/6/2019 Navneet File

    28/75

    Label4.BackColor = vbButtonFace

    Label5.BackColor = vbButtonFace

    Label6.BackColor = vbButtonFace

    Label7.BackColor = vbButtonFace

    Label8.BackColor = vbButtonFace

    Label9.BackColor = vbButtonFace

    Label10.BackColor = vbButtonFace

    Label4.ForeColor = RGB(0, 128, 0)

    Label5.ForeColor = RGB(0, 128, 0)

    Label6.ForeColor = RGB(0, 128, 0)

    Label7.ForeColor = RGB(0, 128, 0)

    Label8.ForeColor = RGB(0, 128, 0)

    Label9.ForeColor = RGB(0, 128, 0)

    Label10.ForeColor = RGB(0, 128, 0)

    Label3(0).BackColor = vbButtonFace

    Label3(0).ForeColor = vbBlue

    List1.BackColor = vbButtonFace

    List1.ForeColor = RGB(196, 0, 196)

    Flx.BackColor = RGB(157, 153, 63)

    Flx.BackColorBkg = vbApplicationWorkspace

    Flx.BackColorFixed = vbButtonFace

    End Sub

    Private Sub g2_Click()

    home.BackColor = RGB(5, 155, 155)

    Label1.ForeColor = RGB(196, 0, 0)

  • 8/6/2019 Navneet File

    29/75

    Label2.ForeColor = RGB(196, 0, 0)

    Label4.ForeColor = RGB(196, 0, 0)

    Label5.ForeColor = RGB(196, 0, 0)

    Label6.ForeColor = RGB(196, 0, 0)

    Label7.ForeColor = RGB(196, 0, 0)

    Label8.ForeColor = RGB(196, 0, 0)

    Label9.ForeColor = RGB(196, 0, 0)

    Label10.ForeColor = RGB(196, 0, 0)

    Label3(0).ForeColor = vbBlack

    Label1.BackColor = RGB(5, 155, 155)

    Label2.BackColor = RGB(5, 155, 155)

    Label4.BackColor = RGB(5, 155, 155)

    Label5.BackColor = RGB(5, 155, 155)

    Label6.BackColor = RGB(5, 155, 155)

    Label7.BackColor = RGB(5, 155, 155)

    Label8.BackColor = RGB(5, 155, 155)

    Label9.BackColor = RGB(5, 155, 155)

    Label10.BackColor = RGB(5, 155, 155)

    Label3(0).BackColor = RGB(5, 155, 155)

    List1.BackColor = RGB(5, 155, 155)

    List1.ForeColor = vbWhite

    Flx.BackColor = RGB(177, 177, 99)

    Flx.BackColorBkg = RGB(106, 181, 181)

    Flx.BackColorFixed = RGB(177, 177, 99)

    End Sub

  • 8/6/2019 Navneet File

    30/75

    Private Sub d1_Click()

    d1.Checked = True

    authentication.Visible = True

    End Sub

    Private Sub d2_Click()

    d2.Checked = True

    authentication.Visible = True

    End Sub

    Private Sub d3_Click()

    d3.Checked = True

    authentication.Visible = True

    End Sub

    Private Sub dreport_Click()

    Load driverR

    driverR.Show

    End Sub

    Private Sub exit_Click()

    Unload Me

    End

    End Sub

  • 8/6/2019 Navneet File

    31/75

    Private Sub Form_Load()

    'Call connect

    a = 7

    j = 0

    Timer2.Enabled = True

    Label1.Caption = Date

    Label2.Caption = Time

    Dim i As Integer

    i = 1

    Flx.TextMatrix(0, 0) = "c_id"

    Flx.TextMatrix(0, 1) = "c_name"

    Flx.TextMatrix(0, 2) = "Item"

    Flx.TextMatrix(0, 3) = "Destination"

    Flx.TextMatrix(0, 4) = "address"

    Flx.TextMatrix(0, 5) = "distance"

    Flx.TextMatrix(0, 6) = "Date"

    Flx.TextMatrix(0, 7) = "Driver"

    Flx.TextMatrix(0, 8) = "order_no"

    Flx.TextMatrix(0, 9) = "total"

    Flx.TextMatrix(0, 10) = "truck no."

    Flx.ColWidth(0) = 500

    Flx.ColWidth(1) = 1400

    Flx.ColWidth(4) = 2500

  • 8/6/2019 Navneet File

    32/75

    Flx.ColWidth(5) = 800

    Flx.ColWidth(8) = 800

    Flx.ColWidth(9) = 900

    Flx.ColWidth(10) = 2000

    rs.Open "select * from storage2", con, adOpenDynamic, adLockBatchOptimistic

    Do Until rs.EOF = True

    Flx.Rows = Flx.Rows + 1

    Flx.TextMatrix(i, 0) = rs!c_id

    Flx.TextMatrix(i, 1) = rs!c_name

    Flx.TextMatrix(i, 2) = rs!Item

    Flx.TextMatrix(i, 3) = rs!destination

    Flx.TextMatrix(i, 4) = rs!address

    Flx.TextMatrix(i, 5) = rs!distance

    Flx.TextMatrix(i, 6) = rs!Date

    Flx.TextMatrix(i, 7) = rs!Driver

    Flx.TextMatrix(i, 8) = rs!order_no

    Flx.TextMatrix(i, 9) = rs!total

    Flx.TextMatrix(i, 10) = rs!truck_no

    i = i + 1

    rs.MoveNext

    Loop

    rs.Close

    Dim flag As Boolean, r1 As Integer, k As Integer, r As Integer, n As Integer

  • 8/6/2019 Navneet File

    33/75

    flag = False

    rs1.Open "select * from logoff ", con, adOpenDynamic, adLockBatchOptimistic

    rs.Open "select * from login ", con, adOpenDynamic, adLockBatchOptimistic

    rs.MoveLast

    rs1.MoveLast

    Do Until flag = True

    If rs1!Date = Label1.Caption Then

    r1 = r1 + 1

    flag = False

    rs1.MovePrevious

    Else

    flag = True

    End If

    Loop

    flag = False

    Do Until flag = True

    If rs!Date = Label1.Caption Then

    r = r + 1

    flag = False

    rs.MovePrevious

    Else

    flag = True

    End If

    Loop

    rs.MoveLast

    flag = False

    For k = 1 To r Step 1

  • 8/6/2019 Navneet File

    34/75

    rs1.MoveLast

    For n = 1 To r1 Step 1

    If rs!e_name = rs1!e_name Then

    flag = True

    Exit For

    Else

    flag = False

    rs1.MovePrevious

    End If

    Next

    If ((flag = False) And (rs!designation = "driver")) Then

    List1.AddItem (rs!e_name)

    End If

    rs.MovePrevious

    Next

    rs.Close

    rs1.Close

    Timer1.Enabled = True

    d1.Checked = False

    d2.Checked = False

    d3.Checked = False

    Dim z As Integer

    z = 0

  • 8/6/2019 Navneet File

    35/75

    Label8.Caption = Flx.Rows - 2

    Label9.Caption = List1.ListCount

    rs.Open "select * from ordrcancld ", con, adOpenDynamic, adLockBatchOptimistic

    Do Until rs.EOF = True

    If rs!Date = Label1.Caption Then

    z = z + 1

    End If

    rs.MoveNext

    Loop

    rs.Close

    Label10.Caption = z

    End Sub

    Private Sub g3_Click()

    home.BackColor = RGB(100, 177, 255)

    Label1.BackColor = RGB(100, 177, 255)

    Label1.ForeColor = RGB(97, 97, 48)

    Label2.BackColor = RGB(100, 177, 255)

    Label2.ForeColor = RGB(97, 97, 48)

    Label4.BackColor = RGB(100, 177, 255)

    Label5.BackColor = RGB(100, 177, 255)

    Label6.BackColor = RGB(100, 177, 255)

    Label7.BackColor = RGB(100, 177, 255)

    Label8.BackColor = RGB(100, 177, 255)

    Label9.BackColor = RGB(100, 177, 255)

    Label10.BackColor = RGB(100, 177, 255)

  • 8/6/2019 Navneet File

    36/75

  • 8/6/2019 Navneet File

    37/75

    ordrcanR.Visible = True

    End Sub

    Private Sub r1_Click()

    c_register.Visible = True

    End Sub

    Private Sub r2_Click()

    Register.Visible = True

    End Sub

    Private Sub t1_Click()

    If List1.ListCount = 0 Then

    MsgBox "Driver is not AVAILABEL right now", vbInformation, "JM"

    Else

    Load order

    order.Show

    u3.Enabled = True

    End If

    End Sub

    Private Sub t2_Click()

    u3.Enabled = True

    cashOUtLogin.Visible = True

    End Sub

    Private Sub t4_Click()

  • 8/6/2019 Navneet File

    38/75

    Load OrdrCancel

    OrdrCancel.Show

    End Sub

    Private Sub Timer1_Timer()

    Label1.Caption = Date

    Label2.Caption = Time

    End Sub

    Private Sub tir_Click()

    If DataEnvironment1.rsCommand6.State = adStateOpen Then

    DataEnvironment1.rsCommand6.Close

    End If

    trk.Visible = True

    End Sub

    Private Sub u1_Click()

    calculator.Visible = True

    End Sub

    Private Sub u3_Click()

    a = 7

    j = 0

    '....................FOR REFRESHING..................

  • 8/6/2019 Navneet File

    39/75

    Dim i As Integer

    Flx.Clear

    i = 1

    Flx.TextMatrix(0, 0) = "c_id"

    Flx.TextMatrix(0, 1) = "c_name"

    Flx.TextMatrix(0, 2) = "Item"

    Flx.TextMatrix(0, 3) = "Destination"

    Flx.TextMatrix(0, 4) = "address"

    Flx.TextMatrix(0, 5) = "distance"

    Flx.TextMatrix(0, 6) = "Date"

    Flx.TextMatrix(0, 7) = "Driver"

    Flx.TextMatrix(0, 8) = "order_no"

    Flx.TextMatrix(0, 9) = "total"

    Flx.TextMatrix(0, 10) = "truck no."

    rs.Open "select * from storage2", con, adOpenDynamic, adLockBatchOptimistic

    Flx.Rows = 2

    Do Until rs.EOF = True

    Flx.Rows = Flx.Rows + 1

    Flx.TextMatrix(i, 0) = rs!c_id

    Flx.TextMatrix(i, 1) = rs!c_name

    Flx.TextMatrix(i, 2) = rs!Item

    Flx.TextMatrix(i, 3) = rs!destination

    Flx.TextMatrix(i, 4) = rs!address

    Flx.TextMatrix(i, 5) = rs!distance

    Flx.TextMatrix(i, 6) = rs!Date

  • 8/6/2019 Navneet File

    40/75

    Flx.TextMatrix(i, 7) = rs!Driver

    Flx.TextMatrix(i, 8) = rs!order_no

    Flx.TextMatrix(i, 9) = rs!total

    Flx.TextMatrix(i, 10) = rs!truck_no

    i = i + 1

    rs.MoveNext

    Loop

    rs.Close

    Dim z As Integer

    z = 0

    Label8.Caption = Flx.Rows - 2

    Label9.Caption = List1.ListCount

    rs.Open "select * from ordrcancld ", con, adOpenDynamic, adLockBatchOptimistic

    Do Until rs.EOF = True

    If rs!date_cancel = Label1.Caption Then

    z = z + 1

    End If

    rs.MoveNext

    Loop

    rs.Close

    Label10.Caption = z

    End Sub

  • 8/6/2019 Navneet File

    41/75

  • 8/6/2019 Navneet File

    42/75

  • 8/6/2019 Navneet File

    43/75

  • 8/6/2019 Navneet File

    44/75

  • 8/6/2019 Navneet File

    45/75

  • 8/6/2019 Navneet File

    46/75

  • 8/6/2019 Navneet File

    47/75

  • 8/6/2019 Navneet File

    48/75

  • 8/6/2019 Navneet File

    49/75

  • 8/6/2019 Navneet File

    50/75

  • 8/6/2019 Navneet File

    51/75

  • 8/6/2019 Navneet File

    52/75

  • 8/6/2019 Navneet File

    53/75

  • 8/6/2019 Navneet File

    54/75

  • 8/6/2019 Navneet File

    55/75

  • 8/6/2019 Navneet File

    56/75

  • 8/6/2019 Navneet File

    57/75

  • 8/6/2019 Navneet File

    58/75

  • 8/6/2019 Navneet File

    59/75

  • 8/6/2019 Navneet File

    60/75

  • 8/6/2019 Navneet File

    61/75

    Debugging and Error HandlingThe Visual Basic Programming environment contains several tools that can beused to track down and fix errors, or bugs, in your programs.These tools wouldn'tstop you from making mistakes, but they will often ease the pain when youencounter one.? Typ es of ErrorsGenerally three types of errors can occur in a VB program:# Syntax error # Runtime Error # Logic error S yntax error (or Compiler error) : It is a programming mistake (such as misspelled

  • 8/6/2019 Navneet File

    62/75

    property or keyword) that violates the rules of Visual Basic. Program cant be run untileach syntax error is fixed. Messages are given with the possible error messages duringthe time of compilation itself.R untime error : It is a mistake that causes a program to stop unexpectedly duringexecution. Runtime errors occurs when an outside event or an undiscovered syntax error forces a program to stop while it is running. A misspelled filename in a LoadPicture

    function can produce runtime error.Logic error : It is a human error- a programming mistake that makes the program code to

    produce the wrong result.Tools for DebuggingVisual Basic provides interactive tools for finding run-time errors and errors inyour program's logic. You can access all the debugging tools by using the Debugmenu or the Debug toolbar.Visual Basic debugging support includes :

    Breakpoints and break expressionsSet a breakpoint to stop a program while it is running. You can set a breakpoint atdesign time, or at run time while in break mode.

    Watch expressionsUse watch expressions to monitor a particular variable or expression. The value of each watch expression is updated at breakpoints.

    Step optionsDebugging and Error HandlingTraining Division, NIC, New Delhi

    L 2Use the step options to run portions of your code either one statement or one

    procedure at a time.Call stack

    Use Call Stack to view all active procedure calls and trace the execution of a series of nested procedure.

    Immediate windowIn Break mode, you can test an executable statement by typing it in the immediatewindow. Visual Basic runs the statement immediately so that you can evaluate your code.

    Local windowThis window automatically displays all of the declared variables in the current

    procedure, along with their values.Debug T oolbar? Handling R un-time ErrorsBy adding effective error-handling code to your application, one can create more robustapplications. Run-time errors can be handled and the unexpected termination can beavoided.

    The error handling process involves the following steps :1. Set an error trap that specifies the location of the error-handling code.2. Write the error-handling code.3. Exit the error- handling code.Debugging and Error HandlingTraining Division, NIC, New Delhi

    L 3O n Error Go T o statement enables an error trap and specifies where the execution of theapplication will jump to when an error occurs.

  • 8/6/2019 Navneet File

    63/75

  • 8/6/2019 Navneet File

    64/75

  • 8/6/2019 Navneet File

    65/75

    The Projects menu.

    The Debugging pane of the Project Properties dialogbox.

    Using commands on the Debug toolbar, ArcMap can be started and the DLL loaded anddebugged. Breakpoints can be set, lines stepped over, functions stepped into and

  • 8/6/2019 Navneet File

    66/75

    variables checked. Moving the line pointer in the left -hand margin can also set thecurrent execution line.

    The Debug toolbar.

    Visual Basic Debugger Issues

    In many cases, the Visual Basic debugger will work without any problems, however thereare two problems when using the debugger that is supplied with Visual Basic 6. Both of these problems exist because of the way that Visual Basic implements its debugger.

    Normally when running a tool within ArcMap, the DLL is loaded into ArcMap's addressspace and calls are made directly into the DLL. When debugging this is not the case.Visual Basic makes changes to the registry so that the CLSID for your DLL does not pointto your DLL, but instead it points to the Visual Basic Debug DLL (VB6debug.dll). The

    Debug DLL must then support all the interfaces implemented by your class on the fly.With the VB Debug DLL loaded into ArcMap, any method calls that come into the DLL areforwarded on to Visual Basic where the code to be debugged is executed. The twoproblems with this are caused by the changes made to the Registry and the cross-process space method calling. When these restrictions are first encountered it can beconfusing since the object works outside the debugger, or at least until it hits the area of problem code.

    Since the method calls made from ArcMap to the custom tool are across apartments,there is a requirement for the interfaces to be marshaled. This marshalling causesproblems in certain circumstances. Most data types can be automatically marshaled bythe system, but there are a few that require custom code, because the standardmarshaler does not support the data types. If one of these data types is used by aninterface within the custom tool and there is no custom marshalling code, the debuggerwill fail with an "Interface not supported error".

    The registry manipulation also breaks the support for component categories. Any timethere is a request on a component category, the category manager within COM will beunable to find your component, because rather than asking whether your DLL belongs tothe component category, COM is asking whether the VB debugger DLL belongs to thecomponent category, which obviously it doesn't. What this means is that anytime acomponent category is used to automate the loading of a DLL, the DLL cannot bedebugged using the Visual Basic debugger.

    This obviously causes problems for many of the ways to extend the framework. Themost common way to extend the framework is to add a command or tool. Previously itwas discussed how component categories were used in this instance. Remember thecomponent category was only used to build the list of commands in the dialog box. Thismeans that if the command to be debugged is already present on a toolbar the VisualBasic debugger can be used. Hence, the procedure for debugging Visual Basic objectsthat implement the ICommand interface is to ensure that the command is added to atoolbar when ArcMap is executed standalone, and then, after saving the document,loading ArcMap through the debugger.

    In some cases, like extensions and property pages, it is not possible to use the VisualBasic debugger. If you have access to the Visual C++ Debugger you can use one of the

  • 8/6/2019 Navneet File

    67/75

    options outlined below. Fortunately, there are a number of ESRI Visual Basic Add-insthat make it possible to track down the problem quickly and effectively. The add-insdescribed in the topic ESRI Add-Ins for Visual Basic , provide error log information,including line and module details. A sample output from an error log is given below; notethe call stack information along with line numbers.

    Error Log saved on : 8/28/2000 - 0:39:04 AMRecord Call Stack Sequence - Bottom line is error line.

    chkVisible_MouseUp C:\Source\MapControl \Commands\frmLa er.frm Line :96

    RefreshMap C: \Source\MapControl \Commands\frmLa er.frm Line : 20Description

    Object variable or With block variable not set

    Alternatives to the Visual Basic Debugger

    If the Visual Basic debugger and add-ins do not provide enough information, the VisualC++ debugger can be used, either on its own or with C++ ATL wrapper classes. TheVisual C++ debugger does not run the object to be debugged out of process fromArcMap, which means that none of the above issues apply. Common debug commands

    are given in the section Debugging Tips In Developer Studio in the "The Visual C++Environment" topic. Both of the techniques below require the Visual Basic project to becompiled with Debug Symbol information.

    Passing parameters

    In Visual Basic, you can pass an argument to a procedure by value or by reference . This is known as the passing mechanism , and it determines whether the procedure can modify the programming element

  • 8/6/2019 Navneet File

    68/75

    underlying the argument in the calling code. The procedure declaration determines the passing mechanismfor each parameter by specifying the ByVal (Visual Basic) or ByRef (Visual Basic) keyword.

    D istinctions

    When passing an argument to a procedure, be aware of several different distinctions that interact with eachother:

    y Whether the underlying programming element is modifiable or nonmodifiabley Whether the argument itself is modifiable or nonmodifiabley Whether the argument is being passed by value or by referencey Whether the argument data type is a value type or a reference type

    For more information, see Differences Between Modifiable and Nonmodifiable Arguments (Visual Basic) and Differences Between Passing an Argument By Value and By Reference (Visual Basic) .

    Ch oice of Passing Mec h anism

    You should choose the passing mechanism carefully for each argument.

    y Protection . In choosing between the two passing mechanisms, the most important criterion is theexposure of calling variables to change. The advantage of passing an argument ByRef is that theprocedure can return a value to the calling code through that argument. The advantage of passing anargument ByVal is that it protects a variable from being changed by the procedure.

    y Performance . Although the passing mechanism can affect the performance of your code, thedifference is usually insignificant. One exception to this is a value type passed ByVal. In this case,

    Visual Basic copies the entire data contents of the argument. Therefore, for a large value type such asa structure, it can be more efficient to pass it ByRef.

    For reference types, only the pointer to the data is copied (four bytes on 32-bit platforms, eight byteson 64-bit platforms). Therefore, you can pass arguments of type String or Object by value withoutharming performance.

    D etermination of t h e Passing Mec h anism

    The procedure declaration specifies the passing mechanism for each parameter. The calling code cannot

    override a ByVal mechanism, but if a parameter is declared with ByRef, the calling code can force themechanism to ByVal by enclosing the argument name in parentheses in the call.

    The default in Visual Basic is to pass arguments by value. You can make your code easier to read by usingthe ByVal keyword. It is good programming practice to include either the ByVal or ByRef keyword withevery declared parameter.

    Wh en to Pass an Argument by Value

  • 8/6/2019 Navneet File

    69/75

    y If the calling code element underlying the argument is a nonmodifiable element, declare thecorresponding parameter ByVal (Visual Basic). No code can change the value of a nonmodifiableelement.

    y If the underlying element is modifiable, but you do not want the procedure to be able to change its

    value, declare the parameter ByVal. Only the calling code can change the value of a modifiableelement passed by value.

    Wh en to Pass an Argument by Reference

    y If the procedure has a genuine need to change the underlying element in the calling code, declarethe corresponding parameter ByRef (Visual Basic).

    y If the correct execution of the code depends on the procedure changing the underlying element inthe calling code, declare the parameter ByRef. If you pass it by value, or if the calling code overridesthe ByRef passing mechanism by enclosing the argument in parentheses, the procedure call might

    produce unexpected results.

    T E S TI NG T ECHN IQU E S

    Testing is a process in which we create a series of rest cases that are intended to demolish the

    software that has been built. In fact, testing is the one step in the software engineering process that

    could be viewed as destructive rather than constructive. The testing objectives can be viewed, as it is

    a process of executing a program with the intent of finding an error. Errors are nothing but the

    deviation from the behavior stipulated by the requirement analysis.

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

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

    The system can be tested in one of two ways.

  • 8/6/2019 Navneet File

    70/75

    White-box testing

    This is performed knowing the internal workings of a product, tests are conducted to ensure

    that all gears mesh , that is, that internal operation performs according to specification and all

    internal components have been adequately exercise. This can be done on close examination of

    procedural detail. Providing test cases that exercise specific set of conditions and / or loops tests

    logical paths through the software.

    Using the white-box testing we can derive test cases that

    Guarantee that all independent paths within a module have been exercised at least once.

    Exercise all logical decisions on their true and false sides.

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

    Exercise internal data structures to assure their validity.

    By the test cases each of the CIS modules have executed at least once and tested for bugs. All the

    logic decisions on their true and false sides are executed so that the system will perform well.

    Black -Box Testing

    Knowing the specified function that a product has been designed to perform, tests can be

    conducted that demonstrate each function is fully operational, at the same time searching for errors

    in each function. It enables us to derive sets of input conditions that will fully exercise all functional

    requirements for a program.

  • 8/6/2019 Navneet File

    71/75

    It attempts to find errors in the following categories:

    1. Incorrect or missing functions.

    2. Interface errors.

    3. Errors in date structures or external database access.

    4. Performance errors.

    5. Initialization and termination errors.

    Tests are designed to answer the following questions:

    How the functional validity tested?

    What classes of input will make good test cases?

    Is the system particularly sensitive to certain input values?

    How are boundaries of a data class isolated?

    What data rates and data volume can the system tolerate?

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

    All the functions in the system are tested one after another and the desired tasks are fulfilled. Input

    values should lie in the data values size and these must check before processing. All the boundary

    values are tested.

    System testing strategies have the following generic characteristics:

    Testing begins at the module level and works outward toward the integration of the entire

    computer-based system.

  • 8/6/2019 Navneet File

    72/75

    Different testing techniques are appropriate at different points in time.

    The developer of the software and an independent test group conducts testing.

    Testing and debugging are different activities, but debugging must be accommodated in a

    testing strategy.

    7KH GLIIHUHQW WHVW VWUDWHJLHV XVHG DUH

    1 . Unit Testing : It focuses verification effort on the smallest unit of system design-the

    module. Using the procedural design description as a guide, important control paths are tested to

    uncover errors within the boundary of the module. In the Car Information System all the small units

    are tested for errors.

    2. Integration Testing : Integration testing is a systematic techniques for construction of

    the program structure while conducting test to uncover errors associated with interfacing. The

    objective is to take unit tested modules and build a program structure that has been dictated by

    design. In the CIS top-down integration is followed, that is modules are integrated by moving

    downward through the control hierarchy, beginning with the main control.

    3. Validation Testing : Validation succeeds when system functions in a manner that can

    be reasonably expected by the end user. This is achieved through a series of black-box test that

    demonstrate with requirements. There are two tests conducted for the system validation.

  • 8/6/2019 Navneet File

    73/75

    Alpha Test : A customer conducts it at the developer s site. The software is used in a natural

    setting with the developer looking over the shoulder of the user and recording errors and usage

    problems of Car Information System

    Beta Test : This test is conducted at one or more users sites by the end user(s) of the software.

    Here the developer is generally not present. Therefore, the beta test is a live application of the

    software in an environment that cannot be controlled by the developer. The customer records all

    problems that are encountered during beta testing and reports these to the developer at regular

    intervals. The Car Information System is tested at different sites and doing modifications to the

    system rectifies the problem reported by the customers.

    4. System Testing : System testing is actually a series of different test whose primary

    purpose is to fully exercise the computer-based system. Although each test has a different purpose,

    all work to verify that all system elements have been properly integrated and perform allocated

    functions. Jeans Information System is tested and had taken different measures to avoid errors.

    During this process recovery testing is done which is a system test that forces the software to fail in

    a variety of ways and verifies that recovery is properly performed. Security testing attempts to verify

    that protection mechanisms built into system will in fact protect it from improper penetration .

    Data security

    About securing Visual Basic for Applications code in Accessdatabases (MDB)

  • 8/6/2019 Navneet File

    74/75

    You can help protect your Microsoft Visual Basic for Applications (VBA) code by using eithera password or by saving your database as an MDE file. User-level security will not secureyour code, but it will help protect the forms and reports that refer to the code.

    Securing Visual Basic for Applications (VBA) code with a password

    In a Microsoft Access project (.adp) file and a Microsoft Access database (.mdb) file, you canhelp protect all standard modules and class modules (such as code behind forms andreports) by employing passwords for VBA code, which you and other users must enter toview or edit VBA code in the Visual Basic Editor. Once you set a password, you enter thispassword once per session. The password is required not only for viewing and editing, butalso for cutting, copying, pasting, exporting, and deleting any module. Note, however, thatemploying security measures for your VBA code in this manner doesn't prevent you or otherusers from running existing VBA code.

    Saving your database as an MDE file

    Saving your Microsoft Access database as an MDE file compiles all modules, removes alleditable source code, and compacts the destination database. Your Visual Basic code willcontinue to run, but it cannot be viewed or edited. Your Access database will continue tofunction normally you can still update data and run reports and the size of thedatabase will be reduced, due to the removal of the code. Memory usage is optimized, whichwill improve performance.

    Saving your Access database as an MDE file does not prevent changes to the databasedesign. However, you will notice the following:

    y The user interface for modifying or creating forms, reports, or modules will be disabled.y The VBA References dialog box will not allow adding, deleting, or changing references to

    object libraries or databases.y The source code will not be available.y The importing and exporting commands will be disabled for forms, reports, or modules.

    However, tables, queries, data access pages, and macros can be imported from or exportedto non-MDE databases.

    Modules and user-level security

    In a Microsoft Access 2000 or later database, standard modules and class modules (such ascode behind forms and reports) no longer employ user -level security, as they did in previousversions. However, forms and reports still make use of user-level security. This means thatmodules and forms and reports employ different sec urity mechanisms.

    For example, assuming you have the appropriate permissions , you can add a control to aform, but if the VBA project is locked for viewing and protected with a password, and youdon't know the password, you can't view or edit the module behind the form. Conversely,you can be restricted from designing a form or report th rough user-level security by not

  • 8/6/2019 Navneet File

    75/75

    having Modify Design permission on the object, but if you know the VBA project password,you can access the module behind the form or report.

    There is an exception to this. Even if you have Modify Design permissions on a fo rm orreport, you cannot delete the form or report, or set the H asModule property to No , becausethis action deletes the module behind the form or report.