Академический Документы
Профессиональный Документы
Культура Документы
PREFACE
needs of the people who use it, When it performs flawlessly over a
use. It can and does change things for the better. But when
makes things better, avoiding the bad things that lurk in the
maturity.
vehicle used to deliver the product, software acts as the basis for
very much used all the software field by way of writing coding in
data base management for secured usage of data to get used only
ACKNOWLDEGEMENT
time.
TABLE OF CONTENTS
1. Project Title 6
3. Project Category 9
ANALYSIS
5. 10
Data Flow Diagram
7. Data Structure 14
8. Process Logic 21
6
INTRODUCTION
buy goods from the manufacturers and from sole vendors and
the main group like, dress materials, food items, electrical and
are maintained in the records and goods receipt notes are also
product, the category that the product falls into, the quantity of the
product, the last transaction date on which the product was sold,
the cost price of the product and selling price of the product and
pit falls.
OBJECTIVE
management.
Error Free.
9
visual basic as front end. These are powerful and full featured
PROJECT CATEGORY
SOFTWARE REQUIREMENTS
HARDWARE REQUIREMENTS
RAM : 32 MB RAM.
ANALYSIS
FUNCTIONAL MODELLING
values, and the functions that relate them. Data flow diagrams are
USER
Organization Details
Login info
0
GRN Details ORGANIZATION
Cash Memo Details RETAIL
MANAGEMENT
SYSTEM Purchase Order Details
Refund Details
CUSTOMER
MIS Reports
1
Login Info Verification
User Login Login
Proces
s
11
Uom details
uom
Maingroup details
maingroup_mas
2 Subgroup details
Master Details subgroup_mas
Organization
Master
Entry Item details
Process item_mas
Tax details
tax_mas
Supplier details
supplier_mas
Supplier Details
Item Details
3
Purchase Order PO Master Details
po_mas
Details Purchase
Order PO Transaction Details po_trans
Details
Supplier Details
Updates
cashmemo_mas
5
Customer
Customer cashmemo_trans
Cash
Details Memo
Process balance
stock_det
Updates
refund mas det
refund_mas
6
trans det
refund_trans
pend_pur
Refund stock det
stock_det 7
Process
stock_det
Stock Updates MIS
Process Organization
12
collect various master details from the organization like main group
4. GRN MODULE
13
the goods from the supplier the organization raise goods receipt
note to the supplier. This module verifies that all gods have been
customer.
6. REFUND MODULE
7. MIS MODULE
DATA STRUCTURES
PROCESS LOGIC
1. LOGIN MODULE
tables are created for the future purpose. It also allows the
transaction records.
from the item master table. Number of case pack should not be
SUPPLIER_MAS, ITEM_MAS.
23
4. GRN MODULE
stock details.
2. Direct
details from purchase order has to be listed in the GRN and the
While in the later, direct goods received from any supplier without
any purchase order then each and every detail has to be entered
by the user.
24
The supplier invoice number is taken from the invoice given by the
SUPPLIER_MAS.
should be listed (such as item name, each price, taxes from tax
multiplied with each price of the item and subtracted with discount
added to the tax and deducted with discounts (if any). The amount
has to be entered.
STOCK_DET.
6. REFUND MODULE
which the product is taken back. There are two types of refund
available viz..
2. Direct.
In the first case, the cash memo code has to be displayed. In later,
7. MIS MODULE
INTRODUCTION
buy goods from the manufacturers and from sole vendors and
the main group like, dress materials, food items, electrical and
are maintained in the records and goods receipt notes are also
product, the category that the product falls into, the quantity of the
product, the last transaction date on which the product was sold,
the cost price of the product and selling price of the product and
pit falls.
OBJECTIVE
SPECIFICATIONS
SOFTWARE REQUIREMENTS
HARDWARE REQUIREMENTS
RAM : 32 MB RAM.
WHY VB?
WHY ORACLE?
for its operations. With more and more people accessing this data
for their work the need to maintain its integrity and relevance
and information in files, the changes that the data loses its integrity
(client).
34
SYSTEM ANALYSIS
IDENTIFICATION OF NEED
watch word:
1. High Quality
PRELIMINARY INVESTIGATION
project requirements.
alternative approaches.
the proposal.
36
APPLICABILITY ANALYSIS
enlisted below:
Item list
Supplier details
Tax details
Design control
37
FEASIBILITY STUDY
1. Operational Feasibility
2. Technical Feasibility
3. Economic Feasibility
1. OPERATIONAL FEASIBILITY
given below:
System.
39
2. TECHNICAL FEASIBILITY
follows:
system?
need to use Intel Pentium 4 processor with 2.9 GHz of speed, 256
40
system with Microsoft Visual Basic 6.0 as front end, for generation
are all state of the art, hence we conclude that proposed system is
technically feasible.
3. ECONOMICAL FEASIBILITY
errors.
41
not developed)
system.
GANTT CHART
RMS
WORK BREAK DOWN STRUCTURE
PROJECT
I have drawn a Gantt chart for the task identified in the WBS.
I estimated the number of weeks required for each of the tasks as
follows:
43
application the methods and tools to be used and the controls and
Design
Code generation
Testing
Support
System/Information
Engineering
Analysis
Analysis Design
Design Code
Code Test
Test
Figure 5.1
46
document.
description.
requirements specification.
appendixes.
48
Login: This table stores login detail for several users and gives
under the main group i.e., under Food there are vegetables, fruits
purchase order.
Grn_mas: This table stores the details of the goods receipt notes.
49
the supplier.
memo.
They are:
DESIGN
CHARACTERISTICS
of a good design:
for those who generate code and for those who test and
DESIGN PRINCIPLES
vision”
real world
change.
encountered.
(semantic) errors.
52
DESIGN CONCEPTS
1. Abstraction
2. Refinement
3. Modularity
ABSTRACTION
REFINEMENT
(elaboration) occurs.
MODULARITY
together”.
ORDE
ORDE CASHMEMO_
PO_MAS
PO_MAS PEND_PUR
PEND_PUR MAS
R
SUPPL TRAN
SACTI TRAN
SUPPLIE Y SACTI
GRN_MAS
GRN_MAS ON CASHMEMO_
R_MAS ON BALANCE
TRANS
TRAN
SACTI
GRN_TRANS ON STOCK_DET
TRAN
SACTI
REFUND_ ON REFUND_
TRANS MAS
55
from input to output. The basic form data flow diagram also known
USER
Organization Details
Login info
0
GRN Details ORGANIZATION
Cash Memo Details RETAIL
MANAGEMENT
SYSTEM Purchase Order Details
Refund Details
CUSTOMER
MIS Reports
Figure (a)
1
Login Info Verification
User Login Login
Proces
s
56
Uom details
uom
Maingroup details
maingroup_mas
2 Subgroup details
Master Details subgroup_mas
Organization
Master
Entry Item details
Process item_mas
Tax details
tax_mas
Supplier details
supplier_mas
Supplier Details
Item Details
3
Purchase Order PO Master Details
po_mas
Details Purchase
Order PO Transaction Details po_trans
Details
Supplier Details
Updates
cashmemo_mas
5
Customer
Customer cashmemo_trans
Cash
Details Memo
Process balance
stock_det
Updates
refund mas det
refund_mas
6
trans det
refund_trans
pend_pur
Refund stock det
stock_det 7
Process
stock_det
Stock Updates MIS
Process Organization
57
58
SCREEN SHOTS
59
60
61
62
63
64
65
66
67
68
CODINGS
Option Explicit
Dim rs As New ADODB.Recordset, rs1 As New ADODB.Recordset
Dim oid As New ADODB.Recordset, sup As New ADODB.Recordset
Dim items As New ADODB.Recordset, pend As New ADODB.Recordset
Dim editflag As Boolean, search As Boolean
Dim tot As Double
Dim clk As Boolean
For i = 0 To Combo1.ListCount - 1
If Combo1.List(i) = rs(3) Then
Combo1.ListIndex = i
Exit For
End If
Next
If Not IsNull(rs(4)) Then
Text6.Text = rs(4)
End If
If Not IsNull(rs(5)) Then
Text7.Text = rs(5)
End If
If Not IsNull(rs(6)) Then
Text9.Text = rs(6)
End If
If Not IsNull(rs(7)) Then
Text8.Text = rs(7)
End If
End If
rs.MoveNext
Loop
rs1.Requery
rs1.Filter = ""
rs1.Filter = "OrderNo='" & Combo2.Text & "'"
MSFlexGrid1.Rows = 1
Do While Not rs1.EOF
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
MSFlexGrid1.Row = MSFlexGrid1.Rows - 1
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = rs1(1)
items.Filter.Text = "itemcode ='" & rs1(1) & "'"
MSFlexGrid1.Col = 2
MSFlexGrid1 = items(4)
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = rs1(5)
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = rs1(2)
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = rs1(3)
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = rs1(4)
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = rs1(5)
MSFlexGrid1.Col = 8
MSFlexGrid1.Text = rs1(6)
MSFlexGrid1.Col = 9
MSFlexGrid1.Text = (rs1(4) * rs1(5)) + rs1(6) - rs1(7)
70
rs1.MoveNext
Loop
End If
rownum
End Sub
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "S.No"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "Item Code"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "Item Name"
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = "MRP"
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = "Case Pack"
71
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = "No Of Cases"
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = "Quantity"
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = "Additions"
MSFlexGrid1.Col = 8
MSFlexGrid1.Text = "Deductions"
MSFlexGrid1.Col = 9
MSFlexGrid1.Text = "Amount"
Dim i
For i = 1 To MSFlexGrid1.Cols - 1
MSFlexGrid1.ColWidth(i) = 1500
Next
noedit
End Sub
Case Else
Dim i As Integer
If MSFlexGrid1.Col = 3 Or MSFlexGrid1.Col = 4 Or
MSFlexGrid1.Col = 5 Or MSFlexGrid1.Col = 6 Or
MSFlexGrid1.Col = 7 Or MSFlexGrid1.Col = 8 Then
If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii =
46 Or KeyAscii = 8) Then
KeyAscii = 0
Beep
Exit Sub
ElseIf KeyAscii = 46 Then
For i = 1 To Len(MSFlexGrid1.Text) - 1
If Mid(MSFlexGrid1.Text, i, 1) = "." Then
KeyAscii = 0
Exit Sub
End If
Next
End If
MSFlexGrid1.Text = MSFlexGrid1.Text & Chr(KeyAscii)
End If
End Select
End Sub
MSFlexGrid1.Rows = 1
Combo1.SetFocus
Tb1.Buttons(1).Enabled = False
Tb1.Buttons(2).Enabled = True
Tb1.Buttons(3).Enabled = False
Tb1.Buttons(4).Enabled = False
Tb1.Buttons(5).Enabled = True
Case 2
If Text3.Text = "" Then
MsgBox "Enter Expected Delivary Date"
Text3.SetFocus
Exit Sub
End If
If MSFlexGrid1.Rows = 1 Then
MsgBox "Select the Products"
Command1.SetFocus
Exit Sub
End If
If editflag = False Then
rs.AddNew
rs(0) = Text1.Text
rs(1) = Text2.Text
rs(2) = Text3.Text
rs(3) = Combo1.Text
If Text6.Text <> "" Then
rs(4) = Val(Text6.Text)
End If
If Text7.Text <> "" Then
rs(5) = Val(Text7.Text)
End If
If Text9.Text <> "" Then
rs(6) = Text9.Text
End If
rs(7) = Text8.Text
rs.Update
For i = 1 To MSFlexGrid1.Rows - 1
rs1.AddNew
rs1(0) = Text1.Text
rs1(1) = MSFlexGrid1.TextMatrix(i, 1)
rs1(2) = Val(MSFlexGrid1.TextMatrix(i, 4))
rs1(3) = Val(MSFlexGrid1.TextMatrix(i, 5))
rs1(4) = Val(MSFlexGrid1.TextMatrix(i, 6))
rs1(5) = Val(MSFlexGrid1.TextMatrix(i, 3))
If MSFlexGrid1.TextMatrix(i, 7) <> "" Then
rs1(6) = Val(MSFlexGrid1.TextMatrix(i, 7))
End If
If MSFlexGrid1.TextMatrix(i, 8) <> "" Then
rs1(7) = Val(MSFlexGrid1.TextMatrix(i, 8))
End If
rs1.Update
Next
oid(0) = Mid(Text1.Text, 2)
oid.Update
clear
75
Else
rs.Filter = "OrderNo='" & Combo2.Text & "'"
rs(1) = Text2.Text
rs(2) = Text3.Text
rs(3) = Combo1.Text
rs(4) = Val(Text6.Text)
rs(5) = Val(Text7.Text)
rs(6) = Text9.Text
rs(7) = Text8.Text
rs.Update
rmscon.Execute "delete from purchaseorderdetails where
OrderNo='" & Combo2.Text & "'"
For i = 1 To MSFlexGrid1.Rows - 1
rs1.AddNew
rs1(0) = Combo2.Text
rs1(1) = MSFlexGrid1.TextMatrix(i, 1)
rs1(2) = Val(MSFlexGrid1.TextMatrix(i, 4))
rs1(3) = Val(MSFlexGrid1.TextMatrix(i, 5))
rs1(4) = Val(MSFlexGrid1.TextMatrix(i, 6))
rs1(5) = Val(MSFlexGrid1.TextMatrix(i, 3))
If MSFlexGrid1.TextMatrix(i, 7) <> "" Then
rs1(6) = Val(MSFlexGrid1.TextMatrix(i, 7))
End If
If MSFlexGrid1.TextMatrix(i, 8) <> "" Then
rs1(7) = Val(MSFlexGrid1.TextMatrix(i, 8))
End If
rs1.Update
Next
clear
End If
Tb1.Buttons(1).Enabled = True
Tb1.Buttons(2).Enabled = False
Tb1.Buttons(3).Enabled = True
Tb1.Buttons(4).Enabled = False
Tb1.Buttons(5).Enabled = True
Case 3
editflag = True
dispcombo
Combo2.Enabled = True
yesedit
Tb1.Buttons(1).Enabled = False
Tb1.Buttons(2).Enabled = True
Tb1.Buttons(3).Enabled = False
Tb1.Buttons(4).Enabled = True
Tb1.Buttons(5).Enabled = True
Case 4
search = True
Dim opt
If Combo2.ListIndex >= 0 And Combo2.Visible = True Then
opt = MsgBox("Do Yo Want to Delete the Purchase Order
No." & Combo2.Text, vbYesNo)
If opt = vbYes Then
76
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Combo1.ListIndex = -1
End Sub
Public Sub noedit()
Dim c
For Each c In Me.Controls
If TypeOf c Is TextBox Or TypeOf c Is ComboBox Or TypeOf c Is
MSFlexGrid Or TypeOf c Is CommandButton Then
c.Enabled = False
End If
Next
End Sub
Public Sub yesedit()
Dim c
For Each c In Me.Controls
If TypeOf c Is TextBox Or TypeOf c Is ComboBox Or TypeOf c Is
MSFlexGrid Or TypeOf c Is CommandButton Then
c.Enabled = True
End If
Next
Text4.Enabled = False
Text5.Enabled = False
End Sub
End if
End sub
GRN CODINGS
Combo2.Visible = True
Text1.Visible = False
Exit Sub
check:
MsgBox Err.Description
End Sub
End If
Next
If Not IsNull(rs(3)) Then
PODT.Text = rs(3)
PODT.Visible = True
Else
PODT.Text = ""
PODT.Visible = False
End If
If Not IsNull(rs(4)) Then
Text6.Text = rs(4)
Else
Text6.Text = rs(4)
End If
If Not IsNull(rs(5)) Then
Text7.Text = rs(5)
Else
Text7.Text = ""
End If
If Not IsNull(rs(6)) Then
Text9.Text = rs(6)
Else
Text9.Text = ""
End If
If Not IsNull(rs(7)) Then
Text10.Text = rs(7)
Else
Text10.Text = ""
End If
If Not IsNull(rs(8)) Then
Text3.Text = rs(8)
Text3.Visible = True
Else
Text3.Visible = False
Text3.Text = ""
End If
If rs(9) = "CASH" Then
Option3.Value = True
Else
Option4.Value = True
End If
If IsNull(rs(10)) Then
Text11.Text = ""
Else
Text11.Text = rs(10)
End If
If IsNull(rs(11)) Then
Text12.Text = ""
Else
Text12.Text = rs(11)
End If
If IsNull(rs(12)) Then
Text13.Text = ""
Else
Text13.Text = rs(12)
82
End If
If IsNull(rs(13)) Then
Text8.Text = ""
Else
Text8.Text = rs(13)
End If
End If
rs.MoveNext
Loop
rs1.Filter = ""
rs1.MoveFirst
rs1.Requery
rs1.Filter = "DocNo='" & Combo2.Text & "'"
MSFlexGrid1.Rows = 1
Dim amt As Long
Do While Not rs1.EOF
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
MSFlexGrid1.Row = MSFlexGrid1.Rows - 1
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = rs1(1)
items.Filter = "itemcode ='" & rs1(1) & "'"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = items(4)
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = rs1(5)
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = rs1(2)
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = rs1(3)
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = rs1(4)
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = rs1(5)
MSFlexGrid1.Col = 8
MSFlexGrid1.Text = rs1(6)
MSFlexGrid1.Col = 9
MSFlexGrid1.Text = (rs1(4) * rs1(5)) + rs1(6) - rs1(7)
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "S.No"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "Item Code"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "Item Name"
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = "MRP"
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = "Case Pack"
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = "No Of Cases"
84
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = "Quantity"
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = "Additions"
MSFlexGrid1.Col = 8
MSFlexGrid1.Text = "Deductions"
MSFlexGrid1.Col = 9
MSFlexGrid1.Text = "Amount"
MSFlexGrid1.Col = 10
MSFlexGrid1.Text = "Batch No."
MSFlexGrid1.Col = 11
MSFlexGrid1.Text = "Expiry Date"
MSFlexGrid1.Col = 12
MSFlexGrid1.Text = "Narrations"
Dim i
For i = 1 To MSFlexGrid1.Cols - 1
MSFlexGrid1.ColWidth(i) = 1500
Next
noedit
Exit Sub
check:
MsgBox Err.Description
MsgBox "Try Closing the Application and Open"
End Sub
rs.Close
rs1.Close
items.Close
Stock.Close
Exit Sub
check:
MsgBox Err.Description
End Sub
Text2.Text = Date
editflag = False
Combo2.Visible = False
mop = "CASH"
Tb1.Buttons(1).Enabled = False
Tb1.Buttons(2).Enabled = True
Tb1.Buttons(3).Enabled = False
Tb1.Buttons(4).Enabled = False
Tb1.Buttons(5).Enabled = True
Case 2
If MSFlexGrid1.Rows = 1 Then
MsgBox "Select the Products"
Command1.SetFocus
Exit Sub
End If
If Option4.Value = True Then
If Text11.Text = "" Then
MsgBox "Enter Cheque No."
Text11.SetFocus
Exit Sub
End If
If Text12.Text = "" Then
MsgBox "Enter Bank Name."
Text12.SetFocus
Exit Sub
End If
End If
Stock.AddNew
Stock(0) = MSFlexGrid1.TextMatrix(i, 1)
If MSFlexGrid1.TextMatrix(i, 10) <> "" Then
Stock(1) = MSFlexGrid1.TextMatrix(i, 10)
End If
If MSFlexGrid1.TextMatrix(i, 11) <> "" Then
Stock(2) = MSFlexGrid1.TextMatrix(i, 11)
End If
Stock(3) = Val(MSFlexGrid1.TextMatrix(i, 6))
Stock(4) = Val(MSFlexGrid1.TextMatrix(i, 3))
Stock(5) = Text1.Text
Stock.Update
Next
docno(0) = Mid(Text1.Text, 5)
docno.Update
clear
Else
rs.Filter = "DocNo='" & Combo2.Text & "'"
Text1.Text = Combo2.Text
assignmaster
rs.Update
For i = 1 To MSFlexGrid1.Rows - 1
rs1.AddNew
rs1(0) = Text1.Text
rs1(1) = MSFlexGrid1.TextMatrix(i, 1)
rs1(2) = Val(MSFlexGrid1.TextMatrix(i, 4))
rs1(3) = Val(MSFlexGrid1.TextMatrix(i, 5))
rs1(4) = Val(MSFlexGrid1.TextMatrix(i, 6))
rs1(5) = Val(MSFlexGrid1.TextMatrix(i, 3))
rs1(6) = Val(MSFlexGrid1.TextMatrix(i, 7))
rs1(7) = Val(MSFlexGrid1.TextMatrix(i, 8))
rs1(8) = MSFlexGrid1.TextMatrix(i, 10)
rs1(9) = MSFlexGrid1.TextMatrix(i, 11)
If MSFlexGrid1.TextMatrix(i, 12) <> "" Then
rs1(10) = MSFlexGrid1.TextMatrix(i, 12)
End If
rs1.Update
Stock.AddNew
Stock(0) = MSFlexGrid1.TextMatrix(i, 1)
If MSFlexGrid1.TextMatrix(i, 10) <> "" Then
Stock(1) = MSFlexGrid1.TextMatrix(i, 10)
End If
If MSFlexGrid1.TextMatrix(i, 11) <> "" Then
Stock(2) = MSFlexGrid1.TextMatrix(i, 11)
End If
Stock(3) = Val(MSFlexGrid1.TextMatrix(i, 6))
Stock(4) = Val(MSFlexGrid1.TextMatrix(i, 9))
Stock(5) = Text1.Text
Stock.Update
Next
clear
Tb1.Buttons(1).Enabled = True
Tb1.Buttons(2).Enabled = False
Tb1.Buttons(3).Enabled = True
Tb1.Buttons(4).Enabled = False
Tb1.Buttons(5).Enabled = True
End If
Case 3
search = True
editflag = True
clear
dispcombo
Combo2.Enabled = True
yesedit
Tb1.Buttons(1).Enabled = False
Tb1.Buttons(2).Enabled = True
Tb1.Buttons(3).Enabled = False
Tb1.Buttons(4).Enabled = True
Tb1.Buttons(5).Enabled = True
Case 4
search = True
Dim opt
89
Case 5
Tb1.Buttons(1).Enabled = True
Tb1.Buttons(2).Enabled = False
Tb1.Buttons(3).Enabled = True
Tb1.Buttons(4).Enabled = False
Tb1.Buttons(5).Enabled = True
clear
Case 6
clear
search = True
dispcombo
noedit
Combo2.Enabled = True
Case 7
Unload Me
Case 8
If Combo2.ListIndex >= 0 Then
DataEnvironment1.Command5 Combo2.Text
gr.Show vbModal
DataEnvironment1.rsCommand5.Close
End If
End Select
Exit Sub
check:
If Err.Number = -2147217887 Then
MsgBox "Goods Reciept Note Already Exists "
Else
MsgBox Err.Description
End If
End Sub
Sub assignmaster()
On Error GoTo check
rs(0) = Text1.Text
rs(1) = Text2.Text
rs(2) = Combo1.Text
If PODT.Text <> "" Then
rs(3) = PODT.Text
End If
rs(4) = Val(Text6.Text)
90
rs(5) = Val(Text7.Text)
If Text9.Text <> "" Then
rs(6) = Text9.Text
End If
If Text10.Text <> "" Then
rs(7) = Text10.Text
End If
If Text3.Text <> "" Then
rs(8) = Text3.Text
End If
rs(9) = mop
If mop <> "CASH" Then
rs(10) = Text11.Text
rs(11) = Text12.Text
End If
rs(12) = Val(Text13.Text)
rs(13) = Val(Text8.Text)
Exit Sub
check:
MsgBox Err.Description
End Sub
Case 8
If Len(MSFlexGrid1.Text) > 0 Then
MSFlexGrid1.Text = Left(MSFlexGrid1.Text,
Len(MSFlexGrid1.Text) - 1)
End If
Case 9
If MSFlexGrid1.Cols - 1 = MSFlexGrid1.Col Then
If MSFlexGrid1.Rows - 1 = MSFlexGrid1.Row Then
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
Else
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
End If
Else
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
End If
Case 13
If MSFlexGrid1.Rows - 1 = MSFlexGrid1.Row Then
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
Else
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
End If
rownum
Case Else
91
End Sub
Next
tot = Text8.Text
Exit Sub
check:
MsgBox Err.Description
End Sub
Private Sub MSFlexGrid1_LeaveCell()
Dim r As Integer
On Error GoTo check
r = MSFlexGrid1.Row
If MSFlexGrid1.Rows > 1 Then
If MSFlexGrid1.Col = 6 Then
MsgBox Err.Description
End Sub
Option Explicit
Dim rs As New ADODB.Recordset, rs1 As New ADODB.Recordset
Dim cmno As New ADODB.Recordset, Stock As New ADODB.Recordset
Dim i, j, editflag As Boolean, search As Boolean, tot As Long
Dim tx As New ADODB.Recordset, flexclick As Boolean
Private Sub Combo1_LostFocus()
On Error GoTo check
If search = False Then
If Combo1.ListIndex = -1 Then
MsgBox "select counter No."
Combo1.SetFocus
End If
End If
Exit Sub
check:
MsgBox Err.Description
End Sub
If IsNull(rs(m)) Then
Text1(i).Text = ""
Else
Text1(i).Text = rs(m)
End If
m = m + 1
Next
MSFlexGrid1.Rows = 1
rs1.Filter = "CMNO='" & Combo2.Text & "'"
Do While Not rs1.EOF
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
For i = 1 To rs1.Fields.Count - 1
MSFlexGrid1.Row = MSFlexGrid1.Rows - 1
95
MSFlexGrid1.Col = i
If Not IsNull(rs1(i)) Then
MSFlexGrid1.Text = rs1(i)
End If
Next
rs1.MoveNext
Loop
noedit
rownum
Exit Sub
check:
MsgBox Err.Description
End Sub
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "S.No"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "GRNNo"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "BatchNo"
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = "Item Code"
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = "Item Name"
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = "Each Price"
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = "Quantity"
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = "Tax %"
MSFlexGrid1.Col = 8
MSFlexGrid1.Text = "Discount"
96
MSFlexGrid1.Col = 9
MSFlexGrid1.Text = "Amount"
clear
noedit
Exit Sub
check:
MsgBox Err.Description
Unload Me
End Sub
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
Else
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
End If
Else
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
End If
Case 13
If MSFlexGrid1.Rows - 1 = MSFlexGrid1.Row Then
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
MSFlexGrid1.Row = MSFlexGrid1.
Else
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
rownum
End if
Case Else
If MSFlexGrid1.Col = 6 Or MSFlexGrid1.Col = 8 Then
97
End Sub
Sub checkflex()
Dim rsitems As New ADODB.Recordset
On Error GoTo check
99
End If
End If
End If
Next
rsitems.Close
Exit Sub
check:
MsgBox Err.Description
End Sub
Sub findtotal()
On Error GoTo check
Dim i
Text1(4).Text = 0
For i = 1 To MSFlexGrid1.Rows - 1
Text1(4).Text = Val(Text1(4).Text) +
Val(MSFlexGrid1.TextMatrix(i, 9))
Next
tot = Text1(4).Text
Exit Sub
check:
MsgBox Err.Description
End Sub
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
rownum
Exit Sub
check:
MsgBox Err.Description
End Sub
Case 2
findtotal
If MSFlexGrid1.Rows = 1 Then
MsgBox "Bill atleast one item"
Command1.SetFocus
101
Exit Sub
Else
Dim rsitems As New ADODB.Recordset
rsitems.Open "select * from stockdetails", rmscon
For i = 1 To MSFlexGrid1.Rows - 1
Dim cnd As String
If MSFlexGrid1.TextMatrix(i, 3) = "" Then
MsgBox "Itemcode not given for s.no" & i
MSFlexGrid1.SetFocus
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 3
Exit Sub
ElseIf MSFlexGrid1.TextMatrix(i, 3) <> "" Then
rsitems.Filter = ""
cnd = "itemcode='" &
MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 3) & "'"
If MSFlexGrid1.TextMatrix(i, 1) <> "" Then
cnd = cnd & " and grnno='" &
MSFlexGrid1.TextMatrix(i, 1) & "'"
Else
cnd = cnd & " and grnno is null"
End If
rsitems.Filter = cnd
End If
rsitems.Close
End If
search = False
Tb1.Buttons(1).Enabled = True
Tb1.Buttons(2).Enabled = False
For j = 1 To MSFlexGrid1.Rows - 1
rs1.AddNew
rs1(0) = Text1(0).Text
For i = 1 To MSFlexGrid1.Cols - 1
If MSFlexGrid1.TextMatrix(j, i) <> "" Then
rs1(i) = MSFlexGrid1.TextMatrix(j, i)
End If
Next
Stock.MoveFirst
Do While Not Stock.EOF
If Stock.Fields("grnno") = rs1.Fields("grnno") And
Stock.Fields("batchno") = rs1.Fields("batchno") And
Stock.Fields("itemcode") = rs1.Fields("itemcode") Then
Stock.Fields("stockinhand") =
Stock.Fields("stockinhand") - rs1.Fields("qty")
Stock.Update
Exit Do
End If
Stock.MoveNext
Loop
rs1.Update
Next
cmno(0) = Mid(Text1(0).Text, 3)
cmno.Update
103
clear
End If
Case 3
search = False
clear
Case 4
search = True
Combo2.Visible = True
Combo2.clear
rs.MoveFirst
rs.Filter = ""
Do While Not rs.EOF
Combo2.AddItem rs(1)
rs.MoveNext
Loop
noedit
Text1(0).Visible = False
Combo2.Enabled = True
Case 5
Unload Me
Case 6
Dim opt, cno
If search Then
cno = Combo2.Text
Else
cno = Text1(0).Text
End If
If cno <> "" Then
opt = MsgBox("Do You Want To Print Cash Memo " & cno,
vbYesNo, "Print")
If opt = vbYes Then
DataEnvironment1.Command1 cno
cashmemoprn.Show vbModal
DataEnvironment1.rsCommand1.Close
End If
End If
End Select
Exit Sub
check:
MsgBox Err.Description
End Sub
Sub clear()
For i = 0 To Text1.Count - 1
Text1(i).Text = ""
Next
MSFlexGrid1.Rows = 1
Text2.Text = ""
End Sub
End Select
Exit Sub
check:
MsgBox Err.Description
End Sub
End Sub
End Sub
End Sub
End Sub
check:
MsgBox Err.Description
End Sub
REFUND CODINGS
Dim tot
Dim rmno As New ADODB.Recordset
Dim rs As New ADODB.Recordset
Dim rs1 As New ADODB.Recordset
Dim editflag As Boolean, search As Boolean, msenable As
Boolean
Private Sub Combo1_LostFocus()
If search = False Then
If Combo1.ListIndex = -1 Then
MsgBox "select counter No."
Combo1.SetFocus
End If
End If
End Sub
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "S.No"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "GRNNo"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "BatchNo"
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = "Item Code"
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = "Item Name"
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = "Each Price"
MSFlexGrid1.Col = 6
MSFlexGrid1.Text = "Quantity"
MSFlexGrid1.Col = 7
MSFlexGrid1.Text = "Tax %"
MSFlexGrid1.Col = 8
MSFlexGrid1.Text = "Discount"
MSFlexGrid1.Col = 9
MSFlexGrid1.Text = "Amount"
noedit
clear
Exit Sub
check:
MsgBox Err.Description
End Sub
MSFlexGrid1.Enabled = False
msenable = False
Option1.Enabled = False
Option2.Enabled = False
Command1.Enabled = False
Command2.Enabled = False
Combo1.Enabled = False
108
Combo2.Enabled = False
End Sub
Case 13
If MSFlexGrid1.Rows - 1 = MSFlexGrid1.Row Then
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
Else
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
End If
rownum
Case Else
If MSFlexGrid1.Col = 5 Or MSFlexGrid1.Col = 6 Or
MSFlexGrid1.Col = 8 Or MSFlexGrid1.Col = 7 Then
If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii =
46 Or KeyAscii = 8) Then
KeyAscii = 0
Beep
Exit Sub
ElseIf KeyAscii = 46 Then
For i = 1 To Len(MSFlexGrid1.Text) - 1
If Mid(MSFlexGrid1.Text, i, 1) = "." Then
KeyAscii = 0
Exit Sub
End If
Next
End If
itemlist.Show vbModal
End If
End If
ElseIf MSFlexGrid1.Col = 9 Then
If MSFlexGrid1.Row > 0 Then
amt = Val(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 5)) *
Val(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 6))
dis = Val(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 8))
tax = amt * Val(MSFlexGrid1.TextMatrix(MSFlexGrid1.Row,
7)) / 100
MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 9) = amt + tax -
dis
End If
End If
End Sub
Case 2
rs.AddNew
rs(0) = Combo1.Text
For i = 0 To Text1.Count - 1
If Text1(i).Text <> "" Then
rs(i + 1) = Text1(i).Text
End If
Next
rs.Update
For i = 1 To MSFlexGrid1.Rows - 1
rs1.AddNew
rs1(0) = Text1(0).Text
For j = 1 To MSFlexGrid1.Cols - 1
If MSFlexGrid1.TextMatrix(i, j) <> "" Then
rs1(j) = MSFlexGrid1.TextMatrix(i, j)
End If
Next
rs1.Update
Next
rmno(0) = Mid(Text1(0).Text, 3)
rmno.Update
Tb1.Buttons(2).Enabled = False
Tb1.Buttons(1).Enabled = True
clear
Case 3
clear
Case 4
search = True
Combo2.clear
rs.Filter = ""
rs.MoveFirst
Do While Not rs.EOF
Combo2.AddItem rs(1)
rs.MoveNext
Loop
noedit
Combo2.Visible = True
112
Combo2.Enabled = True
Text1(0).Visible = False
Case 5
Unload Me
Case 6
If Combo2.ListIndex > 0 Then
DataEnvironment1.Command7 Combo2.Text
rcm.Show vbModal
DataEnvironment1.rsCommand7.Close
End If
End Select
Exit Sub
check:
MsgBox Err.Description
End Sub
Case 3
Text1(5).Text = tot + (tot * Val(Text1(3).Text) / 100) -
Val(Text1(4).Text)
Case 4
Text1(5).Text = tot + (tot * Val(Text1(3).Text) / 100) -
Val(Text1(4).Text)
End Select
End Sub
CODE EFFICIENCY
circumstances.
committing to code.
avoided.
114
operations.
• Data types are not mixed, even if the language allows it.
OPTIMISATION OF CODE
For the RMS all the above factors are considered and the
codings are minimized, the user friendly atmosphere is maximized.
116
VALIDATION CHECKS
NON–PROCEDURAL CONSTRAINTS
entry into the table. The following are the various integrity
constraints:
take place will prevent the user from performing the manipulation
integrity constraints:
Check constraint
Unique constraints
validation checks in the input designs. for eg., in the pro_mas input
that it will accept either numeric or alphabets from the user as the
case may be
relationship, the table containing the foreign key is called the child
table and table containing the referenced key is called the parent
table.
For eg:
this will be used as the referential key for the grn_mas (GRN
TESTING
(Testing Techniques and Testing Strategies)
TESTING
TESTING PRINCIPLES
of activities that ensure that the software that has been built is
testing.
Testing does provide the last bastion from which quality can
context of the spiral model. In that Spiral model Unit testing begins
unit. Hence, the name unit testing. Unit testing makes heavy use of
Requirement
s
High
HighOrder
Ordertests
tests
Design
Integration Test
Code Unit
Unit
Test
Test
Testing
“direction”
validation.
function/performance is achieved.
125
STRATEGIC ISSUES
testing”.
testing.
testing process.
126
IMPLEMENTATION
includes all those activities that take place to convert from the old
prevent it. It has been observed that even the best system cannot
implementation:
Training personnel
Conversion procedures
Post–implementation review
TRAINING OF PERSONNEL
127
involved with the system have been trained well to augment to the
CONVERSION METHODS
Parallel systems.
Direct conversion.
Pilot system.
Systems phase-in.
in this area are aware that they are piloting a new system and that
modification is required.
PERT CHART 8
19 22
Module Testing Validation Check
4 Weeks 1 Week
Implemen- User
1 Project
2 Preliminary 3 Feasibility 4 Analysis 5 Design
6 Coding
7 tation 10 Traning 11
24 24
01 1 1 Investigatio 5 5 7 7 11 11 15 15 19 19 23 23
Selection Study 4 Weeks 4 Weeks 4 Weeks 4 Weeks 1 Week 1
n
1 Week 4 Weeks 2 Weeks
User
Documentation Manual
2 Weeks 9 2 Weeks
Duration Event 17 21
Activity
(Weeks) Nodes Even EST LST
A. Project selection 1 12 t
B. Preliminary Investigation 4 23 1 0 1 Notation
C. Feasibility study 2 34 2 1 1 Event
D. Analysis 4 45 3 5 5 1
E. Design 4 56 4 7 7 0 1
Earliest Latest
F. Coding 4 67 5 11 11
Start Time Start Time
G. Module testing 4 6 15 15
68 (EST) (LST)
7 19 19
H. Documentation 2 69
8 17 22
I. User Manual 2 910 9 17 21
J. Validation Check 1 810 10 23 23
K. Implementation 4 710 11 24 24
L. User Training 1 1011
CRITICAL PATH
1 1
1 2 3 4 5 6 7
0 1
Period : 24 Weeks
130
EVALUATION
Vendor personnel
Vendor customers
Vendor documentation
universal.
changed easily.
needed.
Compilers
Operating systems
Turnaround time
Clock time
Systems capacity
different vendors.
BENEFITS:
1. Tangible
133
coordination
2. Intangible
position.
3. COST
charges.
required.
a. Power requirements
b. Air conditioning
d. Supplies
e. Staffing
134
MAINTENANCE
perfective maintenance.
follows:
systems development
SECURITY MEASURES
improper penetration.
windows registry. When the user enters the password to enter the
COST ESTIMATION
Function point based Estimation is the best method for project cost
system, a large cost estimate error can make the different between
profit and loss. Cost overrun can be disastrous for the developer.
political can affect the ultimate cost of software and efforts applied
complete.
completed.
138
efforts estimation.
Factor Value
Backup recovery 4
Performance Critical 4
Existing Operating Environment 2
Input transaction over multiple screens 2
Information domain value complex 3
Internal Processing complex 5
Code designed for reuse 4
Conversion/installation in design 3
Multiple installation 5
Application designed for change 4
Finally, the estimated number of FP is derived: 36
FP estimated = 158
prepares item list for the reorder, and it choose suppliers, and
system, and they come to know about the orders, they supply
items.
of the organization.
BIBLIOGRAPHY
Roger S Pressman.
By IGNOU
By Steve Brown