Foxtable(狐表)用户栏目专家坐堂 → 请教增加行


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

主题:请教增加行

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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
请教增加行  发帖心情 Post By:2012/10/23 14:37:00 [只看该作者]

Select Case e.DataCol.Name
    Case "规格"
        If e.DataRow.IsNull("规格") = False Then
            If e.DataRow.GetChildRows("规格").Count = 0 Then
                Dim dr As DataRow = DataTables("仓库").AddNew()
                dr("规格") = e.DataRow("规格")
            End If
        End If
End Select

 

怎样修改才能使仓库增加的行不为空行,规格列不重复的规格,谢谢!!!!!!


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/23 15:49:00 [只看该作者]

 代码实现了规格不为空了吧?

 楼主,我看不懂你的意思。
[此贴子已经被作者于2012-10-23 15:49:07编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251397 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/10/23 16:36:00 [只看该作者]

我也不明白,如果只是为了禁止输入重复值,可以看看:

 

http://www.foxtable.com/help/topics/2481.htm

 


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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/10/24 9:34:00 [只看该作者]

在订单表编辑规格,列表项目是仓库表的规格列,如果有就在列表项目提取,没有就创建在仓库表新增行里,现在就是输入已有的规格,仓库表增加空行,新建的没问题。

 

If e.DataCol.Name = "规格" Then
    If
e.NewValue Is Nothing Then
        MessageBox.Show(
"规格不允许为空!")
        e.Cancel =
True
    End
If
End
If

这个也试过,仓库表还是增加空行,没则只有到这里来求教。


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/24 9:48:00 [只看该作者]

 应该不会是这段代码的问题吧。

 你用msgbox()弹出相关的值看一看,关键是看最里面的代码是否有执行。

 楼主自己调试一下。

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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/10/24 10:29:00 [只看该作者]

我是刚刚开始学,消息框不会用,要实现您说的“代码实现了规格不为空了吧?”,应该怎么修改,谢谢!!!


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/24 10:43:00 [只看该作者]

 楼主,把代码改成下面这样,,看是否弹出消息框。

 如果有弹出,就看一下你设置的关联是否正确,是否存在“规格”,对应的表是否正确。

Select Case e.DataCol.Name
    Case "规格"
        If e.DataRow.IsNull("规格") = False Then
            If e.DataRow.GetChildRows("规格").Count = 0 Then
                msgBox(1)
                Dim dr As DataRow = DataTables("仓库").AddNew()
                dr("规格") = e.DataRow("规格")
            End If
        End If
End Select


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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/10/24 10:55:00 [只看该作者]

谢谢!!!!

问题解决。


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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/10/24 11:15:00 [只看该作者]

谢谢您给我的帮助,现在还有个新问题,仓库表里出现了重复的规格,能帮忙解决吗?谢谢!!!!

 


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/24 14:23:00 [只看该作者]

 删除重复代码。

Dim dt As DataTable = DataTables("仓库")
Dim guiges As List(Of String) = dt.GetUniqueValues("规格 is not null", "规格")

Dim idxs As String = ""
For Each guige As String In guiges
    Dim dr As DataRow = dt.Find("规格 = '" & guige & "'")
    idxs = idxs & dr("_Identify") & ","
Next

idxs = idxs.Trim(",")

DataTables("订单").DeleteFor("_Identify not in (" & idxs & ")")

 回到顶部
总数 12 1 2 下一页