请教c/s下视图查询问题?

灰大师 2004-08-11 05:12:01
本人建一个表单写LS代码,对视图查询,查询结果导出成EXCEl,至于导出我会了,请大家分析一下查询
举个例子:
姓名 性别 年龄
王 男 40
李 女 40
张 女 40
马 男 20
王 女 30
现在我新建一表单,表单中设3个文本域,分别对应姓名,性别,年龄,另外还有一个查询按钮
开始查啦,如果这3个文本域都不输入任何东西,我把整个视图全导入EXCEL,成功
如果我选择查所有性别为男的文档,我可以新建一个视图(如view1),然后把"性别"这一列设成分类,排序,然后Set view=db.getview("view1"),...view.GetAllEntriesByKey(性别域),查询成功
如果我选择查询条件: 男的且年龄为40,我可以新建一个视图(如view2),然后把"性别+年龄"这个合成列设成分类,排序,然后Set view=db.getview("view1"),...view.GetAllEntriesByKey(性别+年龄),查询成功
我的问题是:做这样一个查询还要根据不同的条件新建很多视图,太麻烦,如果复合查询的条件多了,没法实现啊,因为组合情况太多了!
...全文
133 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
灰大师 2004-08-12
  • 打赏
  • 举报
回复
我看到大家不是经常研究将文档啊,视图的值导到Excel啊,大家难道都是把整个视图一导就完事了吗?而不是动态的导出所需要的记录了
灰大师 2004-08-12
  • 打赏
  • 举报
回复
呵呵,LS当然可以的,我想知道的是在所有文档中通过视图怎样查到年龄=40 and 性别=男的所有文档,或者符合条件文档的域的值,没有结果怎么导成EXcel啊
进一步讲,年龄=40 and 性别=男这个条件换成动态的,如再加上工资>3000等等又怎么查询
按我的例子
.....
Set view=db.getview("视图A") 建一个视图A,"性别"列为分类排序的
Set vc = view.GetAllEntriesByKey(cdoc.性别域(0),True) cdoc.性别域(0)这个文本域输入 "男"的话,下面的i=2,即所有文档查询到2个文档中有男的
i=vc.count
下面我把符合条件的2个文档,取出他的域值,再导成excel,省去部分代码
For x=1 To vc.count
Set entry = vc.GetNthEntry(x)
Set doc = entry.Document
excelSheet1.Cells(i,1).Value = doc.姓名(0)
excelSheet1.Cells(i,2).Value = doc.性别(0)
excelSheet1.Cells(i,3).Value = doc.年龄(0)
...........省..
i=i+1
Next
以上我做了,运行了成功导入,没有任何问题
他的局限性是必须根据你查询的条件建立一个视图,如上我按性别查询,先建立了一个性别分类排序的视图,要是我再按年龄=40+工资=3000的条件查询,我还得建立一个 "年龄+工资"的合成列分类排序的视图,要是这样的话组合条件就多了,我建立的视图就多了,这是不现实的

sufeiya 2004-08-11
  • 打赏
  • 举报
回复
用ls有什么不可以的吗,if 年龄=40 and 性别=男 then
导出excel
灰大师 2004-08-11
  • 打赏
  • 举报
回复
我不知道各位是怎样开发这类问题的
按楼上所说,我可以把所有文档getview,再循环getnext(doc...)取出所有值,然后搞成动态数组
如把所有文档的年龄域值取出来,存成动态数组(40,40,40,20,30)再和查询条件比较,当查询条件只选年龄时也能得到结果,至于怎么导成EXCEL,那是VBA编程,本论坛就有例子
但是进行组合查询也不方便啊

有没有人搞过这种查询啊,指导一下
要是这种问题用ASP+sqlserver做很简单的,select * from xx where 条件1 ="男" and 条件2="40", 在notes中我不知道咋弄
bug0303 2004-08-11
  • 打赏
  • 举报
回复
你导入到excel是用的什么办法?据我所知,好像只能对某个视图(或文档集)循环吧?如果是这样那就很简单了,在循环的时候判断是否符合你的查询条件,符合的才向excel里面导不就行了?
灰大师 2004-08-11
  • 打赏
  • 举报
回复
大家帮看看,可以完全推翻我的方法,只要实现功能就行

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