Hi,
I have installed oracle forms & reports 12c 12.2.1.4 on windows 10 with DB 12c Standard Edition.
I am able to run Reports using URL
for Eg : http://localhost:9002/reports/rwservlet?report=h:\rptinvoice.rdf&destype=cache&desformat=pdf
The Job run using this URL can be confirmed using
http://localhost:9002/reports/rwservlet/showmyjobs
I have problem running Report from Oracle Forms (The code I am using was running in 11g). I googled and found the code to run report has no change.
Whenever I try to run a report from oracle forms REPORT_OBJECT_STATUS returns nothing and no error is thrown. (Cannot find the jobid)
I have gone through many threads and did the necessary changes in
rwservlet.properties
default.env
rwbuilder.conf
I have also set COMPONENT_CONFIG_PATH in default.env with reptools1
Running http://hostname:9002/reports/rwservlet/startserver returns 1|0.
Can you please guide what is missing with my configuration?
Below is the content of files
Rwbuilder.conf
<?xml version = '1.0' encoding = 'ISO-8859-1'?>
<server
xmlns="http://xmlns.oracle.com/reports/server"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/reports/server"
<cache class="oracle.reports.cache.RWCache">
<property name="cacheSize" value="50"/>
<!--property name="cacheDir" value="your cache directory"/-->
<!--property name="maxCacheFileNumber" value="max number of cache files"/-->
</cache>
<!--Please do not change the id for reports engine.-->
<!--The class specifies below is subclass of _EngineClassImplBase and implements EngineInterface.-->
<engine id="rwEng" class="oracle.reports.engine.EngineImpl" maxEngine="1" minEngine="0" engLife="50" >
<!--property name="sourceDir" value="your reports source directory"/-->
<!--property name="tempDir" value="your reports temp directory"/-->
<!--property name="keepConnection" value="yes"/-->
</engine>
<engine id="rwURLEng" class="oracle.reports.urlengine.URLEngineImpl" maxEngine="1" minEngine="0" engLife="50" />
<!--security id="rwJaznSec" class="oracle.reports.server.RWJAZNSecurity"/-->
<!--destination destype="oraclePortal" class="oracle.reports.server.DesOraclePortal">
<property name="portalUserid" value="%PORTAL_DB_USERNAME%/%PORTAL_DB_PASSWORD%@%PORTAL_DB_TNSNAME%" encrypted="no"/>
</destination-->
<!--security id="rwSec" class="oracle.reports.server.RWSecurity">
</security-->
<destination destype="ftp" class="oracle.reports.plugin.destination.ftp.DesFTP"/>
<destination destype="WebDav" class="oracle.reports.plugin.destination.webdav.DesWebDAV"/>
<job jobType="report" engineId="rwEng" />
<job jobType="rwurl" engineId="rwURLEng"/>
<notification id="mailNotify" class="oracle.reports.server.MailNotify">
<property name="succnotefile" value="succnote.txt"/>
<property name="failnotefile" value="failnote.txt"/>
</notification>
<!--notification id="wfNotify" class="oracle.reports.server.WorkflowNotify">
<property name="connStr" value="%WF_DB_USERNAME%/%WF_DB_PASSWORD%@%WF_DB_TNSNAME%" encrypted="no"/>
</notification-->
<!--jobStatusRepository class="oracle.reports.server.JobRepositoryDB">
<property name="repositoryConn" value="repo_db_username/repo_db_password@repo_db_tnsname" encrypted="no"/>
</jobStatusRepository-->
<connection maxConnect="50" idleTimeOut="15">
</connection>
<queue maxQueueSize="1000"/>
<!--jobRecovery auxDatFiles="yes"/-->
<proxyInfo>
<proxyServers>
<proxyServer name="$$Self.proxyHost$$" port="$$Self.proxyPort$$" protocol="all"/>
</proxyServers>
<bypassProxy>
<domain>$$Self.proxyByPass$$</domain>
</bypassProxy>
</proxyInfo>
<pluginParam name="mailServer" value="%MAILSERVER_NAME%">
<!--property name="enableSSL" value="yes"/-->
</pluginParam>
<webLayout port="$$Self.OHSPort$$" />
</server>
rwservlet.properties
<rwservlet xmlns="http://xmlns.oracle.com/reports/rwservlet" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--server>$$Self.inProcessServerName$$</server-->
<server>rep_wls_reports_win-r32kk2btfn1</server>
<singlesignon>yes</singlesignon>
<inprocess>yes</inprocess>
<!--reports_servermap></reports_servermap-->
<!--cookie cookieexpire="30"
encryptionkey="reports9i" /-->
<!--defaultcharset></defaultcharset-->
<webcommandaccess>L2</webcommandaccess>
<!--allowhtmltags>yes</allowhtmltags-->
<!--helpurl>yes</helpurl-->
<!--dbauth>rwdbauth.htm</dbauth-->
<!--sysauth>rwsysauth.htm</sysauth-->
<!--errortemplate>rwerror.htm</errortemplate-->
<!--diagtags diagbodytags="reports_servlet_help_file_title" diagheadtags="reports_servlet_help_file_body_tag"/-->
<!--cluster clustername="ascluster" clusternodes="rep_strep12_two"/-->
<!--oidconnection oidcon_appentity="$$Self.oidAppEntity$$" oidcon_url="$$Self.oidUrl$$" oidcon_passwdkey="$$Self.oidPasswdKey$$"/-->
<!--allowauthid>yes</allowauthid-->
</rwservlet>
default.env
# default.env - default Forms environment file, Windows version
# This file is used to set the Forms runtime environment parameters.
# If a parameter is not defined here, the value used will be that defined
# in the environment in which the WLS Managed Server was started.
# NOTES
Configuration assistant will replace all the macro's with
the actual values.
ORACLE_HOME=%ORACLE_HOME%
FORMS_INSTANCE=%FORMS_INSTANCE%
TNS Entry to locate the database
TNS_ADMIN=%DOMAIN_HOME%\config\fmwconfig
Search path for Forms applications (.fmx files, PL/SQL libraries)
FORMS_PATH=%ORACLE_HOME%\forms;%FORMS_INSTANCE%;n:\;p:\
Disable/modify this variable if users need to be able to run Forms
applications residing in a different location.
FORMS_MODULE_PATH=%FORMS_PATH%
Webutil config file path
WEBUTIL_CONFIG=%FORMS_INSTANCE%\server\webutil.cfg
Disable/remove this variable if end-users need access to the query-where
functionality which potentially allows them to enter arbitrary SQL
statements when in enter-query mode.
FORMS_RESTRICT_ENTER_QUERY=TRUE
Java class path
This is required for the Forms debugger
You can append your own Java code here)
frmsrv.jar, frmconfig.jar and ldapjclnt11.jar are required for
the password expiry feature to work(#2213140).
CLASSPATH=%ORACLE_HOME%\jlib\frmbipc.jar;%ORACLE_HOME%\forms\j2ee\frmsrv.jar;%ORACLE_HOME%\forms\provision\frmconfig.jar;%ORACLE_HOME%\jlib\ldapjclnt11.jar;%ORACLE_HOME%\jlib\debugger.jar;%ORACLE_HOME%\oracle_common\jlib\ewt3.jar;%ORACLE_HOME%\oracle_common\modules\oracle.bali.share\share.jar;%ORACLE_HOME%\jlib\utj.jar;%ORACLE_HOME%\jlib\zrclient.jar;%ORACLE_HOME%\reports\jlib\rwrun.jar;%ORACLE_HOME%\forms\java\frmwebutil.jar
The PATH setting is required in order to pick up the JVM (jvm.dll and
java.exe).
Since PATH is being set, it needs to also include
%ORACLE_HOME%\bin so relevant files are correctly found.
PATH=%ORACLE_HOME%\bin;%JAVA_HOME%\jre\bin\client;%JAVA_HOME%\bin
Settings for Forms tracing and logging
-----------------------------------------------
Note: By default tracing and logging directory is
FORMS_INSTANCE\trace
To change the trace directory this entry has to be uncommented and set to
desired directory for tracing and logging
#FORMS_TRACE_DIR=%FORMS_INSTANCE%\trace
Settings for Javascript events
-----------------------------------------------
Note: If this variable is set to false then the triggers and
built-ins associated with javascript events are disabled
#FORMS_ALLOW_JAVASCRIPT_EVENTS=
System settings
---------------
You should not normally need to modify these settings
FORMS=%ORACLE_HOME%\forms
Setting for Reports Integration
-----------------------------------------------
Note: To invoke Oracle Reports, reports tools config path shall be
specified. To specify reports tools config path COMPONENT_CONFIG_PATH need
to be set as (where <reports_tools_component_name> is replaced with
targeted reports tools component name):
#COMPONENT_CONFIG_PATH=%DOMAIN_HOME%\config\fmwconfig\components\ReportsToolsComponent\reptools1
Program Unit to call my report (it is customized and well tested in oracle forms 11g)
PROCEDURE REPORT_PARAMETER_M
ULTIPLE(REPORT_NAME IN VARCHAR2,REPORT_TBL IN REPORT_TBL) IS
p_id PARAMLIST;
repid REPORT_OBJECT;
v_rep VARCHAR(200);
rep_status VARCHAR2(20);
rep_job_id NUMBER(20);
BEGIN
p_id:=GET_PARAMETER_LIST('tempdata');
IF NOT ID_NULL(p_id) THEN
DESTROY_PARAMETER_LIST(p_id);
END IF;
p_id:=CREATE_PARAMETER_LIST('tempdata');
FOR R IN (SELECT COL_NAME,COL_VAL FROM TABLE(REPORT_TBL))
LOOP
ADD_PARAMETER(p_id,R.COL_NAME,TEXT_PARAMETER,R.COL_VAL);
END LOOP;
ADD_PARAMETER(p_id,'PARAMFORM',TEXT_PARAMETER,'NO');
repid := find_report_object('MYREPORT');
--------Set following properties as a DB Report properties in object navigator -------
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,CACHE);
SET_REPORT_OBJECT_PROPERTY(REPID,REPORT_DESFORMAT,:GLOBAL.REPORT_TYPE);
SET_REPORT_OBJECT_PROPERTY(REPID,REPORT_SERVER,:GLOBAL.SERVER_NAME);
SET_REPORT_OBJECT_PROPERTY(REPID,REPORT_FILENAME,REPORT_NAME);
show_errormessage(:GLOBAL.SERVER_NAME||' -> 2');
v_rep := RUN_REPORT_OBJECT(repid,p_id);
if v_rep=null then
message('Report not found.');
end if;
rep_status:=REPORT_OBJECT_STATUS(v_rep);
show_errormessage(rep_status||' -> 1');
show_errormessage(:GLOBAL.SERVER_URL||rep_job_id||'?server='||:GLOBAL.SERVER_NAME);
rep_job_id:=substr(v_rep,instr(v_rep,'_',-1)+1);
IF rep_status = 'FINISHED' THEN
WEB.SHOW_DOCUMENT(:GLOBAL.SERVER_URL||rep_job_id||'?server='||:GLOBAL.SERVER_NAME,:GLOBAL.TARGET);
ELSE
message('Report Error'||rep_status);
END IF;
END;
x5.png (3.44 KB)x4.png (73.66 KB)x3.png (45.53 KB)x2.png (10.61 KB)x1.png (44.42 KB)