cancel
Showing results for 
Search instead for 
Did you mean: 

Regarding Crystal Reports

Former Member
0 Kudos

Hi All,

I have Created a Crystal Report.This is my Code :

Private Sub LoadReport()

Try

FetchData()

FrmCrReportViewer = New FrmCrReportViewer

FrmCrReportViewer.FViewer.DisplayToolbar = True

InsParamRpt = New InspectionParameterRpt

InsParamRpt.SetDataSource(oDs)

InsParamRpt.DataDefinition.FormulaFields("Headings").Text = Chr(34) + "Inspection Parameter Report" + Chr(34)

FrmCrReportViewer.FViewer.ReportSource = InsParamRpt

FrmCrReportViewer.FViewer.EnableDrillDown = False

FrmCrReportViewer.Show()

FrmCrReportViewer.Refresh()

Catch ex As Exception

Throw ex

End Try

End Sub

I doesn't get any error. the problem is when i use Show dialog the report is generating but i doesn't access other sap forms before closing the report window.When i us Show() method the report content is not displaying.even i refresh it,it doesn't show anything.I can't close the report itself.

please help me to solve the problem.

Regards

Mohana

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

I have solved this issue as Gieussipi suggested way.

former_member209699
Contributor
0 Kudos

Hi,

Set

FrmCrReportViewer.ShowonTop = false

hope somethig like that..

May it will work

regards:

SANDY

Former Member
0 Kudos

Hi,

Can someOne help me to solve this issue.It is very helpful for me.

Thanx in advance,

Mohana

Former Member
0 Kudos

Mohana,

Even i faced the same problem.. but i setteled for Form.ShowDialog(). When we use form.ShowDialog() the form acts a model form..

Hope we get a solution for this..

Vasu Natari.

Former Member
0 Kudos

Hi Vasu,

But iam not able to access other forms while using showdialog().How could i solve this?

Regards

Mohana

Former Member
0 Kudos

Using a different thread and showdialog().

Giuseppe

Former Member
0 Kudos

Hi,

Give some sample to solve this.

Thanx in advance

Mohana

Former Member
0 Kudos

Private Sub Open()

Dim Thrd As New System.Threading.Thread(AddressOf OpenForm)

Thrd.Start()

End Sub

Private Sub OpenForm()

Dim frm As New 1

frm.ShowDialog()

End Sub

Edited by: Giuseppe Porcelli on Aug 29, 2008 2:27 PM

Former Member
0 Kudos

Giuseppe Porcelli,

In Mohana's code when she uses frm.Show() y is no data comming up.?? Is that too linked to the thread problem..?

Vasu Natari.

Former Member
0 Kudos

Absolutely not.

the fact the data's do not appear is based on your form load code.

Giuseppe

Former Member
0 Kudos

Hi Giuseppe ,

Eventhough i create a thread,iam getting the report viewer.But it didn't display the report.How to solve the issue.The following is my code.

In my addon,in the print button click i wrote as,

Private TestForm As TestForm

Private oThread As Threading.Thread

Private Sub InspectionParameterClass_PrintMenuClick(ByVal MenuID As String, ByVal FormID As String) Handles Me.PrintMenuClick

Try

If FormID = StrCurFormID Then

TestForm = New TestForm()

oThread = New Threading.Thread(AddressOf TestForm.StartThread)

oThread.Start()

End If

Catch ex As Exception

SBO_Application.SetStatusBarMessage(ex.Message, SAPbouiCOM.BoMessageTime.bmt_Short, True)

End Try

End Sub

Then i created a test form,i created a sub procedure as ,

Public Sub StartThread()

Try

Dim run As Boolean

run = True

Me.Show()

While (run)

Application.DoEvents()

Threading.Thread.Sleep(1)

End While

Catch ex As Exception

Throw ex

End Try

End Sub

In the form load of test form,i wrote :

Private Sub TestForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim FrmViewer As New FrmCrReportViewer

FrmViewer.ShowDialog()

End Sub

In the FrmCrReportViewer FormLoad,I wrote as

Private Sub FrmCrReportViewer_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

Dim InspectionParameterRptClass As InspectionParameterRptClass

InspectionParameterRptClass = New InspectionParameterRptClass

FViewer.Zoom(1)

FViewer.ResumeLayout(True)

Me.WindowState = FormWindowState.Maximized

End Sub

Then i have created a InspectionParameterRptClass class for generating the report.the following is my report generation code :

Public Class InspectionParameterRptClass

Inherits B1Global

Private oDs As InspectionParameterRptDataSet

Private FrmCrReportViewer As FrmCrReportViewer

Private InsParamRpt As InspectionParameterRpt

Public Sub New()

MyBase.New()

LoadReport()

End Sub

Private Sub LoadReport()

Try

FetchData()

FrmCrReportViewer = New FrmCrReportViewer

FrmCrReportViewer.FViewer.DisplayToolbar = True

InsParamRpt = New InspectionParameterRpt

InsParamRpt.SetDataSource(oDs)

InsParamRpt.DataDefinition.FormulaFields("Headings").Text = Chr(34) + "Inspection Parameter Report" + Chr(34)

FrmCrReportViewer.FViewer.ReportSource = InsParamRpt

FrmCrReportViewer.FViewer.EnableDrillDown = False

FrmCrReportViewer.FViewer.Visible = True

FrmCrReportViewer.FViewer.Show()

FrmCrReportViewer.FViewer.RefreshReport()

Catch ex As Exception

Throw ex

End Try

End Sub

Private Sub FetchData()

Dim SqlStr As String

Dim TempTable As DataTable

Try

oDs = New InspectionParameterRptDataSet()

SqlStr = "sp_InsRpt"

TempTable = New DataTable("sp_InsRpt")

TempTable = FillReportData(oDs.Tables("sp_InsRpt"), SqlStr)

Catch ex As Exception

Throw ex

End Try

End Sub

End Class

Please help me to solve the issue.

Regards

Mohana