Foxtable(狐表)用户栏目专家坐堂 → [求助]


  共有4016人关注过本帖树形打印复制链接

主题:[求助]

帅哥哟,离线,有人找我吗?
sanny
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
[求助]  发帖心情 Post By:2018/11/30 22:28:00 [显示全部帖子]

 

版主,以下是选两条记录进行合并,反复测试黄色不对。Netweiht_Total 是通过表属性中表达式得出来的。它不让进行合并。

 

因为两条记录中的Netweight_PC 是不相同的,合并后想让Netweiht_Total 加总后再除以加总的数量,再得出一个Netweight_PC ,不知道如何修改,请帮忙一下,谢谢。

 

 

Dim t As Table = Tables("Shipment.customsinvoice")
Dim cr = t.Rows(t.BottomPosition )
For i As Integer = t.BottomPosition-1 To t.TopPosition Step -1
    If cr("ShippingNO") = t.Rows(i)("ShippingNO") AndAlso cr("NameinChinese") = t.Rows(i)("NameinChinese") AndAlso cr("Unit") = t.Rows(i)("unit") AndAlso cr("HS") = t.Rows(i)("HS")
        cr("Qty") += val(t.Rows(i)("Qty"))

        cr("TotalPrice") += val(t.Rows(i)("TotalPrice"))
        cr("PO_UnitPrice") += val(t.Rows(i)("TotalPrice"))/val(t.Rows(i)("Qty"))

        cr("GrossWeight_total") += val(t.Rows(i)("GrossWeight_Total"))
        cr("Netweight_Total") += val(t.Rows(i)("Netweight_Total"))
        cr("Netweight_PC") = cr("Netweight_total") /cr("Qty")


        t.Rows(i).delete
    Else
        cr = t.Rows(i)
    End If
Next


 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/2 22:56:00 [显示全部帖子]

版主,两条,三条或更多记录进行合并,其中一列每条记录的内容不同,比如 第一条是A,第二条是B,第三条是DDD,如果按现在的代码进行合并后,就会只取其中的一个内容,能帮忙把这些内容整到一起吗? 合并后该列中显示 A,B, DDD.. 如果几条记录的列内容相同就取一个,谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/3 11:41:00 [显示全部帖子]

谢谢版主,便这个 逗号 , 位置不对,能帮忙调整一下吗

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/3 11:42:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/3 11:43:00 [显示全部帖子]

然后相同的,只取一次,可以吗?

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/7 18:22:00 [显示全部帖子]

再请问一下版主,如果要设定列字段 客户 为 AA 时才进行如下记录合并,能帮忙加一下吗?感谢。

 

 

Dim t As Table = Tables("Shipment.customsinvoice")
Dim cr = t.Rows(t.BottomPosition )
Dim Total As Double = cr("Netweight_Total")
For i As Integer = t.BottomPosition-1 To t.TopPosition Step -1
    If cr("ShippingNO") = t.Rows(i)("ShippingNO") AndAlso cr("NameinChinese") = t.Rows(i)("NameinChinese") AndAlso cr("Unit") = t.Rows(i)("unit") AndAlso cr("HS") = t.Rows(i)("HS")
        cr("Qty") += val(t.Rows(i)("Qty"))
        cr("TotalPrice") += val(t.Rows(i)("TotalPrice"))
        cr("PO_UnitPrice") += val(t.Rows(i)("TotalPrice"))/val(t.Rows(i)("Qty"))
        cr("GrossWeight_total") += val(t.Rows(i)("GrossWeight_Total"))
        Total += val(t.Rows(i)("Netweight_Total"))
        cr("Netweight_PC") = Total /cr("Qty")

        t.Rows(i).delete
    Else
        cr = t.Rows(i)
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/8 8:52:00 [显示全部帖子]

版主

 

那如果客户不是AAA的其它客户进行合并,那改成如下,是成立的, 对不对 ?

 

If t.Rows(i)("客户") <> "AA" andalso cr("ShippingNO") = t.Rows(i)("ShippingNO") AndAlso cr("NameinChinese") = t.Rows(i)("NameinChinese") AndAlso cr("Unit") = t.Rows(i)("unit") AndAlso cr("HS") = t.Rows(i)("HS")


 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/8 9:40:00 [显示全部帖子]

