📄 患者使用药品查询.frm
字号:
Top = 165
Value = 1 'Checked
Visible = 0 'False
Width = 1305
End
Begin VB.Label Label2
Caption = "住院号"
BeginProperty Font
Name = "隶书"
Size = 14.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00008000&
Height = 285
Left = 150
TabIndex = 22
Top = 150
Width = 915
End
Begin VB.Label Label1
Caption = "——"
BeginProperty Font
Name = "隶书"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = -1 'True
Strikethrough = 0 'False
EndProperty
ForeColor = &H00008000&
Height = 315
Index = 1
Left = 2100
TabIndex = 8
Top = 660
Width = 855
End
End
Attribute VB_Name = "frmMedicineQuery"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
Dim s(5) As String
Dim S1 As String
Dim S2 As String
Dim i As Integer
Dim j As Integer
Dim rs As Recordset
Dim t As Boolean
' t = False
' For I = 0 To 5
' If chkYAO(I).Value Then
' t = True
' Exit For
' End If
' Next I
' If Not t Then
' Exit Sub
' End If
'If chkYAO(0).Value Then
If chkYAO(1).Value Then
If Text3.Text <> "" Then
Data1.RecordSource = "SELECT zy_id as 住院号, HJ_DATE AS 划价时间,YP_NAME AS 药品名称,AMOUNT AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价,HJ_ID AS 划价号 FROM YJ3_HJ where jk_flag='1' and KS_ID='" + Trim(Text2.Text) + "' and YP_NAME LIKE '" + Text3.Text + "%' and HJ_DATE>'" + CStr(CDate(Text4.Text) - 1) + "' AND HJ_DATE<'" + CStr(CDate(Text5.Text) + 1) + "'union " + _
"SELECT zy_id as 住院号,HJ_DATE AS 划价时间,YP_NAME AS 药品名称,AMOUNT AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价,HJ_ID AS 划价号 FROM YJ2_HJ WHERE jk_flag='1' and GH_ID='0' and KS_ID='" + Trim(Text2.Text) + "' and YP_NAME LIKE '" + Text3.Text + "%' and HJ_DATE>'" + CStr(CDate(Text4.Text) - 1) + "' AND HJ_DATE<'" + CStr(CDate(Text5.Text) + 1) + "' order by hj_date"
Data1.Refresh
Else
Data1.RecordSource = "SELECT zy_id as 住院号, HJ_DATE AS 划价时间,YP_NAME AS 药品名称,AMOUNT AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价,HJ_ID AS 划价号 FROM YJ3_HJ where jk_flag='1' and KS_ID='" + Trim(Text2.Text) + "' and HJ_DATE>'" + CStr(CDate(Text4.Text) - 1) + "' AND HJ_DATE<'" + CStr(CDate(Text5.Text) + 1) + "'union " + _
"SELECT zy_id as 住院号,HJ_DATE AS 划价时间,YP_NAME AS 药品名称,AMOUNT AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价,HJ_ID AS 划价号 FROM YJ2_HJ WHERE jk_flag='1' and GH_ID='0' and KS_ID='" + Trim(Text2.Text) + "' and HJ_DATE>'" + CStr(CDate(Text4.Text) - 1) + "' AND HJ_DATE<'" + CStr(CDate(Text5.Text) + 1) + "' order by hj_date"
Data1.Refresh
End If
End If
Set rs = db.OpenRecordset("select zy_ryrq from zy_in_out where zy_id='" + Text1.Text + "'")
If Not rs.EOF Then
s(0) = "ZY_ID='" + Trim(Text1.Text) + "' and hj_date>cast('" + CStr(rs!zy_ryrq) + "' as datetime)"
Else
s(0) = "ZY_ID='" + Trim(Text1.Text) + "'"
End If
rs.Close
s(1) = "KS_ID='" + Trim(Text2.Text) + "'"
s(2) = "YP_NAME LIKE '" + Text3.Text + "%'"
s(3) = "HJ_DATE>'" + CStr(CDate(Text4.Text) - 1) + "' AND HJ_DATE<'" + CStr(CDate(Text5.Text) + 1) + "'"
S1 = "SELECT HJ_DATE AS 划价时间,YP_NAME AS 药品名称,AMOUNT AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价,HJ_ID AS 划价号 FROM YJ3_HJ where jk_flag='1'"
S2 = "SELECT HJ_DATE AS 划价时间,YP_NAME AS 药品名称,AMOUNT AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价,HJ_ID AS 划价号 FROM YJ2_HJ WHERE jk_flag='1' and GH_ID='0'"
If chkYAO(5).Value Then
Data1.RecordSource = S1 + " and TF_ID='" + Text6.Text + "' UNION " + S2 + " AND TF_ID='" + Text6.Text + "'"
Data1.Refresh
Exit Sub
End If
For i = 0 To 3
If chkYAO(i).Value Then
S1 = S1 + " and " + s(i)
S2 = S2 + "AND " + s(i)
Exit For
End If
Next i
i = i + 1
For j = i To 3
If chkYAO(j).Value Then
S1 = S1 + " AND " + s(j)
S2 = S2 + " AND " + s(j)
End If
Next j
If chkYAO(4).Value Then
If Combo1.Text = "中草药" Then
Data1.RecordSource = S2
ElseIf Combo1.Text = "中成药" Then
If Right(S1, 1) = " " Then
S1 = S1 + "and CODE LIKE 'B%'"
Else
S1 = S1 + "AND CODE LIKE 'B%'"
End If
Data1.RecordSource = S1
Else
If Right(S1, 1) = " " Then
S1 = S1 + "and CODE LIKE 'A%'"
Else
S1 = S1 + "AND CODE LIKE 'A%'"
End If
Data1.RecordSource = S1
End If
Else
Data1.RecordSource = S1 + " UNION " + S2
End If
Data1.Refresh
' Debug.Print Data1.RecordSource
End Sub
Private Sub Command2_Click()
If zzz = 31 Then
zzz = 0
Cxzyh = ""
Unload Me
frmLeaveHospitalQuery.Enabled = True
Else
Unload Me
Form3.Enabled = True
Form3.SetFocus
End If
End Sub
Private Sub Command3_Click()
Dim s(5) As String
Dim S1 As String
Dim S2 As String
Dim i As Integer
Dim j As Integer
Dim GBy As String
If chkYAO(5).Value Then
Exit Sub
End If
GBy = " GROUP BY YP_NAME,STANDARD,UNIT,RETAIL"
s(0) = "ZY_ID='" + Trim(Text1.Text) + "'"
s(1) = "KS_ID='" + Trim(Text2.Text) + "'"
s(2) = "YP_NAME LIKE '" + Text3.Text + "%'"
s(3) = "HJ_DATE>'" + CStr(CDate(Text4.Text) - 1) + "' AND HJ_DATE<'" + CStr(CDate(Text5.Text) + 1) + "'"
S1 = "SELECT YP_NAME AS 药品名称,SUM(AMOUNT) AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价 FROM YJ3_HJ where jk_flag='1'"
S2 = "SELECT YP_NAME AS 药品名称,SUM(AMOUNT) AS 数量,STANDARD AS 规格,UNIT AS 单位,RETAIL AS 单价 FROM YJ2_HJ WHERE jk_flag='1' and GH_ID='0'"
For i = 0 To 3
If chkYAO(i).Value Then
S1 = S1 + " and " + s(i)
S2 = S2 + "AND " + s(i)
Exit For
End If
Next i
i = i + 1
For j = i To 3
If chkYAO(j).Value Then
S1 = S1 + " AND " + s(j)
S2 = S2 + " AND " + s(j)
End If
Next j
If chkYAO(4).Value Then
If Combo1.Text = "中草药" Then
Data1.RecordSource = S2 + " GROUP BY YP_NAME,STANDARD,UNIT,RETAIL"
ElseIf Combo1.Text = "中成药" Then
If Right(S1, 1) = " " Then
S1 = S1 + "and CODE LIKE 'B%'"
Else
S1 = S1 + "AND CODE LIKE 'B%'"
End If
Data1.RecordSource = S1 + GBy
Else
If Right(S1, 1) = " " Then
S1 = S1 + "and CODE LIKE 'A%'"
Else
S1 = S1 + "AND CODE LIKE 'A%'"
End If
Data1.RecordSource = S1 + GBy
End If
Else
Data1.RecordSource = S1 + GBy + " UNION " + S2 + GBy
End If
Debug.Print Data1.RecordSource
Data1.Refresh
End Sub
Private Sub Command4_Click()
Dim i As Integer
Dim U1 As String
Dim U2 As String
Dim minD As Date
Dim maxD As Date
Dim Hjs As String
Dim Hjt As Date
' If Not Data1.Recordset.EOF Then
On Error GoTo ERR:
Data1.Recordset.MoveFirst
On Error GoTo 0
'End If
minD = CDate(CStr(Date) + " 23:59:59")
Printer.ScaleMode = 6
Printer.Font = "隶书"
Printer.FontSize = 17
Printer.CurrentY = 5
Printer.CurrentX = 80
Printer.Print "药品使用清单"
Printer.Print
Printer.Font = "隶书"
Printer.FontSize = 10
U1 = " " + "划价时间 药品名称 数量 规格 单位 单价 划价号 "
Printer.Print U1
Printer.Print "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
While Not Data1.Recordset.EOF
If Data1.Recordset.Fields(0).Name = "划价时间" Then
Hjs = Data1.Recordset!划价号
Hjt = Data1.Recordset!划价时间
Else
Hjs = " "
' Hjt = Null
End If
U2 = " " + Left(CStr(Hjt), 10) + Space(10 - DxLen(DxLeft(CStr(Hjt), 10))) + " " + DxLeft(CStr(Data1.Recordset!药品名称), 24) + Space(24 - DxLen(CStr(Data1.Recordset!药品名称))) + CStr(Data1.Recordset!数量) + Space(10 - DxLen(CStr(Data1.Recordset!数量))) + DxLeft(CStr(Data1.Recordset!规格), 12) + Space(12 - DxLen(CStr(Data1.Recordset!规格))) + CStr(Data1.Recordset!单位) + Space(6 - DxLen(CStr(Data1.Recordset!单位))) _
+ Format(Data1.Recordset!单价, "0.00") + Space(13 - DxLen(Format(Data1.Recordset!单价, "0.00"))) + Hjs
Printer.Print U2
If minD > Hjt Then
minD = Hjt
End If
If maxD < Hjt Then
maxD = Hjt
End If
Data1.Recordset.MoveNext
Wend
Printer.Print "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
Printer.Print "打印时间:" + CStr(Date) + " " + CStr(Time) + Space(20) + "用药时间段:" + CStr(minD) + "——" + CStr(maxD)
Printer.EndDoc
ERR:
End Sub
Private Sub Form_Activate()
If zzz = 31 Then
Text1.Text = Cxzyh
chkYAO(0).Value = Checked
Command1_Click
End If
End Sub
Private Sub Form_Load()
Dim TROL As Control
Data1.Connect = MyConnect
Data1.DatabaseName = MyDatabase
For Each TROL In frmMedicineQuery.Controls
If TypeOf TROL Is TextBox Then
TROL.Text = ""
End If
Next TROL
Combo1.Text = ""
Me.Top = 0
Me.Height = Screen.Height
Me.Left = 0
Me.Width = Screen.Width
Text4.Text = CStr(Date)
Text5.Text = CStr(Date)
End Sub
Private Sub Text1_Keydown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 And Text1.Text <> "" Then
Text1.Text = Format(Text1, "00000000")
End If
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 222 Then
Text1.Text = ""
End If
End Sub
Private Sub Text2_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 222 Then
Text2.Text = ""
End If
End Sub
Private Sub Text3_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 222 Then
Text3.Text = ""
End If
End Sub
Private Sub VScroll1_Change()
Text4.Text = CStr(Date + VScroll1.Value)
End Sub
Private Sub VScroll2_Change()
Text5.Text = CStr(Date + VScroll2.Value)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -