以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请教不同设备不同备件的使用周期统计  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=34087)

--  作者:sxqq123
--  发布时间:2013/5/30 11:07:00
--  请教不同设备不同备件的使用周期统计
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:使用周期管理.foxdb


--  作者:Bin
--  发布时间:2013/5/30 11:28:00
--  
.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:使用周期管理.foxdb


--  作者:zhengboxin
--  发布时间:2013/5/30 11:35:00
--  

这个我仅仅有个思路:就是你在表A录入保存后触发代码,首先判断一下表B中是否有相应的设备,相应的备件

用select count(*)判断,如果没有,则在表B新增一行,并将A表当前行的日期赋值到B表的(2+1)第三行,

如果本身表B就已存在该设备及备件信息,则将A表当前行的日期赋值到B表的第(count(*)的结果+2)行

代码具体怎么写,哥们先看看帮助吧,我之前也没看帮助就去问别人,总觉得不好意思!

[此贴子已经被作者于2013-5-30 11:36:02编辑过]

--  作者:狐狸爸爸
--  发布时间:2013/5/30 11:40:00
--  

我马后炮,做个按钮,代码为:

 

DataTables("表B").DataRows.Clear()

Dim cls() As String = {"第一次","第二次","第三次","第四次"}
For Each nms() As String In DataTables("表A").GetUniqueValues("","备件","设备")
    Dim dr As DataRow = DataTables("表B").AddNew
    dr("备件") = nms(0)
    dr("设备") = nms(1)
    Dim drs As List(of DataRow) = DataTables("表A").Select("备件 = \'" & nms(0) & "\' And 设备 = \'" & nms(1) & "\'")
    For i As Integer  = 0 To math.Min(cls.Length,drs.Count) -1
        dr(cls(i)) = drs(i)("日期")
    Next
Next

 

需要的时候,单击这个按钮,就得到统计结果了。

方法和bin的一样,他用表事件,我用按钮,你根据需要选择。


--  作者:sxqq123
--  发布时间:2013/5/30 14:51:00
--  
非常感谢,新手要实现目标不清楚思路特请教大师,没想到还惊动了狐狸爸爸,向诸位表示衷心感谢,努力学好用好Foxtable,使更多的人知道Foxtable,使用Foxtable,热爱Foxtable,祝大家万事如意!