前言:
实际项目中,我们经常会根据某些条件对数据结果进行搜索,在ChinaExcel中,报表的外部查询步骤如下:
1.建立模板,生成tab模板文件
2.建立一般处理程序返回数据结果
3.建立报表显示页面
4.在报表显示页面中调用js执行语句
实例:
在客户表中根据地区信息查询该地区客户信息.
1.建立数据库TestChinaExcel,在数据库中执行如下建表语句
数据库表结构及数据USE [TestChinaExcel] GO /****** Object: Table [dbo].[客户] Script Date: 09/02/2012 15:13:46 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[客户]( [客户ID] [nvarchar](5) NULL, [公司名称] [nvarchar](40) NOT NULL, [联系人姓名] [nvarchar](30) NULL, [联系人职务] [nvarchar](30) NULL, [地址] [nvarchar](60) NULL, [城市] [nvarchar](15) NULL, [City] [nvarchar](255) NULL, [地区] [nvarchar](15) NULL, [邮政编码] [nvarchar](10) NULL, [国家] [nvarchar](15) NULL, [电话] [nvarchar](24) NULL, [传真] [nvarchar](24) NULL ) ON [PRIMARY] GO INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'ALFKI', N'三川实业有限公司', N'刘小姐', N'销售代表', N'大崇明路50 号', N'天津', N'TianJing', N'华北', N'343567', N'中国', N'(030) 30074321', N'(030) 30765452') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'ANATR', N'东南实业', N'王先生', N'物主', N'承德西路80 号', N'天津', N'TianJing', N'华北', N'234575', N'中国', N'(030) 35554729', N'(030) 35553744') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'ANTON', N'坦森行贸易', N'王炫皓', N'物主', N'黄台北路780 号', N'石家庄', N'ShiJiaZhuang', N'华北', N'985060', N'中国', N'(0321) 5553932', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'AROUT', N'国顶有限公司', N'方先生', N'销售代表', N'天府东街30 号', N'深圳', N'ShengZhen', N'华南', N'890879', N'中国', N'(0571) 45557788', N'(0571) 45556750') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BERGS', N'通恒机械', N'黄小姐', N'采购员', N'东园西甲30 号', N'南京', N'NanJing', N'华东', N'798089', N'中国', N'(0921) 9123465', N'(0921) 55123467') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BLAUS', N'森通', N'王先生', N'销售代表', N'常保阁东80 号', N'天津', N'TianJing', N'华北', N'787045', N'中国', N'(030) 30058460', N'(030) 33008924') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BLONP', N'国皓', N'黄雅玲', N'市场经理', N'广发北路10 号', N'大连', N'DaLian', N'东北', N'565479', N'中国', N'(0671) 88601531', N'(0671) 88601532') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BOLID', N'迈多贸易', N'陈先生', N'物主', N'临翠大街80 号', N'西安', N'Xi''An', N'西北', N'907987', N'中国', N'(091) 85552282', N'(091) 85559199') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BONAP', N'祥通', N'刘先生', N'物主', N'花园东街90 号', N'重庆', N'ChongQing', N'西南', N'567690', N'中国', N'(078) 91244540', N'(078) 91244541') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BOTTM', N'广通', N'王先生', N'结算经理', N'平谷嘉石大街38 号', N'重庆', N'ChongQing', N'西南', N'808059', N'中国', N'(078) 95554729', N'(078) 95553745') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'BSBEV', N'光明杂志', N'谢丽秋', N'销售代表', N'黄石路50 号', N'深圳', N'ShengZhen', N'华南', N'760908', N'中国', N'(0571) 45551212', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'CACTU', N'威航货运有限公司', N'刘先生', N'销售代理', N'经七纬二路13 号', N'大连', N'DaLian', N'东北', N'120412', N'中国', N'(061) 11355555', N'(061) 11354892') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'CENTC', N'三捷实业', N'王先生', N'市场经理', N'英雄山路84 号', N'大连', N'DaLian', N'东北', N'130083', N'中国', N'(061) 15553392', N'(061) 15557293') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'CHOPS', N'浩天旅行社', N'方先生', N'物主', N'白广路314 号', N'天津', N'TianJing', N'华北', N'234254', N'中国', N'(030) 30076545', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'COMMI', N'同恒', N'刘先生', N'销售员', N'七一路37 号', N'天津', N'TianJing', N'华北', N'453466', N'中国', N'(030) 35557647', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'CONSH', N'万海', N'林小姐', N'销售代表', N'劳动路23 号', N'厦门', N'XiaMen', N'华南', N'353467', N'中国', N'(071) 45552282', N'(071) 45559199') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'DRACD', N'世邦', N'黎先生', N'采购员', N'光明东路395 号', N'海口', N'HaiKou', N'华南', N'454748', N'中国', N'(0241) 10391231', N'(0241) 10594282') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'DUMON', N'迈策船舶', N'王俊元', N'物主', N'沉香街329 号', N'常州', N'ChangZhou', N'华东', N'565474', N'中国', N'(056) 40678888', N'(056) 40678989') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'EASTC', N'中通', N'林小姐', N'销售代理', N'光复北路895 号', N'天津', N'TianJing', N'华北', N'809784', N'中国', N'(030) 35550297', N'(030) 35553373') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'ERNSH', N'正人资源', N'谢小姐', N'销售经理', N'临江东街62 号', N'深圳', N'ShengZhen', N'华南', N'906853', N'中国', N'(0571) 76753425', N'(0571) 76753426') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FAMIA', N'红阳事业', N'王先生', N'市场助理', N'外滩西路238 号', N'深圳', N'ShengZhen', N'华南', N'687759', N'中国', N'(0571) 75559857', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FISSA', N'嘉元实业', N'刘小姐', N'结算经理', N'东湖大街28 号', N'天津', N'TianJing', N'华北', N'458965', N'中国', N'(091) 25559444', N'(091) 25555593') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FOLIG', N'嘉业', N'刘先生', N'助理销售代理', N'经三纬二路8 号', N'石家庄', N'ShiJiaZhuang', N'华北', N'576906', N'中国', N'(0321) 20161016', N'(0321) 20161017') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FOLKO', N'五洲信托', N'苏先生', N'物主', N'沿江北路942 号', N'南京', N'NanJing', N'华东', N'876060', N'中国', N'(087) 69534671', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FRANK', N'友恒信托', N'余小姐', N'市场经理', N'经二路9 号', N'秦皇岛', N'QinHuangDao', N'华北', N'500798', N'中国', N'(089) 3877310', N'(089) 3877451') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FRANR', N'国银贸易', N'余小姐', N'市场经理', N'辅城街42 号', N'南京', N'NanJing', N'华东', N'546590', N'中国', N'(087) 40322121', N'(087) 40322120') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FRANS', N'文成', N'唐小姐', N'销售代表', N'临江街32 号', N'常州', N'ChangZhou', N'华东', N'820097', N'中国', N'(056) 34988260', N'(056) 34988261') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'FURIB', N'康浦', N'王先生', N'销售经理', N'授业路361 号', N'南京', N'NanJing', N'华东', N'964532', N'中国', N'(087) 43542534', N'(087) 43542535') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'GALED', N'东旗', N'王先生', N'市场经理', N'尊石路238 号', N'深圳', N'ShengZhen', N'华南', N'411012', N'中国', N'(0571) 20334560', N'(0571) 20334561') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'GODOS', N'建资', N'陈先生', N'销售经理', N'广惠东路38 号', N'张家口', N'ZhangJiaKou', N'华北', N'242353', N'中国', N'(0922) 5558282', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'GOURL', N'业兴', N'李柏麟', N'销售员', N'淮河路348 号', N'上海', N'Shanghai', N'华东', N'241008', N'中国', N'(021) 85559482', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'GREAL', N'仪和贸易', N'王先生', N'市场经理', N'经三纬四路18 号', N'北京', N'Peking', N'华北', N'120475', N'中国', N'(010) 65557555', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'GROSR', N'光远商贸', N'陈先生', N'物主', N'成川东街951 号', N'天津', N'TianJing', N'华北', N'122096', N'中国', N'(030) 32832951', N'(030) 32833397') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'HANAR', N'实翼', N'谢小姐', N'结算经理', N'永惠西街392 号', N'南昌', N'NanChang', N'华东', N'674674', N'中国', N'(0211) 5550091', N'(0211) 5558765') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'HILAA', N'远东开发', N'王先生', N'销售代表', N'崇盛路82 号', N'深圳', N'ShengZhen', N'华南', N'498045', N'中国', N'(0571) 75551340', N'(0571) 75551948') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'HUNGC', N'五金机械', N'苏先生', N'销售代表', N'德昌路甲29 号', N'大连', N'DaLian', N'东北', N'564576', N'中国', N'(053) 5556874', N'(053) 5552376') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'HUNGO', N'师大贸易', N'苏先生', N'销售员', N'黄岗北路73 号', N'天津', N'TianJing', N'华北', N'683045', N'中国', N'(030) 29672542', N'(030) 29673333') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'ISLAT', N'鑫增贸易', N'周先生', N'市场经理', N'东府大街31 号', N'西安', N'Xi''An', N'西北', N'502255', N'中国', N'(091) 65558888', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'KOENE', N'永业房屋', N'谢丽秋', N'销售员', N'东园大路78 号', N'重庆', N'ChongQing', N'西南', N'101057', N'中国', N'(025) 55509876', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LACOR', N'霸力建设', N'谢小姐', N'销售代表', N'东岗大路9 号', N'重庆', N'ChongQing', N'西南', N'048766', N'中国', N'(025) 30598410', N'(025) 30598511') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LAMAI', N'池春建设', N'王先生', N'销售经理', N'青年南街291 号', N'天津', N'TianJing', N'华北', N'502564', N'中国', N'(030) 61776110', N'(030) 61776111') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LAUGB', N'和福建设', N'刘先生', N'市场助理', N'创业西路238 号', N'天津', N'TianJing', N'华北', N'055654', N'中国', N'(030) 15553392', N'(030) 15557293') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LAZYK', N'春永建设', N'王先生', N'市场经理', N'劳动辅路395 号', N'深圳', N'ShengZhen', N'华南', N'013056', N'中国', N'(0571) 35557969', N'(0571) 35556221') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LEHMS', N'幸义房屋', N'刘先生', N'销售代表', N'七一路89 号', N'南京', N'NanJing', N'华东', N'167556', N'中国', N'(069) 20245984', N'(069) 20245874') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LETSS', N'兴中保险', N'方先生', N'物主', N'豪威西路238 号', N'厦门', N'XiaMen', N'华南', N'750165', N'中国', N'(0415) 5555938', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LILAS', N'富泰人寿', N'陈先生', N'结算经理', N'光伦东路381 号', N'天津', N'TianJing', N'华北', N'995085', N'中国', N'(030) 33116954', N'(030) 33117256') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LINOD', N'保信人寿', N'方先生', N'物主', N'创业北路32 号', N'海口', N'Haikou', N'华南', N'301256', N'中国', N'(0899) 3345612', N'(0899) 3349393') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'LONEP', N'正太实业', N'林慧音', N'销售经理', N'花园西街28 号', N'天津', N'TianJing', N'华北', N'440875', N'中国', N'(030) 25559573', N'(030) 25559646') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'MAGAA', N'阳林', N'刘先生', N'市场经理', N'城东大街47 号', N'深圳', N'ShengZhen', N'华南', N'801056', N'中国', N'(0571) 36402300', N'(0571) 36402311') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'MAISD', N'悦海', N'陈玉美', N'销售代理', N'八一路384 号', N'青岛', N'QingDao', N'华东', N'054356', N'中国', N'(0217) 2012467', N'(0217) 2012468') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'MEREP', N'华科', N'吴小姐', N'市场助理', N'和光北路952 号', N'大连', N'DaLian', N'东北', N'280235', N'中国', N'(0514) 5558054', N'(0514) 5558055') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'MORGK', N'仲堂企业', N'徐文彬', N'市场助理', N'创业街57 号', N'天津', N'TianJing', N'华北', N'440007', N'中国', N'(030) 34202376', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'NORTS', N'富同企业', N'王先生', N'销售员', N'广西路24 号', N'石家庄', N'ShiJiaZhuang', N'华北', N'780008', N'中国', N'(031) 5557733', N'(031) 555-2530') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'OCEAN', N'利合材料', N'陈先生', N'销售代理', N'东临大街32 号', N'秦皇岛', N'QinHuangDao', N'华北', N'780005', N'中国', N'(0117) 1355333', N'(0117) 1355535') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'OLDWO', N'瑞栈工艺', N'苏先生', N'销售代表', N'创业路361 号', N'南京', N'NanJing', N'华东', N'825777', N'中国', N'(097) 5557584', N'(097) 555-2880') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'OTTIK', N'一诠精密工业', N'刘先生', N'物主', N'基石路238 号', N'深圳', N'ShengZhen', N'华南', N'687578', N'中国', N'(0571) 10644327', N'(0571) 10765721') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'PARIS', N'立日股份有限公司', N'李柏麟', N'物主', N'惠安大路38 号', N'石家庄', N'ShiJiaZhuang', N'华北', N'502299', N'中国', N'(031) 4234226', N'(031) 4234227') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'PERIC', N'就业广兑', N'唐小姐', N'销售代表', N'淮水路348 号', N'天津', N'TianJing', N'华北', N'786785', N'中国', N'(030) 55223745', N'(030) 55453745') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'PICCO', N'顶上系统', N'方先生', N'销售经理', N'纬四路523 号', N'常州', N'ChangZhou', N'华东', N'907077', N'中国', N'(056) 6562722', N'(056) 6562723') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'PRINI', N'康毅系统', N'林彩瑜', N'销售代表', N'成东大街951 号', N'张家口', N'ZhangJiaKou', N'华北', N'801070', N'中国', N'(019) 3565634', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'QUEDE', N'兰格英语', N'王先生', N'结算经理', N'广安南街82 号', N'北京', N'PeKing', N'华北', N'785678', N'中国', N'(010) 65554252', N'(010) 65554545') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'QUEEN', N'留学服务中心', N'赵小姐', N'市场助理', N'定成路92 号', N'北京', N'Peking', N'华北', N'785878', N'中国', N'(010) 85551189', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'QUICK', N'高上补习班', N'徐先生', N'结算经理', N'广场路205 号', N'天津', N'TianJing', N'华北', N'787869', N'中国', N'(030) 72035188', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'RANCH', N'大东补习班', N'陈小姐', N'销售代表', N'创业东路38 号', N'深圳', N'ShengZhen', N'华南', N'837207', N'中国', N'(0571) 51235555', N'(0571) 51235556') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'RATTC', N'学仁贸易', N'余小姐', N'助理销售代表', N'辅城路601 号', N'温州', N'WenZhou', N'华东', N'837209', N'中国', N'(055) 5555939', N'(055) 5553620') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'REGGC', N'建国科技', N'陈先生', N'销售员', N'肥水路93 号', N'天津', N'TianJing', N'华北', N'345256', N'中国', N'(030) 52256721', N'(030) 52256722') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'RICAR', N'宇欣实业', N'黄雅玲', N'助理销售代理', N'大峪口街702 号', N'天津', N'TianJing', N'华北', N'101046', N'中国', N'(030) 45553412', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'RICSU', N'永大企业', N'余小姐', N'销售经理', N'港务口街29 号', N'南京', N'NanJing', N'华东', N'478668', N'中国', N'(089) 7034214', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'ROMEY', N'德化食品', N'王先生', N'结算经理', N'劝业路103 号', N'天津', N'TianJing', N'华北', N'871108', N'中国', N'(030) 74546200', N'(030) 77456210') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SANTG', N'汉光企管', N'王先生', N'物主', N'成前路116 号', N'重庆', N'ChongQing', N'西南', N'027773', N'中国', N'(071) 98923542', N'(071) 98924744') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SAVEA', N'大钰贸易', N'胡继尧', N'销售代表', N'冠成园路321 号', N'重庆', N'ChongQing', N'西南', N'801023', N'中国', N'(071) 85558097', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SEVES', N'艾德高科技', N'谢小姐', N'销售经理', N'起义路231 号', N'天津', N'TianJing', N'华北', N'013072', N'中国', N'(030) 55657717', N'(030) 55655646') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SIMOB', N'百达电子', N'徐文彬', N'物主', N'黄口江路521 号', N'天津', N'TianJing', N'华北', N'972077', N'中国', N'(030) 31123456', N'(030) 31133557') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SPECD', N'赐芳股份', N'刘先生', N'市场经理', N'车站东路831 号', N'厦门', N'XiaMen', N'华南', N'899453', N'中国', N'(0177) 4755601', N'(1177) 4755602') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SPLIR', N'昇昕股份有限公司', N'谢小姐', N'销售经理', N'车站南路721 号', N'深圳', N'ShengZhen', N'华南', N'820077', N'中国', N'(0571) 35554680', N'(0571) 35556525') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'SUPRD', N'福星制衣厂股份有限公司', N'徐先生', N'结算经理', N'机场东路951 号', N'天津', N'TianJing', N'华北', N'050337', N'中国', N'(030) 23672220', N'(030) 23672221') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'THEBI', N'上河工业', N'谢小姐', N'市场经理', N'车站路631 号', N'海口', N'Haikou', N'华南', N'013077', N'中国', N'(053) 5553612', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'THECR', N'新巨企业', N'成先生', N'市场助理', N'车站西路391 号', N'成都', N'ChengDu', N'西南', N'350894', N'中国', N'(046) 55565834', N'(046) 55568083') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'TOMSP', N'东帝望', N'成先生', N'市场经理', N'起义路甲921 号', N'青岛', N'QingDao', N'华东', N'474747', N'中国', N'(0251) 1031259', N'(0251) 1035695') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'TORTU', N'协昌妮绒有限公司', N'王先生', N'物主', N'长春路371 号', N'天津', N'TianJing', N'华北', N'507392', N'中国', N'(030) 45552933', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'TRADH', N'亚太公司', N'陈先生', N'销售代表', N'石碑路丁211 号', N'石家庄', N'ShiJiaZhuang', N'华北', N'871102', N'中国', N'(031) 55562167', N'(031) 55562168') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'TRAIH', N'伸格公司', N'林小姐', N'销售员', N'石碑路甲141 号', N'深圳', N'ShengZhen', N'华南', N'342356', N'中国', N'(0571) 55518257', N'(0571) 55512174') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'VAFFE', N'中硕贸易', N'苏先生', N'销售经理', N'威成路321 号', N'深圳', N'ShengZhen', N'华南', N'837206', N'中国', N'(0571) 86213243', N'(0571) 86223344') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'VICTE', N'千固', N'苏先生', N'销售代理', N'明成西街471 号', N'秦皇岛', N'QinHuangDao', N'华北', N'598018', N'中国', N'(071) 8325486', N'(071) 8325487') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'VINET', N'山泰企业', N'黎先生', N'结算经理', N'舜井街561 号', N'天津', N'TianJing', N'华北', N'575909', N'中国', N'(030) 26471510', N'(030) 26471511') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'WANDK', N'凯旋科技', N'方先生', N'销售代表', N'使馆路371 号', N'天津', N'TianJing', N'华北', N'212400', N'中国', N'(030) 71100361', N'(030) 07115428') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'WARTH', N'升格企业', N'王俊元', N'结算经理', N'黄池路931 号', N'石家庄', N'ShiJiaZhuang', N'华北', N'974030', N'中国', N'(031) 9814655', N'(031) 9813655') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'WELLI', N'凯诚国际顾问公司', N'刘先生', N'销售经理', N'威刚街481 号', N'深圳', N'ShengZhen', N'华南', N'175600', N'中国', N'(0571) 35558122', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'WHITC', N'椅天文化事业', N'方先生', N'物主', N'花园西路831 号', N'常州', N'ChangZhou', N'华东', N'860954', N'中国', N'(026) 5554112', NULL) INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'WILMK', N'志远有限公司', N'王小姐', N'物主/市场助理', N'光明北路211 号', N'张家口', N'ZhangJiaKou', N'华北', N'411019', N'中国', N'(023) 9022458', N'(023) 9022458') INSERT [dbo].[客户] ([客户ID], [公司名称], [联系人姓名], [联系人职务], [地址], [城市], [City], [地区], [邮政编码], [国家], [电话], [传真]) VALUES (N'WOLZA', N'汉典电机', N'刘先生', N'物主', N'潼关路41 号', N'天津', N'TianJing', N'华北', N'421008', N'中国', N'(030) 56427012', N'(030) 56427012')
2.建立模板,生成tab文件
建立模板,导出外部动态查询.tab,将报表附加到Web系统中.
3.建立一般处理程序(HandlerCustomerQuery.ashx)返回数据结果
建立一般处理程序 /// <summary> /// HandlerCustomerQuery 的Ì?摘a要°a说¦Ì明¡Â /// 根¨´据Y传ä?入¨?的Ì?SQL语®?句?查¨¦询¡¥结¨¢果? /// </summary> public class HandlerCustomerQuery : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; string Connstr = "Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=sa;Initial Catalog=TestChinaExcel;Data Source=.\\sql2008"; ADODB.Connection conn = new ADODB.Connection(); coReportEngine.ReportSvr rsave = new coReportEngine.ReportSvr(); conn.Open(Connstr, "", "", -1); string sql = context.Request.QueryString["sql"]; sql = context.Server.UrlDecode(context.Request.QueryString["sql"]); context.Response.BinaryWrite((byte[])rsave.GetData(conn, sql)); } public bool IsReusable { get { return false; } } }
4.在报表显示页面中调用js执行语句
js执行语句<script type="text/javascript"> window.onload = function () { setInit(外部动态查询.tab'); getData(); } function getData() { var ChinaExcel = document.getElementById("ChinaExcel"); ChinaExcel.SetCanRefresh(false); ChinaExcel.RestoreAfterCalculate(); //会重新加载计算之前的报表模板,确保可以重新计算 var sql = "select * from 客户基本信息"; var value = document.getElementById("txt").value; if (value != "") { sql += " where 地区='" + value + "'"; } var sql = encodeURIComponent(sql); var url = "HandlerCustomerQuery.ashx?lrid=" + Math.random() + "&sql=" + sql; ChinaExcel.SetStatDataSource1(url, 2, "客户数据源"); ChinaExcel.SetOnlyShowTipMessage(true); ChinaExcel.ReCalculate(); ChinaExcel.SetOnlyShowTipMessage(false); ChinaExcel.SetCanRefresh(true); ChinaExcel.Refresh(); } </script>此处需要注意:
a.url中要加Math.random()防止缓存;
b.ChinaExcel.SetStatDataSource1方法中的第三个参数要和tab模板中定义的数据源名称一致
页面Form页内容如下:
页面内容<table style="width: 100%;" border="0"> <tr> <td> 地区:<input type='text' id="txt" /> <input type="button" id="btn_GetData" value="获取" onclick="getData();" /> </td> </tr> <tr> <td style="width: 100%;"> <object id="ChinaExcel" style="left: 0px; top: 0px; width: 100%; height:500px;text-align:center;" classid="CLSID:15261F9B-22CC-4692-9089-0C40ACBDFDD8" name="ChinaExcel" > <param name="_Version" value="131072" /> <param name="_ExtentX" value="13970" /> <param name="_ExtentY" value="9155" /> <param name="_StockProps" value="0" /> </object> </td> </tr> </table>效果如下:
例子下载地址:动态报表查询(外部查询).rar