Foxtable(狐表)用户栏目专家坐堂 → 请问老师,我哪里设置错误了,为什么不显示相关内容~~


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

主题:请问老师,我哪里设置错误了,为什么不显示相关内容~~

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/19 22:42:00 [显示全部帖子]

以下是引用wealthwind在2014-5-19 22:35:00的发言:

为什么“文件管理”的最新文件,不能定位到“原文件的”而是定位错误??

 

额,不要这样做,不要用两个表。一个表就够了。【任务表】

 

任务表里面加入一列,可以叫窗口列、或者叫表名列。

 

生成link的时候,设置e.Link.Name就设置成比如【窗口列_编号列】

 

在点击的时候,根据e.Link.Name取出窗口列和编号列,写代码。这样代码就不必重复了,而且结构很好。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/19 22:50:00 [显示全部帖子]

 回复39楼,请看38楼,你要把两表的内容合并成一个表才规范。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/19 23:05:00 [显示全部帖子]

 你加入表名之后。新增一行记录的时候,就要给表名列赋值。

 

 最新个案、最新文件,根据表名列用sqlselect选择出来后生成。

 

 你做不好,就上传例子吧。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/20 9:51:00 [显示全部帖子]

 请自己拷贝带进去。拷贝全部事件的代码,OK?

 

  

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


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/20 10:19:00 [显示全部帖子]

如下,很简单的问题,基本语法。很担心你做出来的东西以后有问题你怎么办

 

Dim tname As String = e.Link.Name.Split("_")(0)
Dim num As String = e.Link.Name.Split("_")(1)

Dim filter As String = "编号 = '" & num & "'"

Dim fdr As DataRow = DataTables(tname).Find(filter)
If fdr Is Nothing Then
    DataTables(tname).AppendLoad(filter, False)
End If
Dim idx As Integer = Tables(tname).FindRow(filter)
If idx > -1 Then
    Tables(tname).Position = idx
    fdr = DataTables("任务提醒").sqlFind(filter)
    fdr("用户") = cStr(fdr("用户")).replace(user.Name & ",", "").replace("," & user.Name, "").replace(user.name, "")
    fdr.save
    Select Case tname
        Case "个案申请"
            Forms("功能栏").Open()
        Case "文件管理"
            Forms("文件管理").Open()
    End Select
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/20 19:03:00 [显示全部帖子]

 回复64楼,把保存事件的代码改成这样,看红色位置

 

'对任务栏表进行操作
Dim dt As DataTable = DataTables("任务提醒")
Dim msg As String
If e.DataRow.isnull("裁决")=False Then
    msg  = "已结案"
Else If e.DataRow.isnull("终审")=False Then
    msg = "待裁决"
Else If e.DataRow.isnull("批准") =False Then
    msg  = "待终审"
Else If e.DataRow.Isnull("审核") = False Then
    msg  = "待批准"
Else
    msg  = "待审核"
End If
dt.SQLDeleteFor("文件名称='" & e.DataRow("文件名称") & "'")
Dim ndr As DataRow = dt.AddNew
ndr("编号") = e.DataRow("编号")
ndr("文件名称") = e.DataRow("文件名称")
ndr("状态") = msg
ndr("表名") = e.DataTable.Name
Dim us As String = ""
For Each user As UserInfo In users
    us &= user.Name & ","
Next
ndr("用户") = us.TrimEnd(",")
ndr.Save


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/20 21:54:00 [显示全部帖子]

 如下代码,照着改一下

 

Static maxIdx As Integer
Dim idx As Integer = DataTables("任务提醒").SQLCompute("max(_Identify)")
If maxIdx = idx Then
    Return
Else
    maxIdx = idx
End If
'Static ib As Boolean
Dim f As WinForm.Form = Forms("任务提醒")
f.Open
'Dim fw As Integer = 250
'Dim fh As Integer = 250
'Dim k As  Integer = 1
'If k > 0 AndAlso f.Opened = False Then
'    f.Open(SysInfo.WorkingAreaWidth-fw,SysInfo.WorkingAreaHeight)
'End If

