You are on page 1of 77

Project-Report

MILITARY CANTEEN AUTOMATION SYSTEM


Submitted to the DOEACC society as a Project for A Level Course

Submitted By ANUPAMA BHATT (A-LEVEL CANDIDATE) REG.NO: 462927

UNDER SUPERVISION OF MRS. MAYURI PUROHIT ACADEMY OF KANISHKA COMPUTERS S-11-12, OPP CHAMBAL POWER HOUSE HAWA SADAK, CIVIL LINES JAIPUR, RAJASTHAN

INDEX
S.NO. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. TOPIC COVERING LETTER ACKNOWLEDGMENT IDENTIFICATION SHEET CERTIFICATE OF THE PROJECT GUIDE CERTIFICATE PREFACE INTRODUCTION APPLICATION AREA / FEATURES OF MILITARY CANTEEN AUTOMATION SYSTEM SYSTEM / SUB-SYSTEM INCLUDED / END USER INPUTS TO THE PROJECT OUTPUTS OF THE PROJECT METHODOLOGY REQUIREMENT SPECIFICATION SYSTEM ANALYSIS DATA DICTIONARY FORM LAYOUT REPORT LAYOUT SECURITY AUDIT & CONTROL / ACCEPTENCE TEST GENERATION VALIDATIONS SYSTEM REQUIREMENT SYSTEM CODE CONCLUSION PAGE NO. 1 2 3 4 5 6 7 8 9. 10 11 12 TO 16 17 TO 20 21 TO 30 31 TO 32 33 TO 42 43 TO 49 50 51 52 53 TO 75 76

ACKNOWLEDGEMENT
I Anupama Bhatt, greatly indebted to my guide Mrs Mayuri Purohit and Mr. Labhesh Joshi, Manager of Academy of Kanishka Computers, Jaipur, for their whole-hearted guidance, support, co-operation and constant encouragement at all times during the

preparation of my Automation System.

project-Military

Canteen

I also take this opportunity to convey my sincere thanks to all those my friends who helped & suggested me during the preparation of the manuscript of this text. I am deeply gratitude towards my parents who always heightened me, when I required.

ANUPAMA BHATT

IDENTIFICATION SHEET
NAME ADDRESS : ANUPAMA BHATT

: PLOT NO.54,SHIV PATH RAMNAGAR, SODALA,

JAIPUR-302019 CONTACT NO. BIRTH DATE REG.NO. : : : 9950142866(M) 30TH SEP.1984 462927

PROJECT TITLE : MILITARY CANTEEN AUTOMATION SYSTEM STUDY CENTER : ACADEMY OF KANISHKA COMPUTERS (AKC), JAIPUR SOFTWARE : VISUAL FOXPRO 6.0

REFER THE FOLLOWING ADDRESS OR E-MAIL:


ANUPAMA BHATT D/O Mr. K.N. BHATT 54,SHIV PATH, RAMMNAGAR, SODALA, JAIPUR-302019 PH: 9950142866(M) E-MAIL: anupamabhatt.dreams@gmail.com

PREFACE
A Military Canteen Store Department is an important organization for the Defence Services to provide quality goods with definite price advantage to Defence Personnel & their families. It is headed by an officer of the rank of Major General with its head office at Mumbai. It has a number of regional offices & depots all over India.

It has to deal with various kinds of data and information related to its customers & suppliers . Management & maintenance of data & information is not a easy task. It requires a lot of time, efforts, accuracy & managing large files & registers. A large amount of paper work is time consuming and error prone. The aim of this automated computer based Military Canteen Automation

System is to provide complete & versatile solution to help the management to work efficiently and fulfils its requirements. It makes the task simple, quick & error free.

INTRODUCTION
In today's context every organization wants to save its time & money. As far as the competition of current time is considered, it becomes very necessary to serve the best to your consumers or customers with whom you are interacted. This desire and need of the best service leads to something different aspect of the system.

The following system is made up for the military canteen store, mainly to maintain their entries regarding their customers, items, sales, orders etc. This helps a canteen department in coping with the situations generated due to inadequacy of time and quality results. It was always in my mind while making this automated military canteen system that a military canteen is a place where many people come to interact; so there must be a fast approach and access towards records & data. The important functions of military canteen are: Concluding contract with suppliers. Stocking of canteen department with adequate stocks Ensure sale of stock to units as per their demands Introduction of items & new items from inventory Fixing of whole sale & retail rates

APPLICATION AREA
The Military Canteen Automation System works as a mediator between items, customers and management. Operator of the system can maintain a detailed record of customers, items, and purchases & sales in the military canteen on the basis of wholesale & retail rates per unit. The system also produces bills and daily/monthly/date wise sales reports.

FEATURES OF MILITARY CANTEEN AUTOMATION SYSTEM


Generates indent-cum-invoice for purchase of stock from canteen store department Depot. Updation of stock in database on receipt of goods from Depot Sale of Stock i.e. billing of customers & updation of database Insert records in database on introduction of new items. Insert records in customer database Delete records from database on deletion of items from Inventory. Delete records from customer database if desired Modify database on Cost revision etc. Daily Sales Transaction Reports Fixing of whole sale & retail rate of per unit Sales summary Reports View particulars of an item

System/Sub-system Included
Inventory Management System Transaction Management System Customer Information System Stock Information System

Report Generation System

