Find_report_object
Hi
Can anybody help me , I am getting error when executing this command
Declare
l_repid report_object;
Beging
l_repid := find_report_object(P_REPORT_NM);
End;
FRM-41219 Cannot find item invalid id, Althogh my report in the same folder that fmb has.
Regard
Ahamed
Ahamed,
Althogh my report in the same folder that fmb has.Is your Reports Service setup to look for Report Objects in the same place you have your .fmbs? If the Reports Service is not configured correctly, it will not be able to find your report objects.
Craig B-)
If someone's response is helpful or correct, please mark it accordingly.
Similar Messages
-
Find_Report_Object and Run_Report_Object does not work
I am using Win 2000. Running forms 6i version 6.0.8.11.3
When I use Run_Report_Object with the report_name I get
FRM-41219 : Cannot find report. invalid ID.
I get the same error if I use Find_Report_Object also.
Run_Product works fine.
regards
krishI hope this will help you, I have found it on Metalink:
"FRM-41219 Cannot Find Report: Invalid ID"
This message essentially means that the report cannot be found.
Specifying the correct name of a report object found in the
forms object navigator (not the actual name of the rdf file)
usually resolves the problem.
Helena -
Urgent . where to set reports_path to use with find_report_object
Hello,
I'm not sure it is possible but I want to execute a report from forms without having to create a report object at design time in the object navigator, or do I have to create a dummy?
I thought it could be created at runtime and the find_report_object would just look for the given name in the reports_path.
I looked up this path by going to http://w3gvb772:7778/reports/rwservlet/showenv?server=tgcrep772 is my repservername and checking the reports_path entry. I putted the report there to be sure I'm using the right path but it doesn't work?
So questions are:
Do i have to create a dummy object in the navigator bar at design time?
Can a report_object be created at runtime and how?
How can I change the default reports_path given in the link above?
I have already an environment id added with the reports path but apparently this is not taken into account when running find_report_object
Thanks for the helpHello,
REPORTS_PATH is a variable used by the Reports Server. You cannot set it in the Forms envFile . (Or you can set it, but it will not be taken into account by the Reports Server...)
It was possible in the previous versions when the Reports runtime (rwrun60 for example) was launched by Forms to execute a Reports.
Regards -
FIND_REPORT_OBJECT doesn't work
Dear members,
When using "find_report_object", I get a "FRM-41219 Cannot find report : Invalid ID" error.
I used the same report name with "run_product", and it worked fine.
Here's the code :
report_id := FIND_REPORT_OBJECT('deploiements');
or
Run_Product(REPORTS, 'deploiements', SYNCHRONOUS, RUNTIME, FILESYSTEM, pl_id, NULL);
Any idea ?In c/s mode things are simple. Suppose you have your report object defined, with preview as the report destination type. The only code you need is:
declare
repid report_object;
v_rep varchar2(100);
begin
repid := find_report_object('test');
set_report_object_property(repid,report_filename,'test1');
set_report_object_property(repid,report_other,'dept_id=10');
v_rep := RUN_REPORT_OBJECT(repid);
end;
You don't have a report server, you just run the report in c/s mode. -
9iDS - FIND_REPORT_OBJECT doesn't find report
What do I need to do to have FIND_REPORT_OBJECT be able to find a report? Can I specify a full path or do I need to set some configuration file to point to where it is?
Here's the code I'm using to run a report from a form.
PROCEDURE do_print2 IS
repid REPORT_OBJECT;
v_rep VARCHAR2(100);
rep_status VARCHAR2(20);
BEGIN
repid := FIND_REPORT_OBJECT('module2');
v_rep := RUN_REPORT_OBJECT(repid);
END;Mark,
I think that the usage of fin_report_object is wrong.
PROCEDURE do_print2 IS
repid REPORT_OBJECT;
v_rep VARCHAR2(100);
rep_status VARCHAR2(20);
BEGIN
repid := FIND_REPORT_OBJECT('module2');
v_rep := RUN_REPORT_OBJECT(repid);
END;
If module2 is the actual name of the Report definition file, then the usage is not correct. In Forms you create a Reports node. This Reports node then takes the Reports module name as a property. In find_report_object( ) you specify the Reports node name as a value.
E.g. if you created a Reports node in Forms with the name of "myReps" then your code sequence looks like this
PROCEDURE do_print2 IS
repid REPORT_OBJECT;
v_rep VARCHAR2(100);
rep_status VARCHAR2(20);
BEGIN
repid := FIND_REPORT_OBJECT('myReps');
v_rep := RUN_REPORT_OBJECT(repid);
END;
The Reports node needs also to define the Reports Server name used if not set by set_report_object_property(repid,REPORT_SERVER, <name here>);
Please have a look at the Reports integration Whitepaper written for Forms6i/Reports6i. As far as the Run_Report_Object usage goes, it is still valid.
http://otn.oracle.com/products/forms/pdf/277282.pdf
Please note that Oracle Reports web reports (jsp files) cannot be used with run_report_object in Forms
Frank -
Find_report_object('rp2rro') how can this work?
Hi
I've spent a long time looking thru metalink (now Support) at the various posts and documents on calling reports from forms using the run_report_object that the translator replaces run_product with, and here and I'm frankly still looking for direction .
This code is in rp2rro.pll and of course dies, as there is no rp2rro report
rp2rroNodeId Report_Object :=find_report_object('rp2rro');
I have a menu that calls something called execute_report with just a report name (e.g. end_month_report). execute_report is in a user library and contains a call to rp2rrro. It looks like this
PROCEDURE execute_report(i_report IN VARCHAR2) IS
-- Code modified by the Forms Migration Assistant
-- 11-Jan-2011 01:58 PM
BEGIN
SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'BUSY');
RP2RRO.RP2RRO_RUN_PRODUCT(REPORTS, i_report, SYNCHRONOUS, RUNTIME, FILESYSTEM);
SET_APPLICATION_PROPERTY(CURSOR_STYLE, 'DEFAULT');
END;
Can anyone suggest a way to make this work without modifying the forms?
Looking at Rp2rro, it uses rp2rroNodeId throughout..
Thanks for any suggestionsWell almost a year later, the dummy form solution has been working well with 11GR1, but I have some issues understanding how to make the dummy form call reports using parameters passed in the rp2rro call using this approach
If a form calls the dummy form with a parameter list containing e.g. start_date, end_date etc then the problem is that the dummy form doesn't have those parameters defined because it can be called from many different forms each with its own set of parameters.
As I read in the 6i doc "+When passing the default parameter list as well as any other parameter list, make sure that every parameter exists with the same name in the called form"+ which doesn't work as the dummy form doesn't have those parameters defined.
I'm trying to centralize all the rp2rro report invocations so that developers don't have to add the web.show_document and the hidden values and the rest of that logic to bring a PDF form back into the web browser
I'm trying out a number of things but would be interested if anyone has any comments.. -
Handle a non existance of report object while using find_report_object ?
How to handle a non existance of report object while using find_report_object?
HOW CAN I HANDLE THE ERROR FRM-41219 PROGRAMATICALLY.
SINCE ID_NULL IS NOT SUPPORTING FOR REPORT OBJECT.
1) Message level for FRM-41219 is 20, even if i set the message level to 20, it's not getting suppresed.
As per my follwoing code, error is rasing once immidiatlly after the find_report_object.
DECLARE
REPID REPORT_OBJECT;
BEGIN
REPID := FIND_REPORT_OBJECT('REP_OBJECT');
--NOTE 'REP_OBJECT' DOES NOT EXIST, IT'S NOT GOING TO THE EXCEPTION
--SECTION AND RASING THE ERROR 41219 CANNOT FIND REPORT : INVALID ID.
--QUESTION : HOW CAN I HANDLE THIS ERROR?
EXCEPTION
WHEN OTHERS THEN
MESSAGE('INSIDE EXCEPTION');
MESSAGE('INSIDE EXCEPTION');
END;This is really more of a Forms issue since these are Forms built-ins. However, check out note 209513.1 in Metalink. It describes how to check if the report objects exists and how to trap the error.
Hope that helps,
Toby -
Report6.0 Procedure FIND_REPORT_OBJECT
Hi
I have a problem with the procedure FIND_REPORT_OBJECT.
the procedure FIND_REPORT_OBJECT wrote in this way
repid := FIND_REPORT_OBJECT('c:\..\REPORTNAME');
return the error FRM-41219: Cannot find report: invalid ID.
The report is saved in the file system. Where is the error?
Thanks.
Regards
nullRaffaele Dei Campielisi (guest) wrote:
: Hi
: I have a problem with the procedure FIND_REPORT_OBJECT.
: the procedure FIND_REPORT_OBJECT wrote in this way
: repid := FIND_REPORT_OBJECT('c:\..\REPORTNAME');
: return the error FRM-41219: Cannot find report: invalid ID.
: The report is saved in the file system. Where is the error?
: Thanks.
: Regards
The parameter that you pass to FIND_REPORT_OBJECT should be the
name of the report object that you attached in your Form
Designer under the Reports node. So you cannot use the actual
file name in this built-in. The file name is one of the
properties of the report object. Hope this helps.
Yar
null -
FIND_REPORT_OBJECT (For Oracle Team)
Does it work at all?
Error is
Cannot find report: invalid ID.
Thanks,Have you read the following paper: Oracle9iAS Forms Services 6i
and Reports Integration
http://otn.oracle.com/products/forms/pdf/277282.pdf
Hopefully it should answer your questions.
Candace Stover
Forms Product Management -
Run_report_object is not working
Hi everyone
I am trying to convert my 6i reports into 9i.
I have added into a report object node in my form all necessary objects. In procedure i call run_report_object and got error 'REP-0503 You did not specify the name of the report' .
Here is my code(obviousely i am missing something)
report_id Report_Object;
report_job_id VARCHAR2(100);
BEGIN
v_report_module := v_report_path || v_report_file_name;
report_id := find_report_object(v_report_file_name);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_EXECUTION_MODE,RUNTIME);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_COMM_MODE,SYNCHRONOUS);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESTYPE,PREVIEW);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_FILENAME,v_report_file_name);
set_report_object_property(report_id, report_other, 'paramform=no');
report_job_id := RUN_REPORT_OBJECT
(report_id, pl_id) ;
END;
Thanks everyone in advanceYou have to specify a report object name in your Forms module and you pass in that name as a parameter to find_report_object function call.
HTH,
Tamas Szecsy -
Reg: sending an email using report server
Hi,
i am using the below code to send an email using the report server.
When send button Click:
DECLARE
PL_ID ParamList;
repid REPORT_OBJECT;
v_rep varchar2(100);
rep_status varchar2(20);
l_host_name varchar2(50);
l_port_num varchar2(10);
l_server_name varchar2(50);
l_month_name varchar2(20);
l_from varchar2(50);
l_to varchar2(50);
l_cc varchar2(50);
l_property varchar2(1000);
l_sub_out varchar2(200);
l_sub varchar2(400);
L_BODY VARCHAR2(1000);
l_email_dir varchar2(50);
BEGIN
l_sub:=:block1.number||' '||replace(replace(:block1.desc,'&','ampersand'),'''','$quote');
if length(l_sub) >150 then
l_sub_out:=substr(l_sub,0,150);
else
l_sub_out:=l_sub;
end if;
l_host_name := (i used my host ip address local host);
l_port_num := '8889';
l_email_dir := 'C:\forms\';
l_from := [email protected];
l_cc := [email protected];
L_BODY:=' Please refer to the attached abc Report';
repid := find_report_object('PRINT_REPORT');
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_FILENAME,'abc');
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_DESTYPE,MAIL);
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_DESFORMAT,'PDF');
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_SERVER,l_server_name);
go_block('abc_MAIL_TO');
first_record;
if :abc.email_address is not null then
loop
l_to:=:abc.email_address;
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_OTHER, 'paramform=no DISTRIBUTE=YES DESTINATION='||l_email_dir||'test.xml'||' '||
' p_2='|| TO_CHAR(:control.sessionid)||' '||'P_ID='||TO_CHAR(:block1.ID)||' '
||'P_LIST_TYPE='||'A'||' '
||'DISTRIBUTE=YES DESTINATION=test.xml'||' '
||'P_FROM='||''''||l_from||''''||' '
||'P_SEND='||''''||l_to||''''||' '
||'P_CC='||''''||l_cc||''''||' '
||'P_FILE='||'C:\testfile.txt'||' '
||'p_email_path='||l_email_dir||' '
||'P_BODY='||''''||l_body||''''||' '
||'P_NUM='||''''||'Email report: '||l_sub_out||'''');
v_rep := RUN_REPORT_OBJECT(repid);
rep_status := REPORT_OBJECT_STATUS(v_rep);
WHILE rep_status in ('RUNNING','OPENING_REPORT','ENQUEUED')
LOOP
rep_status := report_object_status(v_rep);
END LOOP;
IF rep_status = 'FINISHED' THEN
null;
ELSE
message(rep_status);
message('Error when sending email to: '||l_to);
END IF;
if :system.last_record='TRUE' then
exit;
else
next_record;
end if;
end loop;
end if;
message ('Mail has been sent.');
END;
In the report:
I created all the required parameters and i wrote a trigger as
function AfterPForm return boolean is
dst_file text_io.file_type;
l_email_dir varchar2(50);
begin
dst_file := text_io.fopen(:p_email_path||'test.xml','w');
text_io.putf(dst_file, '<destinations>'||chr(13));
text_io.putf(dst_file, '<mail id="ex1" '||chr(13));
text_io.putf(dst_file, 'from="&P_FROM"'||chr(13));
text_io.putf(dst_file, 'to="&P_SEND"'||chr(13));
text_io.putf(dst_file, 'cc="&P_CC"'||chr(13));
text_io.putf(dst_file, 'subject="&<P_NUM>">'||chr(13));
text_io.putf(dst_file, '<body srcType="text">'||chr(13));
text_io.putf(dst_file,'<![CDATA>'||chr(13));
text_io.putf(dst_file, '</body>'||chr(13));
text_io.putf(dst_file, '<foreach>'||chr(13));
text_io.putf(dst_file, '<attach format="pdf" name="report.pdf" srcType="report" instance="all">'||chr(13));
text_io.putf(dst_file, '<include src="mainSection"/>'||chr(13));
text_io.putf(dst_file, '</attach>'||chr(13));
text_io.putf(dst_file, '</foreach>'||chr(13));
text_io.putf(dst_file, '</mail>'||chr(13));
text_io.putf(dst_file, '</destinations>'||chr(13));
text_io.fclose(dst_file);
return (TRUE);
end;
Then after compilation i click the button send. Then i got the message as
Mail has been sent to [email protected].
But i didn't receive any mail.
then i check the report job id. It was showing job was successful .
And i check whether the test.xml file was created or not. It has created the test.xml file as below:
<destinations>
<mail id="ex1"
from="&P_FROM"
to="&P_SEND"
cc="&P_CC"
subject="&<P_NUM>">
<body srcType="text">
<![CDATA Please refer to the attached abc Report]>
</body>
<foreach>
<attach format="pdf" name="report.pdf" srcType="report" instance="all">
<include src="mainSection"/>
</attach>
</foreach>
</mail>
</destinations>
I have 2 machines having dev 10g. one machine is working fine with this code. but in my machine it was not working.
Do any one of you had a solution for my case.
Thanks in advance.
Edited by: user648380 on Dec 29, 2009 5:59 PMSorry to all.
I made a mistake in the from email address.
Instead of gmail.com i had given gmail,com
I am really sorry about it. -
Print a report to a specific printer from Forms
I have a form from where i want to print a report to a specific printer (not the default printer). Is there any way to do this from Forms 9i. Im using the Orarrp but it pops up the printer dialog and shows the default printer. Is there any way to harcod the printer name. the printer is on the network..
If i go to my control pannel and see the list of printers i take the printer name from there. should i put the path of the printer? i kno the port of the printer .it come like ip_192.1.11.1_p1 ..how do i define the printer name? if i dnt give the printer name shouldnt if fire to the default printer ..my code is as follows
declare
REPID REPORT_OBJECT;
V_REP VARCHAR2(100);
REP_STATUS VARCHAR2(20);
BEGIN
REPID := FIND_REPORT_OBJECT('CUS_PRINT');
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,PRINTER);
SET_REPORT_OBJECT_PROPERTY(REPID,REPORT_SERVER,'test');
SET_REPORT_OBJECT_PROPERTY(REPID,REPORT_OTHER,'P_CUSREF='||:CTRL01.CUSREF||' PARAMFORM=NO');
MESSAGE('SET REPORT PROP');
V_REP := RUN_REPORT_OBJECT(REPID);
REP_STATUS := REPORT_OBJECT_STATUS(V_REP);
MESSAGE('RAN REPORT');
WHILE REP_STATUS IN ('RUNNING','OPENING_REPORT','ENQUEUED') LOOP
REP_STATUS := REPORT_OBJECT_STATUS(V_REP);
END LOOP;
IF REP_STATUS = 'FINISHED' THEN
IF NVL('TEST',' ') <> ' ' THEN
GEN_ALERT('NULL_ALERT','TEST');
END IF;
ELSE
GEN_ALERT('NULL_ALERT','Error when running report');
END IF;
END;
what should the desformat of the report should be..when im trying to run this it gives me 'no data found' error...why??? -
Can you open a report in Excel/Word desktop instead of the web pugin?
using run_report_object( and web.show_document,
how or can you get a report to open in the desktop/full version of MS Excel/Word instead of the web plugin versions?
I can get the browser to open a report in pdf with my desktop adobe reader, but not with an rtf or xml/delimited desformat.
Currently I don't pass a mimetype when opening as a pdf, but I do pass one in the url when i am destypes of xml, delimited and rtf,
as this is the only way i have found out how to open the reports in word/excel.
I'm in the process of upgrading from forms 6 client/server to 10g developer suite, so this is my try with a web based system.
Does anyone have any suggestions, or where I should look.
Below I listed my code from a procedure.
the first part of the procedure is alot of converting, but if you skip down to the part between the 2 sets of double lines this fairly standard.
PACKAGE BODY pmc_lib IS
-- Procedure to run the report.
procedure run_reports(v_report_name in varchar2, -- Report Name with or w/o a path.
v_commode in number default synchronous, -- commode
v_execmode in number default runtime, -- execute mode
v_file_sys in number default filesystem, -- dummy
v_param_list in paramlist, -- parameter list
v_show_modes in varchar2 default null) is -- used for testing,
-- if set to anthing but null, the report properties will display
-- on the screen through an alert prior to printing.
v_errorcode number;
v_errortext varchar2(600);
v_initialized boolean := false;
v_prop_reportserver varchar2(200);
v_report_path varchar2(200);
v_user varchar2(100);
v_user_sessionid number;
v_forms_version varchar2(100);
v_default_report_server varchar2(200);
v_default_server_domain_path varchar2(200);
v_connect_string varchar2(3) := get_application_property(connect_string);
v_user_name varchar2(35) := get_application_property(username);
report_id report_object;
reportserverjob varchar2(100);
v_jobid varchar2(100);
rep_status varchar2(100);
v_url varchar2(500);
v_url2 varchar2(500);
v_parameter_value varchar2(100);
v_destype_param_value varchar2(100) := null;
v_desformat_param_value varchar2(100) := null;
v_desname_param_value varchar2(100) := null;
v_value_n number := 0;
v_param_type number := text_parameter;
v_prop_execmode number;
v_prop_commode number;
v_prop_destype number;
v_prop_filename varchar2(200);
v_prop_source_block varchar2(200) := null;
v_prop_query_name varchar2(200) := null;
v_prop_desname varchar2(200) := null;
v_prop_desformat varchar2(200) := null;
v_prop_reportserver varchar2(200) := null;
v_prop_other varchar2(200) := null;
v_mimetype varchar2(200) := null;
v_selected_mimetype varchar2(200) := null;
report_not_generated exception;
report_id_not_found exception;
BEGIN
v_forms_version := get_application_property(version);
v_prop_reportserver := get_report_object_property('report1', report_server);
v_report_path := null;
v_user := v_user_name || '/' ||
get_application_property(password) || '@' ||
v_connect_string;
if v_connect_string = 'NNN' then
v_default_server_domain_path := 'pmcoracapp01.aapmc.com/reports/rwservlet';
v_default_report_server := 'rep_pmcoracapp01_frhome1';
else
v_default_server_domain_path := 'oradevsrv.aapmc.com/reports/rwservlet';
v_default_report_server := 'rep_oradevsrv_frhome1';
end if;
v_initialized := true;
-- Check to see what version of forms is running.
if substr(v_forms_version, 1, 1) <> '6' then
-- Check to see if WEB version is running
-- This may be an unnecessary check.
if (get_application_property(user_interface) = 'WEB') then
report_id := find_report_object('report1');
-- id_null won't work on a report_id in Version 6, may put back in 10g once version 6 is gone completly
-- if id_null(report_id) then
-- raise report_id_not_found;
-- end if;
-- Because of Convertions from old system the following are needed.
-- 1) If 'execmode' is runtime, then change it to batch.
if v_execmode = runtime then
v_prop_execmode := batch;
else
v_prop_execmode := v_execmode;
end if;
-- 2) If Report name has an attached path, then remove it.
v_value_n := instr(lower(v_report_name), 'k:\pmc\new\');
if v_value_n = 0 then
v_prop_filename := v_report_name;
else
v_prop_filename := substr(v_report_name, v_value_n + 11);
end if;
-- From looking at the FORMS, 'destype' parameter is always passed in from the FORM.
-- It is either 'preview' or 'file'.
-- This is here for the converstion from Forms 6 to 10g.
-- If for some reason destype has not been passed in as a parameter, you will get a FORM error,
-- saying the parameter does not exists.
begin
-- 3) If 'destype' is one of the following, then change it to cache.
get_parameter_attr(v_param_list, 'destype', v_param_type, v_destype_param_value);
if lower(nvl(v_destype_param_value, 'null')) in ('preview', 'file', 'null') then
v_prop_destype := cache;
-- 3a) If 'destype' was = 'file' then check the 'desformat' and 'desname'.
if lower(nvl(v_destype_param_value, 'null')) = 'file' then
-- 3b) Get 'desformat' value
get_parameter_attr(v_param_list, 'desformat', v_param_type, v_desformat_param_value);
-- 'delimited' was not working, so change all 'delimited' to 'delimiteddata'.
if lower(nvl(v_desformat_param_value, 'null')) = 'delimited' then
v_desformat_param_value := 'delimiteddata';
end if;
-- 3c) If 'desformat' is NOT one of the following, then change it to pdf.
if lower(nvl(v_desformat_param_value, 'null')) not in ('pdf', 'xml', 'rtf', 'delimiteddata') then
v_prop_desformat := 'pdf';
else
v_prop_desformat := lower(v_desformat_param_value);
end if;
-- 4) Get 'desname' property.
get_parameter_attr(v_param_list, 'desname', v_param_type, v_desname_param_value);
v_prop_desname := lower(v_desname_param_value);
end if;
else
v_prop_destype := lower(v_destype_param_value);
end if;
exception
when others then
null;
end;
-- If a desformat is rtf, xml, or delimited then get a mimetype to pass to the url
if lower(v_prop_desformat) = 'rtf' then
v_mimetype := '&mimetype=application/msword';
elsif lower(v_prop_desformat) = 'xml' then
v_mimetype := '&mimetype=application/vnd.ms-excel';
elsif lower(v_prop_desformat) = 'delimiteddata' then
v_mimetype := '&mimetype=application/vnd.ms-excel';
end if;
-- 6) If the Following are not set within the Report Object then
-- set them to the following defaults.
-- These are al required to be set for the Report Object to Function.
-- These are the defaults for AAPMC.
v_prop_execmode := nvl(v_prop_execmode, batch);
v_prop_commode := nvl(v_prop_commode, synchronous);
v_prop_destype := nvl(v_prop_destype, cache);
v_prop_desformat := nvl(v_prop_desformat, 'pdf');
v_prop_reportserver := nvl(v_prop_reportserver, v_default_report_server);
-- Set All Report_Object Properties
set_report_object_property(report_id, report_execution_mode, v_prop_execmode);
set_report_object_property(report_id, report_comm_mode, v_commode);
set_report_object_property(report_id, report_destype, v_prop_destype);
set_report_object_property(report_id, report_filename, v_prop_filename);
set_report_object_property(report_id, report_source_block, v_prop_source_block);
set_report_object_property(report_id, report_query_name, v_prop_query_name);
set_report_object_property(report_id, report_desname, v_prop_desname);
set_report_object_property(report_id, report_desformat, v_prop_desformat);
set_report_object_property(report_id, report_server, v_prop_reportserver);
set_report_object_property(report_id, report_other, v_prop_other);
-- Run Report_Object
reportserverjob := run_report_object(report_id, v_param_list);
v_jobid := substr(reportserverjob, length(v_prop_reportserver) + 2, length(reportserverjob));
-- If Report Status is not 'FINISHED', then loop till it is.
if reportserverjob is not null then
rep_status := report_object_status(reportserverjob);
while rep_status in ('RUNNING', 'OPENING_REPORT', 'ENQUEUED') loop
rep_status := report_object_status(reportserverjob);
end loop;
if rep_status <> 'FINISHED' then
raise report_not_generated;
end if;
-- Create 1st part of url.
v_url := 'http://' || v_default_server_domain_path || '/getjobid' || v_jobid || '?server=' || v_prop_reportserver;
-- Check for mimetype.
if v_mimetype is not null then
v_url := v_url || v_mimetype;
end if;
-- Final part of url.
v_url2 := 'javascript:window.open("' || v_url || '", "", "fullscreen=no, titlebar=no, location=no, toolbar=no, menubar=no, status=no, resizable=yes"); self.close()';
-- This is the built-in that calls a new browser window
web.show_document(v_url2,'_blank');
else
raise report_not_generated;
end if;
end if;
-- Destroy the parameter list.
destroy_parameter_list(v_param_list);
else
-- This section if for Client Server, Version 6 of forms.
-- It will do the same as before the conversion.
-- It is only used before the complete conversion.
if v_report_name is null then
return;
end if;
v_value_n := instr(v_report_name, 'k:\pmc\new\');
if v_value_n = 0 then
v_prop_filename := 'k:\pmc\new\' || v_report_name;
else
v_prop_filename := v_report_name;
end if;
run_product(reports,
v_prop_filename,
v_commode,
v_execmode,
filesystem,
v_param_list,
null);
end if;
-- create history record of the report being run
insert into pmc_report_history values(
s_pmc_report_history.nextval,
v_prop_filename,
v_user_name,
sysdate,
v_forms_version,
v_jobid,
v_destype_param_value,
v_desformat_param_value,
v_desname_param_value,
v_prop_destype,
v_prop_desformat,
v_prop_desname,
v_mimetype,
v_window_open_params);
commit;
exception
when report_id_not_found then
show_user_alert('ERROR: Cannot Find Report Object!', null);
when report_not_generated then
show_user_alert('ERROR: Report Not Generated!', null);
when others then
v_errorcode := SQLCODE;
v_errortext := SQLERRM;
show_user_alert('ERROR : ' || v_errorcode || ' = ' || v_errortext, null);
end;
end;What you could try is downloading the report to the client pc using WEBUTIL_FILETRANSFER.URL_TO_CLIENT, then open the locally save file using something like:
CLIENT_HOST('cmd /c rundll32.exe url.dll,FileProtocolHandler "localfilename"'); -
FRM-41211 Integration Error SSL - Oracle Forms 10g
Hi all.
I have FRM-41211 Integration Error SSL Failure Running Another Product error while calling a report from web form in oracleAS 10g.
I have problem with RUN_REPORT_OBJECT in web forms in this code:
=====================================================
DECLARE
BEGIN
repid := find_report_object('MODULE21');
v_rep := RUN_REPORT_OBJECT(repid);
-- jobid := substr(v_rep, length('rep60_WS70004')+2, length(v_rep));
-- web.show_document('/reports/rwservlet/getjobid'||jobid||'?server=rep3945','_blank');
END;
=====================================================
I have error: FRM-41211 SSL integration error .....
OracleAS 10g server began on Windows XP SP2.
Do you help me ?
Very thanks !!Do you help me ?
Thanks. -
FRM-92101 error while running report from a button or menu
Hi All,
I am getting the error FRM-92101 while running report without parameter from a button or menu. I am using Developer Suit 10g. I get the error as it shows there has some configuration problem in my form. Will you please help me anyone how can i solve the problem. My previous forms running very well both with parameter and without parameter.
ArifHello Sir,
Thanks for your cooperation. I have solved my problem by myself. The fact was that, when i tried with the following code which made my report---
SELECT br.bid, br.bname, br.branchtxnstatus, dif.difference
FROM branch br,
(SELECT gladbrid branchid,
SUM
(CASE
WHEN ga.gl_acc_categry IN ('L', 'I')
THEN gd.gladbalance
ELSE -1 * gd.gladbalance
END
) AS difference
FROM glaccount ga, glaccountdetail gd
WHERE ga.glid = gd.gladglid
GROUP BY gladbrid) dif
WHERE dif.branchid = br.bid AND br.branchtxnstatus = :Br_Status
and dif.difference!=0
ORDER BY br.bid;
and the code against the button or menu item is---
DECLARE
repid REPORT_OBJECT;
v_rep VARCHAR2(100);
rep_status VARCHAR2(20);
BEGIN
repid := FIND_REPORT_OBJECT('ASSET');
v_rep := RUN_REPORT_OBJECT(repid);
rep_status := REPORT_OBJECT_STATUS(v_rep);
WHILE rep_status in ('RUNNING','OPENING_REPORT','ENQUEUED')
LOOP
rep_status := report_object_status(v_rep);
END LOOP;
IF rep_status = 'FINISHED' THEN
/*Display report in the browser*/
WEB.SHOW_DOCUMENT('http://192.168.0.21:8889/reports/rwservlet/getjobid'||
substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=repserver90','_blank');
ELSE
message('Error when running report');
END IF;
Clear_message;
END;
Clear_message;
which has shown the error FRM-92101 and didn't run the report.
In that case I have changed the query to run the report. first of all i create a view following the query and build the report using a simple select query. that's etc. my report running fine now.
It is mentioned that there had no error on my codes.
Arif
Maybe you are looking for
-
How to run my own jar file on nokia 6600?
i am in urgent need of that. please let me know. i will be grateful to you.
-
My itunes said there was a new software update I could download so I clicked ok. The "apple software update" box ran for days!!!!...I am not joking. Supposedly it has to backup, then download and restore. I finally had to stop it not knowing if it wa
-
I want to be able to select the addressees of a new mail from those of a sent mail. I want to be able to copy some of the addressees from those of the previous mail, but not all. Is there a simple way of copying all the old addressees in one operatio
-
I updated iMovie and now why isn't there any audio when I import movies from my Sony camera?
-
MessageDownload functionality is not working properly
Hi, I have a requirement to show the attachment against the PO in iProcurment. I have created new region and i am passing the PO HEADER ID and i am retrieving the data from the FND Tables. In the Table Region i created the item as messageDownload and