以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  帮忙看下代码吧?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=26327)

--  作者:jiskin
--  发布时间:2012/11/30 10:57:00
--  帮忙看下代码吧?
Select Case e.DataCol.name
    Case "工艺状态","粗车计划完成日","钳工热焊计划完成日","外协计划完成日","精车计划完成日","采购计划完成日","设计图计划完成日"
        Dim dr As DataRow = e.DataRow
        If dr("工艺状态") = "原材料" Or dr("工艺状态") = "外购毛坯" Then
            Dim dx As Row = Tables("生产明细表").Filter = "[项目编号] = \'" & Tables("生产项目表").current("项目编号")& "\'"
            If math.max(dx("粗车计划完成日"),dx("钳工热焊计划完成日"),dx("外协计划完成日"),dx("精车计划完成日")) = "无" Then
                dr("装配入库计划开始日") = "缺值"
            Else
                dr("装配入库计划开始日") = math.max(dx("采购计划完成日"),dx("粗车计划完成日"),dx("钳工热焊计划完成日"),dx("外协计划完成日"),dx("精车计划完成日"))
            End If
        Else
            If dr("工艺状态") = "外购成品" Or dr("工艺状态") = "库存成品" Then
                dr("装配入库计划开始日") = dr("设计图计划完成日")
            End If
        End If
End Select

请帮忙看下 谢谢了~~自己弄了好久弄不来了~~

--  作者:lin_hailun
--  发布时间:2012/11/30 12:35:00
--  
 不知道你想实现什么,也不知道你报什么错误……估计是这句代码写错了。

If math.max(dx("粗车计划完成日"),dx("钳工热焊计划完成日"),dx("外协计划完成日"),dx("精车计划完成日")) = "无" Then

--  作者:jiskin
--  发布时间:2012/11/30 12:46:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20121130124026.png
图片点击可在新窗口打开查看
这个是找出指定列里面的最大值

--  作者:狐狸爸爸
--  发布时间:2012/11/30 14:26:00
--  

日期没有办法用math.max,另外写代码判断出那个日期最大


--  作者:jiskin
--  发布时间:2012/11/30 15:10:00
--  
不知道该如何判断日期~~请教下狐爸~图片点击可在新窗口打开查看
--  作者:lin_hailun
--  发布时间:2012/11/30 15:17:00
--  
 把你这个表的数据上传上来。 看不懂你代码的逻辑。

--  作者:jiskin
--  发布时间:2012/11/30 15:23:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.foxdb

帮忙看下,在datacolchanged里

--  作者:lin_hailun
--  发布时间:2012/11/30 15:25:00
--  
 数据源呢?

--  作者:jiskin
--  发布时间:2012/11/30 15:29:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:db.rar

 抱歉 ~忘记了 ~~~

--  作者:lin_hailun
--  发布时间:2012/11/30 15:41:00
--  
 If math.max(dx("粗车计划完成日"),dx("钳工热焊计划完成日"),dx("外协计划完成日"),dx("精车计划完成日")) = "无" Then

这句代码你想实现的内容是什么?怎么处理日期是 无 的情况?