Stock maintenance system

Stock maintenance system

ABSTRACT
The main objective of this project is to overcome the work load and time consumption which makes the maintenance of the stock in an organization as a tedious process. This project provides complete information about the details of the stock to the users. This project identifies the amount of stock available,the product that is purchased faults in the product,products that are replaced,products that have been sold,and the date at which the products are bought and sold in a particular concern.Separate modules have been created for purchasing, viewing stock details,selling, details and delivery details.As a whole ,marketing process can be improved if stock has been maintained properly. This project is developed with help of visual basic 6.0 as a front end and oracle 9i as back end. The application software Rational Rose is also used.

I

Stock maintenance system

CONTENTS
S.No Title Page No I II III

Abstracts List of figures List of tables Introduction 1. 1.1 problem 1.2 problem definition System tools 2. 2.1 MS-VISUAL basic 2.2 ORACLE9i Methodology 3. 3.1 concept 3.2 database connectivity System requirement 4. 4.1 hardware requirement 4.2 software requirement System modules 5.1 structural diagram 5.1.1 use case diagram 5.1.2 class diagram 5. 5.1.3 state diagram 5.1.4 activity diagram 5.1.5 sequence diagram 5.1.6 collaboration diagram 5.2 module diagram 5.2.1 stock module

1 conclution 8.2 sales module 5.2 future enhancement Reference 9.1 reference book 9. 8. Testing Conclusion and future enhancement 8.2 reference web sites .2.2. Implementation and result 7.4 replacing the fault module 6.Stock maintenance system 5.3 delivery module 5.2. 9.

USE CASE DIAGRAM CLASS DIAGRAM STATE DIAGRAM ACTIVITY DIAGRAM SEQUENCE DIAGRAM COLLABORATION DIAGRAM STOCK MODULE 1. 4. 5. 4. 2.Stock maintenance system LIST OF FIGURES FIG NO TITLE OVER ALL DIAGRAM 1. 2. 2. 5. 3. USE CASE DIAGRAM CLASS DIAGRAM STATE DIAGRAM ACTIVITY DIAGRAM SEQUENCE DIAGRAM COLLABORATION DIAGRAM DELIVERY MODULE 1. USE CASE DIAGRAM CLASS DIAGRAM STATE DIAGRAM ACTIVITY DIAGRAM SEQUENCE DIAGRAM COLLABORATION DIAGRAM PAGE NO . 3. USE CASE DIAGRAM CLASS DIAGRAM STATE DIAGRAM ACTIVITY DIAGRAM SEQUENCE DIAGRAM COLLABORATION DIAGRAM SALES MODULE 1. 2. 4. 3. 3. 6. 6. 6. 5. 6. 4. 5.

5. 6. USE CASE DIAGRAM CLASS DIAGRAM STATE DIAGRAM ACTIVITY DIAGRAM SEQUENCE DIAGRAM COLLABORATION DIAGRAM II . 3. 2.Stock maintenance system REPLASEING THE FAULT MODULE 1. 4.

2. 3.Stock maintenance system LIST OF TABLES TABLE NO 1. 4. TITLE STOCK MODULE SALES MODULE DELIVERY MODULE REPLACING THE FAULTS MODULE PAGE NO III .

the stock is to be purchased. The stock details which includes the amount of stock available.2PROBLEM DEFINITION: The stock has to be maintained properly since the whole marketing process can be improved.Stock maintenance system 1. This project also gives idea about the faults in the purchased product and the products that are to be replaced also been given. . Stock maintenance in this project is done in an authorized way. INTRODUCTION 1. is 1. the amount that is already available are maintained in this project.1 PROBLEM Stock Maintenance gives an idea about how products are maintained in the particular concern. As a whole the marketing process can be improved if the stock maintained properly. The products that are to be purchased. Stock maintenance in this project gives the idea about how products are maintained in a particular concern. The whole economic status is being improved properly if stock is maintained. the products that are to be sold are maintained here. Further some additional details of the current stock that is available in the store is also given. The password and user id has been set here. The stock maintenance in this project is understood by goin through the modules that is being involved. the date or the time it is being bought or delivered.

The ³Basic´ part refers to the BASIC language used by more programmers than any other language in the history of computing. It is an ideal programming language for developing sophisticated professional applications for Microsoft. 2.0 is fastest and easiest way to create single user and client/server applications for Microsoft Windows.The ³Visual´ part refers to the method used to create Graphical User Interface. . and there are some additional changes that must made in order to run the application successfully in oracle. However the conversion process makes some changes to code that need to aware of.2 ORACLE 9i: Oracle 9i makes most necessary conversion to the code automatically when we convert our data base.Stock maintenance system 2. SOFTWARE TOOLS 2.0 provides complete set of tools to simplify rapid application development both for the experienced professional and new windows programmers. Visual Basic 6.1 MS-VISUAL BASIC: Visual Basic 6.

