搜档网
当前位置:搜档网 › winform水晶报表基础操作从入门到精通

winform水晶报表基础操作从入门到精通

winform水晶报表基础操作从入门到精通
winform水晶报表基础操作从入门到精通

水晶报表基础操作从入门到精通

1、水晶报表注册码

在使用https://www.sodocs.net/doc/a04413148.html,自带的水晶报表时,请注册,否则只能使用30次,水晶报表注册码如下:注册号:6707437608

密码:AAP5GKS0000GDE100DS

2、https://www.sodocs.net/doc/a04413148.html,中使用水晶报表

我们采用下面的几步使用Push模式执行水晶报表:

1)设计一个DataSet

右击“解决方案浏览器”,选择“添加”--“添加新项”-->“数据集”,从“服务器资源管理器”中的“SQL Server”中拖放“Stores”表(位于PUBS数据库中)。再将此表拖入数据集中。而.xsd文件中仅仅包含一个结构图,但是不会有任何数据在里面。

2)创建一个.rpt文件同时将其指定给上一步建立的DataSet。

使用上面的介绍过的方法创建此文件,唯一的不同就是使用数据集来代替前面的直接连接数据。建立.rpt文件之后,右击“详细资料”-->“添加/删除数据库”,在”数据库专家“窗口中,展开”项目数据“(代替以前的OleDb),展开“https://www.sodocs.net/doc/a04413148.html,数据集”--“DataSet1”,选择“Stores”表。将“Stores”表添加到“选定的表”中,点击“OK”。

3)在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系。使用PULL模式下的方法,建立一个WebForm,添加一个Crystal Report Viewer 控件,并设定其属性,此处与PULL模式下是一致的。代码如下:

private MyReport oCR;//MyReport为MyReport.aspx.csk中的类名

private void Page_Load(object sender, System.EventArgs e)

{

DataSet1 ds = new DataSet1();

oCR = new MyReport();

SqlConnection MyConn = new SqlConnection(ConfigurationSettings.AppSettings["SqlConn"]); MyConn.Open();

//直接访问数据表

//string strSel = "select * from tbtree";

//SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,MyConn);

//MyAdapter.Fill(ds,"tbtree");

//使用存储过程

SqlCommand cmd = new SqlCommand("display", MyConn);

https://www.sodocs.net/doc/a04413148.html,mandType = CommandType.StoredProcedure;

SqlDataAdapter MyAdapter = new SqlDataAdapter(cmd);

MyAdapter.Fill(ds,"tbtree");

oCR.SetDataSource(ds);

this.CrystalReportViewer1.ReportSource = oCR;

this.CrystalReportViewer1.DataBind();

}

注意:在上面的代码中,你得注意一下oRpt是"Strongly Typed"的报表文件。如果你需要使用"UnTyped"报表,你得使用ReportDocument对象,然后再调用报表文件。

4)在代码中访问数据库并把数据存入DataSet

5)将报表文件导出成为其它格式

你能够将报表文件导出成为下列格式:

(1) PDF (Portable Document Format)

(2) DOC (MS Word Document)

(3) XLS (MS Excel Spreadsheet)

(4) HTML (Hyper Text Markup Language – 3.2 or 4.0 compliant)

(5) RTF (Rich Text Format)

使用Pull模式导出报表,当导出使用Pull模式创建的文件时,水晶报表准确地打开所需要的数据,首先在HTML中加入一个

元素和控件

IE打印预览 格式转换

Pdf

Word

下面是执行导出功能的代码:

private void lbtn_IEPrint_Click(object sender, System.EventArgs e)

{

if(lbtn_IEPrint.Text == "IE打印预览")

{

CrystalReportViewer1.SeparatePages = false;

CrystalReportViewer1.DisplayToolbar = false;

lbtn_IEPrint.Text = "取消IE打印预览";

}

else

{

CrystalReportViewer1.SeparatePages = true;

CrystalReportViewer1.DisplayToolbar = true;

lbtn_IEPrint.Text = "IE打印预览";

}

}

private void btn_Change_Click(object sender, System.EventArgs e)

{

string filetype = "";

filetype = ddl_FileFormat.SelectedValue;

string contenttype = "";

string myfilename = Request.MapPath(".\\") Session.SessionID "." filetype; CrystalDecisions.Shared.DiskFileDestinationOptions mydiskoptions = new CrystalDecisions.Shared.DiskFileDestinationOptions();

mydiskoptions.DiskFileName = myfilename;

CrystalDecisions.Shared.ExportOptions myExportOptions = oCR.ExportOptions; myExportOptions.DestinationOptions = mydiskoptions;

myExportOptions.ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.DiskFile;

switch(ddl_FileFormat.SelectedItem.Value)

{

case "pdf":

contenttype = "application/pdf";

myExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;

break;

case "doc":

contenttype = "application/msword";

myExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.WordForWindows;

break;

}

oCR.Export();

Response.ClearContent();

Response.ClearHeaders();

Response.ContentType = contenttype;

Response.WriteFile(myfilename);

Response.Flush();

Response.Close();

System.IO.File.Delete(myfilename);

}

2、C#.Net的WinForm中使用水晶报表

1)在使用自带的水晶报表时,请注册,否则只能使用30次

2)使用CrystalReportViewer进行预览

CrystalReportViewer控件允许在应用程序中查看Crystal Report。ReportSource 属性用于设置要查看哪个报表。该属性设置之后,报表显示在查看器中。报表源可以是ReportDocument、报表文件的路径,也可以是强类型报表。

(1)打开“工具箱”,并将一个CrystalReportViewer 拖到窗体上,我们命名为rptVew。

(2)通过拖放操作将Windows 窗体查看器调整到希望的大小并将其移动到所需位置。

(3)当运行应用程序时,报表将显示在查看器中。

3)创建新报表

(1)指向“添加”,单击“添加新项”。

(2)在“添加新项”对话框中,从“模板”区域选择Crystal Report,将报表命名为rptClient,单击“打开”。

(3)在Crystal Report 库中,选择下列选项之一:

A.使用报表专家-> 指导您完成报表的创建过程,并将您的选择添加到Crystal Report Designer。

B.作为空白报表-> 打开Crystal Report Designer。

C.来自于现有的报表-> 创建新报表,它与指定的另一报表设计相同。

注意Crystal Report 库包含许多专家,可以指导您完成数个特定类型报表的创建工作。您可能希望使用专家来创建最初的报表,以确定哪种报表构造方法适合您的需要。

(4)单击“确定”按钮。

如果选择使用“报表专家”,便会出现“报表专家”对话框,并带有数据资源管理器。为每个文件夹选择所需数据,完成“报表专家”选项卡界面上的操作,然后单击“完成”来访问Crystal Report Designer 和您的报表。

(5)是否需要动态设置数据源?

