📄 仓库.frm
字号:
WhatsThisHelpID = 212
Width = 555
End
Begin VB.Label Label2
BackStyle = 0 'Transparent
Caption = "仓库地点:"
Height = 195
Left = 3300
TabIndex = 5
Top = 4140
WhatsThisHelpID = 212
Width = 735
End
Begin VB.Label Label1
BackStyle = 0 'Transparent
Caption = "仓库名称:"
Height = 195
Left = 180
TabIndex = 4
Top = 3600
WhatsThisHelpID = 212
Width = 795
End
End
Attribute VB_Name = "仓库"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private m_IsAdd As Boolean
Private m_canchange
Private SQL As String
Private startcol As Integer
Private endcol As Integer
Private col, row As Integer
Private rowheight As Integer
Private colwidth(14) As Long
Private order(14) As Boolean
Option Explicit
Private Sub initdatagrid1()
DataGrid1.Columns(0).Locked = True '编号
DataGrid1.Columns(3).Locked = True '保管员
DataGrid1.Columns(0).width = 500
DataGrid1.Columns(1).width = 1200
DataGrid1.Columns(2).width = 1200
DataGrid1.Columns(3).width = 1000
DataGrid1.Columns(4).width = 1600
DataGrid1.rowheight = 270
End Sub
Private Sub SaveInit()
startcol = DataGrid1.SelStartCol
endcol = DataGrid1.SelEndCol
col = DataGrid1.LeftCol
row = DataGrid1.row
rowheight = DataGrid1.rowheight
Dim i As Integer
For i = 0 To DataGrid1.Columns.count - 1
colwidth(i) = DataGrid1.Columns(i).width
Next
End Sub
Private Sub ResumeInit()
DataGrid1.SelStartCol = startcol
DataGrid1.SelEndCol = endcol
DataGrid1.Scroll col, row
DataGrid1.rowheight = rowheight
Dim i As Integer
For i = 0 To DataGrid1.Columns.count - 1
DataGrid1.Columns(i).width = colwidth(i)
Next
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 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 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 DataGrid1_SelChange(Cancel As Integer)
m_canchange = True
End Sub
Private Sub Form_Load()
Adodc1.ConnectionString = DataConnectString
SQL = Adodc1.RecordSource
Set DataGrid1.DataSource = Adodc1
Adodc1.Refresh
Adodc2.ConnectionString = DataConnectString
Set DataCombo1.RowSource = Adodc2
DataCombo1.ListField = "姓名"
Adodc2.Refresh
Adodc2.Visible = False
initdatagrid1
m_canchange = True
End Sub
Private Sub DataGrid1_OnAddNew()
DataGrid1.Columns(0).Locked = False
m_canchange = False
m_IsAdd = True
End Sub
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
If m_IsAdd = False Then
DataGrid1.Columns(0).Locked = True
Else
m_IsAdd = False
End If
End Sub
Private Sub 更换保管员_Click()
If m_canchange = False Then Exit Sub
On Error Resume Next
If DataCombo1.Text = "" Then
MsgBox "请选择新的保管员!"
Else
fMainForm.m_checkado.RecordSource = "select 编号 from 职员信息 where 姓名='" + DataCombo1.Text + "'"
fMainForm.m_checkado.Refresh
Dim code As String
'更新的职员编号code
code = fMainForm.m_checkado.Recordset.Fields("编号")
fMainForm.m_checkado.RecordSource = "select 编号,保管员编号 from 仓库 where 编号=" + DataGrid1.Columns(0).Text
fMainForm.m_checkado.Refresh
fMainForm.m_checkado.Recordset.Fields("保管员编号") = code
fMainForm.m_checkado.Recordset.update
fMainForm.m_checkado.Refresh
SaveInit
Adodc1.Refresh
ResumeInit
'写入系统日志
fMainForm.WriteLog ("更换保管员")
End If
End Sub
Private Sub 删除_Click()
On Error GoTo quit
'判断是否其它表单用了待删除的仓库编号
Dim code As String
Dim rs As String
code = DataGrid1.Columns(0).Text
rs = "select 仓库.编号 from 仓库,入库单,出库单,借入单,借出单,调拔单,报损单,库存状况"
rs = rs + " Where 入库单.仓库编号=": rs = rs + code
rs = rs + " or 出库单.仓库编号=": rs = rs + code
rs = rs + " or 借入单.仓库编号=": rs = rs + code
rs = rs + " or 借出单.仓库编号=": rs = rs + code
rs = rs + " or 库存状况.仓库编号=": rs = rs + code
rs = rs + " or 报损单.仓库编号=": rs = rs + code
rs = rs + " or 调拔单.原仓库编号=": rs = rs + code
rs = rs + " or 调拔单.目标仓库编号=": rs = rs + code
fMainForm.m_checkado.RecordSource = rs
fMainForm.m_checkado.Refresh
If fMainForm.m_checkado.Recordset.RecordCount > 0 Then
MsgBox "其它表单用了此仓库信息,不能删除!", vbExclamation
Else
rs = "select * from 仓库 where 仓库.编号="
rs = rs + code
fMainForm.m_checkado.RecordSource = rs
fMainForm.m_checkado.Refresh
fMainForm.m_checkado.Recordset.Delete
fMainForm.m_checkado.Refresh
SaveInit
Adodc1.Refresh
ResumeInit
'写入系统日志
fMainForm.WriteLog ("删除仓库")
End If
quit:
End Sub
Private Sub 新增仓库_Click()
If 仓库名称.Text = "" Then MsgBox "请填写仓库名称!": Exit Sub
If 仓库地点.Text = "" Then MsgBox "请填写仓库地点!": Exit Sub
If DataCombo1.Text = "" Then MsgBox "请选择保管员!": Exit Sub
On Error GoTo quit
fMainForm.m_checkado.RecordSource = "select 编号 from 职员信息 where 姓名='" + DataCombo1.Text + "'"
fMainForm.m_checkado.Refresh
Dim code1, code2 As String
'更新的职员编号code
code2 = fMainForm.m_checkado.Recordset.Fields("编号")
fMainForm.m_checkado.RecordSource = "select * from 仓库"
fMainForm.m_checkado.Refresh
If fMainForm.m_checkado.Recordset.RecordCount > 0 Then
fMainForm.m_checkado.Recordset.MoveLast
code1 = fMainForm.m_checkado.Recordset.Fields("编号").Value + 1
Else
code1 = 1
End If
fMainForm.m_checkado.Recordset.AddNew
fMainForm.m_checkado.Recordset.Fields("编号").Value = code1
fMainForm.m_checkado.Recordset.Fields("仓库名称").Value = 仓库名称.Text
fMainForm.m_checkado.Recordset.Fields("仓库地点").Value = 仓库地点.Text
fMainForm.m_checkado.Recordset.Fields("保管员编号").Value = code2
fMainForm.m_checkado.Recordset.Fields("备注").Value = 备注.Text
fMainForm.m_checkado.Recordset.update
fMainForm.m_checkado.Refresh
SaveInit
Adodc1.Refresh
ResumeInit
'写入系统日志
fMainForm.WriteLog ("新增仓库")
quit:
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -