Solved

How to fix Crystal Reports Bug that causes Buffer too small for string or missing null byte error?

Posted on 2008-10-24
10
1,783 Views
Last Modified: 2013-11-07
Details of my Page:
I have an aspnet listbox that allows multiple selects.  ListBox something like this:  All, House, Mechanical, Comfort, Noise, Electrical.  <--small example...maybe 50 options.  User can select as many options as needed.  Then these options are passed through a string as parameter Issues to a stored procedure variable @Issues.  However that all works.  


The Problem:
When i pass the querystring to CrystalReportsViewer, I get the above error.  
I have a field on the the report called:

report.SummaryInfo.ReportComments = Request.QueryString("Comments1") & Request.QueryString("Comments2") & Request.QueryString("Comments3")

where
Comments1 = ReportTitleName  <--not too big
Comments2 = selections from List which can be up to 50 words  
Comments3 = EnteredByInformation <--not too big...

and depending on size of Comments2, I will get the error:   Buffer too small for string or missing null byte error.  

My Question:
Is there anyway to make        report.SummaryInfo.ReportComments  size limitless?
otherwise how would I fix?

0
Comment
Question by:silemone
  • 6
  • 4
10 Comments
 
LVL 100

Expert Comment

by:mlmcc
ID: 22797131
What version of Crystal?

I don't think it is the Crystal length.  I suspect it is an ASP or system buffer.

mlmcc
0
 
LVL 21

Author Comment

by:silemone
ID: 22797923
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=11.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>  

i hope that helps with version question.
0
 
LVL 21

Author Comment

by:silemone
ID: 22798063
oh...and it doesn't happen until i load the query string into the report object and it works if i only select up to 10 options...but past that it will give the error....also error points directly to  report object:

report.SummaryInfo.ReportComments = Request.QueryString("Comments1") & Request.QueryString("Comments2") & Request.QueryString("Comments3")


report is Crystal Report Object

Private report As New CrystalDecisions.CrystalReports.Engine.ReportDocument.

If I remove one of the QueryStrings or pick less data from select object, it does not give an error.
0
 
LVL 100

Expert Comment

by:mlmcc
ID: 22798342
CR XI is not supposed to have a string length issue.

Is the problem when the string gets to around 254 characters?

mlmcc
0
 
LVL 21

Author Comment

by:silemone
ID: 22798944
yes...and the error that's given is exactly the one that I included...yes, but its either the buffer size is too great or the number of characters may be causing the issue...also...I noticed that the field that the data is going to is a IFieldObject...
0
Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

 
LVL 21

Author Comment

by:silemone
ID: 22799247
Another note:  if i add that string to an <asp:Label  id="lblText"...>
the super long string will show on page...however if i try to pass it to the field on the report I get the error.  
so it's not an issue with the QueryString length that i'm using to pass data with (as I thought it would be since Buffer error) or i would get an error when I pass string to lblText.Text...however when I pass that same text to CR IFieldObject, it's too big...i know it does fail when text size is: 1459.  Its stops at length 511...after that it crashes.
0
 
LVL 100

Expert Comment

by:mlmcc
ID: 22799434
Sounds like the CR.IFieldObject is limited to 512 hcaracters.

mlmcc
0
 
LVL 21

Author Comment

by:silemone
ID: 22799496
is there anyway i can change limits?
0
 
LVL 100

Accepted Solution

by:
mlmcc earned 500 total points
ID: 22799883
I don't think so.

mlmcc
0
 
LVL 21

Author Comment

by:silemone
ID: 22815021
Thanks for your help and time...i don't think we've actually moved forward on a solution, but I'll give you all the points.  you did verify what I thought was the case...Thanks for your time.
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now