The database connectivity between Visual Basic 6.0(OLEDB).1 CONCEPT Storing of information about the stock values and updating the stock values for each organization which is using this system. A term used to a database or database server used as a source of data.0 and the back end that is used for this project is Oracle9i.0(OLEDB). Thus the project makes use of the internal feature of ADODC for communicating with the database and this is responsible for transfer of data to and from the table from and to the front end. Use data link file 2. There are three different options insetting connection string. A standard protocol that permits application to connect to a variety of external database servers or files. To add ADO data control to the toolbox go to the components and select Microsoft ado Data control 6.0 and oracle9i is provided by using Microsoft ADO Data control 6. METHODOLOGY 3. having registration feature of adding up new customers to the organization are provided in this system.2 DATABASE CONNECTIVITY: The front end used for implementation of this project is Visual Basic 6. Use ODBC Data source name 3. Use connection string : any data link file already stored can be specified. : any ODBC DSN can be specified. Data sources can be created by using the windows control panel or the register database method. keeps track of all the information about the stock exchange that are made by the customers.. ODBC data source are referred to by their Data Source Name (DSN). : choose build to create a new connection String specifying the OLEDB provider.Stock maintenance system 3. 3. . ODBC drivers used by the Microsoft database engine permit access to Microsoft SQL server and several other databases. They are as follows 1.

2 Software Requirements: Front End Back End Operating System Application Software : : : : VISUAL BASIC 6.0 GHZ 20 GB 512 MB 4.1 Hardware Requirements: Processor CPU Speed Strorage Capacity RAM Capacity : : : : Intel Pentium III or later.0 Oracle 9i Windows Family Rational Rose .SYSTEM REQUIREMENT 4.Stock maintenance system 4. 1.

SYSTEM MODULES 5.1 STRUCTURE DIAGRAM OVERALL DIAGRAM 5. .1.1 USE CASE DIAGRAM: Use case diagram is a diagram that shows the interaction between the user and the system to captures the user¶s goal.Stock maintenance system 5.

2 . their relationships connected as a graph to each other.2 CLASS DIAGRAM: Class diagram or object modeling is a collection of static elements such as classes. STORE KEEPER address phone no USER name address request() purchase() ORDER price amount dispatch() close() DEALER name address sends price details() request replacing defected items() DB MANAGER update() display() ORDER LINE quantity price COMPANY MANAGER id address supply items() Fig 1.Stock maintenance system 5.1.

1. .3 STATE DIAGRAM: State diagram shows that the sequence of states that an object goes through during its life in response to outside stimuli and messages.Stock maintenance system 5.

Stock maintenance system 5.4 . create requirement from customer check availablity receive payroll supply products request and receive item yes no check for damage replace damaged items Fig 1.4 ACTIVITY DIAGRAM Activity diagram is a variation or special case of a state machine in which the states are activities representing the performance of operations and the transitions are triggered by the completion of the operations.1.

5 SEQUENCE DIAGRAM: Sequence diagram is an easy and intuitive way of describing the behaviour of a system by viewing the interaction between the system and its environment. USER ORDER SHOP KEEPER DEALER COMPANY DB MANAGER request for item check for availablity order items update prodect details ask for quotation send price details capture deal dispatch product request for deliv ery request for customer details send customer details update delivery detail complain about defect detail of defect request for replacing refected items replace defect replace deliver item close order Fig 1.1.Stock maintenance system 5.5 .

5 COLLABORATION DEIAGRAM: Colloboration diagram represents a collaboration.6 .Stock maintenance system 5.1. 9: request for delivery 13: complain about defect SHOP KEEPER USER 1: request for item ORDER 11: send customer details 6: send price details 17: replace deliver item 2: check for availablity 18: close order 4: order items 8: dispatch product 5: ask for quotation 7: capture deal 14: detail of defect 10: request for customer details 3: update prodect details 12: update delivery detail DB MANAGER 15: request for replacing refected items DEALER 16: replace defect COMPAN Y Fig 1.which is a set of exchanged amongt the objects with in the collaboration to achieve a desired outcome. which is a set of objects related in a particular context and interaction.

2 MODULE DIAGRAM Class diagram or object modeling is a collection of static elements such as classes. 5.1 STOCK MODULE: USE CASE DIAGRAM .2. their relationships connected as a graph to each other.Stock maintenance system 5.

