Application Express :: How To Execute Stored Procedure From APEX Page
Oct 17, 2012
I just started to play with this system and don't understand how to execute the the stored procedure (that creates report) from the APEX page. I know that they have sample documentation and java script call (show below):
<script language=”JavaScript” type=”text/javascript”>
function callMyRep() { var formVal1 = document.getElementById(’P_PAR1′).value;
var url;
url = ‘rep1?p_session_id=&SESSION.’+'&p_par1=’+ formVal1; window.location.href=”f?p=&APP_ID.:12:&SESSION.”;
w = open(url,”winRep”,”Scrollbars=1,resizable=1,width=800,height=600″); Close here. X
[code]....
In this example rep1 is the stored procedure that creates report.How can I execute it using url?
I would like to run this procedure using a URL ... I have apex installed. What URL would I use. This procedure is compiled in the database. I have been trying to look thru the APEX installation guide for an example but I must be missing it somewhere.
CREATE OR REPLACE PROCEDURE ORASYSAD.HELLOWORLD is htp.print ('<hl>Hello World</hl>'); end;
How do I center a button within a region? I tried 'align="center"' but this seemed to be ignored. The button is at the left of the screen. Also, what are the 'display points' (Page Template Region Position 1-8) used for, and why is there a specification for column position of 1-9? Could these be attributes that will allow my button to be centered on the window instead of on the left?
I have a page with two regions the top region is an html region where users enter query criteria and generate an interactive report in the second region. The second region only displays if there are results from the query in the first region.
I would like to display a "No Results Found" message rather than a blank screen if there are no results found. However, I don't know exactly how to do that. I tried to do it in the Interactive Report region, however, once I added the Conditional display to only when exists rows in the Interactive Report from the query criteria.
I have an apex page with a link on one column for each row. My requirement is as below
When i click on the first time on any of that link, it opens up in a new window and any subsequent clicks should override the previously opened window. So at a time, there should be only 2 windows open..
1) the APEX page 2) The browser window after clicking on an link in apex page
I'm editing, say, list of my employees in a tabular form opened in Skillbuilders Modal Page. I have to execute same javascript code after the changes in the tabular form have been submitted.
I've tried using a Dynamic Action fired on Page Load, but that gets executed before the update is completed.
I have some Javascript in an Apex page, running in 'Execute when page loads'. It does some stuff to a results grid. It works fine on page load, but then doesn't run when I page through, or sort the grid. I presume this is because the grid is being sorted / paged using Ajax, which means the page isn't being fully loaded. Is there anywhere else I can put the code so it gets applied to the grid on sorts and paging?
I have a Page containing 3 reports and I was wondering if it is possible to re-execute only one of the these reports using a button or preferably a Select List which allows me to choose which of the 3 reports I wish to 'refresh/re-execute'. I may be totally wrong here but I assumed that choosing the option to submit a Page will cause all regions to refresh i.e. re-execute the SQL queries they are 'based on'.
Requirement is to build procedure where it has 10-12 input variables but some of them (input variables) may at times be NULL.Based on this, i thought of getting into EXECUTE IMMEDIATE but this would just return rows i mean DML stmt for EXECUTE IMMEDIATE.Also, on the requirment is all parameters are present then result set be based on range on start and end date.
CREATE OR REPLACE PROCEDURE SCOTT.GetEmpList(p_recordset OUT SYS_REFCURSOR) AS BEGIN OPEN p_recordset FOR SELECT * FROM scott.emp WHERE deptno=10; END GetEmpList;
Now i would like to execute this procedure in sqlplus which will display the following:
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 7782 CLARK MANAGER 7839 6/9/1981 2450 10 7839 KING PRESIDENT 11/17/1981 5000 10 7934 MILLER CLERK 7782 1/23/1982 1300 10
I would like to create a trigger that will execute a stored procedure when a package/function/procedure is compiled. I tried creating an update trigger on user_objects, but it statues aI cannot create that trigger tyoe on views.
We are calling a stored procedure in jsp page. The sql where bottleneck was assumed is giving better performance in sql plus (0.093 seconds) but when called from jsp its taking too much time.
Here is the plan for the sql
PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | -------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 219 | | 1 | SORT GROUP BY | | 1 | 219 | | 2 | NESTED LOOPS | | 1 | 219 | | 3 | NESTED LOOPS | | 1 | 197 | | 4 | NESTED LOOPS | | 1 | 162 | | 5 | MERGE JOIN | | 1 | 127 | | 6 | TABLE ACCESS BY INDEX ROWID | policy_tbl | 1 | 78 | | 7 | INDEX FULL SCAN | pk_pol_id | 1 | | | 8 | SORT JOIN | | 1585 | 77665 | | 9 | TABLE ACCESS BY INDEX ROWID| policy_p_tbl | 1585 | 77665 | | 10 | INDEX RANGE SCAN | pp_param_1 | 1679 | | | 11 | TABLE ACCESS BY INDEX ROWID | policy_group_tbl | 1 | 35 | | 12 | INDEX RANGE SCAN | pg_indx_2 | 1 | | | 13 | TABLE ACCESS BY INDEX ROWID | policy_group_tbl | 1 | 35 | | 14 | INDEX RANGE SCAN | pg_indx_2 | 1 | | | 15 | TABLE ACCESS BY INDEX ROWID | policy_dtl_tbl | 1 | 22 |
We are using Application Express 4.1.0.00.32 on Wondows XP and Oracle version is 10g. I've created a report in APEX and the user is insisting on putting a header on each page in PRINT of the report which should contain the "from date" and "to date", which are present on the select criteria on top.
Can I somehow add from_date and to_date items in Title so that when they print the report, they'll see the from and to dates in the title?Or is there someother way to do this. The report is an interactive report with a control break and user prints the report with file->print.
I am new to APEX and I am developing an application to manage Oracle database user accounts. I have a page (8) that has text items for the username and the database name. I have a submit button (this works fine) that will issue the ALTER USER... statement to reset the user's password and unlock the account. I have another button that should:
get the value of the username - P8_USERNAMEassign it to an application item - FIND_USER_IN_DBredirect to page in application - to page 11
The issue is that FIND_USER_IN_DB does not get populated and page 11
which is a simple report with the following query:
I have different public page (page1) and different page for authorized user(page5).Upon successful login after process validation ,computation it should navigate to authorized user page 5 but the branching does work it keeps on going to page 1 .
We have many many APEX applications in APEX 3.0 running on a 10.2.0.4 database that needs desperately to be upgraded. As a test, I've set up a clean 11gR2 database and copied the production APEX database into it via datapump. I set up APEX Listener, as I don't have any OAS sitting around and the EPG doesn't seem to be supported for APEX 3.0... the Listener doesn't say one way or the other.
When trying to log in, I get the login page, but it tries to reference files such as apex_get_3_1.js while I only have files such as htmldb_get.js in my images directory in production. I noticed it is looking for what appears to be 3.1 files instead of 3.0 files... which concerns me.
The APEX listener appears to be more than just a Java PL/SQL gateway.
Is there a minimum version of APEX the APEX Listener supports?
We have integrated Oracle Access Manager 11gR1 with Oracle Apex 4.1. The OAM-Apex integration is working fine. Now we want an additional header variable to be passed from OAM to the Apex application. This new header variable will be user's sAMAccountName in Active Directory. OAM is integrated with AD and the AD users are successfully able to access the Apex applications.
The three header variables which are configure in OAM right now are: Header variable name Value 1. OAM_REMOTE_USER $user.userid 2. OAM_REMOTE_USER_EMAIL $user.attr.mail 3. OAM_REMOTE_USER_GROUPS $user.groups
We need an additional header variable as mentioned below: Header variable name: OAM_SAMACCOUNTNAME Value: $user.attr.samaccountname
The new header variable was added in the OHS server's dads.conf file like shown below: =========== dads.conf ============= ... PlsqlCGIEnvironmentList HTTP_OAM_REMOTE_USER PlsqlCGIEnvironmentList HTTP_OAM_REMOTE_USER_GROUPS PlsqlCGIEnvironmentList HTTP_OAM_REMOTE_USER_EMAIL PlsqlCGIEnvironmentList HTTP_OAM_SAMACCOUNTNAME
But we are not able to read the value of this attribute in the Apex application.On the Apex application, we have a text box which shows the value of this header variable. This textbox is attached with the following stored procedure call to fetch the header variable: =================== begin :P1_HEADER_VALUE := owa_util.get_cgi_env( 'HTTP_OAM_SAMACCOUNTNAME' ); end;
The textbox shows the correct value if HTTP_OAM_REMOTE_USER is passed to the get_cgi_env method but does not shows anything when HTTP_OAM_SAMACCOUNTNAME is passed to the same method. if I am missing some configuration to pass the HTTP_OAM_SAMACCOUNTNAME haeder variable from OAM to Apex.
I have a translated application in Apex, my Apex version is 4.2.1.00.08. The application is in production version, many people are using it on daily basis. The application's primary language is English, and it has translations for 5 languages. Everything is working fine now; even if there are minor changes in the application, we are able to seed it, download the XLIFF files and than publish the modifications into all translations. Simple so far. My problem is that I wanted to 'clone' the application including its translations to a new one since I plan to rebuild some parts of it. I want to keep the current version untouched, not to bother users. The new application should be in the same workspace, with a new ID. I have tried a couple of approaches: Copy the primary application enabling the option 'copy translation' - this creates a new app, and also seems to create new translated applications, which are empty (not seeded, not published). Export the primary application and than import it with a manually defined new application ID. Than do the same with the translated applications and set the proper IDs in the translation mapping part of Shared components > Translation. When I try to run the primary application, it is working, but for translated versions... Only an error saying that the application page does not exist. The purpose is to clone the whole thing by keeping the connection between the primary and the translated applications, so that if I change something in the primary application, it can be seeded into the translated ones later. In the same time I want to keep translations as well, since there are thousands of strings...
Having an issue with logging into URL.... Just went through the install for APEX 4.2 for
Oracle 11.2.0.1 on Linux 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux.
Installed Apex with Embedded PL/SQL Gateway.Explicitly followed all the online instructions step-by-step, installation was success and config for EPG had no issues. Changed the ADMIN pw as instructed. Checked that EPG is running on port 8080. Ran this script to grant connect:
DECLARE ACL_PATH VARCHAR2(4000);BEGIN -- Look for the ACL currently assigned to '*' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;[code]....