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


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

主题:请教

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


加好友 发短信
等级:三尾狐 帖子:759 积分:7038 威望:0 精华:1 注册:2008/9/2 20:04:00
请教  发帖心情 Post By:2009/1/30 15:01:00 [只看该作者]

为了快速对FOXTABLE有一个了解,我自己想做一个例子,根据实际中需要解决的问题向高手请教,来逐步学习理解foxtable,现请教如下:
1、如何在“位置”中设置带条件的列表项目,数据来源是“基准地价”表中“街道名称”,条件是只列出“基准地价”表中的“乡镇名称”=“估价报告”中“所在乡镇”。
2、“工业地价”、“商业地价”与“住宅地价”三列数据是动态的从“基准地价”表中选择,选择是标准是同时符合五个条件:①“基准地价”表中的“乡镇名称”=“估价报告”中“所在乡镇”,②“基准地价”表中的“街道名称”=“估价报告”中“位置”;③“基准地价”表中的“土地级别”=“估价报告”中“土地级别”;④“估价报告”中“估价期日”介于“基准地价”的“开始执行日期”与“结束日期”之间;⑤“基准地价”中“用地性质”等于“估价报告”中对应的列。请问这三列是用数据列还是表达式列合适并如何设置代码?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:土地估价系统.table


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2009/1/30 16:23:00 [只看该作者]

“工业地价”、“商业地价”与“住宅地价”三列数据来源于“基准地价”表中的哪一列?

⑤“基准地价”中“用地性质”等于“估价报告”中对应的列。请问这三列是用数据列还是表达式列合适并如何设置代码?

估价报告表中没有用地性质,怎么对应?

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


加好友 发短信
等级:三尾狐 帖子:759 积分:7038 威望:0 精华:1 注册:2008/9/2 20:04:00
  发帖心情 Post By:2009/1/30 17:01:00 [只看该作者]

在基准地价中的用地性质只有三种:工业、商业、住宅,我在估价报告中把这三种情况分成三列,分别是:工业地价、商业地价、基准地价,想达到的目的是自动引用“基准地价”表中“基准地价”列中对应的数据

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2009/1/30 19:00:00 [只看该作者]

PrepareEdit事件代码

If e.IsFocusCell Then
    If e.Col.Name = "土地位置" Then
        If e.Row.IsNull("土地所在乡镇") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("街道名称", "[乡镇名称] = '" & e.Row("土地所在乡镇") & "'")
        End If
    End If
End If

If e.IsFocusCell Then
    If e.Col.Name = "工业地价" Then
        If e.Row.IsNull("土地级别") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("基准地价", "[乡镇名称] = '" & e.Row("土地所在乡镇") & "'and [街道名称] = '" & e.Row("土地位置") & "'and [土地级别] = '" & e.Row("土地级别") & "'and [开始执行日期] <= #" & e.Row("估价期日") & "# and [结束日期] >= #" & e.Row("估价期日") & "# and [用地性质] = '工业'")
        End If
    End If
End If

If e.IsFocusCell Then
    If e.Col.Name = "商业地价" Then
        If e.Row.IsNull("土地级别") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("基准地价", "[乡镇名称] = '" & e.Row("土地所在乡镇") & "'and [街道名称] = '" & e.Row("土地位置") & "'and [土地级别] = '" & e.Row("土地级别") & "'and [开始执行日期] <= #" & e.Row("估价期日") & "# and [结束日期] >= #" & e.Row("估价期日") & "# and [用地性质] = '商业'")
        End If
    End If
End If

If e.IsFocusCell Then
    If e.Col.Name = "住宅地价" Then
        If e.Row.IsNull("土地级别") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("基准地价", "[乡镇名称] = '" & e.Row("土地所在乡镇") & "'and [街道名称] = '" & e.Row("土地位置") & "'and [土地级别] = '" & e.Row("土地级别") & "'and [开始执行日期] <= #" & e.Row("估价期日") & "# and [结束日期] >= #" & e.Row("估价期日") & "# and [用地性质] = '住宅'")
        End If
    End If
End If


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2009/1/30 19:45:00 [只看该作者]

楼上的代码表达式段太长,还是改成这样比较好。


Dim str As String = "[乡镇名称] = '" & e.Row("土地所在乡镇") & "'"
If e.IsFocusCell Then
    If e.Col.Name = "土地位置" Then
        If e.Row.IsNull("土地所在乡镇") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("街道名称",str)
        End If
    End If
End If
str = str & " and [街道名称] = '" & e.Row("土地位置") & "'and [土地级别] = '" & e.Row("土地级别") & "'and [开始执行日期] <= #" & e.Row("估价期日") & "# and [结束日期] >= #" & e.Row("估价期日") & "# "
If e.IsFocusCell Then
    If e.Col.Name = "工业地价" Then
        If e.Row.IsNull("土地级别") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("基准地价", str & " and [用地性质] = '工业'")
        End If
    End If
End If

If e.IsFocusCell Then
    If e.Col.Name = "商业地价" Then
        If e.Row.IsNull("土地级别") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("基准地价", str & " and [用地性质] = '商业'")
        End If
    End If
End If

If e.IsFocusCell Then
    If e.Col.Name = "住宅地价" Then
        If e.Row.IsNull("土地级别") Then
            e.Col.Combolist = ""
        Else
            e.Col.Combolist = DataTables("基准地价").GetComboListString("基准地价", str & " and [用地性质] = '住宅'")
        End If
    End If
End If


 回到顶部