Execution of a procedure
I have a procedure named format_it (10.33).How should I call it environments such as sql * more sql or plu or command prompt.
When and where to use CALL format_it (10.33) and when and where to use execute format_it (10.33)
PL/SQL code should be called (called) with the help of an anonymous PL/SQL block. For example, it is an anonymous block in a procedure called DoSomething (without parameters).
begin
DoSomething;
end;
This block must be created by the customer and passed to Oracle as the client will pass a SQL for Oracle.
As a SQL statement, an anonymous block can also contain variables bind. The client will then bind values to these variables before execution of the PL/SQL code. E.g. call procedure FunkFoo which expects 2 parameters:
begin
FunkyFoo( param1 => :BindVar1, param2 => :BindVar2 );
end;
To simply test the proc, the customer can also pass literal values rather than (correctly) use bind variables:
begin
FunkyFoo( param1 => 123, param2 => 'Hello World!' );
end;
Some customers, such as SQL * Plus has its own control customer to define. In SQL * Plus, such a client command is EXEC - and this can be used to execute the PL/SQL code. Dynamically, this sales order automatically creates an anonymous PL/SQL block and encapsulates the content will be executed in a statement BEGIN and END; before you submit to Oracle.
Tags: Database
Similar Questions
-
I created a procedure running during the mapping fails but I am facing this error
ODI-1226: Error_log_procedure step fails after 1 attempt.
ODI-1232: the execution of the procedure error_log_procedure failed.
ODI-1246: the logical schema has not been defined for error_log_procedure.
at oracle.odi.runtime.agent.execution.AbstractSessionTask.getCollectDwgConnectConnection(AbstractSessionTask.java:754)
at oracle.odi.runtime.agent.execution.AbstractSessionTask.getCollectDwgConnectConnection(AbstractSessionTask.java:730)
at oracle.odi.runtime.agent.execution.SessionTask.getExecutor(SessionTask.java:239)
at oracle.odi.runtime.agent.execution.SessionTask.processTask(SessionTask.java:152)
at oracle.odi.runtime.agent.execution.SessionTask.doExecuteTask(SessionTask.java:111)
at oracle.odi.runtime.agent.execution.AbstractSessionTask.execute(AbstractSessionTask.java:864)
to oracle.odi.runtime.agent.execution.SessionExecutor$ SerialTrain.runTasks (SessionExecutor.java:2024)
at oracle.odi.runtime.agent.execution.SessionExecutor.executeSession(SessionExecutor.java:562)
to oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$ 1.doAction(TaskExecutorAgentRequestProcessor.java:718)
to oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$ 1.doAction(TaskExecutorAgentRequestProcessor.java:611)
at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:203)
at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor.doProcessStartAgentTask(TaskExecutorAgentRequestProcessor.java:800)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$ 1400 (StartSessRequestProcessor.java:74)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$ StartSessTask.doExecute (StartSessRequestProcessor.java:702)
at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:180)
to oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$ 2.run(DefaultAgentTaskExecutor.java:108)
to java.util.concurrent.Executors$ RunnableAdapter.call (Executors.java:471)
at oracle.odi.runtime.agent.execution.job.OdiJob.call(OdiJob.java:73)
at oracle.odi.runtime.agent.execution.job.OdiJob.call(OdiJob.java:73)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
to java.util.concurrent.ThreadPoolExecutor$ Worker.run (ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Navigate to the ODI object with the name error_log_procedure , which I assume is an ODI procedure. On the target tab (and if this source) make sure that you have specified a logical schema in the appropriate drop-down box
-
limit multiple executions of a procedure
Hi all
I would limit the simultaneous executions of a procedure. In other words, you want to serialize. Pretty simple, I use locking mechanism for this, but this procedure has a parameter which is a ref cursor and the lock will be released as soon as the ref cursor is open and control reaches the end of the procedure, but I is to restrict users to not be able to perform this procedure again until the closure of this ref cursor Is it possible that this can be achieved with in Oracle DB?
Example Code:
CREATE OR REPLACE PROCEDURE SH.SALES_BY_PRODUCT(P OUT SYS_REFCURSOR) IS BEGIN ..... --Lock here OPEN P FOR SELECT PROD_ID, SUM(AMOUNT_SOLD) AS AMOUNT FROM SH.SALES GROUP BY PROD_ID; ..... --Release the lock here --This approach of locking is not helping as the lock is released even before the cursor P is closed by the calling application. END;
Thank you!
You could get an application lock using package of dbms_lock which can be taken on the border of a transaction (commit) until you release or the session ends.
HTH
-
why there is no output after execution of the procedure
Hi all
SQL > set serveroutput size 1000000
SQL > set echo on
SQL > set comments on
SQL > declare
2 number (19) n;
3 v_startday varchar2 (100): = ' 01 /' 07/2013;
4 v_owner varchar2 (100): = "SLIMSINTDM";
5 v_audit_tab audit_var: = audit_var();
v_table_name 6 varchar2 (40);
7 type cur_type is ref cursor;
8 v_cur cur_type.
v_first_name 9 varchar2 (100);
v_last_name 10-varchar2 (100);
11 v_out_tab varchar2 (100);
v_lab_code 12 varchar2 (10);
13 v_sql varchar2 (20000);
14 v_sql_1 varchar2 (10000): = q']
15 select distinct au.first_name, au.last_name,.
16: v_table_name table_name, lab_code
Lab 17 l
18 join aus app_user_security on AUS.owning_lab_id = l.lab_id
19 join app_user AU AU. APP_USER_ID = AUS. Join APP_USER]';
20 v_sql_2 varchar2 (10000): = q'[t on (t.ADDED_BY = to THE.)] APP_USER_ID
21 or t.last_modified_by = au.app_user_id)
22 where lab_locale = 'en_AU '.
23 and (t.added_date > to_date (: v_startday, "MM/DD/YYYY"))
24 or t.last_modified_date > to_date (: v_startday, "MM/DD/YYYY"))
25 order by last_name, first_name
26 ]';
start 27
28 n: = 0;
29 because me to (select table_name from all_tables where owner = v_owner order of table_name)
loop 30
31 v_table_name: = substr (i.table_name, 1, instr (i.table_name, '_JN') - 1);
32 - dbms_output.put_line ('v_table_name: ' | v_table_name |'; i.table_name: ' | i.table_name);
33 v_sql: = v_sql_1 | i.table_name | v_sql_2;
34 - dbms_output.put_line (v_sql);
start at 35
36 open v_cur for v_sql using v_table_name, v_startday, v_startday;
37 loop
38 extract v_cur in v_first_name, v_last_name, v_out_tab, v_lab_code;
39 exit when v_cur % NOTFOUND;
40 n := n + 1;
41 v_audit_tab.extend;
42 v_audit_tab (n): = audit_type (v_first_name, v_last_name, v_out_tab, v_lab_code);
43 end loop;
44 close v_cur;
45 emergency
46 then than others then
then 47 cases sqlcode = - 1030 - insufficient privileges
48 dbms_output.put_line (' no privs to ' |) THE USER | "on" | i.table_name);
49 exit;
50 end if;
51 end;
52 end loop;
53 x in (select * from table (v_audit_tab))
loop 54
55 dbms_output.put_line (x.first_name |) «, » || x.last_name | ',' | x.table_name | ',' | x.lab_code);
loop end 56;
end 57;
58.
PL/SQL procedure successfully completed.
Issue in this case, developer you can't find any (results) output as expected after the execution of this procedure, so is there something wrong?
Thank you very much.
When you try this below is query it returns all the lines?
Select table_name
from all_tables
where owner = "SLIMSINTDM."
order of table_name;
-
Error, while the creation and execution of stored procedure
Hello
I'm creating a procedure stored and discovered during the compilation and execution of procedure.
CREATE OR REPLACE PROCEDURE procTEST
AS
BEGIN
WITH
AS Report1
(
SELECT * FROM Employee
)SELECT * FROM REPORT1
END;
/ERROR when compiling
-------------------------------
PROCTEST update procedure
Errors: Newspaper the compiler check
ERROR when executing
---------------------------------
PROCTEST update procedure
Errors: Newspaper the compiler check
Error from line: 15 command.
EXEC procTEST
Error report-
ORA-06550: line 1, column 7:
PLS-00905: object SYSTEM. PROCTEST is not valid
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
06550 00000 - "line %s, column % s:\n%s".
* Cause: Usually a PL/SQL compilation error.
* Action:Hello
user13360241 wrote:
I want to insert values into the table tmpemployees.
Insert into tmpemployees
Select * from Report1
CREATE OR REPLACE PROCEDURE procTEST
AS
BEGIN
WITH
AS Report1
(
SELECT * FROM Employee
)Insert into tmpemployees
SELECT * FROM REPORT1
END;
/I see. Then, there is no need to use the PL/SQL. All you need is:
INSERT INTO tempemployees
SELECT *.
OF REPORT1.
(assuming that the columns match Report1 tempemployees... It is best to explicitly list the individual columns, like this:
INSERT INTO tempemployees (employyee_id, first_name,...)
SELECT (col_1, col_2,...)
OF REPORT1.
)
If you need to use the PL/SQL for a reason, you could use the exact same INSERT statement in PL/SQL:
CREATE OR REPLACE PROCEDURE proctest
AS
BEGIN
INSERT INTO tempemployees (employyee_id, first_name,...)
SELECT (col_1, col_2,...)
OF REPORT1.
END proctest;
/
DISPLAY ERRORS
-
How to find the last time that the execution of the procedure and by whom?
Hi all
Can be found as the last run and the procedure by which the user in the dictionary of data or something else?
Thanks in advance.
At least that audit you, you can probably not.
If the goal is a particular stored procedure, you can maintain a work table so he can follow the execution time, audit owner etc.
Concerning
Biju
-
Execution of the procedure of Oracle APEX
Hello
I've written a procedure ' create or replace PROCEDURE process_csvfile (p_filename IN VARCHAR2); " et I want to execute this procedure to Oracle Apex.
PROCEDURE:
create or replace PROCEDURE process_csvfile(p_filename IN VARCHAR2) AS statement1 varchar2(1000); statement2 varchar2(1000); statement3 varchar2(1000); begin dbms_output.put_Line(p_filename ); statement1:= 'alter table adb.external_bcc_test location ( ' ||chr(39)|| p_filename||chr(39)|| ')' ; dbms_output.put_line(statement1); EXECUTE immediate statement1; dbms_output.put_line('statement1-> completed'); EXECUTE immediate 'truncate table ADB.ADB_BCC_TEST'; dbms_output.put_line('statement2-> completed'); statement3:='insert /*+ append */ into ADB.ADB_BCC_TEST(BCC_ID,BCC_ADD,"NO_OF_BCC(GEO)") select * from adb.external_BCC_test'; dbms_output.put_line(statement3); EXECUTE immediate statement3; dbms_output.put_line('statement3 insert-> completed'); EXCEPTION WHEN OTHERS then raise; END;
I created the button and the action as a dynamic Action where I wrote below PL/SQ as dynamic Action to perform this procedure
BEGIN process_csvfile; END;
But I get an error" " " ORA-06550: line 4, column 3: PLS-00306: wrong number or types of arguments in the call to 'PROCESS_CSVFILE' ORA-06550: line 4, column 3: PL/SQL: statement ignored (go to error) "
Oracle Apex Version: 4.2.1
Thank you
BO.
BO123 wrote:
I've written a procedure ' create or replace PROCEDURE process_csvfile (p_filename IN VARCHAR2); " and I want to run this procedure from Oracle Apex.
- create or replace PROCEDURE process_csvfile (p_filename IN VARCHAR2)
- AS
- statement1 varchar2 (1000);
- statement2 varchar2 (1000);
- statement3 varchar2 (1000);
- Start
- dbms_output.put_Line (p_filename);
- statement1: = ' change the location of the table adb.external_bcc_test (' |) Chr (39) | p_filename | Chr (39) | ')' ;
- dbms_output.put_line (statement1);
- EXECUTE immediate statement1;
- dbms_output.put_line ('end statement1->');
- EXECUTE immediate ' truncate table ADB. ADB_BCC_TEST';
- dbms_output.put_line ('end of reporting2->');
- statement3: = "insert / * + append * / into ADB." ADB_BCC_TEST (BCC_ID, BCC_ADD, ' NO_OF_BCC (GEO) ') select * from adb.external_BCC_test';
- dbms_output.put_line (statement3);
- EXECUTE immediate statement3;
- dbms_output.put_line ('end statement3 insertion->');
- EXCEPTION
- WHILE OTHERS
- then
- lift;
- END;
The treatment is an external table. How to get the source file in the specified location?
dbms_output.put_line
the instrumentation is unnecessary in an environment of APEX (unless theapex_debug.log_dbms_output
method has been called). Useapex_debug
API methods instead so that information is available in debug mode.There is no reason to use dynamic SQL statements in lines 15-17.
Creating a column named "NO_OF_BCC (GEO)" is not a good idea and is in conflict with the recommendation of the Oracle do not use identifiers in quotes for the names of database objects. This objects will only cause problems and confusion.
Lines 20 to 23 are a bug. It doesn't hide where any exception occurred in fact. If there is no specific exception that must be handled in this procedure, it should not contain an exception block.
-
execution of stored procedure in sql developer/sql more with a table setting?
Hello
I create a package with a procedure which has a cursor ref as output and a type as an input parameter. Here is my definition of the package
PACKAGE ------- CREATE OR REPLACE PACKAGE TEST As TYPE RefCursorType IS REF CURSOR; type intTableType is table of varchar2(50) index by binary_integer; PROCEDURE GETDATA ( P_RECORDS OUT RefCursorType, YEAR_LIST IN intTableType ); END; PACKAGE BODY ----------------------- SET DEFINE OFF CREATE OR REPLACE PACKAGE BODY TEST AS PROCEDURE GETDATA ( P_RECORDS OUT RefCursorType, YEAR_LIST IN intTableType ) AS iYearList IDTableType; BEGIN --GET ARRAY COUNT IYEARLIST := IDTABLETYPE(); IYEARLIST.EXTEND(YEAR_LIST.COUNT); --LOOP THROUGH LISTS AND POPULATE ARRAY FOR I IN YEAR_LIST.FIRST .. YEAR_LIST.LAST LOOP IYEARLIST(I) := IDTYPE(TO_CHAR(YEAR_LIST(I))); END LOOP; OPEN P_RECORDS FOR SELECT CITHTML AS FORMATTED FROM dbTest.FORMATTED_HTML WHERE YEAR IN (SELECT * FROM TABLE(IYEARLIST)) ; END GETDATA ; END TEST ; /
I want to perform this procedure from the sql or sql developer more to see if it works properly. The year field dbTest.FORMATTED_HTML is defined as varchar2 (20 bytes). He has many years as well as text.
I've used this in the past with simple stored procedures, but not those with a table setting
var r refcursor;
exec GETOLDDATA(:r,40);
print r;
How can I modify this to allow him to run my stored procedure?
Thank you
Just declare SQL, not type of PL/SQL:
CREATE OR REPLACE
TYPE Str50TblType
AS THE TABLE OF THE VARCHAR2 (50)
/
CREATE OR REPLACE
THE TEST PACKAGE
IS
GETDATA PROCEDURE)
P_RECORDS ON SYS_REFCURSOR,
YEAR_LIST IN Str50TblType
);
END;
/
CREATE OR REPLACE
TEST OF PACKAGE BODY
IS
GETDATA PROCEDURE)
P_RECORDS ON SYS_REFCURSOR,
YEAR_LIST IN Str50TblType
)
IS
BEGIN
OPEN P_RECORDS
FOR
SELECT CITHTML AS FORMATTED
OF dbTest.FORMATTED_HTML
WHERE YEAR IN)
SELECT *.
TABLE (YEAR_LIST)
);
GETDATA END;
END TEST;
/
SY.
-
execution of the procedure with refcursor as output parameter
Hi I have the package following a procedure with parameter as refcursor OUT.
Here is an example of sample with the same structure with name in the other table, handling exceptions in my dev environment
When I try to execute this procedure with the followig blockCREATE OR REPLACE PACKAGE TEST_PACK IS Type refCursor is REF CURSOR; PROCEDURE TEST_PROC (out_data out refCursor); END; CREATE OR REPLACE PACKAGE BODY TEST_PACK IS Procedure test_proc ( out_data out refCursor ) is -- v_sql varchar2(4000); -- begin v_sql := 'select * from emp'; DBMS_OUTPUT.PUT_LINE ( 'Select Query is: '||v_sql ); open out_data for v_sql; Exception when others then DBMS_OUTPUT.PUT_LINE ( 'Error '|| SQLCODE ||','||SQLERRM ); END; end ;
I get the following errorDECLARE TYPE my_newcursor IS REF CURSOR; test_cur my_newcursor; out_text VARCHAR2 (4000); BEGIN TEST_PACK.test_proc(TEST_CUR) ; LOOP FETCH test_cur INTO out_text; EXIT WHEN test_cur%NOTFOUND; dbms_output.put_line('Value of refcur is:'||out_text); END LOOP; CLOSE test_cur; END;
Could you please help me where I am doing wrongORA-00932: inconsistent datatypes: expected - got - ORA-06512: at line 8
Thank youYou must extract your data to an appropriate data type.
(and note there is no need to declare your own ref cursor type as Oracle provides sys_refcursor at the end)
for example
SQL> set serverout on SQL> SQL> create or replace procedure test_proc(out_data out sys_refcursor) is 2 v_sql varchar2(4000); 3 begin 4 v_sql := 'select * from emp'; 5 DBMS_OUTPUT.PUT_LINE ( 'Select Query is: '||v_sql ); 6 open out_data for v_sql; 7 end; 8 / Procedure created. SQL> SQL> declare 2 rc sys_refcursor; 3 empRec emp%rowtype; 4 begin 5 test_proc(rc); 6 loop 7 fetch rc into empRec; 8 exit when rc%notfound; 9 dbms_output.put_line('Employee: '||empRec.empno||' - '||empRec.ename); 10 end loop; 11 close rc; 12 end; 13 / Select Query is: select * from emp Employee: 7369 - SMITH Employee: 7499 - ALLEN Employee: 7521 - WARD Employee: 7566 - JONES Employee: 7654 - MARTIN Employee: 7698 - BLAKE Employee: 7782 - CLARK Employee: 7788 - SCOTT Employee: 7839 - KING Employee: 7844 - TURNER Employee: 7876 - ADAMS Employee: 7900 - JAMES Employee: 7902 - FORD Employee: 7934 - MILLER PL/SQL procedure successfully completed. SQL>
Why do you use a slider ref anyway?
{: identifier of the thread = 886365}
-
How to call the output parameter during the execution of a procedure
Hello
I wrote a small procedure using parameter, how can I call this procedure?
exec prc_TABLE('emp',1)
I tried prc_TABLE ('emp') that the two do not work?
Any help would be appretiated.
Zaidcreate or replace procedure prc_TABLE (str in varchar2, CODE OUT number ) Begin CODE := 1; DBMS_OUTPUT.PUT_LINE(code); end; /
>
I wrote a small procedure using parameter, how can I call this procedure?
>
You can not call SQL - if that's what you are wanting to do. You can only call functions of SQL, and these functions cannot have OUT parameters. -
Hello
Could you tell me how to run a procedure that lies under different scheme serve in a schema to another without mentioning the name of schema before the procedure every time?
Below is the code in the right way, say, if there are two schemas, test1 and test2 and I want the procedure in Test2 will run under the Test1 schema?
Connect to test2 schema and grant permission to run for test1
grant exec on test2.prc to test1;
create a public synonym for procedure... with execute privilege...
so that you can use wth on the schema name.
-
Error during execution of the procedure
Hello
This is my procedure,
create or replace
PROCEDURE PRC_PARSE_XML (P_XML, CLOB,
P_XPATH VARCHAR2,
P_LIST ON PKG_SAM. REF_CURSOR_TYPE)
IS
CURSOR C_COLUMNS IS
SELECT * FROM
(SELECT ".") / SubLedgerKey' PASS,'VARCHAR2 (20)' the DOUBLE DATATYPE
UNION ALL
SELECT '. (/ SubLedgerFlag' PASS,'VARCHAR2 (20)' THE DOUBLE DATATYPE);
LC_SQL VARCHAR2 (4000);
LC_COL VARCHAR2 (1000);
LC_COL_1 VARCHAR2 (1000);
LC_PASS VARCHAR2 (1000);
LC_PASS_1 VARCHAR2 (1000);
LC_QUERY VARCHAR2 (4000);
BEGIN
C_COLUMNS J
LOOP
LC_COL: = "XTAB." | REPLACE(J.COL,'./');
IF LC_COL_1 IS NULL THEN
LC_COL_1: = LC_COL;
ON THE OTHER
LC_COL_1: = LC_COL_1 | «, » || LC_COL;
END IF;
LC_COL: = NULL;
END LOOP;
C_COLUMNS J
LOOP
LC_PASS: = REPLACE(J.COL,'./'). » '|| J.DATATYPE |' PATH ' | CHR (39) | J.COL | CHR (39);
IF LC_PASS_1 IS NULL THEN
LC_PASS_1: = LC_PASS;
ON THE OTHER
LC_PASS_1: = LC_PASS_1 | «, » || LC_PASS;
END IF;
LC_PASS: = NULL;
END LOOP;
LC_SQL: = 'SELECT'. LC_COL_1 | CHR (10) |
' FROM (select xmltype('||) CHR (39) | P_XML | CHR (39) |') double x) you. CHR (10) |
', xmltable('||) CHR (39) | P_XPATH | CHR (39) | CHR (10) |
"in passing t.x' | CHR (10) |
"COLUMNS". LC_PASS_1 | CHR (10) |
') XTAB;';
LC_QUERY: = 'P_LIST OPEN FOR' | CHR (10) | LC_SQL;
-P_LIST: = LC_QUERY; IMMEDIATELY RUN LC_QUERY;
/ * EXCEPTION
WHILE OTHERS THEN
RAISE_APPLICATION_ERROR (-20001,'PRC_PARSE_XML_DOCUMENT:-' |) SQLERRM) ;*/
END PRC_PARSE_XML;
Note:
P_LIST ON PKG_SAM. REF_CURSOR_TYPE is a ref cursor,
If I run the above procedure it displays error,.
DECLARE
P_LIST PKG_SAM. REF_CURSOR_TYPE;
BEGIN
PRC_PARSE_XML ("< SubLedgerList >
< subledger >
< SubLedgerKey > 101 < / SubLedgerKey >
< SubLedgerFlag > Y < / SubLedgerFlag >
< / subledger >
< subledger >
< SubLedgerKey > 102 < / SubLedgerKey >
< SubLedgerFlag > Y < / SubLedgerFlag >
< / subledger >
< subledger >
< SubLedgerKey > 103 < / SubLedgerKey >
< SubLedgerFlag > N < / SubLedgerFlag >
< / subledger >
< / SubLedgerList > «,» (/ SubLedgerList/large auxiliary book ', P_LIST);
END;
Error report:
ORA-00900: invalid SQL statement
ORA-06512: at "SHIPLUS_PUB. PKG_XML_PARSER', line 253
ORA-06512: at line 4 level
00900 00000 - "invalid SQL statement.
Kind regards
Fame
Published by: fame on 9 may 2012 12:27
-
Execution of a procedure in a package
Hello
How to run a procedure in a package? Here is the package
CREATE OR REPLACE PACKAGE BODY POPULATE_GLTD_TABLES
IS
-LOCAL VARIABLES
VARCHAR2 (10) val1;
-Create work items:
v_job1_str VARCHAR2 (4000);
v_job1 XXMCK. XXMCK_JOB_OT;
PROCEDURE populate_gltd_tabs1
IS
BEGIN
dbms_output.put_line ('Get_status = > v_job1: ');
val1: = F_CHECK_GLTD_RECORD_EXISTS ('MCK_GLTD_1');
IF Val1! s ="THEN
--
-Understand the value of details message - TRUE if yes and FALSE if no
--
xxmck.mck_write_log_msg.set_msg_tail (true);
--
xxmck.mck_write_log_msg.purge('GLTD-TASK1');
--
-together framework will define the source so that inserts data into the table of output cont
--
xxmck.mck_write_log_msg.set_Context(v_parent_program,v_prog_desc,'GLTD-TASK1');
--
xxmck.mck_write_log_msg.log (v_parent_program, "enter in LOAD_GLTD_TABLES.populate_gltd_tabs1', 'prg', 'GLTD-TASK1', 1");
--
xxmck.mck_write_log_msg.log_tail (v_parent_program, "enter in LOAD_GLTD_TABLES.populate_gltd_tabs1', 'prg', 'GLTD-TASK1'");
--
v_job1_str: = ' XXCOGNOS. LOAD_GLTD_TABLES.populate_gltd_tabs1;';
v_job1: = NEW XXMCK. XXMCK_JOB_OT ('GLTD-TASK1', v_job1_str, ' test of substantive work: LOAD_GLTD_TABLES.populate_gltd_tabs1 ', INTERVAL ' 60' SECOND ');
v_job1. PRINT(); -Display of the basic information about the work
v_job1. SUBMIT(); -Propose in the background
v_job1. WAIT();
v_job1. PRINT();
v_job1.get_Status (v_code, v_message);
dbms_output.put_line ('Get_status = > v_job1: ' | v_code |) ':' || v_message);
-SELECT DECODE (cont_exit, 'cont', 'cont', 'err', 'err', 'cont') IN v_result of MCK_LOG_CONT_EXIT_CHK WHERE source = 'GLTD-TASK1;
-IF v_result = "err" THEN
-raise_application_error ("-20000, ' program Aborted");
-END IF;
END IF;
EXCEPTION
WHEN OTHER THEN NULL;
END populate_gltd_tabs1;
PROCEDURE mainproc
IS
BEGIN
populate_gltd_tabs1; -CALL to FILL in mck_gltd_1 TABLE
--
-Mailing
--
xxmck.mck_write_log_msg.send_mail (p_source_prg = > v_parent_program)
, p_source = > 'GLTD-TASK1.
, p_msg_type = > 'prg '.
, p_from = > '[email protected] '.
, p_to = > '[email protected] '.
, p_server = > 'mailhub.mckinsey.com '.
);
EXCEPTION
WHEN OTHER THEN NULL;
END mainproc;
END POPULATE_GLTD_TABLES;
/
And here's my anonymous block to run above package
BEGIN
POPULATE_MCK_GLTDFILE.mainproc;
EXCEPTION - begin exception handler
WHEN OTHER THEN NULL;
END;
I am trying to run above the code into a toad. But I get the error message like: identifier 'POPULATE_MCK_GLTDFILE.mainproc' must be declared.
There is no parameter to pass.
The package is compiled successfully.
I think this must be the easiest question anyone I can ask, but I can't understand the solution.
Help, please
AdityaTry this (you are using the wromg package name)
BEGIN
POPULATE_GLTD_TABLES.mainproc;
EXCEPTION
WHEN OTHER THEN NULL;
END;Published by: Saran on January 13, 2012 01:38
Published by: Saran on January 13, 2012 01:38
Published by: Saran on January 13, 2012 01:40
-
403 Forbidden error of execution of the procedures of the URL of the browser stored
I am currently trying to run a simple stored procedure (ea.hello_world, where "ea" is the pattern and "hello_world" is the name of the procedure) a URL from the browser, but am getting a 403 Forbidden - error message "you don't have permission to access /pls/apex/ea.hello_world on this server. I use APEX 3.2 with Oracle 11 g and mod_plsql and gave the steps of apex_public_user. Any thoughts on what I am doing wrong?
Here is the process I have used so far:
Create the "Hello_World" procedure in the "EA: schema
create or replace
procedure hello_world
is
Start
HTP. Print ("'Hello World!");
end;
I then successfully granted to run the apex_public_user procedure:
Grant execute on ea.hello_world to apex_public_user;
Then, I tried to call the stored procedure from the browser using the following syntax:
http:// < Server >: < port > / pls/apex/< schema >. < Procedure & gt;
I also experimented with the use of a public synonym and the configuration of the wwv_flow_epg_include_mod_local, but I do not think that the function s relevant since I'm using mod_plsql and not the embedded pl/sql gateway.Hello
If you have below the line in dads.conf, then wwv_flow_epg_include_mod_local sets
PlsqlRequestValidationFunction wwv_flow_epg_include_modules.authorize
Try:
Create public synonymCREATE PUBLIC SYNONYM hello_world FOR ea.hello_world;
Grant privilege to execute procedure to the public
GRANT execute on hello_world to public;
Then change the APEX_030200.wwv_flow_epg_include_mod_local function
CREATE OR REPLACE FUNCTION APEX_030200.wwv_flow_epg_include_mod_local( PROCEDURE_NAME IN VARCHAR2) RETURN BOOLEAN IS BEGIN IF UPPER(procedure_name) IN ( UPPER('hello_world')) THEN RETURN TRUE; ELSE RETURN FALSE; END IF; END; /
Then try
http://: /pls/apex/hello_world If you can now run your procedure in URL, you can then low and e.g. grant execute procedure to the user of DAD.
Kind regards
Jarihttp://dbswh.webhop.NET/dbswh/f?p=blog:Home:0
Published by: jarola on December 6, 2011 16:20
Published by: jarola on December 6, 2011 16:24
typo in the name of the function
-
grant user privileges for the execution of a procedure in a package
Hi all
My need is to grant privileges to User1 to run only a single procedure proc1 in package1.
It is possible at all?
Do I need to grant more privileges if procedure1 calls procedure2?Hello
Marco wrote:
OK, so I can create procedureN off package1 claiming enforcement procedureN package1.proc1 and grant privileges to User1.Is this possible without rights for package1.proc1?
Yes, it is possible. If user_x has EXECUTE privileges on procedureN procedureN has DEFINE AUTHID (which is the default), then user_x doesn't have privileges on the packaging or the tables used in procedureN.
Maybe you are looking for
-
I bought a toshiba 640 GB external hard drive that was broken just before my warranty expires. (it expires February 13 so please would you before that!) I think the problem is in the body because the disc is still spinning and the computer can not si
-
HP Pavilion Entertainment PC: Initial password
Hello, I was cheking your laptop (Hp pavilion entertainment pc dv2000) I had long turned off... The thing is that I don't remember the original password... It's like a background dark and in the center of the screen, it appears blue advertising, aski
-
can not turn off my media player
Hi guys first day with my wirless Media Player and he seems to have frozz on tried the black button for ages but sound discovered jusr 3 spots on ideas? I need help lol
-
Hello. Is it possible for a registered point SCV endpoint to join a Lync hosted a meeting with several video participants? I used the Lync deployment guide to integrate my Lync and VCS networks successfully, but I can't get this function runs. I w
-
At my wits end with lightroom performance
Hi guys,.When I moved to medium format about a year ago I built a PC in order to satisfy the larger files. It's a beast of speed. Very briefly;-quad core i7 - 6700 k to 4.5 ghz-32 GB DDR4 3200 mhz-Boot disk is a disk of ssd samsung sm951 m2 (2 100 Mb