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


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

主题:[求助]

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


加好友 发短信
等级:幼狐 帖子:190 积分:1593 威望:0 精华:0 注册:2013/1/6 19:46:00
[求助]  发帖心情 Post By:2016/8/16 16:07:00 [只看该作者]

 

当订单表中只要存在过品名和型号规格时,在商品表中相同的品名和型号规格行不能删除和修改,但计量单位和单价列可以修改。

当订单表中未存在过品名和型号规格时,在商品表中相同的品名和型号规格行能删除和修改,计量单位和单价列也能修改。


目的:当期只要在订单表中出现过的商品,均不能在商品表中删除或修改品名和规格型号;否侧当期内,在订单表中未出现过的商品,均能在商品表中删除或修改。

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


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/16 16:12:00 [只看该作者]

If e.DataCol.Name = "品名" Or e.DataCol.Name = "型号规格"  Then
    Dim dr As DataRow
    dr = DataTables("订单").Find("品名 = '" & e.DataRow("品名") & "' And 型号规格 = '" & e.DataRow("型号规格") & "'")
    If dr IsNot Nothing Then
        MessageBox.Show("此订单号已经存在!")
        e.Cancel = True
    End If
End If

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


加好友 发短信
等级:幼狐 帖子:190 积分:1593 威望:0 精华:0 注册:2013/1/6 19:46:00
  发帖心情 Post By:2016/8/16 16:19:00 [只看该作者]

试过,行,这问题纠结了很久,还是未理解透教程。谢谢大红袍。


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


加好友 发短信
等级:幼狐 帖子:190 积分:1593 威望:0 精华:0 注册:2013/1/6 19:46:00
  发帖心情 Post By:2016/8/20 9:26:00 [只看该作者]

@大红袍    上次请教你并得到你的帮助,得 以实现这功能: 当期只要在订单表中出现过的商品,均不能在商品表中删除或修改品名和规格型号;否侧当期内,在订单表中未出现过的商品,均能在商品表中删除或修改。

但还不完善,无论订单表中是否出现过,均可以直接删除该行,这是不允许的。只要在订单表中出现过的商品,不允许在商品表中直接删除该行,不能在商品表中删除或修改品名和规格型号,其他列可以修改,如计量单位、单价列可以修改。


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/8/20 9:32:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/scr/0605.htm

具体问题上传实例

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


加好友 发短信
等级:幼狐 帖子:190 积分:1593 威望:0 精华:0 注册:2013/1/6 19:46:00
  发帖心情 Post By:2016/8/20 10:58:00 [只看该作者]

实例

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


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/8/20 11:31:00 [只看该作者]

商品表

BeforeDeleteDataRow事件
If DataTables("订单").Find("品名='" & e.DataRow("品名") & "' and 型号规格='" & e.DataRow("型号规格") & "'") IsNot Nothing Then
    msgbox("不能删除")
    e.Cancel = True
End If

PrepareEdit事件
Select Case e.Col.Name
    Case "品名","型号规格"
        If DataTables("订单").Find("品名='" & e.Row("品名") & "' and 型号规格='" & e.Row("型号规格") & "'") IsNot Nothing Then
            e.Cancel = True
        End If
End Select

 回到顶部