0% found this document useful (0 votes)
30 views46 pages

Tutorial Create Project With DB MS Access

Uploaded by

sukron.duos
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views46 pages

Tutorial Create Project With DB MS Access

Uploaded by

sukron.duos
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

1.

Open Program Microsoft Office Access 2007 (Untuk Versi yang lain silahkan disesuaikan)

2. Home Screen Microsoft Access 2007

3. Click Blank Database


4. Type Database Name (make sure your path folder)

5. Click Create for start create database file

6. Home screen Database File


7. Create Table (Design Attribute / Field)

8. Save Table Name

9. Set Attribute Table


10. Create other Table (Detail All Table)

11. Open Visual Studio 2008


12. Create New Project Inventory
13. Add Image home.jpg dan logoip.jpg dari file yang sudah di share sebelumnya
14. Add Style Sheet (CSS) with name MyStyle.CSS

Write code in MyStyle.CSS


.StyleMenu
{
width: 210px;
}

.StyleMenu .HeaderBar {
font: bold 13px Verdana;
color: white;
background: #606060 url(arrowstop.gif) no-repeat 8px 6px;
margin-bottom: 0;
text-transform: uppercase;
padding: 7px 0 7px 31px;
}

.StyleMenu ul
{
list-style-type: none;
margin: 0;
padding: 0;
margin-bottom: 0;
}

.StyleMenu ul li
{
padding-bottom: 2px;
}

.StyleMenu ul li a
{
font: normal 12px Arial;
color: black;
background :silver;
display: block;
padding: 5px 0;
line-height: 17px;
padding-left: 8px;
text-decoration: none;
}

.StyleMenu ul li a:visited
{
color: black;
}

.StyleMenu ul li a:hover
{
color :white ;
background: black;
}

15. Add Reference SlimeLibary.dll yang sudah di share sebelumnya


Pilih Tab Browse dan Pilih Folder dimana File SLimeLibary.dll berada

16. Add Web Form with name pgeLogin.aspx


a. Write code in pgeLogin.aspx (HTML)
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="pgeLogin.aspx.vb"
Inherits="INVENTORY.pgeLogin" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>UNIVERSITAS INSAN PEMBANGUNAN INDONESIA</title>
</head>
<body>
<form id="form1" runat="server">
<div style="width:1000px; height:600px; margin:auto; padding-bottom:10px; " >
<div style="width:980px; height:160px; background-color:silver; margin:auto;
padding-left:10px; padding-right:10px; margin-bottom:10px; padding-top:10px;" >
<img src="logoip.jpg" width="980" height ="150" alt =""/>
</div>
<div style="width:980px; height:330px; background-color:silver; margin:auto;
padding-left:10px; padding-right:10px; padding-top:100px; " >
<div style="width:300px; height:150px; background-color:white; margin:auto;
padding-left:10px; " >
<table >
<tr>
<td colspan="3" style="font-size:xx-large; " >Login Security</td>
</tr>
<tr>
<td colspan="3" >&nbsp;</td>
</tr>
<tr>
<td style="font-size:large;" >User Name</td>
<td style="width:15px;" >&nbsp;</td>
<td>
<asp:TextBox ID="txtUser" runat="server"
Width="177"></asp:TextBox>
</td>
</tr>
<tr>
<td style="font-size:large;">Password</td>
<td style="width:15px;" >&nbsp;</td>
<td>
<asp:TextBox ID="txtPass" runat="server" TextMode="Password"
Width="177" ></asp:TextBox>
</td>
</tr>
<tr>
<td>&nbsp</td>
<td style="width:15px;" >&nbsp;</td>
<td>
<asp:Button ID="btnLogin" runat="server" Text="Login" Width="90"
Height="25" />
<asp:Button ID="btnClear" runat="server" Text="Clear" Width="90"
Height="25" />
</td>
</tr>
</table>
</div>
</div>
</div>
</form>
</body>
</html>

b. Write code in pgeLogin.aspx.vb (View Code)


Public Class pgeLogin
Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
End Sub

Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click


txtPass.Text = ""
txtUser.Text = ""
End Sub

Private Sub btnLogin_Click(sender As Object, e As EventArgs) Handles btnLogin.Click


Try
If txtUser.Text = "" Then
ShowMessageBox("USER TIDAK BOLEH KOSONG")
ElseIf txtPass.Text = "" Then
ShowMessageBox("PASSWORD TIDAK BOLEH KOSONG")
Else
If txtUser.Text = "ADMIN" And txtPass.Text = "123456" Then
Response.Redirect("pgeMainMenu.aspx", False)
Else
ShowMessageBox("USER / PASSWORD TIDAK DIKENAL")
End If
End If
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub ShowMessageBox(ByVal strMessage As String)


