在crystal reports中,如何删除前导零
我实现了对于号码0000012313,你可以使用权(0000012313,5)并返回12313;然而,这是假定这是一个固定的长度
有什么想法吗
提前感谢使用VAL()函数。使用cint(00000123)试试这个
if isnumeric({your field}) then
totext(tonumber({yourfield}),0)
如果您只是在谷歌上搜索,发现这些答案都不适用于Crystal Reports,您应该尝试以下方法:
t
有人能解释一下区别吗?这些是相同的产品吗?如果不是,它们各自用于什么?是一家专门从事商业智能的企业,提供的工具主要有助于分析、报告企业数据
主要包括从各种数据源设计和创建不同类型的报告。它是由Business Objects收购的。除了上述答案之外,Crystal Reports Server是Business Objects Enterprise产品的有限版本。Crystal Reports是一种设计工具,您可以使用它创建和维护报告。它类似于桌面智能,Microsoft Access在这方面非
我有一台Epson TM-L60标签打印机,我正试图让它在打印完Crystal Reports(来自Visual Studio)中的报告标签后剪切纸张。我必须通过编程来完成,因为这是一台旧打印机,驱动程序设置不允许我设置“单标签剪切”之类的选项
是否有我可以使用的命令?但是我如何从代码中发送它呢?根据代码,您打印一个大写字母F,字体大小为10,字体名称为“control”。我会想,如果你把一个F放在你想要剪切的地方,在这个字体大小和名称中,它可能会起作用。你得试试
我以前从未处理过不同的水晶版本,所以我希望这里的人会知道
昨天,另一个部门联系了我。他们有一个使用CR v8.5模板的遗留应用程序,需要对其进行编辑。我打开了我的水晶席设计师的RPT文件,在大约5秒(抑制了几个字段和小节)做了修改,并马上给它发电子邮件。当然,旧版应用程序立即被这个新模板卡住了
因此,我的问题是,如何使用我的CR席设计程序来保存这个8.5格式的模板?
我在互联网上找到了一个可能的解决方案,使用了一个叫做Crystal Translator的共享软件程序。但我犹豫是否要下载另一个免
我有一个主明细表,我只需要在主表中求和一个值,但该和与明细表中的行数重复 看起来您将摘要/公式字段放在了详细信息部分中
如果摘要字段是组摘要,请将其移动到组页眉或组页脚部分。如果摘要字段是报表摘要,请将其移动到报表页眉或报表页脚部分
有人知道我在哪里可以下载这个名为“businessdays.zip”的zip文件吗。。。我的意思是,有没有比前面写的更好的计算工作日/假期的方法。。。我已经尝试过这个方法,但从专家交换,注册了dll,但仍然不为我工作。有人能帮忙吗?您可以创建一个自定义函数,返回假日数组。请参阅我对的回答。中有一个函数,它获取开始日期和结束日期,并返回两者之间的工作日数。还考虑到假期
我试图从我的数据库中读取一个值,并根据角色的不同,显示不同的图像。基本上,蓝色、红色、绿黄色的值是b、r、g或y,在报告中,我想显示一个与条目对应的彩色圆圈。有人知道一种快速的方法吗?我不熟悉水晶报告。谢谢。圆是用矩形创建的(是的,真的)。将圆度设置为100%。不幸的是,您不能用条件逻辑隐藏/显示(用Crystal的方言来说是抑制)矩形。也不能更改其x和y值。所以,对你来说,这是无用的
一个选项是插入四个彩色圆圈图像。抑制除要显示的对象以外的所有对象
另一种选择是插入一个文本框,然后向其中添加一
查询:
select acc.cust_no, surrogateTable.category as categoryCall, count(acc.calling_no) as totalCalls
from (select 'Completed' as category union all select 'Unanswered' as category) as surrogateTable
left join acc on surrogateTable.category = 'Complet
我在用复杂对象填充报表时遇到一些问题。我只使用.NET对象,不涉及数据库。以下是我的班级结构:
public int Year { get; set; }
public List<Schedule> { get; set; }
public int Year{get;set;}
公共列表{get;set;}
schedule类本身有许多十进制属性,例如Name的string属性
当我将此类添加到报告中时,唯一可用的报告字段是“年”。为什么会这样?你最好把这个类分成两个独立的类。在
我想生成一个包含2*M列和N行的Crystal报表。M由用户决定。这2*M列将具有来自sql数据库单个列的值。我正在触发M个SQL查询,其中每个查询将从单个列获取2*N值
如何生成Crystal Report?创建您的报告(按用户Id分组,按日期和时间排序,这样您就可以按时间排序用户的所有I和O)
添加两个名为StartDate和EndDate的参数
使用Record-Selection Formula,然后拖动元素(或键入文本),以便:
{Comand.Date}>={?StartDat
我有一个自由形式的SQL查询,我想在报告中使用它。我想传递一个报表参数,但我还有另外两个参数要传递,但实际上未使用。添加它们的原因是其他遗留系统使用报表生成器代码,而这些报表需要这两个参数
目前,如果参数在查询中未使用,它们似乎会从参数列表中删除。因此,我想我可以尝试将这些参数添加到select中,以确保它们被使用,但这会导致语法错误
e、 g
请原谅我对水晶的了解有限。如何绕过此问题?假设param2和param3是字符串,请尝试:
SELECT O.*, '{?param2}' PARAM
我使用向导生成了子报表。如何在表中插入新列?假设您希望在两个现有列之间插入一列(并使您的报告继续保持良好的外观),那么在您使用的Crystal Reports版本中(基于您的屏幕截图),这并不是微不足道的
您必须调整/移动现有字段和字段标题以腾出空间(单击它们以显示调整大小的控制柄),然后将新字段从“字段资源管理器”拖动到所创建空间的“详细信息”部分
较新版本的Crystal Reports添加了一个“智能格式”功能,使列插入(和相关任务)更容易-包含该功能的摘要
我真不敢相信我在找到我认为是一个简单问题的答案时遇到了这么大的困难
我有一份交叉表报告
Pivot ColA ColB
PivotC1 <cellA1> <cellB1>
PivotC2 <cellA2> <cellB2>
PivotC3 <cellA3> <cellB3>
Pivot可乐可乐
枢轴C1
枢轴C2
枢轴C3
我所要做的就是添加
我需要在现有RPT文件上插入报告主页。现有的RPT文件工作正常,它显示存储过程的结果。没关系
主页必须包含来自数据库的图像。因此,首先,我添加了一个新的SQL命令(通过“Database Expert”窗口)和一个新的SQL查询,以获得图像徽标。我在报告标题部分拖放图像字段。它在设计器中工作,我可以看到从数据库检索到的图像
但是,当我生成报告时,我的SQL查询(获取图像)会执行多次。。。我可以在我的SQL分析器中看到它。。。我认为我的查询是针对初始存储过程返回的每一行执行的。。。我不知道为什么
我的报告有21列和数千行
问题是:我能否在第一页显示1-10列,在第二页显示11-21列。我不确定是否可以这样做。您可以尝试一些选项,比如交叉表报告,但通常当我遇到这个问题时,我只需将我的报告页面设置为横向显示,然后相应地格式化它
希望有帮助
克里斯
编辑:
SAP又恢复了。我知道如果能做到这一点,就需要使用子报表。请看这篇文章,里面有关于如何实现目标的分步说明。谢谢你的回答。。我已经试过了,但我仍然无法将所有21列都放在页面上。好吧,你可以尝试拆分你的部分,将1-10放在第一部分,11-21放
我正在使用Crystal Reports 2011,并在一个普及的v2011数据引擎中查询视图。我试图在一个普及的数据库上执行一个相当长的select-in-Crystal报告
在我选择的最后一个位置之前,一切正常。我有一个参数,我正在试图找到描述字段中参数中的代码段。我试图通过更正selectexpert中的forumla,将通配符添加到描述字段上的LIKE语句中
从那里看来,水晶正在以一种巨大的方式把事情搞得一团糟。在查看SQL查询时的长查询中,在“数据库>显示SQL查询”中似乎没有正确编码
我正在页眉下显示记录。有时页眉会在页面末尾打印,而剩余的详细信息会显示在下一页中
第1页
客户-1
详情-1
详情-2
客户-2
详情-1
详情-2
但我得到的信息如下
第1页
客户-1
详情-1
详情-2
客户-2
第2页
详情-1
详情-2
唯一我想要的是,如果页眉打印在页面的末尾,那么我想抑制它或将其移动到下一页。我最好抑制它。每次使用newpage after
编辑:做一件事,使用页眉中的页眉并尝试在每页的开头加上组标题。我尝试使用“组专家”->“选项”->“将组
我试图弄清楚如何在crystal reports中以组的形式显示不同的记录。我编写的视图返回如下内容:
Field 1 | Field 2 | Field 3
----------------------------------
10 | 111 | Record Info 1
10 | 111 | Record Info 1
10 | 222 | Record Info 2
20 | 111
我正在使用c#visual studio 2010和sql server 2008。我在程序中使用了crsytal报表。我可以在计算机上访问crsytal报表,但如果我在客户端服务器上运行程序,如果我单击crystal报表,它会显示“应用程序停止工作”目标计算机上是否安装了CR iruntime?是。它安装在客户端计算机上
我尝试了以下注册表搜索
<util:RegistrySearch Root="HKLM"
Key="SOFTWARE\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports\"
Value="CRRuntime32Version"
我有一个关于水晶报告的问题
假设我有两个组的crystal报表:组页眉和组页脚。假设两个组上的不同字段连接到同一数据库。我可以在不同的组中移动字段,以便不影响数据或与数据库的连接
因为我试图在crystal report上重新设计一个报告,不幸的是,当我将字段移动到另一个组时,它没有从数据库中获取值。我还尝试插入一个新字段并将其链接到数据库。它不起作用。有人能帮我吗
注:我是Crystal Report的初学者。您的要求与数据库连接无关。。。数据库连接在您的报表中存在
现在来谈谈您的需求,虽然您
我正在尝试在“专家”部分中使用此选项来抑制“报告页脚是签名blob”字段为空,详细信息如下:
但是,当我运行代码检查器时,它会显示字段名未知。您需要包括表名。在这种情况下,这是程序的名称:
尝试:
你检查过数据库连接吗?Crystal中的字段往往像{Table.Field}一样被引用,你是否缺少表部分?
IsNull({spAppRptGetQuestionnaire;1.CustomerSignature1})
我为每个客户提供了一份报告,在这份报告中,我有几个子报告,每个子报告都在各自的组中。SRs引用了我在已连接的MS SQL数据库中创建的视图,其中显示了特定的客户端记录
我想展示同一组级别上的两个SR,但它们引用MS SQL中的不同视图。我遇到的问题是,如果SR1有与客户机相关的数据,但SR2没有,则分组层中的SR1或SR2中都没有显示任何信息
理想情况下,我希望将SR分开,尽管我想我可以在MS SQL中创建一个新视图,只需将这两组数据绑定在一起
Crystal Reports基本上说“显示SR1
我正在尝试为客户执行快速修复。我们有一个报告字段,它以字符串形式显示公差值,如+/-20、-19+18。这是以微米为单位的,客户希望以毫米为单位。所以我只需要将这个字符串的数字部分除以1000,然后显示结果
我对crystal reports比较陌生,我的知识有限,通过搜索本网站的建议,我创建了一个包含以下代码行的函数
函数(stringvar x)
本地stringvar数组输入:=拆分(x,“+/-”
val(输入[ubound(输入)])/1000
上述函数适用于+/-的公差值。然而,我无
在crystal报告中,小数被四舍五入。crystal报告中错误显示了字段(定义为浮动的数据库字段)小时数。例如,数据库中的1.5显示为2.00,.75显示为1.00,依此类推。还有一个字段用于计算所有小时数的总和。该字段也会拾取舍入值并错误求和。在crystal报告的格式设置中,我将小时设置为1.00和.01(用于舍入和小数)。我还有公共选项卡(在格式编辑器中)作为LN_小时。似乎什么都没用。我尝试使用x-2公式,但没有成功。
使用水晶报表席和SQL Server MS 2012和Visual
我已经创建了一个5.5x11报告。我想在同一页上并排打印两份报告(左侧为ex invoice#1,右侧为invoice#2)。这能做到吗?我正在使用VB 2010的crystal reports。是的,您必须创建一个主报告,并插入要插入此摘要正文中的发票的所有常用数据。
然后用每张发票的数据创建一个子报告,并将其插入主报告的一部分是,可以完成。。并排使用子报告
我正在使用standalone crystal reports no.net或visual basic生成报告,并试图找到一种方法,将参数选择和应用更改按钮实际放在窗口中,而不是放在左侧的参数选项卡中
有没有一种方法可以做到这一点,或者有什么方法可以让用户轻松地拥有这种能力来导出报告?我觉得这很简单,我错过了或不可能。提前谢谢。在窗口?方法您想将“参数”选项卡放在哪里?我想您指的是预览面板左侧的“参数”面板。据我所知,你所要求的是不可能的。但我希望有人在这里回答并证明我错了,因为这将非常有用。@
我正在尝试合并两份报告。一个报告提取ID列表,另一个报告显示这些ID的常规数据
我正在尝试编写一个报告,使用第一个报告中生成的ID作为第二个报告中的输入参数。您可以使用子报告来实现此目的
在运行时选择ID,并将该值作为输入传递给第二个报告。通过这种方式,您可以获得所需的输出
编辑----------------------------------------------------------------
创建一个参数以在运行时获取ID。。然后,使用子报表链接将该参数链接到子报表,子报表链接会将
我在crystal report中创建了5个部分,我希望第3部分位于第2部分之上。我试图拖动这些部分,但没有任何变化。我在Section Expert下找到了答案。高亮显示要重新排列的部分,然后单击“合并”按钮旁边的箭头。单击“确定”后将显示更改
我在SSTemp表中有一些数据,如下所示(“…”表示为可读性而省略的数据):
我是Crystal Reports的新手,正在使用版本8(不,我们无法升级)。我想汇总过去几年中所有行项目的总计,并在同一报告中保留当前年度的数据。数据库字段{CONTROLFILE.CURRENTYEAR}包含系统的当前记账年度,这对于确定汇总组至关重要。控制文件表包含系统的一般设置,并且没有用于连接的数据,但是我需要考虑CurryType进行分组。摘要行中的月份列应为空,并在当前年份行中指示月份。最终结果数据应如下
我正在使用C#,我正在Crystal report viewer中运行一个报告,现在我想刷新报告,最新数据应该显示在Crystal report viewer中,数据库是Sybase数据库
1) 我有两个crystal报表,每个报表都有不同的存储过程
2) 在下拉列表中,我保留了2个报告名称,现在要求基于所选的报告,相应的存储过程应该调用,一旦单击手动创建的“刷新”按钮,最新的报告应该从sybase数据库获取,并在Crystal report Viewer中显示最新的数据
所以请给我完整的代码
我从AS400中提取数据,并且我的日期格式为CYYMMDD,因此我使用以下方式转换数据:
Local StringVar x := ToText({SMPWAYB.WBSHPD}, "0");
Local NumberVar c := (ToNumber(LEFT(x, 1)) + 1) * 10;
x := RIGHT(x, 6);
Local NumberVar y := ToNumber(ToText(c, "0") & LEFT(x, 2));
x := RIGHT(x, 4);
我在Crystal Reports 2010中有下表:
Name------------Number----Line----Price-----InvoiceNum
CustomerX-------800---------2------$100----------1
CustomerX-------800---------4------$0-------------1
CustomerX-------800---------4------$0-------------1
Custome
在Crystal Reports 2013中,我正在开发一份具有多个分组级别的财务报告:
公司集团(财产集合)
公司(个人财产)
部门(组成部门的一组部门)
账户组(即收入、人工成本、运营费用等)
科目子组(只是科目组的附加细分)
帐户名称(特定帐户范围的名称)
这一切都很好。但是,我收到了一份报告更改请求,指定第6级分组应基于第4级分组(即,如果科目组=收入,则为科目名称;如果科目组=人工成本,则为部门名称[IT、会计等])
我尝试添加一个组7作为部门名称,根据组4有条件地抑制组6,但发生的情
我试图在VB6中设置crystal报表的标题,但始终显示一个错误
我要设置文本的参数字段称为txtitle
但是,当运行此代码时,会出现一个错误
无效名称
导致错误的原因是什么?Crystal正在查找名为“txtTitle”的“参数”类型字段,但找不到该字段。为此,我通常使用公式,换句话说,“txtTitle”将是报告中的一个公式,并定义和/或初始化为stringVar
crxReport.ParameterFields(1).AddCurrentValue ("your_first_param
我试图在crystal report中获取数值,如果数值或其他值超过minval和maxval,则结果应以粗体显示
我的代码是这样的
IF(ISNUMERIC({Result}) /*if result is numeric*/
and {Result}<{Minimum Value} or >{Maximum value} /*if Result Exceeds min or maxvalue */
THEN
crbold({Result})
else
({Result}))
如何解决“此处需要字符串”的错误
IF{RECEIVED AMOUNT}Cast{RECEIVED AMOUNT}转换为字符串。尝试使用ToText()函数:
IF {RECEIVED AMOUNT} <= 0 THEN "CANCELLED" ELSE ToText({RECEIVED AMOUNT})
如果{RECEIVED AMOUNT}都是您的输出字符串类型?否,都是数字类型您确定吗?这意味着“取消”是一个数字。不,{receiveamount}是数字,如果失败,我需要在repo
我正在制作Crystal报表,如果子报表中的地址重复,我需要将信息打印在同一页上,如果不同,我需要将其打印在单独的页上……请帮助 正如阿莫普特所说,我们可能需要更多信息来帮助您
但也许你可以试试这个:
右键单击子报告所在的部分:section Expert-Paging
然后在之前的新页面上,单击x-2公式图标并使用类似以下内容:
如果{your_address_field}=previous({your_address_field}),则为false,否则为true显示一些我们可以查看的代码。
当我直接打印crystal报告时,它每页打印大约8-9条记录。但是,当我计划稍后打印相同的报告时,该报告每页打印大约6条记录
注意:目前我正在使用SAP Crystal Reports runtime engine for.Net Framework版本-13.0.24.2970
我用于设计Crystal Reports RPT的工具:SAP Crystal Reports 2016支持包3版本14.2.3.2132
预期输出:无论rpt是立即打印还是计划打印,都应在每页打印相同数量的记录
实际
我正在尝试在VS2019中编辑Crystal报告。我已安装最新的SP26,但仍然无法显示报告。我可以在VS 2015和2017中修改它。我已经从我的机器上卸载了所有CR,只安装了SP26。我已经对VS2019进行了维修。似乎什么都没用。在VS 2015和VS 2017中,我可以右键单击并说“打开…”,然后显示“Crystal Reports Editor(默认)”。在VS2019中,没有“Crystal Reports Editor”的列表。如有任何想法或想法,将不胜感激
我得到了与SP26和V
我有一份报告,其中提到了与一家公司有关联的已故高管。唯一的参数是死亡日期。该信息显示在“详细信息”部分,这样,如果他们是多家公司的高管,则两个公司都会列出。我需要加上在世高管的已故配偶。因此,如果John Doe是ABC公司的首席执行官,他的妻子Jane在参数的时间范围内去世,那么应该列出她的名字,而不是John。我试过为配偶编写一个子报告,但它无法处理详细信息部分中的信息。主表不能是死亡表,因为我们需要把在世高管的配偶拉进来。我曾考虑过要两份报告——一份是高管报告,另一份是配偶报告,但我不知道
我需要根据作为参数传递给报表的日期计算特定字段值的总和。
我需要根据作为参数传递到报告的日期计算以下值:
计算从月1日到作为参数传递的日期的字段值
计算作为参数传递的日期的最后一个月的字段值
计算作为参数传递到报表的日期前一天的字段值
按照以下逻辑创建公式:
IF <Some Condition> Then Value ELSE 0
IF-Then值ELSE 0
然后,简单地求和这个公式
使用crystal report 7
我想在crystal report中将字符串值转换为datetime
日期格式为
20120102 (yyyymmdd)
20120105
...
我想把上面的字符串转换成这样的日期格式
预期产量
02/01/2012
05/01/2012
...
需要Crystal report公式帮助请尝试设置如下公式:
Date (ToNumber (Right ({myTable.strDate}, 4)),
ToNumber (Mid ({myTa
我使用的是Crystal Reports 2008
我在获取公式的正确语法时遇到问题
报告按客户分组。我有两个命令。第一个总是有价值的,但第二个对某些客户有价值,但不是对所有客户都有价值
我需要做的是编写一个公式,如果第二个命令没有该客户的值,则只使用第一个命令的值。如果第二个命令确实有一个值,那么它应该取命令1和命令2的和
我试过这样做:
IF ISNULL({Command_2.fin_bal_60}) THEN
{Command_1.inv_bal_60}
ELSE
{Com
我在crystal report中工作,需要格式化电话号码字段。我处理的数据有些混乱,有些数字格式正确
(111)111-1111
还有一些1111
我正在尝试编写这个公式,它将删除括号并重新格式化字符串。这是我到目前为止所知道的,我不知道为什么这行不通
StringVar phone = Replace({AssessorTrainingReport;1.Phone1},"(","");
phone := Replace({AssessorTrainingReport;1.Phone1},"
我的主报告中有一个子报告,它有多个源,实际上是3个存储过程。它们都有相同的参数,每个参数返回一行。问题是我无法在预览中获取数据。我也试着制作PDF,但我也遇到了同样的问题,没有数据。无论如何,我也尝试了在数据库字段中的“浏览数据…”选项,我可以在那里看到数据,这是我唯一可以看到数据的地方
有人知道可能是什么问题吗?也许它是有多种来源的
提前感谢。我建议您创建3个子报表,每个子报表包含一个存储过程。对数据库的调用次数相同,但Crystal engine不会尝试计算数据源之间的链接右键单击数据库字段
我正在编辑crystal report(使用14.1.1版)报告,该报告是我们正在使用的系统附带的。我在预览中看不到任何数据,但当我转到“数据库->显示sql查询”时,它显然不起作用,因为查询需要一些数据库中不存在的值,只是查询中的一个简单的“FIELD='value1'”,我希望在其中包含“FIELD='value2'”
在哪里可以设置这些值
确切地说,查询是下面的beast(不要怪我,这是由商业系统生成的),我需要能够为ORDER_NUM设置另一个值=
SELECT "ORDERS"."OR
基本上,我的报告上有一个图表。请参阅所附图片。X轴是以秒为单位的持续时间。在Crystal 2008中,可以使条形图段具有一个标签,标签上的秒数转换为HH:MM:SS?基本上把60秒变成标签上的00:01:00
您是在报表中使用表还是查询?表。已连接到ODBC连接。
我是水晶报告的新手。非常感谢您的帮助和建议。
我在crystal报告中应用了第一个公式add,并尝试在值仅为1时求和。试图创建第二个公式,但出现错误
公式:test3
如果(计数({CUSTINVOICEJOUR.INVOICEID},{CUSTINVOICEJOUR.INVOICEID}))=2,则1或0
总和({@Test3})
错误-无法汇总此字段
Crystal无法对依赖于总计的公式进行总计
您可以定义一个数值变量,并使用相同的条件逻辑在GF公式中递增它。然后,在“动作”下方的公式中显示
我有一个总数,我想基本上复制文本,但不计算公式
求和公式:
if next ({field}) > 0 then next ({field}) - {field2}
公式工作正常,我需要复制和,但我不想要这个公式
我尝试了文本、CSTR、真/假等。。。一切都复制了求和公式
我只需要像“求和”这样的东西,不需要公式。我算出来了
abs (if next ({field}) > 0 then next ({field}) - {field2})
1 2 3 4 5 6 ...
下一页 最后一页 共 59 页