Foxtable(狐表)用户栏目专家坐堂 → 求助:为什么选定多行后,渠道商返利单价 的值是相同的单价


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

主题:求助:为什么选定多行后,渠道商返利单价 的值是相同的单价

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


加好友 发短信
等级:婴狐 帖子:41 积分:822 威望:0 精华:0 注册:2018/9/15 20:39:00
求助:为什么选定多行后,渠道商返利单价 的值是相同的单价  发帖心情 Post By:2025/2/20 0:57:00 [只看该作者]

1。为什么选定多行后,渠道商返利单价 的值是相同的单价
2。单独选定一行,渠道商返利单价 的值是正确单价
Dim tb1 As WinForm.Table = e.Form.Controls("Table1")
Dim r1 As Row
Dim Names As New List(Of String)
For i As Integer = vars("trow") To vars("brow")
    r1 = tb1.Table.Rows(i)
    If Names.Contains(r1("行编码")) = False Then '判断集合是否包括"电视机"
        Names.Add(r1("行编码"))
    End If
Next

For Each djbh As String In names
    Dim dr As DataRow = DataTables("出入库明细表").Find("行编码='" & djbh & "'")
    If dr IsNot Nothing Then
        Dim sr As DataRow 
        sr = DataTables("政策备案明细表").sqlFind("[供应商内码] = '" & r1("供应商内码") & "' And [渠道商内码] = '" & r1("渠道商内码") & "' And [品种内码] = '" & r1("品种内码") & "'And [销售单位内码] = '" & r1("销售单位内码") & "'", "制单日期 Desc") '在后台查找符合条件的行
     
        If sr IsNot Nothing Then '如果找到了符合条件的行
          
            dr("渠道商返利单价") = sr("渠道商返利单价")
           dr.save 
        End If
       
    End If
    
Next

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


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/20 9:09:00 [只看该作者]

代码放在什么事件里?vars("trow")和 vars("brow")值是怎么来的?

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


加好友 发短信
等级:婴狐 帖子:41 积分:822 威望:0 精华:0 注册:2018/9/15 20:39:00
  发帖心情 Post By:2025/2/20 19:06:00 [只看该作者]

 1、代码放在什么事件里?

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


加好友 发短信
等级:婴狐 帖子:41 积分:822 威望:0 精华:0 注册:2018/9/15 20:39:00
  发帖心情 Post By:2025/2/20 19:10:00 [只看该作者]

1、代码放在什么事件里?
按钮键-Click事件
2、vars("trow")和 vars("brow")值是怎么来的?
Table表-选择-AfterSelRangEcheng

  With e.NewRange
    vars("trow") = .TopRow
    vars("brow") = .BottomRow
End With

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


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/20 20:03:00 [只看该作者]


Dim t As Table = e.Form.Controls("Table1").Table
Dim r1 As Row
Dim Names As New List(Of String)
For i As Integer = t.TopPosition To t.BottomPosition
    r1 = t.Rows(i)
    If Names.Contains(r1("行编码")) = False Then
        Names.Add(r1("行编码"))
        Dim dr As DataRow = DataTables("出入库明细表").Find("行编码='" & r1("行编码") & "'")
        MsgBox("i=" & i & ",find=" & (dr IsNot Nothing))
        If dr IsNot Nothing Then
            Dim sr As DataRow 
            sr = DataTables("政策备案明细表").sqlFind("[供应商内码] = '" & r1("供应商内码") & "' And [渠道商内码] = '" & r1("渠道商内码") & "' And [品种内码] = '" & r1("品种内码") & "'And [销售单位内码] = '" & r1("销售单位内码") & "'", "制单日期 Desc") '在后台查找符合条件的行
            MsgBox("sr=" & (sr IsNot Nothing))
            If sr IsNot Nothing Then '如果找到了符合条件的行
                dr("渠道商返利单价") = sr("渠道商返利单价")
                dr.save 
            End If
        End If
    End If
Next

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


加好友 发短信
等级:婴狐 帖子:41 积分:822 威望:0 精华:0 注册:2018/9/15 20:39:00
  发帖心情 Post By:2025/2/20 20:23:00 [只看该作者]

 i=0,find=True

sr = True

数据没有变

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


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/20 21:00:00 [只看该作者]

如果只有i=0,说明只选了1行数据啊

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


加好友 发短信
等级:婴狐 帖子:41 积分:822 威望:0 精华:0 注册:2018/9/15 20:39:00
  发帖心情 Post By:2025/2/20 21:04:00 [只看该作者]

不管选一行,还是多行,数据都不变

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


加好友 发短信
等级:超级版主 帖子:112347 积分:571985 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/20 21:06:00 [只看该作者]

加代码调试看看
            If sr IsNot Nothing Then '如果找到了符合条件的行
msgbox(dr("渠道商返利单价") )
                dr("渠道商返利单价") = sr("渠道商返利单价")
msgbox(dr("渠道商返利单价") )
                dr.save 
            End If

 回到顶部