Help Needed in passing parameter to cryst report
Hello everyone, I am trying to create a report for a single record and as such am trying to pass parameters to a crystal report but I am not sure exactly how to do this. This is my own method that I am employeeing. I do not want to create a data table and put all the info I need in there and then base a report off of it. I do not want to deal with loops and arrays right now. I just want to pass for example parameter JuvenileID = 1 to my crystal report, then create a command under the database expert and set the parameter for my command to the parameter I passed my crystal report. How would I go about in doing this? I am using VS 2010 C#. This is a windows application. I have a dataentry form that is already populated with the info needed for the report. I just need to pass all the controls.text values to the report and populate it that way.
I'm not sure if I fully understand the issue, but since you have all the data you need in a data entry form that is already populated, why don't you simple create an ADO .NET Dataset and pass that to the report? Much easier to implement, faster execution with the small amount of data you have and less code.
Dataset sample app is here:
https://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsfor.NETSDK+Samples
More info on datasets is here:
[1511438 - How to use datasets to pass data to crystal reports|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_bi/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333533313331333433333338%7D.do].
- Ludek
Similar Messages
-
Pass parameter to ssrs report in performance point webpart from textbox text
How to pass parameter to ssrs report in performance point webpart from textbox text
Please help me to solve this ...
Bikky KumarEdit your SharePoint page and add new text filter web part.
Then pass the text filter value to your performance point report using connections. Your report should include at least one parameter to get the value. More over you can set default value in text filter. -
How to pass parameter to a report for Operator 'LIKE'
I need to pass a parameter to a report for "LIKE" operator. the parameter for "equal to or is in" operator is 'eq':
'https://secure-ausomxfts.crmondemand.com/OnDemand/user/analytics/saw.dll?Go&Path=/shared/Company_AFTA-D78SR_Shared_Folder/Work Order Asset Lookup&Options=r&Action=Navigate&P0=2&P1=eq&P2=Account.TEXT_61&P3=&p4=
What would 'p1' value for 'LIKE' operator?
ThanksHi, Hope the below helps
neq - Not equal to or not in
lt - Less than
gt - Greater than
ge - Greater than or equal to
le - Less than or equal to
bwith - Begins with
ewith - Ends with
cany - Contains any (of the values in &P3)
call - Contains all (of the values in &P3)
like - Is like (Type %25 rather than the % wildcard)
top - In the top n (&P3 contains 1+n, where n is the number of top items)
bottom - In the bottom n (&P3 contains 1+n, where n is the number of bottom
items)
bet - Between (&P3 must have two values)
null - Is null (&P3 must be 0 or omitted)
nnul - Is not null (&P3 must be 0 or omitted)
Venky CRMIT -
Passing Parameter to Crystal Report
Hi Experts,
I have created and designed a Report in Crystal Report 2005. I am displaying the report in SAP B1 using Win Form . Here I want to pass 2 parameters to Report ---@FromDate and @ToDate . I have coded to pass these two parameters this way :
Dim RptDoc As New ReportDocument
Dim ParamValue As String = String.Empty
Dim crtableLogoninfos As New CrystalDecisions.Shared.TableLogOnInfos
Dim crtableLogoninfo As New CrystalDecisions.Shared.TableLogOnInfo
Dim crConnectionInfo As New CrystalDecisions.Shared.ConnectionInfo
Dim CrTables As CrystalDecisions.CrystalReports.Engine.Tables
Dim CrTable As CrystalDecisions.CrystalReports.Engine.Table
Try
RptDoc.Load(Application.StartupPath() & "\" & ReportName & ".rpt")
RptDoc.SetParameterValue("@FromDate", "01/01/2008")
RptDoc.SetParameterValue("@ToDate", "12/31/2008")
Dim oForm_ReportViewer As Frm_ReportViewer = New Frm_ReportViewer()
oForm_ReportViewer.CRViewer.ReportSource = RptDoc
With crConnectionInfo
.ServerName = oCompany.Server '"(local)"
.DatabaseName = oCompany.CompanyDB '"SBODemoIn"
.UserID = oCompany.DbUserName
.Password = "manager@123" 'oCompany.DbPassword
End With
CrTables = RptDoc.Database.Tables
'Loop through each table in the report and apply the
'LogonInfo information
For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
Next
oForm_ReportViewer.Text = frmTitle
oForm_ReportViewer.WindowState = FormWindowState.Maximized
oForm_ReportViewer.ShowDialog()
Catch Ex As Exception
MessageBox.Show(Ex.ToString)
End Try
But When I view the report in B1 , it throws an Exception "Report or Procedure expects parameter @FromDate which is not supplied. "
Please help me where I am making mistake , what could be the cause of this exception..
Thanks and Regards,
Pooja Singh.Hi Pooja Singh,
You have only set Dim ParamValue As String = String.Empty. Where are two parameter @FromDate and @ToDate?
SetParameterValue will only work if you have defined the parameters already and the parameters have the right format.
You may check this thread:
Re: Crystal report open instead of PLD with same form reference.
Thanks,
Gordon -
Passing Parameter from Main report to SQL command-based subreport
I am trying to cut down the run time of my reports and have recently figured out how to write SQL commands to limit the data by filtering prior to being pulled into the reports. However, many of my reports rely on multiple sub reports, which can cause a dramatic 'drag' on the report.
I am trying to filter the SQL command used in my sub report by passing the group parameter, which is selected by the user in the main report, to the sub report's SQL command. Without this parameter, the sub report has to sort through a lot more data than it would with this parameter, making the run time extremely slow.
Any suggestions on how I can accomplish this?
Thanks for any help you can provide,
Marlene Allen
Crystal Reports Developer
Crystal Reports Professional;
Product Type: Full;
Product Version 11.5Hi Marlene,
I don't believe you can pass a CR parameter to a Command object.
I suggest replacing all of the Command Objects with a Stored Procedure so all of the data filtering is done server side. DB servers are much more proficient at collecting the data and filtering than CR will ever be. It will also allow you to replace subreports to also speed up your report processing. All depends on your layout of course but something to look at.
Thank you
Don -
Most urgent:::: passing parameter list to reports containing record groups
hi
can any one help me , i am getting frm-41214 when i pass a paramter list containing record group as data parameter to run_report_object as parameter, calling report from forms 10g, but when i dont pass the parameter list the report runs displaying no data(as it should do), otherwise it dont run and display the frm-41214
zulfiqarHi!
To suppress Oracle Reports native Parameter Form just add:
add_parameter( pl_id, 'pARAMform', text_parameter, 'NO' );
Andrew Velichko
Brainbench MVP for Oracle Developer 2000 http://www.brainbench.com
null -
Re: Help needed in passing values from workflow to Approve Forms
Dear Experts,
how do I pass values from a workflow to a step (Form) - approve form?
I am using a customized table structure as my data source (FORMCONTAINERELEMENT) but am stuck on how to access the data when i get to to the screen painter's flow logic... What am i missing? Can you give me a step by step example. the ones i see on the net are input fields that update the screen... nothing that shows value being passed from the outside.
I need to pass an exisitng value in the workflow into the form for approval of the the assigned agent.
Please help!!
Thank you.Hello !
Create a method just before the form step.This method should populate the values for the fields maintained in the form.
Pass the values populated from this method to your customized table structure (data source).In other words, you have to pass all the values to the workflow container.
To the step, pass this workflow container by binding.In the control tab of form step, you have to do the binding.
Regards,
S.Suresh -
<%@ page import="java.net.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>Untitled</title>
</head>
<body>
<%
Vector mail = new Vector();
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
catch (Exception E) {
out.println("Unable to load driver.");
E.printStackTrace();
try{
Connection C = DriverManager.getConnection("jdbc:mysql://localhost/attendance","root","");
%>
<div align="center"><font size="+6">Student BarList</font><br>
In this page will display out the student that attendance NOT MORE THAN 70%. The Student Below is NOT ALLOW to take exam for the relevant subject.
The student whoever not satisfy with the bar can negotiate with the lecturer of the relevant subject.<p/>
The student below will be bar from the relevent subject:
<%Statement S = C.createStatement();
ResultSet rs = S.executeQuery("SELECT * FROM bar");
ResultSetMetaData rsStruc = rs.getMetaData();
out.println("<table bgcolor=red cellpadding=10 cellspacing=1 size=70>");
out.println("<tr bgcolor=red>");
int colCount = rsStruc.getColumnCount();
String colName = "";
for(int i=1;i <= colCount; i++){
colName = rsStruc.getColumnName(i) ;
out.println("<td><B><font color=white>" + colName + "</font></b></td>\n");
out.println("</tr>");
while (rs.next()) {
String email=rs.getString("email");
mail.addElement(email);
out.println("<tr bgcolor=ffffff>");
for(int i=1;i <= colCount; i++){
colName = rsStruc.getColumnName(i) ;
String fld = rs.getString(colName);
out.println("<td>" + fld + "</td>");
out.println("</tr>");
out.println("</table>");
rs.close();
C.close();}
catch (Exception E) {
out.println("SQLException: " + E.getMessage());
for(int i=0; i< mail.size(); i++){
String add= mail.elementAt(i)+",";
out.println(add);
%>
<form action="simplemail.jsp" method="post">
<input type="text" name="address" value="<%=add%>">
<input type="submit" name="send" value="Send Mail">
</body>
</html>
what problem with my page i want to read the vector data then set it inside the variable (e.g [email protected],[email protected]) then put it into the textbox and passing parameter to next page.. how i gotta solve this problem?i have to use the hidden input html to send the vector to the next page but found out the problem "Type mismatch: cannot convert from String to Vector"
<%@ page import="java.net.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>Untitled</title>
</head>
<body>
<%
Vector mail = new Vector();
try{
Class.forName("com.mysql.jdbc.Driver");
catch (Exception E) {
out.println("Unable to load driver.");
E.printStackTrace();
try{
Connection C = DriverManager.getConnection("jdbc:mysql://localhost/attendance","root","");
%>
<div align="center"><font size="+6">Student BarList</font><br>
In this page will display out the student that attendance NOT MORE THAN 70%. The Student Below is NOT ALLOW to take exam for the relevant subject.
The student whoever not satisfy with the bar can negotiate with the lecturer of the relevant subject.<p/>
The student below will be bar from the relevent subject:<br/>
<%
Statement S = C.createStatement();
ResultSet rs = S.executeQuery("SELECT * FROM bar");
ResultSetMetaData rsStruc = rs.getMetaData();
out.println("<table bgcolor=red cellpadding=10 cellspacing=1 size=70>");
out.println("<tr bgcolor=red>");
int colCount = rsStruc.getColumnCount();
String colName = "";
for(int i=1;i <= colCount; i++){
colName = rsStruc.getColumnName(i) ;
out.println("<td><B><font color=white>" + colName + "</font></b></td>\n");
out.println("</tr>");
while (rs.next()) {
String email=rs.getString("email");
mail.addElement(email);
out.println("<tr bgcolor='ffffff'>");
for(int i=1;i <= colCount; i++){
colName = rsStruc.getColumnName(i) ;
String fld = rs.getString(colName);
out.println("<td>" + fld + "</td>");
out.println("</tr>");
out.println("</table>");
rs.close();
C.close();}
catch (Exception E) {
out.println("SQLException: " + E.getMessage());
//String add = "";
//for(int i=0; i< mail.size(); i++){
//add = mail.elementAt(i)+",";
//out.println(add);
%>
<form action="simplemail.jsp" method="post">
<input type="hidden" name="address" value="<%=mail%>">
<input type="submit" name="send" value="Send Mail">
</body>
</html>the vector should be pass to this page:
<%@ page import="java.util.*, javax.mail.*, javax.mail.internet.*" %>
<%
Vector to2= new Vector();
to2=request.getParameter("address");
//String subject=request.getParameter("subject");
//String message2=request.getParameter("message");
for(int i=0; i< to2.size(); i++)
String add = (String)to2.elementAt(i);
System.out.println(add);
Properties props = new Properties();
props.put("localhost:25","localhost:25");
Session s = Session.getInstance(props,null);
MimeMessage message = new MimeMessage(s);
InternetAddress from = new InternetAddress("albert");
message.setFrom(from);
InternetAddress to = new InternetAddress(add);
message.addRecipient(Message.RecipientType.TO, to);
//message.setSubject(subject);
//message.setText(message2);
message.setSubject("Bar exam acknowledgement");
message.setText("You been bar from the exam, please check on the student attendance online for more information");
Transport.send(message);
%>
<html>
<p align="center">A Message has been sent.<br>Check your inbox.</p>
<p align="center"><a href="mail.html">Click here to send another!</a><br>
</p>
</html>please help me!!! i stuck in this oledi -
Help needed in passing parameters between custom pages
Hi,
Thanks in advance for your help gurus. I am developing 2 new pages and both should have link between them. WHen I click a button on page A it will navigate to page B, I am passing 2 parameters to page B. Page B is rendered with the help of values passed. Page B has 2 OAMessageLovInput Bean for which I am setting their values based on the values passed using
OAMessageTextInputBean custBean = (OAMessageTextInputBean)webBean.findIndexedChildRecursive("CustID");
custBean.setText(pageContext.getParameter("customerid"));
Everything works great till now. Now I want to change the customer id on page B using the LOV ie I select a new customer and I tab out of the field, still the customer id is not changed, it is set to the old one only to which the bean is set to.
What should I do get the new selected customer id to be populated on the LOV fields.
Thanks,
newbienewbie,
You really do not need to explicitly set the customer Id through code. Just create a new LOV Mapping and make its return value to the MessageTextInputBean i.e CustID on base page and Lov Region Item would be the CustomerID of the Lov Table region.
Create Custome ID in LOV Table region and set its render property to false. I am assuming that the custId is present in the LOV VO query.
Thanks
--Anil -
Pass parameter to a report link
HI,
This is what I am trying to do:
I want to create a report with 2 parameters - FromDate and ToDate.
The report link will be something like this - http://xyx.com/report1FromDate=1jan2012&ToDate=31jan2012
What I want is the users to change the date range in this URL and the report should automatically filter out the date selected. Is this possible? Has anyone does this before?
So when the user runs this report and wants to run for some other date, they will just modify the URL and the report will run for Feb as an example shown below:
http://xyx.com/report1FromDate=1feb2012&ToDate=29Feb2012
Edited by: 920645 on Mar 21, 2012 11:21 AMIt's not what you're doing wrong, but there is more right you can do.
In the Report, on the Customization Form Display Options Tab, make sure "Make Public" is checked for your Bind Parameter (:CNTRYLOC).
In the Page Properties, on the Parameters Tab, Add a Page parameter for CNTRYLOC. (I usually use the same name for the Page Parameter as the Report's Bind Parm. Warning: These parameters are CASE-SENSITIVE in places.)
Still on the Page Properties Parameters Tab, Expand the list of Portlets at the bottom and map your Portlet Parameter to the Page parameter you just made.
Hope that helps! -
Passing parameter from WEBI report to xcelsius
hi
i transfered the parameter from WEBI report (3.1 sp2) table using a link to a gauhe from xcelsius
i can see the parameter the right number in the gauge value but the problem is that the pin does not moveHow are you connecting your report to Xcelsius? Live Office or QAAWS?
-
Problem passing parameter to crystal report subreport from *.aspx page
Background:
I am developing a .NET web application using Visual Studio 2005. The code behind is in VB.net. One of my asp.net pages calls a report, which is invoked when the user clicks a Print button. I have developed this report using the Crystal Reports software that is bundled with Visual Studio 2005. I am passing one parameter from the asp.net page (utilizing the VB.net code-behind on the Print button) to the Crystal report. The report consists of a main report and 5 subreports. Both the main report and the subreports use the same parameter. Both the main report and the subreports are bound to stored procedures, each of which require a parameter.
Problem:
For some reason, the parameter is not being passed from the asp.net page to the report. I am receiving the following error: "CrystalDecisions.CrystalReports.Engine.ParameterField.CurrentValueException: Missing Parameter Values." However, when I remove the subreports, the parameter gets passed, and the report is invoked with no problem.
I have read in other forums that there may be an issue with the Crystal Reports software that is causing this problem. I have downloaded and run the suggested hotfix, but the problem remains unresolved. I have tried changing the linking of my main report to the subreport, but that doesn't help either. It is possible that I am doing something wrong with the linking, as this is the first time I have developed a report with Crystal Reports. I need a workaround or definitive solution. Below is the aspx code used to call the report:
Imports System
Imports System.Collections.Specialized
Imports System.Collections.ObjectModel
Imports System.Collections
Imports System.Text
Imports System.Configuration
Imports System.Data.SqlClient
Imports System.Data
Imports System.Data.SqlClient.SqlDataAdapter
Imports System.Web.Configuration
Imports Crystaldecisions.crystalreports.engine
Imports Crystaldecisions.reportsource
Imports Crystaldecisions.shared
Partial Class OACIS_Award_or_Deny_BudgetSummary_PrintRpt
Inherits System.Web.UI.Page
Dim paramFields As ParameterFieldDefinitions
Dim paramField As ParameterFieldDefinition
Dim paramValue As ParameterValues
Dim paramDiscreteValue As New ParameterDiscreteValue
Public Shared idCase, nameRpt As String
Private PrintRpt As ReportDocument
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
idCase = Request.QueryString("id")
nameRpt = Request.QueryString("prtName")
Dim config As Configuration = WebConfigurationManager.OpenWebConfiguration("~/")
Dim settings As AppSettingsSection = DirectCast(config.GetSection("appSettings"), AppSettingsSection)
Dim file As String = settings.File
Dim dSource, iCatalog, userIs, passUser, appString As String
dSource = Nothing
iCatalog = Nothing
userIs = Nothing
passUser = Nothing
appString = config.ConnectionStrings.ConnectionStrings("OacisConn").ToString()
Dim AppArray() As String = Split(appString, ";")
Dim arrayLgth As Integer = AppArray.Length
Dim i As Integer
For i = 0 To arrayLgth - 1
Dim pairIs() As String = Split(AppArray(i), "=")
Dim firstItem As String = pairIs(0)
Dim secondItem As String = pairIs(1)
If firstItem = "Data Source" Then : dSource = secondItem : End If
If firstItem = "Initial Catalog" Then : iCatalog = secondItem : End If
If firstItem = "UID" Then : userIs = secondItem : End If
If firstItem = "PWD" Then : passUser = secondItem : End If
Next
Dim crReportDocument As ReportDocument
Dim crExportOptions As ExportOptions
Dim crDiskFileDestinationOptions As DiskFileDestinationOptions
Dim crconnectioninfo As ConnectionInfo
Dim crDatabase As Database
Dim crtables As Tables
Dim crtable As Table
Dim crtablelogoninfo As TableLogOnInfo
Dim Fname As String
Dim Prtname As String
Dim FPath As String
Dim crSection As Section
Dim crReportObject As ReportObject
Dim crSubreportObject As SubreportObject
Dim subRepDoc As New ReportDocument
FPath = Server.MapPath("") + "\"
Dim rptIs As String = nameRpt
crReportDocument = New ReportDocument
Prtname = FPath
Prtname = Prtname + rptIs
crReportDocument.Load(Prtname)
Fname = "C:\WINDOWS\TEMP\" & Session.SessionID.ToString & ".pdf"
crconnectioninfo = New ConnectionInfo
crconnectioninfo.ServerName = dSource
crconnectioninfo.DatabaseName = iCatalog
crconnectioninfo.UserID = userIs
crconnectioninfo.Password = passUser
crDatabase = crReportDocument.Database
crtables = crDatabase.Tables
For Each crtable In crtables
Try
crtablelogoninfo = crtable.LogOnInfo
crtablelogoninfo.ConnectionInfo = crconnectioninfo
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.SetDataSource(Prtname)
crtablelogoninfo.ConnectionInfo.DatabaseName = iCatalog
crtablelogoninfo.ConnectionInfo.UserID = userIs
crtablelogoninfo.ConnectionInfo.Password = passUser
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.Location = iCatalog + ".dbo." + crtable.Name
Catch ex As Exception
Response.Write(ex)
Exit Sub
End Try
Next crtable
For Each crSection In crReportDocument.ReportDefinition.Sections
For Each crReportObject In crSection.ReportObjects
If crReportObject.Kind = ReportObjectKind.SubreportObject Then
crSubreportObject = CType(crReportObject, SubreportObject)
subRepDoc = crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)
For Each crtable In subRepDoc.Database.Tables
Try
crtablelogoninfo = crtable.LogOnInfo
crtablelogoninfo.ConnectionInfo = crconnectioninfo
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.SetDataSource(Prtname)
crtablelogoninfo.ConnectionInfo.DatabaseName = iCatalog
crtablelogoninfo.ConnectionInfo.UserID = userIs
crtablelogoninfo.ConnectionInfo.Password = passUser
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.Location = iCatalog + ".dbo." + crtable.Name
Catch ex As Exception
End Try
Next
End If
Next
Next
crDiskFileDestinationOptions = New DiskFileDestinationOptions()
crDiskFileDestinationOptions.DiskFileName = Fname
crExportOptions = crReportDocument.ExportOptions
With crExportOptions
.DestinationOptions = crDiskFileDestinationOptions
.ExportDestinationType = ExportDestinationType.DiskFile
.ExportFormatType = ExportFormatType.PortableDocFormat
End With
Dim parIDCase As ParameterValues = New ParameterValues
Dim disIDCase As ParameterDiscreteValue = New ParameterDiscreteValue
disIDCase.Value = idCase
parIDCase.Add(disIDCase)
crReportDocument.DataDefinition.ParameterFields("@ID_CASE_NMBR").ApplyCurrentValues(parIDCase)
crReportDocument.Export()
Response.ClearContent()
Response.ClearHeaders()
Response.ContentType = "application/pdf"
Response.WriteFile(Fname)
Response.Flush()
Response.Close()
System.IO.File.Delete(Fname)
Catch ex As Exception
lblMessage.Visible = True
lblMessage.Text = "Error Load
" & Convert.ToString(ex)
End Try
End Sub
End Class
Your help is greatly appreciated!Thanks for your help!
I've now gotten past the "missing parameter values" error, and the report renders fine in the report viewer. However, I've encounted another problem. The data in my main report displays correctly, but the data in my subreport does not display. Of course, when I view the report in the designer, both the main report and subreport display correctly. What am I doing wrong? Below is my vb.net code:
Try
idCase = Request.QueryString("id")
nameRpt = Request.QueryString("prtName")
Dim config As Configuration = WebConfigurationManager.OpenWebConfiguration("~/")
Dim settings As AppSettingsSection = DirectCast(config.GetSection("appSettings"), AppSettingsSection)
Dim file As String = settings.File
Dim dSource, iCatalog, userIs, passUser, appString As String
dSource = Nothing
iCatalog = Nothing
userIs = Nothing
passUser = Nothing
appString = config.ConnectionStrings.ConnectionStrings("OacisConn").ToString()
Dim AppArray() As String = Split(appString, ";")
Dim arrayLgth As Integer = AppArray.Length
Dim i As Integer
For i = 0 To arrayLgth - 1
Dim pairIs() As String = Split(AppArray(i), "=")
Dim firstItem As String = pairIs(0)
Dim secondItem As String = pairIs(1)
If firstItem = "Data Source" Then : dSource = secondItem : End If
If firstItem = "Initial Catalog" Then : iCatalog = secondItem : End If
If firstItem = "UID" Then : userIs = secondItem : End If
If firstItem = "PWD" Then : passUser = secondItem : End If
Next
Dim crReportDocument As ReportDocument
Dim crExportOptions As ExportOptions
Dim crDiskFileDestinationOptions As DiskFileDestinationOptions
Dim crconnectioninfo As ConnectionInfo
Dim crDatabase As Database
Dim crtables As Tables
Dim crtable As Table
Dim crtablelogoninfo As TableLogOnInfo
Dim Fname As String
Dim Prtname As String
Dim FPath As String
Dim crSection As Section
Dim crReportObject As ReportObject
Dim crSubreportObject As SubreportObject
Dim subRepDoc As New ReportDocument
FPath = Server.MapPath("") + "\"
Dim rptIs As String = nameRpt
crReportDocument = New ReportDocument
Prtname = FPath
Prtname = Prtname + rptIs
crReportDocument.Load(Prtname)
Fname = "C:\WINDOWS\TEMP\" & Session.SessionID.ToString & ".pdf"
crconnectioninfo = New ConnectionInfo
crconnectioninfo.ServerName = dSource
crconnectioninfo.DatabaseName = iCatalog
crconnectioninfo.UserID = userIs
crconnectioninfo.Password = passUser
crDatabase = crReportDocument.Database
crtables = crDatabase.Tables
For Each crtable In crtables
Try
crtablelogoninfo = crtable.LogOnInfo
crtablelogoninfo.ConnectionInfo = crconnectioninfo
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.SetDataSource(Prtname)
crtablelogoninfo.ConnectionInfo.DatabaseName = iCatalog
crtablelogoninfo.ConnectionInfo.UserID = userIs
crtablelogoninfo.ConnectionInfo.Password = passUser
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.Location = iCatalog + ".dbo." + crtable.Name
Catch ex As Exception
Response.Write(ex)
Exit Sub
End Try
Next crtable
For Each crSection In crReportDocument.ReportDefinition.Sections
For Each crReportObject In crSection.ReportObjects
If crReportObject.Kind = ReportObjectKind.SubreportObject Then
crSubreportObject = CType(crReportObject, SubreportObject)
subRepDoc = crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)
For Each crtable In subRepDoc.Database.Tables
Try
crtablelogoninfo = crtable.LogOnInfo
crtablelogoninfo.ConnectionInfo = crconnectioninfo
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.SetDataSource(Prtname)
crtablelogoninfo.ConnectionInfo.DatabaseName = iCatalog
crtablelogoninfo.ConnectionInfo.UserID = userIs
crtablelogoninfo.ConnectionInfo.Password = passUser
crtable.ApplyLogOnInfo(crtablelogoninfo)
crtable.Location = iCatalog + ".dbo." + crtable.Name
Catch ex As Exception
End Try
Next
End If
Next
Next
crDiskFileDestinationOptions = New DiskFileDestinationOptions()
crDiskFileDestinationOptions.DiskFileName = Fname
crExportOptions = crReportDocument.ExportOptions
With crExportOptions
.DestinationOptions = crDiskFileDestinationOptions
.ExportDestinationType = ExportDestinationType.DiskFile
.ExportFormatType = ExportFormatType.PortableDocFormat
End With
crReportDocument.SetParameterValue("@ID_CASE_NMBR", idCase)
crReportDocument.SetParameterValue("@ID_CASE_NMBR", idCase, "MemberName")
crReportDocument.Export()
Response.ClearContent()
Response.ClearHeaders()
Response.ContentType = "application/pdf"
Response.WriteFile(Fname)
Response.Flush()
Response.Close()
System.IO.File.Delete(Fname)
Catch ex As Exception
lblMessage.Visible = True
lblMessage.Text = "Error Load<br>" & Convert.ToString(ex)
End Try
Edited by: LaShandra Knox on Sep 17, 2008 7:59 PM -
Pass parameter to BI report through link in IC webclient
HI
I need to call a BI report through a link in Icwebclient search view.
I need to capture the input field values entered by user in IC webclient search view
by clicking a link or button in the view.How can I call a BI report with these values
without navigating away from the page.?BI report should open in Explorer in new window.
I have writen a code.it is calling BW report.but parametes are not captured in the url.
<htmlb:button id = "Show" text = "Cal " tooltip = "Call"
onClientClick = "window.open('<%=b5%><%=SearchCustomer-GET_CHEQUENO( ATTRIBUTE_PATH = '//SearchCustomer/test' )%><%=b8%>' ,'Invoice','resizable=yes,height=850,width=700,dependent=yes,status=1');"
design = "small"
width = "100" />
</crmic:gridLayoutCell>
please help
johnHi,
I'm not familiar with the BI reports, But, if your BI report is a BSP component, you can surely navigate to it. One possible way is listed in this wiki.
[http://wiki.sdn.sap.com/wiki/display/CRM/CRM-NavigatingtoyourcustomBSP+component]
The UI object and target IDs may already be available. If that is the case, you can skip that part.
When you fire the outbound plug to trigger a navigation, you can pass a collection consisting of
1. The navigation descriptior object
2. The data you may want to pass to the called component. This may be a value node or a model BO.
The "firing" should be done from the "top level" component or you should delegate the outbound plug to parent windows and the final window should trigger the navigation.
Regards,
Arun Prakash -
i need to add a parameter to report. please help me how to do that?
Please add a parameter to the attached report that will allow the user to select u201CSummaryu201D or u201CDetailu201D. Entitle the parameter: Report Type
If the user selects u201CDetailu201D, it will show all sections.
If the user selects u201CSummaryu201D, the parameter will suppress the GH1b subreport: Diamond Work Request Exceeding 600 hrs.rpt, and will suppress GH1c subreport: UT Work Request History.rpt
For the 2 existing parameters, you can select from the Management Level: SVP and then select 31734Hi
Try this....from field explorer you can go into paramaters. You can add a string parameter that allows for multiple values, then go in and set the default options. Once you have your parameter go into the section expert. Select the section you would like to hide and click on the formula on the right. Set your formula to true when your Paramater = "Summary" else false. You need to do this for all sections you would like to hide. Good luck! Also the help in crystal reports is pretty good at helping you locate the different places I mentioned above. Let me know if this works for you! -
Forms Personalization - How to pass parameter to a Report
Hi All,
I am trying to run a report from a menu entry in the AP Invoice entry form. For this I have done the necessary steps of creating the menu entry and am assigning the values for the 2 parameters to a global variable and then launching SRS form.
In SRS form created an action to assign the global variable value to work_order.parameters. I can invoke the SRS OK except that my 2 parameter values appear concatenated in the first parameter itself and are not getting assigned to each of them seperately.
my global variable assignment is as follows :
=${item.inv_sum_folder.vendor_name.value}||'.'||${item.inv_sum_folder.vendor_site_code.value}
and my work_order.parameters value assignment is as follows :
=select nvl(${global.kmg_invalid_po_gv.value}, ${item.work_order.parameters.value}) from dual
Any ideas why this is not working ?
Thanks in advance.
ShankarHi Prudhvi,
Thanks for reply.
I have actually seen it work for another report 'Supplier Payment Listing' (there are a few ppt presentations of this on the internet, can dig it out if reqd)
The Select of the Single Query is assigned using INTO to the output variables. Just as you can use these output variables anywhere in the message you can also use them as parameters to pass to a concurrent prorgam or a function.
However, when I try to mimick what i saw with above report for my custom report it somehow cannot distinguish between the parameters and treats them as 1 parameter value.
I believe the parameters need to be seperated by a period(.) when assigning to global variables.
Thanks
Shankar
Maybe you are looking for
-
Why are some websites displayed with added question marks inside black diamonds
Numbers are displayed with question marks inside black triangles before and following, possibly as column separators. == This happened == Every time Firefox opened == I attempted to access financial websites
-
Clock icon disappeared on my dock for OSX - 10.9.4
my clock disappeared from my desktop and I am now late for morning coffee
-
I cannot see as installed the Acrobat Distriller Printer? (Acrobat X)
Hello In my list of printers, I cannot see the Adobe Acrobat X distriller printer as installed in my computer. I have Adobe Acrobat Distriller X installed in my computer along with Adobe Acrobat X... however, when I go to control panel, and I select
-
Hey there, Ive had a recent issue with my 2011 macbook pro. Recently both usb's stoped working entirely (iphone wouldnt conect, flash wouldnt conect, wireless mouse wouldnt work). After doing a PRAM reset the mouse worked fine for about 2 hours, af
-
OS X 10.8 cannot be installed on this computer
I have an iMac which should be compatible running 10.6.8. When I try to install Mountain Lion, I get this error: OS X 10.8 cannot be installed on this computer.