Stock maintenance system CLASS DIAGRAM: USER name address complain() purchase() STORE KEEPER user id password deliver() send defects details() DEALER name address replace() request return() ORDER price amount dispatch() close() DB MANAGER update details() display details() COMPANY name address supply items() set limit() Fig 2.2 STATE DIAGRAM: .

Stock maintenance system ACTIVITY DIAGRAM: SEQUENCE DIAGRAM: .

Stock maintenance system COLLABORATION DIAGRAM: .

2.2 SALES MODULE: USE CASE DIAGRAM: price deal DEALER verify price STORE KEEPER capture deal set limit update product details COMPANY MANAGER DB MANAGER Fig 2.7 .Stock maintenance system 5.

8 STATE DIAGRAM: .Stock maintenance system CLASS DIAGRAM: COMPANY name address supply items() set limit() DEALER name address replace() request return() ORDER price amount dispatch() close() DB MANAGER update details() display details() STORE KEEPER user id password deliver() send defects details() Fig 2.

Stock maintenance system ACTIVITY DIAGRAM: SEQUENCE DIAGRAM: .

Stock maintenance system COLLABORATION DIAGRAM: .

13 CLASS DIAGRAM: USER name address complain() purchase() STORE KEEPER user id password deliver() send defects details() Fig 2.Stock maintenance system 5.3 DELIVERY MODULE: USE CASE DIAGRAM: asks for product STORE KEEPER sends the product USER receive payment update product's delivery details DB MANAGER Fig 2.2.14 DB MANAGER update details() display details() .

Stock maintenance system STATE DIAGRAM: ACTIVITY DIAGRAM: .

Stock maintenance system COLLABORATION DIAGRAM: .

Stock maintenance system 5.2.4 REPLACING THE FAULT MODULE: USE CASE DIAGRAM: DB MANAGER details about defect DEALER update details complaints about defect STORE KEEPER replaces the defect requests for return return another product USER COMPANY MANAGER fig 2.18 .

Stock maintenance system CLASS DIAGRAM: USER name address complain() purchase() STORE KEEPER user id password deliver() send defects details() DEALER DB MANAGER update details() display details() name address replace() request return() COMPANY MANAGER replace product() Fig 2.19 STATE DIAGRAM: .

Stock maintenance system ACTIVITY DIAGRAM: COLLABORATION DIAGRAM: .

IMPLEMENTATION AND RESULT: LOGIN FORM: Fig 6. vbCritical + vbOKOnly.Stock maintenance system 6. "Error" ElseIf (txtPassword.1 OUTPUT: Fig 6.Text = "") Then .2 CODING: Private Sub cmdCancel_Click() LoginSucceeded = False Unload Me End Sub Private Sub cmdOK_Click() If (txtUserName.Text = "") Then MsgBox "Enter a valid Username".

