以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  代码请教  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=2590)

--  作者:卟离卟弃
--  发布时间:2009/4/24 17:45:00
--  代码请教
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目4.table

求助下

定单表中 完成日期列 .,,我想根据地区区分后进行填写.一种是丛另一个表中提取日期,一种是直接填写完成日期
华中地区的定单完成日期,想丛表2中提取.区别条件是地区与定单号要一样.
其它地区的就直接填写上去.

这样行不行..
应该行吧
我不知道怎么写,所以请高手有空帮帮忙了..

--  作者:狐狸爸爸
--  发布时间:2009/4/24 17:58:00
--  
DataColChanged事件:
 

 

Select Case e.DataCol.Name
    Case
"地区","定单号"
   
    Dim dr1 As DataRow = e.DataRow
       
If dr1("地区") = "华中" Then
            Dim
Filter As String = "地区 = \'华中\' And 定单号 = \'" & dr1("定单号") & "\'"
       
    Dim dr2 As DataRow = DataTables("华中定单完成统计").find(Filter)
            If
dr2 IsNot Nothing
                dr1(
"完成时间") = dr2("完成时间")
            End
If
        End
If
End
Select

 

[此贴子已经被作者于2009-4-24 18:00:12编辑过]

--  作者:卟离卟弃
--  发布时间:2009/4/24 18:47:00
--  

谢谢.


--  作者:卟离卟弃
--  发布时间:2009/4/24 18:49:00
--  
狐爸
需要按重置才会刷新
能不能设置下,正动刷新......
只要在华中统计表中一输日期后,定单表自动更新
--  作者:卟离卟弃
--  发布时间:2009/4/24 19:31:00
--  
狐表,
在加个要求
如果华中定单统计中
一个定单有3个完成日期(同定单分三次交货)
我想让它在三个日期中取最后那个完成日期,也就是最迟的交货日期.
--  作者:狐狸爸爸
--  发布时间:2009/4/24 22:36:00
--  
以下是引用卟离卟弃在2009-4-24 18:49:00的发言:
狐爸
需要按重置才会刷新
能不能设置下,正动刷新......
只要在华中统计表中一输日期后,定单表自动更新


原有数据要重置,之后修改和增加的数据,都会自动计算,单击一下重置按钮,应该不麻烦吧?


--  作者:狐狸爸爸
--  发布时间:2009/4/24 22:39:00
--  
以下是引用卟离卟弃在2009-4-24 19:31:00的发言:
狐表,
在加个要求
如果华中定单统计中
一个定单有3个完成日期(同定单分三次交货)
我想让它在三个日期中取最后那个完成日期,也就是最迟的交货日期.


建议你看看Find函数的说明,该函数其实是很“利害”的:

Select Case e.DataCol.Name
    Case
"地区","定单号"
   
    Dim dr1 As DataRow = e.DataRow
       
If dr1("地区") = "华中" Then
            Dim
Filter As String = "地区 = \'华中\' And 定单号 = \'" & dr1("定单号") & "\'"
       
    Dim dr2 As DataRow = DataTables("华中定单完成统计").find(Filter, "完成时间 Desc")
            If
dr2 IsNot Nothing
                dr1(
"完成时间") = dr2("完成时间")
            End
If
        End
If
End
Select

[此贴子已经被作者于2009-4-24 22:39:11编辑过]

--  作者:卟离卟弃
--  发布时间:2009/4/25 9:03:00
--  
狐爸
我刚去看了
还有个问题问下

如果我同一张定单计划分三次出货
第一次实际出货时间已经填好,第二次和第三次还没出货不知道时间(空白)
那么定单表实际最后(第三次)出货时间,应该也是空白,
是不是少了判断条件?
在子表中加一列为出货序号,1,2,3
主表中,我要取最后一次出货时间.(出货序号为最大的那个,根据定单号进行区别)
这样呢!
           

--  作者:狐狸爸爸
--  发布时间:2009/4/27 0:23:00
--  
加上日期不能为空的条件即可啊:

Dim Filter As String = "地区 = \'华中\'  And [完成时间] Is Not Null And 定单号 = \'" & dr1("定单号") & "\'"
--  作者:卟离卟弃
--  发布时间:2009/4/27 9:06:00
--  
Dim Filter As String = "地区 = \'华中\'  And [完成时间] Is Not Null And 定单号 = \'" & dr1("定单号") & "\'"
狐爸
如果我在子表中增加一个级别...
Dim Filter As String = "地区 = \'华中\'  And [完成时间] Is Not Null And [事件级别] = 最大 And 定单号 = \'" & dr1("定单号") & "\'"
Dim Filter As String = "地区 = \'华中\'  And [开始时间] Is Not Null And [事件级别] = 最大 And 定单号 = \'" & dr1("定单号") & "\'"
事件级别列是整数列,这个最大与最小应该怎么样写?