Foxtable(狐表)用户栏目专家坐堂 → 又一个综合示例的问题


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

主题:又一个综合示例的问题

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


加好友 发短信
等级:幼狐 帖子:125 积分:1544 威望:0 精华:0 注册:2017/3/16 1:12:00
又一个综合示例的问题  发帖心情 Post By:2017/10/11 11:18:00 [只看该作者]

老师好,我现刚学习到:移动开发/使用表格/又一个综合示例 的课程,
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:称动测试.rar

因我是Acc数据库,虽与帮助一模
一样的代码但还是运行不了的,但又不知从何着手只好求助老师了

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


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

测试路径

 

http://127.0.0.1:88/Edit.htm

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:称动测试.foxdb

[此贴子已经被作者于2017/10/11 11:46:58编辑过]

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


加好友 发短信
等级:幼狐 帖子:125 积分:1544 威望:0 精华:0 注册:2017/3/16 1:12:00
  发帖心情 Post By:2017/10/11 15:28:00 [只看该作者]

甜老师好,我现是想实现“又一综合示例”所说的“四个页面切换按钮”功能,所有该示例的自定义函数已录入,现我登录(张三,888)界面后,再输入:http://127.0.0.1:88/filter.htm,能显示筛选界面,再按界面的筛选名称填入条件后、确定则显示出错了(见附件),我估计是自定义List函数中没有通过造成的,但又不知是哪一地方出错了咧。
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

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


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

 

[此贴子已经被作者于2017/10/11 16:09:05编辑过]

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


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

内部函数list

 

Dim e As RequestEventArgs = args(0)
Dim wb As New WeUI
Dim flt As String
If e.GetValues.ContainsKey("unfilter") Then '如果是取消筛选
    wb.ClearCookie() '清除Cookie
ElseIf e.PostValues.Count > 0
    flt = Functions.Execute("GetFilter",e, wb) '根据输入内容合成条件,注意WeUI也需要传递过去
Else
    flt = Functions.Execute("GetCookieFilter",e) '根据Cookie合成条件
End If
'获取要显示的页码
Dim page As Integer = 0 '默认page为0,显示第一页
Dim pageRows As Integer = 10 '每页10行
If e.GetValues.ContainsKey("page") Then  '如果地址中有page参数
    Integer.TryParse(e.GetValues("page"), page) '提取page参数
End If
Dim StartRow As Integer = page * pageRows + 1 '此页第一行
Dim EndRow As Integer = (page + 1) * pageRows '此页最后一行
'提取此页数据
Dim cmd As New SQLCommand
cmd.ConnectionName = "orders" '记得设置数据源名称
cmd.CommandText = "Select Count(*) From {订单}"
If flt > "" Then
    cmd.CommandText = cmd.CommandText & " where " & flt
End If
Dim Count As Integer = cmd.ExecuteScalar() '获取总的行数
Dim Pages As Integer = Math.Ceiling(Count/PageRows) '计算出总页数
cmd.CommandText = "Select Top " & pagerows & " *,(数量*单价) As 金额 from (Select [_identify]  as 订单编号,日期,客户,(Select sum(数量)  from {订单} where 订单编号={订单}.订单编号) As 数量,单价,产品 From {订单}) A where "
If flt > "" Then
    cmd.CommandText &= iif(page=0,  "1=1 and " & flt ,  "[订单编号] not In (Select top " & pagerows * page & " [_identify]  from {订单}  order by [_identify]) and " & flt & " order by [订单编号]")
Else
    cmd.CommandText &= iif(page=0,  "1=1" ,  "[订单编号] not In (Select top " & pagerows * page & " [_identify]  from {订单}  order by [_identify]) order by [订单编号]")
End If

Dim dt As DataTable = cmd.ExecuteReader


'合成网页
With wb.AddTable("","Table1")
    .ActiveSheet = "menu" '指定菜单
    .CreateFromDataTable(cmd.ExecuteReader)
End With
With wb.AddButtonGroup("","btg2", False)
    If page > 0 Then
        .Add("btnFirst", "第一页","","List.htm?page=0")
        .Add("btnPrev", "上一页","","List.htm?page=" & page - 1)
    Else
        .Add("btnFirst", "第一页","button").Kind = 1
        .Add("btnPrev", "上一页","button").Kind = 1
    End If
    If Endrow < count Then
        .Add("btnNext", "下一页","","List.htm?page=" & page + 1)
        .Add("btnLast", "最末页","","List.htm?page=" & pages - 1)
    Else
        .Add("btnNext", "下一页","button").Kind = 1
        .Add("btnLast", "最末页","button").Kind = 1
    End If
