阿泰的软件实用主义

水晶报表/BOE 第3季 Only 2008.5 [万众一心,众志成城]

博客园 首页 新随笔 联系 订阅 管理
  137 Posts :: 9 Stories :: 1613 Comments :: 15 Trackbacks

本文已关闭评论,问题建议请到二月份收集贴 http://www.cnblogs.com/babyt/archive/2008/02/20/1075094.html

经过一番思考,终于决定将在博客园的blog转型为专门的水晶报表/BOE技术支持站点
内容不再局限与自己写的东西,也将会收集网上相关的文章
希望不是简单地拷贝黏贴,而是经过自己的验证和思考
希望经过自己的一点小努力,为有这方面需要的人提供一些便利

就我个人来说,虽然用了相当长一段时间的CR/BOE,但是也谈不上什么厉害
希望能通过交流,使自己的视野更开阔些,对水晶报表的设计与开发能有进一步的提高

使用博客功能,对于文章的收集检索、交互功能来说,都有些不足,不过一般来说够用了
毕竟用水晶报表的人相对较少,用专门的CMS和论坛反而显得会冷清

以下就几个问题说明一下

1、如何推荐您的文章到本blog

请在任意一篇文章中评论或者留言,讲您的文章地址贴上即可。
我会及时收集整理,我可能会根据自己的理解和实践需要对您的文章进行适当的修改补充
如果您觉得我的修改影响了您的文章,请留言提示,我会就行修正

2、版权申诉

如果您不希望我收集您的文章,或者没有正确标识您的版权信息,请留言提示。
我会在核对正确后进行修正

3、我要提问

对于我收集到的每个问题,我会尽力解答。
当然个人能力毕竟有限,肯定会有自己不会的问题,如果我不会的,我会第一时间回复你,希望你从他处得到更有价值的信息
对于我能解决的,我想我会尽力去详尽地解答
但是就我个人而言,对于一些问题,我可能更倾向于提供解决问题的思路和方法,而不是直接告诉你答案

我希望您能使用公用留言功能,这样除了我能第一时间地收到邮件通知,及时反馈外
可能会有其他朋友会提供更好得解决方法或者能给有类似问题的朋友帮助

我会定期整理出现的问题,以新文章的形式,便于之后的检索

为了使您的问题得到尽可能快的反馈,提问时也请您做到如下几点,
指明您使用的水晶报表版本,使用的开发语言名称及版本,尽可能详细得描述您的问题,而不是仅仅泛泛一说,让我抓不到重点
对于一些应用,请您提供相应的数据样本(导成 Access,隐私数据请处理掉)及rpt文件及相关代码
有些朋友提的问题,我仅构造数据库就要花费不少的时间~~


4、我要提点建议

对于blog发展的建议,提问及回答问题的方式等等,任何的建议,请在此帖子中留言,我会逐一回复


本博客2008年运行第一阶段,2008年1月~2008年4月。晚8点后基本不再回答问题,国定假日休息。

希望有此方面实际经验的朋友也能加入进来~~ 共同讲这个东东使用好~~

本贴作为2008年1月份的问题收集贴,接收所有的留言、提问、评论、推荐。 

 


 

Tag标签: 水晶报表
posted on 2008-01-20 18:23 阿泰 阅读(719) 评论(19)  编辑 收藏 所属分类: A_Blog通告

Feedback

阿泰,我这里有两个问题,查阅了很多资料了都没找到答案,想象你请教一下,请你帮帮我,谢谢。
第一个问题就是:
在VB的水晶报表上,可以用程序控制图表的横轴和纵轴要显示的字段吗?因为我生成一个这样的报表,就是分了7层组,每层显示的是各个显示字段的汇总数据,而我要生成的图表是我在这个报表的基础上,要看报表中任意一个显示字段和其它字段用图表显示出来。
比如我有两个字段:region(有EMEA,APAC)和quantity,我想在横轴是region,纵轴上是quantity,而这只是其中的一种情况,还可能横轴是zone,纵轴上是quantity。所以,我想有没有代码可以控制图表横轴和纵轴的显示?

第二个问题是:
我在自己的程序中生成了一张水晶报表,想要对某条记录定位,然后按照它的分组路径来看数据库的这条记录所有的详细字段,举个例子如下:
我在水晶报表按照Region,Zone字段分组,Region有EMEA,APAC两个记录,Zone有Zone1,Zone2,Zone3三个记录,分组后记录显示如下:
EMEA
Zone1
Zone2
Zone3
APAC
Zone1
Zone2
Zone3
我在报表上对APAC下的Zone2单击一下,然后我想在VB的一个TEXT控件上可以显示它的显示路径:APAC/Zone2,不知道可以实现这个功能吗?

我用的环境是WINXP+VB6.0+SQL,热切等待您的回复,谢谢了 ~~很急啊~

  回复  引用    

#2楼 [楼主] 2008-01-22 13:49 阿泰      
@wumingwin

请参考下我在
http://topic.csdn.net/u/20080121/09/8c60a10c-0992-4839-816c-48ddf2065646.html?seed=156502466
的回复:)

稍后我整理下发个文
  回复  引用  查看    

#3楼  2008-01-24 18:09 duguke [未注册用户]
新手求助,请问一个日期格式化的问题。
我将月份格式化成"Mar"或"March"的形式时,它怎么显示的是中文啊,怎样让它显示英文啊
  回复  引用    

#4楼 [楼主] 2008-01-24 23:18 阿泰      
@duguke

你是在中文环境下用的E文版本的水晶报表吗?~~ 呵呵

你可以自定义一个函数,然后用一个公式来格式化该字段
以下均为vb语法

自定义函数:
Function FmtDateString(xxx as date)
Dim yy as string
Dim mm as number
Dim dd as string
Dim smm as string
'注意cstr的用法,防止数字型被自动格式化
yy=cstr(Year(xxx),0,"","")
mm=Month(xxx)
dd=cstr(Day(xxx),0,"","")

Select Case mm
case 1
smm="Jan"
case 2
smm="Feb"
case 3
smm="Mar"
case 4
smm="Apr"
case 5
smm="May"
case 6
smm="June"
case 7
smm="July"
case 8
smm="Aug"
case 9
smm="Sep"
case 10
smm="Oct"
case 11
smm="Nov"
case 12
smm="Dec"
End Select
'此处可根据需要自由组合
FmtDateString= smm & " " & dd & " , " & yy

end function

新建立一个公式,代替原来日期型字段的位置
formula=FmtDateString({字段})
  回复  引用  查看    

#5楼 [楼主] 2008-01-24 23:31 阿泰      
呵呵,想了想还是做了个视频~~

http://www.cnblogs.com/Files/babyt/CR2008012402.rar
  回复  引用  查看    

#6楼  2008-01-25 10:36 duguke [未注册用户]
呵呵,是在中文环境下用的E文版本的水晶报表!
我还以为会有个本地化开关的选项。
谢谢啊,这样子也可以搞定了呵
  回复  引用    

我用crystal reports11客户端做报表。现在有一要求是报表的表头字段要全部水平居中,垂直居中,但是我找不到垂直居中的方法,想用CSS又不知道该怎么些。麻烦可以帮忙解答吗
  回复  引用    

#8楼 [楼主] 2008-01-27 11:40 阿泰      
@暗黑风暴

你的表头是自己手工添上去的还是从数据库里(或程序里)自动生成的啊?

  回复  引用  查看    

#9楼  2008-02-19 09:42 dingjie [未注册用户]
阿泰,你好!我用的是VS2005内自带的水晶报表,想完成打包工作,但是初学没有半点经验,请你帮我指点一下。谢谢!
  回复  引用    

#10楼  2008-02-20 09:59 dingjie [未注册用户]
阿泰你好,经常看你的文章,并用您的动态显示字段的C#升级版完成了我的工作,非常感谢你。但今天打开电脑,进入vs2005打开水晶报表时,提示我“打开文档失败”,“创建crystal查询引擎失败”,这是怎么回事,我项目快完工了,可是现在什么都没用了,请你帮我解决这个问题,我用的C#语言,vS2005 和自带的水晶报表,系统是XP。

双击带有报表的设计器时提示加载时遇到错误,
:检索COM类工厂中CLSID为{11BD5260-..........} 的组件时失败,原因是出现以下错误:80040154。


而且遇到问题需要提示关掉VS2005,请您帮我分析,谢谢!
  回复  引用    

#11楼  2008-02-20 10:02 dingjie [未注册用户]
阿泰你好,这是我的异常错误详细信息的前半部分

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.TypeInitializationException: “CrystalDecisions.CrystalReports.Engine.ReportDocument”的类型初始值设定项引发异常。 ---> System.Runtime.InteropServices.COMException (0x80040154): 检索 COM 类工厂中 CLSID 为 {11BD5260-15B6-412D-80DB-12BB60B8FE50} 的组件时失败,原因是出现以下错误: 80040154。
  回复  引用    

#12楼 [楼主] 2008-02-20 10:19 阿泰      
@dingjie


C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\CrystalReports10_5 目录下
我用的是VS2008,可能有些许不同
你可以在C盘搜索一下Bootstrapper这个目录,就可以找到了CrystalReports的目录
这下面应该有几个msi文件,一般是CRxxx_x86.msi的,重新安装一下

安装时关闭 VS2005

不论成功与否,请反馈一下,谢谢
  回复  引用  查看    

#13楼  2008-02-20 10:34 dingjie [未注册用户]
@阿泰


我看过了,c盘下没有Microsoft SDKs这个目录
我的Vs装在了E:\program files\下,也没有

搜索Bootstrapper(c 盘)没有结果
  回复  引用    

#14楼 [楼主] 2008-02-20 10:38 阿泰      
@dingjie

在C:和E:盘搜一下 c*.msi 看一下吧,呵呵
  回复  引用  查看    

#15楼  2008-02-20 10:49 dingjie [未注册用户]
@阿泰
E:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\CrystalReports\zh-chs\CRREdist2005_x86_chs.msi


安装后解决!感谢阿泰!你真神了!
  回复  引用    

#16楼 [楼主] 2008-02-20 15:02 阿泰      
--引用--------------------------------------------------
dingjie: 阿泰,你好!我用的是VS2005内自带的水晶报表,想完成打包工作,但是初学没有半点经验,请你帮我指点一下。谢谢!
--------------------------------------------------------

做得差不多也快打包了吧?呵呵,看一下这篇吧
http://www.cnblogs.com/babyt/archive/2008/02/20/1075055.html
  回复  引用  查看    

#17楼 [楼主] 2008-02-20 15:12 阿泰      
本文关闭评论,新提问请到二月份收集贴
http://www.cnblogs.com/babyt/archive/2008/02/20/1075094.html
  回复  引用  查看