python 水晶报表_水晶报表连接Oracle做数据报表笔记

首先,新建一个水晶报表的文件,这个时候要给这个报表文件绑定一个oracle数据源,

选择右侧菜单的这个东西,选择“数据库专家”,打开之后是这么一个界面:

选择建立新连接:

这个地方最关键,也是我为什么要写这篇日志的原因。这里很坑,就是这里的服务一定要是Oracle安装程序里的tnsnames.ora文件配置的节点的名称,切记!

例如这个:

ALi=

(DESCRIPTION=

(ADDRESS=

(PROTOCOL=TCP)

(HOST=192.168.1.1)

(PORT=1521)

)

(CONNECT_DATA=

(SERVICE_NAME=mir)

)

)

这里的服务就要填写ALi。然后再输入相应的用户名和密码就OK了。

第二章:参数

首先,水晶报表里面和RDLC一样有参数字段,然后水晶报表的数据源里面写自定义SQL的时候也是可以定义参数字段的。OK,那么问题来了,我们从.Net程序里传入的参数字段是什么呢?

首先,你在数据源自定义的sql里面新增的参数,会自动在报表参数字段中相应的新增一个参数。然后你也可以自己在参数字段中新增参数。跟数据源绑定的参数最下角是有一个小标识的:

最后,上完整的.Net端的代码:

//实例化报表

ReportDocument rpt = new ReportDocument();

rpt.Load(Application.StartupPath + "\\Pan.rpt");

//注册数据源,如果不注册则打开报表的时候会提示登录

TableLogOnInfo log = new TableLogOnInfo();

log.ConnectionInfo.ServerName = "";

log.ConnectionInfo.DatabaseName = "orcl";

log.ConnectionInfo.UserID = "UserId";

log.ConnectionInfo.Password = "XXXX";

rpt.Database.Tables[].ApplyLogOnInfo(log);

//为报表控件绑定报表

this.crystalReportViewer1.ReportSource = rpt;

//设置参数,这里需要三个变量,对应的报表中每一个参数都可以传入多个值

ParameterFields t = new ParameterFields();

ParameterField paramField = new ParameterField();

ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();

ParameterValues paramValues = new ParameterValues();

paramField.ParameterFieldName = "ProductId";

paramDiscreteValue.Value = "PA01010020";

paramValues.Add(paramDiscreteValue);

paramField.CurrentValues = paramValues;

t.Add(paramField);

this.crystalReportViewer1.ParameterFieldInfo = t;

在VS2012后的版本中做数据报表时,提示尚未指定报表“Report1”的报表定义

有一群的朋友在用VS2012做数据报表时,老是提示 本地报表处理期间出错. 尚未指定报表“Report1”的报表定义 未将对象引用设置到对象的实例. 我看了一下,步骤没错,我用VS2010做了一下,一 ...

MS SQL到Oracle的数据迁移笔记

MS SQL到Oracle的数据迁移笔记 一.任务背景 旧系统使用MS SQL Server数据库,新系统使用Oracle数据库,现在需要将旧系统中的数据迁移到新系统中,旧数据按照约定的规则转换后,能 ...

SSRS连接ORACLE数据库制作报表

SSRS报表基于ORACLE数据库做报表示例. 开发环境:VS2010 SQL SERVER 数据库:SQL SERVER 2012 PS:数据库连接部分可能有还有个问题就是ORACLE数据源这一部分 ...

python连接oracle导出数据文件

python连接oracle,感觉table_list文件内的表名,来卸载数据文件 主脚本: import os import logging import sys import configpars ...

c# 连接oracle 读取数据

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

linux shell脚本连接oracle查询数据插入文件和日志文件中

#!/bin/sh sqlplus "用户名/密码@数据库"<

EF6 连接Oracle 迁移数据错误解决方法

环境:vs2015 + EF6 +ODP 数据库Oracle 11G add-migratioin 正常,但在update-database 时报如下错误: System.Runtime.Serial ...

连接oracle读取数据

没怎么用过oracle,而且是在地税内网内部估计是防火墙的原因虚拟机里也连不上oracle,刚开始费了很多周折查找问题,现在又放弃使用直连数据库了,记下来以备后用吧 public class Load ...

【转】mybatis连接Oracle做增删改查

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值