Foxtable(狐表)用户栏目专家坐堂 → 记录表


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

主题:记录表

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


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

以下是引用发财在2014-5-16 17:09:00的发言:
ridx = 1是什么?

 

全局变量,记录记录控件的位置


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/16 17:11:00 [只看该作者]

当第三列的数据合计为1时,不会跳到下一组数据录入?

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


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

 会跳

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/19 15:45:00 [只看该作者]

 表A是关联子表,其中第五列是由主表生成,上述的记录表,造成打开项目时,表A的单价不能生成。

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


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

以下是引用发财在2014-5-19 15:45:00的发言:
 表A是关联子表,其中第五列是由主表生成,上述的记录表,造成打开项目时,表A的单价不能生成。

 

请上传例子。


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/19 16:49:00 [只看该作者]

首先将BeforeLoadInnerTable事件代码设置为:

Select Case e.DataTableName
   
Case "订单","订单明细"
        e.Filter =
"[_Identify] Is Null"
End
Select

这样就解决了!


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/20 15:41:00 [只看该作者]

Dim cr As Row = CurrentTable.Current
If CurrentTable.DataTable.Compute("sum(第三列)","第一列='" & cr("第一列") & "'") =1 Then
    With CurrentTable
        Dim r As Integer
        Dim ary() As String = cr("第一列").split("-")
        r = .Find(ary(0) & "-" & Format((cint(ary(1))+1), "000"), 0, "第一列", False, False, True)
        If r > - 1 Then '如果找到符合条件的行
            .Select(r,2,r,2)
            If  CurrentTable.current.isnull("第五列") Then
                DataTables("表A").AllowEdit = False
                
            Else
                .StartEditing
            End If
        End If
    End With
Else If CurrentTable.DataTable.Compute("sum(第三列)","第一列='" & cr("第一列") & "'") < 1 And CurrentTable.current("第二列") IsNot Nothing And CurrentTable.current("第三列") < >0 And CurrentTable.current("第四列") < >0 Then
    With CurrentTable
        .Position = .Position + 1
        If  CurrentTable.current.isnull("第五列") Then
            DataTables("表A").AllowEdit = False
        Else
            .StartEditing
        End If
    End With
Else
    If  CurrentTable.current.isnull("第五列") Then
        DataTables("表A").AllowEdit = False
    End If
End If

If  Tables("表A").AllowEdit Then
    ridx = 1
    e.Form.Controls("RecordGrid1").basecontrol.Select(1, 1)
    e.Form.Controls("RecordGrid1").basecontrol.StartEditing
End If

出现错误:Cannot find column [第三列].
是不是If CurrentTable.DataTable.Compute("sum(第三列)","第一列='" & cr("第一列") & "'")代码中当表A出现只有一行时,compute出错。

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


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

  呃 ,你确定是这一行错?应该是这一行错 .Position = .Position + 1

 

 行数不够的的时候,你请自动新增一行才对吧?


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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/20 15:52:00 [只看该作者]

    Dim frm As WinForm.Form = Forms("窗口")
    frm.open
    Forms("窗口").Controls("RecordGrid1").basecontrol.Select(1, 1)
    Forms("窗口").Controls("RecordGrid1").basecontrol.StartEditing
    frm.Baseform.Visible = False
    frm.Baseform.ShowDialog
上述代码在菜单设计中输入,是不是这里的错误?

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


加好友 发短信
等级:六尾狐 帖子:1470 积分:8981 威望:0 精华:0 注册:2013/10/24 9:12:00
  发帖心情 Post By:2014/5/20 15:53:00 [只看该作者]

出现错误:Cannot find column [第三列].只在第一行输入时,才出现这样的错误,以后输入的就没有这种情况?

 回到顶部
总数 95 上一页 1 2 3 4 5 6 7 8 9 10 下一页