Dim strScript As String = "<script language=JavaScript>"
strScript += "alert(""" & strMessage & """);"
strScript += "</script>"
If (Not ClientScript.IsStartupScriptRegistered("MyMessage")) Then
ClientScript.RegisterClientScriptBlock(Me.GetType(), "MyMessage", strScript)
End If
End Sub
End Class

17. Add Web Form with name pgeMainMenu.aspx


a. Write code in pgeMainMenu.aspx (HTML)
<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="pgeMainMenu.aspx.vb" Inherits="INVENTORY.pgeMainMenu" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>UNIVERSITAS INSAN PEMBANGUNAN INDONESIA</title>
<link href="MyStyle.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.style1
{
text-align: center;
}
.style2
{
font-family: "Courier New";
font-size: small;
color: #FFFFFF;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="width:800px; height:610px; margin:auto; background:#999999;
padding-top:10px; border:1px; " >
<div style="width:780px; height:125px; margin:auto; background:white; padding-
top:5px; " >
<div style ="width:770px; height:110px; background:gray; margin:auto;
padding-top:0px; padding-bottom:0px;">
<img src="logoip.jpg" width="770" height ="120" alt =""/>
</div>
</div>
<div style ="width:780px; height:415px; margin:auto; background:#999999;
margin-top:5px; padding-bottom :5px; " >
<div style="width:230px; height:415px; float:left; background:white; " >
<div style ="width:215px; height:395px; background:#333333; margin:auto;
padding-left:5px; padding-top:5px; padding-bottom:5px; margin-top:5px;">
<div class="StyleMenu">
<h3 class="HeaderBar">MAIN MENU</h3>
<ul>
<li><a href="pgeMainMenu.aspx">HOME</a></li>
<li><a href="pgeMasterBarang.aspx">MASTER BARANG</a></li>
<li><a href="pgePenerimaanBarang.aspx">PENERIMAAN
BARANG</a></li>
<li><a href="pgePengeluaranBarang.aspx">PENGELUARAN
BARANG</a></li>
<li><a href="pgeStockBarang.aspx">STOCK BARANG</a></li>
<li><a href="pgeLogin.aspx">LOGOUT</a></li>
</ul>
</div>
</div>
</div>
<div style ="width:545px; height:415px; float:right; background:white;" >
<img src="home.jpg" width="545" height ="415" alt =""/>

</div>
</div>
<div style="width:780px; height:40px; margin:auto; background:white; padding-
top:5px;" class="style1" >
<div style ="width:770px; height:30px; background:#333333; margin:auto;
padding-bottom:5px;" >
<span class="style2">Copyrights by UNIPI - TANGERANG</span><br
class="style2" />
<span class="style2"><span class="style2">&copy; 2024 All Rights
Reserved</span></span><span class="style2"> </span>
</div>
</div>
</div>
</form>
</body>
</html>

b. Write code in pgeMainMenu.aspx.vb (View Code)


Public Class pgeMainMenu
Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
End Sub
End Class

18. Add Web Form with name pgeMasterBarang.aspx


a. Write code in pgeMasterBarang.aspx (HTML)
<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="pgeMasterBarang.aspx.vb" Inherits="INVENTORY.pgeMasterBarang" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>UNIVERSITAS INSAN PEMBANGUNAN INDONESIA</title>
<link href="MyStyle.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.style1
{
text-align: center;
}
.style2
{
font-family: "Courier New";
font-size: small;
color: #FFFFFF;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="width:800px; height:610px; margin:auto; background:#999999;
padding-top:10px; border:1px; " >
<div style="width:780px; height:125px; margin:auto; background:white; padding-
top:5px; " >
<div style ="width:770px; height:110px; background:gray; margin:auto;
padding-top:0px; padding-bottom:0px;">
<img src="logoip.jpg" width="770" height ="120" alt =""/>
</div>
</div>
<div style ="width:780px; height:415px; margin:auto; background:#999999;
margin-top:5px; padding-bottom :5px; " >
<div style="width:230px; height:415px; float:left; background:white; " >
<div style ="width:215px; height:395px; background:#333333; margin:auto;
padding-left:5px; padding-top:5px; padding-bottom:5px; margin-top:5px;">
<div class="StyleMenu">
<h3 class="HeaderBar">MAIN MENU</h3>
<ul>
<li><a href="pgeMainMenu.aspx">HOME</a></li>
<li><a href="pgeMasterBarang.aspx">MASTER BARANG</a></li>
<li><a href="pgePenerimaanBarang.aspx">PENERIMAAN
BARANG</a></li>
<li><a href="pgePengeluaranBarang.aspx">PENGELUARAN
BARANG</a></li>
<li><a href="pgeStockBarang.aspx">STOCK BARANG</a></li>
<li><a href="pgeLogin.aspx">LOGOUT</a></li>
</ul>
</div>
</div>
</div>
<div style ="width:545px; height:415px; float:right; background:white;" >
<div style =" width:515px; height:20px; background:silver; margin:auto;
padding-right :10px; padding-left:10px; padding-top:5px; padding-bottom:5px; margin-
top:5px;">
<table align="center" >
<tr align="center" valign="middle">
<td align="center" valign="middle">OLAH DATA MASTER
BARANG</td>
</tr>
</table>
</div>
<div style =" width:525px; height:150px; background:silver; margin:auto;
padding-right :10px; padding-left:0px; padding-top:5px; padding-bottom:5px; margin-
top:5px; ">
<table>
<tr>
<td style="width:180px;">KODE BARANG</td>
<td>
<asp:TextBox ID="txtKodeBarang" runat="server" Width="100px"
MaxLength="10"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">NAMA BARANG</td>
<td>
<asp:TextBox ID="txtNamaBarang" runat="server"
Width="330px"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">SPESIFIKASI BARANG</td>
<td>
<asp:TextBox ID="txtSpecBarang" runat="server"
Width="100px"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">SATUAN BARANG</td>
<td>
<asp:TextBox ID="txtSatuanBarang" runat="server"
Width="100px"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">HARGA SATUAN</td>
<td>
<asp:TextBox ID="txtHargaSatuan" runat="server" Width="100px"
></asp:TextBox>
</td>
</tr>

<tr>
<td>&nbsp;</td>
<td>
<asp:Button ID="btnSave" Width="80px" runat="server"
Text="Save" />
<asp:Button ID="btnUpdate" Width="80px" runat="server"
Text="Update" />
<asp:Button ID="btnDelete" Width="80px" runat="server"
Text="Delete" />
<asp:Button ID="btnClear" Width="80px" runat="server"
Text="Clear" />
</td>
</tr>
</table>
</div>
<div style =" width:525px; height:200px; background:silver; margin:auto;
padding-right :5px; padding-left:5px; margin-top:5px; padding-top:5px; ">
<div style =" width:520px; height:198px; background:white; margin:auto;
overflow:auto ; ">
<asp:GridView ID ="grdList" runat ="server" AutoGenerateColumns
="false"
ShowFooter ="false" Width ="600px" >
<Columns >
<asp:CommandField ControlStyle-ForeColor="Blue" HeaderText
="Select" ShowHeader="true" ShowSelectButton ="true" >
<ControlStyle ForeColor ="Blue" />
</asp:CommandField>
<asp:BoundField DataField ="KD_BRG" HeaderText ="KODE" ItemStyle-
Width ="40px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="NM_BRG" HeaderText ="NAMA"
ItemStyle-Width ="250px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="SAT_BRG" HeaderText ="SATUAN"
ItemStyle-Width ="100px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="SPEC_BRG" HeaderText ="SPESIFIKASI"
ItemStyle-Width ="100px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="HRG_SAT" HeaderText ="HARGA
SATUAN" ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N2}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div>

<div style="width:780px; height:40px; margin:auto; background:white; padding-


top:5px;" class="style1" >
<div style ="width:770px; height:30px; background:#333333; margin:auto;
padding-bottom:5px;" >
<span class="style2">Copyrights by UNIPI - TANGERANG</span><br
class="style2" />
<span class="style2"><span class="style2">&copy; 2024 All Rights
Reserved</span></span><span class="style2"> </span>
</div>
</div>
</div>
</form>
</body>
</html>

b. Write code in pgeMasterBarang.aspx.vb (View Code)


Imports System
Imports System.Data
Imports System.Data.OleDb

Public Class pgeMasterBarang


Inherits System.Web.UI.Page
Private strSQL As String
Private objDataTable As DataTable
Private objReader As OleDbDataReader
Private objAdapter As OleDbDataAdapter
Private objDataset As DataSet
Private myCon As OleDbConnection
Private objCommand As OleDbCommand
Private strCon As String

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
Try
strCon = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Campus\IP\MODULE\VB
NET 2\APPS\INVENTORY\Inventory.mdb;"
‘Note : Untuk semua baris code ini disesuaikan dengan Lokasi Masing-Masing
If Not IsPostBack Then
Call ListGrid()
End If
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click


Try
If txtKodeBarang.Text = "" Then
ShowMessageBox("Kode barang tidak boleh kosong")
txtKodeBarang.Focus()
ElseIf txtNamaBarang.Text = "" Then
ShowMessageBox("Nama barang tidak boleh kosong")
txtNamaBarang.Focus()
ElseIf txtSpecBarang.Text = "" Then
ShowMessageBox("Spec barang tidak boleh kosong")
txtSpecBarang.Focus()
ElseIf txtSatuanBarang.Text = "" Then
ShowMessageBox("Satuan barang tidak boleh kosong")
txtSatuanBarang.Focus()
ElseIf txtHargaSatuan.Text = "" Then
ShowMessageBox("Harga satuan tidak boleh kosong")
txtHargaSatuan.Focus()
Else
myCon = New OleDbConnection(strCon)
Try
myCon.Open()
strSQL = "Select * FROM TBL_BARANG WHERE KD_BRG = '" &
Trim(txtKodeBarang.Text) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
ShowMessageBox("Duplicate Data")
Else
objCommand.Dispose()
strSQL = "INSERT INTO TBL_BARANG
(KD_BRG,NM_BRG,SAT_BRG,SPEC_BRG,HRG_SAT) VALUES('" & txtKodeBarang.Text &
"','" & txtNamaBarang.Text & "','" & txtSatuanBarang.Text & "','" & txtSpecBarang.Text &
"','" & CDbl(txtHargaSatuan.Text) & "')"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah di simpan")
Else
ShowMessageBox("Data error di simpan")
End If
End If
objReader.Close()
Catch ex As Exception
ShowMessageBox(ex.Message)
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click


If txtKodeBarang.Text = "" Or txtNamaBarang.Text = "" Or txtHargaSatuan.Text = ""
Or txtSpecBarang.Text = "" Or txtSatuanBarang.Text = "" Then
ShowMessageBox("Data kosong")
Else
myCon = New OleDbConnection(strCon)
Try
myCon.Open()
strSQL = "DELETE FROM TBL_BARANG WHERE KD_BRG = '" &
Trim(txtKodeBarang.Text) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah dihapus")
Else
ShowMessageBox("Hapus gagal")
End If
Catch ex As Exception
ShowMessageBox(ex.Message)
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
End Sub

Private Sub btnUpdate_Click(sender As Object, e As EventArgs) Handles


btnUpdate.Click
If txtKodeBarang.Text = "" Or txtNamaBarang.Text = "" Or txtHargaSatuan.Text = ""
Or txtSpecBarang.Text = "" Or txtSatuanBarang.Text = "" Then
ShowMessageBox("Data kosong")
Else
myCon = New OleDbConnection(strCon)
Try
myCon.Open()
strSQL = "UPDATE TBL_BARANG SET NM_BRG = '" & txtNamaBarang.Text & "',
SAT_BRG = '" & txtSatuanBarang.Text & "', SPEC_BRG = '" & txtSpecBarang.Text & "',
HRG_SAT = '" & CDbl(txtHargaSatuan.Text) & "' WHERE KD_BRG = '" &
txtKodeBarang.Text & "'"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah diupdate")
Else
ShowMessageBox("Update gagal")
End If
Catch ex As Exception
ShowMessageBox("ERROR")
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
End Sub

Private Sub ListGrid()


Try
objDataset = New DataSet
myCon = New OleDbConnection(strCon)
myCon.Open()
strSQL = "SELECT * FROM TBL_BARANG ORDER BY KD_BRG ASC"
objAdapter = New OleDbDataAdapter(strSQL, myCon)
objAdapter.Fill(objDataset)
grdList.DataSource = objDataset
grdList.DataBind()
myCon.Close()
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub ClearObject()


txtKodeBarang.Text = ""
txtNamaBarang.Text = ""
txtSpecBarang.Text = ""
txtSatuanBarang.Text = ""
txtHargaSatuan.Text = ""
End Sub

Private Sub grdList_SelectedIndexChanged(sender As Object, e As EventArgs) Handles


grdList.SelectedIndexChanged
Try
txtKodeBarang.Text = grdList.SelectedRow.Cells(1).Text
txtNamaBarang.Text = grdList.SelectedRow.Cells(2).Text
txtSatuanBarang.Text = grdList.SelectedRow.Cells(3).Text
txtSpecBarang.Text = grdList.SelectedRow.Cells(4).Text
txtHargaSatuan.Text = Format(CDbl(grdList.SelectedRow.Cells(5).Text),
"#,##0.00")
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub btnClear_Click(ByVal sender As Object, ByVal e As System.EventArgs)


Handles btnClear.Click
Call ClearObject()
End Sub

Private Sub ShowMessageBox(ByVal strMessage As String)


Dim strScript As String = "<script language=JavaScript>"
strScript += "alert(""" & strMessage & """);"
strScript += "</script>"
If (Not ClientScript.IsStartupScriptRegistered("MyMessage")) Then
ClientScript.RegisterClientScriptBlock(Me.GetType(), "MyMessage", strScript)
End If
End Sub
End Class

19. Add Web Form with name pgePenerimaanBarang.aspx


a. Write code in pgePenerimaanBarang.aspx (HTML)
<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="pgePenerimaanBarang.aspx.vb"
Inherits="INVENTORY.pgePenerimaanBarang" %>
<%@ Register Assembly="SlimeeLibrary" Namespace="SlimeeLibrary" TagPrefix="cc1"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>UNIVERSITAS INSAN PEMBANGUNAN INDONESIA</title>
<link href="MyStyle.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.style1
{
text-align: center;
}
.style2
{
font-family: "Courier New";
font-size: small;
color: #FFFFFF;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="width:800px; height:610px; margin:auto; background:#999999;
padding-top:10px; border:1px; " >
<div style="width:780px; height:125px; margin:auto; background:white; padding-
top:5px; " >
<div style ="width:770px; height:110px; background:gray; margin:auto;
padding-top:0px; padding-bottom:0px;">
<img src="logoip.jpg" width="770" height ="120" alt =""/>
</div>
</div>
<div style ="width:780px; height:415px; margin:auto; background:#999999;
margin-top:5px; padding-bottom :5px; " >
<div style="width:230px; height:415px; float:left; background:white; " >
<div style ="width:215px; height:395px; background:#333333; margin:auto;
padding-left:5px; padding-top:5px; padding-bottom:5px; margin-top:5px;">
<div class="StyleMenu">
<h3 class="HeaderBar">MAIN MENU</h3>
<ul>
<li><a href="pgeMainMenu.aspx">HOME</a></li>
<li><a href="pgeMasterBarang.aspx">MASTER BARANG</a></li>
<li><a href="pgePenerimaanBarang.aspx">PENERIMAAN
BARANG</a></li>
<li><a href="pgePengeluaranBarang.aspx">PENGELUARAN
BARANG</a></li>
<li><a href="pgeStockBarang.aspx">STOCK BARANG</a></li>
<li><a href="pgeLogin.aspx">LOGOUT</a></li>
</ul>
</div>
</div>
</div>
<div style ="width:545px; height:415px; float:right; background:white;" >
<div style =" width:515px; height:20px; background:silver; margin:auto;
padding-right :10px; padding-left:10px; padding-top:5px; padding-bottom:5px; margin-
top:5px;">
<table align="center" >
<tr align="center" valign="middle">
<td align="center" valign="middle">OLAH DATA PENERIMAAN
BARANG</td>
</tr>
</table>
</div>
<div style =" width:525px; height:145px; background:silver; margin:auto;
padding-right :10px; padding-left:0px; padding-top:5px; padding-bottom:5px; margin-
top:5px; ">
<table>
<tr>
<td style="width:180px;">NO. BUKTI</td>
<td>
<asp:TextBox ID="txtNomor" runat="server" Width="100px"
MaxLength="10"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">TANGGAL TRANSAKSI</td>
<td>
<cc1:DatePicker ID="dtTglTrans" runat="server" Width="80px"
PaneWidth="150px" EnableViewState="true">
<PaneTableStyle BorderColor="#707070" BorderWidth="1px"
BorderStyle="Solid" />
<PaneHeaderStyle BackColor="#0099FF" />
<TitleStyle ForeColor="White" Font-Bold="true" />
<NextPrevMonthStyle ForeColor="White" Font-Bold="true" />
<NextPrevYearStyle ForeColor="#E0E0E0" Font-Bold="true" />
<DayHeaderStyle BackColor="#E8E8E8" />
<TodayStyle BackColor="#FFFFCC" ForeColor="#000000" Font-
Underline="false" BorderColor="#FFCC99"/>
<AlternateMonthStyle BackColor="#F0F0F0"
ForeColor="#707070" Font-Underline="false"/>
<MonthStyle BackColor="" ForeColor="#000000" Font-
Underline="false"/>
</cc1:DatePicker>
</td>
</tr>
<tr>
<td style="width:180px;">KODE BARANG</td>
<td>
<asp:DropDownList ID="ddlBarang" runat="server"
Width="330px"></asp:DropDownList>
</td>
</tr>
<tr>
<td style="width:180px;">QUANTITY BARANG</td>
<td>
<asp:TextBox ID="txtQty" runat="server" Width="100px"
></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">TOTAL HARGA</td>
<td>
<asp:TextBox ID="txtHarga" runat="server" Width="200px"
ReadOnly="true" ></asp:TextBox>
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>
<asp:Button ID="btnSave" Width="80px" runat="server"
Text="Save" />
<asp:Button ID="btnDelete" Width="80px" runat="server"
Text="Delete" />
<asp:Button ID="btnClear" Width="80px" runat="server"
Text="Clear" />
</td>
</tr>
</table>
</div>
<div style =" width:525px; height:200px; background:silver; margin:auto;
padding-right :10px; padding-left:0px; padding-top:5px; padding-bottom:5px; margin-
top:5px; overflow:auto ; ">
<div style =" width:520px; height:198px; background:white; margin:auto;
overflow:auto ; ">
<asp:GridView ID ="grdList" runat ="server" AutoGenerateColumns
="false"
ShowFooter ="false" Width ="600px" >
<Columns >
<asp:CommandField ControlStyle-ForeColor="Blue" HeaderText
="Select" ShowHeader="true" ShowSelectButton ="true" >
<ControlStyle ForeColor ="Blue" />
</asp:CommandField>
<asp:BoundField DataField ="NO_PENERIMAAN" HeaderText
="NOMOR" ItemStyle-Width ="40px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="TGL_TERIMA" HeaderText ="TANGGAL"
ItemStyle-Width ="150px" DataFormatString ="{0:dd MMM yyyy}" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="KD_BRG" HeaderText ="KODE BARANG"
ItemStyle-Width ="200px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="NM_BRG" HeaderText ="NAMA
BARANG" ItemStyle-Width ="100px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="HRG_SAT" HeaderText ="HARGA
SATUAN" ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N0}" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="QTY" HeaderText ="QUANTITY"
ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString ="{0:N0}"
>
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="TOT_HRG" HeaderText ="TOTAK
HARGA" ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N2}" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
</Columns>
</asp:GridView>
</div>

</div>
</div>
</div>

<div style="width:780px; height:40px; margin:auto; background:white; padding-


top:5px;" class="style1" >
<div style ="width:770px; height:30px; background:#333333; margin:auto;
padding-bottom:5px;" >
<span class="style2">Copyrights by UNIPI - TANGERANG</span><br
class="style2" />
<span class="style2"><span class="style2">&copy; 2024 All Rights
Reserved</span></span><span class="style2"> </span>
</div>
</div>
</div>
</form>
</body>
</html>

b. Write code in pgePenerimaanBarang.aspx.vb (View Code)


Imports System
Imports System.Data
Imports System.Data.OleDb
Public Class pgePenerimaanBarang
Inherits System.Web.UI.Page
Private strSQL As String
Private objDataTable As DataTable
Private objReader As OleDbDataReader
Private objAdapter As OleDbDataAdapter
Private objDataset As DataSet
Private myCon As OleDbConnection
Private objCommand As OleDbCommand
Private strCon As String
Private arrBarang(3) As String
Private dblNewIn As Double
Private dblNewAkhir As Double
Private tmpNewIn As Double
Private tmpNewAkhir As Double
Private tmpQty As Double

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
Try
strCon = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Campus\IP\MODULE\VB
NET 2\APPS\INVENTORY\Inventory.mdb;"
If Not IsPostBack Then
Call ListGrid()
Call PopulateBarang()
End If
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub ShowMessageBox(ByVal strMessage As String)


Dim strScript As String = "<script language=JavaScript>"
strScript += "alert(""" & strMessage & """);"
strScript += "</script>"
If (Not ClientScript.IsStartupScriptRegistered("MyMessage")) Then
ClientScript.RegisterClientScriptBlock(Me.GetType(), "MyMessage", strScript)
End If
End Sub

Private Sub ListGrid()


Try
objDataset = New DataSet
myCon = New OleDbConnection(strCon)
myCon.Open()
strSQL = "SELECT
A.NO_PENERIMAAN,A.TGL_TERIMA,A.QTY,A.KD_BRG,B.NM_BRG,B.HRG_SAT, A.QTY *
B.HRG_SAT AS TOT_HRG FROM TBL_PENERIMAAN A, TBL_BARANG B WHERE
A.KD_BRG=B.KD_BRG ORDER BY A.NO_PENERIMAAN,A.KD_BRG ASC"
objAdapter = New OleDbDataAdapter(strSQL, myCon)
objAdapter.Fill(objDataset)
grdList.DataSource = objDataset
grdList.DataBind()
myCon.Close()
Catch ex As Exception
grdList.DataSource = Nothing
grdList.DataBind()
End Try
End Sub

Private Sub ClearObject()


Try
txtNomor.Text = ""
txtHarga.Text = ""
txtQty.Text = ""
dtTglTrans.SelectedDate = Nothing
ddlBarang.Text = ""
Catch ex As Exception

End Try
End Sub

Private Sub PopulateBarang()


Try
ddlBarang.Items.Clear()
myCon = New OleDbConnection(strCon)
objDataTable = New DataTable
myCon.Open()
strSQL = "SELECT KD_BRG,NM_BRG,HRG_SAT FROM TBL_BARANG ORDER BY
KD_BRG ASC"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
ddlBarang.Items.Add("")
While objReader.Read
ddlBarang.Items.Add(objReader(0) & "-" & objReader(1) & "-" &
objReader(2))
End While
End If
objCommand.Dispose()
objReader.Close()
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Catch ex As Exception

End Try
End Sub
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
If txtNomor.Text = "" Then
ShowMessageBox("Nomor penerimaan tidak boleh kosong")
txtNomor.Focus()
ElseIf ddlBarang.Text = "" Then
ShowMessageBox("Kode barang tidak boleh kosong")
ddlBarang.Focus()
ElseIf txtQty.Text = "" Then
ShowMessageBox("Quantity tidak boleh kosong")
txtQty.Focus()
Else
myCon = New OleDbConnection(strCon)
Try
arrBarang = Split(ddlBarang.Text, "-")
myCon.Open()
strSQL = "SELECT * FROM TBL_PENERIMAAN WHERE NO_PENERIMAAN = '" &
Trim(txtNomor.Text) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
ShowMessageBox("Duplicate Data")
Else
objCommand.Dispose()
strSQL = "INSERT INTO TBL_PENERIMAAN
(NO_PENERIMAAN,TGL_TERIMA,KD_BRG,QTY) VALUES('" & txtNomor.Text & "','" &
dtTglTrans.SelectedDate & "','" & arrBarang(0) & "','" & CDbl(txtQty.Text) & "')"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah di simpan")
Else
ShowMessageBox("Data error di simpan")
End If
End If
objReader.Close()

strSQL = "SELECT * FROM TBL_STOCK WHERE KD_BRG = '" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
dblNewAkhir = CDbl(objReader(3)) + CDbl(txtQty.Text)
dblNewIn = CDbl(objReader(1)) + CDbl(txtQty.Text)
strSQL = "UPDATE TBL_STOCK SET QTY_IN = " & dblNewIn & ",QTY_AKHIR = "
& dblNewAkhir & " WHERE KD_BRG ='" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objCommand.ExecuteNonQuery()
Else
strSQL = "INSERT INTO TBL_STOCK (KD_BRG,QTY_IN,QTY_OUT,QTY_AKHIR)
VALUES('" & arrBarang(0) & "'," & CDbl(txtQty.Text) & ",0,'" & CDbl(txtQty.Text) & "')"
objCommand = New OleDbCommand(strSQL, myCon)
objCommand.ExecuteNonQuery()
End If
Catch ex As Exception
ShowMessageBox("ERROR")
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
End Sub

Private Sub grdList_SelectedIndexChanged(sender As Object, e As EventArgs) Handles


grdList.SelectedIndexChanged
Try
txtNomor.Text = grdList.SelectedRow.Cells(1).Text
dtTglTrans.SelectedDate = CDate(grdList.SelectedRow.Cells(2).Text)
ddlBarang.Text = grdList.SelectedRow.Cells(3).Text & "-" &
grdList.SelectedRow.Cells(4).Text & "-" & grdList.SelectedRow.Cells(5).Text
txtQty.Text = Format(CDbl(grdList.SelectedRow.Cells(6).Text), "#,##0")
txtHarga.Text = Format(CDbl(grdList.SelectedRow.Cells(7).Text), "#,##0.00")
Catch ex As Exception

End Try
End Sub

Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click


If txtNomor.Text = "" Or txtQty.Text = "" Or ddlBarang.Text = "" Then
ShowMessageBox("Data kosong")
Else
myCon = New OleDbConnection(strCon)
Try
arrBarang = Split(ddlBarang.Text, "-")
myCon.Open()
strSQL = "DELETE FROM TBL_PENERIMAAN WHERE NO_PENERIMAAN = '" &
Trim(txtNomor.Text) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah dihapus")
Else
ShowMessageBox("Hapus gagal")
End If
strSQL = "SELECT * FROM TBL_STOCK WHERE KD_BRG = '" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
dblNewAkhir = CDbl(objReader(3)) - CDbl(txtQty.Text)
dblNewIn = CDbl(objReader(1)) - CDbl(txtQty.Text)
strSQL = "UPDATE TBL_STOCK SET QTY_IN = " & dblNewIn & ",QTY_AKHIR = "
& dblNewAkhir & " WHERE KD_BRG ='" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objCommand.ExecuteNonQuery()
End If
Catch ex As Exception
ShowMessageBox("ERROR")
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
End Sub

Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click


Call ClearObject()
End Sub
End Class

20. Add Web Form with name pgePengeluaranBarang.aspx


a. Write code in pgePengeluaranBarang.aspx (HTML)
<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="pgePengeluaranBarang.aspx.vb"
Inherits="INVENTORY.pgePengeluaranBarang" %>
<%@ Register Assembly="SlimeeLibrary" Namespace="SlimeeLibrary" TagPrefix="cc1"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>UNIVERSITAS INSAN PEMBANGUNAN INDONESIA</title>
<link href="MyStyle.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.style1
{
text-align: center;
}
.style2
{
font-family: "Courier New";
font-size: small;
color: #FFFFFF;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="width:800px; height:610px; margin:auto; background:#999999;
padding-top:10px; border:1px; " >
<div style="width:780px; height:125px; margin:auto; background:white; padding-
top:5px; " >
<div style ="width:770px; height:110px; background:gray; margin:auto;
padding-top:0px; padding-bottom:0px;">
<img src="logoip.jpg" width="770" height ="120" alt =""/>
</div>
</div>
<div style ="width:780px; height:415px; margin:auto; background:#999999;
margin-top:5px; padding-bottom :5px; " >
<div style="width:230px; height:415px; float:left; background:white; " >
<div style ="width:215px; height:395px; background:#333333; margin:auto;
padding-left:5px; padding-top:5px; padding-bottom:5px; margin-top:5px;">
<div class="StyleMenu">
<h3 class="HeaderBar">MAIN MENU</h3>
<ul>
<li><a href="pgeMainMenu.aspx">HOME</a></li>
<li><a href="pgeMasterBarang.aspx">MASTER BARANG</a></li>
<li><a href="pgePenerimaanBarang.aspx">PENERIMAAN
BARANG</a></li>
<li><a href="pgePengeluaranBarang.aspx">PENGELUARAN
BARANG</a></li>
<li><a href="pgeStockBarang.aspx">STOCK BARANG</a></li>
<li><a href="pgeLogin.aspx">LOGOUT</a></li>
</ul>
</div>
</div>
</div>
<div style ="width:545px; height:415px; float:right; background:white;" >
<div style =" width:515px; height:20px; background:silver; margin:auto;
padding-right :10px; padding-left:10px; padding-top:5px; padding-bottom:5px; margin-
top:5px;">
<table align="center" >
<tr align="center" valign="middle">
<td align="center" valign="middle">OLAH DATA PENGELUARAN
BARANG</td>
</tr>
</table>
</div>
<div style =" width:525px; height:145px; background:silver; margin:auto;
padding-right :10px; padding-left:0px; padding-top:5px; padding-bottom:5px; margin-
top:5px; ">
<table>
<tr>
<td style="width:180px;">NO. BUKTI</td>
<td>
<asp:TextBox ID="txtNomor" runat="server" Width="100px"
MaxLength="10" ></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">TANGGAL TRANSAKSI</td>
<td>
<cc1:DatePicker ID="dtTglTrans" runat="server" Width="80px"
PaneWidth="150px" EnableViewState="true">
<PaneTableStyle BorderColor="#707070" BorderWidth="1px"
BorderStyle="Solid" />
<PaneHeaderStyle BackColor="#0099FF" />
<TitleStyle ForeColor="White" Font-Bold="true" />
<NextPrevMonthStyle ForeColor="White" Font-Bold="true" />
<NextPrevYearStyle ForeColor="#E0E0E0" Font-Bold="true" />
<DayHeaderStyle BackColor="#E8E8E8" />
<TodayStyle BackColor="#FFFFCC" ForeColor="#000000" Font-
Underline="false" BorderColor="#FFCC99"/>
<AlternateMonthStyle BackColor="#F0F0F0"
ForeColor="#707070" Font-Underline="false"/>
<MonthStyle BackColor="" ForeColor="#000000" Font-
Underline="false"/>
</cc1:DatePicker>
</td>
</tr>
<tr>
<td style="width:180px;">KODE BARANG</td>
<td>
<asp:DropDownList ID="ddlBarang" runat="server"
Width="330px"></asp:DropDownList>
</td>
</tr>
<tr>
<td style="width:180px;">QUANTITY BARANG</td>
<td>
<asp:TextBox ID="txtQty" runat="server" Width="100px"
></asp:TextBox>
</td>
</tr>
<tr>
<td style="width:180px;">TOTAL HARGA</td>
<td>
<asp:TextBox ID="txtHarga" runat="server" Width="200px"
ReadOnly="true" ></asp:TextBox>
</td>
</tr>

<tr>
<td>&nbsp;</td>
<td>
<asp:Button ID="btnSave" Width="80px" runat="server"
Text="Save" />
<asp:Button ID="btnDelete" Width="80px" runat="server"
Text="Delete" />
<asp:Button ID="btnClear" Width="80px" runat="server"
Text="Clear" />
</td>
</tr>
</table>
</div>
<div style =" width:525px; height:200px; background:silver; margin:auto;
padding-right :10px; padding-left:0px; padding-top:5px; padding-bottom:5px; margin-
top:5px; overflow:auto ; ">
<div style =" width:520px; height:198px; background:white; margin:auto;
overflow:auto ; ">
<asp:GridView ID ="grdList" runat ="server" AutoGenerateColumns
="false"
ShowFooter ="false" Width ="600px" >
<Columns >
<asp:CommandField ControlStyle-ForeColor="Blue" HeaderText
="Select" ShowHeader="true" ShowSelectButton ="true" >
<ControlStyle ForeColor ="Blue" />
</asp:CommandField>
<asp:BoundField DataField ="NO_PENGELUARAN" HeaderText
="NOMOR" ItemStyle-Width ="40px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="TGL_PENGELUARAN" HeaderText
="TANGGAL" ItemStyle-Width ="150px" DataFormatString ="{0:dd MMM yyyy}" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="KD_BRG" HeaderText ="KODE BARANG"
ItemStyle-Width ="200px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="NM_BRG" HeaderText ="NAMA
BARANG" ItemStyle-Width ="100px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="HRG_SAT" HeaderText ="HARGA
SATUAN" ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N0}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="QTY" HeaderText ="QUANTITY"
ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N0}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="TOT_HRG" HeaderText ="TOTAK
HARGA" ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N2}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div>

<div style="width:780px; height:40px; margin:auto; background:white; padding-


top:5px;" class="style1" >
<div style ="width:770px; height:30px; background:#333333; margin:auto;
padding-bottom:5px;" >
<span class="style2">Copyrights by UNIPI - TANGERANG</span><br
class="style2" />
<span class="style2"><span class="style2">&copy; 2024 All Rights
Reserved</span></span><span class="style2"> </span>
</div>
</div>
</div>
</form>
</body>
</html>

b. Write code in pgePengeluaranBarang.aspx.vb (View Code)


Imports System
Imports System.Data
Imports System.Data.OleDb

Public Class pgePengeluaranBarang


Inherits System.Web.UI.Page
Private strSQL As String
Private objDataTable As DataTable
Private objReader As OleDbDataReader
Private objAdapter As OleDbDataAdapter
Private objDataset As DataSet
Private myCon As OleDbConnection
Private objCommand As OleDbCommand
Private strCon As String
Private arrBarang(3) As String
Private dblNewOut As Double
Private dblNewAkhir As Double
Private dblLastOut As Double
Private dblLastAkhir As Double

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
Try
strCon = "Provider=Microsoft.Jet.OLEDB.4.0; Data
Source=D:\Campus\IP\MODULE\VB NET 2\APPS\INVENTORY\Inventory.mdb;"
If Not IsPostBack Then
Call ListGrid()
Call PopulateBarang()
End If
Catch ex As Exception
ShowMessageBox(ex.Message)
End Try
End Sub

Private Sub ListGrid()


Try
objDataset = New DataSet
myCon = New OleDbConnection(strCon)
myCon.Open()
strSQL = "SELECT
A.NO_PENGELUARAN,A.TGL_PENGELUARAN,A.QTY,A.KD_BRG,B.NM_BRG,B.HRG_SAT,
A.QTY * B.HRG_SAT AS TOT_HRG FROM TBL_PENGELUARAN A, TBL_BARANG B WHERE
A.KD_BRG=B.KD_BRG ORDER BY A.NO_PENGELUARAN,A.KD_BRG ASC"
objAdapter = New OleDbDataAdapter(strSQL, myCon)
objAdapter.Fill(objDataset)
grdList.DataSource = objDataset
grdList.DataBind()
myCon.Close()
Catch ex As Exception
grdList.DataSource = Nothing
grdList.DataBind()
End Try
End Sub

Private Sub ClearObject()


Try
txtNomor.Text = ""
txtHarga.Text = ""
txtQty.Text = ""
dtTglTrans.SelectedDate = Nothing
ddlBarang.Text = ""
Catch ex As Exception

End Try
End Sub

Private Sub PopulateBarang()


Try
ddlBarang.Items.Clear()
myCon = New OleDbConnection(strCon)
objDataTable = New DataTable
myCon.Open()
strSQL = "SELECT KD_BRG,NM_BRG,HRG_SAT FROM TBL_BARANG ORDER BY
KD_BRG ASC"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
ddlBarang.Items.Add("")
While objReader.Read
ddlBarang.Items.Add(objReader(0) & "-" & objReader(1) & "-" &
objReader(2))
End While
End If
objCommand.Dispose()
objReader.Close()
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Catch ex As Exception

End Try
End Sub

Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click


If txtNomor.Text = "" Then
ShowMessageBox("Nomor pengeluaran tidak boleh kosong")
txtNomor.Focus()
ElseIf ddlBarang.Text = "" Then
ShowMessageBox("Kode barang tidak boleh kosong")
ddlBarang.Focus()
ElseIf txtQty.Text = "" Then
ShowMessageBox("Quantity tidak boleh kosong")
txtQty.Focus()
Else
myCon = New OleDbConnection(strCon)
Try
arrBarang = Split(ddlBarang.Text, "-")
dblLastOut = 0
dblLastAkhir = 0
myCon.Open()
strSQL = "SELECT * FROM TBL_STOCK WHERE KD_BRG = '" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
dblLastOut = CDbl(objReader(2))
dblLastAkhir = CDbl(objReader(3))
End If
If CDbl(txtQty.Text) > dblLastAkhir Then
ShowMessageBox("SALDO AKHIR TIDAK MENCUKUPI")
Else
strSQL = "SELECT * FROM TBL_PENGELUARAN WHERE NO_PENGELUARAN =
'" & Trim(txtNomor.Text) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
ShowMessageBox("Duplicate Data")
Else
objCommand.Dispose()
strSQL = "INSERT INTO TBL_PENGELUARAN
(NO_PENGELUARAN,TGL_PENGELUARAN,KD_BRG,QTY) VALUES('" & txtNomor.Text &
"','" & dtTglTrans.SelectedDate & "','" & arrBarang(0) & "','" & CDbl(txtQty.Text) & "')"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah di simpan")
Else
ShowMessageBox("Data error di simpan")
End If
End If
dblNewAkhir = dblLastAkhir - CDbl(txtQty.Text)
dblNewOut = dblLastOut + CDbl(txtQty.Text)
strSQL = "UPDATE TBL_STOCK SET QTY_OUT = " & dblNewOut & ",QTY_AKHIR
= " & dblNewAkhir & " WHERE KD_BRG ='" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objCommand.ExecuteNonQuery()
End If
Catch ex As Exception
ShowMessageBox("ERROR")
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
End Sub

Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click


Call ClearObject()
End Sub

Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click


If txtNomor.Text = "" Or txtQty.Text = "" Or ddlBarang.Text = "" Then
ShowMessageBox("Data kosong")
Else
myCon = New OleDbConnection(strCon)
Try
arrBarang = Split(ddlBarang.Text, "-")
myCon.Open()
strSQL = "DELETE FROM TBL_PENGELUARAN WHERE NO_PENGELUARAN = '" &
Trim(txtNomor.Text) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
If objCommand.ExecuteNonQuery Then
ShowMessageBox("Data telah dihapus")
Else
ShowMessageBox("Hapus gagal")
End If
strSQL = "SELECT * FROM TBL_STOCK WHERE KD_BRG = '" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
dblNewAkhir = CDbl(objReader(3)) + CDbl(txtQty.Text)
dblNewOut = CDbl(objReader(2)) - CDbl(txtQty.Text)
strSQL = "UPDATE TBL_STOCK SET QTY_OUT = " & dblNewOut & ",QTY_AKHIR
= " & dblNewAkhir & " WHERE KD_BRG ='" & arrBarang(0) & "'"
objCommand = New OleDbCommand(strSQL, myCon)
objCommand.ExecuteNonQuery()
End If
Catch ex As Exception
ShowMessageBox("ERROR")
Finally
myCon.Close()
objCommand = Nothing
objReader = Nothing
myCon = Nothing
Call ListGrid()
Call ClearObject()
End Try
End If
End Sub

Private Sub grdList_SelectedIndexChanged(sender As Object, e As EventArgs) Handles


grdList.SelectedIndexChanged
Try
txtNomor.Text = grdList.SelectedRow.Cells(1).Text
dtTglTrans.SelectedDate = CDate(grdList.SelectedRow.Cells(2).Text)
ddlBarang.Text = grdList.SelectedRow.Cells(3).Text & "-" &
grdList.SelectedRow.Cells(4).Text & "-" & grdList.SelectedRow.Cells(5).Text
txtQty.Text = Format(CDbl(grdList.SelectedRow.Cells(6).Text), "#,##0")
txtHarga.Text = Format(CDbl(grdList.SelectedRow.Cells(7).Text), "#,##0.00")
Catch ex As Exception

End Try
End Sub

Private Sub ShowMessageBox(ByVal strMessage As String)


Dim strScript As String = "<script language=JavaScript>"
strScript += "alert(""" & strMessage & """);"
strScript += "</script>"
If (Not ClientScript.IsStartupScriptRegistered("MyMessage")) Then
ClientScript.RegisterClientScriptBlock(Me.GetType(), "MyMessage", strScript)
End If
End Sub
End Class

21. Add Web Form with name pgeStockBarang.aspx


a. Write code in pgeStockBarang.aspx (HTML)
<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="pgeStockBarang.aspx.vb" Inherits="INVENTORY.pgeStockBarang" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>UNIVERSITAS INSAN PEMBANGUNAN INDONESIA</title>
<link href="MyStyle.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.style1
{
text-align: center;
}
.style2
{
font-family: "Courier New";
font-size: small;
color: #FFFFFF;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="width:800px; height:610px; margin:auto; background:#999999;
padding-top:10px; border:1px; " >
<div style="width:780px; height:125px; margin:auto; background:white; padding-
top:5px; " >
<div style ="width:770px; height:110px; background:gray; margin:auto;
padding-top:0px; padding-bottom:0px;">
<img src="logoip.jpg" width="770" height ="120" alt =""/>
</div>
</div>
<div style ="width:780px; height:415px; margin:auto; background:#999999;
margin-top:5px; padding-bottom :5px; " >
<div style="width:230px; height:415px; float:left; background:white; " >
<div style ="width:215px; height:395px; background:#333333; margin:auto;
padding-left:5px; padding-top:5px; padding-bottom:5px; margin-top:5px;">
<div class="StyleMenu">
<h3 class="HeaderBar">MAIN MENU</h3>
<ul>
<li><a href="pgeMainMenu.aspx">HOME</a></li>
<li><a href="pgeMasterBarang.aspx">MASTER BARANG</a></li>
<li><a href="pgePenerimaanBarang.aspx">PENERIMAAN
BARANG</a></li>
<li><a href="pgePengeluaranBarang.aspx">PENGELUARAN
BARANG</a></li>
<li><a href="pgeStockBarang.aspx">STOCK BARANG</a></li>
<li><a href="pgeLogin.aspx">LOGOUT</a></li>
</ul>
</div>
</div>
</div>
<div style ="width:545px; height:415px; float:right; background:white;" >
<div style =" width:515px; height:20px; background:silver; margin:auto;
padding-right :10px; padding-left:10px; padding-top:5px; padding-bottom:5px; margin-
top:5px;">
<table align="center" >
<tr align="center" valign="middle">
<td align="center" valign="middle">LIST STOCK BARANG</td>
</tr>
</table>
</div>
<div style =" width:525px; height:360px; background:silver; margin:auto;
padding-right :10px; padding-left:0px; padding-top:5px; padding-bottom:5px; margin-
top:5px; overflow:auto ; ">
<div style =" width:520px; height:358px; background:white; margin:auto;
overflow:auto ; ">
<asp:GridView ID ="grdList" runat ="server" AutoGenerateColumns ="false"
ShowFooter ="false" Width ="600px" >
<Columns >
<asp:BoundField DataField ="KD_BRG" HeaderText ="KODE BARANG"
ItemStyle-Width ="200px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="NM_BRG" HeaderText ="NAMA
BARANG" ItemStyle-Width ="100px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="SAT_BRG" HeaderText ="SATUAN"
ItemStyle-Width ="80px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="SPEC_BRG" HeaderText ="SPESIFIKASI"
ItemStyle-Width ="80px" >
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="HRG_SAT" HeaderText ="HARGA
SATUAN" ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N2}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="QTY_IN" HeaderText ="QTY IN"
ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N0}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="QTY_OUT" HeaderText ="QTY OUT"
ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N0}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
<asp:BoundField DataField ="QTY_AKHIR" HeaderText ="QTY_AKHIR"
ItemStyle-Width ="80px" ItemStyle-HorizontalAlign="Right" DataFormatString
="{0:N0}">
<HeaderStyle Wrap ="false" />
<ItemStyle Wrap ="false" />
</asp:BoundField >
</Columns>
</asp:GridView>
</div>

</div>
</div>
</div>

<div style="width:780px; height:40px; margin:auto; background:white; padding-


top:5px;" class="style1" >
<div style ="width:770px; height:30px; background:#333333; margin:auto;
padding-bottom:5px;" >
<span class="style2">Copyrights by UNIPI - TANGERANG</span><br
class="style2" />
<span class="style2"><span class="style2">&copy; 2024 All Rights
Reserved</span></span><span class="style2"> </span>
</div>
</div>
</div>

</form>
</body>
</html>

b. Write code in pgeStockBarang.aspx.vb (View Code)


Imports System
Imports System.Data
Imports System.Data.OleDb
Public Class pgeStockBarang
Inherits System.Web.UI.Page
Private strSQL As String
Private objDataTable As DataTable
Private objReader As OleDbDataReader
Private objAdapter As OleDbDataAdapter
Private objDataset As DataSet
Private myCon As OleDbConnection
Private objCommand As OleDbCommand
Private strCon As String

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)


Handles Me.Load
Try
strCon = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Campus\IP\MODULE\VB
NET 2\APPS\INVENTORY\Inventory.mdb;"
If Not IsPostBack Then
Call ListGrid()
End If
Catch ex As Exception
End Try
End Sub

Private Sub ListGrid()


Try
objDataset = New DataSet
myCon = New OleDbConnection(strCon)
myCon.Open()
strSQL = "SELECT
A.KD_BRG,A.NM_BRG,A.SAT_BRG,A.SPEC_BRG,A.HRG_SAT,B.QTY_IN,B.QTY_OUT,B.QTY
_AKHIR FROM TBL_BARANG A, TBL_STOCK B WHERE A.KD_BRG=B.KD_BRG ORDER BY
A.KD_BRG ASC"
objAdapter = New OleDbDataAdapter(strSQL, myCon)
objAdapter.Fill(objDataset)
grdList.DataSource = objDataset
grdList.DataBind()
myCon.Close()
Catch ex As Exception
grdList.DataSource = Nothing
grdList.DataBind()
End Try
End Sub
End Class
Run Program

1. Page Login

2. Page Main Menu


3. Page Master Barang

4. Page Penerimaan Barang


5. Page Pengeluaran Barang

6. Page Stock Barang

You might also like