Caption = "welcome to Stock Maintenance System" frmmsg. vbCritical + vbOKOnly. "Error" txtPassword. "Error" End If rs.Fields("Passwd") <> txtPassword.Text) Then MsgBox "Invalid Password".Text If (txtUserName.Label1.EOF = True Then 'If Search is found MsgBox "User not found". vbCritical + vbOKOnly.SetFocus Else user = txtUserName. 2 If rs. 1.Close rs.Text = "" txtPassword. db.Text = "admin") Then userAdmin = True Text1.Text = True frmLogin.Show End If End If End Sub .Stock maintenance system MsgBox "Enter a valid Password". "Error" Else If (rs.Text & "'".Hide frmmsg.Open "Select Passwd from Login where uname = '" & txtUserName. vbCritical + vbOKOnly.

Stock maintenance system MAIN FROM: Fig :6.3 .

4 .Stock maintenance system STOCK MAINTENANCE: Fig 6.

Stock maintenance system UPDATE: Fig :6.5 NEW ENTRY: Fig 6.6 .

q. "Stock") = vbYes) Then .7 CODING: Dim date1 As Date Dim temp. p As Integer Dim db As New ADODB. vbYesNo + vbQuestion.Recordset Private Sub cmddelete_Click() Dim str As String If (MsgBox("Are you sure you want to Delete it".Connection Dim rs As New ADODB.Stock maintenance system SHOW ALL: Fig :6.

Show End If Else frmStockDetails.Update "itemtype".Update "date_of_entry".Text . txtprice. txticode. txtnetwt.Stock maintenance system str = "delete from Stock where itemcode='" & rs!itemcode & "'" db.Update "itemcode".Execute str db.Update "quantity". txtiname. vbInformation + vbOKOnly.Visible = True Else frmStockDetails. "Stock") = vbYes) Then With rs .Text .Close connectme MsgBox "Deleted Successfully". txtitype. txtquantity.Text .SetFocus End Sub .SetFocus End If End If End Sub Private Sub Command2_Click() If (MsgBox("Are you sure you want to update the stock". "Update" Unload Me frmStockDetails.Update "price".Update "itemname".Text . txtdate.Text End With MsgBox "Stock Detail modified successfully".Text . vbYesNo + vbQuestion.Update "netweight".Text . vbOKOnly cmbitype.

Stock maintenance system Private Sub Command1_Click() frmpurchase.Visible = False rs. adLockOptimistic Set MSHFlexGrid1. "scott".EOF <> True cmbitype.Open "select itemtype from stock group By itemtype ". "tiger" Call Resetall rs.MoveNext Wend txtitype.Show End Sub Private Sub Command3_Click() txtitype. adOpenKeyset.Visible = True Call Reset End Sub Private Sub Form_Load() connectme MSHFlexGrid1. adOpenKeyset.Close rs. db.Open "select * from stock ".DataSource = rs End Sub Private Sub connectme() Dim i As Integer.AddItem rs!itemtype rs.Visible = False cmbitype. db.Open "arun". adLockOptimistic While rs.Visible = False End Sub . j As Integer db.

Visible = True txtamount. adLockOptimistic rs.Visible = True txtnetwt.Visible = True With rs txtitype = !itemtype txticode = !itemcode txtiname.Text = !itemname . adOpenKeyset.Visible = True txticode.Enabled = True Else Unload Me End If End Sub Private Sub cmbitype_Click() Call Reset rs.Text & "'".Enabled = True cmddelete.Open "select * from stock where itemtype=" & "'" & cmbitype.Visible = False txtitype. db.Visible = False txtitype.Visible = True Then MSHFlexGrid1.Visible = True txtprice.Visible = True txtdate.Visible = True Command2.MoveFirst cmbitype.Close rs.Stock maintenance system Private Sub Command4_Click() If MSHFlexGrid1.Visible = True txtquantity.Visible = True txtiname.

Text = !date_of_entry txtquantity.Enabled = False cmdFIrst.Number = 3021 Then .Enabled = False Err: If Err.Text = "" txtnetwt.Text = "" txtquantity.Visible = True On Error GoTo Err cmdNext.Enabled = True rs.Text = "" txtiname.Text = "" txtdate.Text = !price p = txtprice.Clear txticode.Stock maintenance system txtnetwt.MoveFirst Display cmdPrev.Text = "" txtprice.Text = !quantity txtprice.Enabled = True cmdLast.Text = "" End Sub Private Sub cmdfirst_Click() txticode.Text = p * q End With End Sub Public Sub Resetall() cmbitype.Text q = txtquantity.Text txtamount.Text = !netweight txtdate.

Enabled = False cmdFIrst.Enabled = False End If End Sub Private Sub cmdnext_Click() txticode.Stock maintenance system MsgBox "NO CURRENT RECORD" cmdNext.Enabled = True rs.Enabled = False Err: If Err.Enabled = False cmdPrev.EOF <> True Then .MoveLast Display cmdNext.Enabled = True cmdPrev.Enabled = False cmdLast.Enabled = False cmdLast.Number = 3021 Then MsgBox "NO CURRENT RECORD" cmdNext.Enabled = False cmdFIrst.Visible = True On Error GoTo Err If rs.BOF <> True And rs.Enabled = False cmdPrev.Enabled = False cmdLast.Enabled = False End If End Sub Private Sub cmdlast_Click() txticode.Visible = True On Error GoTo Err cmdFIrst.

MovePrevious Display Else rs.Enabled = False cmdLast.Number = 3021 Then MsgBox "NO CURRENT RECORD" cmdNext.Enabled = False cmdLast.MoveFirst Display cmdPrev.Enabled = True cmdPrev.Enabled = False End If End Sub Private Sub cmdprev_Click() txticode.BOF <> True And rs.MoveNext Display Else rs.MoveLast Display cmdNext.Visible = True On Error GoTo Err cmdNext.Enabled = True If rs.Enabled = True rs.Enabled = False End If If Err.Enabled = False cmdPrev.Stock maintenance system cmdFIrst.Enabled = True cmdLast.Enabled = False .Enabled = False cmdFIrst.EOF <> True Then rs.

Number = 3021 Then MsgBox "NO CURRENT RECORD" cmdNext.Enabled = False cmdLast.Enabled = False cmdFIrst.Enabled = False End If End Sub .Enabled = False cmdPrev.Enabled = False End If Err: If Err.Stock maintenance system cmdFIrst.

8 .Stock maintenance system SALES MASTER: Fig 6.

Stock maintenance system OUTPUT: Fig :6.9 .

10 Fig :6.11 .Stock maintenance system Fig :6.

Close End Sub Private Sub Command3_Click() Command6.EOF <> True cmbicode.Stock maintenance system CODING: Dim db As New ADODB. adOpenKeyset. adOpenDynamic.Visible = False txtcname.Enabled = True Command1.Close rs.AddItem rs!itemcode rs.Visible = False temp = cmbitype.Text Call Reset cmbicode.Enabled = True .Clear rs.MoveNext Wend rs.Connection Dim rs As New ADODB.Enabled = True Command1. adLockPessimistic While rs. db.Open "select itemcode from stock where itemtype=" & "'" & temp & "'".Open "select * from stock where itemtype= " & "'" & temp & "'".Enabled = True Label17. db. q As Double Private Sub cmbitype_Click() Command6. adLockOptimistic Set MSHFlexGrid1.DataSource = rs rs.Recordset Dim p.

Stock maintenance system Label17.Visible = False txtcname.Visible = False Call save connectme End Sub

Private Sub Command6_Click() rs1.Open "select * from itemorder ", db, adOpenKeyset, adLockOptimistic rs1.AddNew rs1!billnumber = txtbillno.Text rs1!itemcode = cmbicode.Text rs1!customername = txtcname.Text rs1!order_date = txtdate.Text rs1!orderedquantity = txtquantity.Text rs1!amount = txtamount.Text rs1.Update rs1.Close MsgBox "Item Detail Save Successfully ", , "Order Master" MsgBox "your item will be Delivered as Soon as Possible", , "Order Master" Call save Call saleanother Label17.Visible = False txtcname.Visible = False Command1.Enabled = True End Sub

Private Sub open1() rs2.Open "select * from stock where itemcode=" & "'" & cmbicode.Text & "'" & "and itemtype=" & "'" & cmbitype.Text & "'" & "and itemname=" & "'" & txtiname.Text & "'", db, adOpenKeyset, adLockOptimistic If rs2.EOF <> True And rs2.BOF <> True Then

Stock maintenance system rs2!quantity = rs2!quantity - Val(txtquantity.Text) If rs2!quantity < 0 Then MsgBox "Sorry Not Enough Stock and you want order it " Exit Sub End If rs2.Update rs2.Close MsgBox "item quantity updated" Else MsgBox "THAT ITEM IS NOT AVIALABLE" End If rs1.Open "select * from sales ", db, adOpenKeyset, adLockOptimistic rs1.AddNew rs1!billnumber = txtbillno.Text rs1!itemtype = cmbitype.Text rs1!itemcode = cmbicode.Text rs1!itemname = txtiname.Text rs1!netweight = txtnetwt.Text rs1!sale_date = txtdate.Text rs1!quantity = txtquantity.Text rs1!price = txtprice.Text rs1!amount = txtamount.Text rs1.Update rs1.Close MsgBox "Item Detail Save Successfully", vbOKOnly, "Sales Master" If (MsgBox("sale another Item", vbYesNo + vbQuestion, "Sales Master ") = vbYes) Then Call save Call saleanother Command6.Enabled = True Else Unload Me

Stock maintenance system frmSaleentry.Show frmSaleentry.SetFocus End If

End Sub Private Sub saleanother()

rs.Open "select itemtype from stock group By itemtype ", db, adOpenKeyset, adLockOptimistic While rs.EOF <> True cmbitype.AddItem rs!itemtype rs.MoveNext Wend rs.Close rs.Open "select itemtype from stock group By itemtype ", db, adOpenKeyset, adLockOptimistic

rs.Close End Sub Private Sub save() txtcname.Text = "" cmbitype.Clear cmbicode.Clear txtiname.Text = "" txtnetwt.Text = "" txtdate.Text = "" txtdate.Text = Format$(Date, "dd/mm/yyyy") txtquantity.Text = "" txtprice.Text = "" txtamount.Text = "" End Sub

x As Double cmdRefresh_Click connectme cmbitype.BOF <> True And rs1. adLockOptimistic If rs1.Text = z rs1.Stock maintenance system Private Sub Command2_Click() Dim z.SetFocus Command1. db.Enabled = True End Sub Private Sub increment() rs1. db.Open "select * from itemorder order by BILLNUMBER".Open "select * from sales order by BILLNUMBER".Visible = False txtcname.Text = "" x = Val(rs1!billnumber) rs1.Close If x > z Then i = Val(x) i=i+1 .Close rs1. adLockOptimistic If rs1.Enabled = True Label17.EOF <> True Then rs1.MoveLast z = Val(rs1!billnumber) z=z+1 txtbillno. adOpenKeyset.MoveLast txtbillno. adOpenKeyset.Visible = False Command6.EOF <> True Then rs1.BOF <> True And rs1.

Text = "" End Sub Private Sub cmbicode_Click() Call Reset rs.Text = !netweight .Text & "'".Close End If Else txtbillno.Text = !itemname txtnetwt.Text = "" txtnetwt.Text = "" txtprice. db.Open "select * from stock where itemtype=" & "'" & cmbitype.Stock maintenance system txtbillno. adLockOptimistic With rs txtiname.Text = i Else i = Val(z) i=i+1 txtbillno.Text = "" txtquantity.Text = "" txtiname.Text = 7000 rs1.Text = "" txtamount.Close End If End Sub Public Sub Reset() txtcname.Text & "'" & " and itemcode=" & "'" & cmbicode. adOpenKeyset.Text = i End If Else rs1.

MoveNext Wend rs.Close txtquantity. adLockOptimistic While rs. adLockOptimistic Set MSHFlexGrid1.Open "arun".AddItem rs!itemtype rs. "scott". adOpenKeyset.Open "select itemtype from stock group By itemtype ".Close rs. db.Clear cmbicode.EOF <> True cmbitype.SetFocus End Sub Private Sub Form_Load() db.Stock maintenance system txtquantity.Open "select itemtype from stock group By itemtype ". "tiger" connectme End Sub Private Sub connectme() Call Resetall increment rs. db.Close End Sub Public Sub Resetall() txtbillno.DataSource = rs rs. adOpenKeyset.Text = "" cmbitype.Clear .Text = !price End With rs.Text = "" txtprice.

Text = "" End Sub .Text = "" txtdate.Stock maintenance system txtiname.Text = "" txtnetwt.Text = "" txtamount.Text = "" txtquantity.Text = "" txtprice.

Stock maintenance system DELIVERY MODULE: Fig :6.12 .

Stock maintenance system OUTPUT: Fig :6.13 .

adLockPessimistic Set MSHFlexGrid1.14 CODING: Dim db As New ADODB.EOF <> True cmbicode.Open "select * from itemorder where billnumber=" & "'" & temp & "'and deliver is NULL".Close rs.Stock maintenance system Fig :6. db.Recordset Private Sub cmbbillno_click() temp = cmbbillno.Text cmbicode.Connection Dim rs As New ADODB.AddItem rs!itemcode rs. db.Open "select billnumber.deliver from itemorder where billnumber=" & "'" & temp & "' and deliver is NULL".Clear rs. adLockPessimistic While rs.DataSource = rs . adOpenDynamic.itemcode.MoveNext Wend rs. adOpenDynamic.

adLockPessimistic With rs txtcname = !customername txtdate = !order_date txtoquantity = !orderedquantity txtamount = !amount End With rs. adOpenKeyset. db.Text & "'".Text & "'".BOF <> True Then .Close End Sub End Sub Private Sub cmbicode_Click() rs. adOpenDynamic. adLockPessimistic With rs txtitype = !itemtype txtiname = !itemname txtnetwt = !netweight txtprice = !price End With rs. adLockOptimistic x = Val(rs!quantity) If rs.Stock maintenance system rs.Close rs.EOF <> True And rs.Open "select * from stock where itemcode=" & "'" & cmbicode.Open "select * from stock where itemcode=" & "'" & cmbicode & "'".Close End Sub Private Sub Command1_Click() Dim x. adOpenDynamic. db. y As Double rs.Open "select * from itemorder where itemcode=" & "'" & cmbicode. db.

Close rs.Text & "'".Update "DELIVERY_DATE". adLockPessimistic With rs .DataSource = rs rs.Close Exit Sub End If rs!quantity = y rs.Enabled = False MSHFlexGrid2.Close End Sub . adLockPessimistic Set MSHFlexGrid2.Update MsgBox "item is Delivered" End If rs.So Delivery is not Possible " rs.DataSource = rs End Sub Private Sub Command2_Click() Command1. db. adOpenDynamic.Text & "'".Open "select * from itemorder where deliver is not NULL". txtddate. db.itemcode.Text & "'" & " and billnumber=" & "'" & cmbbillno.Visible = True rs.Update "deliver".deliver from itemorder where billnumber=" & "'" & cmbbillno.Stock maintenance system y = x . db. adOpenDynamic.Text) If y < 0 Then MsgBox "Sorry Not Enough Stock. adOpenDynamic.Text & "'" & " and billnumber=" & "'" & cmbbillno. adLockPessimistic Set MSHFlexGrid1.Open "select billnumber.Open "select * from itemorder where itemcode=" & "'" & cmbicode.Text End With rs.Text . txtdeliver.Close rs.Val(txtoquantity.

DataSource = rs MSHFlexGrid2.Text = Format$(Date.Open "select billnumber from(Select * from itemorder group By billnumber)where deliver is NULL".Visible = False Else Unload Me End If End Sub Private Sub Command4_Click() Command1.Visible = False rs. adOpenKeyset. "dd/mm/yyyy") db.AddItem rs!billnumber rs.Close End Sub . adLockOptimistic While rs. adLockPessimistic Set MSHFlexGrid2.Visible = True Then MSHFlexGrid2.DataSource = rs rs. "scott". "tiger" rs. db.Open "arun".Open "select * from itemorder ". adOpenDynamic.Enabled = False MSHFlexGrid2.MoveNext Wend Set MSHFlexGrid1.EOF <> True cmbbillno.Visible = True rs. db.Enabled = True If MSHFlexGrid2.Stock maintenance system Private Sub Command3_Click() Command1.Close End Sub Private Sub Form_Load() txtddate.

Stock maintenance system REPLACING FAULT MODULE: Fig :6.16 .15 OUTPUT: Fig :6.

Clear rs.Text Call Resetall cmbicode.Open "select * from itemorder where billnumber=" & "'" & temp & "'and deliver is not NULL". adOpenDynamic.amount from itemorder where billnumber=" & "'" & temp & "' and deliver is not NULL". adLockPessimistic While rs. adOpenDynamic.Text Call Resetall cmbicode. adOpenDynamic.Open "select billnumber.Open "select * from itemorder where billnumber=" & "'" & temp & "'and deliver is not NULL".DataSource = rs rs.AddItem rs!itemcode .EOF <> True cmbicode.AddItem rs!itemcode rs. adLockPessimistic Set MSHFlexGrid1.Close End Sub Private Sub cmbbillno_click() temp = cmbbillno. db.Connection Dim rs As New ADODB.itemcode.EOF <> True cmbicode.Clear rs. adLockPessimistic While rs.Customername.MoveNext Wend rs. db.Stock maintenance system CODING: Dim db As New ADODB.Recordset Private Sub cmbbillno_Change() temp = cmbbillno.Close rs. db.

Stock maintenance system rs.DataSource = rs rs.Clear txtcname. db.Text & "'". adLockPessimistic With rs txtcname = !customername txtoquantity = !orderedquantity End With rs.Open "select billnumber.itemcode.Text = "" txtoquantity.Open "select * from itemorder where itemcode=" & "'" & cmbicode & "'" & " and billnumber=" & "'" & cmbbillno. adLockPessimistic Set MSHFlexGrid1. adOpenDynamic.Customername.Close If (MsgBox("If you want to Replace the item press Yes .Text = "" txtnoreplace.amount from itemorder where billnumber=" & "'" & temp & "' and deliver is not NULL". vbYesNo + vbQuestion.otherwise press No". db.MoveNext Wend rs.Text = "" End Sub Private Sub cmbicode_Click() rs. "Replace/Reject") = vbYes) Then . adOpenDynamic.Close rs.Close End Sub Public Sub Resetall() cmbicode.

Open "select * from replace where itemcode=" & "'" & cmbicode.DataSource = rs rs. . adOpenDynamic.Visible = False End If End Sub Private Sub Command1_Click() If (MsgBox("If you press Yes Replacement will done".Text & "'" & " and itemcode=" & "'" & cmbicode.Update MsgBox "Replacement successfully done".Text & "'" & " and billnumber=" & "'" & cmbbillno.Text rs!Replace = Text1. "Replace" rs. db. db.Enabled = False Else Command1.Text rs.replace from replace where billnumber=" & "'" & cmbbillno. vbYesNo + vbQuestion.Text & "'".AddNew rs!billnumber = cmbbillno.Text rs!replace_date = txtdate.Visible = False txtnoreplace.Close rs.Text rs!customername = txtcname.Enabled = False Label1.Enabled = True End If End Sub .Text rs!itemcode = cmbicode.Stock maintenance system Command2. adLockPessimistic rs. "Replace") = vbYes) Then rs.Text rs!replace_quantity = txtnoreplace.Open "select billnumber.itemcode.Text & "'". adOpenDynamic.replace_quantity . adLockPessimistic Set MSHFlexGrid1.Close Command2.

Visible = True End If End Sub Private Sub Command4_Click() cmbbillno. adLockPessimistic rs.Clear Label1.Visible = True txtnoreplace.Open "select billnumber.Enabled = True Label1.Text & "'" & " and billnumber=" & "'" & cmbbillno.Close Command1. "Reject" rs.replace_quantity . vbYesNo + vbQuestion.replace from replace where billnumber=" & "'" & cmbbillno.Text rs.Text rs!customername = txtcname.AddNew rs!billnumber = cmbbillno. db.Open "select * from replace where itemcode=" & "'" & cmbicode.Visible = True .Text rs!itemcode = cmbicode. "Reject") = vbYes) Then rs.Text & "'". adOpenDynamic.Visible = True txtnoreplace.Update MsgBox "Replacement not done".itemcode.Stock maintenance system Private Sub Command2_Click() If (MsgBox("Are you sure want to Reject".Text & "'".DataSource = rs rs. adOpenDynamic. adLockPessimistic Set MSHFlexGrid1.Text & "'" & " and itemcode=" & "'" & cmbicode.Close rs. db.Text rs!replace_quantity = 0 rs!replace_date = txtdate.Text rs!Replace = Text2. .

"dd/mm/yyyy") End Sub . "tiger" rs.Text = Format$(Date.Close Call Form_Load End Sub Private Sub Form_Load() db. db.Close txtdate.itemcode.AddItem rs!billnumber rs.Enabled = True Call Resetall db.Open "select billnumber.Enabled = True Command2.Close rs.itemcode))where replace is null and deliver is not null ".EOF <> True cmbbillno.MoveNext Wend rs. db. adOpenKeyset.Open "select billnumber from(select * from(replace full outer join itemorder using ( billnumber))where replace is null and deliver is not null )group By billnumber". "scott". adLockOptimistic Set MSHFlexGrid1.customername.Open "arun". adLockOptimistic While rs.customername from (replace full outer join itemorder using (billnumber. adOpenKeyset.Stock maintenance system Command1.DataSource = rs rs.

2) SALES MODULE: NAME BILLNUMBER ITEMTYPE ITEMCODE ITEMNAME NETWEIGHT SALE_DATE QUANTITY PRICE AMOUNT NULL? TYPE NUMBER(35) VARCHAR2(60) NUMBER(35) VARCHAR2(60) VARCHAR2(50) DATE NUMBER(35) NUMBER(35) NUMBER(10.Stock maintenance system TABLES DESIGN STOCK MODULE: NAME ITEMTYPE ITEMCODE ITEMNAME NETWEIGHT DATE_OF_ENTRY QUANTITY PRICE NULL? TYPE VARCHAR2(60) NUMBER(35) VARCHAR2(100) VARCHAR2(70) DATE NUMBER(35) NUMBER(10.2) .

Stock maintenance system DELIVERY MODULE: NAME BILLNUMBER ITEMCODE CUSTOMERNAME ORDER_DATE DELIVERY_DATE ORDERED QUANTITY AMOUNT DELIVER NUMBER(10.2) VARCHAR2(50) NULL? TYPE NUMBER(35) NUMBER(35) VARCHAR2(60) DATE DATE VARCHAR2(60) REPLACE MODULE: NAME BILLNUMBER ITEMCODE CUSTOMERNAME REPLACE_DATE REPLACE_QUANTITY REPLACE NULL? TYPE NUMBER(35) NUMBER(35) VARCHAR2(60) DATE VARCHAR2(60) VARCHAR2(68) .

it also gives idea about how stocks are to be purchased and how to be maintained in a company. In future we will enhance this project by making our system to store the details of the customer such as the house address to make the door delivery which is an easy and quick way. CONCLUSION AND FUTURE ENHANCEMENT 8. The important thing is that the software should be flexible enough for further modifications. . 8.1 CONCLUSION Thus the project gives the detailed explanation about how stock is maintained in an organization.2 FUTURE ENHANCEMENT There is always a room for the improvement in any software package. however good and efficient it may be.Stock maintenance system 8.

com .NET Framework Black Book´ by Temple man and Vitter 9.Stock maintenance system 9.NET :The .  ³Visual Studio .  ³Oracle The complete Reference´ by George Koch and Kevin Loney.epay.0´ by Francesco Balena.1 REFERENCE BOOKS  ³Programming in Microsoft Visual Basic 6.com  www. REFERENCE 9.2 REFERENCE WEBSITES  www.v3schools .

Sign up to vote on this title
UsefulNot useful