⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 仓库.frm

📁 关于仓库物流管理方面
💻 FRM
📖 第 1 页 / 共 2 页
字号:
      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 + -