📄 frmpatientbaseinfo.frm
字号:
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 10.8
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Status = 0
BackColorForAdd = -2147483638
BackColorForUpdate= -2147483638
ButtonCaption = "&R.更新 &A.增加 &D.删除 &C.清除 &T.转换 &Q.查询 &P.打印 &E退出"
KeyEnabled = "1#1#1#1#1#1#0#1#"
End
Begin LstCtl.ListCtl Lcr
Height = 345
Left = 0
TabIndex = 2
Top = 2280
Width = 2715
_ExtentX = 4784
_ExtentY = 614
End
End
Attribute VB_Name = "frmPatientBaseInfo"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Public mID As String
Public mEditMod As Boolean
Public Event IDName(ID As String, Name As String)
Public SickObj As clsSickOP
Private WithEvents QueryObj As frmPatientBaseInfoQuery
Attribute QueryObj.VB_VarHelpID = -1
Private Sub Init()
hisFormClear Me
cboSex.ListIndex = -1
cboPtID.ListIndex = 0
End Sub
Private Sub cboPtID_LostFocus()
hisCboHandle cboPtID, cboPtID.Text
End Sub
Private Sub cboSex_LostFocus()
hisCboHandle cboSex, cboSex.Text
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
hisToActiveCtl(Me, True).SetFocus
KeyAscii = 0
End If
End Sub
Private Sub Form_Load()
hisFormToCenter Me, frmMain
cboPtID.Clear
For i = 1 To gPatientTypesObj.Count
cboPtID.AddItem gPatientTypesObj.Item(i).ID & " " & gPatientTypesObj.Item(i).Des
Next i
cboSex.Clear
For i = 1 To gSexsObj.Count
cboSex.AddItem gSexsObj.Item(i).Code & " " & gSexsObj.Item(i).Des
Next i
Set Lcr.CN = gDbObj.CN
Lcr.Visible = False
Init
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set frmPatientBaseInfo = Nothing
End Sub
Private Sub lCr_PosChanged(ByVal Pos As Long, ByVal OldPos As Long)
Set SickObj = New clsSickOP
SickObj.SkIDByBaseQuery = Lcr.CurColumns(0)
FillData SickObj
End Sub
Private Sub MskBirdate_LostFocus()
If MskBirdate.Text <> gstrMASK_INIT And Not IsDate(MskBirdate.Text) Then
MsgBox gstrDATE_ERROR_MSG, vbInformation
MskBirdate.SetFocus
End If
End Sub
Private Sub Mcr_Click(ByVal WhichB As UseMaintainCtl.BUTTONKEY)
Select Case WhichB
Case BK_ADD
If SickObj Is Nothing Then Exit Sub
LoadData SickObj
If SickObj.PatientID = "" Then
MsgBox "请输入病人ID ", vbInformation
txtID.SetFocus
Exit Sub
End If
If SickObj.Name = "" Then
MsgBox "请输入病人姓名 ", vbInformation
txtName.SetFocus
Exit Sub
End If
If Not SickObj.Save(DbOpType.HISDbInsert) Then
MsgBox gDbObj.ErrDes, vbCritical
Exit Sub
End If
Init
txtID.SetFocus
Case BK_TRANS
Mcr.Status = CL_ADD
Init
txtID.SetFocus
Case BK_UPDATE
LoadData SickObj
If SickObj.PatientID = "" Then
MsgBox "请输入病人ID ", vbInformation
txtID.SetFocus
Exit Sub
End If
If SickObj.Name = "" Then
MsgBox "请输入病人姓名 ", vbInformation
txtName.SetFocus
Exit Sub
End If
If Not SickObj.Save(DbOpType.HISDBUpdate) Then
MsgBox gDbObj.ErrDes, vbCritical
Exit Sub
End If
Mcr.Status = CL_ADD
Init
txtID.SetFocus
Case BK_QUERY
Set QueryObj = New frmPatientBaseInfoQuery
QueryObj.Show vbModal
Case BK_DEL
If MsgBox("你真的要删除此病人吗?", vbInformation + vbYesNo) = vbNo Then Exit Sub
If Not SickObj.Save(DbOpType.HISDBdelete) Then
MsgBox gDbObj.ErrDes, vbCritical
Exit Sub
End If
Mcr.Status = CL_ADD
Init
txtID.SetFocus
Case BK_CLEAR
Init
txtID.SetFocus
Case BK_EXIT
Unload Me
End Select
End Sub
Private Sub Mcr_StatusChanged()
If Mcr.Status = CL_ADD Then
Lcr.Visible = False
End If
End Sub
Private Sub QueryObj_Ack(ByVal Cdt As String)
If Cdt <> "" Then
Lcr.SQL = "SELECT PatientID From Open_m_PatientBaseInfo WHERE " & Cdt
Lcr.Refresh
If Lcr.Count >= 1 Then
Lcr.Visible = True
Mcr.Status = CL_UPDATE
Set SickObj = New clsSickOP
SickObj.SkIDByBaseQuery = Lcr.CurColumns(0)
FillData SickObj
Else
Lcr.Visible = False
Mcr.Status = CL_ADD
Init
txtID.SetFocus
End If
End If
End Sub
Private Sub txtID_GotFocus()
mID = txtID
End Sub
Private Sub txtID_LostFocus()
If Mcr.Status = CL_UPDATE Then Exit Sub
If mID <> txtID Then
Set SickObj = New clsSickOP
SickObj.SkIDByBaseQuery = txtID
If SickObj.ID = "" Then
Else
If Mcr.Status = CL_ADD Then
Mcr.Status = CL_UPDATE
FillData SickObj
End If
End If
End If
End Sub
Private Sub txtName_GotFocus()
txtName.SelLength = Len(txtName)
txtName.IMEMode = 1
End Sub
Private Sub txtName_LostFocus()
txtName.IMEMode = 2
End Sub
Private Sub FillData(tmpobj As clsSickOP)
txtID = tmpobj.PatientID
txtName = tmpobj.Name
gpdCboHandle cboSex, tmpobj.Sex
MskBirdate = IIf(tmpobj.BirthDate = "", gstrMASK_INIT, Format(tmpobj.BirthDate, gstrCOMN_DATE))
gpdCboHandle cboPtID, tmpobj.PtID
End Sub
Private Sub LoadData(tmpobj As clsSickOP)
tmpobj.PatientID = txtID
tmpobj.Name = txtName
If cboSex.ListIndex <> -1 Then
tmpobj.Sex = Left(cboSex.Text, InStr(cboSex.Text, " ") - 1)
Else
tmpobj.Sex = ""
End If
If cboPtID.ListIndex <> -1 Then
tmpobj.PtID = Left(cboPtID.Text, InStr(cboPtID.Text, " ") - 1)
Else
tmpobj.PtID = ""
End If
tmpobj.BirthDate = IIf(MskBirthDate = gstrMASK_INIT, "", Format(MskBirthDate, gstrCOMN_DATE))
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -