Steel Authority of India Limited (SAIL) - Human Resource Information System

Description
Steel Authority of India Limited (SAIL) is the leading steel-making company in India. It is a fully integrated iron and steel maker, producing both basic and special steels for domestic construction, engineering, power, railway, automotive and defence industries and for sale in export markets.

Table of Contents Table of Contents
Introduction Introduction
" Human Resource Information System " is an information system to provide effective control of
safety functions and employees' compensation and leave records. This system is meant to
be installed at Durgapur Steel Plant DSP!. The development of the system is done at the
R"D RD#IS!$ Steel %thority of India &imited S%I&!$ Ranchi$ 'har(hand$ India. This system
is an e)tension to a "Human Resource Information System HRIS!" developed by RD#IS$
S%I& for Durgapur Steel Plant.
The system$ basically$ deals *ith areas not considered in HRIS$ such as$ employees+ safety
related functions$ leave record and management of gate pass and statutory re,uirements of
#ontract &abour #ell #&#!.
-asically$ It is a user.friendly Human Resource Information System HRIS!. It allo*s the
organi/ation to ta(e advantage of enterprise class HR functionality *ithout the over*helming
e)pense traditionally incurred. It manages the employee information$ so provides an aid to
manager to manage the employees efficiently.
This particular pac(age is meant to revolutioni/e the *ay to manage the human resource
demands. Time re,uired to search the information *ill be available for planning and heading
off potential problems. The value for benefit that *ill be received is outstanding and *ill help
the employees of the organisation to a great e)tent.
The 0a1or areas considered by the system can be characterised as.
• Safety 2unctions
• 3mployees4 &eave Record 2unction
• #ontract &abour #ell #&#!
The system interacts *ith three different departments5
• Safety Department
• Personnel Department
• 2inance Department
The involvement of these department demands proper co.ordination bet*een them. 2or
proper and efficient functioning$ the system interacts *ith these three departments.
The ob1ective of the information system is to provide an efficient handling of man.po*er
resource and (eeping trac( of the accident related information. The system also helps in
(eeping the employees4 leave record up to date. The assistance provided by the system can
be 5
• 3ffective and 3fficient utili/ation of the e)isting man po*er.
• 0aintenance of accident detail$ analysis and redressal activity.
• 0anagement of employee's leave records.

1. 1. Organizational Background Organizational Background
1.1 Company Profile

Steel %uthority of India &imited S%I&! is the leading steel.ma(ing company in India. It is a
fully integrated iron and steel ma(er$ producing both basic and special steels for domestic
construction$ engineering$ po*er$ rail*ay$ automotive and defence industries and for sale in
e)port mar(ets.
Ran(ed amongst the top ten public sector companies in India in terms of turnover$ S%I&
manufactures and sells a broad range of steel products$ including hot and cold rolled sheets
and coils$ galvanised sheets$ electrical sheets$ structurals$ rail*ay products$ plates$ bars and
rods$ stainless steel and other alloy steels. S%I& produces iron and steel at four integrated
plants and three special steel plants$ located principally in the eastern and central regions of
India and situated close to domestic sources of ra* materials$ including the #ompany's iron
ore$ limestone and dolomite mines.
S%I&'s *ide range of long and flat steel products is much in demand in the domestic as *ell
as the international mar(et. This vital responsibility is carried out by S%I&'s o*n #entral
0ar(eting 6rganisation #06! and the International Trade Division. #06 encompasses a
*ide net*or( of 78 branch offices and 9: stoc(yards located in ma1or cities and to*ns
throughout India.
;ith technical and managerial e)pertise and (no*.ho* in steel ma(ing gained over four
decades$ S%I&'s #onsultancy Division S%I&#6<! at <e* Delhi offers services and
consultancy to clients *orld.*ide.
S%I& has a *ell.e,uipped Research and Development #entre for Iron and Steel RD#IS! at
Ranchi$ *hich helps to produce ,uality steel and develop ne* technologies for the steel
industry. -esides$ S%I& has its o*n in.house #entre for 3ngineering and Technology #3T!$
0anagement Training Institute 0TI! and Safety 6rganisation at Ranchi. 6ur captive mines
are under the control of the Ra* 0aterials Division in #alcutta. The 3nvironment
0anagement Division and =ro*th Division of S%I& operate from their head,uarters in
#alcutta. %lmost all our plants and ma1or units are IS6 #ertified.
0a1or >nits of S%I&
? Integrated Steel Plants at -hilai Steel Plant -SP! in #hhattisgarh$ Durgapur Steel
Plant DSP! in ;est -engal$ Rour(ela Steel Plant RSP! in 6rissa and -o(aro Steel
Plant -S&! in 'har(hand
? Special Steel Plants at %lloy Steels Plants %SP! in ;est -engal$ Salem Steel Plant
SSP! in Tamil <adu$ ?isvesvaraya Iron and Steel Plant ?IS&! in @arnata(a
? Subsidiaries 5 Indian Iron and Steel #ompany IIS#6! in ;est -engal. 0aharashtra
3le(trosmelt &imited 03&! in 0aharashtra$S%I& Po*er Supply #ompany &imited
SPS#&! in <e* Delhi$-hilai 6)ygen &imited -6&! in <e* Delhi
1.2 An Overview of R& Centre for !ron and "teel #RC!"$% "A!&
The Research " Development #entre for Iron " Steel RD#IS! at Ranchi is the corporate R
" D unit of S%I&. Set up in AB:C$ the #entre has IS65 BDDA certification to its credit. It
underta(es R " D pro1ect in diverse realms of Iron " Steel Technology under the categories
of -asic Scientific Research$ Plant Performance Improvement$ Investigation " #onsultancy
%ssignments$ 3,uipments " Instrument Design and 0a1or Technology Development.
RD#IS has more than 7DD dedicated and competent scientists and engineers and its
laboratory is e,uipped *ith around 7DD sophisticated diagnostic research e,uipment and E
pilot plant facilities.
RD#IS provides customers *ith prompt$ innovative and cost.effective R " D solutions+
develop and commerciali/e improved processes and products+ continually enhance the
capability of its human resources to emerge as a center of e)cellence. The ma1or efforts are
directed to*ards cost reduction$ ,uality improvement and value.addition to products of S%I&
plants and providing application engineering support to S%I&4s products at customers end.
RD#IS$ along *ith steel plants$ has recently ta(en initiatives to develop special steel
products utili/ing the moderni/ed production facilities at steel plants.
RD#IS also offers technological services to various organi/ations in the form of5 @no* F ho*
transfer of technologies developed by RD#IS+ #onsultancy services+ Speciali/ed testing
services+ #ontrast research and technology a*areness programmes.
1.' An Overview of (R)AP(R "*++& P&A,* #"P$
Set up in the late ED's *ith an initial annual
capacity of one million tonnes of crude steel per
year$ the capacity of Durgapur Steel Plant DSP!
*as later e)panded to A.G million tonnes in the
:D's. % massive modernisation programme *as
underta(en in the plant in early BD's$ *hich$ *hile
bringing numerous technological developments in
the plant$ enhanced the capacity of the plant to
C.D88 million tonnes of hot metal$A.8 million
tonnes crude steel and A.E8G million tonnes
saleable steel. The entire plant is covered under
IS6 BDDA5 CDDD ,uality management system.
The moderni/ed DSP no* has state.of .the.art technology for ,uality steel ma(ing. The
moderni/ed units have brought about improved productivity$ substantial improvement in
energy conservation and better ,uality products. DSP's Steel 0a(ing comple) and the entire
mills /one$ comprising its -looming " -illet 0ill$ 0erchant 0ill$ S(elp 0ill$ Section 0ill and
;heel " %)le Plant$ are covered under IS65 BDDC ,uality assurance certification.
;ith the successful commissioning of the moderni/ed units$ DSP is all set to produce C.D88
million tones of hot metal$ A.8 million tones of crude steel and A.E8G million tones of saleable
steel annually.
#entre for Human Resource Development5
DSP has al*ays attached ma)imum importance on proper training and development of its
employees. Its #entre for Human Resource Development has all modern facilities including
the state.of.the.art 3lectrical and 3lectronics laboratory$ Hydraulics and Pneumatics
laboratory and *or(shop for effective training and development of its employees.
&ocation5
Situated at a distance of AE8 (m from #alcutta$ its geographical location is defined as C7D
C:' <orth and 88D CB' 3ast. It is situated on the ban(s of the Damodar river. The =rand
Trun( Road and the main #alcutta.Delhi rail*ay line pass through Durgapur.
2. 2. Background of t-e Pro.ect Background of t-e Pro.ect
Research " Development #entre for Iron " Steel RD#IS! at Ranchi developed an
information system . "Human Resource Information System HRIS!H$ for Durgapur Steel
Plant DSP!. HRIS is an information system that4s an aid for managing the human resource
at the Durgapur Steel Plant. 6n completion of the soft*are development$ the Durgapur
Steel Plant sho*ed an interest in computerising of areas such as employees' leave record$
safety related functions and management of gate pass and statutory re,uirements at
#ontract &abour #ell #&#!. The re,uired system$ basically$ deals *ith areas not considered
in HRIS.
So$ the ne* re,uired system is more of an e)tension to a "Human Resource Information
System HRIS!". %s the HRIS pro1ect *as underta(en by the RD#IS$ so the additional
demand to develop the e)tension to the already developed system is ta(en in hand by the
RD#IS only. This ne* pro1ect is much more than 1ust the continuous soft*are support from
RD#IS for implementation of developed modules. So$ the RD#IS proposed a ne* soft*are
development pro1ect for "#omputeri/ation of leave records$ contract labour cell and safety
department at DSP."
'. '. /uman Re0ource !nformation "y0tem /uman Re0ource !nformation "y0tem
'.1 *-e Purpo0e of /R!"
% HRIS is implemented of Durgapur Steel Plant DSP!. HRIS stands for Human Resource
Information System. The Human Resource Information System HRIS! is a record system. It
is the central repository for personnel and payroll data. HRIS supplies information and
statistics on all employees. The data provided is used to determine ho* human resources
are being managed.
HRIS reports data on all employees to *hom the DSP pays or reimburses salaries or
benefits$ regardless of funding sources or reporting system+ maintains data on former and
current employees+ and stores historical personnel data for in,uiry and analysis.
'.2 *-e !mpact of !mplementing an /R!"
Integrated HR Information Systems HRIS! have a profound effect on firms that implement
them. 0ost often these firms are replacing several related systems$ such as a personnel
database$ payroll system and benefits system$ *ith one single HRIS that does it all. 0any
people focus on the improved reporting and processing that *ill be reali/ed from the ne*
system$ and those are the reasons most firms choose to implement a ne* HRIS. -ut *hat
many people don4t focus on is that the ne* HRIS *ill most li(ely affect the company much
more deeply F it *ill challenge the operating structure and principles of all the HR.related
departments.
%ctually$ in an organi/ation$ the pressure is on for proactive HR innovations that contribute
directly to the bottom.line or improve employee morale and efficiency. %1u*on CDDC! points
out that the typical HR professional gets involved *ith one step in many different flo*s of
*or(. ?ery often the involvement of HR has no purpose e)cept to validate the process in
some *ay and acts as an interruption to the flo* of *or(. In other *ords$ the HR function is
a 'gate(eeper for information that4s been deemed too highly classified for the data o*ner.'
So$ HR is not actually ma(ing a measurable contribution . in fact$ the opposite. HR
involvement creates a ,ueue or delay in the process. ;e should as($ if the HR involvement
is really necessary.
6nce upon a time the HR database had an 'all.or.nothing' ,uality . probably because it *as
paper.based. -ut no* technology allo*s controlled access to various portions of the
database. So an employee can safely amend his or her o*n address or ban( account
details$ *hile the ability to change certain appraisal details might be confined to the line
manager. In either case$ there is no reason for HR to be involved. HR should move on from
the role of intermediary. The 1ob that used to create delay in an organi/ation$ is handled
pretty comfortably by the computeri/ed Human Resource Information System.
So$ it can be said that an integrated HRIS results is a drastically different environment than a
cluster of related but separate systems. The core concept of a centrali/ed data store
inherent *ith an HRIS demands integrated *or( processes for consistently managing that
store. The t*o attributes F centrali/ed data storage and integrated *or( processes F *ill
affect the company in *ays most managers don4t e)pect.
<ot surprisingly$ the use of Human Resource information Systems for records$ information$
payroll and other functions is becoming increasingly common. The HR$ Payroll and other
departments in the organi/ation 1ust gets the information re,uired by it F reducing its burden
to a great e)tent. The HR department is supplied *ith improved reporting of employee data$
Payroll is provided *ith the system4s pay chec( calculations and regulatory reporting.
In addition to all this$ libraries of forms can be (ept online to be do*nloaded as and *hen
re,uired. Systems can be enhanced to include streaming video and other ne* soft*are
providing *ide access to corporate videos$ training$ etc. 6bviously$ e.mail announcements
and ne*sletters can also be used to alert employees to ne* developments or urgent
re,uests.
'.' Planning and 0etting up a new /uman re0ource information 0y0tem #/R!"$ 1
2anagement of /R "y0tem0
There are three primary activities in an HRIS implementation F
• configuring the HRIS for the firm4s business processes and policies$
• interfacing data *ith other systems and converting historical data into the HRIS$
• preparing the organi/ation for the ne* HRIS.
Implementing a ne* HR information system HRIS! is one pro1ect$ *hich re,uires a good
pro1ect plan F to serve as a road map. Implementing a full HRIS$ or health and safety$
re,uires sufficient time to be spent to plan out the future course of action.
% good planning can be possible by follo*ing the guidelines.
'.3 eveloping t-e plan
The pro1ect leader's initial tas( is to develop the plan. The more comple) the system$ the
more detail the plan needs. The ,uestions to ans*er are5
• ;hat has to be doneI
• In *hat order should tas(s be completedI
• ;ho i going to do itI
• -y *hat deadlineI and
• ;hat is the impact of one tas( on the othersI
-rea(ing the *or( do*n into tas(s that can be assigned to individuals is vital to pro1ect
planning. 3ach main tas( can have numbered subtas(s to assist in trac(ing.
%nother approach is to dra* a chart that identifies the time line as *ell as (ey pro1ect due
dates. The pro1ect plan is to be monitored periodically to report the progress.
• Ba0ic *raining. 2or proper development and implementation of the system$ some
training on the system is re,uired. Training is often delivered in a one.time dose of t*o to
four days$ covering in rapid succession everything that4s needed to (no* about the
system. %n overvie* of the system . navigation$ functions$ file structure and
customi/ation features . is important before moving further on the pro1ect.
• 4inding 5ay0 to !mprove 5ork 4low. Technology provides a *onderful opportunity to
e)amine the *or( flo* in the HR department$ to as( some hard ,uestions about old
policies and procedures$ and to as( *hy and ho* the department does *hat it does.
%long the *ay$ (no*ing ho* technology can support changes in operations i vital. The
ne* system has the capability to change the *or(.flo*. In streamlining compensation$
for e)ample$ it could be proposed that the line manager have direct access to
performance information and merit increases. #an the system give the manager access
to this information *hile at the same time guarding the data filesI %nother e)ample5
Since the applicant.trac(ing program can produce labels$ *ill the printer handle
postcards so that the process of addressing and affi)ing labels can be eliminatedI <ot
everyone *ill have the resources or time to do such a pro1ect$ but if its possible$ then the
organi/ation can ta(e ma)imum advantage of the ne* system.
• "y0tem Cu0tomization. Depending on the product's capability$ there are several *ays
to customi/e a ne* computerised system such as renaming fields$ addin fields and
screens$ and modifying the code tables used for data entry and calculations. The first
thing to do is tal( *ith the users and revie* documentation to fully understand ho* the
system handles customi/ation. The ne)t step is to document the specific re,uirements.
;hether customi/ation is not the time for guess*or(. %n easy *ay to revie* the
customi/ation needs is to print the screens and revie* them for completeness. % more
detailed analysis method is to do a "map" of the *ritten re,uirements against the
system's capabilities.
Time spent on careful planning for code tables is a critical part of customi/ation. Their value
is multi.fold. They provide the basis for reporting and ma(e data entry easier and more
accurate.
;ith these tas(s accomplished and documented$ the pro1ect team is ready to get the system
ready for full production.
2urther$ planning is done to map the 1ourney to a successful HRIS implementation. The
planning is done of the 1obs . data conversion$ data entry and audit$ report development$
system administration$ and communication to the organi/ation. ;hile going through ths
process$ the purpose of the pro1ect plan (ept in mind5 avoiding the pitfalls by identifying all
the tas(s and resources needed for completion.
• A *ime &ine5 %lthough deadlines may change$ each phase and tas( of the plan should
be dra*n in a time line that *ill mitigate the effects of 0urphy's &a*5 "3verything ta(es
longer than you thin( it *ill." The time line and the plan is used for *ee(ly monitoring of
the pro1ect. 0onitoring is done by discussing *hat happened last *ee($ *hat is going on
this *ee($ and *hat is e)pecting to do ne)t *ee(.
• ata Conver0ion5 ;hen is electronic data conversion *orth the effortI ;hen the
organi/ation has CED or more records to enter$ accurate current data is in a computer
system$ and the technical resources are available. If the database is not current and
accurate$ then there isn4t any need to go for data conversion. %s$ the time and trouble
ta(en to define file layouts$ test them and do the conversion may not be feasible.
o <o*$ the tas( is to move all the electronic data from one place$ or from many
places$ into the ne* system. If files are electronic$ the conversion *ill move
them from one system to another. The e)pert resources can be used to
achieve this tas( to avoid time consuming and frustrating errors. The plan
should include5
o Determining demands and limits of each database.
o 2inding out the charges for conversion and file re,uirements if the files are
*ith a payroll service bureau.
o Developing the data.conversion routine$ usually a matter of defining the file
layout. The data.conversion utility may already be available to ease the
process.
o Testing the import routine$ usually *ith a small sample of the database for
importing to the ne* system. ?erify the results and that the data appears in
the correct fields.
o #onducting the data conversion. Revie* records and finish them *ith
supplemental data as described in data entry.
• ata +ntry and Audit5 Planning for this tas( should include setting data.entry priorities$
for history records in the HRIS or a training system. %n early part of the pro1ect is
determining the condition of the files. ;hile other *or( is continuing$ its good to assign
the tas( of revie*ing and consolidating employee records . e)amination of several
sample files$ and identification of *hat information is missing or e)ists in another
department. Is all the benefits data there or does the controller's office have those
recordsI Does payroll have the number of e)emptions and other ta).related data that
your system *ill useI % complete$ *ell.organi/ed record for every employee *ill ma(e a
tremendous difference in the data entry. The tas(s are to
o Revie* and consolidate employee records.
o 3nter five to AD sample records. Select a *ide range of employees so that
most of the circumstances are covered such as different 1ob titles$ salary$
departments and benefit choices.
o Do data entry. Set aside t*o to four hours at a time *hen data entry can
proceed uninterrupted. D6 <6T attempt to ans*er phones and handle other
interruptions *hile doing this critical tas(.
o Print profile reports and do an audit. 0ost systems have a standard report
that prints the employee record. % second person should audit the records for
possible errors before going into production. It may be a nice idea to use a
report minus performance and compensation data! to send to employees for
verification and updating.
o Print and file profile reports. % print copy of the employee's record can be
placed in the file$ giving access to managers *ho need to loo( at the
information. Some systems allo* a manager direct net*or( access to records
and reports for his or her department's staff.
• evelop Reporting Proce00e05 The success of the system *ill ultimately be
determined by the reports. ;or( on this tas( can begin early in the pro1ect even though it
is not completed until the end of the implementation. The reporting process should
include
o =athering current reports and determining the value of each.
o Revie*ing the vendor's standard reports and printing out samples using your
employee database.
o Intervie*ing managers to find out *hat information they need and in *hat
format.
o =etting report.*riting training from the vendor.
o Testing (ey reports.
o Printing formats and sample reports for your records.management manual.
• "y0tem Admini0tration5 #omputer systems do not ta(e care of themselves+ someone
must be responsible and accountable for each application in the department. The
implementation plan should determine *ho *ill be using the system and *hat type of
privileges each person *ill have. Privileges refers to the type of access to activities$ from
vie*ing data to entering data to maintaining the code tables. There are three primary
tas(s in planning for system administration5
o 2irst$ clarification of the relationships bet*een payroll and HR for access and
system maintenance.
o Then assignment of responsibilities for bac(up$ archiving$ installing
enhancements and training ne* users.
o Third$ coordination of the system administration tas(s *ith the systems
department$ decide *ho in HR *ill be the system administrator and plan for
that person's training.
• Communication of C-ange05 ;hat difference *ill the ne* system ma(e to the
organi/ation outside of HRI There *ill be several different audiences for the
communications . e)ecutives$ line managers and other employees. The most fre,uent
mista(e is to either not plan at all for the communications or to announce the system's
benefits too soon and set up e)pectations long before they can be met. Steps in the
communication plan are to
o Identify the impact of the system on different groups.
o Define any information or participation that may be needed such as verifying
data or responding to a survey.
o &et people (no* ho* the *or( is progressing through an employee ne*sletter
or other publication.
o Describe of the changes and benefits after they are implemented$ giving
specific e)amples.
6n implementation of the plan$ its monitoring is done *ith the time line. This *ill sho* ho*
the system is developed efficiently *ee( by *ee($ tas( by tas(.
3. 3. "oftware evelopment &ife Cycle #"&C$ "oftware evelopment &ife Cycle #"&C$
The System Development &ife #ycle is the process of developing information systems
through investigation$ analysis$ design$ implementation$ and maintenance. The System
Development &ife #ycle SD&#! is also (no*n as Information Systems Development or
%pplication Development.
System Development &ife #ycle involves a number of steps. 3ach phase *ithin the overall
cycle may be made up of several steps.
Feasibility Study
S/W Requirement Specification
Software Design
Software Development
Testing
ser Training
Implementation
Documentation
Approac-
? 2easibility Study
? Soft*are Re,uirement Specification
o Database Design
o >ser Interface 2orm! Design
o Report Design
? Soft*are Development
o Database Tables F #reating 0aster Tables
o >ser Interfaces F 2orm development
o Reports
? Testing
? >ser Training
? Implementation
? Documentation
6. 6. 4ea0i7ility "tudy 4ea0i7ility "tudy
6.1 4ea0i7ility "tudy
The main ob1ective of feasibility study activity is to determine *hether it *ould be feasible to
develop the product. The feasibility study activity involves the analysis of the problem and
collection of all relevant information relation to the product such different data items *hich
*ould be input to the system.
6.2 /R "a-8yak 1 4ea0i7ility "tudy9
6.2.1 A70tract pro7lem definition9
The ob1ective is to develop a system that facilitates computeri/ation for on.line and effective
control of safety functions$ compensation and leave records of the employee at Durgapur
Steel Plant DSP!$ Durgapur.
This system is an e)tension to a "Human Resource Information System HRIS!" developed
by RD#IS$ S%I& for Durgapur Steel Plant.
The system$ basically$ deals *ith areas not considered in HRIS$ such as$ employees+ safety
related functions$ leave record and management of gate pass and statutory re,uirements of
#ontract &abour #ell #&#!.
6.2.2 4ormulation of t-e different 0olution 0trategie0
The re,uired ob1ective F of a system that facilitates computeri/ation for on.line and effective
control of safety functions$ compensation and leave records of the employee at Durgapur
Steel Plant DSP!$ Durgapur . can be achieved by
• 1ust providing the e)tension to the previous Information System by ma(ing the additions
to the already developed system.in.use at Durgapur Steel Plant DSP!.
• forming a ne* pro1ect that *or(s *ith the previous one$ sharing the re,uired information.
The additional demand is accomplished *ith a ne* soft*are development pro1ect for
"#omputeri/ation of leave records$ contract labour cell and safety department at DSP".
6.2.' Analy0i0 of alternative 0olution 0trategie0
The ne* re,uired system is more of an e)tension to a "Human Resource Information
System HRIS!". %s the HRIS pro1ect *as underta(en by the RD#IS$ so the additional
demand to develop the e)tension to the already developed system is ta(en in hand by the
RD#IS only. This ne* pro1ect is much more than 1ust the continuous soft*are support from
RD#IS for implementation of developed modules. So$ the RD#IS proposed a ne* soft*are
development pro1ect for "#omputeri/ation of leave records$ contract labour cell and safety
department at DSP".
:. :. "oftware Re;uirement "pecification "oftware Re;uirement "pecification
:.1 "oftware Re;uirement "pecification
Soft*are Re,uirement Specification SR#! is a systematic organi/ation of re,uirements.
SRS specifies all the re,uirements in an informal form.
SRS documents the follo*ing aspects of a system5
• 2unctional Re,uirements
2unctional re,uirements deal *ith the functionalities re,uired from the system. %
system can be considered as performing a set of functions. It is an identification of
high.level function re,uirements of the system. High.level re,uirements involve
accepting some data as input and transforming it to the re,uired output.
• <on.2unctional Re,uirements
<on.functional re,uirements deal *ith the characteristics of the system that cannot
be e)pressed as functions.
:.2 4unctional Re;uirement0
Identification of high.level functional re,uirements of System
:.2.1 4unctional Re;uirement <19 "afety function
Description5 • #overs details about the accident occurred *ithin the plant
premises5
o Details of incidence
o Details of persons affected in accident
o Details of machineJe,uipment affected
• Safety department (eeps record of all accidents occurred
*ithin the plant premise. Standard reporting format for
accident is follo*ed in all the plants of S%I&. -ased on this
data many analyses are carried out for 0IS purpose.
• 2or analysis purpose the accident related information has
been standardi/ed. The %ccident information *ill be based on
the standardi/ed codes developed. The information stored
includes employee$ contractor or visitor.
• The standardi/ed information is5
o %ccident #ategory
o %ccident #ause
o >nsafe #ondition
o >nsafe %ct
o =eographic &ocation of %ccident
o Person #ategory
o In1ury <ature
o -ody Part In1ured
o 3,uipment Type involved in %ccident
Input5 Details about an accident
6utput5
Processing5
:.2.2 4unctional Re;uirement <29 &eave 2odule
Description5 • 0anagement of employee leave record
• &eave module covers the follo*ing5
? &eave Rule
? &eave limitation as per leave rule
? 3ntry " ?alidation of &eave Record &eave #onsumption!
? Display of balance leave account
? Display of attendance data
? Printing of various leave order
• 3mployees of DSP go for different (ind of leave. The leave
can be divided in t*o ma1or categories F &eave Type and
-asic &eave Type. &eave type is the nomenclature used in
organi/ational personal policy manual and consists of basic
leave types. -asic leave types are accounted in salary
payment.
• The detail of the leave types is enclosed.
• The line managers have authority to sanction leave of an
employee. 6n the approval$ information goes to personnel
department *here from the leave order is issued. Depending
upon the leave rule that governs the employee fi)ed days of
particular leave is credited to the employee at the beginning
of calendar year.
• %t the end of calendar year some of the leaves are carried
for*ard and some of them lapse. 3& " HP& are the e)ample
of leave to be carried for*ard. The accounting of leaves to be
carried for*ard in the ne)t calendar year is done as per
personal policy.
Input5
6utput5
Processing5
%t DSP Time 6ffice and #"IT Department are already doing this tas( under the gamut of
Payroll System. Ho*ever$ the personal department does not have on.line access to this.
Similarly$ Personal Department as(s for the relevant document from employee for grant of
I6; leave+ though the unfit period information is available *ith Safety 3ngineering.
<ote5 The detail of leave follo*s5
Ba0ic &eave *ype
Code e0cription
#& #asual &eave
3& 3arn &eave
2& 2estival &eave
36& 3)tra 6rdinary &eave
HP& Half Pay &eave
S%-& Sabbatical &eave
#60& #ommuted &eave
TR& Transit &eave
0%T& 0aternity &eave
K& Kuarantine &eave
S#& Special #asual &eave
SD& Special Disability &eave
S& Study &eave
&<D &eave not due
&eave *ype
Code e0cription
A Personal &eave
C Study &eave
7 Sabbatical &eave
9 Sic(JIll &eave
E 0aternity &eave
G -aby care &eave
: &T#J&&T# &eave
8 Sports " 6ther &eave
B In1ury on ;or(s
:.2.' 4unctional Re;uirement <'9 Compen0ation 2odule
Description5 • Personnel department *ill operate this module centrally. The
data created *ill be lin(ed *ith accident information. The pre.
re,uisite for implementation of this module is available of
o >p.to.date full employee database
o >p.to.date accident information
• The soft*are *ill compute the compensation amount to be
paid based on5
o #ompensation %ct Rule
o #ompensation 3arning &oss Table
• DSP *as (een to capture some more data related to
employee's accident. In1ury to employee is reported through
"Reported in1ury on ;or(" form at the time of accident$ filled
by the authori/ed person from the department *here
accident ta(es place and is sent immediately along *ith the
in1ured person to the 6HS #entreJ0ain Hospital. The medical
officer after duly filling the "In1ury #ertificate" sends the
information to Safety 3ngineering department and the
concerned department. Depending upon the type of in1ury the
employee may proceed on special leave for recovery. It is
(no*n as In1ured 6n ;or(s leave I6;!. During the period
employee is paid full remuneration and his seniority is
maintained. 6n recovery from in1ury the employee needs a
fitness certificate to be issued from 6HS #entreJ0ain
Hospital. 6n production of the same he may resume his duty.
• 3mployee or his nominee in case of fatal accident! is entitled
to claim for the compensation for the in1ury resulting in
permanent earning capacity loss of the employee. 2ive
different agencies of DSP is involved till the final payment of
the compensation5
o #oncerned Department
o Safety 3ngineering Department
o 0edical -oard
o 2inance Department
o Personnel Department
• The employee submits application to the personnel
department to initiate the process. Personnel department is
the main agency to co.ordinate the entire activity as per rules
and regulations. The department furnishes the details of the
accident and employees in1ured there in. Safety 3ngineering
Department conforms the same. % medical board is
constituted to access the loss of earning capacity. 2inance
department provides details of last AC months salary of the
employee for computation of average salary used for
computation of compensation amount to be paid. %lso
finance department ma(es the final payment of the
compensation amount on receipt of order from personnel
department.
• #ompensation amount to be paid to the employee is
computed based on the guidelines from #ompensation %ct$
ABC7. It includes the factor based on age$ minimum amount
to be paid as per %ct and percentage of loss of permanent
earning capacity.
Input5
6utput5
Processing5
Safety Functions
!eave Compensation
3fficient
0anpo*er
>tili/ation
%ccident detail
0aintenance
&eave Records
0anagement
:.2.3 /R "a-ayak9 "y0tem Concept for "afety 4unction and Compen0ation
:.2.6 /R "a-ayak9 "y0tem Concept for "afety 4unction and Compen0ation
:.2.: 4unctional /ierarc-y iagram epict0 2enu "tructure
:.' ,on1functional Re;uirement0
2unctional re,uirements are associated *ith specific functions$ tas(s or behaviours the
system must support$ *hile non.functional re,uirements are constraints on various attributes
of these functions or tas(s. In terms of the ,uality characteristics for evaluation$ the
functional re,uirements address the ,uality characteristic of functionality *hile the other
,uality characteristics are concerned *ith various (inds of non.functional re,uirements. <on.
functional re,uirements are stated in terms of constraints on the results of tas(s$ *hich are
given as functional re,uirements e.g.$ constraints on the speed or efficiency of a given
tas(!. The non.functional re,uirements can be thin( as being adverbially related to tas(s or
functional re,uirements5 ho* fast$ ho* efficiently$ ho* safely$ etc.$ is a particular tas( carried
out by a particular systemI
!dentification of non1functional re;uirement0 .
• Portability$ Reliability$ 0aintainability F #orrectablity " %daptability$ reusability$
testability and correctness
:.'.1 Porta7ility
% portability re,uirement is a developer.oriented ,uality re,uirement that specifies a re,uired
amount of portability. Portability is a ,uality factor that is defined for the present pro1ect . as
the ease *ith *hich the System can be moved from one organi/ational$ hard*are$ or
soft*are environment to another.
The typical ob1ectives of a portability re,uirement for the program are to5
• 3nsure that the application or component can be easily and ,uic(ly ported to
specified ne* environments if and *hen necessary.
• 0inimi/e porting costs and schedules.
:.'.2 Relia7ility
% reliability re,uirement is a developer.oriented ,uality re,uirement that specifies a re,uired
amount of reliability
2or the present application$ reliability is a ,uality factor that is defined as the degree to *hich
system operates *ithout failure under given conditions during a given time period.
The typical ob1ectives of 0aintainability Re,uirement for The system are5
• 3nsure that system *ill function properly for long periods *ithout failure.
• Thereby minimi/e any unintentional disruptions in operation i.e.$ unscheduled
do*ntime!.
:.'.' 2aintaina7ility
% maintainability re,uirement is a developer.oriented ,uality re,uirement that specifies a
re,uired amount of maintainability
2or the present application$ maintainability is a ,uality factor that is defined as the degree to
*hich something can be maintained *hile in use.

The typical ob1ectives of 0aintainability Re,uirement for The system are5
• 3nsure that minor defects in the application or component are easy to correct.
• 3nsure that minor enhancements to the application or component are relatively easy
to implement.
• 0inimi/e maintenance costs.
• 0inimi/e maintenance organi/ation staffing needs e.g.$ to free up maintenance
programmers for ne* development!.
Different types of maintainability re,uirements for The system5
• #orrectability Re,uirements corrective maintenance!$ *hich is restricted to fi)ing
defects *hile system is in use.
o It is concerned *ith the ease to *hich minor defects can be corrected
bet*een ma1or releases of the system i.e.$ *hile the thing *ith defects is in
use!.
o 3nsure that minor defects in the application or component can be easily and
,uic(ly5
? Identified$
? >nderstood$ and
? #orrected.
o 0inimi/e defect correction costs.
• 3)tensibility Re,uirements adaptive maintenance!$ *hich is restricted to minor
enhancements of the application.
o It is concerned *ith the degree to *hich system can be enhanced in the
future to meet changing re,uirements or goals.
o The system should be developed in such a *ay that it enables architects and
designers to partially base their choices on foreseen enhancements.
o The design should ensure that future enhancements to an application or
component can be easily and ,uic(ly to implemented.
o 0inimi/e enhancement costs.
It should be e)tendible. The application is made to parse HT0& te)t documents to
create the &e)icon. It should be designed in such a *ay that the parsing to L0&
documents etc. can be possible 1ust by attaching an additional module for e)tracting
le)icon data from a particular format.
To provide ease to maintain The system and components the application should provide5
• 0odular soft*are
• Information hiding implementation
• ;ell.defined interfaces
• 6b1ect.orientation and component.based development.
• ;ell documented . #omplete and current documentation.
• %dherence to pro1ect conventions.
:.'.3 Reu0a7ility
% reusability re,uirement is a developer.oriented ,uality re,uirement that specifies a
re,uired amount of reusability. 2or the present application$ reusability is a ,uality factor that
is defined as the ease of and ability for all or part of the system can be reused for purposes
other than the one for *hich it is being developed.
The typical ob1ectives of Reusability Re,uirement for the current application are5
• Increase current reuse by developing the application4s components and
documentation by using e)isting reusable *or( products.
• Increase future reuse by developing the application4s components and
documentation that shall be potentially reusable for purposes other than originally
intended e.g.$ as part of future system applications!.
:.'.6 *e0ta7ility
% testability re,uirement is a developer.oriented ,uality re,uirement that specifies a re,uired
amount of testability. 2or the present application$ testability is a ,uality factor that is defined
as the degree to *hich system application facilitates the creation and e)ecution of
successful tests i.e.$ tests that cause failures due to underlying defects!.
The typical ob1ectives of testability Re,uirement for the current application are5
• 3nsure that the system is feasible to test.
• #an be tested effectively and efficiently.
• 0inimi/e the cost of testing.
• 0a)imi/e the defects that can be found by testing.

:.'.: Correctne00
% correctness re,uirement is a developer.oriented ,uality re,uirement that specifies a
re,uired amount of correctness. 2or the present application$ correctness is a ,uality factor
that is defined as the degree to *hich the *or(ing of system and its outputs shall be free
from defects once the *or( product is delivered.
The typical ob1ectives of correctness re,uirement for the current application are5
• 3nsure that the *or( product does not contain an unacceptable number of latent
defects.
• 3nsure that all numerical data returned or stored by an application or component are
sufficiently accurate$ precise$ and up to date.
The system is re,uired to abide by the correctness re,uirements such that it meets the
associated users4 needs and e)pectations$ regardless of *hether or not these needs and
e)pectations are specified as re,uirements.
=. =. "oftware e0ign "oftware e0ign
=.1 ata7a0e e0ign
Database design is the process of producing a detailed data model of a database. This
model contains all the needed physical design choices and physical storage parameters
needed to generate DD& *hich can then be used to create a database. % fully attributed data
model contains detailed attributes for each entity.
=.1.1 +ntity1relation0-ip model
The 3ntity.Relationship model is a data model for high.level descriptions of conceptual data
models$ and it provides a graphical notation for representing such data models in the form of
entity.relationship diagrams. Such data models are typically used in the first stage of
information.system design+ they are used$ for e)ample$ to describe information needs andJor
the type of information that is to be stored in the database during the re,uirements analysis.
The modelling techni,ue$ ho*ever$ can be used to describe any ontology i.e. an overvie*
and classification of used terms and their relationships! for a certain universe of discourse
i.e. area of interest!. In the case of the design of an information system that is based on a
database$ the conceptual data model is$ at a later stage usually called logical design!$
mapped to a logical data model$ such as the relational model+ this in turn is mapped to a
physical model during physical design. Sometimes$ both of these phases are referred to as
"physical design".
=.1.2 Reduction of an +1R "c-ema to *a7le0
% database that is represented as an 3.R database schema can be represented as a
collection of tables. 2or each entity set and for each relationship set in the database$ there
is a uni,ue table.
-oth 3.R model and the relational.database model are abstract$ logical representations of
real.*orld enterprises. -ecause t*o models employ similar design principles$ it is possible
to convert an 3.R design into a relational design.
The set of Tables turned out to be5
• %ccidentMDet
• #ompensation
• &eave
• &eaveMDet
• &eaveM3ncash
• &eaveM&imit
• #ompM%ct
• %ccident
• #ompM3arnM&ossMTable
• &ocation
• 0achine
• &eaveMIntMHoliday
• #ompM2actor
• PerM#ategory
• %ccM#ategory
• -odyMPart
• &eaveMType
• Ignorant
• In1uryM<ature
• #ause
• -asicM&eaveMType
• &eaveMRule
• >nsafeM#ondition
• >nsafeM%ct
• 3,uipment
=.1.' *a7le0 1 !nternal0
ACCIDENT_IDSLNONAMEAGE
SHIFTALIVEADDR1ADDR2AD
DR3CITYSTATEUNFIT_FROM
UNFIT_TOMEDICAL_COSTWA
GE_COSTINDIRECT_COSTMA
N_HR_LOSTPLNODEPT_CODE
SUB_DEPT_CODEWORK_AREA
_CODEGRADE_CODEDESG_CO
DEDSG_SUFFIXINJ_NATURE
_CODEBODY_PART_CODEPER
_CAT_CODEACC_CAT_CODEU
NSAFE_ACT_CODEIGNORANT
_CODEREMARK
ACCIDENT_IDSLNONAMEAGE
SHIFTALIVEADDR1ADDR2AD
DR3CITYSTATEUNFIT_FROM
UNFIT_TOMEDICAL_COSTWA
GE_COSTINDIRECT_COSTMA
N_HR_LOSTPLNODEPT_CODE
SUB_DEPT_CODEWORK_AREA
_CODEGRADE_CODEDESG_CO
DEDSG_SUFFIXINJ_NATURE
_CODEBODY_PART_CODEPER
_CAT_CODEACC_CAT_CODEU
NSAFE_ACT_CODEIGNORANT
_CODEREMARK
ACCIDENT_IDACCIDENT_DE
T_SLNOAPPLLICATION_DAT
EPLNOAGEFACTORAVG_SALA
RYEARN_LOSSDSCRORD_NOO
RD_DATECOMP_AMOUNTWAGE
_UPPER_LIMITCOMP_ACT_V
ALID_FROMCOMP_ELT_VALI
D_FROMCOMP_ELT_SLNOCOM
P_FACT_VALID_FROMFATAL
_PCTFATAL_LOW_AMOUNTNO
N_FATAL_PCTNON_FATAL_L
OW_AMOUNT
PLNOLEAVE_TYPE_CODEDAT
E_FROMDATE_TOSTATION_L
EAVESTATUSREASONADDR1A
DDR2ADDR3CITYSTATEPHON
EORD_NOORD_DATE
PLNOTYPE_CODELEAVE_DAT
E_FROMSLNODATE_FROMDAT
E_TOBASIC_LEAVE_CODENO
_OF_DAYSENTERY_ONFLAGA
CCIDENT_IDACCIDENT_SLN
OFIN_XFR_DATEFIN_XFR_S
TATUS
PLNOBASIC_LEAVE_CODESL
NOENCASH_MTH_YRNO_OF_D
AYSAMOUNTENTRY_ONFLAGS
TATUSFIN_XFR_DATEFIN_X
FR_STATUS

BASIC_LEAVE_CODELEAVE_
RULE_CODEVALID_FROMVAL
ID_TONO_OF_DAYSREQ_PR_
DAYS_YRBONUS_DAYS_YRDA
YS_LIMIT_YR
VALID_FROMVALID_TOFATA
L_PCTFATAL_LOWNON_FATA
L_PCTNON_FATAL_LOW_AMO
UNTWAGE_UPPER_LIMITACT
_DSCR
IDINCIDENT_DATEDSCRLOC
ATION_CODECAUSE_CODEUN
SAFE_CON_CODESAFETY_AC
TION
SLNOVALID_FROMVALID_TO
DSCREARN_LOSS_PCTDISPL
AY_SLNO
CODEDSCRDEPT_CODESUB_D
EPT_CODEWORK_AREA_CODE
ACCIDENT_IDSLNOEQUIPTM
ENT_CODEMC_HR_LOSTREMA
RKS
PLNOLEAVE_TYPE_CODELEA
VE_DATE_FROMHOLIDAY_DA
TEOFF_HOLIDAY
AGEVALID_FROMVALID_TOF
ACTOR
CODEDSCRPER_CAT_TYPE
CODEDSCRAC_CATEGORY_TY
PE
CODEDSCRBODY_PART
CODEDSCRNO_OF_DAYS



CODEDSCR CODEDSCR
CODEDSCR CODEDSCR
CODEDSCR CODEDSCR
CODEDSCR CODEDSCREQUIP_TYPE
=.1.3 2odule wi0e *a7le A00ociation
0odule *ise the functions carried out at DSP is mentioned earlier$ *hile studying functional
re,uirements. Here for each module function *ise associated table is sho*n. %lso table *ise
field level detail is enclosed. This gives the complete idea about the information that *ill be
captured in the developed system for any function.
"afety 2odule
The person from Safety 3ngineering Department *ill be responsible for operating functions
under this module. Safety department *ill enter the data for accident and unfit duration
I6;! in case of employee4s accident. -uilding of up.to.date full employee database is
mandatory for implementation of this module. 2unction *ise associated tables are5
S.<o. 2unction J Description %ssociated Table for field detail
Standardi/ation 0odules
A. %ccident #ategory %##M#%T3=6RN
C. %ccident #ause #%>S3
7. >nsafe #ondition ><S%23M#6<DITI6<
9. >nsafe %ct ><S%23M%#T
E. =eographic &ocation of %ccident &6#%TI6<
G. Person #ategory P3RM#%T3=6RN
:. In1ury <ature I<'>RNM<%T>R3
8. -ody Part In1ured -6DNMP%RT
B. 3,uipment Type 3K>IP03<T
AD. Ignorance I=<6R%<T
Transaction 0odules
A. Details of incidence %##ID3<T
C. Details of persons4 affected %##ID3<TMD3T
7. Details of machineJe,uipment 0%#HI<3MD3T
3mployee is entitled to get compensation for the permanent earning loss capacity as per
rules and regulation. Developed system *ill incorporate this function to be operated by
personnel department. Safety department *ill not operate the compensation paid for
accident. Ho*ever$ they *ill have access to vie* the same.
ACCIDENT_IDSLNONAMEAGES
HIFTALIVEADDR1ADDR2ADDR3
CITYSTATEUNFIT_FROMUNFIT
_TOMEDICAL_COSTWAGE_COST
INDIRECT_COSTMAN_HR_LOST
PLNODEPT_CODESUB_DEPT
_CODEWORK_AREA_CODEGRA
DE_CODEDESG_CODEDSG_SUF
FIXINJ_NATURE_CODEBODY
_PART_CODEPER_CAT_CODE
ACC_CAT_CODEUNSAFE_ACT_
CODEIGNORANT_CODEREMARK
Compen0ation 2odule
#ompensation payment includes five agencies as mentioned above. Ho*ever the developed
soft*are *ill have interaction *ith Safety 3ngineering Department " Personnel Department.
The medical board could not be thought of due to non.availability of net*or( connectivity.
6ther departments *ere discarded$ as implementation is difficult *hen too many persons
are involved for the operation.
Personnel department *ill operate this module centrally. The data created *ill be lin(ed *ith
accident information. The pre.re,uisite for implementation of this module is availability of
• >p.to.date full employee database
• >p.to.date accident information
The soft*are *ill compute the compensation amount to be paid based on the logic given by
DSP. -ut one can change this amount manually if re,uired. The formula used for
compensation amount is given belo*5
#ompensation %mountO P #ompensation 2actor L Percentage of permanent
earning capacity loss L Percentage to be paid 2atal J
<on.2atal as per #ompensation %ct! L %vg salary of
employee or ma)imum *age limit as per #ompensation
%ct
O #omputed #ompensation %mount should be more than the minimum amount as specified
in #ompensation %ct 2atalJ<on.2atal! other*ise minimum amount as per %ct *ill be the
#ompensation %mount
Sl<o 2unction J Description %ssociated Table for field detail
IDINCIDENT_DATEDSCRLOCAT
ION_CODECAUSE_CODEUNSA
FE_CON_CODESAFETY_ACTIO
N
Standardi/ation 0odules
A. #ompensation %ct Detail #60PM%#T
C. 2actor for *or(ing out compensation #60PM2%#T6R
7. Permanent earning capacity loss Q! #60PM3%R<M&6SSMT%-&3
Transaction 0odules
A. #ompensation Payment #60P3<S%TI6<
In the computeri/ed system P6s *ill operate I6; leave that is lin(ed to accident. The
system *ill insure that such type of leave is lin(ed to appropriate accident. Thus I6; leave
operation *ill depend upon the up.to.date accident information.
&eave 2anagement 2odule
ACCIDENT_IDACCIDENT_DE
T_SLNOAPPLLICATION_DATE
PLNOAGE
COMP_FACT_VALID_FROMFAC
TORAVG_SALARYEARN_LOSSDS
CRORD_NOORD_DATECOMP_AMO
UNTWAGE_UPPER_LIMITCOMP
_ACT_VALID_FROMCOMP_ELT
_VALID_FROMCOMP_ELT_SLN
OFATAL_PCTFATAL_LOW_AMOU
NTNON_FATAL_PCTNON_FATAL
_LOW_AMOUNT
The computeri/ed leave record system *ill not only provide easy access of available
information at #"IT but *ill help personnel department to ta(e out the leave orders. The
personnel officer *ill operate this module. The soft*are *ill validate the leave related data
entry based on employee *ise balanced leave account in Payroll System at #"IT. This
module *ill have on.line access of leave and attendance data of payroll system. The
soft*are under this module *ill deal *ith
• &eave Rule
• &eave limitation as per leave rule
• 3ntry " ?alidation of &eave Record &eave #onsumption!
• Display of balance leave account
• Display of attendance data
• Printing of various leave order
The module *ill not have interface for employees4 attendance and *ill e)clude the soft*are
for leave accumulation and leave accounting. These functions are already operational at
#"IT department as mentioned earlier. The functional e)isting system *ill be coupled *ith
this module.
RD#IS discussed *ith #"IT and personnel department regarding the access of leave and
attendance data in Payroll System. It *as agreed upon that #"IT *ould provide read only
data access in the follo*ing structure5
Sl<o 2ield <ame 2ield Type Remar(s
A. attMt(tMno <>0-3RE! Tic(et <o
C. attMduty <>0-3RC! <o. of duty days
7. attMoff <>0-3RC! <o. of off days
9. attMfl <>0-3RC! <o. of 2estival &eave days
E. attMel <>0-3RC! <o. of 3arn &eave days
G. attMcl <>0-3RC! <o. of #asual &eave days
:. attMcomm. <>0-3RC! <o. of #ommuted &eave days
8. attMhpl <>0-3RC! <o. of Half Pay &eave days
B. attMofpl <>0-3RC! <o. of 6ther 2ull Pay &eave days
AD. attMeol <>0-3RC! <o. of 3)tra 6rdinary &eave days
AA. attMabs <>0-3RC! <o. of %bsent days
AC. attMmm <>0-3RC! 0onth
A7. attMyyyy <>0-3R9! Near
Soft*are developed by RD#IS *ill use this information for leave record data entry validation.
RD#IS *ill create necessary vie* once read access is granted by #"IT. 2unction *ise
associated tables are5
Sl<o 2unction J Description %ssociated Table for field detail
Standardi/ation 0odules
A. &eave Rule &3%?3MR>&3
C. -asic &eave Type -%SI#M&3%?3MTNP3
7. &eave Type &3%?3MTNP3
9. &eave limitation as per Rule &3%?3M&I0IT
E. %ttendance J &eave from Pay -ills %TTM0%ST3RMP-
Transaction 0odules
A. &eave availedJconsumed &3%?3
C. DetailsJcomposition of leave &3%?3MD3T
7. Intervening Holidays &3%?3MI<TMH6&ID%N
&eave 3ncashment &3%?3M3<#%SH
=.2 (0er !nterface #4orm$ e0ign
%ccording to RThe Dictionary of #omputing4$ >ser Interface Design refers to the aspects of
hard*are or soft*are *hich can be seen or heard or other*ise perceived! by the human
user$ and the commands and mechanisms the user uses to control its operation and input
data.
;hile >ser Interface Design is often used for computer systems$ it is the part of any system
e)posed to a user. In a computer system$ the user typically interacts *ith an operating
system or *ith application soft*are such as a spreadsheet or a *ord processor. ;ith
systems$ the user interacts using menus$ icons$ (eystro(es$ mouse clic(s$ and similar
capabilities.
In this pro1ect$ a set of CA possible >ser.computer interaction points are identified. So$ the
possible set of >ser Interfaces can be5
• %ccident Detail
• 3mployee4s &eave 3ncashment
• Safety 0aster
o %ccident #ategory
o -ody Parts
o #ause
o 3,uipment
o Ignorant
o In1ury <ature
o &ocation
o Person #ategory
o >nsafe %ct
o >nsafe #ondition
• &eave &imitation <o. of Days!
• &&T# -loc( Nears
• -asic &eave Type
• &eave Type
• Relation
• &eave Rules
• ;or(men's #ompensation 2actor
• In1uries Resulting in Permanent &oss of 3arning #apacity
• ;or(men's #ompensation %ct Detail
=.2.1 (0er !nterface e0ign9 Accident etail
"ccident Detail
Incidence
ID Date &oc Department S
Dp
%rea
#ause >nsafe
#on
Detail Safe %ct
"ccident Detail
S. <o. %cc
#ategory
Shift Per
#ategory
PI<
no
<ame %ge =rd Desg Suff. %dd
Dept Sub Dept ;
%rea
-ody Part In1ury <ature >nsafe %ct Ignor
e
unfit
frm
>nfit
to
3arn &oss #ompensation amount " dt. 0an hr lost 0an hr cost ;age #ost Ind #ost %live
=.2.2 (0er !nterface e0ign9 +mployee>0 &eave +nca0-ment
#mployee$s !eave #ncas%ment
Pl <o. 2irst <ame &ast <ame &eave Type
SI <o. 3ncash
Dt
mm.
yyyy!
<o.
of
Days
%moun
t
3ntry
on
PaidJ
cancell
ed
&v..
%J#
2lag
2in Lfr
Date
2in Lfr
Status
=.2.' (0er !nterface e0ign9 "afety 2a0ter 1 Accident Category
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
"ccident Category
#ode Description %cc #at Type
=.2.3 (0er !nterface e0ign9 "afety 2a0ter 1 Body Part0
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
'ody (arts
#ode Description -ody Part
=.2.6 (0er !nterface e0ign9 "afety 2a0ter 1 Cau0e
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
Cause
#ode Description
=.2.: (0er !nterface e0ign9 "afety 2a0ter 1 +;uipment
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
#quipment
#ode Description 3,uipment Type
=.2.= (0er !nterface e0ign9 "afety 2a0ter 1 !gnorant
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
Ignorant
#ode Description
=.2.? (0er !nterface e0ign9 "afety 2a0ter 1 !n.ury ,ature
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
In)ury *ature
#ode Description
=.2.@ (0er !nterface e0ign9 "afety 2a0ter 1 &ocation
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
!ocation
#ode Description Dept Sub.Dept ;or( %rea
=.2.1A (0er !nterface e0ign9 "afety 2a0ter 1 Per0on Category
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
(erson Category
#ode Description Per #at. Type
=.2.11 (0er !nterface e0ign9 "afety 2a0ter 1 (n0afe Act
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
nsafe "ct
#ode Description
=.2.12 (0er !nterface e0ign9 "afety 2a0ter 1 (n0afe Condition
Safety &aster
%## -ody #ause 3,uip Ignore In1ury &oc Per %ct #ond.
nsafe Condition
#ode Description
=.2.1' (0er !nterface e0ign9 &eave &imitation #,o. of ay0$
!eave !imitation +*o, of
Days-
&eave
#ode
&eave Rule ?alidity 0a) &eave
%ccum Days!
Re,
Pr
DaysJ
Nr
-onus
DaysJ
Nr
0a)
&eave
#ode Dscr 2rom To %ccumJNr
=.2.13 (0er !nterface e0ign9 &&*C Block Bear0
!!TC 'loc. /ears
-loc( Standard
=.2.16 (0er !nterface e0ign9 Ba0ic &eave *ype
'asic !eave Type
#ode Description
=.2.1: (0er !nterface e0ign9 &eave *ype
!eave Type
#ode Description Permitted 0a) Days
=.2.1= (0er !nterface e0ign9 Relation
Relation
#ode
=.2.1? (0er !nterface e0ign9 &eave Rule0
!eave Rules
#ode Description
=.2.1@ (0er !nterface e0ign9 5orkmenC0 Compen0ation 4actor
Wor.men$s Compensation Factor
?alid from Date ?alid to Date %ge Nears #ompensation 2actor
=.2.2A (! e0ign9 !n.urie0 Re0ulting in Permanent &o00 of +arning Capacity
In)uries Resulting in (ermanent !oss of #arning Capacity
SI <o Description of In1ury Q 3arning
&oss
Disp.
6rder
?alid from
Date
?alid
to Date
=.2.21 (0er !nterface e0ign9 5orkmenC0 Compen0ation Act etail
Wor.men$s Compensation "ct Detail
?alid
2rom
?alid To
2atal %ccident <on . 2atal
%ccident
;age 0a)! Description
Pay
Q
0in.
%mount
Pay
Q
0in.
%mount
?. ?. "oftware evelopment "oftware evelopment
In consultation *ith concerned person from DSP$ RD#IS *ould carry out the application
soft*are development follo*ing the standard approach of SS%D System %nalysis %nd
Design!. The soft*are developed *ill be open in nature allo*ing dynamic additions and
modifications of standardi/ation module by the users themselves. The hard coding *ill be
avoided and *herever re,uired a loo(.up table *ill be provided for easy data entry. RD#IS
*ould handover the 3RD 3ntity Relation Diagram! and entire source code to DSP on
completion of the pro1ect. The soft*are *ill be developed for client.server environment
having 6racle Bi as bac( end database on ><IL platform$ *hile Developer Gi as front.end
tool on ;indo*s platform.
Salient features of soft*are
• Single integrated database
• Data sharing *ith security
• Interfaces for users having different role.
• Data capturing at source
• Data integration " validation
• <o duplication of data. #lose coupling *ith e)isting HRIS and leave module of
Payroll System.
?.1 ata Population
DSP shall be responsible for e)traction or building of master data. The master data *ill be
collected or e)tracted into a flat file by DSP. RD#IS *ill e)tend help to load data into 6racle
Bi database from the prepared flat files. The soft*are *ill be tested against population of
some of the real life accident data both fatal and non.fatal cases *ith and *ithout
compensation payment. Ho*ever$ entire data loading is not in the purvie* of the pro1ect.
DSP *ill be responsible for the implementation of the computeri/ed system *hile RD#IS *ill
e)tend all (ind of soft*are support during the implementation.
?.2 /ardware & "y0tem "oftware
The hard*are and associated soft*are items other than the application soft*are *ill be
provided by DSP. The installation of hard*are$ system soft*are including 6racle RD-0S$
front.end oracle tools Developer Gi! *ill be done by DSP. Similarly responsibility of net*or(
design$ net*or( components procurement and their installation *ill lie *ith DSP. RD#IS *ill
be responsible for installation of application soft*are at the client machine and ma(ing it
operational at node.
@. @. Coding Coding
@.1 "D& Code
CODES FOR MASTER TABLE STANDARDISATION
CREATE TABLE ACC_CATEGORY !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL#
ACC_CAT_TYPE VARCHAR2!1" NOT NULL"
CREATE TABLE BODY_PART !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL#
BODY_PART VARCHAR2!1" NOT NULL"
CREATE TABLE CAUSE !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE EQUIPMENT !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL#
EQUIP_TYPE VARCHAR2!1" NOT NULL"
CREATE TABLE IGNORANT !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE INJURY_NATURE !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE LOCATION !CODE VARCHAR2!$" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL#
DEPT_CODE NUMBER!&" NOT NULL#
SUB_DEPT_CODE NUMBER!3" NOT NULL#
WORK_AREA_CODE VARCHAR2!1%" NOT NULL"
CREATE TABLE PER_CATEGORY !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL#
PER_CAT_TYPE VARCHAR2!1" NOT NULL"
CREATE TABLE UNSAFE_CONDITION !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE UNSAFE_ACT !CODE VARCHAR2!3" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE ACCIDENT !ID NUMBER!'" NOT NULL#
INCIDENT_DATE DATE NOT NULL#
DSCR VARCHAR2!$%%" NOT NULL#
LOCATION_CODE VARCHAR2!$" NOT NULL#
CAUSE_CODE VARCHAR2!3" NOT NULL#
UNSAFE_CON_CODE VARCHAR2!3" NOT NULL#
SAFETY_ACTION VARCHAR2!2%%""
CREATE TABLE ACCIDENT_DET !ACCIDENT_ID NUMBER!'" NOT NULL#
SLNO NUMBER!3" NOT NULL#
NAME VARCHAR2!$%" NOT NULL#
AGE NUMBER!3" NOT NULL#
SHIFT VARCHAR2!1" NOT NULL#
ALIVE VARCHAR2!1" NOT NULL#
ADDR1 VARCHAR2!$%"#
ADDR2 VARCHAR2!$%"#
ADDR3 VARCHAR2!$%"#
CITY VARCHAR2!2%"#
STATE VARCHAR2!2%"#
UNFIT_FROM DATE#
UNFIT_TO DATE#
MEDICAL_COST NUMBER!1&#2"#
WAGE_COST NUMBER!1&#2"#
INDIRECT_COST NUMBER!1&#2"#
MAN_HR_LOST NUMBER!$"#
PLNO NUMBER!'"#
DEPT_CODE NUMBER!&"#
SUB_DEPT_CODE NUMBER!3"#
WORK_AREA_CODE VARCHAR2!1%"#
GRADE_CODE VARCHAR2!$"#
DESG_CODE VARCHAR2!1%"#
DESG_SUFFIX VARCHAR2!1%"#
INJ_NATURE_CODE VARCHAR2!3" NOT NULL#
BODY_PART_CODE VARCHAR2!3" NOT NULL#
PER_CAT_CODE VARCHAR2!3" NOT NULL#
ACC_CAT_CODE VARCHAR2!3" NOT NULL#
UNSAFE_ACT_CODE VARCHAR2!3" NOT NULL#
IGNORANT_CODE VARCHAR2!3" NOT NULL#
REMARKS VARCHAR2!1%%""
CREATE TABLE MACHINE_DET !ACCIDENT_ID NUMBER!'" NOT NULL#
SLNO NUMBER!3" NOT NULL#
EQUIPMENT_CODE VARCHAR2!3" NOT NULL#
MC_HR_LOST NUMBER!$#1" NOT NULL#
REMARKS VARCHAR2!1%%""
CREATE TABLE COMP_ACT !VALID_FROM DATE NOT NULL#
VALID_TO DATE#
FATAL_PCT NUMBER!$#2" NOT NULL#
FATAL_LOW_AMOUNT NUMBER!1&#2" NOT NULL#
NON_FATAL_PCT NUMBER!$#2" NOT NULL#
NON_FATAL_LOW_AMOUNT NUMBER!1&#2" NOT NULL#
WAGE_UPPER_LIMIT NUMBER!1&#2" NOT NULL#
ACT_DSCR VARCHAR2!3%%""
CREATE TABLE COMP_EARN_LOSS_TABLE !VALID_FROM DATE NOT NULL#
VALID_TO DATE#
SLNO VARCHAR2!(" NOT NULL#
DSCR VARCHAR2!1%%" NOT NULL#
EARN_LOSS_PCT NUMBER!$#2" NOT NULL#
DISPLAY_SLNO NUMBER!'" NOT NULL"
CREATE TABLE COMP_FACTOR !VALID_FROM DATE NOT NULL#
VALID_TO DATE#
AGE NUMBER!&#1" NOT NULL#
FACTOR NUMBER!(#3" NOT NULL"
CREATE TABLE COMPENSATION !ACCIDENT_ID NUMBER!'" NOT NULL#
ACCIDENT_DET_SLNO NUMBER!3" NOT NULL#
APPLICATION_DATE DATE NOT NULL#
PLNO NUMBER!'" NOT NULL#
AGE NUMBER!&#1" NOT NULL#
FACTOR NUMBER!(#3" NOT NULL#
AVG_SALARY NUMBER!1&#2" NOT NULL#
EARN_LOSS_PCT NUMBER!$#2" NOT NULL#
DSCR VARCHAR2!3%%"#
ORD_NO VARCHAR2!$%" NOT NULL#
ORD_DATE DATE NOT NULL#
COMP_AMOUNT NUMBER!1&#2" NOT NULL#
WAGE_UPPER_LIMIT NUMBER!1&#2" NOT NULL#
COMP_ACT_VALID_FROM DATE NOT NULL#
COMP_ELT_VALID_FROM DATE NOT NULL#
COMP_ELT_SLNO VARCHAR2!(" NOT NULL#
COMP_FACT_VALID_FROM DATE NOT NULL#
FATAL_PCT NUMBER!$#2"#
FATAL_LOW_AMOUNT NUMBER!1&#2"#
NON_FATAL_PCT NUMBER!$#2"#
NON_FATAL_LOW_AMOUNT NUMBER!1&#2""
CREATE TABLE LEAVE_RULE !CODE NUMBER!2" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE BASIC_LEAVE_TYPE !CODE VARCHAR2!)" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL"
CREATE TABLE LEAVE_TYPE !CODE NUMBER!2" NOT NULL#
DSCR VARCHAR2!$%" NOT NULL#
NO_OF_DAYS NUMBER!&""
CREATE TABLE LEAVE_LIMIT !BASIC_LEAVE_CODE VARCHAR2!)" NOT NULL#
LEAVE_RULE_CODE NUMBER!2" NOT NULL#
VALID_FROM DATE NOT NULL#
VALID_TO DATE#
NO_OF_DAYS NUMBER!&" NOT NULL#
REQ_PR_DAYS_YR NUMBER!3"#
BONUS_DAYS_YR NUMBER!3"#
DAYS_LIMIT_YR NUMBER!3""
CREATE TABLE LEAVE !PLNO NUMBER!'" NOT NULL#
LEAVE_TYPE_CODE NUMBER!2" NOT NULL#
DATE_FROM DATE NOT NULL#
DATE_TO DATE NOT NULL#
STATION_LEAVE_PER VARCHAR2!1" NOT NULL#
STATUS VARCHAR2!1" NOT NULL#
REASON VARCHAR2!1%%" NOT NULL#
ADDR1 VARCHAR2!$%"#
ADDR2 VARCHAR2!$%"#
ADDR3 VARCHAR2!$%"#
CITY VARCHAR2!2%"#
STATE VARCHAR2!2%"#
PHONE VARCHAR2!2%"#
ORD_NO VARCHAR2!$%"#
ORD_DATE DATE"
CREATE TABLE LEAVE_DET
!PLNO NUMBER!'" NOT NULL#
TYPE_CODE NUMBER!2" NOT NULL#
LEAVE_DATE_FROM DATE NOT NULL#
SLNO NUMBER!2" NOT NULL#
DATE_FROM DATE NOT NULL#
DATE_TO DATE NOT NULL#
BASIC_LEAVE_CODE VARCHAR2!)" NOT NULL#
NO_OF_DAYS NUMBER!$#1" NOT NULL#
ENTERY_ON DATE NOT NULL#
FLAG VARCHAR2!1" NOT NULL#
ACCIDENT_ID NUMBER!'"#
ACCIDENT_SLNO NUMBER!3"#
FIN_XFR_DATE DATE#
FIN_XFR_STATUS VARCHAR2!1""
CREATE TABLE LEAVE_INT_HOLIDAY !PLNO NUMBER!'" NOT NULL#
LEAVE_TYPE_CODE NUMBER!2" NOT NULL#
LEAVE_DATE_FROM DATE NOT NULL#
HOLIDAY_DATE DATE NOT NULL#
OFF_HOLIDAY VARCHAR2!1" NOT NULL"
CREATE TABLE LEAVE_ENCASH !PLNO NUMBER!'" NOT NULL#
BASIC_LEAVE_CODE VARCHAR2!)" NOT NULL#
SLNO NUMBER!3" NOT NULL#
ENCASH_MTH_YR DATE NOT NULL#
NO_OF_DAYS NUMBER!&" NOT NULL#
AMOUNT NUMBER!1&#2" NOT NULL#
ENTRY_ON DATE NOT NULL#
FLAG VARCHAR2!1" NOT NULL#
STATUS VARCHAR2!1"#
FIN_XFR_DATE DATE#
FIN_XFR_STATUS VARCHAR2!1""
ALTER TABLE ACC_CATEGORY
ADD CONSTRAINT ACC_CAT_PK PRIMARY KEY !CODE"
ALTER TABLE BODY_PART
ADD CONSTRAINT BODY_PART_PK PRIMARY KEY !CODE"
ALTER TABLE CAUSE
ADD CONSTRAINT CAUSE_PK PRIMARY KEY !CODE"
ALTER TABLE EQUIPMENT
ADD CONSTRAINT EQUIPMENT_PK PRIMARY KEY !CODE"
ALTER TABLE IGNORANT
ADD CONSTRAINT IGNORANT_PK PRIMARY KEY !CODE"
ALTER TABLE INJURY_NATURE
ADD CONSTRAINT INJ_NATURE_PK PRIMARY KEY !CODE"
ALTER TABLE LOCATION
ADD CONSTRAINT LOCATION_PK PRIMARY KEY !CODE"
ALTER TABLE LOCATION
ADD CONSTRAINT LOCATION_WORK_AREA_FK FOREIGN KEY !DEPT_CODE# SUB_DEPT_CODE# WORK_AREA_CODE"
REFERENCES WORK_AREA !DEPT_CODE# SUB_DEPT_CODE# CODE"
ALTER TABLE PER_CATEGORY
ADD CONSTRAINT PER_CAT_PK PRIMARY KEY !CODE"
ALTER TABLE UNSAFE_ACT
ADD CONSTRAINT UNSAFE_ACT_PK PRIMARY KEY !CODE"
ALTER TABLE UNSAFE_CONDITION
ADD CONSTRAINT UNSAFE_CON_PK PRIMARY KEY !CODE"
ALTER TABLE ACCIDENT
ADD CONSTRAINT ACCIDENT_PK PRIMARY KEY !ID"
ALTER TABLE ACCIDENT
ADD CONSTRAINT ACCIDENT_LOCATION_FK FOREIGN KEY !LOCATION_CODE" REFERENCES LOCATION !CODE"
ADD CONSTRAINT ACCIDENT_CAUSE_FK FOREIGN KEY !CAUSE_CODE" REFERENCES CAUSE !CODE"
ADD CONSTRAINT ACCIDENT_UNSAFE_CON_FK FOREIGN KEY !UNSAFE_CON_CODE" REFERENCES
UNSAFE_CONDITION !CODE"
ALTER TABLE ACCIDENT_DET
ADD CONSTRAINT ACIDENTDET_PK PRIMARY KEY !ACCIDENT_ID# SLNO"
ALTER TABLE ACCIDENT_DET
ADD CONSTRAINT ACIDENTDET_ACC_CAT_FK FOREIGN KEY !ACC_CAT_CODE" REFERENCES ACC_CATEGORY
!CODE"
ADD CONSTRAINT ACIDENTDET_UNSAFE_ACT_FK FOREIGN KEY !UNSAFE_ACT_CODE" REFERENCES UNSAFE_ACT
!CODE"
ADD CONSTRAINT ACIDENTDET_IGNORANT_FK FOREIGN KEY !IGNORANT_CODE" REFERENCES IGNORANT !CODE"
ADD CONSTRAINT ACIDENTDET_ACCIDENT_FK FOREIGN KEY !ACCIDENT_ID" REFERENCES ACCIDENT !ID"
ADD CONSTRAINT ACIDENTDET_EMPLOYEE_FK FOREIGN KEY !PLNO" REFERENCES EMPLOYEE !PLNO"
ADD CONSTRAINT ACIDENTDET_WORK_AREA_FK FOREIGN KEY !DEPT_CODE# SUB_DEPT_CODE# WORK_AREA_CODE"
REFERENCES WORK_AREA !DEPT_CODE# SUB_DEPT_CODE# CODE"
ADD CONSTRAINT ACIDENTDET_GRADE_FK FOREIGN KEY !GRADE_CODE" REFERENCES GRADE !CODE"
ADD CONSTRAINT ACIDENTDET_DESG_FK FOREIGN KEY !DESG_CODE" REFERENCES DESG !CODE"
ADD CONSTRAINT ACIDENTDET_INJ_NATURE_FK FOREIGN KEY !INJ_NATURE_CODE" REFERENCES
INJURY_NATURE !CODE"
ADD CONSTRAINT ACIDENTDET_BODY_PART_FK FOREIGN KEY !BODY_PART_CODE" REFERENCES BODY_PART
!CODE"
ADD CONSTRAINT ACIDENTDET_PER_CAT_FK FOREIGN KEY !PER_CAT_CODE" REFERENCES PER_CATEGORY
!CODE"
ALTER TABLE MACHINE_DET
ADD CONSTRAINT MACHINEDET_PK PRIMARY KEY !ACCIDENT_ID# SLNO"
ALTER TABLE MACHINE_DET
ADD CONSTRAINT MACHINEDET_ACCIDENT_FK FOREIGN KEY !ACCIDENT_ID" REFERENCES ACCIDENT !ID"
ADD CONSTRAINT MACHINEDET_EQUIPMENT_FK FOREIGN KEY !EQUIPMENT_CODE" REFERENCES EQUIPMENT
!CODE"
ALTER TABLE LEAVE_RULE
ADD CONSTRAINT LEAVE_RULE_PK PRIMARY KEY !CODE"
ALTER TABLE LEAVE_RULE
ADD CONSTRAINT LEAVE_RULE_UK UNIQUE !DSCR"
ALTER TABLE BASIC_LEAVE_TYPE
ADD CONSTRAINT BASIC_LEAV_PK PRIMARY KEY !CODE"
ALTER TABLE LEAVE_TYPE
ADD CONSTRAINT LEAVE_TYPE_PK PRIMARY KEY !CODE"
ALTER TABLE LEAVE_LIMIT
ADD CONSTRAINT LEAVE_LMT_PK PRIMARY KEY !BASIC_LEAVE_CODE# LEAVE_RULE_CODE# VALID_FROM"
ALTER TABLE LEAVE_LIMIT
ADD CONSTRAINT LEAVE_LMT_LEAVE_RULE_FK FOREIGN KEY !LEAVE_RULE_CODE" REFERENCES LEAVE_RULE
!CODE"
ADD CONSTRAINT LEAVE_LMT_BASIC_LEAV_FK FOREIGN KEY !BASIC_LEAVE_CODE" REFERENCES
BASIC_LEAVE_TYPE !CODE"
ALTER TABLE LEAVE
ADD CONSTRAINT LEAVE_PK PRIMARY KEY !PLNO# LEAVE_TYPE_CODE# DATE_FROM"
ALTER TABLE LEAVE
ADD CONSTRAINT LEAVE_LEAVE_TYPE_FK FOREIGN KEY !LEAVE_TYPE_CODE" REFERENCES LEAVE_TYPE !CODE"
ADD CONSTRAINT LEAVE_EMPLOYEE_FK FOREIGN KEY !PLNO" REFERENCES EMPLOYEE !PLNO"
ALTER TABLE LEAVE_DET
ADD CONSTRAINT LEAVE_DET_PK PRIMARY KEY !PLNO# TYPE_CODE# LEAVE_DATE_FROM# SLNO"
ALTER TABLE LEAVE_DET
ADD CONSTRAINT LEAVE_DET_ACIDENTDET_FK FOREIGN KEY !ACCIDENT_ID# ACCIDENT_SLNO" REFERENCES
ACCIDENT_DET !ACCIDENT_ID# SLNO"
ADD CONSTRAINT LEAVE_DET_LEAVE_FK FOREIGN KEY !PLNO# TYPE_CODE# LEAVE_DATE_FROM" REFERENCES
LEAVE !PLNO# LEAVE_TYPE_CODE# DATE_FROM"
ADD CONSTRAINT LEAVE_DET_BASIC_LEAV_FK FOREIGN KEY !BASIC_LEAVE_CODE" REFERENCES
BASIC_LEAVE_TYPE !CODE"
ALTER TABLE LEAVE_INT_HOLIDAY
ADD CONSTRAINT LEAVEHOLI_PK PRIMARY KEY !PLNO# LEAVE_TYPE_CODE# LEAVE_DATE_FROM#
HOLIDAY_DATE"
ALTER TABLE LEAVE_INT_HOLIDAY
ADD CONSTRAINT LEAVEHOLI_LEAVE_FK FOREIGN KEY !PLNO# LEAVE_TYPE_CODE# LEAVE_DATE_FROM"
REFERENCES LEAVE !PLNO# LEAVE_TYPE_CODE# DATE_FROM"
ALTER TABLE LEAVE_ENCASH
ADD CONSTRAINT LEAVE_CASH_PK PRIMARY KEY !PLNO# BASIC_LEAVE_CODE# SLNO"
ALTER TABLE LEAVE_ENCASH
ADD CONSTRAINT LEAVE_CASH_BASIC_LEAV_FK FOREIGN KEY !BASIC_LEAVE_CODE" REFERENCES
BASIC_LEAVE_TYPE !CODE"
ADD CONSTRAINT LEAVE_CASH_EMPLOYEE_FK FOREIGN KEY !PLNO" REFERENCES EMPLOYEE !PLNO"
ALTER TABLE COMP_ACT
ADD CONSTRAINT COMP_ACT_PK PRIMARY KEY !VALID_FROM"
ALTER TABLE COMP_FACTOR
ADD CONSTRAINT COMP_FACT_PK PRIMARY KEY !VALID_FROM# AGE"
ALTER TABLE COMP_EARN_LOSS_TABLE
ADD CONSTRAINT COMP_ELT_PK PRIMARY KEY !VALID_FROM# SLNO"
ALTER TABLE COMPENSATION
ADD CONSTRAINT COMP_PK PRIMARY KEY !ACCIDENT_DET_SLNO# ACCIDENT_ID"
ALTER TABLE COMPENSATION
ADD CONSTRAINT COMP_ACIDENTDET_FK FOREIGN KEY !ACCIDENT_ID# ACCIDENT_DET_SLNO" REFERENCES
ACCIDENT_DET !ACCIDENT_ID# SLNO"
ADD CONSTRAINT
COMP_EMPLOYEE_FK FOREIGN KEY !PLNO" REFERENCES EMPLOYEE !PLNO"
ADD CONSTRAINT COMP_COMP_ACT_FK FOREIGN KEY !COMP_ACT_VALID_FROM" REFERENCES COMP_ACT
!VALID_FROM"
ADD CONSTRAINT COMP_COMP_ELT_FK FOREIGN KEY !COMP_ELT_SLNO# COMP_ELT_VALID_FROM" REFERENCES
COMP_EARN_LOSS_TABLE !SLNO# VALID_FROM"
ADD CONSTRAINT
COMP_COMP_FACT_FK FOREIGN KEY !COMP_FACT_VALID_FROM# AGE" REFERENCES COMP_FACTOR
!VALID_FROM# AGE"

CREATE INDEX LOCATION_WORK_AREA_FK_I ON LOCATION !DEPT_CODE# SUB_DEPT_CODE# WORK_AREA_CODE"
CREATE INDEX ACCIDENT_CAUSE_FK_I ON ACCIDENT !CAUSE_CODE"
CREATE INDEX ACCIDENT_LOCATION_FK_I ON ACCIDENT !LOCATION_CODE"
CREATE INDEX ACCIDENT_UNSAFE_CON_FK_I ON ACCIDENT !UNSAFE_CON_CODE"
CREATE INDEX ACIDENTDET_ACC_CAT_FK_I ON ACCIDENT_DET !ACC_CAT_CODE"
CREATE INDEX ACIDENTDET_BODY_PART_FK_I ON ACCIDENT_DET !BODY_PART_CODE"
CREATE INDEX ACIDENTDET_IGNORANT_FK_I ON ACCIDENT_DET !IGNORANT_CODE"
CREATE INDEX ACIDENTDET_INJ_NATURE_FK_I ON ACCIDENT_DET !INJ_NATURE_CODE"
CREATE INDEX ACCIDENTDET_WORK_AREA_FK_I ON ACCIDENT_DET !DEPT_CODE# SUB_DEPT_CODE#
WORK_AREA_CODE"
CREATE INDEX ACIDENTDET_PER_CAT_FK_I ON ACCIDENT_DET !PER_CAT_CODE"
CREATE INDEX ACIDENTDET_UNSAFE_ACT_FK_I ON ACCIDENT_DET !UNSAFE_ACT_CODE"
CREATE INDEX ACIDENTDET_ACCIDENT_FK_I ON ACCIDENT_DET !ACCIDENT_ID"
CREATE INDEX ACIDENTDET_DESG_FK_I ON ACCIDENT_DET !DESG_CODE"
CREATE INDEX ACIDENTDET_EMPLOYEE_FK_I ON ACCIDENT_DET !PLNO"
CREATE INDEX ACIDENTDET_GRADE_FK_I ON ACCIDENT_DET !GRADE_CODE"
CREATE INDEX MACHINEDET_ACCIDENT_FK_I ON MACHINE_DET !ACCIDENT_ID"
CREATE INDEX MACHINEDET_EQUIPMENT_FK_I ON MACHINE_DET !EQUIPMENT_CODE"
CREATE INDEX COMP_COMP_ACT_FK_I ON COMPENSATION !COMP_ACT_VALID_FROM"
CREATE INDEX COMP_COMP_ELT_FK_I ON COMPENSATION !COMP_ELT_VALID_FROM# COMP_ELT_SLNO"
CREATE INDEX COMP_COMP_FACT_FK_I ON COMPENSATION !COMP_FACT_VALID_FROM# AGE"
CREATE INDEX COMP_ACIDENTDET_FK_I ON COMPENSATION !ACCIDENT_ID# ACCIDENT_DET_SLNO"
CREATE INDEX COMP_EMPLOYEE_FK_I ON COMPENSATION !PLNO"
CREATE INDEX LEAVE_LMT_BASIC_LEAV_FK_I ON LEAVE_LIMIT !BASIC_LEAVE_CODE"
CREATE INDEX LEAVE_LMT_LEAVE_RULE_FK_I ON LEAVE_LIMIT !LEAVE_RULE_CODE"
CREATE INDEX LEAVE_LEAVE_TYPE_FK_I ON LEAVE !LEAVE_TYPE_CODE"
CREATE INDEX LEAVE_EMPLOYEE_FK_I ON LEAVE !PLNO"
CREATE INDEX LEAVE_DET_ACCIDENTDET_FK_I ON LEAVE_DET !ACCIDENT_ID# ACCIDENT_SLNO"
CREATE INDEX LEAVE_DET_LEAVE_FK_I ON LEAVE_DET !PLNO# TYPE_CODE# LEAVE_DATE_FROM"
CREATE INDEX LEAVE_DET_BASIC_LEAV_FK_I ON LEAVE_DET !BASIC_LEAVE_CODE"
CREATE INDEX LEAVEHOLI_LEAVE_FK_I ON LEAVE_INT_HOLIDAY !PLNO# LEAVE_TYPE_CODE#
LEAVE_DATE_FROM"
CREATE INDEX LEAVE_CASH_BASIC_LEAV_FK_I ON LEAVE_ENCASH !BASIC_LEAVE_CODE"
CREATE INDEX LEAVE_CASH_EMPLOYEE_FK_I ON LEAVE_ENCASH !PLNO"
@.2 P& "D& Code
T*+,,-*!FORM
COMP_FACTOR"
WHEN_NEW.FORM_INSTANCE
DECLARE
/_,*012-3_*o4- VARCHAR2!$"5
67_+3 Fo*7Mo384-5
9:_+3 B4o;:5
9:_107- VARCHAR2!&%"5
BEGIN
S-2_W+13o<_=*o=-*2>!FORMS_MDI_WINDOW# WINDOW_STATE# MAXIMI?E"5
S-2_W+13o<_=*o=-*2>!FORMS_MDI_WINDOW# TITLE# @Co7=82-*+A-3 H8701 R-Ao8*;- I16o*702+o1
S>A2-7@"5
S-2_W+13o<_=*o=-*2>!@WINDOW1@# WINDOW_STATE# MAXIMI?E"5
BC
IF USER DE @HRIS@ THEN
BEGIN
SELECT ,*012-3_*o4-
INTO /_,*012-3_*o4-
FROM F*+A_8A-*
WHERE 8A-*_+3 G USER5
IF /_,*012-3_*o4- NOT IN !@ADMIN@" THEN
67_+3 HG F+13_Fo*7!HS>A2-7IC8**-12_Fo*7"5
9:_107- HG G-2_Fo*7_P*o=-*2>!67_+3# FIRST_BLOCK"5
WHILE 9:_107- IS NOT NULL LOOP
9:_+3 HG F+13_B4o;:!9:_107-"5
SET_BLOCK_PROPERTY!9:_+3# INSERT_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# DELETE_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# UPDATE_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# QUERY_ALLOWED# PROPERTY_TRUE"5
9:_107- HG G-2_B4o;:_P*o=-*2>!9:_+3# NEXTBLOCK"5
END LOOP5
END IF5
EXCEPTION
WHEN NO_DATA_FOUND THEN
=*o;_7A,!@ERROR H O*0;4- ID +A 1o2 VALID HRIS 8A-*III@"5
RAISE FORM_TRIGGER_FAILURE5
END5
END IF5
CB
END5
2IWHEM_WINDOW_RESI?ED
DECLARE
/_A202- VARCHAR2!$%"5
BEGIN
/_A202- HG GET_WINDOW_PROPERTY!FORMS_MDI_WINDOW# WINDOW_STATE"5
IF /_A202- IN !@NORMAL@# @MINIMI?E@" THEN
SET_WINDOW_PROPERTY!FORMS_MDI_WINDOW# WINDOW_STATE# MAXIMI?E"5
END IF5
END5
3IKEY_ENTQRY
CLEAR_RECORD5
ENTER_QUERY5
&IKEY_EXEQRY
IF HSYSTEMIMODE DE @ENTER.QUERY@ THEN
CLEAR_RECORD5
EXECUTE_QUERY5
ELSE
EXECUTE_QUERY5
END IF5
$ION_MESSAGE
=*o;_7A,!MESSAGE_TEXT JJ @ !@ JJ MESSAGE_TYPE JJ @.@ JJ
TO_CHAR!MESSAGE_CODE" JJ @"@"5
'ION.ERROR
=*o;_7A,!ERROR_TEXT JJ @ !@ JJ ERROR_TYPE JJ @.@ JJ
TO_CHAR!ERROR_CODE" JJ @"@"5
1IDATABLOCK
COMP_FACTOR
TRIGGERS
KEY.DELREC
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 COMP_FACT_PK A-;2+o1
..
3-;40*-
;8*Ao* =*+70*>_;8* +A A-4-;2 @K@ 6*o7 HRISICOMPENSATION
<F-*- COMP_FACT_VALID_FROM G HCOMP_FACTORIVALID_FROM 013 AGE G HCOMP_FACTORIAGE5
=*+70*>_3877> ;F0*!1"5
9-,+1
+6 ! ! HCOMP_FACTORIVALID_FROM +A 1o2 1844 " 013 ! HCOMP_FACTORIAGE +A 1o2 1844 " " 2F-1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o =*+70*>_3877>5
+6 ! =*+70*>_;8*L6o813 " 2F-1
=*o;_7A,!@ERROR H C011o2 3-4-2-I M02;F+1, *-;o*3A -K+A2 +1 COMPENSATION T094-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-13 +65
-135
3-4-2-_*-;o*35
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 COMP_FACT_PK A-;2+o1
..
2IWHEM.VALIDATE.RECORD
+6 !HA>A2-7I*-;o*3_A2028A DE @QUERY@" 2F-1
+6 !H;o7=_60;2o*I/04+3_2o +A 1o2 1844 013
H;o7=_60;2o*I/04+3_6*o7 E H;o7=_60;2o*I/04+3_2o" 2F-1
=*o;_7A,!@ERROR H V04+3 F*o7 D02- AFo843 9- -0*4+-* 2F01 V04+3 To D02-I@"5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
-13 +65
3IIPRE.INSERT
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_60;2o*
<F-*- 0,- G H;o7=_60;2o*I0,-
013 /04+3_2o +A 18445
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H F+44 8= 2F- V04+3 To D02- 6o* o43 *-;o*3I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_60;2o*
<F-*- 0,- G H;o7=_60;2o*I0,-
013 !H;o7=_60;2o*I/04+3_6*o7 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* 1/4!H;o7=_60;2o*I/04+3_2o# H;o7=_60;2o*I/04+3_6*o7" 9-2<--1 /04+3_6*o7 013
/04+3_2o
o* /04+3_6*o7 9-2<--1 H;o7=_60;2o*I/04+3_6*o7 013 1/4!H;o7=_60;2o*I/04+3_2o#
H;o7=_60;2o*I/04+3_6*o7"
o* /04+3_2o 9-2<--1 H;o7=_60;2o*I/04+3_6*o7 013 1/4!H;o7=_60;2o*I/04+3_2o#
H;o7=_60;2o*I/04+3_6*o7""5
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H O/-*40==+1, P-*+o3I CF-;: V04+3 F*o7 013 V04+3 To D02-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
&IPRE.UPDATE
-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_60;2o*
<F-*- /04+3_6*o7 DE H;o7=_60;2o*I/04+3_6*o7
013 0,- G H;o7=_60;2o*I0,-
013 /04+3_2o +A 18445
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H F+44 8= 2F- V04+3 To D02- 6o* o43 *-;o*3I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_60;2o*
<F-*- /04+3_6*o7 DE H;o7=_60;2o*I/04+3_6*o7
013 0,- G H;o7=_60;2o*I0,-
013 !H;o7=_60;2o*I/04+3_6*o7 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* 1/4!H;o7=_60;2o*I/04+3_2o# H;o7=_60;2o*I/04+3_6*o7" 9-2<--1 /04+3_6*o7 013
/04+3_2o
o* /04+3_6*o7 9-2<--1 H;o7=_60;2o*I/04+3_6*o7 013 1/4!H;o7=_60;2o*I/04+3_2o#
H;o7=_60;2o*I/04+3_6*o7"
o* /04+3_2o 9-2<--1 H;o7=_60;2o*I/04+3_6*o7 013 1/4!H;o7=_60;2o*I/04+3_2o#
H;o7=_60;2o*I/04+3_6*o7""5
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H O/-*40==+1, P-*+o3I CF-;: V04+3 F*o7 013 V04+3 To D02-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3IITEM
VALIDFROM
TRIGGER
WHEN.VALIDATE.ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%% A-;2+o1
..
+6 1o2! HCOMP_FACTORIVALID_FROM IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%% A-;2+o1
..
&IAGE
TRIGGER
WHEN.VALIDATE.ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%1 A-;2+o1
..
+6 1o2! HCOMP_FACTORIAGE IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%1 A-;2+o1
..
$IFACTOR
TRIGEER
WHEN.VALIDATE.ITEM
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%2 A-;2+o1
..
+6 1o2! HCOMP_FACTORIFACTOR IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%2 A-;2+o1
..
FORM
COMP_EARN_LOSS_TABLE
TRIGGER
WHEN.NEW.FORM.INSTANCE
DECLARE
/_,*012-3_*o4- VARCHAR2!$"5
67_+3 Fo*7Mo384-5
9:_+3 B4o;:5
9:_107- VARCHAR2!&%"5
BEGIN
S-2_W+13o<_=*o=-*2>!FORMS_MDI_WINDOW# WINDOW_STATE# MAXIMI?E"5
S-2_W+13o<_=*o=-*2>!FORMS_MDI_WINDOW# TITLE# @Co7=82-*+A-3 H8701 R-Ao8*;- I16o*702+o1
S>A2-7@"5
S-2_W+13o<_=*o=-*2>!@WINDOW1@# WINDOW_STATE# MAXIMI?E"5
BC
IF USER DE @HRIS@ THEN
BEGIN
SELECT ,*012-3_*o4-
INTO /_,*012-3_*o4-
FROM F*+A_8A-*
WHERE 8A-*_+3 G USER5
IF /_,*012-3_*o4- NOT IN !@ADMIN@" THEN
67_+3 HG F+13_Fo*7!HS>A2-7IC8**-12_Fo*7"5
9:_107- HG G-2_Fo*7_P*o=-*2>!67_+3# FIRST_BLOCK"5
WHILE 9:_107- IS NOT NULL LOOP
9:_+3 HG F+13_B4o;:!9:_107-"5
SET_BLOCK_PROPERTY!9:_+3# INSERT_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# DELETE_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# UPDATE_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# QUERY_ALLOWED# PROPERTY_TRUE"5
9:_107- HG G-2_B4o;:_P*o=-*2>!9:_+3# NEXTBLOCK"5
END LOOP5
END IF5
EXCEPTION
WHEN NO_DATA_FOUND THEN
=*o;_7A,!@ERROR H O*0;4- ID +A 1o2 VALID HRIS 8A-*III@"5
RAISE FORM_TRIGGER_FAILURE5
END5
END IF5
CB
END5
2IWHEN.WINDOERESI?ED
DECLARE
/_A202- VARCHAR2!$%"5
BEGIN
/_A202- HG GET_WINDOW_PROPERTY!FORMS_MDI_WINDOW# WINDOW_STATE"5
IF /_A202- IN !@NORMAL@# @MINIMI?E@" THEN
SET_WINDOW_PROPERTY!FORMS_MDI_WINDOW# WINDOW_STATE# MAXIMI?E"5
END IF5
END5
3IKEY.ENTQRY
CLEAR_RECORD5
ENTER_QUERY5
&I
KEY.EXEQRY
IF HSYSTEMIMODE DE @ENTER.QUERY@ THEN
CLEAR_RECORD5
EXECUTE_QUERY5
ELSE
EXECUTE_QUERY5
END IF5
$ION.MESSAGE
=*o;_7A,!MESSAGE_TEXT JJ @ !@ JJ MESSAGE_TYPE JJ @.@ JJ
TO_CHAR!MESSAGE_CODE" JJ @"@"5
$ION.ERROR
=*o;_7A,!ERROR_TEXT JJ @ !@ JJ ERROR_TYPE JJ @.@ JJ
TO_CHAR!ERROR_CODE" JJ @"@"5
DATABLOCK
COMP_EARNLOSS_TABLR
TRIGGER
1IKEY.DELREC
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 COMP_ELT_PK A-;2+o1
..
3-;40*-
;8*Ao* =*+70*>_;8* +A A-4-;2 @K@ 6*o7 HRISICOMPENSATION
<F-*- COMP_ELT_VALID_FROM G HCOMP_EARN_LOSS_TABLEIVALID_FROM 013 COMP_ELT_SLNO G
HCOMP_EARN_LOSS_TABLEISLNO5
=*+70*>_3877> ;F0*!1"5
9-,+1
+6 ! ! HCOMP_EARN_LOSS_TABLEIVALID_FROM +A 1o2 1844 " 013 ! HCOMP_EARN_LOSS_TABLEISLNO +A
1o2 1844 " " 2F-1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o =*+70*>_3877>5
+6 ! =*+70*>_;8*L6o813 " 2F-1
=*o;_7A,!@ERROR H C011o2 3-4-2-I D-20+4 *-;o*3A -K+A2 +1 COMPENSATION T094-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-13 +65
-135
3-4-2-_*-;o*35
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 COMP_ELT_PK A-;2+o1
..
2IWHEN.VALIDATE.RECORD
+6 !HA>A2-7I*-;o*3_A2028A DE @QUERY@" 2F-1
+6 !H;o7=_-0*1_4oAA_2094-I/04+3_2o +A 1o2 1844 013
H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 E H;o7=_-0*1_4oAA_2094-I/04+3_2o" 2F-1
=*o;_7A,!@ERROR H V04+3 F*o7 D02- AFo843 9- -0*4+-* 2F01 V04+3 To@"5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
-13 +65
3IPRE.INSERT
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_-0*1_4oAA_2094-
<F-*- /04+3_2o +A 18445
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H F+44 V04+3 To D02- o6 =*-/+o8A E0*1+1, LoAA T094-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_-0*1_4oAA_2094-
<F-*- H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* 1/4!H;o7=_-0*1_4oAA_2094-I/04+3_2o# H;o7=_-0*1_4oAA_2094-I/04+3_6*o7" 9-2<--1
/04+3_6*o7 013 /04+3_2o
o* /04+3_6*o7 9-2<--1 H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 013
1/4!H;o7=_-0*1_4oAA_2094-I/04+3_2o# H;o7=_-0*1_4oAA_2094-I/04+3_6*o7"
o* /04+3_2o 9-2<--1 H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 013
1/4!H;o7=_-0*1_4oAA_2094-I/04+3_2o# H;o7=_-0*1_4oAA_2094-I/04+3_6*o7"5
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H O/-*40==+1, P-*+o3I CF-;: V04+3 F*o7 013 V04+3 To D02-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
&IPRE.UPDATE
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_-0*1_4oAA_2094-
<F-*- /04+3_6*o7 DE H;o7=_-0*1_4oAA_2094-I/04+3_6*o7
013 /04+3_2o +A 18445
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H F+44 V04+3 To D02- o6 =*-/+o8A E0*1+1, LoAA T094-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_-0*1_4oAA_2094-
<F-*- /04+3_6*o7 DE H;o7=_-0*1_4oAA_2094-I/04+3_6*o7
013 ! H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* 1/4!H;o7=_-0*1_4oAA_2094-I/04+3_2o# H;o7=_-0*1_4oAA_2094-I/04+3_6*o7" 9-2<--1
/04+3_6*o7 013 /04+3_2o
o* /04+3_6*o7 9-2<--1 H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 013
1/4!H;o7=_-0*1_4oAA_2094-I/04+3_2o# H;o7=_-0*1_4oAA_2094-I/04+3_6*o7"
o* /04+3_2o 9-2<--1 H;o7=_-0*1_4oAA_2094-I/04+3_6*o7 013
1/4!H;o7=_-0*1_4oAA_2094-I/04+3_2o# H;o7=_-0*1_4oAA_2094-I/04+3_6*o7""5
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H O/-*40==+1, P-*+o3I CF-;: V04+3 F*o7 013 V04+3 To D02-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
ITEM
TRIGEER
1ISLNOI
WHEN.VALIDATE.ITEM
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()1% A-;2+o1
..
+6 1o2! HCOMP_EARN_LOSS_TABLEISLNO IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()1% A-;2+o1
..
2IDSCR
WHEN.VALIDATE.ITEM
.
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()11 A-;2+o1
..
+6 1o2! HCOMP_EARN_LOSS_TABLEIDSCR IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()11 A-;2+o1
..
3IEARN.LOSS.PCT
WHEN.VALIDATE.ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()12 A-;2+o1
..
+6 1o2! HCOMP_EARN_LOSS_TABLEIEARN_LOSS_PCT IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()12 A-;2+o1
..
&IDISPLAI.SLNO
WHEN.VALIDATE.ITEM
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()13 A-;2+o1
..
+6 1o2! HCOMP_EARN_LOSS_TABLEIDISPLAY_SLNO IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()13 A-;2+o1
..
$IVALID.FROM
WHEN.VALIDATE.ITEM
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%M A-;2+o1
..
+6 1o2! HCOMP_EARN_LOSS_TABLEIVALID_FROM IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%M A-;2+o1
..
COMP_ACT _FMB
FORM
COMP_ACT
TRIGGER
WHEN.NEW.FORM.INSTANCE
DECLARE
/_,*012-3_*o4- VARCHAR2!$"5
67_+3 Fo*7Mo384-5
9:_+3 B4o;:5
9:_107- VARCHAR2!&%"5
BEGIN
S-2_W+13o<_=*o=-*2>!FORMS_MDI_WINDOW# WINDOW_STATE# MAXIMI?E"5
S-2_W+13o<_=*o=-*2>!FORMS_MDI_WINDOW# TITLE# @Co7=82-*+A-3 H8701 R-Ao8*;- I16o*702+o1
S>A2-7@"5
S-2_W+13o<_=*o=-*2>!@WINDOW1@# WINDOW_STATE# MAXIMI?E"5
BC
IF USER DE @HRIS@ THEN
BEGIN
SELECT ,*012-3_*o4-
INTO /_,*012-3_*o4-
FROM F*+A_8A-*
WHERE 8A-*_+3 G USER5
IF /_,*012-3_*o4- NOT IN !@ADMIN@" THEN
67_+3 HG F+13_Fo*7!HS>A2-7IC8**-12_Fo*7"5
9:_107- HG G-2_Fo*7_P*o=-*2>!67_+3# FIRST_BLOCK"5
WHILE 9:_107- IS NOT NULL LOOP
9:_+3 HG F+13_B4o;:!9:_107-"5
SET_BLOCK_PROPERTY!9:_+3# INSERT_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# DELETE_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# UPDATE_ALLOWED# PROPERTY_FALSE"5
SET_BLOCK_PROPERTY!9:_+3# QUERY_ALLOWED# PROPERTY_TRUE"5
9:_107- HG G-2_B4o;:_P*o=-*2>!9:_+3# NEXTBLOCK"5
END LOOP5
END IF5
EXCEPTION
WHEN NO_DATA_FOUND THEN
=*o;_7A,!@ERROR H O*0;4- ID +A 1o2 VALID HRIS 8A-*III@"5
RAISE FORM_TRIGGER_FAILURE5
END5
END IF5
CB
END5
2IWHEN.WINDOW.RESI?ED
DECLARE
/_A202- VARCHAR2!$%"5
BEGIN
/_A202- HG GET_WINDOW_PROPERTY!FORMS_MDI_WINDOW# WINDOW_STATE"5
IF /_A202- IN !@NORMAL@# @MINIMI?E@" THEN
SET_WINDOW_PROPERTY!FORMS_MDI_WINDOW# WINDOW_STATE# MAXIMI?E"5
END IF5
END5
3IKEY.ENTQRY
CLEAR_RECORD5
ENTER_QUERY5
&IKEY.EXEQRY
IF HSYSTEMIMODE DE @ENTER.QUERY@ THEN
CLEAR_RECORD5
EXECUTE_QUERY5
ELSE
EXECUTE_QUERY5
END IF5
$ION.MESSAGE
=*o;_7A,!MESSAGE_TEXT JJ @ !@ JJ MESSAGE_TYPE JJ @.@ JJ
TO_CHAR!MESSAGE_CODE" JJ @"@"5
'I%N_ERROR
=*o;_7A,!ERROR_TEXT JJ @ !@ JJ ERROR_TYPE JJ @.@ JJ
TO_CHAR!ERROR_CODE" JJ @"@"5
DATABLOCK
COMP_ACT
TRIGEER
1IKEY_DELREC
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 COMP_ACT_PK A-;2+o1
..
3-;40*-
;8*Ao* =*+70*>_;8* +A A-4-;2 @K@ 6*o7 HRISICOMPENSATION
<F-*- COMP_ACT_VALID_FROM G HCOMP_ACTIVALID_FROM5
=*+70*>_3877> ;F0*!1"5
9-,+1
+6 ! ! HCOMP_ACTIVALID_FROM +A 1o2 1844 " " 2F-1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o =*+70*>_3877>5
+6 ! =*+70*>_;8*L6o813 " 2F-1
=*o;_7A,!@ERROR H C011o2 3-4-2-I D-20+4 *-;o*3A -K+A2 +1 COMPENSATION T094-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-13 +65
-135
3-4-2-_*-;o*35
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 COMP_ACT_PK A-;2+o1
..
2IWHEN.VALIDATE.RECORD
+6 !HA>A2-7I*-;o*3_A2028A DE @QUERY@" 2F-1
+6 !H;o7=_0;2I/04+3_2o +A 1o2 1844 013
H;o7=_0;2I/04+3_6*o7 E H;o7=_0;2I/04+3_2o" 2F-1
=*o;_7A,!@ERROR H V04+3 F*o7 D02- AFo843 9- -0*4+-* 2F01 V04+3 To@"5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
-13 +65
3IPRE.INSERT
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_0;2
<F-*- /04+3_2o +A 18445
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H F+44 V04+3 To D02- o6 =*-/+o8A A;2I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_0;2
<F-*- H;o7=_0;2I/04+3_6*o7 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* 1/4!H;o7=_0;2I/04+3_2o# H;o7=_0;2I/04+3_6*o7" 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* /04+3_6*o7 9-2<--1 H;o7=_0;2I/04+3_6*o7 013 1/4!H;o7=_0;2I/04+3_2o#
H;o7=_0;2I/04+3_6*o7"
o* /04+3_2o 9-2<--1 H;o7=_0;2I/04+3_6*o7 013 1/4!H;o7=_0;2I/04+3_2o#
H;o7=_0;2I/04+3_6*o7"5
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H O/-*40==+1, P-*+o3I CF-;: V04+3 F*o7 013 V04+3 To D02-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3IPRE.UPDATE
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_0;2
<F-*- /04+3_6*o7 DE H;o7=_0;2I/04+3_6*o7
013 /04+3_2o +A 18445
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H F+44 V04+3 To D02- o6 =*-/+o8A A;2I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
3-;40*-
;8*Ao* =*+70*>_;8* +A
A-4-;2 @K@
6*o7 ;o7=_0;2
<F-*- /04+3_6*o7 DE H;o7=_0;2I/04+3_6*o7
013 ! H;o7=_0;2I/04+3_6*o7 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* 1/4!H;o7=_0;2I/04+3_2o# H;o7=_0;2I/04+3_6*o7" 9-2<--1 /04+3_6*o7 013 /04+3_2o
o* /04+3_6*o7 9-2<--1 H;o7=_0;2I/04+3_6*o7 013 1/4!H;o7=_0;2I/04+3_2o#
H;o7=_0;2I/04+3_6*o7"
o* /04+3_2o 9-2<--1 H;o7=_0;2I/04+3_6*o7 013 1/4!H;o7=_0;2I/04+3_2o#
H;o7=_0;2I/04+3_6*o7""5
/_=*+70*>_3877> ;F0*!1"5
9-,+1
o=-1 =*+70*>_;8*5
6-2;F =*+70*>_;8* +12o /_=*+70*>_3877>5
+6 =*+70*>_;8*L6o813 2F-1
=*o;_7A,!@ERROR H O/-*40==+1, P-*+o3I CF-;: V04+3 F*o7 013 V04+3 To D02-I@"5
;4oA- =*+70*>_;8*5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
;4oA- =*+70*>_;8*5
-135
ITEM
1IVALID_FROM
TRIGGER
WHEN_VALIDATE_ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%3 A-;2+o1
..
+6 1o2! HCOMP_ACTIVALID_FROM IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%3 A-;2+o1
..
2IFATAL_PCT
WHEN_VALIDATE_ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%& A-;2+o1
..
+6 1o2! HCOMP_ACTIFATAL_PCT IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%& A-;2+o1
..
3IFATAL_LOE_AMOUNT
WHEN_VALIDATE_ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%$ A-;2+o1
..
+6 1o2! HCOMP_ACTIFATAL_LOW_AMOUNT IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%$ A-;2+o1
..
&INON_FATAL_PCT
WHEN_VALIDATE_ITEM
..
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%' A-;2+o1
..
+6 1o2! HCOMP_ACTINON_FATAL_PCT IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%' A-;2+o1
..
$I
NON_FATAL_LOW_AMOUNT
WHEN_VALIDATE_ITEM
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%( A-;2+o1
..
+6 1o2! HCOMP_ACTINON_FATAL_LOW_AMOUNT IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%( A-;2+o1
..
'IWAGE_UPPER_LIMIT
WHEN_VALIDATE_ITEM
.. B-,+1 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%) A-;2+o1
..
+6 1o2! HCOMP_ACTIWAGE_UPPER_LIMIT IS NOT NULL " 2F-1
7-AA0,-! @WHEN.VALIDATE.ITEM 2*+,,-* 60+4-3 o1 6+-43 . @ JJ HA>A2-7I2*+,,-*_6+-43 "5
*0+A- 6o*7_2*+,,-*_60+48*-5
-13 +65
..
.. E13 3-60842 -16o*;- 3020 +12-,*+2> ;o1A2*0+12 SYS_C%%$()%) A-;2+o1
..
1A. 1A. *e0ting *e0ting
Soft*are testing is a process used to identify the correctness$ completeness and ,uality of
developed computer soft*are. %ctually$ testing can never establish the correctness of
computer soft*are$ as this can only done by formal verification. It can only find defects$ not
prove that there are none. There are a number of different testing approaches that are used
to do this ranging from the most informal ad hoc testing$ to formally specified and controlled
methods such as automated testing.
The ,uality of the application can and normally does vary *idely from system to system but
some of the common ,uality attributes include reliability$ stability$ portability$ maintainability
and usability.
In general$ soft*are engineers distinguish soft*are faults and soft*are failures. In case of a
failure$ the soft*are does not do *hat the user e)pects. % fault is a programming error that
may or may not actually manifest as a failure. % fault can also be described as an error in the
correctness of the semantic of a computer program. % fault *ill become a failure if the e)act
computation conditions are met$ one of them being that the faulty portion of computer
soft*are e)ecutes on the #P>. % fault can also turn into a failure *hen the soft*are is ported
to a different hard*are platform or a different compiler$ or *hen the soft*are gets e)tended.
Soft*are testing may be vie*ed as a sub.field of soft*are ,uality assurance but typically
e)ists independently.
Regardless of the methods used or level of formality involved the desired result of testing is
a level of confidence in the soft*are so that the developers are confident that the soft*are
has an acceptable defect rate. ;hat constitutes an acceptable defect rate depends on the
nature of the soft*are. %n arcade video game designed to simulate flying an airplane *ould
presumably have a much higher tolerance for defects than soft*are used to control an actual
airliner. ;hat is a defect rateI!
% problem *ith soft*are testing is that the number of defects in a soft*are product can be
very large$ and the number of configurations of the product larger still. -ugs that occur
infre,uently are difficult to find in testing. % rule of thumb is that a system that is e)pected to
function *ithout faults for a certain length of time must have already been tested for at least
that length of time. This has severe conse,uences for pro1ects to *rite long.lived reliable
soft*are.
% common practice of soft*are testing is that it is performed by an independent group of
testers after finishing the soft*are product and before it is shipped to the customer. This
practice often results in the testing phase being used as pro1ect buffer to compensate for
pro1ect delays. %nother practice is to start soft*are testing at the same moment the pro1ect
starts and it is a continuous process until the pro1ect finishes.
It is commonly believed that the earlier a defect is found the cheaper it is to fi) it.
1A.1.1 Alp-a te0ting
In soft*are development$ testing is usually re,uired before release to the general public. In.
house developers often test the soft*are in *hat is (no*n as 'alpha' testing *hich is often
performed under a debugger or *ith hard*are.assisted debugging to catch bugs ,uic(ly.
This techni,ue is (no*n as *hite bo) or glass bo) testing.
It can then be handed over to testing staff for additional inspection in an environment similar
to ho* it *as intended to be used. This techni,ue is (no*n as blac( bo) testing. This is
often (no*n as the second stage of alpha testing.
1A.1.2 Beta te0ting
2ollo*ing that$ limited public tests (no*n as beta.versions are often released to groups of
people so that further testing can ensure the product has fe* faults or bugs. Sometimes$
beta.versions are made available to the open public to increase the feedbac( field to a
ma)imal number of future users.
1A.1.' )amma te0ting
There are companies that introduced the so.called gamma tests$ *hich means feature.
completed$ but the soft*are did not run through all the in.house ,uality chec(s. Some cynics
refer to soft*are release as "gamma testing".
1A.2 Black 7oE te0ting
-lac( bo) testing or functional testing is used in computer programming$ soft*are
engineering and soft*are testing to chec( that the outputs of a program$ given certain inputs$
conform to the functional specification of the program.
The term blac( bo) indicates that the internal implementation of the program being e)ecuted
is not e)amined by the tester. 2or this reason blac( bo) testing is not normally carried out by
the programmer. In most real.*orld engineering firms$ one group does design *or( *hile a
separate group does the testing.
% complementary techni,ue$ *hite bo) testing or structural testing$ uses information about
the structure of the program to chec( that it performs correctly.
1A.2.1 +;uivalence partitioning
% techni,ue in blac( bo) testing is e,uivalence partitioning. 3,uivalence partitioning is
designed to minimi/e the number of test cases by dividing tests in such a *ay that the
system is e)pected to act the same *ay for all tests of each e,uivalence partition. Test
inputs *ould be selected from each partition.
3,uivalence partitions are designed so that every possible input belongs to one and only
one e,uivalence partition.
Disadvantages to e,uivalence partitions
• Doesn't test every input
• <o guidelines for choosing inputs
• Heuristic.based
1A.' 5-ite 7oE te0ting
;hite bo) testing$ clear bo) or structural testing is used in computer programming$ soft*are
engineering and soft*are testing to chec( that the outputs of a program$ given certain inputs$
conform to the internal design and implementation of the program.
The term *hite bo) indicates that the tester closely e)amines the internal implementation of
the program being tested. % complementary techni,ue$ blac( bo) testing or functional
testing$ chec(s that the program performs to its specification *ithout e)amining its internal
implementation.
1A.3 Code coverage
#ode coverage is a measure used in soft*are testing. It describes the degree to *hich the
source code of a program has been tested. It is distinct from blac( bo) testing methods
because it loo(s at the code directly$ rather than other measures such as soft*are functions
or ob1ect interfaces.
#ode coverage techni,ues *ere amongst the first techni,ues invented for systematic
soft*are testing. There are a number of different *ays of measuring code coverage$ the
main ones being5
• Statement #overage . Has each line of the source code been e)ecuted and testedI
• #ondition #overage . Has each evaluation point such as a trueJfalse decision! been
e)ecuted and testedI
• Path #overage . Has every possible route through a given part of the code been
e)ecuted and testedI
Some of the coverage criteria above are connected+ for instance$ path coverage implies both
condition and statement coverage. Statement coverage does not imply condition coverage$
as the code in the # programming language! belo* sho*s5
void fooint bar!
S
printf"this is"!+
if bar T A!
S
printf"not "!+
U
printf"a positive integer"!+
return+
U
If the function "foo" *as called *ith variable "bar P .A"$ statement coverage *ould be
achieved. #ondition coverage$ ho*ever$ *ould not.
2ull path coverage$ of the type described above$ is usually impractical or impossible. %ny
module *ith a succession of n decisions in it can have up to Cn paths *ithin it+ loop
constructs can result in an infinite number of paths. 0any paths may also be infeasible$ in
that there is no input to the program under test that can cause that particular path to be
e)ecuted. Ho*ever$ there is no general.purpose algorithm for identifying infeasible paths
because such an algorithm could be used to solve the halting problem!. Techni,ues for
practical path coverage testing instead attempt to identify classes of code paths that differ
only in the number of loop e)ecutions$ and to achieve "basis path" coverage the tester must
cover all the path classes.
>sually the source code is instrumented and run through a series of tests. The resulting
output is then analysed to see *hat areas of code have not been e)ercised$ and the tests
are updated to include these areas as necessary. #ombined *ith other code coverage
methods the aim is to develop a rigorous yet manageable set of regression tests.
#ode coverage is ultimately e)pressed as a percentage$ as in ";e have tested G:Q of the
code". The meaning of this depends on *hat forms! of code coverage have been used$ as
G:Q path coverage is more comprehensive than G:Q statement coverage.
1A.6 "oftware te0ting activitie0
1A.6.1 (nit te0t
In computer programming$ a unit test is a method of testing the correctness of a particular
module of source code.
The idea is to *rite test cases for every non.trivial function or method in the module so that
each test case is separate from the others if possible.
• -enefits
The goal of unit testing is to isolate each part of the program and sho* that the individual
parts are correct. It provides a *ritten contract that the piece must satisfy. This isolated
testing provides t*o main benefits5
• 3ncourages change
>nit testing allo*s the programmer to refactor code at a later date$ and ma(e sure the
module still *or(s correctly regression testing!. This provides the benefit of encouraging
programmers to ma(e changes to the code since it is easy for the programmer to chec( if
the piece is still *or(ing properly.
• Simplifies Integration
>nit testing helps eliminate uncertainty in the pieces themselves and can be used in a
bottom.up testing style approach. -y testing the parts of a program first and then testing the
sum of its parts *ill ma(e integration testing easier.
• &imitations
It is important to reali/e that unit.testing *ill not catch every error in the program. -y
definition$ it only tests the functionality of the units themselves. Therefore$ it *ill not catch
integration errors$ performance problems and any other system.*ide issues. >nit testing is
only effective if it is used in con1unction *ith other soft*are testing activities.
• %pplications
The unit testing concept is part of the 3)treme Programming method of soft*are
engineering. >nit testing is the building bloc( to test driven development TDD!. 3)treme
Programming and most other methods use unit tests to perform blac( bo) testing.
This is also (no*n as "programmer tests".
1A.6.2 !ntegration te0ting
Integration testing is the phase of soft*are testing in *hich individual soft*are modules are
combined and tested as a group. It follo*s unit testing and precedes system testing.
Integration testing ta(es as its input modules that have been chec(ed out by unit testing$
groups them in larger aggregates$ applies tests defined in an Integration test plan to those
aggregates$ and delivers as its output the integrated system ready for system testing.
• Purpose
The purpose of Integration testing is to verify functional$ performance and reliability
re,uirements placed on ma1or design items. These "design items"$ i.e. assemblages or
groups of units!$ are e)ercised through their interfaces using -lac( bo) testing$ success and
error cases being simulated via appropriate parameter and data inputs. Simulated usage of
shared data areas and inter.process communication is tested$ individual subsystems are
e)ercised through their input interface. %ll test cases are constructed to test that all
components *ithin assemblages interact correctly$ for e)ample$ across procedure calls or
process activations.
The overall idea$ is the "building bloc(" approach in *hich verified assemblages are added to
a verified base *hich is then used to support the Integration testing of further assemblages.
• System testing
System testing is the phase of soft*are testing in *hich the complete system is tested. It
follo*s Integration testing.
11. 11. AppendiE AppendiE
11.1AppendiE F A9 (0er !nterface #4orm0$ for /R "a-8yak
The >ser Interface for HR SahVya( application is$ more of$ a specification for the loo( and
feel of the program. The user issues commands via the >I to computer applications. 2or the
ease of the user of the HR SahVya($ >I is developed for providing an interface to the
application. The >I of the HR SahVya( receive information from and display information to a
user.
The >ser Interface for HR SahVya( is a type of computer.human interface on a computer. %t
a conceptual level$ a computer.human interface is a "means by *hich people and computers
communicate *ith each other". The interface F HR SahVya( 's >I . directly binds the user to
the operation and functionality of the program. % good >I design removes the impediment of
communication *ith the program and allo*s the user to *or( directly on the problem at
hand.
11.1.1 /R "a-8yak 4orm <19
11.1.2 /R "a-8yak 4orm <29
11.1.' /R "a-8yak 4orm <'a9
11.1.3 /R "a-8yak 4orm <'79
11.1.6 /R "a-8yak 4orm <'c9
11.1.: /R "a-8yak 4orm <'d9
11.1.= /R "a-8yak 4orm <'e9
11.1.? /R "a-8yak 4orm <'f9
11.1.@ /R "a-8yak 4orm <'g9
11.1.1A /R "a-8yak 4orm <'-9
11.1.11 /R "a-8yak 4orm <'i9
11.1.12 /R "a-8yak 4orm <'.9
11.1.1' /R "a-8yak 4orm <39
11.1.13 /R "a-8yak 4orm <69
11.1.16 /R "a-8yak 4orm <:9
11.1.1: /R "a-8yak 4orm <=9
11.1.1= /R "a-8yak 4orm <?9
11.1.1? /R "a-8yak 4orm <@9
11.1.1@ /R "a-8yak 4orm <1A9
11.1.2A /R "a-8yak 4orm <119
11.1.21 /R "a-8yak 4orm <129
12. 12. Conclu0ion Conclu0ion
1'. 1'. Bi7liograp-y Bi7liograp-y
• W6'#onnellX YPlanning and setting up a ne* HRIS5 Part A . Human resource
information system . 0anagement of HR SystemsH by Sandra 3. 6'#onnell$ in HR
0aga/ine$ 2ebruary$ ABB9.
• W6'#onnellX YPlanning and setting up a ne* HRIS . Part C . Human Resource
Information SystemH by Sandra 3. 6'#onnell$ in HR 0aga/ine$ 0arch$ ABB9.
• 6racle P&JSK& Programming$ Third 3dition by Steven 2euerstein 6'Reilly
Publication!
• 6racle8i5 The #omplete Reference by @evin &oney$ =eorge @och 6racle Press!
• SK&$ P&JSK& the Programming &anguage of 6racle by Ivan -ayross -P-
Publications!
• 6racle DesignerJCDDD Handboo( 6racle Series! by Paul Dr. Dorsey$ Peter @olet/(e
6racle Press!

doc_405884962.doc
 

Attachments

Back
Top