版主,客户不是AAA的其它客户进行合并, 测了一下,以下不对? 请帮忙一下,谢谢。

 

If t.Rows(i)("客户") <> "AA" andalso cr("ShippingNO") = t.Rows(i)("ShippingNO") AndAlso cr("NameinChinese") = t.Rows(i)("NameinChinese") AndAlso cr("Unit") = t.Rows(i)("unit") AndAlso cr("HS") = t.Rows(i)("HS")


 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/8 10:27:00 [显示全部帖子]

版主,改了,还是不可以合并,代码上有问题吗?谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2018/12/8 12:03:00 [显示全部帖子]

版主,想实现

 

当全选当前窗口记录后

 

supplier 等于GSS时,以ShippingNO,MaterialName,Unit,HS相同进行合并

 

supplier 不等于GSS时,以ShippingNO,NameinChinese,Unit,HS,Declaration,PO_UnitPrice相同进行合并,这个PO_UnitPrice 是总金额除以总数量得出,现只能两个一算,再行第二次合并,就单价不同需不能满足条件了。

 

以下代码,请查看,谢谢。

 

 

Dim t1 As Table = Tables("Shipment.customsinvoice")
Dim cr1 = t1.Rows(t1.BottomPosition )
Dim Total1 As Double = cr1("Netweight_Total")
Dim Totalp1 As Double = cr1("Totalprice")

For i1 As Integer = t1.BottomPosition-1 To t1.TopPosition Step -1
    If t1.Rows(i1)("supplier") = "GSS" AndAlso cr1("ShippingNO") = t1.Rows(i1)("ShippingNO") AndAlso cr1("MaterialName") = t1.Rows(i1)("MaterialName") AndAlso cr1("Unit") = t1.Rows(i1)("unit") AndAlso cr1("HS") = t1.Rows(i1)("HS")
        cr1("Qty") += val(t1.Rows(i1)("Qty"))

        cr1("TotalPrice") += val(t1.Rows(i1)("TotalPrice"))

        cr1("GrossWeight_total") += val(t1.Rows(i1)("GrossWeight_Total"))
    '   cr("Netweight_Total") += val(t.Rows(i)("Netweight_Total"))
        Total1 += val(t1.Rows(i1)("Netweight_Total"))
        cr1("Netweight_PC") = Total1 /cr1("Qty")
        Totalp1 += val(t1.Rows(i1)("Totalprice"))
        cr1("PO_UnitPrice") = Totalp1 /cr1("Qty")
        cr1("GSSPartNo") &= ","  & t1.Rows(i1)("GSSPartNo")

       
        t1.Rows(i1).delete


    Else
        cr1 = t1.Rows(i1)
    End If
Next

 


Dim t As Table = Tables("Shipment.customsinvoice")
Dim cr = t.Rows(t.BottomPosition )
Dim Total As Double = cr("Netweight_Total")
Dim Totalp As Double = cr("Totalprice")

For i As Integer = t.BottomPosition-1 To t.TopPosition Step -1
     If t.Rows(i)("supplier") <> "GSS" AndAlso cr("ShippingNO") = t.Rows(i)("ShippingNO") AndAlso cr("NameinChinese") = t.Rows(i)("NameinChinese") AndAlso cr("Unit") = t.Rows(i)("unit") AndAlso cr("HS") = t.Rows(i)("HS") AndAlso cr("Declaration") = t.Rows(i)("Declaration") AndAlso cr("PO_UnitPrice") = t.Rows(i)("PO_UnitPrice")
        cr("Qty") += val(t.Rows(i)("Qty"))

        cr("TotalPrice") += val(t.Rows(i)("TotalPrice"))

        cr("GrossWeight_total") += val(t.Rows(i)("GrossWeight_Total"))
    '   cr("Netweight_Total") += val(t.Rows(i)("Netweight_Total"))
        Total += val(t.Rows(i)("Netweight_Total"))
        cr("Netweight_PC") = Total /cr("Qty")
        Totalp += val(t.Rows(i)("Totalprice"))
        cr("PO_UnitPrice") = Totalp /cr("Qty")
        cr("GSSPartNo") &= ","  & t.Rows(i)("GSSPartNo")

       
        t.Rows(i).delete


    Else
        cr = t.Rows(i)
    End If
Next


 回到顶部
总数 37 1 2 3 4 下一页