End With
With wb.AddActionSheet("","menu") '设计菜单
    If flt = "" Then
        .Add("mnuFilter", "数据筛选","filter.htm")
    Else
        .Add("mnuUnFilter", "取消筛选","list.htm?unfilter=true")
    End If
    .Add("mnuStatistics", "数据统计","tongji.htm")
    .Add("mnuCancel","取消","",True)
End With
e.WriteString(wb.Build)


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


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

内部函数GetCookieFilter

 

Dim flt As String
Dim e As RequestEventArgs = args(0)
If e.Cookies.ContainsKey("product")  Then
    flt = "产品 = '" & e.Cookies("product") & "'"
End If
If e.Cookies.ContainsKey("customer")  Then
    If flt > "" Then
        flt = flt & " and "
    End If
    flt = flt & "客户 = '" & e.Cookies("customer") & "'"
End If
If e.Cookies.ContainsKey("startdate")  Then
    If flt > "" Then
        flt = flt & " and "
    End If
    flt = flt & "日期 >= #" & e.Cookies("startdate") & "#"
End If
If e.Cookies.ContainsKey("enddate")  Then
    If flt > "" Then
        flt = flt & " and "
    End If
    flt = flt & "日期 <= #" & e.Cookies("enddate") & "#"
End If
Return flt


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


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

内部函数GetFilter

 

Dim e As RequestEventArgs = args(0)
Dim wb As WeUI = Args(1)
Dim flt As String
If e.PostValues.ContainsKey("product") Then
    flt = "产品 = '" & e.PostValues("product") & "'" '合成条件
    wb.AppendCookie("product", e.PostValues("product"),30) '将值写入cookie中
Else
    wb.DeleteCookie("product") '删除cookie
End If
If e.PostValues.ContainsKey("customer") Then
    If flt > "" Then
        flt = flt & " and "
    End If
    flt = flt & "客户 = '" & e.PostValues("customer") & "'" '合成条件
    wb.AppendCookie("customer", e.PostValues("customer")) '将值写入cookie中
Else
    wb.DeleteCookie("customer") '删除cookie
End If
If e.PostValues.ContainsKey("startdate") Then
    If flt > "" Then
        flt = flt & " and "
    End If
    flt = flt & "日期 >= #" & e.PostValues("startdate") & "#"
    wb.AppendCookie("startdate", e.PostValues("startdate"))
Else
    wb.DeleteCookie("startdate")
End If
If e.PostValues.ContainsKey("enddate") Then
    If flt > "" Then
        flt = flt & " and "
    End If
    flt = flt & "日期 <= #" & e.PostValues("enddate") & "#"
    wb.AppendCookie("enddate", e.PostValues("enddate"))
Else
    wb.DeleteCookie("enddate")
End If
Return flt


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


加好友 发短信
等级:幼狐 帖子:125 积分:1544 威望:0 精华:0 注册:2017/3/16 1:12:00
  发帖心情 Post By:2017/10/11 17:42:00 [只看该作者]

OK!OK!非常地谢谢甜老师,如此我可以进入实例操作了!

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


加好友 发短信
等级:幼狐 帖子:125 积分:1544 威望:0 精华:0 注册:2017/3/16 1:12:00
  发帖心情 Post By:2017/10/20 10:09:00 [只看该作者]

敬爱的甜老师救命呀!我按老师您修改通过了的《订单》“四个页面切换按钮”示例,逐一用替换法将实例
列代入,但我的实例中不需要乘积列(数量*单价=金额),倒想增加合计列但不迫切(A+B=C),而老师
您修改好的List自定义函数中的红色字段中有好多处AS语句,AS来AS去的我都不知AS到哪去了,倒AS出来个
双行表头的(见附件),晕菜了!折磨了我近十天了实在无计可施,只好再来向老师求救了。主要是S e 
l e c t语句太难读懂了。界面登录 http://127.0.0.1
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:称动测试.rar


图片点击可在新窗口打开查看此主题相关图片如下:第一种表头.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:第二种表头.png
图片点击可在新窗口打开查看
:88 (张三,888)。
[此贴子已经被作者于2017/10/20 10:10:30编辑过]

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


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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:称动测试.zip


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