A trigger is enqueuing to a queue. This works fine, but the callback function is never called. The queue already worked for a while, but since i changed something at the procedure called by the callback it does not work anymore.
I already have tried the following:
-Stopping and restarting
-Dropping and recreating (with the scheduler having no jobs anymore)
-Dropping, restarting the database and recreating
None of these worked. Where do I fail, when considering that the queue with the same scripts worked already? I post the script for creating the queue and adding the subscriber:
CREATE OR REPLACE TYPE pat_history_queue_payload_type AS OBJECT
( TSTAMP VARCHAR2(22 CHAR),
TYP VARCHAR2(10 CHAR),
DELTA_MENGE NUMBER,
[code]...
The function CALLBACK which is called by the queue, is never called, I checked that with log messages. Also the package that contains the function is compiled ok.
We are close to successfully getting our CAS authentication integrated with Apex Listener 2.0 and Apex 4.2.1. We are using Weblogic app server for the Listener configurations and have been able to get the remote_user passed to Apex after login to CAS. We just set the header variable in the new 'HTTP Header Variable' authentication scheme. However there is a glitch at the callback from CAS -- we get the error 'wong number of types of arguments in call' and the URL shows: ..... /apex/apex_authentication.callback.
I see the documentation about this CALLBACK procedure, but am not sure how to set it to go back to the application. I know that CAS is working and passing the userid to the application because I can manually type in the app URL .... /apex/f?p=xxx and I immediately get into the application and the correct userid is identified --whereas initially when I hit the same application it sends me to our Central CAS server for login.
where the parameters of this procedure need to be set and how to set them. I assume the procedure needs to be called by Weblogic?for the callback to find the original calling application so it doesn't have to be 'hard-coded'. I see that one of the parameters is 'p_app_id'. I think our Weblogic engineer was assuming the call to that procedure would 'take care' of the return to the original calling application but obviously we have missed some configuration.
I migrated an AQ solution which sends messages between three instances from a development environment to an UAT environment and my propogation from one instance to another is not working as per development.
When I enqueue a message I note that the enq_time is one hour behind the actual sysdate.
All the messages are been stored in the queue table and are propogated through only when the instance is restarted.
I have a scenario In which I have say 4 AQ in which I will post the message.Also i have say 2 database.I am planning to create an MDB which will poll on these AQ's, so whenever I post message the MDB will read it and perform a specific action.I believe I can create only one MDB per queue, if it is so then I have to create 8 MDB.
As there 2 datasource and 4 MDB. Is there any other way to handle this I mean without creating 8 MDB as the Data sources can increase to 10 to 20 so the number of MDB will be 20 to 40.I guess this will affect the application performance. Can I make some changes in application so that only few MDB's are required?
I am trying to read a message from Oracle queue using OCCI.I am getting this run time error:
ORA-24550: signal received: [si_signo=11] [si_errno=0] [si_code=2] [si_int=-389971137] [si_ptr=0x34e8c1833f] [si_addr=0x615db0] Killed.I have checked for the line that is throwing error and found below line causing it:
*messageFromQueue = cons.receive(Message::RAW);
It seems like RECEIVE function is throwing this error: Here is my code:
I have 3 instances and i want to work between then. The error occurs when i use subquery, This is the code:
update erie.rie_cbtrega@l$e_tfcries rgr set rgr.c_descri = ( select rg.c_descri from dadm.cbtrega@l$e_tfccie rg where rg.c_idrega = rgr.c_idrega ) ;
When i execute update without subquery "( select rg.c_descri from dadm.cbtrega@l$e_tfccie rg where rg.c_idrega = rgr.c_idrega)" the result is successfully, but when i add subquery the result is
ORA-02019: no se ha encontrado la descripción de la conexión para la base de datos remota ORA-02063: line precediendo a TFCCIE ORA-02063: 2 lines precediendo a L$E_TFCRIES
i have a query where i am using the max function to find the most recent record. What i want to do is use that query as part of an insert statement into a different table, however, i don't want to insert the column that i used the max function on. Is there anyway to use the max function without having the column it is being used on showing in the results?
I am creating an stored function which has to do some inserts in the meanwhile, and return after all the work has done, an UDT (2 or 3 columns of NUMBER datatype).
With this scenario I have an problem. The DML operations are not supported by and "SELECT * FROM Table(MyProc(args))". I have to use this "SELECT * FROM Table(MyProc(args))" because I need to pass the stored function results directly to an dataset.
Using a Stored Procedure it gives no errors, but the arguments must be passed like OUT params, and it is not what I want.
My question is: Is there any other way to get a result (UDT) of an Stored Function (that makes Inserts) into a DataSet?
I've been tasked to parse tags from a string that look like the following:
{Date + XXX}
where XXX represents a numeric value. I have to replace this, including the brace characters with
SYSDATE + XXX
which will ultimately calculate SYSDATE plus the number of days suggested by XXX. The problem is that I am trying to use regexp_replace to achieve this goal but since XXX is completely arbitrary, I cannot search for it as a fixed value. So, ultimately, I would like to use a regular expression that ignores the numeric part of my search and only replaces the starting brace, the "Date + " part and the ending brace, leaving the numeric portion intact. I was trying to do something like the following
I'm posting below test case in which I'm not able to understand output for LAST_VALUE function. I'm expecting maximum value for the salary in a department. Because I'm partitioning by department and ordering a partition as assending so being last value it should give me maximum value within a partition i.e. department in this case.
There is an 'emp' table with a column name as 'mgr' with datatype 'number'. following is the detailed description of the table:
SQL> desc emp;
Name Null? Type ----------------------------------------- -------- --------------------------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2)
Now when I run the 'select mgr from emp e;' query the output which I get is:
7902 7698 7698 7839 7698 7839 7839 7566
7698 7788 7698 7566 7782
Note: One value in between here is null, the required to me is that I want to print a character value 'President' in place of null .
I have two tables where I have to find the record for Max value of the column sap_pkid for every sap_id as in given table create script. This script is giving correct value but looking for a better way so that when data increses it doesn't hit the performance.
way where max can be avoided or a more tuned query .
I am creating a function to sum five numbers (less 1). Is it possible to have an array of numbers in an SQL function, and how would this be implemented?
Here is the screenshot of my output (I cannot embed links until 5 posts!): flic.kr/p/eaSHBP
CREATE OR REPLACE FUNCTION sumfivenumbers ( n1 NUMBER, n2 NUMBER, n3 NUMBER, n4 NUMBER, n5 NUMBER) RETURN NUMBER IS Sumnums NUMBER; BEGIN SELECT SUM(n1+n2+n3+n4+n5-1) INTO Sumnums FROM DUAL; DBMS_OUTPUT.PUT_LINE(Sumnums); RETURN 1; END sumfivenumbers; / SELECT sumfivenumbers(5,5,5,5,5) AS "Five Numbers less 1" FROM DUAL;
I am trying to create a function that when called will add the salary and commission a certain way to return an employee's annual salary.Here's my code
create or replace function Get_Annual_Comp (Sal in number, Commission in number) return number as [code]...
When I run the query, I get the proper rows return; however, my function does no calculation. If I input random numbers, I get the proper value returned. What I want is for my function to return the salary and commission of the employee specified in my select's where clause to be calculated as an annual salary.
Any way to write a function to parse through a clob and extract certain values to insert into a table. I've written the following and it compiles but it doesn't work.
create or replace function all_fields (type_field VARchar2, domain_field VARchar2) return VARchar2 as typefield VARchar2(100) :=type_field; domainfield VARchar2(100) :=domain_field;
I am using lag function to display values like below:
order details date starttime ----------------- -------- -------------- main order 1 07/10/12 06:00am line 1 07/10/12 06:21am line 2 07/10/12 06:31am main order 2 07/11/12 07:00am line 1 07/11/12 07:01am line 2 07/11/12 07:02am
the data displays correctly when i use lag function except that the line 1 details are never getting displayed ie first line under every order does not get displayed? is using lag function in this case correct?
explain the flow what exactly is the below function do in detail.
FUNCTION Get_RmtUsr_rec_FUNC (p_MsgType IN VARCHAR2) RETURN RemoteUser_Rec_Type;FUNCTION Get_RmtUsr_rec_FUNC ( p_MsgType IN VARCHAR2) RETURN RemoteUser_Rec_Type IS