📄 入库单.frm
字号:
DataGrid1.Columns(0).Locked = True
DataGrid1.Columns(1).Locked = True
DataGrid1.Columns(2).Locked = True
DataGrid1.Columns(3).Locked = True
DataGrid1.Columns(4).Locked = True
DataGrid1.Columns(6).Locked = True
DataGrid1.Columns(7).Locked = True
DataGrid1.Columns(8).Locked = True
DataGrid1.Columns(9).Locked = True
DataGrid1.Columns(10).Locked = True
DataGrid1.Columns(11).Locked = True
DataGrid1.Columns(12).Locked = True
End Sub
Private Sub initdatagrid1()
DataGrid1.Columns(0).Width = 500
DataGrid1.Columns(1).Width = 1000
DataGrid1.Columns(2).Width = 1000
DataGrid1.Columns(3).Width = 1000
DataGrid1.Columns(4).Width = 1000
DataGrid1.Columns(5).Width = 1000
DataGrid1.Columns(6).Width = 800
DataGrid1.Columns(7).Width = 800
DataGrid1.Columns(8).Width = 800
DataGrid1.Columns(9).Width = 800
DataGrid1.Columns(10).Width = 800
DataGrid1.Columns(11).Width = 800
DataGrid1.Columns(12).Width = 800
DataGrid1.Columns(13).Width = 800
DataGrid1.Columns(14).Width = 800
DataGrid1.Columns(0).Locked = True
DataGrid1.Columns(1).Locked = True
DataGrid1.Columns(2).Locked = True
DataGrid1.Columns(3).Locked = True
DataGrid1.Columns(4).Locked = True
DataGrid1.Columns(6).Locked = True
DataGrid1.Columns(7).Locked = True
DataGrid1.Columns(8).Locked = True
DataGrid1.Columns(9).Locked = True
DataGrid1.Columns(10).Locked = True
DataGrid1.Columns(11).Locked = True
DataGrid1.Columns(12).Locked = True
DataGrid1.rowheight = 270
End Sub
Private Sub Adodc1_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
On Error Resume Next
Adodc1.caption = Adodc1.Recordset.Fields("货物名称").Value
End Sub
Private Sub B新增入库单_Click()
新增入库单.Show vbModal
SaveInit
Adodc1.Refresh
ResumeInit
End Sub
Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
On Error Resume Next
Dim caption As String
caption = DataGrid1.Columns(ColIndex).caption
If caption = "经办人" Then caption = "姓名"
If caption = "金额" Then Exit Sub
If caption = "备注" Then caption = "入库单.备注"
If caption = "编号" Then caption = "入库单.编号"
If caption = "供应商" Then caption = "供应商名称"
If caption = "存放仓库" Then caption = "仓库名称"
Adodc1.RecordSource = SQL + " order by " + caption
order(ColIndex) = True - order(ColIndex)
If order(ColIndex) = True Then
Adodc1.RecordSource = Adodc1.RecordSource + " ASC"
Else
Adodc1.RecordSource = Adodc1.RecordSource + " DESC"
End If
SaveInit
Adodc1.Refresh
ResumeInit
End Sub
Private Sub Form_Load()
Adodc1.ConnectionString = DataConnectString
SQL = Adodc1.RecordSource
Set DataGrid1.DataSource = Adodc1
Adodc1.Refresh
initdatagrid1
'通过权限来初始化控件性质
If 权限类别(0) = 0 Then B新增入库单.Enabled = False
If 权限类别(1) = 0 Then DataGrid1.AllowUpdate = False
If 权限类别(2) = 0 Then
退出入库单.Enabled = False
删除入库单.Enabled = False
End If
If 权限类别(8) = 0 Then 打印入库单.Enabled = False
End Sub
Private Sub 打印入库单_Click()
On Error GoTo quit
Dim p As New 新增入库单
p.编号 = DataGrid1.Columns(0).Value
p.Show vbModal
Unload p
quit:
End Sub
Private Sub 删除入库单_Click()
On Error GoTo quit
If DataGrid1.Columns(12).Text = "已退出" Then GoTo con
If MsgBox("建议用[退出入库单],而不要直接删除,以免数据丢失.您确信要删除该入库单吗?", vbYesNo Or vbQuestion) = vbNo Then Exit Sub
con:
On Error Resume Next
Dim code, code1, code2 As Long
code = DataGrid1.Columns(0).Text
fMainForm.m_checkado.RecordSource = "select 货物编号,入库数量,仓库编号 from 入库单 where 编号=" + Str(code)
fMainForm.m_checkado.Refresh
Dim num1, num2 As Long
code1 = fMainForm.m_checkado.Recordset.Fields("货物编号").Value
num1 = fMainForm.m_checkado.Recordset.Fields("入库数量").Value
code2 = fMainForm.m_checkado.Recordset.Fields("仓库编号").Value
'如果是已退出入库单则直接删除
If DataGrid1.Columns(12).Text = "已退出" Then
If MsgBox("您确信要删除该入库退出单吗?", vbYesNo Or vbQuestion) = vbNo Then Exit Sub
fMainForm.m_checkado.RecordSource = "select * from 入库单 where 编号=" + Str(code)
fMainForm.m_checkado.Refresh
fMainForm.m_checkado.Recordset.Delete
fMainForm.m_checkado.Refresh
SaveInit
Adodc1.Refresh
ResumeInit
Exit Sub
End If
fMainForm.m_checkado.RecordSource = "select 库存数量 from 库存状况 where 货物编号=" + Str(code1) + " and 仓库编号=" + Str(code2)
fMainForm.m_checkado.Refresh
'当前库存数量num2
num2 = fMainForm.m_checkado.Recordset.Fields("库存数量").Value
'库存不足
If num2 < num1 Then
If MsgBox("库存不足,库存量为" + Str(num2) + ",需求量为" + Str(num1) + "," + "要忽略它并强制删除吗?", vbQuestion Or vbYesNo) = vbNo Then Exit Sub
End If
'更新库存状况
If num2 - num1 > 0 Then
fMainForm.m_checkado.Recordset.Fields("库存数量").Value = num2 - num1
fMainForm.m_checkado.Recordset.update
Else '如果库存为零清空
fMainForm.m_checkado.Recordset.Delete
End If
fMainForm.m_checkado.Refresh
'更新入库单
fMainForm.m_checkado.RecordSource = "select * from 入库单 where 编号=" + Str(code)
fMainForm.m_checkado.Refresh
fMainForm.m_checkado.Recordset.Delete
fMainForm.m_checkado.Refresh
SaveInit
Adodc1.Refresh
ResumeInit
MsgBox "入库单删除成功!"
'写入系统日志
fMainForm.WriteLog ("删除入库单")
quit:
End Sub
Private Sub 退出入库单_Click()
On Error GoTo quit
Dim code, code1, code2 As Long
code = DataGrid1.Columns(0).Text
If DataGrid1.Columns(12).Text = "已退出" Then
MsgBox "该入库单已退出!"
Exit Sub
End If
On Error Resume Next
fMainForm.m_checkado.RecordSource = "select 货物编号,入库数量,仓库编号 from 入库单 where 编号=" + Str(code)
fMainForm.m_checkado.Refresh
Dim num1, num2 As Long
code1 = fMainForm.m_checkado.Recordset.Fields("货物编号").Value
num1 = fMainForm.m_checkado.Recordset.Fields("入库数量").Value
code2 = fMainForm.m_checkado.Recordset.Fields("仓库编号").Value
fMainForm.m_checkado.RecordSource = "select 库存数量 from 库存状况 where 货物编号=" + Str(code1) + " and 仓库编号=" + Str(code2)
fMainForm.m_checkado.Refresh
'当前库存数量num2
num2 = fMainForm.m_checkado.Recordset.Fields("库存数量").Value
'库存不足
If num2 < num1 Then
MsgBox "库存不足,库存量为" + Str(num2) + ",需求量为" + Str(num1) + "."
Exit Sub
Else
'更新库存状况
If num2 - num1 > 0 Then
fMainForm.m_checkado.Recordset.Fields("库存数量").Value = num2 - num1
fMainForm.m_checkado.Recordset.update
Else '如果库存为零清空
fMainForm.m_checkado.Recordset.Delete
End If
fMainForm.m_checkado.Refresh
'更新入库单
fMainForm.m_checkado.RecordSource = "select * from 入库单 where 编号=" + Str(code)
fMainForm.m_checkado.Refresh
fMainForm.m_checkado.Recordset.Fields("定单状况") = "已退出"
fMainForm.m_checkado.Recordset.update
fMainForm.m_checkado.Refresh
SaveInit
Adodc1.Refresh
ResumeInit
MsgBox "入库单退出成功!"
'写入系统日志
fMainForm.WriteLog ("退出入库单")
End If
quit:
End Sub
'此源码由程序太平洋收集整理发布,任何人都可自由转载,但需保留本站信息
'╭⌒╮┅~ ¤ 欢迎光临程序太平洋╭⌒╮
'╭⌒╭⌒╮╭⌒╮~╭⌒╮ ︶ ,︶︶
',︶︶︶︶,''︶~~ ,''~︶︶ ,''
'╔ ╱◥███◣═╬╬╬╬╬╬╬╬╬╗
'╬ ︱田︱田 田 ︱ ╬
'╬ http://www.5ivb.net ╬
'╬ ╭○╮● ╬
'╬ /■\/■\ ╬
'╬ <| || 有希望,就有成功! ╬
'╬ ╬
'╚╬╬╬╬╬╬╬╬╬╬╗ ╔╬╬╬╬╝
'
'说明:
'专业提供VB、.NET、Delphi、ASP、PB源码下载
'包括:程序源码,控件,商业源码,系统方案,开发工具,书籍教程,技术文档
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -