以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]表中某列列表项目值问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=74650)

--  作者:cqlwsam
--  发布时间:2015/9/16 9:13:00
--  [求助]表中某列列表项目值问题
设有表“矫治器加工费用登记”,其中列“医生姓名”一列的列表项目值来至表“医生考勤表”中“医生姓名”,想实现:只要当天上班(迟到、早退、出勤)的人,才能列入表“矫治器加工费用登记”中“医生姓名”的列表项目备选。当天没上班,肯定就不能有此项支出,防止科室管理的漏洞。如下问题:
1.代码写在哪个事件中?
2.有点复杂,代码不知道怎么写!


谢谢!

--  作者:大红袍
--  发布时间:2015/9/16 9:43:00
--  

写代码 http://www.foxtable.com/help/topics/1457.htm

 

条件设置为 "日期 = #" & date.Today & "# and (迟到 is not null and 早退 is not null or 出勤 is not null)"

 


--  作者:cqlwsam
--  发布时间:2015/9/16 10:35:00
--  
我把代码放在prepareEdit中,代码如下,通过:
If e.IsFocusCell Then \'如果是焦点所在单元格
    If e.Col.Name = "医生姓名" Then \'如果正在编辑的是县市列
        If e.Row("日期")=Nothing Then
            e.Row("医生姓名")=Nothing
            e.Col.ComboList=Nothing
        Else
            e.Col.Combolist = DataTables("医生考勤表").GetComboListString("医生姓名",  "日期 = #" & e.Row("日期") & "# and (上午=\'迟到\' or 上午=\'早退\' or 上午=\'出勤\' or 下午=\'迟到\' or 下午=\'早退\' or 下午=\'出勤\' or 病房值班=\'迟到\' or 病房值班=\'早退\' or 病房值班=\'出勤\')")
        End If
    End If
End If