分销282报表二次开发汪燕1.报表的二次开发总体思路总体架构数据库技术的关键应用组件的开发Web页面的开发组件的调试报表的布署1.1总体架构业务数据库语句生成数据处理用户Web页面数据用户需要数据系统数据库(Udrp_sysmanage)二次开发Web页面查询条件SQL语句1.2数据库技术的关键应用SQL语句的常规应用;SQL语句的深层应用;存储过程PROCEDURE;自定义函数FUNCTION;临时表TempTable;游标CURSOR;1.3组件的开发三个方法的创立与web的接口方法(供web页面调用,传入查询条件xml串,返回查询结果xml串)执行数据库语句的方法构造输出xml串的方法1.4web页面的开发查询条件页面的开发查询条件控件的布署并考虑关键字的回写查询条件xml字串的构成查询结果页面的开发Cell控件的应用查询结果xml字串数据的输出查询结果的打印组件调用页面的开发1.5组件的调试编写vbs文件获取组件方法参数利用web的查询页面获取组件调用需要的参数1.6报表的布署菜单链接数据的增加sys_menu打印模板数据的增加CellPrintTemplateMainCellPrintTemplateSub2.报表二次开发实例演示以“库存量分布报表”为例演示报表二次开发的实现过程。2.1数据脚本的编写根据用户给予的报表样本分析各输出字段的含义以及与数据库字段的对应关系来构造sql语句。本例是编写了一个存储过程来实现为s_UDRP_RT_WareHouseReport。2.2编写组件执行存储过程参看组件UDRP_StockQuery.Bus_StockQueryC一般需要增加三个方法(参照库存量分布报表)分别是:getWareHouseReport:供asp页面调用,传入查询条件xml字串,返回结果xmlclsDB.getWareHouseReport:执行存储过程返回recordsetmakeWareHouseXML:构造输出的xml字串2.3编写页面显示报表通常需要三个页面:查询条件页面,查询结果页面,组件调用页面查询条件页面参看StockQuery/WareHouseReportQuery.asp查询结果页面参看StockQuery/WareHouseReport.asp组件调用页面参看StockQuery/GetWareHouseReport.asp2.4调试及布署菜单链接增加,在sys_menu表里面相应位置增加一行记录,可以执行参看SELECT*FROMSys_MenuWHERE(fchrModelNameLIKE‘%库存量分布报表%’)所增加的样式增加打印模板数据添加主表CellPrintTemplateMain,参照SELECT*FROMCellPrintTemplateMainWHERE(fchrTemplateID='{121AD407-13F8-4DF3-9693-1F55170289D3}')子表CellPrintTemplateSub,参照SELECT*FROMCellPrintTemplateSubWHERE(fchrTemplateID='{121AD407-13F8-4DF3-9693-1F55170289D3}')