End User
The system is very easy to operate and can be used by the military Canteen Management. It can be operated by anybody who has a computer. He can easily learn to use the system and utilize all benefits provided by system. It is useful for those who want their transactions and data computerized for getting good & quick access

INPUTS TO THE PROJECT


The initial inputs to the system would be taken from the records that are being maintained by the military canteen department. As the system becomes operational & automated it would take the details of all the transactions made through the system as inputs. The Project would take the following input from the Users, Databases and OS: All the details of the existing inventory will have to be entered into the system to automate inventory management. All the details of the existing customers will have to be entered into the system to automate customer management Enrolment Request Details of management decisions in terms of fixing wholesale & retail rates of various items. Details of transactions Changes & Updating in Customer details Changes & Updating in Item details Customers Item Request & Item Information

OUTPUTS OF THE PROJECT


The system displays various types of information & allows updating the information with the help of various forms. The system allows searching of customers & inventory records on the basis of given details. The system generates periodic Bill Details & tells about the current status of various items. Project provide the following Reports: Daily Sales Summary Monthly Sales Summary Date wise Sales Summary Customer Bill Purchases or orders details

METHODOLOGY

INTRODUCTION
The Structured System Development Life Cycle as outlined by EDWARD YOURDON in his book "MODERN STRUCTURED ANALYSIS (1989)" has been followed in this project with minor modifications. The modified lifecycle consists of the following activities:-

Activity 1 Activity 2 Activity 3 Activity 4 Activity 5 Activity 6 Activity 7 Activity 8 Activity 9

: : : : : : : : :

SURVEY ANALYSIS PRELIMINARY DESIGN SYSTEM DESIGN IMPLEMENTATION ACCEPTANCE TEST GENERATION QUALITY ASSURANCE PROCEDURE SPECIFICATION DATABASE CONVERSION INSTALLATION

Activity 10 :

SURVEY
This activity is also known as Feasibility Study. It begins with a request form the user for a new System. It involves the following:1) 2) 3) 4) 5) Identify the responsible user the system. Clarify the user request. Identify the deficiencies in the current system. Establish objective and goal for the new system. Prepare a project character that will be used to guide the remainder of the project.

PRELIMINARY DESIGN
This activity deals with certain design issues, which are to be finalized in consultation with the user. The two most important issues of relevance to the user are the AUTOMATION BOUNDARY and the HUMAN MACHINE INTERFACE. The output of the activity is the user implementation model. The major part of the user implementation model is the user interface referred to as the physical model of the proposed system. This model in addition to the essential model defines the following for the system: Automation Boundary Report Layout Layouts of the source document Screen layouts for the data entry forms. Menus

SYSTEM DESIGN
System Design in involves the transformation of the user implementation model into S/W design. The design specification of the proposed system consists of following: Database Schema Pseudocode for all modules

IMPLEMENTATION
This activity includes Programming, Testing, and Integration of modules into progressively more complete system.

ACCEPTANCE TEST GENERATION


This activity generates a set of Test Data that can be used to test the new system before accepting it.

QUALITY ASSURANCE
Quality Assurance is also known as final testing or Acceptance testing. This activity requires as its input the Acceptance Test Data generated in activity 5 and an integrated system provided by the activity 4.

DATABASE CONVERSION
This activity involves conversion of data from the existing system to the new system.

INSTALLATION
This is the last activity of the System Development Life Cycle. The changeover from the current system to the new system is done. This project involves all the activities of the System Development Life Cycle except for database conversion and installation.

REQUIREMENT SPECIFICATION

CURRENT SYSTEM AND ITS DEFICIENCIES


Problems poses by manual System are:

SPACE CONSTRAINTS: It may not be possible to record all the desired information at the same place. e.g. Large no of register maintenance needed. As the information grows large no of registers having data also increases.

MEMORY LAPSE: To easily access the record from within many registers some alternate method is also needed, which keep track on each register containing information. MAINTAINING COPIES: It is not easy to maintain the multiple copies of the database, because all are maintained manually.

INDEXING: It is not possible to index the information stored in the manual helpline database. SEARCHING: Finding any record from manual helpline database is not so easy and is time consuming. As the no of records increases the average time required for the search also increases. REPORT GENERATION: People need reports, like list of products, list of caller's who inquired about a certain products, list of sub-categories etc it will take much efforts as well as time to perform the job manually. The solution to the above problem lies in computerized system, which is faster, more accurate and reliable, With such a system it will become very easy to store large amount of records, perform searching and sorting in an efficient manner and the user will not have to bother about activities that can be automated.

PERFORMACNE OF PROPOSED SYSTEM


The proposed system is intended to be user friendly, automate and fast, easy to maintain and use, and would require minimum knowledge of working with computers. The System employs efficient search technique for easy and fast searching. It allows the user to take hard copies of business and no of consumers and customers contacted us within certain period of time. Features of the new system:-

OPERATIONAL CONSTRANTS
The prospective users during survey expressed the need for quick response time, password protection features and facilitates to index in multiple ways. They also wanted an attractive and intuitive user interface to work with. They wanted a system that would provide visual cues so that they wouldn't have to study the details always.

FEASIBILITY ANALYSIS
The proposed system is technically feasible as the software required for developing it and s/w and h/w required for using it would be easily available. The proposed system is operationally feasible because it requires minimal knowledge of working with computers for using it. The user can easily learn how to use the system from the user manual.

COST BENEFIT ANALYSIS


The cost of using the system cannot directly be compared with the benefits of using it, because the cost is tangible and the benefits are largely intangible. The cost involved in using the system constitutes mainly have the following: The cost involved in purchasing a computer system, if it is not already available. An average computer system (PENTIUM IV, 256 MB RAM, 40 GB HD, Printer) would cost around Rs. 30,000/= approx.
The cost involved in purchasing and installing the "Military Canteen

Automation System" s/w on a computer system (approx. Rs 8000/=). The expenditure involved in the maintenance of h/w and s/w is approx Rs 2000 per annum. The cost of stationary and other resources, such as electricity is approx. Rs 600 per month.

BENEFITS OF USING THIS SYSTEM

The benefits of using this system are as follows: It is easier to maintain registrations and enquiry within seconds. It helps in saving time and money, which is a valuable asset for customer as well as organization. The proposed system support easy retrieval, update and removal of student details etc.

By saving time and increasing productivity, We can actually save on manhours and every added man-hour can generate more profit.

SYSTEM ANALYSIS

FLOW DIAGRAM OF THE SYSTEMS

START | NAVIGATION PASSWORD WINDOW | YES------- PASSWORD CORRECT------NO | | MAIN MENU APPEARS RETURN FROM PROGRAM | | | | | | | | Updation Billing Indenting Daily Sales Sales of dbase** of Customers of stock Transaction Report Summary##

| | | | (urc_updating) (urc_bill) (urc_indent) (urc_dsr) (urc_ss) | | _________________________________________________________________ ____| | | | Stock Balance Details of Item Exit (urc_stk_bal) (urc_details) ** Updation of Stk in Dbase (Submenu) | | | | | Delete Items Modify Item Update Return from dbase parameters stock in hand to main menu (urc_del) (urc_mod) (urc_update)

| Add Items to dbase (urc_add)

| Daily Sales Summary (urc_dss)

## Sales Summary (Submenu) | | Monthly Sales Summary (urc_mss)

| Datewise Sales Summary (urc_dwss)

CONTEXT DIAGRAM OF THE SYSTEM

CUSTOMER

Seek Info

Place Order

SUPPLIER

Provide Info
Military Canteen Automation

Receive Invoice

Bill

Provide Reports

CUSTOMER

Request Items

Seek Reports

FIGURE 0 (TOP LEVEL DFD)

Customer
enrolement bill request request item seek item info provide item info

BILLING PROCESS 3.0

ITEM INFO PROCESS 2.0

CLIENT PROCESS 1.0

Supplier
place item order reports details items report

Manager

Management
seek new item invoice &

PURCHAS E PROCESS 4.0

STOCK UPDATION PROCESS 6.0

REPORT GENERATION PROCESS 5.0

LEVELLED DFD (CLIENT PROCESS)

CUSTOMER

enrolment- request

CLIENT PROCES S 1.0

customer details

Customer Database

LEVELLED DFD (ITEM INFO PROCESS)

Customer
seek item info provide info of items

ITEM INFO PROCES S 2.0

Item Details

Items Database (csd.dbf)

LEVELLED DFD (BILLING PROCESS)

Customer
request items Bill

BILLING PROCESS 3.0 details details Item_no customer_id transaction sales details details

Customer Database

Items Database

Transaction Database

Sales_sum Database

LEVELLED DFD (PURCHASE PROCESS)

csd.dbf

Supplier
invoice & items send order

PURCHAS E PROCESS 4.0

acquired item details required item details

Items Database (csd.dbf)

LEVELLED DFD (REPORT GENERATION PROCESS)

Management
seek reports provide reports

REPORT GENERATION PROCESS 5.0

required transaction details

sales summary details

acquired transaction details Transaction Database Sales_sum Database

LEVELLED DFD( STOCK UPDATION PROCESS PROCESS)

Manager
item info

STOCK UPDATION PROCESS 6.0

item details

Item Database (csd.dbf)

DATA DICTIONARY
The main files that are included in this project are as follows : csd.dbf : This file is created and maintained in the project as a master file, having the following fields:-

SNo. Name of the Field


1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. gp index_no item case_pack wsrate_pc wsrate_pu rrate_pu qty_stk cri_qty roqty r_val transact.dbf :

Type
c c c n n n n n n n n

Width
4 6 30 4 10 10 10 6 3 3 10

Decimal

Remarks
group index no of item item name case pack w/sale rate per case w/sale rate per unit retail rate per unit qty in stock reorder level reorder qty retail value of stock

0 2 2 2 0 0 0 2

SNo. Name of Field


1. 2. 3. 4. 5. 6. index_no dot bill_no qty amt pft sales_sum.dbf :

Type Width
c d n n n n 6 8 3 3 8 8

Decimal

Remarks
index no of item date of transaction bill number qty sold amount profit

0 0 2 2

SNo. Name of Field


1. 2. 3. dot t_amt proft

Type
d n n

Width
8 8 8

Decimal
2 2

Remarks
date of transaction total amount total profit

customer.dbf

SNo. Name of Field


1. 2. 3. 4. 5. num rnk nme unt icard

Type
c c c c c

Width
10 10 20 15 10

Decimal

Remarks
Service Number Rank Name Unit Identity Card No.

USER INTERFACE FORM

THE MAIN FORM SHOWING SYSTEMS MENU

DATABASE UPDATION FORM

ITEM UPDATION FORM

CUSTOMER UPDATION FORM

ITEM DELETION FORM

