商品出库

  • 格式:txt
  • 大小:4.41 KB
  • 文档页数:2


Dim cn As Connection '声明数据库
Dim Rs As adodb.Recordset '声明记录集
Dim Rstemp As adodb.Recordset
Private Sub Combo1_LostFocus() '调用查看过程查询数据
Call serrch_material(Trim(Combo1.Text)) '指定查询条件
End Sub

Private Sub Command1.Click()
Rs.MoveFirst ' 移动到记录集头部
Call disprecord
End Sub

Private Sub Command2.Click() '向上移动一部记录
Rs.MovePrevious
Call disprecord
End Sub


Private Sub Command3.Click() '向下移动一笔记录
Rs.MoveNext
Call disprecord
End Sub

Private Sub Command4.Click() '移动到记录及尾部
Rs.MoveLast
Call disprecord
End Sub

Private Sub Command5.Click()
If checkdata=True then '判断数据格式是否正确
Rs.Addnew '增加一笔记录
Rs.Fileds("Name")=Trim(Combo1.Text)
Rs.Fileds("spec")=Trim(Text2.Text)
Rs.Fileds("numb")=Trim(Text3.Text)
Rs.Fileds("price")=Trim(Text4.Text)
Rs.Fileds("money")=Trim(Text5.Text)
Rs.Updata '更新记录
'调用出库过程
Call outstore '产品入库
MsgBox"出库数据成功!"
Combo1.Text=""
Text2.Text=""
Text3.Text=""
Text4.Text=""
Text5.Text=""
End If
End Sub

Private Sub Command6.Click() ' 出库查询窗口
frmoutsearch.Show,frmmain
End Sub

Private Sub Command7.Click() '更新记录
Rs.Fileds("Name")=Trim(Text1.Text) 'text控件赋予字段内容
Rs.Fileds("spec")=Trim(Text2.Text)
Rs.Fileds("address")=Trim(Text3.Text)
Rs.Updata '更新记录
MsgBox"数据更新成功!"
Call disprecord
End Sub

Private Sub Command8_Click()
UnLoad Me '卸载窗体
End Sub

Private Sub Form_load()
Set cn = New Connection '声明数据库连接
cn.CuRsorLocation=adUSeClient '客户端游标
cn.Open"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source="& App.Path & "\jxc.mdb;" '查询商品资料为空
Call search_material("")
Set Rs=New adodb.Recordset
Rs.LockType=adLockOptimistic
sqlConnction="provider=microsoft.jet.oledb.4.0;Data Source="& App.Path & "\jxc.mdb;"
Rs.Open"Select * from outStore", sqlConnection,adopendynamic '打开记录集
'显示记录
Call disprecord
End Sub

Private Sub disprecord() '数据库退出
If Rs.AbsolutePosition<0 Then Exit Sub '数据为空
If RS.EOF Then Rs.MoveLast '记录尾部
If RS.EOF Then Rs.MoveFirst ;记录首部
Text1.Text=Rs.Fields("Name")
Text2.Text=Rs.Fields("spec")
Text3.Text=Rs.Fields("address")
End Sub

Private Function checkdata() As Boolean
If Len(Trim(Text1.Text))<=0 Or Len(Trim(Text2.Text))<=0 Then ' 判断数据格式是否正确
MsgBox"输入商品名称和型号!"
checkdata=False
Else
checkdata=True
End If
End Function

Private Sub search_material(ByVal s As String) '查询商品名称,型号
Set Rstemp=New adodb.Recordset '建立记录集
sqlConnction="provider=microsoft.jet.oledb.4.0;Data Source="& App.Path & "\jxc.mdb;"
If Len(Trim(s))>0 Then

'字符串不为空
Rstemp.Open"Select * from material where Name='"Trim(s)& "'"
sqlConnection, adopenKeyset
If Rstemp.RecordCount=1 Then
Text2.Text =Rstemp.Fields("spec") '文本框显示品种
End If
Else '查询字符串为空,记录循环添加到列表框
Rstemp.Open"Select * from material "cn,adopendynamic
If Rstemp.RecordCount > 0 Then '记录集不空
Rstemp.MoveFirst '移动到第一笔记录
Do While Not Rstemp.EOF
Combo1.AddItem Rstemp.Fields("Name") '添加到combox控件
Rstemp.MoveNext '向下移动一笔记录
If Rstem.EOF Then '数据库尾部
End If
Loop
End If
End If


Private Sub outstore()

Set Rstemp=New adodb.Recordset '建立记录集
Rstemp.LockType=adLockOptimistic ’锁定记录模式
sqlConnction="provider=microsoft.jet.oledb.4.0;Data Source="& App.Path & "\jxc.mdb;"
Rstemp.Open"Select * from store where Name='"&Trim(Combo1.Text)&"'
and spec ='"& Trim(Text2.Text)&"'",cn,adopendynamic '打开记录集
If Rstemp.RecordCount=1 Then '库存数量同步增加
Rstemp.Fields("numb")=Rstemp.Fields("numb") - Text3.Text
Rstemp.Updata
End If
Rstemp.Close '关闭记录集
Set Rstemp=Nothing
End sub

Private Sub Text5_GotFocus() '金额为数量和单价乘机
Dim s1 As Integer '声明变量
Dim s1 As Currency
If Len(Trim(Text3.Text))=0 Or Len(Trim(Text4.Text))= 0 Then '判断数据是否为空
Exit Sub '退出出过程
End If
s1 = CSng(Text3.Text)
s2 = CSng(Text4.Text)
Text5.Text=s1 * s2 '计算金额
End Sub


















下载文档原格式

  / 2

相关主题