?
Solved

What is mean by this error message?

Posted on 2008-06-25
7
Medium Priority
?
818 Views
Last Modified: 2013-12-19
Hi,
   When i run the below PL/SQL block i am getting ORA-24334: no descriptor for this position error.

set serveroutput on
DECLARE
     g_line_id   sample_pkg_1.FND_TABLE_OF_VARCHAR2_4000 := sample_pkg_1.FND_TABLE_OF_VARCHAR2_4000 ();
     g_gen       sample_pkg_1.FND_TABLE_OF_VARCHAR2_4000 := sample_pkg_1.FND_TABLE_OF_VARCHAR2_4000 ();
BEGIN
    sample_pkg_1.get_info (6674, g_line_id, g_gen);
    FOR i IN 1 .. g_line_id.COUNT
    LOOP
        DBMS_OUTPUT.put_line ('g_line_id(' || i || '): ' || g_line_id (i));
    END LOOP;
    FOR i IN 1 .. g_gen.COUNT
    LOOP
        DBMS_OUTPUT.put_line ('g_gen(' || i || '): ' || g_gen (i));
    END LOOP;
END;
            Can you anyone share with me about the reason of this error?
Thanks
0
Comment
  • 4
  • 3
7 Comments
 
LVL 48

Expert Comment

by:schwertner
ID: 21863930
What this means?

sample_pkg_1.FND_TABLE_OF_VARCHAR2_4000 := sample_pkg_1.FND_TABLE_OF_VARCHAR2_4000 ();

You can use type clause instead
0
 

Author Comment

by:Suriyaraj_Sudalaiappan
ID: 21864049
No i am using array with in package. That's what i am calling the package in this way.
0
 
LVL 48

Expert Comment

by:schwertner
ID: 21864077
This is neither a package nor a procedure.
This is PL/SQL anonymous block.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:Suriyaraj_Sudalaiappan
ID: 21864426
No i have created the package with name of sample_pkg_1. And get_info is the procedure with in that package. I am calling this package from anonymous block. Because i am using Array in the package. That's what i am invoking the package through this way.
0
 
LVL 48

Expert Comment

by:schwertner
ID: 21864607
If you are using array in a package it should be declared firstly as type.
Even outside the package.
If you do not do this you will have error messages.
And this happens ...
0
 

Accepted Solution

by:
Suriyaraj_Sudalaiappan earned 0 total points
ID: 21871777
Yes i have declared already inside the package like below

TYPE FND_TABLE_OF_VARCHAR2_4000 IS VARRAY (100) OF VARCHAR2(4000);

So no need to declare again right.
0
 
LVL 48

Expert Comment

by:schwertner
ID: 21872328
As I recall this what you declary has local scope - only in the package.
The type is unknown outside the package.
To use it outside the package you have to declare it at schema level.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Cursors in Oracle: A cursor is used to process individual rows returned by database system for a query. In oracle every SQL statement executed by the oracle server has a private area. This area contains information about the SQL statement and the…
How to Unravel a Tricky Query Introduction If you browse through the Oracle zones or any of the other database-related zones you'll come across some complicated solutions and sometimes you'll just have to wonder how anyone came up with them.  …
This video explains at a high level about the four available data types in Oracle and how dates can be manipulated by the user to get data into and out of the database.
This video shows syntax for various backup options while discussing how the different basic backup types work.  It explains how to take full backups, incremental level 0 backups, incremental level 1 backups in both differential and cumulative mode a…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question