CUSTOMER DATA DELETION FORM

DATA MODIFICATION FORM

STOCK UPDATION FORM

ITEM DETAILS FORM

REPORT
CUSTOMER BILL REPORT

DAILY SALES REPORT

SALE SUMMARY REPORT

MONTHLY SALES SUMMARY REPORT

DATEWISE SALES SUMMARY REPORT

STOCK BALANCE REPORT

SECURITY AUDIT & CONTROL


Security has been dealt within the system by providing password protection; only authentic user who knows the password can log onto and use the software. Various forms have been designed such that user is not allowed to enter invalid data. If any field on a form is essential the requested operation does not complete successfully till the required values have been added.

ACCEPTENCE TEST GENERATION


Alpha Testing: In alpha testing, we provide rough data to the software and checked whether the Software gives right results or not. We found that software gave the Result, which was expected from it. It assured the Data Dependency and Reliability of the System, which is must for effective working of the Software.

Beta Testing: In Beta Testing, we provide pure data to the Software to be processed and to be replaced in the database. The Reports & Outputs generated by the software are an outcome of the data we provide it. It is now ready to work freely in any institution.

VALIDATIONS
To ensure data integrity, the following validations have been ensured:1. Main Menu accepts only digits as choice from 1 through 8 and does not accept any other character. Displays the message Wrong Choice if digit 9 is entered and Invalid Input if any other character is input. 2.
3.

Sub Menus accept only alphabetic characters else display the message Wrong Choice. While entering new details in the dbase, makes sure that the new item/customer being entered is not already present in the dbase. The details are accepted by the system strictly as per their type.

4.

While deleting an item/customer from the dbase, re-confirms before deletion. The item is deleted only if the stock balance is zero. Data to be modified is modified only after re-confirmation about data being correct. In billing, if customer details are available in dbase then it displays the details else accepts the details of customer by interaction. Displays suitable messages if items are not in inventory(dbase) or are out of stock. Updates stock balance and retail value with each transaction. Bill Nos are sequential.

5. 6.

7.

While entering transaction details in transact. dbf , only those items are entered which are present in the dbase. Profit is calculated for each transaction.

8.

For indenting, only the items whose stock balance is less than the critical value are displayed. Default re-order quantity can be changed if desired.

SYSTEM REQUIREMENT
Hardware Requirement Intel Pentium-II Processor or Higher Capacity 128 MB RAM or Higher 20 GB Hard Disk or Higher Printer Software Requirement Microsoft Windows 98/XP or above Version Microsoft Visual FoxPro 6.0 MS Office

set talk off set echo off clear paswd="1234" i=0 do while i<3 store space(7) to pswd @10,40 to 25,100 style '50' @12,48 say "MILITARY CANTEEN AUTOMATION SYSTEM" style "ub" @16,55 say "PASSWORD" style "ub" set console off @21,55 say "Enter Password:" style "b" ACCEPT TO pswd @23,5 to 23,60 clear if pswd==paswd do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc1.prg" exit else @23,50 say"Wrong Password,try again" i=i+1 endif enddo clear

set talk off set echo off set safety off clear do while .T. store 0 to choice @2,25 TO 35,150 style'90' @3,32 say "MILITARY CANTEEN AUTOMATION SYSTEM" font 'COURIER NEW',25 style "ub" @6,65 say "MAIN MENU" font 'COURIER NEW',18 style "ub" @9,55 say"Enter 1 for Updating Database" style"b" @12,55 say"Enter 2 for Billing of Customers" style"b" @15,55 say"Enter 3 for Indenting of Stock" style"b" @18,55 say"Enter 4 for Daily Transaction Report" style"b" @21,55 say"Enter 5 for Sales Summary Reports" style"b"

@24,55 say"Enter 6 for Current Stock Balance" style"b" @27,55 say"Enter 7 for Details of an Item" style "b" @30,55 say"Enter 8 to Exit to Prompt" style "b" @33,55 say"Enter your choice between 1 & 8: " @33,89 get choice pict "9" valid choice > 0 read do case case choice=1 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_updating" case choice=2 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_bill" case choice=3 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_indent" case choice=4 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_dsr" case choice=5 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_ss" case choice=6 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_stkbal" case choice=7 do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_details" case choice=8 exit otherwise @35,10 say "Wrong Choice" endcase enddo clear set talk off set echo off clear use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd.dbf" index on index_no to csdndx1 do while .T. store " " to ch @2,35 TO 35,120 style '50' @4,50 say "DATABASE UPDATION" style "ub" font 'courier new',25 @9,52 say "Enter 'A' for Adding new Items " style "b"

@11,52 say "Enter 'C' for Adding new Customers" style "b" @13,52 say "Enter 'D' for Deleting Items from Dbase" style "b" @15,52 say "Enter 'E' for Deleting Customer Data from Dbase" style "b" @17,52 say "Enter 'M' for Modifying Item Parameters" style "b" @19,52 say "Enter 'U' for Updating Stock Position" style "b" @21,52 say "Enter 'R' for Returning to Main Menu" style "b" @25,52 say "Enter your choice: " style "b" @25,78 get ch read do case case ch= "a" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_add" case ch= "c" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_cus" case ch="d" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_del" case ch="e" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_cust" case ch= "m" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_mod" case ch="u" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_update" case ch="r" clear exit otherwise clear wait "Sorry!Wrong Choice,Press any key to continue..." window endcase enddo set talk off set echo off clear use "c:\documents and settings\administrator\desktop\anu\a_level\project_urc\csd.dbf" index on index_no to csdndx1 ans="y" ch="y" choice="y" xit=" " do while upper(ans)="Y"

