Foxtable(狐表)用户栏目专家坐堂 → 复制新增


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

主题:复制新增

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
复制新增  发帖心情 Post By:2018/8/2 9:15:00 [只看该作者]


代码写的下面代码中有dnew("业务跟单") = usna,这一句应该是在新增行中将列值改为当前操作用户,为什么复制新增后,新的行中显示老的操作用户,旧的行中显示的却是新的操作用户
复制新增前


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


复制新增后



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






Dim Result As DialogResult

If  Tables("报价单").Current("研发部_总监审核")="研发-总监" Then
Result = MessageBox.Show("确认要新增版本吗?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
 If Result = DialogResult.Yes  Then


    If usna Like "业务*" Or usna="admin" Or usna="研发-祝炫丽" Then

      Dim r As Row = Tables("报价单").Current
      Dim dnew As Row = Tables("报价单").AddNew



Dim name As String = r("订单编号")
Dim max As String
Dim idx As Integer
max = Tables("报价单").Compute("Max(订单编号)","订单编号 like '" & name & "%' and [_Identify] <> " & r("_Identify"))
If max > "" AndAlso max.Contains("*") Then '如果存在最大编号
    idx = CInt(max.split("*")(1)) + 1 '获得最大编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
r("订单编号") = name & "*" & Format(idx,"000")



      For Each c As Col In Tables("报价单").Cols
          If c.Name <> "研发管理费" And c.Name <> "后勤管理费" And c.Name <> "制造费"   Then

             If c.Name = "订单编号" Then

                dnew(c.Name) = name
                ElseIf c.Name <> "_Identify" Then
                 dnew(c.Name) = r(c.Name)
      dnew("材料成本")=Tables("报价单.报价明细").Compute("Sum(金额)","订单编号='" & Tables("报价单").Current("订单编号") & "'")
      dnew("财务审核") = Nothing
      dnew("总经理审批") = Nothing
      dnew("订单量") = 10000
      dnew("业务跟单") = usna
             End If
          End If 
      Next



      Dim drs As List(Of DataRow)
      drs = r.DataRow.GetChildRows("报价明细")
      Dim rc As DataRow
      For Each dr As DataRow In drs
         rc = dr.Clone
         rc("订单编号") = name
      Next
    End If

 Else
    MessageBox.show("你无此操作权限!")
 End If
Else
     MessageBox.show("未审核报价款式不能复制新增版本!")
End If
[此贴子已经被作者于2018/8/2 9:17:30编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/2 9:19:00 [只看该作者]

试试改成

 

ElseIf c.Name <> "_Identify" AndAlso c.name <> "业务跟单" Then
  
    dnew(c.Name) = r(c.Name)
End If
msgbox(usna)

dnew("业务跟单") = usna

dnew("材料成本")=Tables("报价单.报价明细").Compute("Sum(金额)","订单编号='" & Tables("报价单").Current("订单编号") & "'")
dnew("财务审核") = Nothing
dnew("总经理审批") = Nothing
dnew("订单量") = 10000

[此贴子已经被作者于2018/8/2 9:19:06编辑过]

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
  发帖心情 Post By:2018/8/2 9:31:00 [只看该作者]

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

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/2 9:40:00 [只看该作者]

上传具体实例测试。

 

或者加上 http://www.foxtable.com/webhelp/scr/2218.htm

 

[此贴子已经被作者于2018/8/2 9:41:29编辑过]

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
  发帖心情 Post By:2018/8/2 9:59:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.foxdb


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/2 10:03:00 [只看该作者]

你给的例子测试没问题,请上传具体有问题的实例测试。

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
  发帖心情 Post By:2018/8/2 11:10:00 [只看该作者]


给的列子就是有问题嘛,正好反了

新增前

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



新增后

图片点击可在新窗口打开查看此主题相关图片如下:222.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/8/2 11:14:24编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/2 11:27:00 [只看该作者]

' Tables("报价单").Current.Clone()

' Tables("报价明细").save
' Dim idx As String

' Tables("报价单").Current("订单编号") =Tables("报价单").Current("订单编号") & "*"
Dim Result As DialogResult

If  Tables("报价单").Current("研发部_总监审核")="研发-总监" Then
    Result = MessageBox.Show("确认要新增版本吗?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes  Then
       
        Dim r As Row = Tables("报价单").Current
        Dim dnew As Row = Tables("报价单").AddNew
        Dim name As String = r("订单编号")
        Dim max As String
        Dim idx As Integer
        max = Tables("报价单").Compute("Max(订单编号)","订单编号 like '" & name & "%' and [_Identify] <> " & r("_Identify"))
        If max > "" AndAlso max.Contains("*") Then '如果存在最大编号
            idx = CInt(max.split("*")(1)) + 1 '获得最大编号的后三位顺序号,并加1
        Else
            idx = 1 '否则顺序号等于1
        End If
       
        For Each c As Col In Tables("报价单").Cols
            If c.Name <> "研发管理费" And c.Name <> "后勤管理费" And c.Name <> "制造费"   Then
               
                If c.Name = "订单编号" Then
                   
                    dnew(c.Name) = name
                ElseIf c.Name <> "_Identify" AndAlso c.name <> "业务跟单"  Then
                    dnew(c.Name) = r(c.Name)
                   
                End If
            End If
        Next

        'dnew("材料成本")=Tables("报价单.报价明细").Compute("Sum(金额)","订单编号='" & Tables("报价单").Current("订单编号") & "'")
        'dnew("财务审核") = Nothing
        'dnew("总经理审批") = Nothing
        'dnew("订单量") = 10000
        dnew("订单编号") = name & "*" & Format(idx,"000")
        dnew("业务跟单") = usna
        
        Dim drs As List(Of DataRow)
        drs = r.DataRow.GetChildRows("报价明细")
        Dim rc As DataRow
        For Each dr As DataRow In drs
            rc = dr.Clone
            rc("订单编号") = dnew("订单编号")
        Next
    End If
   
   
Else
    MessageBox.show("未审核报价款式不能复制新增版本!")
End If


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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
  发帖心情 Post By:2018/8/2 11:30:00 [只看该作者]

好了,谢谢

[此贴子已经被作者于2018/8/2 11:51:19编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/2 11:52:00 [只看该作者]

我,测试没问题。请认真测试楼上代码。


 回到顶部