Application Express :: Collection In 4.1 Using Bind Variables?
Oct 4, 2012
I am trying to create a collection using bind variables in APEX 4.1. I have the following procedure but all I get is an error in the debug page DOH ORA-20104:
create_collection_from_query_b Error:ORA-01006: bind variable does not exist
My code is
DECLARE
l_names wwv_flow_global.vc_arr2;
l_values wwv_flow_global.vc_arr2;
l_names(1) := 'EXPENSE_FROM';
l_names(2) := 'EXPENSE_TO';
[code]....
View 1 Replies
ADVERTISEMENT
Apr 27, 2012
Which of the below is considered a bind variable. In example one proc. Test the parameter p1 is directly used in the query, so this can be considered as a bind variable.
Is that true about the second proc. where p1 is assigned to a local variable v1 , or this needs hard parsing because v1 is not a bind variable ?
Create or replace procedure test(p1 IN VARCHAR2,p_refcursor OUT SYS_REFCURSOR) IS
BEGIN
OPEN p_refcursor FOR select * from Test_tab WHERE item=p1;
END;
------------
Create or replace procedure test1(p1 IN VARCHAR2,p_refcursor OUT SYS_REFCURSOR) IS
v1 varchar2(100):=p1;
BEGIN
OPEN p_refcursor FOR select * from Test_tab WHERE item=v1;
END;
View 8 Replies
View Related
Dec 22, 2011
i have some confusion with bind and host variable.
View 4 Replies
View Related
Sep 2, 2011
I have written a small code while going through the PL/SQL guide but I got a message for the BIND VARIABLE. I don't think I have used any bind variable in this code.
<<outer>>
declare
v_sal1 number(7,2) := 60000;
v_comm number(7,2) : v_sal1 * 0.20;
v_message varchar2(2000) := 'eligible for commission';
begin
[code]........
View 8 Replies
View Related
Nov 20, 2012
Create and invoke the GET_JOB function to return a job title.
a.Create and compile a function called GET_JOB to return a job title.
b.Create a VARCHAR2 host variable called b_title, allowing a length of 35 characters. Invoke the function with job ID SA_REP to return the value in the host variable, and then print the host variable to view the result.
This is my FUNCTION:
CREATE OR REPLACE
FUNCTION GET_JOB(
p_jobid IN jobs.job_id%TYPE)
RETURN VARCHAR2
[code]...
This is how I invoked the FUNCTION but WHILE DECLARING THE BIND VARIABLE IT IS GIVING ME AN ERROR!!!!!
VARIABLE b_title VARCHAR2(35)
set serveroutput on
DECLARE
P_JOBID VARCHAR2(10);
v_jobtitle VARCHAR2(200);
[code]...
View 5 Replies
View Related
Feb 26, 2013
Is it possible to bind collection while opening a ref cursor. Find below the code that I am trying. My goal is to open cursor once using collection variable. Can it be done using DBMS_SQL ?
DECLARE
TYPE typ_emp_rec_in IS RECORD
(
deptno NUMBER,
sal NUMBER
[code]......
View 4 Replies
View Related
Jun 6, 2012
I have a requirement where I have to return data as per filter clauses provided on the front end, which may or may not be filled as per the users' choice.
To create a test case, I have created a query joining the emp and dept tables and I add the where clauses dynamically depending on whether the filter has been provided or not.
CREATE OR REPLACE TYPE emp_ot AS OBJECT (
empno NUMBER(4),
ename VARCHAR2(10),
[Code]....
It works very well, the 'literals' are being converted into bind variables (due to CURSOR_SHARING being set to SIMILAR) and the optimizer is able to figure out the correct execution path every time, although it is true that potentially 5 versions of this query will be sitting in the shared pool, but the DBAs are happy to live with that.
Going forward in version 12, CURSOR_SHARING=SIMILAR will be deprecated and the DBAs are not happy for us to write this sort of code anymore.
Is there a suitable way to achieve what this piece of code does?
I have tried and tested this method:
SELECT emp.empno, emp.ename, emp.job, dept.deptno, dept.dname
FROM emp, dept
WHERE emp.deptno = dept.deptno
AND emp.empno = NVL(p_empno, emp.empno)
AND emp.ename LIKE NVL(p_ename, emp.ename)||'%'
...
but the query takes far longer to execute in this manner (that is using my real tables).
View 5 Replies
View Related
Mar 10, 2010
How many maximum number of bind variables,can we use in Execute Immediate.
View 2 Replies
View Related
Sep 8, 2011
CODE
Select
Nvl(Sum(DbAmt),0), Nvl(Sum(CrAmt),0)
From FnTrantt A
Where A.GrpCode=:1 And
A.CmpCode=:2 And';
A.DiviCode=:3 And';
A.SubDiVCd=:4 And';
A.FinYear>=''0001'' And';
A.VchDate Between :5 And :6' And
A.GlCode In :7;
[code]....
In The Above mentioned Code, am using bind variables, In variable no. 7 in passing character string ('05124','05125')I am not able to fetch the value,
View 3 Replies
View Related
Aug 29, 2013
i have been looking at a query that uses a wrong plan. db=11.2.0.3 with user bind peeking enabled. this is a simplified version demonstrating the problem:
select egp.bsn,egp.klantnummer as "Persoonsnummer", egp.samengesteldenaam as "Samengesteldenaam", egp.geboortedatum as "Geboortedatum"from pr_eigenschappen2 egpwhere(egp.bsn = :b1 or :b2 is null)and rownum < 51 egp.bsn is varchar2(10) and has high selectivity (almost unique), and is btree-indexed. table and index have adequate statistics. when run with b1:=928818 and b2:=928818 (both bound as varchar2(10)) a full table scan+filter is used on pr_eigenschappen2. if the query is changed to select egp.bsn,egp.klantnummer as "Persoons nummer", egp.samengesteldenaam as "Samengesteldenaam", egp.geboortedatum as "Geboortedatum"from pr_eigenschappen2 egpwhere(egp.bsn = :b1 or 928818 is null)
and rownum < 51the index on bsn is used, and the query is not taking 3.9 seconds but 1 millisecond.if i would have a choice, the query would be different. i don't want to talk about the raison d'etre of the query, i would like to know why the optimizer is not using the index in the first case.
View 23 Replies
View Related
Jun 12, 2012
create or replace procedure my_proc(p_user in varchar2) is
l_cursor sys_refcursor;
l_query constant varchar2(1000) :=
'select a'
|| 'from ' || p_user || '.user_table'
|| 'where param0 = :x'
|| 'and param1 = :x'
|| 'and param2 = :x'
[Code]...
Suppose I execute my_proc many times and for multiple values of p_user. For performance reasons, will l_query be stored in the cache as I am using bind variables or it will not since I have the concatenation with p_user value ?
View 6 Replies
View Related
Apr 21, 2009
can i have some real time code piece for bind variables steps and obndrv(...)
View 1 Replies
View Related
Feb 22, 2010
I am trying to create table using bind variable in EXECUTE IMMEDIATE.. I want to know whether oracle allows to create table using bind variable in EXECUTE IMMEDIATE..
Following is the example :
Declare
test_tab varchar2(10) := 'tab_test';
sql_stm varchar2(100);
Begin
sql_stm := 'create table ' || :a || ' (col1 NUMBER)';
dbms_output.put_line(sql_stm);
EXECUTE IMMEDIATE sql_stm
using test_tab;
Exception
WHEN OTHERS THEN
dbms_output.put_line(sqlerrm || ' ' || sqlcode);
End;
After running above block it is giving error : ORA-01008: not all variables bound.
View 10 Replies
View Related
Jul 1, 2013
We have recently upgraded application (from Oracle Applications 11.5.9 to 12.1.3) and database (from 9.2.0.5.0 to 11.2.0.3.0).Since we are confronting to performances issues, i try to analyse some queries which Explains plans seems strange (in my opinion).Studying one of them i discover the next case (which according to my logic, i can't explain): --
Just bind variable --select *from MTL_MATERIAL_TRANSACTIONS mmtwhere 1 = 1and mmt.INVENTORY_ITEM_ID = :p1and mmt.ORGANIZATION_ID = :p2and mmt.TRANSACTION_REFERENCE = :p3--and mmt.SUBINVENTORY_CODE = :p4 PlanSELECT STATEMENT ALL_ROWS Cost: 5 Bytes: 361 Cardinality: 1 2 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_MATERIAL_TRANSACTIONS Cost: 5 Bytes: 361 Cardinality: 1 1 INDEX RANGE SCAN INDEX XXSPE.XXSPE_MTL_MATERIAL_TRANSAC_N99 Cost: 3 Cardinality: 2-- Nvl on bind variable --select *from MTL_MATERIAL_TRANSACTIONS mmtwhere 1 = 1and mmt.INVENTORY_ITEM_ID = :p1and
[code]...
View 3 Replies
View Related
May 16, 2010
Am using Oracle 9i and developing stored procedures in SQL Developer. Have a situation where one stored procedure A is calling another B. Stored proc B builds the SQL based on parameters passed in. For one of the parameters i would like to use a bind variable in the SQL that proc B builds. The bind var is passed back to proc A as a part of the SQL string. In proc A, i then try to bind that variable to a parameter(value), however, the bind does not seeem to work.
The SQL string contained in v_SQLStatement defined as VARCHAR(4000) that is passed back to proc A looks like:
SELECT em.event_title AS event_name,
e.start_date AS start_date,
e.end_date AS end_date
FROM d_event_ml em
inner join d_event e
ON em.event_id = e.event_id
WHERE em.language_id = 46
AND e.end_date >= SYSDATE
AND e.stream_id IN ( :v_x1 )
AND e.event_id IN (SELECT event_id
FROM d_events_seas
[code]....
and o_EventList is defined as REF CURSOR. i'm experiencing is that :v_x1 stays as :v_x1 and does not change.This is my first attempt at using bind vars. URL....
View 7 Replies
View Related
Jul 5, 2013
I have an application which includes a certain page with a tabular form.After I copied this to a second schema, Apex threw an error
'Unable to bind ':126_ENG_PROJ_ID'
It took me quite a while before I found out that one of my fields in that tabular form has a Popup Key LOV.The SQL for the LOV was:
select dv, rv from (select loop_short dv, cmpnt_id rv from SPI_MAIN_TAG where eng_proj_id in (:P126_ENG_PROJ_ID, -:P126_ENG_PROJ_ID) ) order by dv
Turned out that the view SPI_MAIN_TAG didn't exist in the second schema.Apex error message would have been more clear, like a simple 'Table or view does not exist' error, where possible even with the table name.I had Debug turned on, but in the debug window there was no reference to above SQL,
View 0 Replies
View Related
Oct 29, 2013
I am trying to update a collection and a table.I got some example code and installed on oracle.com, but I just can't seem to get it to work.I always get an errorORA-20001: Current version of data in database has changed since user initiated update process.I think the problem lies with comparing the checksums, but I cannot spot the mistake
View 2 Replies
View Related
Aug 1, 2012
Note, I'm using APEX 4.1.1
The scenario is that I have tabular form that was manually created from a collection; the collection name is "COMPANY"
Within this tabular form, I have number of selection lists (apex_item.select_list) and for each, I fire off a JavaScript based on the "onchange" event (e.g.,'onchange="updateCollection(' || seq_id || ', 10, this.value)"'); updateCollection is a custom function I created. Right now, all it does is alert me with the specifics of the of the selection list. As a further example, if I select "Google" from the selection list, sequence id would be "1", attribute number would be "10" and attribute value would be "Google"
Within this JavaScript, I would like to update the value of this associated element in the "COMPANY" collection. Ideally, I would like to directly call this:
APEX_COLLECTION.UPDATE_MEMBER_ATTRIBUTE(p_collection_name => "COMPANY", p_seq => 1, p_attr_number => 10, p_attr_value => 'Google') but I could not figure out how to do this.
View 11 Replies
View Related
Oct 25, 2012
in our application, we're uploading .xls files with several (and heavy) sheets.
In order to get better performance, is there any way to load just one of them?
View 0 Replies
View Related
Aug 23, 2011
I executed the following PL/SQL block in SqlDeveloper :
VARIABLE max_dept_no NUMBER
DECLARE
v_dept_name VARCHAR2(30) := '&p_dept_name';
v_max NUMBER(4,0);
BEGIN
SELECT MAX(department_id) INTO v_max FROM departments;
:max_dept_no := v_max + 20;
INSERT INTO departments VALUES (:max_dept_no,v_dept_name, NULL,NULL) ;
END;
/
And it gave the error : Quote:Error report:
ORA-01400: cannot insert NULL into ("HR"."DEPARTMENTS"."DEPARTMENT_ID")
ORA-06512: at line 7
01400. 00000 - "cannot insert NULL into (%s)"
The same code when executed in iSqlPlus gave no error.
View 13 Replies
View Related
Sep 9, 2013
I have made Horizontal Wizard Progress List over 3 pages.I also made those 3 pages with some simple text fields, checkboxes and so on.On the last page I did the INSERT Process (session variables P100_Date ect).It worked fine! But now I tried a different approach
On each of the 3 pages I made a "Form on a Table or View" and on each pageI hide some of the form. (the advantage of this situation is, that apex gives you a visaul hint about the null fields and so on).But on the last page I cant do the INSERT with the session variables.(I can do the INSERT without session variable, with static values)...
View 5 Replies
View Related
Jun 10, 2013
The values in the page item dont get submitted hence generate errors in my application , in apex 4.2 using collectionEg.
apex_collection.add_member(p_collection_name => 'ORDER', p_c001 => :P56_product_id, p_c002 => :P56_product_name, p_c003 => :P56_list_price, p_c004 => 1);
Can there be a reason why ?
View 4 Replies
View Related
Dec 31, 2012
My collection is not working as expected, what could be the issue here. This is what i did,
1. I created a collection in a process to fire on page load
if apex_collection.collection_exists(p_collection_name=>'MMMM') then
apex_collection.delete_collection(p_collection_name=>'MMMM');
end if;
APEX_COLLECTION.CREATE_OR_TRUNCATE_COLLECTION(p_collection_name => 'MMMM');
2. On my page i have a text field P1_text1 when i enter value into text field like ="sample data" i want this data loaded into my collection, so i created a button and added a process(on submit - before computations...) so it should insert into the collection when i click the button but no data is loaded, process:
APEX_COLLECTION.ADD_MEMBER(
p_collection_name => 'MMMM',
p_c001 => :P1_TEXT1,
p_c002 => 'TESTDATA' );
3. when i run the below query it shows "no data found" ,
SELECT c001,c002
FROM APEX_COLLECTIONS
WHERE collection_name = 'MMMM';
View 4 Replies
View Related
Jul 28, 2012
I created one collection report and in the report when i click on the next >> then the report will show the next columns to enter data in some columns but the data which i entered before going to next will not get retain (data is getting lost) when i come back by clicking << previous but i want the data to get retained even when i click on next >> or previous << in report so that i can enter large amount of data at a time in the report columns by clicking >> & << and click on submit button to save all the data.
View 3 Replies
View Related
Nov 20, 2012
I have this procedure
POSTCODE_TO_LAT_LNG_GM_API(postcode IN VARCHAR2, lat OUT NUMBER, p_long OUT NUMBER)
to convert a postcode into lat/long values. I then need to add them to the returned SQL statement so I used the string concat operator || with to_char but it comes up with this error when I try to apply the changes: Query cannot be parsed within the Builder. If you believe your query is syntactically correct, check the ''generic column'' checkbox below the region source to proceed without parsing.
ORA-00936: missing expressionh4.
h4. btw I'm using Oracle 11g release 11.2.0.3.0 and Apex version 4.1.1.00.23
DECLARE
l_lat NUMBER;
l_lng NUMBER;
l_SDO_GEOMETRY SDO_GEOMETRY;
[code]...
View 9 Replies
View Related
Feb 23, 2012
We are running a brower based client application in a J2EE container on weblogic, connecting to the database using proxy authentication from a connection pool.
We want to set the logging level in the front end, which should set a PL/SQL package/session variable to the respective value.
Any subsequent calls to the DB layer (stored procs) would then log appropriate messages depending on what the logging level has been set to.
The trouble is that the calls to be database are not persistent and in different sessions, and therefore the second call (i.e. the call to the stored proc) would not 'know' what the first call (to set the package variable) has done.
Alternatively we can change all the stored procedures to accept an input parameter denoting the logging level, but I am sure there are other better options.
View 7 Replies
View Related
Sep 20, 2012
There is a nested table with in a nested table type and i want to print the value and again assign a new value to the next subscript and i have tried a lot but couldn't find any solution.
declare
type type_name is table of varchar2(10);
type type_name1 is table of type_name;
names type_name1:=type_name1(type_name('hello'));
begin
-----HOW TO PRINT A VALUE--------
-----HOW TO ASSIGN A NEW VALUE TO NEW SUBSCRIPT
null;
end;
1) need to print the values of names(1)
2)Assign a value to names(2)
View 3 Replies
View Related
Mar 22, 2013
I am describing a SQL statement to get it's column list:DECLARE
cur NUMBER;
col_cnt INTEGER;
rec_tab DBMS_SQL.DESC_TAB;
[Code]....
Now I need to get out the columns list from rec_tab.col_name and put it to my_colls collection. Have Oracle any build-in to do that?
View 4 Replies
View Related
Mar 4, 2013
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.
View 1 Replies
View Related
Jan 24, 2013
I have multiple application set-up using session sharing within the workspace.Technically all works fine, however it does not play nice with user behaviour.
Example:
Users logs into APP_ID:100. Since he isn't authenticated yet, he provides user/pass and the APP_SESSION is authenticated.
Now if the user switches using to another application (using a link provided in application 100) he gets redirect to APP_ID:101:APP_SESSION all is fine.
The session is already authenticated, the application shares the session and the user gains access to app 101 without having to authenticate again. All's fine!
However users don't behave they way. Instead of using an easy link in the application. They will use their own bookmark or type in the url for app 101 manually. That way the next application is either called with f?p=101:1:[SOME OLD SESSIONID FROM BOOMARK] or f?p=101 (with no further page or session info) In both cases instead of using the already authenticated session apex spawns a new session, which of course isn't authenticated yet thus forcing the user to authenticate and come complaining they have to login again.
Similar behaviour problems exists when the user opens a browser and tries to open both applications in each in a tab next to each other.Both tabs fetch there own initial session id and start writing it to the same cookie each in turn invalidating the other tab's session.These can lead to some fanatic ping pong actions. Thus it's impossible to open 2 applications sharing session in the same browser.
Is there any remedy for these situations?Can apex be as smart as for instance first trying to resume the session stored in the cookie and only if that session is invalid, start a new session?
View 2 Replies
View Related