Crystal Reports 通过数据库驱动程序与数据库连接。每个驱动程序都被编写为可处理特定数据库类型或数据库访问技术。拉和推模型,为了向开发人员提供最灵活的数据访问方法,Crystal Reports 数据库驱动程序被设计为可同时提供数据访问的拉模型和推模型。

拉模型pull:在拉模型中,驱动程序将连接到数据库并根据需要将数据“拉”进来。使用这种模型时,与数据库的连接和为了获取数据而执行的SQL 命令都同时由Crystal Reports 本身处理,不需要开发人员编写代码。如果在运行时无须编写任何特殊代码,则使用拉模型。

推模型push:相反,推模型需要开发人员编写代码以连接到数据库,执行SQL 命令以创建与报表中的字段匹配的记录集或数据集,并且将该对象传递给报表。该方法使您可以将连接共享置入应用程序中,并在Crystal Reports 收到数据之前先将数据筛选出来。

4)从https://www.sodocs.net/doc/a04413148.html, 数据集制作报表

从数据库创建数据集对象

(1)在项目中新建一个架构文件:

在解决方案资源管理器中,右击项目名,指向“添加”,然后单击“添加新项”。在“添加新项”对话框的“类别”区域,展开文件夹,然后选择“数据”。在“模板”区域选择“数据集”。接受默认名称Dataset1.xsd。这就创建了一个新的架构文件(Dataset1.xsd),以后将用它来生成强类型数据集。该架构文件将显示在https://www.sodocs.net/doc/a04413148.html, 数据集设计器中。

(2)指定数据库位置:

在服务器资源管理器中,右击“数据连接”并选择“添加连接”。在“数据链接属性”对话框中,单击“提供程序”选项卡,然后选择一个提供程序(例如Microsoft OLE DB Provider for SQL Server)。单击“连接”选项卡,然后指定您的数据库所在位置。在所需位置输入服务器和登录信息。单击“确定”按钮。此时,您的数据库及其表和字段就出现在服务器资源管理器的“数据连接”节点下面。

(3)在解决方案资源管理器中,双击Dataset1.xsd (如果它尚不是活动视图)。Dataset1.xsd 现在应显示在“数据集”选项卡中。

(4)若要为数据集建立架构,请将需要的表从服务器资源管理器中拖动到Dataset1.xsd 的“数据集”选项卡上。

(5)单击“保存Dataset1.xsd”来保存“Dataset1.xsd”文件。

(6)在“生成”菜单上,单击“生成”为项目生成数据集对象。

https://www.sodocs.net/doc/a04413148.html, 数据集对象提供数据的描述,从它可以向Crystal report 添加表。使用Crystal Report Designer 中的“数据库专家”从https://www.sodocs.net/doc/a04413148.html, 数据集对象添加表。请在使用“报表专家”创建新报表时调用“数据库专家”。或者,要从一个已经使用https://www.sodocs.net/doc/a04413148.html, 建立好的报表中访问“数据库专家”,请在Report Designer 中右击,指向“数据库”,然后单击“添加/删除数据库”。将报表连接到https://www.sodocs.net/doc/a04413148.html, 数据集对象

(1)在“数据库专家”中,展开“项目数据”文件夹。

(2)展开“https://www.sodocs.net/doc/a04413148.html, 数据集”文件夹。

(3)选择所需数据集对象。

例如,如果当时使用的是从项目“WindowsApplication1”的架构文件“Dataset1.xsd”中生成的数据集对象,则应该选择“WindowsApplication1.Dataset1”。选择要向报表中添加的表,和使用其他数据源一样。

5)动态改变数据源的代码

DataSet dsdataSet = new DataSet();

rptClient() oRpt = new rptClient(); //已建立的报表rptClient

OleDbDataAdapter da=new OleDbDataAdapter("select * from TableName",conn);

da.Fill(dsdataSet,"TableName");

//使用“报表引擎”对象模型将填充的数据集,传递给报表

oRpt.SetDataSource(dsdataSet.Tables(0));

//将带有数据的报表对象绑定到Windows 窗体查看器,rptVew(CrystalReportViewer控件)rptVew.ReportSource = oRpt;

注意FillDataSet 方法可连接到指定的数据库,提取数据,然后断开数据库连接。如果您希望将数据库中的多个表添加到报表中,请使用SQL JOIN 语句将这些表联接在一起;然后在FillDataSet 方法中指定一个结果表。

6)创建主从报表

在报表中,有许多报表是主从表结构,比如订单与订单商品明细,订单是一个表中的一条记录,而分录是另一个表中的多条记录,两个表通过一个字段关联起来,这种报表可利用其分组功能实现。

(1)新建一个工程

(2)往FORM1中添加一个CrystalReportViewer控件

(3)在服务噐资源管理器中连接到SQL SERVER 2000上的Northwind数据库

(4)添加一个数据集Dataset1,将服务器资源管理器中的Orders和Order Details加入到数据集中。

(5)添加一个水晶报表,使用报表专家,在项目数据中选择“https://www.sodocs.net/doc/a04413148.html,数据集”,插入表Orders 和Order Details,“链接”中是关联字段的链接,在“字段”中选择要显示的主表和明细表的字段,组中选择分组依据为Orders表OrdersID字段,总计,图表,选择(可进行筛选),样式(可设置报表标题),可自行设置。设置完后,点击完成。

(6)在报表设计器中调整需要显示的字段的位置、宽度等。

(7)在窗口中添加代码。

public PrintForm()

{

InitializeComponent();

OleDbConnection conn=new OleDbConnection("data source=PMSERVER;initial catalog=Northwind;user id=sa;password=sa");

Dataset1() ds = new Dataset1();

OleDbDataAdapter da1=new OleDbDataAdapter("select * from orders",conn);

da1.Fill(ds,"orders");

OleDbDataAdapter da2=new OleDbDataAdapter("select * from [Order Details]",conn);

da2.Fill(ds,"Order Details");

CrystalReport1 oCR=new CrystalReport1();

oCR.SetDataSource(ds);

this.crystalReportViewer1.ReportSource = oCR;

}

(8)运行程序

3、水晶报表登陆失败

using CrystalDecisions.Shared;

//声明所需变量。

TableLogOnInfo logOnInfo = new TableLogOnInfo();

//对报表中的每个表依次循环。

for (int i=0;i < Report.Database.Tables.Count-1;i )

{

//设置当前表的连接信息。

logOnInfo.ConnectionInfo.ServerName = serverNameTxt.Text;

logOnInfo.ConnectionInfo.DatabaseName = dbNameTxt.Text;

https://www.sodocs.net/doc/a04413148.html,erID = userNameTxt.Text;

logOnInfo.ConnectionInfo.Password = passwordTxt.Text;

Report.Database.Tables [i].ApplyLogOnInfo (logOnInfo);

}

注意受密码保护的Microsoft Access 和Paradox 等PC 数据库也使用该方法,但LogOnInfo.ServerName为数据文件的路径,LogOnInfo.DatabaseName 要保留为空。TableLogOnInfo 是属于CrystalDecisions.Shared 命名空间的成员。要添加引用:using CrystalDecisions.Shared;。

4、水晶报表应用程序的发布

1)安装部署

安装部署时,把水晶报表的msm打进去,注册到服务器,要部署使用Crystal Reports for

Visual Studio .NET 2003 的程序,首先,找到以下7个文件(你可以'C:\Program Files\Common Files\Merge Modules' 文件夹下找到):

Crystal_Database_Access2003.msm

Crystal_Database_Access2003_chs.msm

Crystal_Managed2003.msm

Crystal_Managed2003_chs.msm

Crystal_regwiz2003.msm

VC_User_CRT71_RTL_X86_---.msm

VC_User_STL71_RTL_X86_---.msm

接着,在解决方案资源管理器中,右击安装项目,指向“添加”,然后单击“合并模块”。在“添加模块”对话框中,选择上面的7个要添加到安装项目的合并模块,然后单击“打开”。

还有,打开解决方案-->右键点击Crystal_regwiz2003.msm 的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)

2)部署水晶报表时的常见问题及解决方案

(1)载入报表时报错

问题出在报表发布上。发布使用水晶报表的项目需要包含三种组件:报表(*.rpt)、模块(*.msm)、运行库(*.msm),这些模块文件是在C:\Program Files\Common Files\Merge Modules\ 目录里面。

A.报表(*.rpt):用户编程时创建的水晶报表文件。

B.模块(*.msm):

Managed.msm 该模块包含了CR for VS .NET 的管理模块,如CrystalDecisions、CrystalReports.Engine.DLL、CrystalDecisions.Web.DLL, 和CrystalDecisions.Windows.Forms.DLL……

Managed_chs.msm 是该模块的中文版语言支持。

Database_Access.msm 该模块包含了数据库的驱动、与不同数据库的联结、报表导出为RTF 和HTML 格式的文档和图表组件。

Database_Access_chs.msm 是此模块的中文版语言支持。

Regwiz.msm 注册信息模块,非常重要,必需在这个模块输入水晶报表的注册序列号,如果不填,编译的时候就无法通过

C:运行库(*.msm):

如果报表文件使用了https://www.sodocs.net/doc/a04413148.html, 的dataset 数据集对象,那么VC_CRT.msm 和VC_STL.msm 模块也必须包含在安装工程中。而且这两个模块的文件安装属性的\Module Retargetable Folder\项必须修改成为系统目录。在https://www.sodocs.net/doc/a04413148.html,安装工程中,系统检测出来的依赖项只有dotNETFXRedist_x86_chs.msm 和Managed.msm这两个模块,其他的模块我们需要手动加入。

(2)部署到Windows 98 / ME 时,出错:\Load Report Failed\

这是因为查询引擎DLL(CRQE.dll)在客户计算机上没有正确注册。要解决这个问题,可以在客户计算机上手动注册CRQE.dll,使用下面的命令:

regsvr32 \C:\program files\common files\Crystal Decisions\1.0\bin\CRQE.dll\

如果CRQE.dll 没有成功注册,并且问题继续存在,在客户计算机上检查ATL.dll 的版本。A TL.dll for Windows 98/ME 正确的版本是3.0.8449。通过使用下面三种方法中的任意一种方法,可以找到并注册正确版本的ATL.dll。

A.在客户计算机上装IE6.0。

B.在客户计算机上,手动复制和注册ATL.dll,然后运行用于Crystal Reports 分发的安装包。

C.将ATL.msm 合并模块添加到安装工程,ATL.msm 是Visual Studio installer 1.1 的一部分,可以去微软的网站https://www.sodocs.net/doc/a04413148.html,/vstudio/downloads/tools/vsi11/download.aspx 下载,添加办法同上。

(3)在Win98的客户端运行提示\该字段名未知\

报表在Win2000的客户端一切正常,在Win98的客户端运行提示\该字段名未知\?是因为报表使用到的sql server 数据库中的字段名为中文的缘故,将其字段名改名为英文字段名。

(4)分发到客户机时“查询引擎出错”

“安装项目”要包含下列合并模块:VC_CRT.msm ,VC_STL.msm ;此外,确保Msvcr70.dll 和Msvcp70.dll 在客户计算机的“系统目录”里。

(5)load crpe32.dll failed

下面是cr9net_deployment.pdf说明中的部署Crystal Report 9的步骤:

打开Windows 应用程序。在解决方案资源管理器中,右击Windows 应用程序解决方案,指向“添加”,然后单击“新建项目”。在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。单击“确定”按钮。

在解决方案资源管理中,右击安装项目,指向“添加”,然后单击“项目输出”。在“添加项目输出组”中,选择“主输出”,然后单击“确定”。将自动添加所有依赖项,如dotnetfxredist_x86_enu.msm和dotnetcrystalreports.msm。需要将dotnetcrystalreports.msm排除在项目之外,在解决方案资源管理器中右击这个模块的右键,选择“排除”。在解决方案资源管理器中,右击安装项目,指向“添加”,然后单击“合并模块”。在“添加模块”对话框中,选择下列要添加到安装项目的合并模块,然后单击“打开”:

reportengine.msm, crnetruntime.msm, license.msm

mapping.msm (可选,当在报表中使用了geographic maps时)

VC_CRT.msm、VC_STL.msm(如果您部署的Windows 应用程序使用https://www.sodocs.net/doc/a04413148.html, 数据集,则还需要包括VC_CRT 和VC_STL 合并模块)

在解决方案资源管理器中,右击license.msm 文件,然后选择“属性”。在“属性”窗口中,展开MergeModuleProperties,然后在“许可证密钥”属性框中输入一个有效的许可证密钥。注意每当部署Crystal Reports 应用程序时,必须提供许可证密钥。从“生成”菜单中,选择“生成解决方案”以生成应用程序。

(6)在https://www.sodocs.net/doc/a04413148.html, 程序中加载报表时,出错:\Load Report Failed\

确保ASPNET 本地用户对报表所在的文件夹有“完全控制”的权限。

(7)部署.NET 9.1 程序到Windows 98 时,出错:\Load Report Failed\

是因为查询引擎DLL(CRQE.dll)在客户计算机上没有正确注册。要解决这个问题,从开发计算机复制Dbghelp.dll 到客户计算机的\C:Windows\system32\ 文件夹。

Crystal Report 2010水晶报表在 WINDOWS SERVER 2008使用

Crystal Report 2010水晶报表在WINDOWS SERVER 2008使用 前提條件:網站一定要調試成功,沒有任何錯誤,然後發布到Server之後,打開報表時,頁面沒有反應或是總是提示無法加載問題等問題,或顯示crystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumen tIsOpene等錯誤信息.可從以下方法來解決問題. 1.在Server安裝Crystal Report Runtime 組件,分為32位和64位,請注意 2.在windows\temp文件夾,要完全控制權限,切記,最好要重新啟動電腦 3.再建立web 應用程序

3.在第一次打開報表時,速度有點慢,然後提示安裝SAP Crystal Report Print Control 進行安裝,便可以正常預覽和打印. 在客户端使用一段时间后,没有任何反映或也没有报错的错误,就是不能预览及打印报表时,这时需要修注册表的键值:PrintJobLimit的数量,,默认值为75,须要修改为0,如下图所示 注册表路径:[HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Report Application Server\Server] ActvieX控件安装问题,错误提示信息[或是无法验证发行者等错误]如下下图所示

解决方法如下 1.客户端电脑安装.NET 3.5 或以上版本,最好也安装.NET 3.5 SP1 2.将本网站加入到受信任的站点,并将安全级别设为最低或是ActiveX控件所 有选项都启用 名无效,设定如下所示

C# WinForm自定义控件开发实例

C# WinForm自定义控件开发实例 最近做一个图象的采集,需要一个图形的选择控件,但是在.net下没有类似vb中的shape控件,所以考虑了自己写一个控件。下面我将从头创建控件,这个控件主要是用来选择图形的Rectangle,有一下几个属性Color BorderColor:边框颜色,Color BackColor:背景颜色,bool ReSizeble:是否可移动,Rectangle SelectRectangle:选择区域。 打开vs2003(我用的这个版本),新建一个c#控件库,ok,拷贝如下代码到你的代码里。using System;using System.Collections;using https://www.sodocs.net/doc/a04413148.html,ponentModel;using System.Drawing;using System.Data;using System.Windows.Forms;namespace WindowsExtendedControls{ /// /// 控件/// public class ShapeEx : System.Windows.Forms.Control { /// /// 必需的设计器变量。/// /// private Color _BorderColor=new Color(); private Color _BackColor=new Color(); private bool _ReSizeble; private Point _SelfLocation=new Point(); private Point _MouseLocation=new Point(); private int _SelfWidth; private int _SelfHeight; private int _SelectSelctedIndex;//0-8,0:SizeAll private Rectangle

Visual Studio 2008 水晶报表快速入门

Visual Studio 2008 水晶报表快速入门 医手 先新建一个Web项目: CrystalWebApp 为项目添加新项: CrystalReport1.rpt

在弹出的对话框,选择作为空白报表。用向导当然更方便,但在这里,白手起家或许能更好地理解。 在工具箱选择 Text Object,拖到报表头。写些字,设置字体之类的。在属性选项卡设置它的名字为 txtTitle 以供将来程序访问。 水晶报表对于程序员来说其实跟 Repeater 控件是很相似的。于是需要数据和字段名。在Repeater 控件中你可以很随意地指定要绑定的字段名。在程序还没有真正运行之前,这个字段名可以没有任何表的字段名跟它匹配,也可以没有任何类的属性名跟它匹配。但在水晶报表中,字段名在设计阶段就必须是真实存在的。还能稍感安慰的是,水晶报表一旦设计好之后,就能像 Repeater 控件那样绑定任意类型的对像。而不必是设计时指定字段来源的表或类。所以我们现在要创造些真实存在的字段名…… create table TabTest ( UserID int, UserName nvarchar(50), Age int, Birthday datetime ) 你可以用 Access 或者 Excel 来创造真实存在的字段名,但我这里是使用 SQL Server。 在 "字段资源管理器" 的 "数据库字段" 上按右键,选择 "数据库专家..."。在

弹出的对话框中,创建新连接==>OLE DB (ADO)(Access 或者 Excel 应点 "数据库文件" 前的 "+" 号)。在弹出的对话框,选择 "SQL Native Client" 作为提供程序。 按提示一步步地做,直到连上数据库。选择表 TabTest,把它弄到右边的框中。再点击确定。 折腾了半天就是为了这些字段名。对水晶报表的开发商无语…… 把需要显示的字段拖到 "详细资料"。"页眉" 和 Word 文档中的页眉完全不是一回事。这里的页眉其实就是列名(表头)。那么就顺便改一下列名吧。默认是有下划线的,可以改一下格式。

CrystalReport操作,水晶报表操作

Crystal Report(RDC8)水晶报表在VC6环境中的调用方法(转) .NET/vcrdc8/vcrdc8.htm">https://www.sodocs.net/doc/a04413148.html,/vcrdc8/vcrdc8.htm//源文出处 Crystal Report(RDC8)水晶报表在VC6环境中的调用方法 作者:jaesy. E Mail:jaesyinfo@https://www.sodocs.net/doc/a04413148.html, Seagate Crystal Repo rt(水晶报表)一直是报表工具中佼佼者,其功能强大,设计灵活。在Cry stal Report 的8.0版本中,较多地融入COM思想,更加强调了RDC的概念。RDC为Repo rt Designer Component的缩写。 本文主要说明如何是VC6环境中使用RDC8,关于报表模板文件*.rpt设计及运行时属性的控制请参阅https://www.sodocs.net/doc/a04413148.html,的其它介绍。 在Crystal Report以前的版本,主要采用CRPE api的方法,有兴趣的朋友可以参阅联机帮助。本文主要采用RDC的方法,也是现在推荐的方法。 以下以建立一个基于对话框的VC工程为例,说明实现方法,希望对大家有所帮助。 下载示例工程文件demoRDC.zip,46K(win2000 vc6) 第一步: 建立一个Crystal repo rt模板文件DemoRDC.rpt 本例为了简单起见,此报表没有关联任何数据库。 第二步: 建立一个基于对话框的VC工程,接受缺省选择,工程名DemoRDC。

第三步: 在工程中增加ActiveX Control :Crystal Repo rt Viewer Co ntrol.(如图1) 此时VC为工程增加了两个类, CCRVTrackCurso rInfo CCrystalReportViewer3 (图1) 根据需要设计程序主对话框的大小,并增加Crystal Report Viewer Control控件。ID为IDC_CRVIEWER1 并根据要求设置其属性。 然后用class wizard , 对其关联一个变量m_crv1。 第四步: 增加关于Crystal Report的COM接口对象,有两种方法,第一种方法,通过#import导入,稍微复杂。采用第二种方法,通过类型库导入。 具体方法如下:

C#水晶报表的使用

C#水晶报表的使用 1)在使用自带的水晶报表时,请注册,否则只能使用30次 2)使用CrystalReportViewer进行预览 CrystalReportViewer控件允许在应用程序中查看Crystal Report。ReportSource 属性用于设置要查看哪个报表。该属性设置之后,报表显示在查看器中。报表源可以是ReportDocument、报表文件的路径,也可以是强类型报表。 (1)打开“工具箱”,并将一个CrystalReportViewer 拖到窗体上,我们命名为rptVew。 (2)通过拖放操作将Windows 窗体查看器调整到希望的大小并将其移动到所需位置。 (3)当运行应用程序时,报表将显示在查看器中。 3)创建新报表 (1)指向“添加”,单击“添加新项”。 (2)在“添加新项”对话框中,从“模板”区域选择Crystal Report,将报表命名为rptClient,单击“打开”。 (3)在Crystal Report 库中,选择下列选项之一: A.使用报表专家-> 指导您完成报表的创建过程,并将您的选择添加到Crystal Report Designer。 B.作为空白报表-> 打开Crystal Report Designer。 C.来自于现有的报表-> 创建新报表,它与指定的另一报表设计相同。 注意Crystal Report 库包含许多专家,可以指导您完成数个特定类型报表的创建工作。您可能希望使用专家来创建最初的报表,以确定哪种报表构造方法适合您的需要。(4)单击“确定”按钮。 如果选择使用“报表专家”,便会出现“报表专家”对话框,并带有数据资源管理器。为每

SAPB基本操作

SAP B1基本操作整理 【前注】 【财务】 ERP的第一个作用:收集并整理数据。 上下文帮助— (帮助——文档——上下文帮助) 基础操作3 页码: 注:缺省,即没有任何说明。 注:未清,即指后一步手续没有做。 注:如果(网络版)客户端登录速度特别慢的话,可能是服务器网卡太多,license读取数据时需要找到确定的网卡。【基础操作】 锁定屏幕:文件→锁定屏幕 导出Excel表格格式:第一行小工具(Microsoft Excel) 新建公司:选择公司(新建)——同时新建一个库。 注:本地设置:PR.china。 科目表:股份公司:自动创建科目表。 新建“过账期间”。

许可证分配:许可证管理-用P用户换用来设置其他用户信息。 注:一个许可证只能保证一个用户使用。 新建用户:【设置-常规-用户】(同一个公司,即数据库相同。) 注:从权限设置中可以看到新建的用户。 权限设置:【系统初始化-权限】 注:附加权限设置??? 复制:右键复制,第一个复制为复制到字段,第二个复制为复制整个单据。调整表头顺序:表格设置,双击表格设置的表头。(也可以任意拖放) 凭证草稿:【报表-凭证草稿报表】 关闭——可以使被引用的单据(未清变已清——不能再被引用) 取消——仅指未被引用的单据(已取消) 操作附注: 基本凭证:Ctrl+N 添加:Ctrl+Add 目标凭证:Ctrl+T 查找:Ctrl+Find 复制单据:Ctrl+D 主菜单:Ctrl+O 付款总计:Ctrl+B 过滤/排序 打印/预览 导出Excel表格。 更改标题:Ctrl+双击

【管理】 修改公司名称:【系统初始化-公司详细信息】 将新的公司名输入;在【管理-选择公司】登陆界面中刷新。 新建用户:【管理-设置-常规-用户】添加用户,输入新密码,也可以在此修改密码。(同一个库,添加用户) 即可在权限设置界面查看到。 用户在查看“单据草稿报表”时,首先要选中明确的用户,或者选择“全部”,看到相关的草稿信息。 过账期间:【系统初始化】→【过账期间】 注:期间代码和名称最好为本年份,子期间最好为“月”。 注:如果“过账期间”建成了年,若没有财务记录,可以右键删除;若有财务记录,则可以修改过账期间的日期,然后手动添加各个月份的期间。比如:代码201502,既建立了2月份的过账期间。 注:过账期间不能做上一年的期间,因此实施时应当逆推几个年份。 更改密码:【管理-设置-常规-安全性-更改密码】 系统消息设置:(主页面最下层的错误警告状态栏):【窗口-系统消息日志】。 地区设置:管理-设置-常规-地区 行业设置:业务伙伴主数据-常规页签-行业 快捷键定制:【工具-我的快捷键-定制】(注:要点击确定分配) 本币设置:【系统初始化】→【公司详细信息】(基本初始化) 货币维护:【管理】→【设置】→【财务】→【货币】 (货币舍入/ 不舍入) 注:货币一般设置为本币(公司本币)。 假期设置:【管理】→【系统初始化】→【公司详细信息】(会计数据)

水晶报表完整教程:对比FineReport之用户入门

水晶报表完整教程:对比FineReport之用户入门 水晶报表(crystal report)和FineReport都是很常用的报表工具,这里对比一下它们的用户入门功能。 水晶报表用户入门如下: 新用户快速入门 下面的教程帮助您在创建第一张报表时即树立信心。请使用本联机帮助的“目录”选项卡在教程中进行浏览。 在本教程中,当创建“客户列表”报表时,会获得有关该程序的介绍。“客户列表”是最基本的商务报表,一般含有诸如客户名称、城市、地区和联系人姓名之类的信息。 现在开始学习基本概念:选择数据库,在报表中放置一些字段,然后选择要包含的特定记录。接下来学习如何: 插入和移动数据库字段。 添加标题并设置格式。 在“预览”选项卡中显示报表,以便可以精细调整报表。 使用“选择专家”以确保在报表中只包含所需的数据。 移动对象。 数据分组及排序。 插入图片。 打印报表。 开始之前 本教程假设您已经熟悉了Microsoft Windows,并使用Windows环境中常见的惯用术语和过程。如果您还不熟悉Windows,请参考Microsoft Windows文档,以获得进一步的解释。程序中所有报表节的默认字体都设置为宋体、10磅。如果更改了默认字体,或者打印机不支持这种字体,那么字段大小、字段间距和屏幕显示看上去将和教程中的不一样。 本教程是在Microsoft Windows2000平台上设计的。如果使用不同的平台,则屏幕显示可能略有不同。 如果您还不熟悉Crystal Reports环境,请查看格式化,其中介绍了如何使用网格、自由格式位置、使用准线及格式设置活动。 创建报表

1.单击“标准”工具栏上的“新建”。 Crystal Reports库出现。 2. 3. 库中包含了许多向导,用于指导您创建特定类型的报表。因为在此处是学习报表的概念,所以可以跳过向导,从头开始创建报表。在完成本教程的学习之后,可以使用向导创建一些报表,以比较哪种报表创建方法最适合您。 4.选择“Crystal Reports库”对话框上的“作为空白报表”,然后单击“确定”。 出现“数据库专家”对话框。 5. 注意:可以根据数据库文件、SQL/ODBC数据源、字典文件、查询文件和各种其他数据源创建报表。 打印“产品注册”表格,然后通过传真将该表格发送到离您最近的注册传真号码。 Crystal Decisions将通过传真向您发回一个注册号,下一次使用产品时,您就可以将此注册号输入产品。 注册传真号码

WinForm控件开发基础教程四控件属性

WinForm控件开发基础教程四控件属性 前一篇文章介绍了常用的设计时Attribute。其中BrowsableAttribute,CategoryAttribute,DescriptionAttribute,DefaultPropertyAttribute,DefaultEventAttribute都是比较简单的,也是可有可无,但是为了提供更好的用户体验这些Attribute最好不要省掉,如果你对这些Attribute还不熟悉,可以参考我前一篇文章的描述或者查看MSDN,这里我就不在赘述了。下来我们主要介绍一下DesignerSerializationVisibilityAttribute和TypeConverterAttribute。 DesignerSerializationVisibilityAttribute的功能是指示一个属性是否串行化和如何串行化,它的值是一个枚举,一共有三种类型Content,Hidden,Visible。Content指示代码生成器为对象包含的内容生成代码,而不是为对象本身,Hidden指示代码生成器不为对象生成代码,visible指示代码生成器为对象生成代码。假如你的控件有一个集合属性,又想在设计时自动将集合属性的内容生成代码,那么就使用这个Attribute,并将值设为DesignerSerializationVisibility.Content。 TypeConverterAttribute的作用就更大一些,也稍微复杂一些。TypeConverterAttribute主要的目的是为属性指定一个类型转换器,这个转化器可以将属性的值转换城其它的类型。.NET 框架已经为大部分常用的类型都提供了类型转换器,比如Color就有ColorConverter,枚举类型就有EnumConverter,等等,所以一般情况下你没有必要写类型转换器,如果你的属性的特殊的类型或者自定义的类型那么就必须要写了。类型转换器都是从https://www.sodocs.net/doc/a04413148.html,ponentModel.TypeConverter派生出来的,你需要重写其中的一些方法来达到转换的目的,在我们开发的过程中,其实只关心属性的值如何转换成字符串(因为属性的值需要在属性浏览器里显示出来,属性浏览器里显示的都是字符串)和源代码(需要自动为属性的值生成源代码以实现持久化),当然反过来,也要将字符串和源代码转换成属性的值。另外使用TypeConverter也可以实现子属性,让属性的子属性也显示在属性浏览器里,并且可以折叠。 接下来我就写一个简单的控件来演示一下这个控件。代码如下: using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using System.Drawing; using https://www.sodocs.net/doc/a04413148.html,ponentModel; using System.Collections; namespace CustomControlSample { public class MyListControl:System.Windows.Forms.Control { private List_list=new List(); public MyListControl()

水晶报表打印模板修改

打印模板修改 1.1水晶报表软件安装 1.执行安装包下CR10_Autorun_CHSENT.exe,安装水晶报表软件 2.或者,在Crystal Reports安装目录中,双击,进入Crystal Reports 10 安装向导。

3.按照提示,点击“下一步”,并接受《许可协议》后,进入用户信息设置。输入产品密 钥号码,点击“下一步”,选择目标文件夹路径,开始安装。

4.按照提示安装完成水晶报表 5.安装完毕后,安JA V A组件,如下图。(修改BS文稿打印模版时,需进行以下操作,否 则,直接跳过此步。)

1.2 修改打印模版 在文稿软件的安装路径下,例如:C:\dayangNews\bin\rpt,找到后缀为rpt的打印模板,,双击打开,进行数据源的更新。这里以NewsClueItemPrint.rpt为例。 1.2.1 SQl数据库模板修改 1.打开模版后,见下图,在界面右侧“字段资源管理器”—“字段”页面内,右键点击“数 据库字段”,选择弹出菜单中的“设置数据源位置”。 此时,弹出如下界面。但是红框内显示的当前数据源位置信息与实际环境不同,我们要对它进行更改。

2. 见上图,双击界面下方的“创建新连接”选项,弹出如下图所示窗口,双击“OLE DB (ADO)”, 选择“OLE DB (ADO)”后,弹出如下对话框,从列表中选择“Microsoft OLE DB Provider for SQL Server”点击“下一步”;

3. 在弹出的对话框中输入服务器名。例如,服务器:192.168.10 4.3,用户名:sa,密码为空。此时,如果输入信息正确,则在数据库的下拉列表中会看到所有可用数据库信息,选择其中的dynews30,点击“下一步”至“完成”。

C# WinForm窗体及其控件的自适应

C# WinForm窗体及其控件的自适应 C# WinForm窗体及其控件自适应各种屏幕分辨率 一。说明 我们自己编写程序的界面,会遇到各种屏幕分辨率,只有自适应才能显的美观。实际上,做到这点也很简单,就是首先记录窗体和它上面控件的初始位置和大小,当窗体改变比例时,其控件的位置和大小也按此比例变化即可。因为窗体上控件的位置和大小是相对于自己所在的窗体的,也就是所谓的窗口坐标。 在这里我们只考虑相对于自己窗体的窗口坐标更简单,也就是成比例变化。为了多个窗体共用,我在这里创建一个类AutoSizeFormClass ,1.使用它去记录窗体和其控件的初始位置和大小,2.根据窗体变化了的大小,成比例地实现其控件的水平和垂直方向的变化,也就是自适应。 二。使用方法 使用方法很简单, 1.把自适应的类整体复制到你的工程命名空间里, 然后在需要自适应的窗体中做3步即可: 2.声明自适应类实例。 3.为窗体添加Load事件,并在其方法Form1_Load中,调用类的初始化方法,记录窗体和其控件初始位置和大小 4.为窗体添加SizeChanged事件,并在其方法Form1_SizeChanged中,调用类的自适应方法,完成自适应 三。完整代码如下: (一)。自适应窗体的代码: using System; using System.Collections.Generic;

using https://www.sodocs.net/doc/a04413148.html,ponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsApplication1 { public partial class Form1 : Form { //1.声明自适应类实例 AutoSizeFormClass asc = new AutoSizeFormClass(); public Form1() { InitializeComponent(); } //2. 为窗体添加Load事件,并在其方法Form1_Load中,调用类的初始化方法,记录窗体和其控件的初始位置和大小 private void Form1_Load(object sender, EventArgs e) { asc.controllInitializeSize(this); } //3.为窗体添加SizeChanged事件,并在其方法Form1_SizeChanged中,调用类的自适应方法,完成自适应 private void Form1_SizeChanged(object sender, EventArgs e) { asc.controlAutoSize(this); } } }

java与水晶报表结合

使用eclipse在jsp上显示水晶报表(转) 2008-09-10 20:23:32| 分类:Java | 标签:|举报|字号大中小订阅 我使用的开发IDE是eclipse3.2,服务器是tomcat5.5 新建一个Crystal reports web项目 在Target runtime选择apache tomcat v5.5 下一步中crystal reports java reporting component、dynamic web module、java是默认选中的,这三个是必需的,你也可添加struts,后面的设置会要求你添加struts的类库。在最后面默认加入示例的数据库和报表。 这样一个Crystal Reports web项目就建立了(上面的步骤应该是地球人都可以完成吧) 在里面有个CrystalReport1.rpt和CrystalReport_viewer.jsp 右键CrystalReport_viewer.jsp->运行方式->Run on Server,点击完成。 你应该就可以看到一个空的水晶报表了吧(为什么空的,当然啦,CrystalReport1.rpt本身是空的) 在看看sample reports文件夹里面,有4个示例的.rpt报表文件,右击其中任何一个,选中Crystal Reports-》创建查看器JSP,就会创建一个*-viewer.jsp文件。运行这个文件,你应该可以看到一个水晶报表了吧。 我想这对大部分人应该都是没有问题的,剩下的事情就是好好分析这个项目里面所有的东东了 ------------------------------------------------------------------------------------------------------------------------------------------------------- 上面什么东西是在任何项目中实现都必须的呢?为此我特意建立一个新的tomcat项目,最好建一个简单的jsp页面测试下你的tomcat项目是否可以正常运行. 通过本人的实验,在其他项目中JSP运行水晶报表的话,需要的类文件跟配置. 1. 添加一个用户库如CrystalReports Libraries,把下面的*.jar添加进去 commons-collections-3.1.jar,commons-configuration-1.2.jar, commons-lang-2.1.jar, commons-logging.jar, Concurrent.jar, CrystalCharting.jar CrystalCommon.jar CrystalContentModels.jar CrystalDatabaseConnectors.jar CrystalExporters.jar

动态生成水晶报表

这两天学习如何生成动态水晶报表,看了网上的一些资料,觉得讲得都不是很详细。今天晚上做一个小的实例,算是对这两天学习的总结吧。 先让我们来看一下现实现的步骤: 一、新建一个项目: 二、向项目中添加Crystal 报表和DataSet 数据集,报表使用专家向导,在DataSet 数据集中添加一个表,为表添加八列,都使用默认名。

三、为CrystalReport1 设置数据库字段与参数字段。 四:实现代码: using System; using System.Collections.Generic; using https://www.sodocs.net/doc/a04413148.html,ponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; using CrystalDecisions.CrystalReports.Engine; using CrystalDecisions.ReportSource; using CrystalDecisions.Shared; using CrystalDecisions.Windows.Forms; /**//**//**////

/// 动态生成水晶报表 ///

/// 王稳嵩 /// /// 2007-10-23 ///

namespace WindowsApplication4 ......{ public partial class Form1 : Form ......{ CrystalReport1 CrystalReport11; ParameterFields paramFields;//定义一个参数字段集对象 ParameterField paramField; //定义一个参数字段列表对象 ParameterDiscreteValue paramDiscreteValue; //定义离散值参数对象 DataSet1 ds1; SqlConnection conn = new SqlConnection("server=(local);Integrated Security = SSPI; database = Northwind"); public Form1() ......{ InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) ......{ this.cmbSqlstring.Items.Add("select orderid,customerid from orders"); this.cmbSqlstring.Items.Add("select * from Orders"); this.cmbSqlstring.Items.Add("select * from Products"); this.cmbSqlstring.Items.Add("等等"); } private void butQuery_Click(object sender, EventArgs e) ......{ if (this.cmbSqlstring.Text != "") ......{ if (this.cmbSqlstring.Text == "等等") ......{ MessageBox.Show("兄弟您可真幽默,没有这样的sql语句吧"); return; } this.dataGridView1.Columns.Clear(); try ......{

winform窗体和控件自适应

有时winform窗体的大小会改变,此时窗体上的控件会很混乱,如何可以使控件自适应窗体呢?以 下就是方法: 1、首先在自己的命名空间里先建一个Autosize.cs类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; namespace 自己的命名空间 { class Autosize { public void setTag(Control cons) { foreach (Control con in cons.Controls) { con.Tag = con.Width + ":" + con.Height + ":" + con.Left + ":" + con.Top + ":" + con.Font.Size; if (con.Controls.Count > 0) setTag(con); } } string[] mytag; public void setControls(float newx, float newy, Control cons) { foreach (Control con in cons.Controls) { if (con.Tag != null) { mytag = con.Tag.ToString().Split(new char[] { ':' }); float a = Convert.ToSingle(mytag[0]) * newx; con.Width = (int)a; a = Convert.ToSingle(mytag[1]) * newy; con.Height = (int)(a); a = Convert.ToSingle(mytag[2]) * newx; con.Left = (int)(a); a = Convert.ToSingle(mytag[3]) * newy; con.Top = (int)(a); Single currentSize = Convert.ToSingle(mytag[4]) * Math.Min(newx, newy); }

水晶报表如何导出一个完美的EXCEL表格

现有报表项目中,一般有把报表导出成Excel的要求 而对于水晶报表来说,虽然带了导出Excel的功能,但是能导出一个能用的excel表格却不容易 因为很容易就会出现跨行跨列的情况,默认导出是没有格线的,手工(或者导出时选了格线)加上格线后,会显得很难看最主要的是没法直接在上面用,这给报表的再处理也带来了很大的不便。 很长一段时间以来,我一直是这么认为的,但是实际上,这是可以实现的。(非常感谢IBM的周勇) 我们一般做格子状的显示,都是用大框加线条或者单纯线条来做的,其实只要换个方式,用字段的边框来实现就可以了。先来看一下最终效果

需要说明的是,这个表格导出的时候,是没有选择“显示网格线”的

以上制作方法同样适用于infoview/web方式地导出。 我做了个操作视频,所以这里只是简单地说明一下。 把要使用的字段全划拉上,右键,格式化,选边框

注意,不是把字段的四个边全选上,比如在本例中,对于页眉上的几个表头字段,使用了左上下三边,最右边一个字段多了个右边这是因为前一个字段把后一个字段的左边框作为自己的右边框了 同样的,对于详细资料节上的字段,只用左下两个边,最右边的加一个右边框即可 这样详细资料节的每行的下边沿作为下一行的上边沿,对于第一行来说,它使用页眉上那一行的下边沿作为自己的上边沿 比较绕口,呵呵,不过做几次就熟悉了。 20090506更新: 使用上述方法,如果字段中存在Null或空的情况,会导致出现一个白色的区块,没有边框。可用如下方法解决: 如果是字符型的字段 if {字段}='' or isnull(字段) then ' '

VB程序打印水晶报表的方法

VB程序打印水晶报表的方法. 环境: MS SQL SERVER 2000 / VB6 / CRYSTAL REPORT8.5 步骤 1: 建立ODBC连接 2: 创建一个为Crystal Report报表文件 3: 加载Microsoft ActiveX Data Objects Library 至项目的References 中 4. 创建VB 设计(Designer) , 通过open existing file的方式把Crystal Report报表文件加载进来. 如果报表条件从画面输入需要写一些简单程序, 举例 Dim adoRs As ADODB.Recordset Private Sub Report_Initialize() SQL$ = "select * from view_XXXX where XXXX " ‘根据画面,重新获得where条件’ Set adoRs = CreateObject("adodb.recordset") adoRs.Open SQL$, "Provider=MSDASQL.1;Persist Security Info=False;Data Source=odbc_sales", adOpenKeyset, adLockBatchOptimistic

Database.SetDataSource adoRs End Sub Private Sub Report_Terminate() Set adoRs = Nothing End Sub 5: 创建VB画面(Form) ,加入Crystal Report Viewer控件 一些简单程序, 举例 Dim RptReportName As Rpt_ReportName ‘RptReportName is name of designer Private Sub Form_Load() CRViewer1.ReportSource = RptReportName CRViewer1.ViewReport End Sub

图书管理系统的设计与实现毕业论文

学校代码: 学号: 11517 200809203252

毕业设计(论文) 题目图书馆管理系统的设计 与实现 河南工程学院毕业设计(论文)原创性声明 本人郑重声明:所呈交的论文,是本人在指导教师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。

论文作者签名: 年月

开题报告表

打印图书信息的功能主要是通过水晶报表来实现的。水晶报表是 Visual Studio 一部分, 使用Crystal Reports 水晶报表可以创建简单的报表,也可以创建复杂的、专业的报表,它 可以从任何数据 源生成所需要的报表。 四、工作的主要阶段、进度与时间安排 : :确定系统开发模式、开发工具及构建开发环境。 完成系统需求分析。 :完成总体设计,建立系统框架。 :完成系统设计详细设计。 完成论文初稿和测试系统基本功能,进行中期检查。 2011-5-16至2011-5-29 ::完成系统修改和调试。 2011-5-30至2011-6-5 ::完成论文终稿并提交完整系统软件。 2011-6-6 至2011-6-12 :准备答辩资料。 2011-6-13 至 2011-6-15 :进行预答辩。 五、 完成设计所具备的条件因素及解决的办法 (1) 硬件条件: CPU: 2.0GHz 以上。 RAM: 1GB 以上。 硬盘剩余空间:5GB 以上。 以上硬件条件用现在普通的 PC 就能实现。 (2) 软件条件: 操作系统: Windows XP Professional 或 Windows 2000 或 Windows 2003 Sevice 系统平 台。数据库: Microsft SQL server 2000 数据库系统. 服务器配置:IIS 5.1 第三方软件:VS2005 以上软件均可以从光盘安装或官方网站下载安装 六、 指导教师意见和建议 李彦同学经过认真的调研工作,通过阅读网站建设领域的相关文献,将网络技术应用于图书 管理领域,课题工作量适量,选题具有较强的实用性,同意开题。 指导教师签名: 课题类型:(1) A —工程设计;B —技术开发;C —软件工程;D —理论研究; (2)X ――真实课题;Y ――模拟课题;Z —虚拟课题 要求 (1 )、(2)均要填,如 AY BX 等。 2011-2-21 至 2011-2-27 2011-2-28 至 2011-3-6 2011-3-7 至 2011-3-13 2011-3-14 至 2011-4-3 2011-4-4 至 2011-5-15 日期:

如何在WPF中使用Windows Form控件

如何在WPF中使用Windows Form控件 由于WPF中没有没有DateTimePicker控件,网上有人写的又不太好用,而在WinForm中有此控件,因此想到了从.net中借用此控件。 首先,我们需要向项目中的引用(reference)中添加两个动态库dll,一个是.NET库中的System.Windows.Forms,另外一个是WindowsFormsIntegration。组件不好找,排一下序就比较容易了。

添加完两个动态dll以后,就可以在控件库中找到WindowsFormsHost这个控件了。这个控件是我们添加Windows Form控件的基础。跟别的其他的控件一样,它也是可控的,可以自定义它在窗口中的位置、控件大小颜色等属性。 将这个控件放入窗体,放置完以后在xmal代码中会自动生成相应代码: 然后,需要在xmal的开始处添加两行代码 xmlns:WinFormHost="clr-namespace:System.Windows.Forms.Integration;assembly=W indowsFormsIntegration" xmlns:WinFormControls="clr-namespace:System.Windows.Forms;assembly=System.Wi ndows.Forms"

SAP BO集成方案简介

BO/SAP集成方案简介 在BO被SAP并购以后,越来越多的SAP用户开始使用BO的报表技术。本文从技术层面介绍了BusinessObjects(BO)不同产品如何从SAP系统中获得数据。 BusinessObjects 产品线 BusinessObjects本文试图在BO产品如何连接到SAP系统上给你一个大体上的介绍。 BO产品和SAP集成,有以下方式帮助建立数据连接: 水晶报表 你需要安装SAP集成套件来激活水晶报表到SAP的数据连接。有如下不同的数据连接组件,可以从不同的SAP 数据源取得数据: ?SAP BW query数据连接/SAP BW MDX数据连接,可以连接到SAP BW。BW query数据连接只能从B W query中取得数据,而BW MDX数据连接既可以连接到BW query, 也可以连接到BW信息提供者。 ?OpenSQL数据连接可以通过OpenSQL接口连接到SAP。 ?ODS数据连接可以连接到ODS数据源。 ?InfoSet数据连接可以连接到SAP R3 InfoSet数据源。 Web Intelligence 在安装了SAP集成套件后,在Universe“创建连接”的对话框中就会多出一个“连接到SAP BW”的选项。如果选择BW为数据源,这个新建的Universe就会是一个OLAP Universe。OLAP Universe会把BW query的定义带到u niverse中,并把bw中的特性映射为universe中的维度对象,把bw中的关键值映射为universe中的度量对象。在OLAP Universe中,结构区域是空的(没有表和连接),并且在Universe中可以修改的地方并不多。更多的细节信息请参考BO官方文档Using SAP NetWeaver Business Intelligence in Universe Designer。 水晶易表 总的来说,有两种方式可以从水晶易表连接到SAP数据源:原先的间接方式和最新的直接方式。 ?间接方式:使用Live Office将水晶易表的数据源桥接至水晶报表或者webi。基本的流程为:首先使用如上提到的方法基于SAP数据源创建一个水晶报表/webi,然后将这个报表插入Live Office中,最后将这个L ive Office文档导入水晶易表,并在水晶易表中配置Live Office连接。或者你可以使用Query as a Web Service (QaaWS)。要使用QaaWS,首先基于一个基于SAP的Universe创建一个QaaWS,然后再水晶易表中配置这个QaaWS的数据连接。 ?直接方式:水晶易表2008 SP2发布了一系列的新功能,用于支持对BW数据源的直接访问。你可以在水晶易表中的“创建连接”界面中,直接连接到一个BW query数据源。除此之外,你还可以将生成的可视化文件直接发布到BW和门户上。 Business Objects Enterprise(商务智能平台) SAP集成套件支持使用SAP用户的用户名/密码直接登录BOE,并且实现BOE和SAP系统之间的单点登录。管理员将SAP的角色导入到BOE中并分配相应的权限后,SAP用户就可以直接使用他们的SAP用户名/密码登录B OE,并且不需要再次输入用户名/密码就可以查看基于SAP数据源的报表。

相关主题