📄 cg_yl_thd.frm
字号:
Private Sub cmdxq_Click() '向前
On Error GoTo GoPrevError
If Not AdoprimaryRs.Recordset.BOF Then AdoprimaryRs.Recordset.MovePrevious
If AdoprimaryRs.Recordset.BOF And AdoprimaryRs.Recordset.RecordCount > 0 Then
Beep
AdoprimaryRs.Recordset.MoveFirst
End If
Exit Sub
GoPrevError:
MsgBox Err.Description
End Sub
Private Sub cmdmd_Click() '末端
If AdoprimaryRs.Recordset.RecordCount > 0 Then
If AdoprimaryRs.Recordset.EOF = False Then
AdoprimaryRs.Recordset.MoveLast
Else
AdoprimaryRs.Recordset.MovePrevious
End If
Else
Exit Sub
End If
End Sub
Private Sub combo_KeyPress(Index As Integer, KeyAscii As Integer)
If KeyAscii = 13 Then ' 按回车
KeyAscii = 0
SendKeys "{TAB}"
End If
End Sub
Private Sub Form_Load() '列表框数据
Me.Width = main_FRM.Picture1.Width - 30
Me.Top = main_FRM.ActiveBar21.Bands("Band7").Height * 2.5 - 65
Me.Height = main_FRM.Picture1.Height - 300
Me.Left = main_FRM.Picture1.Left + 15
Cmdcancel.Enabled = False
CmdOK.Enabled = False
'Call tree_load
AdoprimaryRs.ConnectionString = Conn_Str
AdoprimaryRs.RecordSource = "select * FROM cg_thdt"
AdoprimaryRs.Refresh
For i = 0 To Text1.Count - 1
Text1(i).Locked = ture
Next i
For i = 0 To Combo.Count - 1
Combo(i).Locked = ture
Next i
End Sub
Private Sub Form_Unload(Cancel As Integer)
AdoprimaryRs.Recordset.Close
End Sub
Private Sub TDBGrid1_Change()
If TDBGrid1.Col = 0 Then
Frame4.Visible = True
ADO_cP_cx.ConnectionString = Conn_Str
ADO_cP_cx.RecordSource = "SELECT dbo.cg_SHDt.shdbh, dbo.cg_SHDt.lhdh, dbo.cg_SHDt.gysmc, dbo.cg_SHDt.djrq,dbo.cg_SHDt.bizh, dbo.cg_SHDt.hl, dbo.cg_SHDt.zjsl, dbo.cg_SHDt.zjje,dbo.cg_SHDt.fkfs, dbo.cg_SHDt.zffs, dbo.cg_SHD.cgdbh, dbo.cg_SHD.ylbh,dbo.cg_SHD.ylmc, dbo.cg_SHD.gg, dbo.cg_SHD.yanse, dbo.cg_SHD.gyslh,dbo.cg_SHD.dw, dbo.cg_SHD.dj, dbo.cg_SHD.sl, dbo.cg_SHD.je, isnull(dbo.cg_SHD.je,0)*isnull(dbo.cg_SHDt.hl,0)as bzje,dbo.cg_SHD.beizhu, dbo.cg_SHD.sxh,dbo.cg_SHD.caizh,dbo.cg_SHD.shipi, dbo.cg_SHD.zl,dbo.cg_SHD.bacp,dbo.cg_SHDt.gysbh FROM dbo.cg_SHD INNER JOIN dbo.cg_SHDt ON dbo.cg_SHD.shdbh = dbo.cg_SHDt.shdbh where dbo.cg_SHDt.shdbh like '%" & TDBGrid1.Columns(0).Text & "%' and dbo.cg_SHDt.gysbh='" & Text1(1).Text & "'"
ADO_cP_cx.Refresh
End If
End Sub
Private Sub TDBGrid1_DblClick()
If TDBGrid1.AllowArrows = True And Cmdadd.Enabled = False Then
TDBGrid1.Columns(11).Value = Trim(Text1(0).Text)
TDBGrid1.Columns(10).Value = 0
TDBGrid1.Columns(8).Value = 0
TDBGrid1.Columns(15).Value = TDBGrid1.Row + 1
End If
End Sub
Private Sub TDBGrid1_BeforeColupdate(ByVal ColIndex As Integer, OldValue As Variant, Cancel As Integer)
If ColIndex = 7 Or ColIndex = 8 Or ColIndex = 10 Then
TDBGrid1.Columns(10).Value = Val(TDBGrid1.Columns(7).Value) * Val(TDBGrid1.Columns(8).Value)
'Adodc_body_general.Recordset.updateBatch adAffectAll
End If
End Sub
Private Sub TDBGrid1_KeyDown(KeyCode As Integer, Shift As Integer) '表格记录删除 2002年9月18日 曹汉华
If Cmdadd.Enabled = False Then
If KeyCode = 46 Then
Adodc_body_general.Recordset.Delete
Adodc_body_general.Recordset.UpdateBatch adAffectAll
Adodc_body_general.Refresh
End If
End If
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If Cmdcancel.Enabled = True Then
If UnloadMode <> VBRUN.QueryUnloadConstants.vbFormCode Then
Cancel = 1
Exit Sub
End If
End If
End Sub
Private Sub TDBGrid2_Click()
On Error Resume Next
If TDBGrid1.AllowArrows = True And Cmdadd.Enabled = False Then
TDBGrid1.Columns(0).Value = TDBGrid2.Columns(0).Value
TDBGrid1.Columns(1).Value = TDBGrid2.Columns(1).Value
TDBGrid1.Columns(2).Value = TDBGrid2.Columns(2).Value
TDBGrid1.Columns(3).Value = TDBGrid2.Columns(4).Value
TDBGrid1.Columns(4).Value = TDBGrid2.Columns(5).Value
TDBGrid1.Columns(5).Value = TDBGrid2.Columns(6).Value
TDBGrid1.Columns(6).Value = TDBGrid2.Columns(7).Value
TDBGrid1.Columns(7).Value = TDBGrid2.Columns(8).Value
TDBGrid1.Columns(11).Value = Trim(Text1(0).Text)
TDBGrid1.Columns(12).Value = TDBGrid2.Columns(3).Value
TDBGrid1.Columns(13).Value = TDBGrid2.Columns(10).Value
TDBGrid1.Columns(14).Value = TDBGrid2.Columns(11).Value
TDBGrid1.Columns(16).Value = TDBGrid2.Columns(12).Value
TDBGrid1.Columns(10).Value = 0
TDBGrid1.Columns(8).Value = 0
TDBGrid1.Columns(9).Value = " "
TDBGrid1.Columns(15).Value = TDBGrid1.Row + 1
Adodc_body_general.Recordset.Fields("bacp").Value = TDBGrid2.Columns(13).Value
End If
End Sub
Private Sub Text1_Change(Index As Integer)
If Index = 1 And Cmdadd.Enabled = False Then
Set khdk = New Adodb.Recordset
khdk.Open "select * from sys_gyszl where gysbh='" & Text1(1).Text & "'", DB, adOpenStatic, adLockBatchOptimistic
If khdk.RecordCount >= 1 Then
khdk.MoveFirst
Text1(1).Text = khdk!gysbh
Text1(2).Text = khdk!gysmc
Text1(4).Text = khdk!Phone
Text1(5).Text = khdk!Fax
End If
End If
If Index = 0 Then
Adodc_body_general.ConnectionString = Conn_Str
Adodc_body_general.RecordSource = "select * from cg_thd with (nolock) where THDh='" & Text1(0).Text & "'"
Adodc_body_general.Refresh
End If
End Sub
Private Sub text1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
If KeyCode = 40 Then '向下箭头
If Index + 1 < Text1.Count Then
Text1(Index + 1).SetFocus
Else
Text1(0).SetFocus
End If
End If
If KeyCode = 38 Then '向上箭头
If Index - 1 >= 0 Then
Text1(Index - 1).SetFocus
Else
Text1(Text1.Count - 1).SetFocus
End If
End If
End Sub
Private Sub Cmdadd_Click() '添加
Dim DdBh_Ado As Recordset
Cmddelete.Enabled = False
Cmdadd.Enabled = False
Cmdedit.Enabled = False
Cmdreturn.Enabled = False
CmdOK.Enabled = True
Cmdcancel.Enabled = True
TDBGrid1.AllowDelete = True
TDBGrid1.AllowUpdate = True
ni = Right(Year(Date), 2)
If Len(Month(Date)) < 2 Then
yue = "0" & Month(Date)
Else
yue = Month(Date)
End If
If Len(Day(Date)) < 2 Then
ri = "0" & Day(Date)
Else
ri = Day(Date)
End If
Set DdBh_Ado = New Recordset
DdBh_Ado.Open "select distinct thdh from cg_thdt where year(djrq)='" & Year(Date) & "'and month(djrq)='" & Month(Date) & "' order by thdh", DB, adOpenStatic
If DdBh_Ado.RecordCount < 1 Then
bh = "00001"
Else
DdBh_Ado.MoveLast
bhx = Trim(Str(Val(Right(DdBh_Ado.Fields("thdh").Value, 5)) + 1))
If Len(bhx) = 1 Then
bh = "0000" & bhx
End If
If Len(bhx) = 2 Then
bh = "000" + bhx
End If
If Len(bhx) = 3 Then
bh = "00" + bhx
End If
If Len(bhx) = 4 Then
bh = "0" + bhx
End If
If Len(bhx) > 4 Then
bh = bhx
End If
End If
On Error GoTo AddErr
If AdoprimaryRs.Recordset.RecordCount > 0 Then
AdoprimaryRs.Recordset.MoveLast
End If
AdoprimaryRs.Recordset.AddNew
For i = 0 To Text1.Count - 1
Text1(i).Locked = False
Next i
For i = 0 To Combo.Count - 1
Combo(i).Locked = False
Combo(i).Enabled = True
Next i
Text1(0).SetFocus
Text1(0).Text = "TH" & ni & yue & bh
Text1(3).Text = VBA.Date
'Text(1).Text = Combo2.Text
Exit Sub
AddErr:
MsgBox Err.Description
End Sub
Private Sub cmdDelete_Click() '删除
On Error Resume Next
If MsgBox("是否真的删除当前记录 ?", vbYesNo + 32, "系统提示") = vbYes Then
Ddcode = Trim(Text1(0).Text)
Adodc_body_general.Recordset.ActiveConnection.Execute "delete from cg_thd where thdh='" & Ddcode & "'"
Adodc_body_general.Recordset.UpdateBatch adAffectAll
If AdoprimaryRs.Recordset.RecordCount > 0 Then
With AdoprimaryRs
.Recordset.Delete
If .Recordset.EOF = False Then .Refresh
If AdoprimaryRs.Recordset.RecordCount > 0 Then
.Recordset.MoveLast
Else
Exit Sub
End If
End With
Else
Exit Sub
End If
AdoprimaryRs.Refresh
Adodc_body_general.Refresh
Else
Exit Sub
End If
End Sub
Private Sub cmdEdit_Click() '修改
TDBGrid1.AllowDelete = True
TDBGrid1.AllowUpdate = True
For i = 0 To Text1.Count - 1
Text1(i).Locked = False
Next i
For i = 0 To Combo.Count - 1
Combo(i).Locked = False
Combo(i).Enabled = True
Next i
Cmddelete.Enabled = False
Cmdadd.Enabled = False
Cmdedit.Enabled = False
Cmdreturn.Enabled = False
CmdOK.Enabled = True
Cmdcancel.Enabled = True
On Error GoTo EditErr
Exit Sub
EditErr:
MsgBox Err.Description
End Sub
Private Sub cmdCancel_Click() '取消
Frame4.Visible = False
For i = 0 To Text1.Count - 1
Text1(i).Locked = True
Next i
For i = 0 To Combo.Count - 1
Combo(i).Locked = True
Next i
TDBGrid1.AllowDelete = True
TDBGrid1.AllowUpdate = True
Text1(0).SetFocus
Cmddelete.Enabled = True
Cmdadd.Enabled = True
Cmdedit.Enabled = True
Cmdreturn.Enabled = True
CmdOK.Enabled = False
Cmdcancel.Enabled = False
On Error Resume Next
AdoprimaryRs.Recordset.CancelUpdate
If mvBookMark > 0 Then
AdoprimaryRs.Recordset.Bookmark = mvBookMark
Else
AdoprimaryRs.Recordset.MoveFirst
End If
End Sub
Private Sub cmdOK_Click() '确认
'TDBGrid1.MoveNext
Frame4.Visible = False
TDBGrid1.AllowDelete = False
TDBGrid1.AllowUpdate = False
Dim Sumsl As Recordset
If Text1(0).Text = "" Then
MsgBox "所有名称不能为空", 48, "提示"
Text1(0).SetFocus
Exit Sub
End If
If Text1(1).Text = "" Then
MsgBox "所有名称不能为空", 48, "提示"
Text1(0).SetFocus
Exit Sub
End If
For i = 0 To Text1.Count - 1
Text1(0).Locked = True
Next i
For i = 0 To Combo.Count - 1
Combo(i).Locked = True
Combo(0).Enabled = False
Next i
Text1(0).SetFocus
Cmddelete.Enabled = True
Cmdadd.Enabled = True
Cmdedit.Enabled = True
Cmdreturn.Enabled = True
CmdOK.Enabled = False
Cmdcancel.Enabled = False
Set Sumsl = New Recordset
Sumsl.Open "select sum(isnull(sl,0)) as zsl,sum(isnull(je,0)) as zje from cg_thd where thdh='" & Text1(0).Text & "'", DB, adOpenStatic
If Sumsl.RecordCount > 0 And Not IsNull(Sumsl!zsl) Then
Sumsl.MoveFirst
Text1(7).Text = Sumsl!zsl
Text1(8).Text = Sumsl!zje
End If
On Error Resume Next
AdoprimaryRs.Recordset.UpdateBatch adAffectAll
Adodc_body_general.Recordset.UpdateBatch adAffectAll
Cmdcancel.Enabled = False
CmdOK.Enabled = False
If AdoprimaryRs.Recordset.BOF = False Then
AdoprimaryRs.Recordset.MovePrevious
AdoprimaryRs.Recordset.MoveNext
Else
AdoprimaryRs.Recordset.MoveNext
AdoprimaryRs.Recordset.MovePrevious
End If
'Call tree_load
AdoprimaryRs.Recordset.UpdateBatch adAffectAll
Adodc_body_general.Recordset.UpdateBatch adAffectAll
Exit Sub
End Sub
Sub combo_load()
Dim va As String
Dim combo2_data As Recordset
Set combo2_data = New Recordset
combo2_data.Open "select DISTINCT name from sys_gzry where zhwu='业务文员'", DB, adOpenStatic
If combo2_data.RecordCount > 0 Then
va = Combo(0).Text
Combo(0).Clear
For i = 1 To combo2_data.RecordCount
Combo(0).AddItem (combo2_data.Fields("name"))
If combo2_data.EOF = False Then
combo2_data.MoveNext
End If
Next i
combo2_data.MoveFirst
Combo(0).Text = va
Else
Exit Sub
End If
End Sub
Private Sub text1_KeyPress(Index As Integer, KeyAscii As Integer)
If KeyAscii = 13 Then ' 按回车
KeyAscii = 0
SendKeys "{TAB}"
End If
End Sub
Private Sub TreeView1_BeforeLabelEdit(Cancel As Integer)
End Sub
Private Sub Text2_Change()
AdoprimaryRs.ConnectionString = Conn_Str
AdoprimaryRs.RecordSource = "select * FROM cg_thdt where gysbh like '%" & Text2.Text & "%'"
AdoprimaryRs.Refresh
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -