Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 326
  • Last Modified:

Invlaid Report Source in Crystal Report.

dear Experts, i am using Crystal Report 11 and vb.Net 2005, please see screen short, there are 5 datatables, all are filled with proper data, but while show the report system give "Invalid Reports source" message.
Note: i am using 4 sub report in main report.
Invalid-reports-Source.JPG
0
mahmood66
Asked:
mahmood66
  • 8
  • 4
1 Solution
 
mlmccCommented:
Are you trying to add 4 subreorts to the report?

mlmcc
0
 
mahmood66Author Commented:
yes.
0
 
mahmood66Author Commented:
In my other applications, i have done the same thing in so many reports. but i n this application, i don't know why system gives me this error. what can be the reason?
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
mlmccCommented:
I don't know.  I have never seen that done.

mlmcc
0
 
mlmccCommented:
Can you show all the code you use for the reports?

mlmcc
0
 
mahmood66Author Commented:
Note: my dataset i shaving now 5 Data Table, and all Data Tables are filled perfectly but only while show system gives the Invalid Report Source.

see my attached code.
Private Sub PrintAppraisal()
        Try
            Dim iEmpId As Integer = lkEmployee.EditValue
            Dim iPeriod As Integer = lkPeriods.EditValue
            Dim iYear As Integer = cmbYear.EditValue
            Dim dsAppraisal As DataSet = objAppraisalRatingMaster.GetCompleteAppraisal(iEmpId, iPeriod, iYear)
            If dsAppraisal.Tables(0).Rows.Count > 0 Then

                Dim dPart1TotScore As Decimal = 0
                Decimal.TryParse(Convert.ToString(dsAppraisal.Tables(2).Compute("sum(RatingScore)", "")), dPart1TotScore)
                Dim iPart1Count As Integer = 0
                Integer.TryParse(Convert.ToString(dsAppraisal.Tables(2).Compute("count(RatingScore)", "RatingScore > 0")), iPart1Count)
                Dim dPart1Perc As Decimal = (dPart1TotScore * (10 / iPart1Count)) * (70 / 100)


                Dim dPart2TotScore As Decimal = 0
                Decimal.TryParse(Convert.ToString(dsAppraisal.Tables(3).Compute("sum(RatingScore)", "")), dPart2TotScore)
                Dim iPart2Count As Integer = 0
                Integer.TryParse(Convert.ToString(dsAppraisal.Tables(3).Compute("count(RatingScore)", "RatingScore > 0")), iPart2Count)
                Dim dPart2Perc As Decimal = (dPart2TotScore * (10 / iPart2Count)) * (30 / 100)

                Dim dMeritsDemeritsTotal As Decimal = 0
                Decimal.TryParse(Convert.ToString(dsAppraisal.Tables(4).Compute("sum(TotalPoints)", "")), dMeritsDemeritsTotal)

                Dim dConsolidatedRating As Decimal = (dPart1Perc + dPart2Perc + dMeritsDemeritsTotal)
                dConsolidatedRating = Decimal.Round(dConsolidatedRating, 0)

                Dim drTmpConsRating As DataRow() = dsAppraisal.Tables(1).Select("MinRange<=" + dConsolidatedRating.ToString + " AND MaxRange>=" + dConsolidatedRating.ToString)
                Dim strConsolidatedRating As String = Convert.ToString(drTmpConsRating(0)("RatingDescription"))

                Dim objRepParamInfoLsit As New List(Of ReportParamInfo)
                Dim objRepParam As New ReportParamInfo
                objRepParam.ParamName = "P_P1"
                objRepParam.Param = dPart1Perc
                Dim objRepParam1 As New ReportParamInfo
                objRepParam1.ParamName = "P_P2"
                objRepParam1.Param = dPart2Perc
                Dim objRepParam2 As New ReportParamInfo
                objRepParam2.ParamName = "P_TotMeritDemrit"
                objRepParam2.Param = dMeritsDemeritsTotal
                Dim objRepParam3 As New ReportParamInfo
                objRepParam3.ParamName = "P_ConsRating"
                objRepParam3.Param = strConsolidatedRating

                Dim objRepParam4 As New ReportParamInfo
                objRepParam4.ParamName = "P_Qtr"
                objRepParam4.Param = iPeriod.ToString

                Dim objRepParam5 As New ReportParamInfo
                objRepParam5.ParamName = "P_Year"
                objRepParam5.Param = iYear





                objRepParamInfoLsit.Add(objRepParam)
                objRepParamInfoLsit.Add(objRepParam1)
                objRepParamInfoLsit.Add(objRepParam2)
                objRepParamInfoLsit.Add(objRepParam3)
                objRepParamInfoLsit.Add(objRepParam4)
                objRepParamInfoLsit.Add(objRepParam5)


                Dim strSubRepList As New List(Of String)
                strSubRepList.Add("H1A_AppraisalRatingMaster.rpt")
                strSubRepList.Add("H1B_AppraisalKeyFactors.rpt")
                strSubRepList.Add("H1C_AppraisalDuties.rpt")
                strSubRepList.Add("H1D_AppraisalMemoPoints.rpt")

                frmPrint.printFromSp(dsAppraisal, "H1_CompleteAppraisal.rpt", strSubRepList, objRepParamInfoLsit)
                frmPrint.Show()
            End If
        Catch ex As Exception
            Throw
        End Try
    End Sub
'*******************************
    Public Sub printFromSP(ByVal dtSet As DataSet, ByVal strReportPath As String, ByVal strSubRepList As List(Of String), ByVal objRepParamList As List(Of ReportParamInfo))
        Dim dr As New ReportDocument

        dr.Load(strMainReportPath + strReportPath)

        dr.SetDataSource(dtSet.Tables(0))
        For i As Integer = 0 To strSubRepList.Count - 1
            dr.Subreports(strSubRepList(i)).SetDataSource(dtSet.Tables(i + 1))
        Next
        setTableLogonForReportDoc(dr)
        For i As Integer = 0 To objRepParamList.Count - 1
            If (objRepParamList(i).IsSupReportParam) Then
                dr.SetParameterValue(objRepParamList(i).ParamName, objRepParamList(i).Param, objRepParamList(i).strSubReport)
            Else
                dr.SetParameterValue(objRepParamList(i).ParamName, objRepParamList(i).Param)
            End If

        Next
        crHRMS.ReportSource = dr
        crHRMS.Show()
    End Sub
'*******************************

Open in new window

Invalid-Report-Source-error.JPG
0
 
mahmood66Author Commented:
i have attached the code eve, if still you have question please let me know, i check each and every line, same code i have done in in other applications, that's work very fine, but in thin application this is my first report, and it starts giving error.
0
 
mlmccCommented:
Is the report is the correct location?

mlmcc
0
 
mahmood66Author Commented:
Dear mlmcc:
i have got the solution, i have removed the dll files related to crystal report. and i removed the crystal report viewer from my form (frmprint), then i have included the crystal report viewer in the form. so its working now. i think there was a dll version problem. anyhow thanx a lot.
0
 
mahmood66Author Commented:
I've requested that this question be closed as follows:

Accepted answer: 0 points for mahmood66's comment http:/Q_27315021.html#36571727

for the following reason:

i have removed old dll file from project and includes it again, than its work fine.
0
 
mahmood66Author Commented:
Sorry for the wrong selection  of solution.
0
 
mahmood66Author Commented:
your this comments guide me to find the problem and problem was in the DLL file version. so I recopy the Dll file and it works after the compiling.
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 8
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now