Change report direction
hi all
can i change the report direction at run time based on a parameter
and how can i display message in the report?
thanks
Hi!
There is a system parameter in every report called Orientation.
You can change the value to Portrait or Landscape.
For messages use the srw.message build-in like
begin
srw.message ( 12345, 'your message );
return ( true );
end;Regards
Similar Messages
-
Q:- Migrating version 6 Web Analysis reports directly to version 11 ??
Trying to migrate version 6 Web Analysis reports directly to version 11.1.1.2 without first migrating to version 9, because of some time constraints.
Overall it works fine, except for some issue with PV (Personal Variables) in those reports.
The PVs are present in the version 6 xml export file, but somehow not being picked up in version 11.1.1.2 Web Analysis import.
Has anyone tried to migrate version 6 Web Analysis reports to version 11.1.1.2 and faced this kind of issue?
I am wondering if there is any change in the xml tags because of which the migration from 6 to 11 is not working.
Anyone has any thoughts or ideas to quickly migrate web Analysis reports from 6 to 11. There are hundreds of reports that need to be migrated.
- NasarHi,
Welcome to Forums...!
I think we need to change the database connection details in the Web analysis.
goto file --> Edit --> browse the database connection then change the server name in the connection details.
may be this will help to resolve your issue.
Thanks,
mady -
Form 6i printing report directly to printer
Hi Professionals,
I am in badly need of help to print my barcode report directly to printer from form, currently it is working fine if i make it preview first and then user has to select network printer to print, but user is not accepting that manual step, and therefore we are unable to launch our material management module.
MY CURRENT CODE WHICH WORKING FINE WITH PREVIEW..................
add_parameter(PL_ID, 'DESTYPE', TEXT_PARAMETER, 'PREVIEW');
add_parameter(PL_ID, 'MAXIMIZE', TEXT_PARAMETER, 'YES');
add_parameter(pl_id,'paramform',TEXT_PARAMETER,'NO');
add_parameter(pl_id,'STR',TEXT_PARAMETER,:IM_STR_ISSUE_MASTER.STR_CODE);
add_parameter(pl_id,'BAT',TEXT_PARAMETER,:IM_STR_ISSUE_DETAILS.BAT_ID);
add_parameter(pl_id,'DIV',TEXT_PARAMETER,:IM_STR_ISSUE_DETAILS.GRP_CODE);
add_parameter(pl_id,'GRP',TEXT_PARAMETER,:IM_STR_ISSUE_DETAILS.SUB_GRP_CODE);
add_parameter(pl_id,'ITM',TEXT_PARAMETER,:IM_STR_ISSUE_DETAILS.ITEM_CODE);
add_parameter(pl_id,'COPIES',TEXT_PARAMETER,:IM_STR_ISSUE_DETAILS.QTY);
RUN_PRODUCT(REPORTS,'F:\IMS\REPORTS\STOCK_IN_BARCODE.rep',SYNCHRONOUS,RUNTIME,FILESYSTEM,PL_ID);
IF I CHANGE IT TO THE FOLLOWING FOR DIRECT PRINTING IT IS NOT WORKING
ADD_PARAMETER(PL_ID, 'DESTYPE', TEXT_PARAMETER, 'PRINTER');
ADD_PARAMETER(PL_ID, 'DESNAME', TEXT_PARAMETER, 'SOLABEL');
I appreciate any efforts to resolve this issue.
Thanks
Ahon
Edited by: [email protected] on Oct 4, 2009 11:20 PMGuide to Implement local printing on client in 10gas/9ias
To archive this goal we have used orarrp(Oracle Reports Remote Printing Utility), which can be downloaded from the OTN website http://otn.oracle.com/sample/products/reports/index.html.
Steps:
1.Add the required ORARRP mime types to the Oracle HTTP Server configuration.
(Note: This will be the Oracle HTTP Server belonging to the Oracle Application Server 10g/9ias middle (BI & Forms) tier)
Do this manually by editing the httpd.conf
or
via the Oracle Application Server 10g AS Console e.g.
Navigate to the Middle Tier Components Page
Click on HTTP_Server -> Administration -> MIME Types
NOTE: MIME types added in httpd.conf are as per requirement mode in which report has to be run e.g. pdf, rt(rtf) and html etc. syntax for manual entry in httpd.conf is given below.
AddType application/x-orarrp-text rrpt
AddType application/x-orarrp-ps rrpp
AddType application/x-orarrp-pdf rrpa
AddType application/x-orarrp-rt rrpr
AddType application/x-orarrp-ini rrpi
AddType application/x-orarrp-html rrph
2. Create an aliasmatch in forms.conf pointing to a physical directory \tmp- for example, directory will be c:\tmp
Do this by manually editing the forms.conf
or
via the Oracle Application Server 10g AS Console e.g.
Navigate to the Middle Tier Components Page
Click on HTTP_Server -> Administration -> Advanced Server Properties -> forms.conf
Add a line like :
# Virtual path for physical directory of temp
AliasMatch ^/tmp/(..*) "C:\tmp/$1"
** IMPORTANT NOTE **
The advantages of making the changes via EM / AS console, rather than editing the files manually, are:
- the EM / AS console will put the mime type entries in the correct place
- the EM / AS console automatically issues a 'dcmctl updateconfig' which synchronizes the file changes with the Infrastructure Metadata Repository
- the EM / AS console will do the required restart of the HTTP Server component
(Only the HTTP Server needs to be stopped and restarted – Oracle AS 10g components can remain up and running)
If the changes are made manually then the following commands must be issued after the changes to httpd.conf and forms.conf have been made.
Run these command at run prompt
DRIVE:\oracle\FRHome_1\dcm\bin\dcmctl.bat updateconfig -ct ohs -v -d
(to synchronize the changes with the Metadata Repository)
DRIVE:\oracle\FRHome_1\dcm\bin\dcmctl.bat stop -ct ohs -v -d
DRIVE:\oracle\FRHome_1\dcm\bin\dcmctl.bat start -ct ohs -v -d
where DRIVE: is the drive where \oracle\frhome_1\ is installed.
3. Copy and run orarrp.exe on client machine in program files\orarrp\ folder.
4. Set value of options '”choose_printer=no” in orarrp.ini created at above folder.
5. Add following lines in your code of run_report procedure.
In declare section
vc_file varchar2(225);
In begin block add
/* Generate a pseudo unique filename */
vcfile:=:global.user_code||to_char(sysdate,'YYYYMMDDHHMISS');
vcfile:=vcfile||'.rrpr';
/* In this example - output will be rtf so adding .rrpr extension */
set_report_object_property(repid, report_filename,store_var);
set_report_object_property(repid, report_server, :global.r_server);
set_report_object_property(repid, report_execution_mode, batch);
set_report_object_property(repid, report_comm_mode, SYNCHRONOUS);
set_report_object_property(repid, report_destype, file);
set_report_object_property(repid, report_desformat,'rtf');
set_report_object_property(repid,REPORT_DESNAME,'C:\tmp\'||vcFile);
---- path can be made dynamic by making a database entry in makess.path_entry for tmp folder and
---using proc_path procedure from path lib.
:GLOBAL.PrintOutPut := vcFile;
In Run report section make following change:
vc_reportserverjob := RUN_REPORT_OBJECT(repid,pi_id);
report_job_id:=substr(vc_reportserverjob,length(:global.r_server+2,length(vc_reportserverjob));
v_rep_status:=report_object_status(vc_reportserverjob);
if v_rep_status='FINISHED' then
web.show_document('/tmp/'||:global.printoutput,'_blank');
else
message ('error when running report'||v_rep_status);
end if;
Edited by: amitphynyl on Oct 5, 2009 1:36 AM -
Error - Printing a report directly to printer
Hi,
i'm using oracle forms 9i and i'm trying to print a report directly to printer. I using the code above:
SET_REPORT_OBJECT_PROPERTY(ReportId,REPORT_DESFORMAT,'PDF');
SET_REPORT_OBJECT_PROPERTY(ReportId,REPORT_SERVER,GetReportTnsName);
IF ReportDesType = 'CACHE' THEN
SET_REPORT_OBJECT_PROPERTY(ReportId,REPORT_DESTYPE,CACHE);
ReportServerJob:=RUN_REPORT_OBJECT(ReportId, PList);
rep_status := report_object_status(ReportServerJob);
IF rep_status=âFINISHEDâ THEN
JobId := substr(ReportServerJob,length(GetReportTnsName)+2,length(ReportServerJob));
WEB.SHOW_DOCUMENT ('/reports/rwservlet/getjobid'||JobId||'?server='||GetReportTnsName,'_blank');
ELSE
message ('Errorâ);
END IF;
-- logic for sending report directly to printer
ELSIF ReportDesType = 'PRINTER' then
SET_REPORT_OBJECT_PROPERTY(ReportId,REPORT_DESTYPE,PRINTER);
SET_REPORT_OBJECT_PROPERTY(ReportId,REPORT_DESNAME,:parameter.p_print);
ReportServerJob:=RUN_REPORT_OBJECT(ReportId, PList);
rep_status := report_object_status(ReportServerJob);
IF rep_status=âFINISHEDâ THEN
message ('Report sent to printer successfully');
ELSE
--handle errors
message ('Errorâ);
END IF;
end if ;
i get this error :
REP-50157: Erro no envio do ficheiro para a impressora lp65. Sair com o código de erro 64
NEED HELP !!
Regards,The printer has to be known on the server where the Reports service runs.
Also, the user who runs the Reports service has to have access to that printer. If you are running on Windows, Reports Service runs as Local system by default. Change that to a real (domain) user, who has access to the printer. -
Print report directly from URL
i have SSRS report where i have prompt to enter to get data. once the data is populated i would like to print directly from the print option rather saving to pdf and print. My page settings format is setup to 9X11 size. with this i can save and print fine.
But if i print directly to print on A-4 right most part is not printing and looks like i have to change settings in my report. How do we print this kind of report correctly on A-4 size paper. Any help much appreciated.Hi SQL Instane,
Per my understanding that you want to print the report directly when click the print button and print on A-4, you have set the size to 9X11 and after print out, some of the part is not printing, right?
By default the size setting for print to A4 is 8.5X11 or 11X8.5, If you have changed to 9X11 and didn't set the body size of the report properly, it my cause the issue you are facing.
Details information below for your reference about how to do the size setting:
Change the report size setting to 8.5(Page Width)X11(Page height), you can also try to decrease the size of the "left margin" and "right margin" to increase the width.
Check the body size setting and maek sure they have the relationship as below:
Body Width + Left margin + Right margin <=Page width
Body height+ Top margin + Button margin <=Page height
If you have many columns and need to increase the width, you can also change the default setting "potrait" (8.5X11)to "Landscape"(11X8.5)
Article about the Pagination in Reporting Services for your reference:
http://msdn.microsoft.com/en-us/library/dd255278.aspx
If your problem still exists, please try to provide more details information.
Any problem, please feel free to ask.
Regards
Vicky Liu -
How I can send a report directly to the printer "EPSON TMU 220" from form11
Dear,
I have a problem with Oracle Forms11g, I need send a report to the printer EPSON TMU-220 (Pos of sale printer) in the client machine.
Please, help.
Thanks
JCDear,
The problem is:
I need to send the report directly to printer. All other reports work fine with other printers in the network.
But the EPSON TMU-220, (I changed the card connection from COM to USB, and nothing)
Please, help me.
JC -
How to control report direction at runtime
Hi All
I want to control report direction(Left_To_Right or Right_To_Left) at runtime.
to make every thing is clear I want to call the report from Form passing parameter ,according the parameter the direction should be directedYes, it work and I was know it, for this reason I emphasis that I created control at "DESIGN time", I want to change the direction of controls that created at design time not creating at runtime with var tf:TLFTextField = new TLFTextField();
To reproduce the problem create TLFText on your scene with text tool and name it "MyText" then
var tf:TLFTextField = MyText; // instead new TLFTextField();
..rest of your code
now you will see that nothing will be change! I struggled many hours but still no success.
Do you have any idea in this case? -
How do I change report DSN at runtime?
Hello,
I have some reports (some 2011 but most 9) that were created with a DSN named Dev for example. When the reports are deployed to production, they are viewed via an ASP.NET application written in VB.NET (VS2012). The production server has a DSN named Prod for example. The code I'm using to change the connection information "seems" to be working because if I write out the connection info before the code, it shows the Dev DSN connection information and if I write out the connection inf after the code, it shows the Prod DSN connection information.
The problem is that even though the connection information appears to be changing at runtime, when the report renders it shows data from the Dev database instead of production.
Here is the code I'm using to change the main report connection and the subreports, which seems to be working:
Dim strPassword As String = System.Configuration.ConfigurationManager.AppSettings("ReportPassword")
Dim strUserID As String = System.Configuration.ConfigurationManager.AppSettings("ReportUser")
Dim strServer As String = System.Configuration.ConfigurationManager.AppSettings("ReportServer")
Dim strDBName As String = System.Configuration.ConfigurationManager.AppSettings("ReportDatabase")
Dim strDSName As String = System.Configuration.ConfigurationManager.AppSettings("ReportDSN")
Dim myTable As CrystalDecisions.CrystalReports.Engine.Table
Dim myLogin As CrystalDecisions.Shared.TableLogOnInfo
Dim blDebugFlag As Boolean = False
'This test is needed because the flag may/should not exist in the production web.config
If Not System.Configuration.ConfigurationManager.AppSettings("debugFlag") Is Nothing Then
blDebugFlag = System.Configuration.ConfigurationManager.AppSettings("debugFlag")
End If
'Modify the data source location for each table in the report (does not include subreports)
strReturnData += Now.ToLongTimeString & "<br>"
For Each myTable In Session("crpt").Database.Tables
myLogin = myTable.LogOnInfo
strReturnData += "<br><br>Table = [<b>" & myTable.Name.ToString & "</b>] - (Main report)" & _
"<blockquote>" & _
"<br>Original ServerName = [" & myLogin.ConnectionInfo.ServerName.ToString & "]" & _
"<br>Original DatabaseName = [" & myLogin.ConnectionInfo.DatabaseName.ToString & "]" & _
"<br>Original UserId = [" & myLogin.ConnectionInfo.UserID.ToString & "]"
'check if a DSN or non-DSN connection
If myTable.LogOnInfo.ConnectionInfo.DatabaseName = "" Or myTable.LogOnInfo.ConnectionInfo.ServerName = "Dev" Then
myLogin.ConnectionInfo.ServerName = strDSName
myLogin.ConnectionInfo.DatabaseName = ""
strReturnData += "<br><br> ### DSN Connection ###"
Else
myLogin.ConnectionInfo.ServerName = strServer
myLogin.ConnectionInfo.DatabaseName = strDBName
strReturnData += "<br><br> *** Non-DSN Connection ***"
End If
myLogin.ConnectionInfo.Password = strPassword
myLogin.ConnectionInfo.UserID = strUserID
myTable.ApplyLogOnInfo(myLogin)
' Collect the login information after-the-fact
strReturnData += "<br><br>Final ServerName = [" & myLogin.ConnectionInfo.ServerName.ToString & "]" & _
"<br>Final DatabaseName = [" & myLogin.ConnectionInfo.DatabaseName.ToString & "]" & _
"<br>Final UserId = [" & myLogin.ConnectionInfo.UserID.ToString & "]" & _
"</blockquote>"
Next
'Iterate through subreports and make sure ConnectionInfo matches the main report
'set the crSections object to the current report's sections
Dim crSections As CrystalDecisions.CrystalReports.Engine.Sections = Session("crpt").ReportDefinition.Sections 'rpt.ReportDefinition.Sections
Dim crReportobjects As ReportObjects, crSubReportobject As SubreportObject, crSubReportDocument As ReportDocument
Dim crDatabase As Database, crTables As Tables
Dim crtableLogoninfo As New TableLogOnInfo
Dim crConnectioninfo As New ConnectionInfo
'loop through all the sections to find all the report objects
For Each crSection As CrystalDecisions.CrystalReports.Engine.Section In crSections
crReportObjects = crSection.ReportObjects
'loop through all the report objects to find all the subreports
For Each crReportObject As CrystalDecisions.CrystalReports.Engine.ReportObject In crReportObjects
If crReportObject.Kind = ReportObjectKind.SubreportObject Then
'you will need to typecast the reportobject to a subreport object once you find it
crSubreportObject = DirectCast(crReportObject, CrystalDecisions.CrystalReports.Engine.SubreportObject)
Dim mysubname As String = crSubreportObject.SubreportName.ToString()
'open the subreport object
crSubreportDocument = crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)
'set the database and tables objects to work with the subreport
crDatabase = crSubreportDocument.Database
crTables = crDatabase.Tables
'loop through all the tables in the subreport and set up the connection info and apply it to the tables
For Each crTable As CrystalDecisions.CrystalReports.Engine.Table In crTables
'With crConnectioninfo
' .ServerName = strDSName
' .DatabaseName = ""
' .UserID = strUserID
' .Password = strPassword
'End With
'crtableLogoninfo = crTable.LogOnInfo
'crtableLogoninfo.ConnectionInfo = crConnectioninfo
'crTable.ApplyLogOnInfo(crtableLogoninfo)
myLogin = crTable.LogOnInfo
strReturnData += "<br><br>Table = [<b>" & crTable.Name.ToString & "</b>] - (Subreport - [" & mysubname & "])" & _
"<blockquote>" & _
"<br>Original ServerName = [" & myLogin.ConnectionInfo.ServerName.ToString & "]" & _
"<br>Original DatabaseName = [" & myLogin.ConnectionInfo.DatabaseName.ToString & "]" & _
"<br>Original UserId = [" & myLogin.ConnectionInfo.UserID.ToString & "]"
'check if a DSN or non-DSN connection
If crTable.LogOnInfo.ConnectionInfo.DatabaseName = "" Or crTable.LogOnInfo.ConnectionInfo.ServerName = "Dev" Then
myLogin.ConnectionInfo.ServerName = strDSName
myLogin.ConnectionInfo.DatabaseName = ""
strReturnData += "<br><br> ### DSN Connection ###"
Else
myLogin.ConnectionInfo.ServerName = strServer
myLogin.ConnectionInfo.DatabaseName = strDBName
strReturnData += "<br><br> *** Non-DSN Connection ***"
End If
myLogin.ConnectionInfo.Password = strPassword
myLogin.ConnectionInfo.UserID = strUserID
crtableLogoninfo = crTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = myLogin.ConnectionInfo
crTable.ApplyLogOnInfo(crtableLogoninfo)
' Collect the login information after-the-fact
strReturnData += "<br><br>Final ServerName = [" & myLogin.ConnectionInfo.ServerName.ToString & "]" & _
"<br>Final DatabaseName = [" & myLogin.ConnectionInfo.DatabaseName.ToString & "]" & _
"<br>Final UserId = [" & myLogin.ConnectionInfo.UserID.ToString & "]" & _
"</blockquote>"
Next 'crTable
End If
Next 'crReportObject
Next 'crSection
Here is what gets printed after this code when the debug flag is True:
Table = [usp_MainReportProcedureName] - (Main report)
Original ServerName = [Dev]
Original DatabaseName = [Dev]
Original UserId = [UserName]
### DSN Connection ###
Final ServerName = [Prod]
Final DatabaseName = []
Final UserId = [UserName]
Table = [usp_SubreportProcedureName] - (Subreport - [subrptName.rpt])
Original ServerName = [Dev]
Original DatabaseName = [Dev]
Original UserId = [UserName]
### DSN Connection ###
Final ServerName = [Prod]
Final DatabaseName = []
Final UserId = [UserName]
Here is the export code that renders the report:
'Export to new format
Dim crExportOptions As New ExportOptions
Dim crDiskFileDestinationOptios As New DiskFileDestinationOptions
Dim fname As String = ""
Dim gFileId As New Guid
Try
'Filename for temporary report
fname = System.Configuration.ConfigurationManager.AppSettings("DocumentsLocation") + gFileId.ToString + ".pdf"
crDiskFileDestinationOptios.DiskFileName = fname
crExportOptions = Session("crpt").ExportOptions
Session("crpt").ExportOptions.DestinationOptions = crDiskFileDestinationOptios
Session("crpt").ExportOptions.ExportDestinationType = ExportDestinationType.DiskFile
Session("crpt").ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat
Session("crpt").Export()
'Display and Cleanup
Response.ClearContent()
Response.ClearHeaders()
If blDebugFlag = False Then
'Display the report
Response.ContentType = "application/pdf"
Response.WriteFile(fname) 'writes out PDF if created
Else
'Display connection information for debugging
'*** DEBUG CODE *** for use in TEST ENVIRONMENTS ONLY
Response.Write(strReturnData)
End If
Catch ex As Exception
Session("error") = ex.ToString
'Add the location of the error
Session("error") = "[Address: " & Request.Url.ToString & "] " & Session("error")
Response.Redirect("ErrorEvents.aspx")
Finally
Response.Flush()
'Response.Close() 'Prevents pdf's from rendering in Chrome
System.IO.File.Delete(fname)
GC.Collect()
End Try
I'm wondering if there is some additional code needed after .ApplyLogOnInfo or if there are some other parameters needed when exporting after the connection info has been changed or if there is something else I'm missing.
Thanks for your help.Thank you for the troubleshooting ideas.
The version of the Crystal Runtime on the web server is: CRRuntime_32bit_13_0_6.msi
The database is on an SQL Server 2008 separate server
I started with adding this code just before the export code right after all the looping to change the connection info:
Session("crpt").Refresh()
Session("crpt").VerifyDatabase()
I tried running a report and an error was raised a few lines later at:
Session("crpt").Export()
Here is the error message:
CrystalDecisions.CrystalReports.Engine.ParameterFieldCurrentValueException: Missing parameter values. ---> System.Runtime.InteropServices.COMException: Missing parameter values.
at CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.Export(ExportOptions pExportOptions, RequestContext pRequestContext)
at CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext) --- End of inner exception stack trace ---
at Microsoft.VisualBasic.CompilerServices.Symbols.Container.InvokeMethod(Method TargetProcedure, Object[] Arguments, Boolean[] CopyBack, BindingFlags Flags)
at Microsoft.VisualBasic.CompilerServices.NewLateBinding.CallMethod(Container BaseReference, String MethodName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, BindingFlags InvocationFlags, Boolean ReportErrors, ResolutionFailure& Failure)
at Microsoft.VisualBasic.CompilerServices.NewLateBinding.ObjectLateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn)
at Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn)
Next, I commented out those added lines (refresh and verify) and tried renaming the Dev DSN to Devxxx on the web application server.
I'm at a loss but somehow the report rendered still showing data from the Dev database. I checked the Prod DSN just to be sure it was pointed at the Prod database and it is. I rebooted the server and still got the same results. I opened the report directly in CR 2011 on the web server and tried to preview it. The ODBC dialog came up and the Devxxx DSN was there.
I changed some data in Dev ran the report through the web application in Prod and the data on the report showed the changed data in Dev.
The web application says the report connection info is for Dev and then it is changed for Prod and then even though the Dev DSN no longer exits the report still renders from Dev data???
I'm totally confused as to how this can be but maybe if we can solve the refresh and verify error the DSN mystery will become mute. -
Creating reports directly in web-I
my clients are planning to use Web-I for all there reporting requirements using 4.0.
I would like to check if there other clients that allow there users to create there web-I reports directly in production?
I presume this is how this tool is meant to be used, otherwise the users will always have a dependency on IT to develop and transport.
Would be interesting to hear from others how they have empowered the users with web-I.
Many thanks.Thanks Dennis.
We are also planning template reports which will be created directly in production. We will also have power users who will be able to create new reports and publish them to the public folder as part of template reports. But would it be possible to have end users edit the template reports with there changes but only be allowed to save them to their favorite folder and not to the public folders?
Many thanks -
Changing Report Template Dinamicaly
Hello everybody, I am starting in APEX and I need to change "Report Template" attribute in a classic report programmaticaly. I need to generate a classic report for screen and in CSV format, but obviously I dont want to make 2 reports.
Thanks a lot
AnderOf course.
I make a primary form with two buttons ("Print Preview" and "Excel Output", for example). In this form I make every filter selection (ranges, orders, etc).
My final report have a "CSV Template" assigned, I call it from "Print Preview" button using "Printer Friendly" parameter in YES, and without this parameter for the "Excel Output" button. You can improve this method creating another button (called"Direct Print" for example) for direct printing and using REQUEST parameter and a popup call for the report, you can include a javascript code in the report like this one:
if (":REQUEST" == "VALUE SENT FOR YOU AS A REQUEST")
window.print();
window.close();
I hope this will be useful.
Ander -
Hi Experts,
we want to print a Report directly after clicking on print version. We don't want to first open the pdf file and then click another time on print. Is there any solution?
The best solution would be, that we print automatically the report on our local printer after confirming the filter variables.
Thanks for your help
SebastianThere should be a javascript command, something like window.print, which you could put in the onLoad function of the page.
The problem here is that it doesn't print in the nice PDF version.
Cheers,
Andrew -
Print a report directly to the printer
I need to print a report directly to the printer in Oracle Forms and Report 11g without a preview in the browser
Hello,
<p>You can use this Java Bean</p>
Francois -
Print Crystal Report directly from C# without using Report Viewer
Hello All,
I need to print a crystal report directly to the printer without using ReportViewer in C#. I've a CrystalReport2(belowCode) which requires a query (Select * from JobHeader where JobNumber='J012345') to display all the data. I'm stuck with database connection
and putting all the data to DataAdapter in C# (Below Code). I also have 8 subreports in my CrystalReport2. Can somebody please give me hand on this? I'm struggling with it. Thanks.
Regards
using CrystalDecisions.CrystalReports.Engine;
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;
namespace csharp_win_printtoprinter
/// <summary>
/// Summary description for Form1
/// </summary>
public class Form1 : System.Windows.Forms.Form
//CR Variables
ReportDocument crReportDocument;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.PrintDialog printDialog1;
private System.Windows.Forms.Button button2;
private System.Drawing.Printing.PrintDocument printDocument1;
private CrystalDecisions.Windows.Forms.CrystalReportViewer crystalReportViewer1;
private CrystalReport1 CrystalReport11;
private Chart Chart1;
/// <summary>
/// Required designer variable
/// </summary>
private System.ComponentModel.Container components = null;
public Form1()
// Required for Windows Form Designer support
InitializeComponent();
// TODO: Add any constructor code after InitializeComponent call
/// <summary>
/// Clean up any resources being used
/// </summary>
protected override void Dispose( bool disposing )
if( disposing )
if (components != null)
components.Dispose();
base.Dispose( disposing );
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor
/// </summary>
private void InitializeComponent()
this.button1 = new System.Windows.Forms.Button();
this.printDialog1 = new System.Windows.Forms.PrintDialog();
this.button2 = new System.Windows.Forms.Button();
this.printDocument1 = new System.Drawing.Printing.PrintDocument();
this.crystalReportViewer1 = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
this.Chart1 = new csharp_win_printtoprinter.Chart();
this.CrystalReport11 = new csharp_win_printtoprinter.CrystalReport1();
this.SuspendLayout();
// button1
this.button1.Font = new System.Drawing.Font("Microsoft Sans Serif", 16F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button1.Location = new System.Drawing.Point(32, 56);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(160, 104);
this.button1.TabIndex = 0;
this.button1.Text = "Print Report No Choose Printer";
this.button1.Click += new System.EventHandler(this.button1_Click);
// button2
this.button2.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button2.Location = new System.Drawing.Point(272, 56);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(160, 104);
this.button2.TabIndex = 1;
this.button2.Text = "Choose Printer";
this.button2.Click += new System.EventHandler(this.button2_Click);
// crystalReportViewer1
this.crystalReportViewer1.ActiveViewIndex = 0;
this.crystalReportViewer1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.crystalReportViewer1.Cursor = System.Windows.Forms.Cursors.Default;
this.crystalReportViewer1.Location = new System.Drawing.Point(47, 188);
this.crystalReportViewer1.Name = "crystalReportViewer1";
this.crystalReportViewer1.ReportSource = this.CrystalReport11;
this.crystalReportViewer1.Size = new System.Drawing.Size(903, 296);
this.crystalReportViewer1.TabIndex = 2;
// Form1
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(1164, 505);
this.Controls.Add(this.crystalReportViewer1);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
this.Name = "Form1";
this.Text = "Form1";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
#endregion
/// <summary>
/// The main entry point for the application
/// </summary>
[STAThread]
static void Main()
Application.Run(new Form1());
private void button1_Click(object sender, System.EventArgs e)
crReportDocument = new ReportDocument();
//Create an instance of a report
crReportDocument = new CrystalReport2();
//Use error handling in case an error occurs
try
//Set the printer name to print the report to. By default the sample
//report does not have a defult printer specified. This will tell the
//engine to use the specified printer to print the report. Print out
//a test page (from Printer properties) to get the correct value.
System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();
crReportDocument.PrintOptions.PrinterName = printDocument.PrinterSettings.PrinterName;
//Start the printing process. Provide details of the print job
//using the arguments.
crReportDocument.PrintToPrinter(0 ,true , 1, 1);
//Let the user know that the print job is completed
MessageBox.Show("Report finished printing!");
catch(Exception err)
MessageBox.Show(err.ToString(), "Unexpected exception");
private void Form1_Load(object sender, System.EventArgs e)
private void button2_Click(object sender, System.EventArgs e)
//Open the PrintDialog
this.printDialog1.Document = this.printDocument1;
DialogResult dr = this.printDialog1.ShowDialog();
if(dr == DialogResult.OK)
//Get the Copy times
int nCopy = this.printDocument1.PrinterSettings.Copies;
//Get the number of Start Page
int sPage = this.printDocument1.PrinterSettings.FromPage;
//Get the number of End Page
int ePage = this.printDocument1.PrinterSettings.ToPage;
string PrinterName = this.printDocument1.PrinterSettings.PrinterName;
crReportDocument = new ReportDocument();
//Create an instance of a report
crReportDocument = new Chart();
try
//Set the printer name to print the report to. By default the sample
//report does not have a defult printer specified. This will tell the
//engine to use the specified printer to print the report. Print out
//a test page (from Printer properties) to get the correct value.
crReportDocument.PrintOptions.PrinterName = PrinterName;
//Start the printing process. Provide details of the print job
//using the arguments.
crReportDocument.PrintToPrinter(nCopy, false, sPage, ePage);
//Let the user know that the print job is completed
MessageBox.Show("Report finished printing!");
catch(Exception err)
MessageBox.Show(err.ToString());1. This is a VB.Net forum not a Visual C# forum. For Visual C# questions try this forum.
Visual C#
2. Crystal Reports are not supported by Microsoft. Therefore, unless somebody responding in the Visual C# forum has experience with whichever version of Crystal Reports you are using, you will probably not receive an answer in the Visual C# forum. SAP has
their own assistance for Crystal Reports using Visual Studio. You can try to find an appropriate forum to ask questions in at SAP in the below link.
SAP Community Network
La vida loca -
Purchase order price change report
Hello
How to retieve the purchase order price change report ? do we have any standard report for it or any table which gives these data?
kindlHI
Have you activate version management at your end for PO,i think this will help you to track changes of PO for qty,price etc.
[http://wiki.sdn.sap.com/wiki/display/ERPLO/Version+Management]
Regards
Kailas Ugale -
Change report S_ALR_87012168 - 0SAPDUEAN-01
I am in FDI2 for changing report 0SAPDUEAN-01-Due Date Analysis for Open Items. I would like to add one more characteristic in the list available in the right hand side. Currently there are only 26 characteristics available for selection
Hi Suma,
In my last project I worked a lot on that to add new characteristic but I didn't get in clue. If you get any idea that would be great.
Best of luck
Sreenivas
Maybe you are looking for
-
I'm trying to install Windows 7 on my MacBook with Boot Camp Assistant
I'm trying to use Boot Camp assistant to install Windows 7. I have a disk, I've done everything right, but for some reason, whenever I click Install on the final Boot Camp prompt, it only gets as far as the Windows is loading files... part after it r
-
[SOLVED] Postgis no longer working after upgrade of postgresql
Dear all, after yesterdays upgrade of postgresql-server and libs to 9.0.1 the postgis package does no longer work. When trying to import postgis.sql (version 1.5) it always complains about wrong libraries version: psql:/usr/share/postgresql/contrib/p
-
Can anyone make sences of this - so I might get a chance of using my macbook pro the way it was intented Interval Since Last Panic Report: 9767 sec Panics Since Last Report: 13 Anonymous UUID: 17BE05A9-C292-59EA-F9C6-3334AFA50CBB Tue Nov 27
-
Rules not working in Outlook 2010 Sent Items folder (Personal Folder)
I've been trying to automatically categorize and send emails I've written and sent to the archive's Sent Items folder. However, everytime I create a rule for a particular type of email it doesn't carry it out. The rule will only work when I manuall
-
Intermittent no cellular service on startup
Hi, I have a ipad mini 32gb (non-r). It is on Telus cellular network. Intermittently, I have no cell data service when I power on the mini or if I switch from wifi to 3g.when I'm going out. This is intermittent and happens 2-3 times a week. the o