If f.Opened Then
    'Dim h As Integer = SysInfo.ScreenHeight - SysInfo.WorkingAreaHeight + fh
    'If f.BaseForm.Top > SysInfo.WorkingAreaHeight - fh Then
        'For i As Integer = 1 To h
            'f.setbounds(SysInfo.WorkingAreaWidth-fw,SysInfo.WorkingAreaHeight-i,fw-19,fh)
        'Next
    'End If
    Dim tbr As WinForm.TopicBar = f.Controls("TopicBar1")
    Dim tpg_system As WinForm.TopicPage = tbr.Pages("最新个案")
    Dim tpg_new As WinForm.TopicPage = tbr.Pages("新任务")
    Dim tpg_system1 As WinForm.TopicPage = tbr.Pages("最新文件")
    Dim tpg_new1 As WinForm.TopicPage = tbr.Pages("待签署意见")
   
    tpg_system.Links.Clear
    tpg_new.Links.Clear
    tpg_system1.Links.Clear
    tpg_new1.Links.Clear
   
    Dim dt As DataTable = DataTables("任务提醒")
    Dim filter As String
    Select Case user.Roles
        Case "个案拆分"
            filter = "待审核"
        Case "行销部主管"
            filter = "待批准"
        Case "行销部经理"
            filter = "待终审"
        Case "Boss"
            filter = "待裁决"
        Case Else
            filter = "1=2"
    End Select
   
    Dim filter1 As String
    Select Case user.Roles
        Case "行销部主管"
            filter1 = "待审核"
        Case "行销部经理"
            filter1 = "待批准"
        Case Else
            filter1 = "1=2"
    End Select
   
    Dim rand As Integer = 0
    For Each dr As DataRow In dt.sqlSelect("编号 is not null")
       
        Select Case dr("表名")
            Case "个案申请"
                If Cstr(dr("用户")).Contains(user.name) Then
                    tpg_system.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                End If
                If dr("状态") = filter Then
                    tpg_new.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                End If
            Case "文件管理"
                If Cstr(dr("用户")).Contains(user.name) Then
                    tpg_system1.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                End If
                If dr("状态") = filter1 Then
                    tpg_new1.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                End If
        End Select
            
    Next
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 9:34:00 [显示全部帖子]

以下是引用wealthwind在2014-5-21 9:33:00的发言:
没其他问题,就是窗口还是不显示未处理数量

 

在窗口哪里显示未处理数量?这个和你的统计表有什么关系?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 9:40:00 [显示全部帖子]

 如果要统计,这样统计,要在哪里显示,自己决定。

 

Dim count1 As Integer = DataTables("任务提醒").SQLCompute("count(_Identify)", "表名 = '个案申请' and 用户 like '*" & user.Name & "*'")
Dim count2 As Integer = DataTables("任务提醒").SQLCompute("count(_Identify)", "表名 = '文件管理' and 用户 like '*" & user.Name & "*'")


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 9:42:00 [显示全部帖子]

 或者在这里统计

 

Dim count1 As Integer = 0
Dim count2 As Integer = 0

For Each dr As DataRow In dt.sqlSelect("编号 is not null")
   
    Select Case dr("表名")
        Case "个案申请"
            If Cstr(dr("用户")).Contains(user.name) Then
                tpg_system.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                count1 += 1
            End If
            If dr("状态") = filter Then
                tpg_new.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                count1 += 1
            End If
        Case "文件管理"
            If Cstr(dr("用户")).Contains(user.name) Then
                tpg_system1.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                count2 += 1
            End If
            If dr("状态") = filter1 Then
                tpg_new1.Links.Add(dr("表名") & "_" & dr("编号"), dr("文件名称"))
                count2 += 1
            End If
    End Select
   
Next


 回到顶部
总数 25 上一页 1 2 3 下一页