以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]列内容变化后计算 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=52822) |
||||
-- 作者:gaixuebo -- 发布时间:2014/6/23 20:15:00 -- [求助]列内容变化后计算 Dim Arys As List(Of String()) Arys = DataTables("订单").GetValues("产品|客户") For Each Ary As String() In Arys Output.Show(Ary(0) & "|" & Ary(1)) Next 此处的OUTPUT函数如果换成一个针对变化的和变化前两列的函数,例如相加怎么计算呢?
|
||||
-- 作者:有点甜 -- 发布时间:2014/6/23 20:18:00 -- 没看懂你的问题,最好举例说明。 |
||||
-- 作者:有点甜 -- 发布时间:2014/6/23 20:19:00 -- 是不是问这个?
http://www.foxtable.com/help/topics/1445.htm
http://www.foxtable.com/help/topics/0625.htm
|
||||
-- 作者:gaixuebo -- 发布时间:2014/6/23 20:23:00 -- 这个例子,只要产品与经度字符串发生变化,就根据这个产品变化前和变化后的经纬度计算出距离,计算函数已经有了。 Dim Arys As List(Of String()) Arys = DataTables("产品").GetValues("名称|经度") For Each Ary As String() In Arys Output.Show(Ary(0) & "|" & Ary(1)) Next |
||||
-- 作者:有点甜 -- 发布时间:2014/6/23 20:26:00 -- 是不是3楼的意思?如果不是,上传例子加以说明。 |
||||
-- 作者:gaixuebo -- 发布时间:2014/6/23 20:27:00 -- 例子传上去吧。 |
||||
-- 作者:gaixuebo -- 发布时间:2014/6/23 20:27:00 --
|
||||
-- 作者:有点甜 -- 发布时间:2014/6/23 20:38:00 -- 是不是这个意思?
Dim strs As List(Of String) = DataTables("产品").GetValues("名称") For Each str As String In strs
|
||||
-- 作者:gaixuebo -- 发布时间:2014/6/23 20:42:00 -- 就是这个意思,谢谢甜老师 |
||||
-- 作者:gaixuebo -- 发布时间:2014/6/24 10:27:00 -- For Each n As String In DataTables("产品").GetValues("GPS产品名称", "GPS产品名称 is not null") Dim dr1 As DataRow = DataTables("产品").Find("GPS产品名称 = \'" & n & "\'", "日期") Dim dr2 As DataRow = DataTables("产品").Find("GPS产品名称 = \'" & n & "\'", "日期 desc") Dim fdr As DataRow = DataTables("表C").Find("第一列 = \'" & n & "\'") If fdr Is Nothing Then fdr = DataTables("表C").AddNew fdr("第一列") = n End If Dim x1 As Double = dr1("经度") Dim y1 As Double = dr1("纬度") Dim x2 As Double = dr2("经度") Dim y2 As Double = dr2("纬度") Dim rad As Double = 6371 Dim p1X As Double = X1 / 180 * Math.PI Dim p1Y As Double = Y2 / 180 * Math.PI Dim p2X As Double = X2 / 180 * Math.PI Dim p2Y As Double = Y2 / 180 * Math.PI Dim result As Double = Math.Acos(Math.Sin(p1Y) * Math.Sin(p2Y) + Math.Cos(p1Y) * Math.Cos(p2Y) * Math.Cos(p2X - p1X)) * rad fdr("第二列") = result Next 这段代码是把值赋值到C表中的第二列,我想把上面那段得出的结果也赋值到C表中的第三列 怎么做啊?甜老师
|