store space(3) to grp store space(6) to indexno store space(25) to itemnm store 0 to casepack,wsratepc,wsratepu,rratepu,criqty,roq @2,2 to 35,65 style'50' @3,25 say"ADDING ITEMS TO DBASE" style "ub" @5,10 say"Enter Index No: " @6,10 say"Enter Group:" @7,10 say"Enter Name of Item:" @8,10 say"Enter Case Pack:" @9,10 say"Enter W/S Rate per case:" @10,10 say"Enter W/S Rate per unit:" @11,10 say"Enter R/Rate per unit:" @12,10 say"Enter Critical Qty of Item:" @13,10 say"Enter Reorder Qty of Item:" @5,38 get indexno pict"999999" wait window "Enter 000000 to Exit,Press any key to continue... " @22,5 to 22,40 clear read if indexno=="000000" exit else seek indexno if found() @6,3 to 13,60 clear @16,10 say"Item already exists,do you want to continue Y/N?" get ch pict 'Y' read if upper(ch)="Y" @16,0 clear loop else exit endif endif @6,38 get grp pict"@!A" func 'M I,II,III,IV,V,VI,VII' @7,38 get itemnm @8,38 get casepack @9,38 get wsratepc pict "999999.99" @10,38 get wsratepu pict "999999.99" @11,38 get rratepu pict "999999.99" @12,38 get criqty @13,38 get roq read @18,10 say "Is the data OK Y/N?" get choice pict 'Y' read

@18,10 to 18,40 clear if upper(choice)="Y" append blank replace gp with grp replace index_no with indexno replace item with itemnm replace case_pack with casepack replace wsrate_pc with wsratepc replace wsrate_pu with wsratepu replace rrate_pu with rratepu replace cri_qty with criqty replace roqty with roq @22,10 say"Item added to Dbase" else @22,10 say"Re-enter correct details" loop endif @24,10 say"Want to add more items? Y/N" get ans pict 'Y' read @22,5 to 22,40 clear @24,5 to 24,40 clear endif enddo clear set talk off set echo off clear use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\customer.dbf" index on num to num1 ans="y" ch="y" choice="y" xit=" " do while upper(ans)="Y" store space(10) to numm store space(10) to rnkk store space(20) to nmee store space(15) to untt store space(10) to icardd @2,2 to 35,70 style'50' @3,25 say"ADDING CUSTOMERS TO DBASE" style "ub" @5,10 say"Enter Service No: " @6,10 say"Enter Rank:" @7,10 say"Enter Name of Customer:"

@8,10 say"Enter Unit:" @9,10 say"Enter I Card No:" @5,38 get numm pict "9999999999" wait window "Enter 0000000000 to Exit,Press any key to continue... " @22,5 to 22,40 clear read if numm=="0000000000" exit else seek numm if found() @16,10 say"Customer Data already exists,do you want to continue Y/N?" get ch pict 'Y' read if upper(ch)="Y" @16,0 clear loop else exit endif endif @6,38 get rnkk pict"@!A" @7,38 get nmee @8,38 get untt @9,38 get icardd pict "9999999999" read @18,10 say "Is the data OK Y/N?" get choice pict 'Y' read @18,10 to 18,40 clear if upper(choice)="Y" append blank replace num with numm replace rnk with rnkk replace nme with nmee replace unt with untt replace icard with icardd @22,10 say"Customer Data added to Dbase" else @22,10 say"Re-enter correct details" loop endif @24,10 say"Want to add more data? Y/N" get ans pict 'Y' read @22,5 to 22,40 clear @24,5 to 24,40 clear endif

enddo clear set talk off set echo off clear ch="Y" do while upper(ch)="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd.dbf" index on index_no to csdndx1 indexno=space(6) itemnm=" " ans="Y" @1,1 to 35,65 style'50' @4,18 say"TO DELETE AN ITEM FROM DBASE" font 'times new roman' style "ub" @7,10 say "Enter Index No of Item" @7,35 get indexno pict"999999" read seek indexno if !found() @14,10 say"Item does not Exist in Dbase" else itemnm=item @10,10 say"Name of Item is:" @10,30 say itemnm @14,10 say"Are you sure you want to delete the item? Y/N" get ans pict"Y" read if upper(ans)="Y" if qty_stk==0 delete @18,10 say"Item deleted from Dbase" else @18,10 say "Sorry!Stock Bal of Item is not Zero" endif else exit endif endif @22,10 say"Do you want to continue?Y/N" get ch pict 'Y' read @10,10 to 10,60 clear @14,10 to 14,60 clear @18,10 to 18,60 clear @22,10 to 22,60 clear

enddo clear close all set talk off set echo off clear ch="Y" do while upper(ch)="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\customer.dbf" index on num to num1 numm=space(10) nmee=" " ans="Y" @1,1 to 35,70 style'50' @4,12 say"TO DELETE CUSTOMER DATA FROM DBASE" font 'courier new' style "ub" @7,10 say "Enter Service No of Customer:" @7,45 get numm pict"9999999999" read seek numm if !found() @14,10 say"Customer Data does not Exist in Dbase" else nmee=nme @10,10 say"Name of Customer is:" @10,50 say nmee @14,10 say"Are you sure you want to delete the data of Customer? Y/N" get ans pict"Y" read if upper(ans)="Y" delete @18,10 say"Customer Data deleted from Dbase" else exit endif endif @21,10 say"Do you want to continue?Y/N" get ch pict 'Y' read @10,10 to 10,69 clear @14,10 to 14,69 clear @18,10 to 18,69 clear @21,10 to 21,69 clear enddo

