?? 貨物信息.frm
字號:
ConnectStringType= 3
Appearance = 1
BackColor = 16777215
ForeColor = -2147483640
Orientation = 0
Enabled = -1
Connect = ""
OLEDBString = ""
OLEDBFile = ""
DataSourceName = ""
OtherAttributes = ""
UserName = ""
Password = ""
RecordSource = "select 類別名稱,備注 from 貨物類別"
Caption = ""
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋體"
Size = 11.25
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_Version = 393216
End
End
Attribute VB_Name = "貨物信息"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'****************************************************************************
'人人為我,我為人人
'枕善居收藏整理
'發布日期:2008/05/11
'描 述:天宏鋼構倉庫管理系統 Ver 2.96
'網 站:http://www.Mndsoft.com/ (VB6源碼博客)
'網 站:http://www.VbDnet.com/ (VB.NET源碼博客,主要基于.NET2005)
'e-mail :Mndsoft@163.com
'e-mail :Mndsoft@126.com
'OICQ :88382850
' 如果您有新的好的代碼別忘記給枕善居哦!
'****************************************************************************
Private m_IsAdd1 As Boolean
Private m_IsAdd2 As Boolean
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 InitDataGrid2()
DataGrid2.Columns(0).Locked = True '編號
DataGrid2.Columns(2).Locked = True '類別編號
DataGrid2.Columns(0).width = 500
DataGrid2.Columns(1).width = 1500
DataGrid2.Columns(2).width = 1100
DataGrid2.Columns(3).width = 1200
DataGrid2.Columns(4).width = 800
DataGrid2.Columns(5).width = 800
DataGrid2.Columns(6).width = 800
DataGrid2.Columns(7).width = 1200
If Adodc2.Recordset.RecordCount > 0 Then
Adodc2.Recordset.MoveLast
貨物編號.Text = Adodc2.Recordset.Fields("編號").Value + 1
Adodc2.Recordset.MoveLast
Else
貨物編號.Text = 1
End If
End Sub
Private Sub InitDataGrid3()
DataGrid2.Columns(0).Locked = True '編號
DataGrid2.Columns(2).Locked = True '類別編號
DataGrid2.Columns(0).width = 500
DataGrid2.Columns(1).width = 1500
DataGrid2.Columns(2).width = 800
DataGrid2.Columns(3).width = 1200
DataGrid2.Columns(4).width = 800
DataGrid2.Columns(5).width = 800
DataGrid2.Columns(6).width = 800
DataGrid2.Columns(7).width = 1200
If Adodc2.Recordset.RecordCount > 0 Then
Adodc2.Recordset.MoveLast
Else
貨物編號.Text = 1
End If
End Sub
Private Sub SaveInit()
startcol = DataGrid2.SelStartCol
endcol = DataGrid2.SelEndCol
col = DataGrid2.LeftCol
row = DataGrid2.row
rowheight = DataGrid2.rowheight
Dim i As Integer
For i = 0 To DataGrid2.Columns.count - 1
colwidth(i) = DataGrid2.Columns(i).width
Next
End Sub
Private Sub ResumeInit()
DataGrid2.SelStartCol = startcol
DataGrid2.SelEndCol = endcol
DataGrid2.Scroll col, row
DataGrid2.rowheight = rowheight
Dim i As Integer
For i = 0 To DataGrid2.Columns.count - 1
DataGrid2.Columns(i).width = colwidth(i)
Next
End Sub
Private Sub initdatagrid1()
DataGrid1.Columns(0).Locked = True
DataGrid1.Columns(0).width = 2000
DataGrid1.Columns(1).width = 1200
DataGrid1.AllowRowSizing = False
DataGrid1.Columns(0).AllowSizing = False
DataGrid1.Columns(1).AllowSizing = False
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 Adodc2_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
On Error Resume Next
Adodc2.caption = Adodc2.Recordset.Fields("貨物名稱").Value
End Sub
Private Sub DataGrid1_AfterDelete()
'寫入系統日志
fMainForm.WriteLog ("刪除貨物類別")
End Sub
Private Sub DataGrid1_AfterInsert()
'寫入系統日志
fMainForm.WriteLog ("增加貨物類別")
End Sub
Private Sub DataGrid1_AfterUpdate()
'寫入系統日志
fMainForm.WriteLog ("更新貨物類別")
End Sub
Private Sub DataGrid1_BeforeDelete(Cancel As Integer)
On Error Resume Next
'判斷是否其它表單用了待刪除的貨物類別
Dim name As String
Dim rs As String
name = DataGrid1.Columns(0).Text
rs = "select 貨物信息.編號 from 貨物信息,貨物類別"
rs = rs + " Where 貨物信息.貨物類別='": rs = rs + name: rs = rs + "'"
fMainForm.m_checkado.RecordSource = rs
fMainForm.m_checkado.Refresh
If fMainForm.m_checkado.Recordset.RecordCount > 0 Then
MsgBox "其它表單用了此貨物類別信息,不能刪除!", vbExclamation
Cancel = True
End If
End Sub
Private Sub DataGrid1_OnAddNew()
DataGrid1.Columns(0).Locked = False
m_IsAdd1 = True
End Sub
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
If m_IsAdd1 = False Then
DataGrid1.Columns(0).Locked = True
Else
m_IsAdd1 = False
End If
End Sub
Private Sub DataGrid2_AfterColUpdate(ByVal ColIndex As Integer)
If ColIndex = 0 Then DataGrid2.Columns(2).Value = 貨物類別.Text
End Sub
Private Sub DataGrid2_AfterDelete()
'寫入系統日志
fMainForm.WriteLog ("刪除貨物")
End Sub
Private Sub DataGrid2_AfterUpdate()
'寫入系統日志
fMainForm.WriteLog ("更新貨物")
End Sub
Private Sub DataGrid2_BeforeDelete(Cancel As Integer)
On Error Resume Next
'判斷是否其它表單用了待刪除的貨物編號
Dim code As String
Dim rs As String
code = DataGrid2.Columns(0).Text
rs = ""
rs = rs + "select 貨物編號 from 入庫單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 出庫單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 借入單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 借出單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 調拔單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 報損單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 庫存狀況 where 貨物編號=" + Str(code)
fMainForm.m_checkado.RecordSource = rs
fMainForm.m_checkado.Refresh
If fMainForm.m_checkado.Recordset.RecordCount > 0 Then
MsgBox "其它表單用了此貨物信息,不能刪除!", vbExclamation
Cancel = True
End If
End Sub
Private Sub DataGrid2_HeadClick(ByVal ColIndex As Integer)
On Error Resume Next
Dim caption As String
caption = DataGrid2.Columns(ColIndex).caption
If caption = "存放倉庫" Then caption = "倉庫名稱"
Adodc2.RecordSource = " select 編號,貨物名稱,貨物類別,貨物規格,計量單位,最低限量,最高限量,備注 from 貨物信息" + " order by " + caption
order(ColIndex) = True - order(ColIndex)
If order(ColIndex) = True Then
Adodc2.RecordSource = Adodc2.RecordSource + " ASC"
Else
Adodc2.RecordSource = Adodc2.RecordSource + " DESC"
End If
SaveInit
Adodc2.Refresh
ResumeInit
End Sub
Private Sub DataGrid2_OnAddNew()
DataGrid2.Columns(0).Locked = False
m_IsAdd2 = True
End Sub
Private Sub DataGrid2_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
If m_IsAdd2 = False Then
DataGrid2.Columns(0).Locked = True
Else
m_IsAdd2 = False
End If
End Sub
Private Sub Form_Load()
On Error GoTo quit
'初始化貨物類別
Adodc1.ConnectionString = DataConnectString
Set DataGrid1.DataSource = Adodc1
Adodc1.Refresh
'Adodc1.Visible = False
initdatagrid1
'初始化貨物信息
Adodc2.ConnectionString = DataConnectString
Set DataGrid2.DataSource = Adodc2
Adodc2.Refresh
' Adodc2.Visible = False
'設置DataGrid2屬性
InitDataGrid2
'增加新貨物控件
Set 貨物類別.DataSource = Adodc1
貨物類別.DataField = "類別名稱"
quit:
End Sub
Private Sub 更換類別_Click()
DataGrid2.Columns(2).Value = 貨物類別.Text
'寫入系統日志
fMainForm.WriteLog ("更新貨物類別")
End Sub
Private Sub 貨物類別_GotFocus()
貨物類別.Enabled = False
End Sub
Private Sub 貨物類別_LostFocus()
貨物類別.Enabled = True
End Sub
Private Sub 刪除貨物_Click()
On Error Resume Next
'判斷是否其它表單用了待刪除的貨物編號
Dim code As String
Dim rs As String
code = DataGrid2.Columns(0).Text
rs = ""
rs = rs + "select 貨物編號 from 入庫單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 出庫單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 借入單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 借出單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 調拔單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 報損單 where 貨物編號=" + Str(code): rs = rs + " union "
rs = rs + "select 貨物編號 from 庫存狀況 where 貨物編號=" + Str(code)
fMainForm.m_checkado.RecordSource = rs
fMainForm.m_checkado.Refresh
If fMainForm.m_checkado.Recordset.RecordCount > 0 Then
MsgBox "其它表單用了此貨物信息,不能刪除!", vbExclamation
Else
fMainForm.m_checkado.RecordSource = "select * from 貨物信息 where 編號=" + DataGrid2.Columns(0).Text
fMainForm.m_checkado.Refresh
fMainForm.m_checkado.Recordset.Delete
SaveInit
Adodc2.Refresh
ResumeInit
'寫入系統日志
fMainForm.WriteLog ("刪除貨物")
End If
End Sub
Private Sub 增加新貨物_Click()
If 貨物編號.Text = "" Then MsgBox "請填寫貨物編號!", vbQuestion: Exit Sub
If 貨物名稱.Text = "" Then MsgBox "請填寫貨物名稱!", vbQuestion: Exit Sub
If 最低限量.Text = "" Then MsgBox "請填寫最低限量!", vbQuestion: Exit Sub
If 最高限量.Text = "" Then MsgBox "請填寫最高限量!", vbQuestion: Exit Sub
If 計量單位.Text = "" Then MsgBox "請填寫計量單位!", vbQuestion: Exit Sub
On Error Resume Next
SaveInit
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("編號") = 貨物編號.Text
Adodc2.Recordset.Fields("貨物名稱") = 貨物名稱.Text
Adodc2.Recordset.Fields("貨物類別") = DataGrid1.Columns(0).Text
Adodc2.Recordset.Fields("貨物規格") = 貨物規格.Text
Adodc2.Recordset.Fields("計量單位") = 計量單位.Text
Adodc2.Recordset.Fields("最低限量") = 最低限量.Text
Adodc2.Recordset.Fields("最高限量") = 最高限量.Text
Adodc2.Recordset.Fields("備注") = 備注.Text
Adodc2.Recordset.update
Adodc2.Recordset.Requery
InitDataGrid3
Adodc2.Refresh
ResumeInit
貨物編號.Text = 貨物編號.Text + 1
'寫入系統日志
fMainForm.WriteLog ("增加新貨物")
MsgBox "保存成功", vbOKOnly, ""
'同時把文本清空,以便填寫下一個
貨物名稱.Text = ""
計量單位.Text = ""
貨物規格.Text = ""
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -