让ReportBuilder彻底支持Oracle

2016-02-19 19:32 129 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是让ReportBuilder彻底支持Oracle,一起来学习了解下吧!

【 tulaoshi.com - 编程语言 】

  作为Delphi下非常好用的ReportBuilder,一定是程序员们比较爱使用的报表工具之一。只是不知道是Delphi程序员一定不会用Oracle呢,还是用ReportBuilder只是在自己的程序里提供报表,而不会提供报表工具,所以如果你使用过ReportBuilder的EnderUser例子的话,就会知道,在使用Oracle数据库(ADO方式)的情况下,问题很多,根本无法使用。
  这个问题出在ReportBuilder身上,根本与你的程序无关。需要进行的修改如下:
  daAdo.pas(这个怨Oracle)
  ppRptExp.pas
  ppTmplat.pas
  为了尽量少修改源码,建议定义开关值后再进行修改。如:
  {$IFDEF ENABLE_RB_ORA}
  ...
  {$ENDIF}
  准备工作:
  Oracle中需要建立表,因为Oracle没有自增长类型,需要执行如下SQL语句:
  CREATE TABLE "FOLDER" (
  "FOLDERID" NUMBER(10) NOT NULL,
  "NAME" VARCHAR2(60) NOT NULL,
  "PARENTID" NUMBER(10) NOT NULL);
  CREATE SEQUENCE "RBFOLDER" INCREMENT BY 1;
  CREATE OR REPLACE TRIGGER "GEN_FOLDERID" BEFORE
  INSERT ON "FOLDER"
  FOR EACH ROW WHEN(NEW.FOLDERID IS NULL) BEGIN
  SELECT "RBFOLDER".NEXTVAL INTO :NEW.FOLDERID FROM DUAL;
  END;
  
  CREATE TABLE "ITEM"(
  "ITEMID" NUMBER(10) NOT NULL,
  "SIZE0" NUMBER(10),
  "FOLDERID" NUMBER(10) NOT NULL,
  "NAME" VARCHAR2(60) NOT NULL,
  "ITEMTYPE" NUMBER(10),
  "MODIFIED" DATE,
  "DELETED" CHAR(1) DEFAULT 'F',
  "TEMPLATE" LONG RAW);
  CREATE SEQUENCE "RBITEM" INCREMENT BY 1;
  CREATE OR REPLACE TRIGGER "GEN_ITEMID" BEFORE
  INSERT ON "ITEM"
  FOR EACH ROW WHEN(NEW.ITEMID IS NULL) BEGIN
  SELECT "RBITEM".NEXTVAL INTO :NEW.ITEMID FROM DUAL;
  END;
  
  CREATE TABLE "TABLE" (
  "TABLENAME" VARCHAR2(60) NOT NULL,
  "TABLEALIAS" VARCHAR2(60) NOT NULL);
  
  CREATE TABLE "FIELD" (
  "TABLENAME" VARCHAR2(60) NOT NULL,
  "FIELDNAME" VARCHAR2(60) NOT NULL,
  "FIELDALIAS" VARCHAR2(60) NOT NULL,
  "SELECTABLE" CHAR(1) DEFAULT 'T',
  "SEARCHABLE" CHAR(1) DEFAULT 'T',
  "SORTABLE" CHAR(1) DEFAULT 'T',
  "DATATYPE" VARCHAR2(60),
  "AUTOSEARCH" CHAR(1) DEFAULT 'T',
  "MANDATORY" CHAR(1) DEFAULT 'F');
  
  CREATE TABLE RBJOIN (
  TABLENAME1 VARCHAR2(60),
  TABLENAME2 VARCHAR2(60),
  JOINTYPE VARCHAR2(60),
  FIELDNAMES1 VARCHAR2(255),
  FIELDNAMES2 VARCHAR2(255),
  OPERATORS VARCHAR2(60));
  

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  Delphi文件如下:http://www.miracube.com/downloads/rb7ora-patch-0.1.rar

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

来源:https://www.tulaoshi.com/n/20160219/1621271.html

延伸阅读
标签: Web开发
先说明,这个办法只限于iframe中的子页面也是本地页面(不能引用外网页面) ======方法===== 第一步 js部分 function getSize() {        var xScroll, yScroll;               if (window.in...
标签: 瘦身
久坐人群应常练跳绳 对于长期伏案工作的人来说,颈肩和腰椎疾病是挥之不去的阴影。工休间歇抽空跳跳绳,不仅能缓解颈部及脊椎疲劳,还可获得跑步和足疗功能,可以使大脑思维更加灵活和清晰。 一般跳绳30分钟,相当于慢跑90分钟的运动量。当人在跳绳时,双手一圈圈挥动绳的过程中,双肩关节呈360度旋转,能让颈肩得到全方位的锻炼。此外,在一...
标签: 生活常识
怎样让蛏子彻底吐沙 蛏子吐沙干净彻底的小妙招: 用筷子将蛏子与盆底隔开,因为蛏子的位置一直都是在水盆中央,吐出来的沙子,直接沉底了,悬在中间的蛏子再吸进来的水又是干净的,所以么~~~ 买蛏子时向老板要一点海盐,溶于清水中,营造海水的味儿。然后在盆中放两只平时不咋用的筷子,目的是不让小筐沉底,最后将装满蛏子...
标签: Web开发
ZendFramework模板默认扩展名是.phtml,用DW打开后默认是使用纯文本编辑,不能高亮显示也不能显示代码提示等。只需简单修改Dreamweaver的配置文件,即可让DW打开phtml后是使用PHP引擎解析: 找到如下文件: %Dreamweaver安装目录%\ configuration\documenttypes\mmdocumenttypes.xml 将原始内容: documenttype id=”PHP_MySQL” servermod...
标签: windows 操作系统
“开始”菜单中的“运行”是大家比较常用的命令,可是在“运行”窗口下拉列表中会保存所有运行过的程序记录,要清除这些历史记录,有许多方法,比如,打开注册表编辑器,找到HKEY_CURRENT_USER\Software\Microsoft\Windows \CurrentVersion\Explorer\RunMRU,再删除右边窗口中的“a,b,c...”,或者,在组策略“本地计算机策略→用户配...

经验教程

145

收藏

22
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部