原文:Visual Studio 2012使用水晶报表Crystal Report

SAP在 2013年1月14日 released SAP Crystal Reportsdeveloper version for Microsoft Visual Studio - 2012
你可以从下面链接下载:
http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_13_0_5.exe

下载并安装入你的电脑。安装 完毕,可以看到那些曾经熟悉的工具。

练习练习,算是重温一下使用Crystal report 创建报表的网页。在SQL Server 2012中创建一个表:

CREATE TABLE [dbo].[CustomerOrders]
(
[CO] INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
[Item] NVARCHAR(40) NOT NULL,
[Description] NVARCHAR(100) NULL,
[Unit] NVARCHAR(10),
[Quantity] INT NOT NULL,
[Price] DECIMAL(18,4) NOT NULL
)
GO

CustomerOrders

表创建好之后,添加一些记录。

INSERT INTO [dbo].[CustomerOrders]
([Item],[Description],[Unit],[Quantity],[Price]) VALUES
('W023-695-225',N'火星',N'个','','10320.56'),
('W055-641-001',N'土星',N'个','','90000.43'),
('T406-439-226',N'地球',N'个','','23000.81'),
('G071-852-444',N'水星',N'个','','15930.32'),
('U222-476-371',N'木星',N'个','','55179.55') Go

创建一个存储过程,这个存储过程是获取所有记录,将为水晶报表或是asp.net可用。

CREATE PROCEDURE [dbo].[usp_CustomerOrders_GetAll]
AS
SELECT [CO],[Item],[Unit],[Description],[Quantity],[Price],([Quantity] * [Price]) AS [Amount] FROM [dbo].[CustomerOrders]
GO

usp_CustomerOrders_GetAll

在Visual Studio 2012创建一个站点,创建一个网页,拉CrystalReportViewer控件入网页。


拉入CrystalReportviewer控件之后,网页自然产生网页yellow高亮代码。再看看Web.config中添加了哪些代码?


Ok,现在我们要连接数据库了,因此还要配置Web.config,注意一下providerName="System.Data.SqlClient"此句,是为了在CryStal report中连接数据库时,能快速找到数据库。

<connectionStrings>
<add name="InsusConnectionString" connectionString="Server=127.0.0.1;Initial Catalog=Demo;User ID=Arrot;Password=5236$88;Packet Size=8192;Max Pool Size=1000;"
providerName="System.Data.SqlClient"/>
</connectionStrings>



接下来,我们在网站下,创建一个CustomerOrders.rpt水晶报表,创建过程,可以参考下列动画:


创建好CryStalReport之后,再来看看web.config添加产生了哪些代码:


去Insus.NET的博客,下载一个DLL,这是一个处理asp.net与SQL Server数据沟通组件。
http://www.cnblogs.com/insus/archive/2010/01/23/1654653.html

解压之后,把DLL移至站点的BIN目录中。

然后在App_Code目录,创建一个对象。

现在,我们可以把CustonerOrders.rpt加载到CryStalReportViewer控件去了:


运行看看:


下面是导出铵钮pop-up窗口:

导出格式丰富多样:

Visual Studio 2012使用水晶报表Crystal Report的更多相关文章

  1. Visual Studio 2010打开水晶报表是出现二进制

    水晶报表在64位的机器下未安装成功 解决方法 到http://www.cnblogs.com/siyunianhua/p/4806513.html下载  水晶报表VS2010版IDE安装标准版SAP ...

  2. 如何将水晶报表(Crystal Report)导入葡萄城报表

    当从旧的报表平台迁移到葡萄城报表工具时,意味着有大量的报表设计工作要重复去做,如果有一款工具能够在这些工具之间进行自由转换,就能省去报表开发几乎一半的工作量. 葡萄城报表为兼容其他报表控件,提供了简单 ...

  3. 水晶报表 Crystal Report 调用存储过程时出错 找不到表 ,解决方法。

    用 CrystalReportViewer1 控件在asp.net的网页上显示报表,假设做报表时调用数据表数据的方式调用是能够成功的.但报表是用存储过程获取数据方式会出现下面错误: 找不到表'RptO ...

  4. 报表学习总结(一)——ASP.NET 水晶报表(Crystal Reports)的简单使用

    一.水晶报表简介 Crystal Reports(水晶报表)是一款商务智能(BI)软件,主要用于设计及产生报表.水晶报表是业内最专业.功能最强的报表系统,它除了强大的报表功能外.最大的优势是实现了与绝 ...

  5. 如何在Visual Studio 2012中发布Web应用程序时自动混淆Javascript

    同Java..NET实现的应用程序类似,Javascript编写的应用程序也面临一个同样的问题:源代码的保护.尽管对大多数Javascript应用公开源代码不算是很严重的问题,但是对于某些开发者来说, ...

  6. 在Visual Studio 2012中使用VMSDK开发领域特定语言(二)

    本文为<在Visual Studio 2012中使用VMSDK开发领域特定语言>专题文章的第二部分,在这部分内容中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计.定制.调试.发布以 ...

  7. 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)

    前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...

  8. Visual Studio 2012 trial version

    Update: vs2012.5.iso http://download.microsoft.com/download/9/F/1/9F1DEA0F-97CC-4CC4-9B4D-0DB45B8261 ...

  9. 在Visual Studio 2012 Blue theme下使用Dark theme的文本编辑器颜色设置

    Visual Studio 2012 默认提供了3种color theme: blue,light,和dark.其中dark的文本编辑器颜色设定很爽,可是整个菜单项加上一些小的窗口如Find Resu ...

随机推荐

  1. SVG图像技术摘要

    该公司今天没有,研究了最近流行SVG技术,发现,随着css3不断流行,和浏览器技术的发展,SVG网站将取代大量的图片,成为主流站点图片展示. AI是我们经常使用的矢量图编辑器,如今AI能够直接另存SV ...

  2. Android.mk中的经常使用语法

    Android.mk编译文件是用来向Android NDK描写叙述你的C,C++源码文件的, 今天查了一些经常使用的的语法. 一 概述: 一个Android.mk文件用来向编译系统描写叙述你的源码. ...

  3. POJ 1252 Euro Efficiency

    背包 要么 BFS 意大利是说给你几个基本的货币,组成 1~100 所有货币,使用基本上的货币量以最小的. 出口 用法概率.和最大使用量. 能够BFS 有可能 . 只是记得数组开大点. 可能会出现 1 ...

  4. SharePoint 2013 配置开发环境,需安装VS2012插件

    原文:SharePoint 2013 配置开发环境,需安装VS2012插件 SharePoint 2013已经安装好了,接下来就是配置开发环境,安装VS2012,但是,装好了以后,发现没有ShareP ...

  5. ThreadLocal可能引起的内存泄露(转)

    threadlocal里面使用了一个存在弱引用的map,当释放掉threadlocal的强引用以后,map里面的value却没有被回收.而这块value永远不会被访问到了. 所以存在着内存泄露. 最好 ...

  6. Codeforces Round #257 (Div. 2/A)/Codeforces450A_Jzzhu and Children

    解题报告 没什么好说的,大于m的往后面放,,,re了一次,,, #include <iostream> #include <cstdio> #include <cstri ...

  7. 于ios7在遇到一些发展deprecated问题

    cell.textLabel.textAlignment = UITextAlignmentCenter; 现在我想写cell.textLabel.textAlignment =NSTextAlign ...

  8. 使用PHP顶替JS有趣DOM

    較简单,我须要把一个导航页的数据整理好写入数据库.一个比較直观的方法是对html文件进行分析.通用的方法是用php的正則表達式来匹配.可是这样做开发和维护都非常困难,代码可读性非常差. 导航页的数据都 ...

  9. 利用缓存、Timer间隔时间发送微信的实例,很有用的例子

    //Class WechatOfferExcutor 此类为微信触发类,属于上层调用类,其中有用到用静态变量缓存offer信息,Task异步执行发送方法等 using Newtonsoft.Json. ...

  10. RegisterStartupScript和RegisterClientScriptBlock区别

    RegisterStartupScript(key, script) RegisterClientScriptBlock(key, script) 这两个方法的作用都是从前台向后台写脚本,且都接受两个 ...