Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共12 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:[求助]数据字典录入时发生的奇怪现象

1楼
kylin 发表于:2009/5/23 16:02:00
员工编号为数据字典,录入之后,编号居然消失了,已经设定一旦员工编号为空,则姓名也将为空,
事实上员工编号就是没有为空,只是显示的问题
见以下动画:

图片点击可在新窗口打开查看此主题相关图片如下:gz.gif
图片点击可在新窗口打开查看
在PreEdite事件设置数据字典
If e.Col.Name = "ygbh" and e.Row.IsNull("scz") = False then
    If e.IsFocusCell Then '如果是焦点单元格
        Dim dmp1 as New TableDataMap
        dmp1.DataTable = "yggz" '指定数据来源表
        dmp1.ValueCol = "ygbh" '指定取值列
        dmp1.DisplayCol = "ygbh" '指定显示列
        '指定下拉列表时显示那些列的数据
        dmp1.ListCols = "ygbh,xm"
        dmp1.Filter = "[scz] = '" & e.Row("scz") & "'" '则只显示该生产组的员工
        dmp1.Sort = "xm"
        e.Col.DataMap = dmp1.CreateDataMap() '生成并设置DataMap
    end if
End If

在DataColChanged事件中设置姓名取值,没有其他的代码
if e.DataCol.Name="ygbh" then
    if e.DataRow.IsNull("ygbh") then
        e.DataRow("xm") = nothing
    else
        Dim dr  As Datarow= DataTables("yggz").Find("ygbh = '" & e.DataRow("ygbh") & "'")
        If dr IsNot Nothing  then '一定要判断是否存在对应的行
            e.DataRow("xm") = dr("xm")
        else
            e.DataRow("xm") = nothing
        End If
    end if
end if


2楼
mr725 发表于:2009/5/23 22:24:00

如果没有在drawcell设置代码,确实是个怪现象, 是不是等于单元格的字体颜色等同于表背景颜色了?原来想要这个的,狐爸说用drawcell。
不过,一不小心,又发现这一个新功能了~  恭喜啊~  图片点击可在新窗口打开查看
这么复杂的,我还没有运用到~

[此贴子已经被作者于2009-5-23 22:40:03编辑过]
3楼
kylin 发表于:2009/5/24 11:47:00
没有在drawcell设置代码的
4楼
kylin 发表于:2009/5/25 9:07:00
老六,帮忙看看是何原因?
5楼
狐狸爸爸 发表于:2009/5/25 9:13:00
员工编号列显示是是根据数组字典来的。
如果数据字典设置了条件,而且员工编号列的内容不符者这个条件,就显示不了。
6楼
kylin 发表于:2009/5/25 9:17:00
以下是引用狐狸爸爸在2009-5-25 9:13:00的发言:
员工编号列显示是是根据数组字典来的。
如果数据字典设置了条件,而且员工编号列的内容不符者这个条件,就显示不了。

因为禁用了手工录入,所以肯定不存在你所说的情况

其实1楼的gif表明了:保存后重新打开,显示正常,就是在录入过程中“显示”有问题的,“数据”是存在的

7楼
狐狸爸爸 发表于:2009/5/25 9:20:00

没有看到文件,我估计就是这个原因。
或者检查一下列类型。

8楼
kylin 发表于:2009/5/25 11:11:00

改动了自带的示例,模拟1楼的情况,结果还是有如同1楼的gif
请老六进入看看,到底哪里出了问题

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成绩排名.rar

[此贴子已经被作者于2009-5-25 11:12:10编辑过]
9楼
狐狸爸爸 发表于:2009/5/25 12:49:00
问题出在这里:
dmp1.Filter = "[班级] = '" & e.Row("班级") & "'"

筛选出哪个班级的,就只有那个班级正常,原因就像我前面说的。
10楼
kylin 发表于:2009/5/25 15:24:00
以下是引用狐狸爸爸在2009-5-25 12:49:00的发言:
问题出在这里:
dmp1.Filter = "[班级] = '" & e.Row("班级") & "'"

筛选出哪个班级的,就只有那个班级正常,原因就像我前面说的。

那么,内容不符者这个条件,就显示不了,这岂不是数据字典的“短肋”了,有否改进的可能?就是让非符合条件的也能正常显示呢?

共12 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03516 s, 3 queries.