Solved

Crystal Report is printing blank fields

Posted on 2010-08-29
14
714 Views
Last Modified: 2012-05-10
I am trying to print a dataset into a crystal report. Attached is my code.
I could print the dataset into a text file for test purpose. So, the dataset is not empty.
The report has the database fields corresponding to the dataset columns. I am dragging and dropping those database fields into the report (details section).

The report is generating and printing all the hard coded values and table row heading but the table row values are blank. Can there  be a possible reason for that? What am I missing?
Dim rptDoc As ReportDocument
        rptDoc = New myReport

	MyDataSet.WriteXml("C:\Dataset.txt")
        
        rptDoc.SetDatabaseLogon(DBLoginID, DBPassword, DBServer, DBName)
        rptDoc.SetDataSource(MyDataSet)
	

        Dim pardefn As CrystalDecisions.crystalreports.engine.ParameterFieldDefinition
        Dim parval As CrystalDecisions.shared.ParameterValues
        Dim pardval As CrystalDecisions.shared.ParameterDiscreteValue

        pardefn = rptDoc.DataDefinition.ParameterFields("columnid")
        parval = New CrystalDecisions.shared.ParameterValues
        pardval = New CrystalDecisions.shared.ParameterDiscreteValue
        pardval.Value = CInt(Trim(Session("colid")))

        parval.Add(pardval)
        pardefn.ApplyCurrentValues(parval)

   
        CrystalReportViewer1.ReportSource = rptDoc

Open in new window

0
Comment
Question by:Angel02
  • 5
  • 5
  • 4
14 Comments
 
LVL 11

Expert Comment

by:tickett
ID: 33560842
Just to be sure. Do you have anything in the selection criteria? (i.e. your dataset might be being passed correctly but the records may all be filtered out by selection criteria).

L
0
 

Author Comment

by:Angel02
ID: 33560881
Sorry, what do you exactly mean by selection criteria? like if I am using anyhting in the sql query ?
0
 
LVL 11

Assisted Solution

by:tickett
tickett earned 100 total points
ID: 33560919
Well, say your dataset has 100 rows but your report is set to only show rows where column1 = 10 (and if no records match the criteria that would explain why nothing is being displayed).

I can see you are passing a parameter which is what leads me to believe you may be using that to filter your dataset in the crystal report?

L
0
 

Author Comment

by:Angel02
ID: 33561100
I am pulling 2 rows from the database. Those two rows are obtained in my test text file.
I am not doing any filtering after that.

BUT....
I have copied my report from an existing report and I am making changes to it. So the report has this parameter file "columnid". It is not letting me delete it from the field explorer as it is bounded to the report. But I cannot find it on the .rpt either. I don't know what this field is doing. Is there a way I can delete it, or find out what its doing? Can this field be making my dataset blank?
0
 
LVL 16

Expert Comment

by:13598
ID: 33561119

Try this before setting your reportviewer reportsource and let me know what you get (you only have one parm right?):


for i as Integer = 0 to  rptDoc.DataDefinition.ParameterFields.count
   If String.Compare(rptDoc.DataDefinition.ParameterFields(i).Name, "columnid", True) = 0 Then
messagebox.show("Good Parmname")
else
messagebox.show(rptDoc.DataDefinition.ParameterFields(i).Name.tostring )
end if
next
messagebox.show(CInt(Trim(Session("colid")))  )

CrystalReportViewer1.ReportSource = rptDoc
0
 
LVL 11

Expert Comment

by:tickett
ID: 33561134
Can you attach the report? In Crystal Reports you can right click and field in and click something like "find in report" and it will show you where it is used.

L
0
 

Author Comment

by:Angel02
ID: 33561823
@13598
This is what printed for the attached code
Good Parmname(0)
colID: 713  
What does this mean?

@tickett
What do I right click? I cannot 'see' the field "columnid"  on the report. I just see it checked in the filed explorer which tells me that it is added in the report. Is it hidden ?
For i As Integer = 0 To rptDoc.DataDefinition.ParameterFields.Count - 1

            If String.Compare(rptDoc.DataDefinition.ParameterFields(i).Name, "columnid", True) = 0 Then

                messagebox.show("Good Parmname(" + i.ToString + ")")

            Else

                messagebox.show("ParaName: " + rptDoc.DataDefinition.ParameterFields(i).Name.ToString)

            End If

        Next

       messagebox.show(CInt(Trim(Session("colid")))  )





        CrystalReportViewer1.ReportSource = rptDoc

Open in new window

0
How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

 
LVL 11

Expert Comment

by:tickett
ID: 33561844
Right click it in the field explorer. If you don't see the option you need to install some services packs.
L
0
 
LVL 11

Expert Comment

by:tickett
ID: 33561846
Or post the report here and I'll look for you :)
0
 
LVL 16

Expert Comment

by:13598
ID: 33561905
If you select your crystal report in designer do you see on the top bar File, Edit, View......Crystal Reports...?
Click on the Crystal Reports menu, Reports, Selection Formula.
What do you have here? Are you using the columnid there?
If you are, delete it and then you will be able to delete the parameter.
0
 
LVL 16

Expert Comment

by:13598
ID: 33561987
This is what printed for the attached code
Good Parmname(0)
colID: 713  
What does this mean?

That means that the parameter name is spelled correctly and that you are passing it a value. I posted that before I saw your post regarding the columnid. I thought that was how you were selecting the data but either the parameter name or the parameter value were incorrect.
After your post regarding that field, the reason why you don't get any data is because you are running the report based on the columnid being 713 but it appears that your dataset is not supposed to have any parameters????  Those two rows that you pull in your dataset do they even have a columnid and if they do is it 713?
0
 

Author Comment

by:Angel02
ID: 33562006
Sounds good. Thanks !
Attached is the .rpt. The field you need to look for is "estid".
repRpt.rpt
0
 
LVL 16

Accepted Solution

by:
13598 earned 400 total points
ID: 33562085
Click on the Crystal Reports menu, Reports, Selection Formula.
Your selection formula is using that field:
{DSNHRpt.catID}=2 and {DSNHRpt.intestab_id}={?estID}
change your formula to what you need.
0
 

Author Comment

by:Angel02
ID: 33562275
wowww.. dat worked !!
I was missing that selection formula all these days. Never looked at it.
Deleting that entire formula printed my dataset as it is :)

Amazing.. thank you guys ! I wish I could give you few thousands points each :)
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Introduction: When running hybrid database environments, you often need to query some data from a remote db of any type, while being connected to your MS SQL Server database. Problems start when you try to combine that with some "user input" pass…
Data architecture is an important aspect in Software as a Service (SaaS) delivery model. This article is a study on the database of a single-tenant application that could be extended to support multiple tenants. The application is web-based develope…
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…
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

760 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

18 Experts available now in Live!

Get 1:1 Help Now