以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 移动端开发 怎么实现查询到姓名并将该姓名相关的多条记录一并显示到筛选结果页面呢? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145828) |
-- 作者:李孝春 -- 发布时间:2020/2/8 19:02:00 -- 移动端开发 怎么实现查询到姓名并将该姓名相关的多条记录一并显示到筛选结果页面呢? 有没有办法实现 麻烦老师们指导指导 谢谢! 如果查询到的姓名张三属于户主姓名的话,就查询表中所有户名姓名都是张三的所有家庭人员记录 如果查询到的姓名张三不属于户主姓名的话,就查询表中张三对应的户主姓名,并显示所有家庭成员记录 红色部分代码 怎么实现只要页面传入的姓名值 先进行判断是否为户主姓名,如果是直接导入户主下的所有成员记录,如果不是,就只显示一条记录。 代码如下: Dim e As RequestEventArgs = args(0) \'获取要显示的页 Dim page As Integer = 0 \'默认page为0,显示第一页 Dim pageRows As Integer = 15 \'每页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 wb As New WeUI Se lect Case e.Path Case "list.htm" wb.AddPageTitle("","ph1","常住人口查询结果") Dim flt As String If e.PostValues.ContainsKey("户主姓名") Then If flt > "" Then flt = flt & " and " End If flt = flt & "[户主姓名] = \'" & e.PostValues("户主姓名") & "\'" End If If e.PostValues.ContainsKey("户主姓名") Then If flt > "" Then flt = flt & " and " End If flt = flt & "[姓名] = \'" & e.PostValues("户主姓名") & "\'" End If Dim cmd As New S QL Command cmd.C \'记得设置数据源名称 cmd.CommandText = "Se lect Count(*) From {常住人口}" Dim Count As Integer = cmd.ExecuteScalar() \'获取总的行数 If flt > "" Then cmd.CommandText = "Se lect * From (Se lect Row_Number() Over(Order by _identify) As [序号],[_Identify],分组名称,户主姓名,姓名,身份证件号码,联系电话,与户主关系 From 常住人口 where " & flt & ") As a " Else cmd.CommandText = "Se lect * From (Se lect Row_Number() Over(Order by _identify) As [序号],[_Identify],分组名称,户主姓名,姓名,身份证件号码,联系电话,与户主关系 From 常住人口) As a " End If Dim dt As DataTable = cmd.ExecuteReader With wb.AddTable("","Table1") .PageNumber = page \'设置页码 .Primarykey = "_Identify" \'设置主键 .ActiveSheet = "menu" \'设置菜单 .CreateFromDataTable(dt,False,"","","序号","分组名称","姓名","联系电话","与户主关系","户主姓名") End With With wb.AddButtonGroup("","btg2", False) \'生成上一页和下一页按钮 If page > 0 Then .Add("btnPrev", "上一页","","List.htm?page=" & page - 1) End If If Endrow < count Then .Add("btnNext", "下一页","","List.htm?page=" & page + 1) End If End With With wb.AddButtonGroup("","btg1",True) .Add("btn1", "重新筛选", "","filter.htm") End With wb.AppendHTML("<sc ript src=\'./lib/table.js\'></sc ript>") \'引入脚本文件 e.WriteString(wb.Build) End Se lect [此贴子已经被作者于2020/2/18 17:16:24编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/2/9 21:13:00 -- If e.PostValues.ContainsKey("户主姓名") Then If flt > "" Then flt = flt & " or " End If flt = flt & "[姓名] = \'" & e.PostValues("户主姓名") & "\'" End If
|
-- 作者:李孝春 -- 发布时间:2020/2/13 0:37:00 -- 回复:(有点蓝)If e.PostValues.ContainsKey("户主姓... 有点蓝老师 改成楼上or后 输入户主姓名,首先查找的是姓名等于输入的值数据 如张三 户主 张二 关系儿子 能不能实现先查找张三是不是户主,如果不是就把户主张二查出来 然后直接显示张二是户主的所有数据 如张三 户主张二 关系儿子 张四 户主张二 关系女儿
|
-- 作者:有点蓝 -- 发布时间:2020/2/13 10:08:00 -- 先设置条件为【户主=\'张三\'】,使用SQLcommand到数据库里查询是否有户主为张三的数据,如果有就直接使用这个条件获取表格数据即可; 如果没有户主为张三的数据,再根据姓名=\'张三\',查询有没有数据,如果没有就提示没有数据返回;如果有就获取户主姓名,如张二,重新设置条件为【户主=\'张二\'】,然后使用这个条件获取表格数据
|
-- 作者:李孝春 -- 发布时间:2020/2/13 14:38:00 -- 回复:(有点蓝)先设置条件为【户主='张三'】,使用S... 语句不大会写 老师可否详细指导一下 |
-- 作者:有点蓝 -- 发布时间:2020/2/13 15:05:00 -- 比如 Dim xm As String = "张三" Dim filter As String = "" If DataTables("常住人口").sqlfind("户主姓名=\'" & xm & "\'") IsNot Nothing Then filter = "户主姓名=\'" & xm & "\'" Else Dim dr As DataRow = DataTables("常住人口").sqlfind("姓名=\'" & xm & "\'") If dr IsNot Nothing Then filter = "户主姓名=\'" & dr("户主姓名") & "\'" Else ‘返回错误提示,如:http://www.foxtable.com/mobilehelp/topics/0058.htm return End If End If msgbox(filter ) |
-- 作者:李孝春 -- 发布时间:2020/2/17 23:05:00 -- 回复:(有点蓝)比如Dim xm As String = "张三"Dim f... 代码修正如下 结果户主姓名输入任何值都是显示全部记录数 麻烦老师继续指导下 谢谢 Dim flt As String="" If e.PostValues.ContainsKey("所属社区") Then flt = "[所属社区] = \'" & e.PostValues("所属社区") & "\'" End If If e.PostValues.ContainsKey("分组名称") Then If flt > "" Then flt = flt & " and " End If flt = flt & "[分组名称] = \'" & e.PostValues("分组名称") & "\'" End If If e.PostValues.ContainsKey("户主姓名") Then Dim xm As String = e.PostValues.ContainsKey("户主姓名") If DataTables("常住人口").sqlfind("户主姓名=\'" & xm & "\'") IsNot Nothing Then flt = flt & "[户主姓名] = \'" & xm & "\'" else Dim dr As DataRow = DataTables("常住人口").sqlfind("姓名=\'" & xm & "\'") If dr IsNot Nothing Then flt = flt & "[户主姓名]=\'" & dr("户主姓名") & "\'" End If End If End If Dim cmd As New SQLCommand cmd.C \'记得设置数据源名称 cmd.CommandText = "Sel ect Count(*) From {常住人口}" Dim Count As Integer = cmd.ExecuteScalar() \'获取总的行数 If flt > "" Then cmd.CommandText = "Sel ect * From (Sele ct Row_Number() Over(Order by _identify) As [序号],[_Identify],分组名称,户主姓名,姓名,身份证件号码,联系电话,现居住地,与户主关系 From 常住人口 where " & flt & ") As a " \'MessageBox.Show(cmd.CommandText) Else cmd.CommandText = "Sele ct * From (Sele ct Row_Number() Over(Order by _identify) As [序号],[_Identify],分组名称,户主姓名,姓名,身份证件号码,联系电话,现居住地,与户主关系 From 常住人口) As a " \'MessageBox.Show(cmd.CommandText) End If [此贴子已经被作者于2020/2/17 23:05:59编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/2/17 23:17:00 -- Dim flt As String="" If e.PostValues.ContainsKey("所属社区") Then flt = "[所属社区] = \'" & e.PostValues("所属社区") & "\'" End If If e.PostValues.ContainsKey("分组名称") Then If flt > "" Then flt = flt & " and " End If flt = flt & "[分组名称] = \'" & e.PostValues("分组名称") & "\'" End If If e.PostValues.ContainsKey("户主姓名") Then Dim xm As String = e.PostValues("户主姓名") If DataTables("常住人口").sqlfind("户主姓名=\'" & xm & "\'") IsNot Nothing Then If flt > "" Then flt = flt & " and " End If flt = flt & "[户主姓名] = \'" & xm & "\'" Else Dim dr As DataRow = DataTables("常住人口").sqlfind("姓名=\'" & xm & "\'") If dr IsNot Nothing Then If flt > "" Then flt = flt & " and " End If flt = flt & "[户主姓名]=\'" & dr("户主姓名") & "\'" End If End If End If
|
-- 作者:李孝春 -- 发布时间:2020/2/17 23:41:00 -- 回复:(有点蓝)Dim flt As String=""If e.PostValue... 增加如果姓名和户主都查询不到记录时的弹窗提醒 结果没有弹出 是一空白页面 If e.PostValues.ContainsKey("人员姓名") Then Dim xm As String = e.PostValues("人员姓名") If DataTables("常住人口").sqlfind("户主姓名=\'" & xm & "\'") IsNot Nothing Then If flt > "" Then flt = flt & " and " End If flt = flt & "[户主姓名] = \'" & xm & "\'" Else Dim dr As DataRow = DataTables("常住人口").sqlfind("姓名=\'" & xm & "\'") If dr IsNot Nothing Then If flt > "" Then flt = flt & " and " End If flt = flt & "[户主姓名]=\'" & dr("户主姓名") & "\'" else With wb.AddMsgPage("","msgpage","查询失败","数据为空!") .icon = "Warn" \'改变图标 .AddButton("btn1","返回").Attribute = "" End With return"" End If End If End If
|
-- 作者:有点蓝 -- 发布时间:2020/2/18 8:49:00 -- 示例 HttpRequest事件代码: Select Case e.Path |