📄 frmbasicstock.frm
字号:
Begin MSHierarchicalFlexGridLib.MSHFlexGrid MSHF1
Height = 8115
Left = 120
TabIndex = 31
Top = 240
Width = 14775
_ExtentX = 26061
_ExtentY = 14314
_Version = 393216
AllowUserResizing= 1
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_NumberOfBands = 1
_Band(0).Cols = 2
End
End
End
End
Attribute VB_Name = "frmBasicStock"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim lngrow As Integer
Public newItem As Boolean
Private Sub ActiveBar21_ToolClick(ByVal Tool As ActiveBar2LibraryCtl.Tool)
Select Case Tool.Name
Case "cmdAdd":
NewOperatorInf
Case "cmdEdit":
EditOperatorInf
Case "cmdDel":
DelOperatorInf
Case "cmdFind"
fraFind.Visible = True
Case "cmdCancel":
Unload Me
Case "cmdUnStock"
frmUnStock.Show
Case "cmdExport":
Dim strFile As String
frmMain.CDFile.ShowOpen
strFile = frmMain.CDFile.FileName
If strFile = "" Then Exit Sub
ExportExcel MSHF1, strFile
End Select
End Sub
Private Function FormatQuery() As String
FormatQuery = "select * from tBasicStock"
If Trim$(txtProductCode.Text) = "" Then
FormatQuery = FormatQuery & " where ProductCode<>''"
Else
FormatQuery = FormatQuery & " where ProductCode='" & txtProductCode.Text & "'"
End If
If Trim$(txtSupplier) <> "" Then
FormatQuery = FormatQuery & " and Supplier='" & Trim(txtSupplier.Text) & "'"
End If
If Trim$(txtDyeWorks) <> "" Then
FormatQuery = FormatQuery & " and DyeWorks" & objDatabase.FormatLikeSQL(txtDyeWorks.Text)
End If
If Trim$(txtColor) <> "" Then
FormatQuery = FormatQuery & " and Color" & objDatabase.FormatLikeSQL(txtColor.Text)
End If
If Trim$(txtFinish) <> "" Then
FormatQuery = FormatQuery & " and Finish" & objDatabase.FormatLikeSQL(txtFinish.Text)
End If
If Trim$(txtwidth) <> "" Then
FormatQuery = FormatQuery & " and Width" & objDatabase.FormatLikeSQL(txtwidth.Text)
End If
If Trim$(txtYardAges) <> "" Then
FormatQuery = FormatQuery & " and YardAges" & objDatabase.FormatLikeSQL(txtYardAges.Text)
End If
If Trim$(txtRemark1) <> "" Then
FormatQuery = FormatQuery & " and Remark1" & objDatabase.FormatLikeSQL(txtRemark1.Text)
End If
If Trim$(txtRemark2) <> "" Then
FormatQuery = FormatQuery & " and Remark2" & objDatabase.FormatLikeSQL(txtRemark2.Text)
End If
If chkFoundDate.Value = vbChecked Then
FormatQuery = FormatQuery & " and UpdateDate >= '" & DTFoundDate.Value & "'"
FormatQuery = FormatQuery & " and UpdateDate <='" & DTFoundDateEnd.Value & "'"
End If
End Function
Public Sub FillMshf1(ByVal strSql As String)
Dim rs As ADODB.Recordset
Dim lngrow As Long
Screen.MousePointer = vbHourglass
On Error GoTo errLabel
Set rs = New ADODB.Recordset
With rs
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
Set .ActiveConnection = Cn
End With
rs.Open strSql
With MSHF1
.Redraw = False
.Rows = 2
.Cols = 13
.Clear
'初始化
.WordWrap = False
.TextMatrix(0, 0) = "序号"
.TextMatrix(0, 1) = ""
.TextMatrix(0, 2) = "產品編號"
.ColWidth(2) = 1500
.TextMatrix(0, 3) = "供應商"
.ColWidth(3) = 1500
.TextMatrix(0, 4) = "DyeWorks"
.ColWidth(4) = 1200
.TextMatrix(0, 5) = "顏色"
.ColWidth(5) = 1500
.TextMatrix(0, 6) = "整理"
.ColWidth(6) = 2500
.TextMatrix(0, 7) = "幅寬"
.ColWidth(7) = 1500
.TextMatrix(0, 8) = "Yardages"
.ColWidth(8) = 1200
.TextMatrix(0, 9) = "備注1"
.ColWidth(9) = 2500
.TextMatrix(0, 10) = "備註2"
.ColWidth(10) = 2500
.TextMatrix(0, 11) = "填寫人"
.ColWidth(11) = 1500
.TextMatrix(0, 12) = "填入日期"
.ColWidth(12) = 1500
.ColWidth(0) = 600
.ColWidth(1) = 0
'.....................................................
.Rows = rs.RecordCount + 2
On Error Resume Next
For lngrow = 2 To rs.RecordCount + 1
.TextMatrix(lngrow, 0) = lngrow - 1
.TextMatrix(lngrow, 1) = NullValue(rs.Fields!ID)
.TextMatrix(lngrow, 2) = Trim$(NullValue(rs.Fields!productCode))
.TextMatrix(lngrow, 3) = Trim$(NullValue(rs.Fields!Supplier))
.TextMatrix(lngrow, 4) = Trim$(NullValue(rs.Fields!DyeWorks))
.TextMatrix(lngrow, 5) = Trim$(NullValue(rs.Fields!Color))
.TextMatrix(lngrow, 6) = Trim$(NullValue(rs.Fields!Finish))
.TextMatrix(lngrow, 7) = Trim$(NullValue(rs.Fields!Width))
.TextMatrix(lngrow, 8) = Trim$(NullValue(rs.Fields!YardAges))
.TextMatrix(lngrow, 9) = Trim$(NullValue(rs.Fields!Remark1))
.TextMatrix(lngrow, 10) = Trim$(NullValue(rs.Fields!Remark2))
.TextMatrix(lngrow, 11) = Trim$(NullValue(rs.Fields!UpdateOperator))
.TextMatrix(lngrow, 12) = FormatDateStr(rs.Fields!UpdateDate, "long")
rs.MoveNext
Next
lngrow = 0
.TextMatrix(1, 0) = "总计"
.TextMatrix(1, 2) = .Rows - 2
SetItemBackColor MSHF1
.Redraw = True
End With
rs.Close
remClear:
Set rs = Nothing
Screen.MousePointer = vbDefault
Exit Sub
errLabel:
On Error Resume Next
MSHF1.Redraw = True
GoTo remClear
End Sub
Private Sub cmdCancel_Click()
fraFind.Visible = False
End Sub
Private Sub CmdFind_Click()
FillMshf1 FormatQuery
fraFind.Visible = False
End Sub
Private Sub cmdFindAll_Click()
FillMshf1 ("select * from tBasicStock")
fraFind.Visible = False
End Sub
Private Sub Form_Load()
'设置窗口大小
FormInit Me, True
SetObjectWH Frame1
SetObjectWH MSHF1
FillMshf1 ("select * from tBasicStock")
ActiveBar21.Bands("toolbar").Tools.item("cmdDel").Enabled = False
ActiveBar21.Bands("toolbar").Tools.item("cmdEdit").Enabled = False
InitTitle
HookWheel Me.hwnd
End Sub
Private Sub InitTitle()
Label11.Caption = "成品編號"
Label16.Caption = "供應商"
Label3.item(2).Caption = "Dyeworks"
Label2.item(1).Caption = "顏色"
Label17.Caption = "整理"
Label18.Caption = "幅寬"
Label19.Caption = "Yardages"
Label22.Caption = "備註1"
Label23.Caption = "備註2"
Label4.Caption = "創建日期"
Label2.item(3).Caption = "至"
Label12.Caption = "模糊查詢項"
cmdFindAll.Caption = "全部 &A"
cmdFind.Caption = "查詢 &F"
cmdCancel.Caption = "取消 &C"
Me.Caption = "客戶報價信息"
End Sub
Private Sub NewOperatorInf()
frmBasicStockInfo.newItem = True
frmBasicStockInfo.InitInfo ""
frmBasicStockInfo.Show
ActiveBar21.Bands("toolbar").Tools.item("cmdDel").Enabled = False
ActiveBar21.Bands("toolbar").Tools.item("cmdEdit").Enabled = False
End Sub
Private Sub EditOperatorInf()
frmBasicStockInfo.newItem = False
If lngrow = 1 Then Exit Sub
frmBasicStockInfo.InitInfo MSHF1.TextMatrix(lngrow, 1)
frmBasicStockInfo.Show
ActiveBar21.Bands("toolbar").Tools.item("cmdDel").Enabled = False
ActiveBar21.Bands("toolbar").Tools.item("cmdEdit").Enabled = False
End Sub
Private Sub DelOperatorInf()
Dim strSql As String
Dim rs As New ADODB.Recordset
Dim rsobj As New ADODB.Recordset
If lngrow > MSHF1.Rows - 1 Then Exit Sub
If lngrow <= 1 Then
MsgBox "请选中一条要删除的记录!", vbExclamation, "提示"
Exit Sub
End If
On Error GoTo errHandle
If MsgBox("确定要刪除?", vbQuestion + vbYesNo, "询问") = vbNo Then
Exit Sub
Else
rs.Open "select * from tUnBasicStock", Cn, 1, 3
rsobj.Open "select * from tBasicStock where id=" & MSHF1.TextMatrix(lngrow, 1), Cn, 1, 3
rs.AddNew
rs.Fields!productCode = NullValue(rsobj.Fields!productCode)
rs.Fields!Supplier = NullValue(rsobj.Fields!Supplier)
rs.Fields!DyeWorks = NullValue(rsobj.Fields!DyeWorks)
rs.Fields!Color = NullValue(rsobj.Fields!Color)
rs.Fields!Finish = NullValue(rsobj.Fields!Finish)
rs.Fields!Width = NullValue(rsobj.Fields!Width)
rs.Fields!YardAges = NullValue(rsobj.Fields!YardAges)
rs.Fields!Remark1 = NullValue(rsobj.Fields!Remark1)
rs.Fields!Remark2 = NullValue(rsobj.Fields!Remark2)
rs.Fields!UpdateOperator = NullValue(rsobj.Fields!UpdateOperator)
rs.Fields!UpdateDate = NullValue(rsobj.Fields!UpdateDate)
rs.Update
rs.Close
rsobj.Close
Set rs = Nothing
Set rsobj = Nothing
strSql = "delete from tBasicStock where id=" & MSHF1.TextMatrix(lngrow, 1)
objDatabase.ExecCmd strSql
MsgBox "刪除成功!", vbInformation, "提示"
End If
FillMshf1 ("select * from tBasicStock")
ActiveBar21.Bands("toolbar").Tools.item("cmdDel").Enabled = False
ActiveBar21.Bands("toolbar").Tools.item("cmdEdit").Enabled = False
Exit Sub
errHandle:
objDatabase.DatabaseError
End Sub
Private Sub MSHF1_Click()
lngrow = Val(MSHF1.row)
If lngrow = 1 Then
MSHF1.Sort = 1
Else
MSHF1.row = lngrow
MSHF1.col = 0
MSHF1.ColSel = MSHF1.Cols - 1
ActiveBar21.Bands("toolbar").Tools.item("cmdDel").Enabled = True
ActiveBar21.Bands("toolbar").Tools.item("cmdEdit").Enabled = True
End If
End Sub
Private Sub MSHF1_DblClick()
EditOperatorInf
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -