红色部分
Case BriSDKLib.BriEvent_GetCallID '接收到来电号码,并将来电的相关信息记录在后台的 “电话记录” 表中
If User.Name="报障播报扫描" Then '如果当前用户是 报障播报扫描,则允许在后台进行电话来电记录。 除了盒子外的其它人,在下面的PSTN线路断开后的代码里面记录. 避免一个办公室接了盒子的所有人都可以进行后台记录。 'by wk 20191020
Dim PhoneNumber As String = ByteArrayToString(EventData.szData)
' If PhoneNumber.Length>3 Then '如果接收到的电话号码长度大于3,则往下记录,免得记得一些干扰信号的号码 by wk 20191023
AppendStatus("接收到来电号码: " & PhoneNumber,EventData.uChannelID)
drCurrentRow = DataTables("电话记录").AddNew() '则在后台 电话记录表中 增加一条电话记录
'drCurrentRow("摘机时间") = Nothing
drCurrentRow("摘机时间") = "2001-01-01 00:00:00"
drCurrentRow("挂机时间") = "2001-01-01 00:00:00"
Tables("电话记录").Position = Tables("电话记录").Rows.Count-1
CanAddnew = False
AppendCallRecord("接收到来电号码: " & PhoneNumber, EventData.uChannelID)
drCurrentRow("电话号码") = PhoneNumber
Dim dr As DataRow '根据来电号码识别出科室,并存在全局变量departmentname中
dr = DataTables("科室联系方式字典").Find("座机='" & PhoneNumber & "'")
If dr IsNot Nothing Then
departmentname = dr("科室")
' MessageBox.Show(departmentname)
End If
If Forms("win_日常问题记录修改").Opened Then '即使窗口 win_日常问题记录修改打开也不能直接把来电号码赋给textbox, 因为此时如果上个电话的问题没有记录完,则会被覆盖
' Forms("win_日常问题记录修改").controls("tb_电话号码").value= PhoneNumber ' by wk
' Tables("日常问题记录表").Current("来电号码")=PhoneNumber
vars("CallerNO") =PhoneNumber 'by wk 20160818 无论窗口是否打开都把获取到的来电号码赋值给全局变量vars("CallerNo") '在挂机事件中会清空来电号码
Else
vars("CallerNO") =PhoneNumber
End If
drCurrentRow("呼叫类型") = "来电"
dr.save
' End If '如果接收到的电话号码长度大于3,则往下记录,免得记得一些干扰信号的号码 结束 by wk 20191023
End If 'by wk 20191020
Exit Select
[此贴子已经被作者于2019/10/23 15:02:46编辑过]