clear close all set talk off set echo off clear ans="Y" ch="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd.dbf" index on index_no to csdndx1 do while upper(ans)="Y" indexno=space(6) @2,2 to 35,65 style '50' @4,24 say"DATA MODIFICATION" font 'courier new' style "ub" @6,10 say"Enter Index No:" @6,35 get indexno pict"999999" read seek indexno if !found() @18,10 say"Item does not Exist,want to continue? Y/N" get ch pict 'Y' read if upper (ch)="Y" clear loop else exit endif else @8,10 say"Enter Fresh Data as applicable" @10,10 say"Enter Group:" @11,10 say"Enter Name of Item:" @12,10 say"Enter Case Pack:" @13,10 say"Enter W/S Rate Per Case:" @14,10 say"Enter W/S Rate per Unit:" @15,10 say"Enter R/Rate per Unit:" indexno=index_no grp=gp itemnm=item casepack=case_pack wsrpc=wsrate_pc wsrpu=wsrate_pu rrpu=rrate_pu @10,35 get grp @11,35 get itemnm @12,35 get casepack

@13,35 get wsrpc @14,35 get wsrpu @15,35 get rrpu read @17,10 say"Is the data correct? Y/N" get ans pict 'Y' read if upper(ans)="Y" replace gp with grp replace item with itemnm replace case_pack with casepack replace wsrate_pc with wsrpc replace wsrate_pu with wsrpu replace rrate_pu with rrpu @20,10 say"Data Modified" endif endif @23,10 say"Continue Y/N?" get ans pict 'Y' read clear enddo clear close all

set talk off set echo off clear ans="Y" ch="Y" a="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd" index on index_no to csdndx1 do while upper(ans)="Y" indexno=space(6) qtycases=0 qtystk=0 criqty=0 rval=0 @2,2 to 30,65 style '50' @3,15 say"UPDATION OF STOCK POSITION IN DBASE" style "ub" @5,10 say"Enter Index No:" @5,35 get indexno pict"999999" read seek indexno if !found() @23,10 say"Item does not Exist,want to continue?Y/N" get ch read if upper(ch)="Y" clear loop else exit endif else grp=gp itemnm=item casepack=case_pack wsrpc=wsrate_pc wsrpu=wsrate_pu rrpu=rrate_pu qtystk=qty_stk criqty=cri_qty rval=r_val @6,10 say"Group:" @7,10 say"Name of Item:" @8,10 say"Case Pack:" @9,10 say"W/S Rate Per Case:" @10,10 say"W/S Rate per Unit:" @11,10 say"R/Rate per Unit:"

@12,10 say"Existing Stock Bal is: " @13,10 say"Level of Critical Qty is:" @14,10 say"Retail Val of Stk Bal is:" @6,35 say grp @7,35 say itemnm @8,35 say casepack @9,35 say wsrpc @10,35 say wsrpu @11,35 say rrpu @12,35 say qtystk @13,35 say criqty @14,35 say rval @15,10 say "These are current details of specified item." @17,10 say"Enter new details in following rows:-" @19,10 say"Enter No of Cases:" get qtycases @20,10 say"Enter new retail rate if applicable" get rrpu read @22,10 say"Is the data correct? Y/N" get a read if upper(a)="Y" replace gp with grp replace item with itemnm replace case_pack with casepack replace wsrate_pc with wsrpc replace wsrate_pu with wsrpu replace rrate_pu with rrpu qtystk=qtystk+casepack*qtycases rval=qtystk*rrpu replace qty_stk with qtystk replace cri_qty with criqty replace r_val with rval @24,10 say"Record Updated" else @24,10 say"Record Not Updated" endif endif @26,10 say"Continue Y/N?" get ans read @21,0 clear enddo close databases clear set talk off set echo off

clear close all use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\transact" goto bottom billno=bill_no+1 use sele 1 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd" index on index_no TAG ind sele 2 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\transact" index on index_no TAG ino sele 1 set relation to index_no into transact set skip to transact sele 3 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\customer" index on num TAG numm ch="Y" do while upper(ch)="Y" indexno=space(6) ln=13 qtty=0 amount=0 prft=0 ttl=0 gttl=0 no=space(10) rank=space(10) nm=space(20) unit=space(15) icard_no=space(10) @2,2 to 80,80 style '50' @3,30 say "CUSTOMER BILL" font 'courier new', 12 style "ub" @5,30 say "XYZ Military Canteen" style "ub" @7,5 say "Date:" @7,12 say dmy(date()) @7,50 say "Bill No:" @7,60 say billno @8,5 say "No:" get no pict "9999999999" valid no > "0000000000" read @ 8,9 say no sele 3

seek no if found() @ 8,9 say num @ 8,27 say "Rank:" @ 8,34 say rnk @ 8,50 say "Name:" @ 8,58 say nme @ 9,5 say "Unit:" @ 9,11 say unt @ 9,50 say "I Card No:" @ 9,60 say icard else @8,20 say "Rank:" get rank pict "@!A" read @8,25 say rank @8,40 say "Name:" get nm pict "@!A" read @8,46 say nm @9,5 say "Unit:" get unit pict "@!N" read @9,11 say unit @9,30 say "I Card No:" get icard_no pict "9999999999" read @9,41 say icard_no endif @10,5 to 10,78 @11,12 say "Index No" @11,25 say "Item" @11,48 say "Rate" @11,60 say "Qty" @11,70 say "Amount" @12,5 to 12,78 sele csd do while indexno!="000000" and ln<34 @ln,12 get indexno pict "999999" read if indexno=="000000" exit endif seek indexno if found() @ln,12 say index_no @ln,20 say item @ln,42 say rrate_pu @ln,52 get qtty pict "9"

read if qty_stk>=qtty @ln,52 say qtty amount=rrate_pu*qtty @ln,62 say amount prft=qtty*(rrate_pu-wsrate_pu) ttl=ttl+amount sele transact append blank replace index_no with indexno replace dot with date() replace bill_no with billno replace qty with qtty replace amt with amount replace pft with prft sele csd replace qty_stk with qty_stk-qtty replace r_val with r_val-amount ln=ln+1 else @ln,50 say qtty @ln,55 say"Item out of stock" ln=ln+1 endif else @ln,55 say"Item not available" ln=ln+1 endif enddo @35,10 say "Total: Rs" @25,25 say ttl gttl=round(ttl,0) @36,10 say "Grand Total:Rs" @36,25 say gttl @37,10 say "Do you want to continue?Y/N:" get ch read billno=billno+1 clear enddo close all databases set talk off set echo off

clear use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd" index csdndx1 ch="Y" choice=" " do while upper(ch)="Y" @1,0 to 30,88 style '50' @2,30 say"INDENT-CUM-INVOICE" style "ub" @3,2 say"Date:" @4,8 say dmy(date()) @4,34 say"XYZ Military Canteen" style "u" @5,1 to 5,86 @6,1 say"Gp" @6,5 say"Index No" @6,20 say"Item" @6,40 say"Case Pack" @6,50 say"Cri Qty" @6,60 say"RO Qty" @6,70 say"W/S Rate" @6,80 say"Cost" @7,1 to 7,86 ln=8 do while !eof() and ln<35 if qty_stk <=cri_qty @ln,1 say gp @ln,5 say index_no @ln,12 say item @ln,40 say case_pack @ln,51 say cri_qty @ln,60 get roqty read @ln,60 say roqty ln=ln+1 endif skip enddo if eof() @26,5 say"End of File" endif @28,5 say "Enter N to Exit" get ch read @8,0 clear enddo close all set talk off set echo off

set date BRITISH clear ch="Y" do while upper(ch)="Y" sele 1 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\transact.dbf" index on dot TAG dt sele 2 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum.dbf" index on dot TAG dto sele 1 set relation to dot into sales_sum dt= {} ln=9 profit=0 ttl=0 @2,1 to 11,65 style '50' @3,25 say "DAILY SALES REPORT" style "ub" @7,2 say "Enter Date for which Report is reqd(dd/mm/yy):" get dt read clear @2,1 to 30,75 style '50' @3,19 say "DAILY SALES REPORT OF " style "ub" @3,45 say dmy(dt) style "ub" @5,2 say "Date:" @5,9 say dmy(date()) @6,2 to 6,73 @7,7 say "Index No" @7,20 say "Bill No" @7,35 say "Qty" @7,50 say "Amount" @7,60 say "Profit" @8,2 to 8,73 sele transact scan while !eof() if dot==dt @ln,7 say index_no @ln,20 say bill_no @ln,35 say qty @ln,48 say amt ttl=ttl+amt @ln,58 say pft profit=profit+pft ln=ln+1

endif endscan seek dt if !found() @ln+5,15 say "Sorry!Data not available" endif sele sales_sum seek dt if found() replace t_amt with ttl replace proft with profit endif if ttl>0 append blank replace dot with dt replace t_amt with ttl replace proft with profit endif wait window clear @28,1 to 40,60 @30,5 say "Total Sale on" @30,20 say dmy(dt) @30,35 say ": Rs" @30,40 say ttl @32,5 say"Do you want to continue?Y/N" get ch read clear enddo close all

style "b"

set talk off set echo off clear use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd" index on index_no to csdndx1 do while .T. store " " to ch @2,1 TO 35,60 style'50' @5,20 say "SALES SUMMARY REPORTS" style "ub" @9,10 say "Enter 'D' for Daily Sales Summary" @12,10 say "Enter 'M' for Monthly Sales Summary" @15,10 say "Enter 'P' for Datewise Sales Summary" @18,10 say "Enter 'R' for Returning to Main Menu"

@22,10 say "Enter your choice: " @22,45 get ch read do case case ch= "d" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_dss" case ch="m" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_mss" case ch= "p" do "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\urc_dwss" case ch="r" clear exit otherwise clear wait "Sorry!Wrong Choice,Press any key to continue..." window endcase enddo clear

set talk off set echo off set date BRITISH clear ch="Y" do while upper(ch)="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum" index on dot to dto i=0 sele 1 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum" do while !eof() chk=dot i=i+1 use sele 2 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum" skip i do while !eof() if dot=chk delete endif skip enddo pack use sele 1 use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum" skip i enddo use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum" index dto dt={} @2,1 to 11,67 style '50' @4,24 say"DAILY SALES SUMMARY" style "ub" @7,02 say"Enter date for which Sales Summary is reqd(dd/mm/yy) :" get dt read clear @2,1 to 20,50 double style'50' @3,14 say"DAILY SALES SUMMARY" font 'courier new'style "ub" @5,2 to 5,48 @6,8 say "Date" @6,23 say "Amount" @6,36 say "Profit"

@7,2 to 7,48 seek dt if found() @10,8 say dt @10,21 say t_amt @10,34 say proft else @12,8 say"Sorry!Data for desired date not available" endif @15,8 say"Do you want to continue?Y/N" get ch read clear enddo clear close all

set talk off set echo off clear ch="Y" do while upper(ch)="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum.dbf" index on dot to dto mth=0 yr=0 gt_amt=0 gt_pft=0 @2,1 to 11,75 style '50' @4,24 say"MONTHLY SALES SUMMARY" font 'courier new' style "ub" @6,2 say"Enter month(eg 3 for March) for which Sales Summary is reqd:" @6,62 get mth pict "99" read if mth<1 or mth>12 wait "Invalid Month,Please Re-enter"window @6,62 get mth pict "99" read endif @7,2 say"Enter year (eg 2007)" @7,62 get yr pict "9999" read if yr<1000

wait"Invalid Year.Enter in 4 Figs" window @7,62 get yr pict"9999" read endif clear @2,1 to 20,60 double style'50' @3,19 say"MONTHLY SALES SUMMARY" font 'courier new'style "ub" @5,2 to 5,58 @6,8 say "Month" @6,20 say "Year" @6,34 say "Amount" @6,46 say "Profit" @7,2 to 7,58 scan while !eof() if mth==month(dot)and yr==year(dot) gt_amt=gt_amt+t_amt gt_pft=gt_pft+proft endif endscan if gt_amt>0 @10,3 say mth @10,15 say yr @10,27 say gt_amt @10,40 say gt_pft else @12,5 say"Sorry ! Data is not available" endif

@14,8 say"Do you want to continue?Y/N" get ch read clear enddo close all set talk off set echo off set date BRITISH clear ch="Y" do while upper(ch)="Y" use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\sales_sum" index on dot to dto

dt1={} dt2={} gt_amt=0 gt_pft=0 @2,1 to 11,75 style '50' @4,24 say" SALES SUMMARY" font "courier new" style "ub" @6,2 say"Enter date from which Sales Summary is reqd (dd/mm/yy):" @6,62 get dt1 read @8,2 say"Enter date to which Sales Summary is reqd (dd/mm/yy):" @8,62 get dt2 read clear @2,1 to 20,60 double style'50' @3,19 say" SALES SUMMARY" font 'courier new' style "ub" @5,2 to 5,58 @6,6 say "From Date" @6,18 say "To Date" @6,34 say "Amount" @6,46 say "Profit" @7,2 to 7,58 do while !eof() if dt1<=dot and dt2>=dot gt_amt=gt_amt+t_amt gt_pft=gt_pft+proft endif skip enddo if gt_amt>0 @10,5 say dt1 @10,18 say dt2 @10,27 say gt_amt @10,40 say gt_pft else @12,5 say"Sorry ! Data is not available" endif @14,8 say"Do you want to continue?Y/N" get ch read clear enddo close all set talk off

set echo off clear use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd" index csdndx1 ch="y" do while upper(ch)="Y" t_val=0 @1,1 to 20,60 double style '50' @4,13 say "STOCK BALANCE AS ON " style "ub" @4,36 say dmy(date()) style "ub" do while !eof() t_val=t_val+r_val @10,5 say "Current Total Value of Stock is: Rs " @10,40 say t_val skip enddo @15,5 say "Press 'N' key to Exit to Main Menu" get ch read enddo clear close all set talk off set echo off clear use "C:\Documents and Settings\Administrator\Desktop\PROJECT\project\csd" index csdndx1 ch='Y' do while upper(ch)='Y' @1,1 to 15,40 style'50' store space(6) to indexno @4,12 say "DETAILS OF ITEM" style"ub" @10,5 say"Enter Index No of Item" @10,30 get indexno pict "999999" read clear @1,1 to 38,65 style'50' @3,25 say"DETAILS OF ITEM" style"ub" seek indexno if found() @7,7 say "Index No" @7,35 say index_no @9,7 say "Group" @9,35 say gp

@11,7 say "Name of Item" @11,35 say item @13,7 say "Case Pack" @13,34 say case_pack @15,7 say "Qty in Stock" @15,32 say qty_stk @17,7 say "Critical Qty" @17,35 say cri_qty @19,7 say "Reorder Qty" @19,33 say roqty @21,7 say "Retail Rate" @21,32 say rrate_pu @23,7 say "Retail Value" @23,32 say r_val else @15,7 say "Index No is Incorrect,Item not Found" endif @27,7 say"Do you want to continue" @27,35 get ch read clear enddo clear close all

CONCLUSION

This overall Conclusion of all this is that Time Saving & Efficiency is a must in any work today. The Software helps in maintaining the same for an Institution through it's highly sophisticated features and reliability. It's a good start but some more genuine features will be added in this in near future. Obtaining the belief of the people is the primary goal for me. Although it is checked thoroughly and carefully, I welcome all suggestions and corrections in order to make a useful Software.

Thank You!

Anupama Bhatt 'A' Level Student Reg.No. 462927

You might also like