Home » Fusion Middleware & Colab Suite » Weblogic & Application Server » Single report server name addressing two physical servers (Oracle Forms 10g)
Single report server name addressing two physical servers [message #346450] Mon, 08 September 2008 10:41 Go to next message
Hanumantha Raju
Messages: 7
Registered: April 2001
Junior Member
Hi,
I need to catch the errors Frm-41213 and Frm-41214 from the Form.
I have tried with On-Error trigger. But its not catching the above errors.

Is there any other we can trap these errors?

Thanks
Hanu
[EDITED by DJM: rename thread and move it. Previous title was "How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g?"]

[Updated on: Wed, 10 September 2008 18:58] by Moderator

Report message to a moderator

Re: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g? [message #346508 is a reply to message #346450] Mon, 08 September 2008 14:31 Go to previous messageGo to next message
maxis
Messages: 17
Registered: September 2008
Junior Member
Please Post your code
Re: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g? [message #346539 is a reply to message #346508] Mon, 08 September 2008 16:08 Go to previous messageGo to next message
Hanumantha Raju
Messages: 7
Registered: April 2001
Junior Member
Hi,
Please find the source code i am using in the On-Error trigger at the form level.

DECLARE
lv_errcod NUMBER := ERROR_CODE;
lv_errtxt VARCHAR2(300) := ERROR_TEXT;
BEGIN
IF lv_errcod IN (41213,41214) THEN
NULL;
END IF;
END;

Even after handling the above errors, those are still displaying in the form at run time.

Thanks in Advance.
Hanumantha
Re: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g? [message #346581 is a reply to message #346539] Mon, 08 September 2008 23:40 Go to previous messageGo to next message
Littlefoot
Messages: 21806
Registered: June 2005
Location: Croatia, Europe
Senior Member
Account Moderator
Did you try with something like
if err_type = 'FRM' and (err_code = '41213' or err_code = '41214') then
   null;
end if;
Re: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g? [message #346703 is a reply to message #346581] Tue, 09 September 2008 08:12 Go to previous messageGo to next message
Hanumantha Raju
Messages: 7
Registered: April 2001
Junior Member
Hi,
Yes I did try in that way but no use.Still i couldn't able to catch that errors.

Thanks
Hanu
Re: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g? [message #346904 is a reply to message #346703] Wed, 10 September 2008 01:16 Go to previous messageGo to next message
djmartin
Messages: 10181
Registered: March 2005
Location: Surges Bay TAS Australia
Senior Member
Account Moderator
Have you used 'message;pause;' pairs to identify as to exactly the line of code that is giving rise to this message?

I wish you people would list the error message and just not the error code.
FRM-41213: Unable to connect to the Report server %s
FRM-41214: Unable to run report.

Please post your code. Get rid of your 'run_report' line and use 'web.show_document'.

David
Re: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g? [message #347071 is a reply to message #346904] Wed, 10 September 2008 10:15 Go to previous messageGo to next message
Hanumantha Raju
Messages: 7
Registered: April 2001
Junior Member
Dear David,
Sorry for not mentioning the Error Description.

I have identified the line of code that is returning error.
But i have placed an Exception just after the line which is giving error. But the exception handler is not able to handle the error.

My requirement is in a multiple report server environment if one report server is not available it should run on the other report server available. We are able to achieve that but only thing is First its displaying a message when it tried to run the first report server and then displaying the output which is generated at the second report server.

So, I wanted to trap that error and handle it in such a way that it shouldn't be displayed.


/* Get a handle to the Report Object itself. */
v_report_id := FIND_REPORT_OBJECT(vc_reportoj);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_FILENAME ,v_rep_file_name);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_COMM_MODE ,SYNCHRONOUS);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_EXECUTION_MODE ,BATCH);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESFORMAT ,vc_runformat);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_SERVER ,vc_reportserver);
IF vc_destype='CACHE' THEN
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESTYPE ,CACHE);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESNAME ,v_orarrp_file);
ELSIF vc_destype='FILE' THEN
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESTYPE ,FILE);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESNAME ,p_desname);
ELSIF vc_destype='PRINTER' THEN
v_orarrp_file := v_orarrp_file||'.rrpa';
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESTYPE ,FILE);
v_report_cache := get_server_info.FN_GET_REPORTSERVER_CACHE;
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESNAME ,v_report_cache||v_orarrp_file);
SET_REPORT_OBJECT_PROPERTY(v_report_id ,REPORT_DESFORMAT ,'pdf');
END IF;
--
IF p_param_form = 'N' THEN
SET_REPORT_OBJECT_PROPERTY(v_report_id,REPORT_OTHER,'ENVID=reppath PARAMFORM=NO');
ELSE
SET_REPORT_OBJECT_PROPERTY
(v_report_id,REPORT_OTHER,'ENVID=reppath PARAMFORM=YES '||
' P_USER_CONNECT='||VC_CONNECT||
' P_SERVER_NAME='||vc_reportserver ||
' P_REPORT_NAME='||v_rep_file_name ||
'P_ACTIONS='||machine_name||'/reports/rwservlet?'|| ' P_ENVID=reppath');
END IF;
BEGIN
--Getting the FRM-41213 error after this line once
vc_ReportServerJob:=RUN_REPORT_OBJECT(v_report_id,pl_id);
EXCEPTION
WHEN OTHERS THEN NULL;
END;

vjob_id :=substr(vc_ReportServerJob ,length(vc_reportserver)+2 ,length(vc_ReportServerJob));
IF vjob_id IS NULL THEN
p_rpt_status := 'SERVER NOT RUNNING'; RETURN;
END IF;
BEGIN
--Getting the FRM-41213 error after this line once
vc_rep_status := REPORT_OBJECT_STATUS(vc_ReportServerJob);
EXCEPTION
WHEN OTHERS THEN NULL;
END;

Please advise me.

Thanks
Hanu

[Updated on: Wed, 10 September 2008 10:19]

Report message to a moderator

Single report server name addressing two physical servers [message #347139 is a reply to message #347071] Wed, 10 September 2008 18:57 Go to previous messageGo to next message
djmartin
Messages: 10181
Registered: March 2005
Location: Surges Bay TAS Australia
Senior Member
Account Moderator
Do NOT do this is the form. Set up the report servers the normal but with another handler over the top of then to distribute the work. For example, your report servers will be called 'server1' and 'server2' but you form with address 'rpt_srvr' which will be a logical handler to the other two.

Fortunately, I didn't have to do this work in my previous location. Unfortunately, I don't have acces to those people anymore.

I will rename this thread and move it to the Application Server forum.

David

Former title: How to Trap the FRM-41213 and FRM-41214 error messages from Forms 10g?
Re: Single report server name addressing two physical servers [message #347394 is a reply to message #347139] Thu, 11 September 2008 08:23 Go to previous messageGo to next message
Hanumantha Raju
Messages: 7
Registered: April 2001
Junior Member
Dear David,

One more thing i would like to tell you is, The above code am calling in a loop by passing the Physical Report Server name as a parameter.
So, first it will try to run in "repsrvr1" if its FINISHED then exit from the loop else run on "repsrvr2" and so on.

The logic is working pretty good but only problem is if the report server "repsrvr1" is down then at the begining itself we are getting the error message "FRM-41213 Unable to connect to the Report server repsrvr1" and then the report is submitting in the second report server "repsrvr2" and displaying the output.

So, my final intention is when ever a report is completed successfully in any one of the report servers available, the first error message should not be displayed.

Thanks
Hanu
Re: Single report server name addressing two physical servers [message #356465 is a reply to message #347394] Thu, 30 October 2008 16:15 Go to previous message
scorpio_
Messages: 8
Registered: October 2008
Junior Member
Hello! I´m using code similar to tis code
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_COMM_MODE,SYNCHRONOUS);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_FILENAME,report_file_name);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_SERVER,report_server_name);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESTYPE,report_destype_name);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESFORMAT,report_format);

hidden_action := hidden_action ||'&report='||
GET_REPORT_OBJECT_PROPERTY(report_id,REPORT_FILENAME);
hidden_action := hidden_action||'&destype='||
GET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESTYPE);
hidden_action := hidden_action||'&desformat='||
GET_REPORT_OBJECT_PROPERTY (report_id,REPORT_DESFORMAT);
hidden_action := hidden_action ||'&userid='||get_application_property(username)||'/'||
get_application_property(password)||'@'||
get_application_property(connect_string);

c_old :='@';
FOR i IN 1..LENGTH(report_otherparam) LOOP
c_new:= substr(report_otherparam,i,1);
IF (c_new =' ') THEN
c:='&';
ELSE
c:= c_new;
END IF;
-- eliminate multiple blanks
IF (c_old =' ' and c_new = ' ') THEN
null;
ELSE
v_report_other := v_report_other||c;
END IF;
c_old := c_new;
END LOOP;
hidden_action := hidden_action ||'&'|| v_report_other;
hidden_action := reports_servlet||'?_hidden_server='||report_server_name||encode(hidden_action);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_OTHER,'pfaction='||
hidden_action||' '||report_otherparam);
-- run Reports
report_message := run_report_object(report_id);
rep_status := report_object_status(report_message);
IF rep_status='FINISHED' THEN
vjob_id :=substr(report_message,length(report_server_name)+2,length
(report_message));
WEB.SHOW_DOCUMENT(reports_servlet||'/getjobid'||vjob_id||'?server='||
report_server_name,'_blank');
ELSE
--handle errors
null;
END IF;


but its only executed with a single report, if I want to execute multiply reports what can i have to do?

Thanks!!
Previous Topic: add a folder directory as a hyperlink
Next Topic: FRM - 41213 - Unable to connect to the Reports Server
Goto Forum:
  


Current Time: Thu Mar 28 17:30:23 CDT 2024