Cursor Output

Hi all,
i need to form a comma seperated values from my cursor output .
I have a procedure with a input parameter as p_group
i need to pass this in a cursor and get the output in a comma sepereted values.
select student_name from class_stds where group_name=p_group ;
the output of the query , i need to make as a comma seperated values....

Thanks for your input, but I haven't understood properly. Please have a look at the test case
SQL> desc emp
Name                                      Null?    Type
EMPNO                                     NOT NULL NUMBER(4)
ENAME                                              VARCHAR2(35)
JOB                                                VARCHAR2(9)
MGR                                                NUMBER(4)
HIREDATE                                           DATE
SAL                                                NUMBER(7,2)
COMM                                               NUMBER(7,2)
DEPTNO                                             NUMBER(2)
SQL> select ename,length(ename) from emp;
ENAME                               LENGTH(ENAME)
SMITH                                           5
ALLEN                                           5
WARD                                            4
JONES                                           5
MARTIN                                          6
BLAKE                                           5
CLARK                                           5
SCOTT                                           5
KING                                            4
TURNER                                          6
ADAMS                                           5
ENAME                               LENGTH(ENAME)
JAMES                                           5
FORD                                            4
MILLER                                          6
999999                                          6
ABCDEFGHIJKLMNOPQRSTUVWXYZAAAAAA               32
MY#@ ' "ABC                                    11
17 rows selected.
SQL> declare
  2    ename_tbl dbms_utility.uncl_array;
  3    cursor c1(p_deptno emp.deptno%TYPE) IS
  4      SELECT ename FROM emp where deptno = p_deptno;
  5    mystr      VARCHAR2(200);
  6    tbl_length BINARY_INTEGER;
  7  BEGIN
  8    OPEN c1(20);
  9    FETCH c1 BULK COLLECT
10      INTO ename_tbl;
11    tbl_length := ename_tbl.COUNT;
12    dbms_utility.table_to_comma(ename_tbl, tbl_length, mystr);
13    dbms_output.put_line(mystr);
14  END;
15  /
SMITH,JONES,SCOTT,ADAMS,FORD,ABCDEFGHIJKLMNOPQRSTUVWXYZAAAAAA,MY#@ ' "ABC
PL/SQL procedure successfully completed.To be specific I haven't used Name_array which is Table Of Varchar2(30), But I have used Uncl_array which is Table Of Varchar2(227). So in my understanding it can be problematic for columns greater than 227. Please clarify.

Similar Messages

  • How to call a Stored Procedure with a REF CURSOR output parameter

    I am looking forward an example that call a stored function/procedure with a REF CURSOR output parameter and get the result.
    In other words, I have a stored function/procedure that execute a SELECT statement using the OCI library and then it could get the values of each column and each row.
    I put a code snippet, it have only the main thing to call a simple stored procedure and print the name of each column of the cursor, but I couldn´t to print out the values in the table that call the stored procedure.
    I understand that the next step, it is to call a OCIStmtFetch.
    How to associate the cursor with the OCIStmtFetch?
    If you need more information, only tell me.
    I am using ANSI C with HP-UX Operative System (C for HP-UX) and Oracle 10g.
    Regards.
    Antonio Garcia
    /* callOracleSP */
    #include <stdio.h>
    #include <string.h>
    #include <oci.h>
    #include <stdlib.h>
    char* pConnectChar ="server";
    char* pUsernameChar = "user";
    char* pPasswordChar = "passwd";
    char* sqlCharArray1 = "BEGIN SP_GETCITIES(:s, :c); END;";
    int retval;
    ub4 parmcnt=0;
    ub4 pos2=0;
    text *pcoln[20];
    ub4 namelen[20];
    char state_key[5];
    OCIStmt* pOciStatement;
    OCIStmt* pOciStatCursor;
    OCIError* pOciError;
    OCIEnv* pOciEnviron;
    OCIServer* pOciServer;
    OCISession* pOciSession;
    OCISvcCtx* pOciServiceContext;
    OCIBind* pOciBind[500];
    OCIParam* pOciParam;
    int main()
    retval = OCIEnvCreate(&pOciEnviron, OCI_DEFAULT, NULL, NULL, NULL, NULL,0,NULL);
    retval = OCIEnvInit(&pOciEnviron, OCI_DEFAULT, 0, NULL);
    retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciError, OCI_HTYPE_ERROR, 0, NULL);
    retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciServiceContext, OCI_HTYPE_SVCCTX, 0, NULL);
    retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciStatement, OCI_HTYPE_STMT, 0, NULL);
    retval = OCILogon(pOciEnviron,pOciError,&pOciServiceContext,(unsigned char *)pUsernameChar,
         strlen(pUsernameChar), (unsigned char *)pPasswordChar, strlen(pPasswordChar),
                   (unsigned char *)pConnectChar,strlen(pConnectChar));
    printf("OCILogon retval=%d\n",retval);
    retval = OCIStmtPrepare(pOciStatement, pOciError, (unsigned char *)sqlCharArray1,strlen(sqlCharArray1),
         OCI_NTV_SYNTAX, OCI_DEFAULT);
    printf("StmtPrepare retval=%d\n",retval);
    retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciStatCursor, OCI_HTYPE_STMT, 0, NULL);
    retval = OCIBindByPos(pOciStatement,&pOciBind[0], pOciError, (ub4) 1, (void *)&state_key,
         (sb4) sizeof(state_key), SQLT_STR, (void *) 0, (ub2 *) 0, (ub2 *)0,(ub4)0, (ub4 *)0, (ub4) OCI_DEFAULT);
    printf("BindByPos OCI_HTYPE_STMT retval=%d\n",retval);
    retval = OCIBindByPos(pOciStatement,&pOciBind[1], pOciError, (ub4) 2, (void *)&pOciStatCursor,
         (sb4) 0, SQLT_RSET, (void *) 0, (ub2 *) 0, (ub2 *)0,(ub4)0, (ub4 *)0, (ub4) OCI_DEFAULT);
    printf("BindByPos OCI_HTYPE_STMT retval=%d\n",retval);
    strcpy(state_key,"CA");
    retval = OCIStmtExecute(pOciServiceContext, pOciStatement, pOciError, (ub4)1, (ub4) 0,
         (OCISnapshot *)NULL, (OCISnapshot *)NULL, (ub4) OCI_DEFAULT);
    printf("StmtExecute retval=%d\n",retval);
    /* How to get the values of the cursor? */
    /* Get number of parameters of the Cursor */
    OCIAttrGet((void *) pOciStatCursor, (ub4)OCI_HTYPE_STMT, (void*) &parmcnt,(ub4 *) 0,
         (ub4)OCI_ATTR_PARAM_COUNT, pOciError);
    printf("\nNumber of parameters of the cursor = %d\n",parmcnt);
    for (int pos = 1; pos <= (int)parmcnt; pos++)
         OCIAttrGet((void *) pOciStatCursor, (ub4)OCI_HTYPE_STMT, (void*) &pos2,(ub4 *) 0,
              (ub4)OCI_ATTR_CURRENT_POSITION, pOciError);
         retval = OCIParamGet((void *)pOciStatCursor, (ub4)OCI_HTYPE_STMT, pOciError, (void **)&pOciParam,
              (ub4) pos );
         OCIAttrGet((void*) pOciParam, (ub4) OCI_DTYPE_PARAM,(void*) &pcoln[pos-1],(ub4 *) &namelen[pos-1],
              (ub4) OCI_ATTR_NAME,(OCIError *)pOciError );
    for (int i = 1; i <=(int)parmcnt; i++)
    printf("Column %i\tNAME = %.*s\n",i,namelen[i-1],pcoln[i-1]);
    return 0;
    This is the script that create the table, insert records and create the stored procedure
    CREATE TABLE CITIES (
         STATE_CODE     VARCHAR2(2) NULL,
         CITY_CODE      NUMBER(15,5) NULL,
         CITY_NAME      VARCHAR2(30) NULL
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('CA', 30, 'SAN DIEGO')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('CA', 40, 'SACRAMENTO')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('FL', 10, 'MIAMI')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('FL', 20, 'ORLANDO')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('NY', 10, 'NEW YORK')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('NY', 20, 'ALBANY')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('CA', 10, 'LOS ANGELES')
    INSERT INTO CITIES(STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES('CA', 20, 'SAN FRANCISCO')
    CREATE OR REPLACE PACKAGE globalPkg AUTHID CURRENT_USER AS
    /* The following are T/SQL specific global variables. */
    TYPE RCT1 IS REF CURSOR;/*new weak cursor definition*/
    END globalPkg;
    CREATE OR REPLACE PROCEDURE SP_ADDCITY(
    P_STATE_CODE IN VARCHAR,
    P_CITY_CODE      IN NUMBER,
    P_CITY_NAME      IN VARCHAR2,
    P_RETURN IN OUT NUMBER)
    AS
    StoO_error INTEGER;
    StoO_selcnt INTEGER;
    StoO_rowcnt INTEGER;
    StoO_errmsg VARCHAR2(255);
         BEGIN
    StoO_rowcnt := 0;
    StoO_error := 0;
    StoO_selcnt := 0;
    P_RETURN := 0;
    INSERT INTO CITIES (STATE_CODE, CITY_CODE, CITY_NAME)
    VALUES (P_STATE_CODE, P_CITY_CODE, P_CITY_NAME);
    StoO_rowcnt := SQL%ROWCOUNT;
    EXCEPTION
    WHEN TOO_MANY_ROWS THEN
    StoO_rowcnt := 2;
    WHEN OTHERS THEN
    StoO_rowcnt := 0;
    StoO_selcnt := 0;
    StoO_error := SQLCODE;
    StoO_errmsg := SQLERRM;
              IF StoO_error != 0 THEN
    BEGIN
                   P_RETURN := 1;
         RETURN;
         END;
              END IF;
         END;
    CREATE OR REPLACE PROCEDURE SP_GETCITIES(
    STATE_KEY IN VARCHAR,
    RC1      IN OUT globalPkg.RCT1)
    AS
    StoO_error INTEGER;
    StoO_selcnt INTEGER;
    StoO_rowcnt INTEGER;
    StoO_errmsg VARCHAR2(255);
    BEGIN
    StoO_rowcnt := 0;
    StoO_error := 0;
    StoO_selcnt := 0;
    OPEN RC1 FOR
    SELECT STATE_CODE, CITY_CODE, CITY_NAME
    FROM CITIES
    WHERE STATE_CODE = STATE_KEY
    ORDER BY CITY_CODE;
    StoO_rowcnt := SQL%ROWCOUNT;
    EXCEPTION
    WHEN OTHERS THEN
    StoO_rowcnt := 0;
    StoO_error := SQLCODE;
    StoO_errmsg := SQLERRM;
         END;
    /

    Hi Mark,
    Thanks for your recommendations.
    I change the code with OCIDefineByPos, one for each parameter from cursor and then use the OCIStmtFetch.
    I don´t receive a error when call OCIDefineByPos, but when I call OCIStmtFetch receive a -1 error number.
    What is wrong with the code?
    The script is the same.
    I need your help!
    Best Regards!
    Antonio Garcia (Mexico)
    This the new code:
    #include <stdio.h>
    #include <string.h>
    #include <oci.h>
    #include <stdlib.h>
      char*   pConnectChar ="ORAC617";
      char*   pUsernameChar = "C617_005_DBO_01";
      char*   pPasswordChar = "Tempora1";
      char*   sqlCharArray1 = "BEGIN SP_GETCITIES(:s, :c); END;";
      int     retval;
      ub4 parmcnt=0;
      ub4 pos2=0;
      sb2   *c_indp;
      text *pcoln[20], *name,*name2;
      ub4 namelen[20],len;
      ub2 type,size;
      char state_key[5];
      OCIDefine        *pdef;
      OCIBind          *p_bnd;
      ub1          **c_buf;
      OCIStmt*     pOciStatement;      /* Statement handle */
      OCIStmt*     pOciStatCursor;     /* Statement handle */   
      OCIError*    pOciError;          /* Error handle */
      OCIEnv*      pOciEnviron;        /* Environment handle */
      OCIServer*   pOciServer;         /* Server handle */  
      OCISession*  pOciSession;        /* Session handle */
      OCISvcCtx*   pOciServiceContext; /* Service Context handle */
      OCIBind*     pOciBind[500];      /* Bind handle */
      OCIParam*    pOciParam;          /* Param handle */
      int OCI_Fetch(OCIStmt *p_select,OCIError *p_err, int *piOcc)
      int iOcc, rc; 
      rc=OCIStmtFetch(p_select,p_err,1,OCI_FETCH_NEXT,OCI_DEFAULT);
      printf("rc fetch %i",rc);
      if(rc==0&&piOcc!=NULL){
           printf("entro al if");
        iOcc=*piOcc;
        *piOcc=iOcc+1;
      return rc;
    int main()
    int pos,i=0,rc;
      retval = OCIEnvCreate(&pOciEnviron, OCI_DEFAULT, NULL, NULL, NULL, NULL,0,NULL);
      printf("EnvCreate retval=%d\n", retval);
      retval = OCIEnvInit(&pOciEnviron, OCI_DEFAULT, 0, NULL);
      printf("EnvInit retval=%d\n",retval);
      retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciError, OCI_HTYPE_ERROR, 0, NULL);
      printf("HandleAlloc OCI_HTYPE_ERROR retval=%d\n",retval);
      retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciServiceContext, OCI_HTYPE_SVCCTX, 0, NULL);
      printf("HandleAlloc OCI_HTYPE_SVCCTX retval=%d\n",retval);
      retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciStatement, OCI_HTYPE_STMT, 0, NULL);
      printf("HandleAlloc OCI_HTYPE_STMT retval=%d\n",retval);
      retval = OCILogon(pOciEnviron,pOciError,&pOciServiceContext,(unsigned char *)pUsernameChar,
                  strlen(pUsernameChar), (unsigned char *)pPasswordChar, strlen(pPasswordChar),
                    (unsigned char *)pConnectChar,strlen(pConnectChar));
      printf("OCILogon retval=%d\n",retval);
      retval = OCIStmtPrepare(pOciStatement, pOciError, (unsigned char *)sqlCharArray1,strlen(sqlCharArray1),
                 OCI_NTV_SYNTAX, OCI_DEFAULT);
      printf("StmtPrepare retval=%d\n",retval);
      retval = OCIHandleAlloc(pOciEnviron, (void **)&pOciStatCursor, OCI_HTYPE_STMT, 0, NULL);
      printf("HandleAlloc OCI_HTYPE_STMT retval=%d\n",retval);
      retval = OCIBindByPos(pOciStatement,&pOciBind[0], pOciError, (ub4) 1, (void *)&state_key,
                 (sb4) sizeof(state_key), SQLT_STR, (void *) 0, (ub2 *) 0, (ub2 *)0,(ub4)0, (ub4 *)0, (ub4) OCI_DEFAULT);
      printf("BindByPos OCI_HTYPE_STMT retval=%d\n",retval);
      retval = OCIBindByPos(pOciStatement,&pOciBind[1], pOciError, (ub4) 2, (void *)&pOciStatCursor,
                 (sb4) 0, SQLT_RSET, (void *) 0, (ub2 *) 0, (ub2 *)0,(ub4)0, (ub4 *)0, (ub4) OCI_DEFAULT);
      printf("BindByPos OCI_HTYPE_STMT retval=%d\n",retval);
      strcpy(state_key,"CA");
      retval = OCIStmtExecute(pOciServiceContext, pOciStatement, pOciError, (ub4)1, (ub4) 0,
                   (OCISnapshot *)NULL, (OCISnapshot *)NULL, (ub4) OCI_DEFAULT);
      printf("StmtExecute retval=%d\n",retval);
      c_buf=(ub1 **)calloc(sizeof(ub1 *),3);
      c_indp=(sb2 *)calloc(sizeof(sb2 *),3);
      // Get number of parameters of the Cursor
      OCIAttrGet((void *) pOciStatCursor, (ub4)OCI_HTYPE_STMT, (void*) &parmcnt,(ub4 *) 0,
                  (ub4)OCI_ATTR_PARAM_COUNT, pOciError);
      printf("\nNumber of parameters of the cursor = %d\n",parmcnt);
      for (pos = 1; pos <= (int)parmcnt; pos++)
           OCIAttrGet((void *) pOciStatCursor, (ub4)OCI_HTYPE_STMT, (void*) &pos2,(ub4 *) 0,
                (ub4)OCI_ATTR_CURRENT_POSITION, pOciError);
           retval = OCIParamGet((void *)pOciStatCursor, (ub4)OCI_HTYPE_STMT, pOciError, (void **)&pOciParam,(ub4) pos );
           // Get the column name
           OCIAttrGet((void*) pOciParam, (ub4) OCI_DTYPE_PARAM,(void*) &name,(ub4 *) &len, (ub4) OCI_ATTR_NAME,(OCIError *)pOciError );
            // Get the column datatype
           OCIAttrGet((void*) pOciParam, (ub4) OCI_DTYPE_PARAM,(void*) &type,(ub4 *)0,(ub4)OCI_ATTR_DATA_TYPE,(OCIError *)pOciError);      
            // Get the column size
           OCIAttrGet((void*) pOciParam, (ub4) OCI_DTYPE_PARAM,(void*) &size,(ub4 *)0,(ub4)OCI_ATTR_DATA_SIZE,(OCIError *)pOciError);
           printf("Column %i\tNAME = %.*s \ttype %d \tsize %d\n",pos,len,name,type,size);
           // OCIDefine ByPos, one for each parameter
           // c_buf store the STATE_CODE, CITY_CODE and CITY_NAME columns from the cursor
           rc=OCIDefineByPos(pOciStatCursor,&pdef,(OCIError *)pOciError,pos,c_buf[pos-1],size+1,(ub2)type,(dvoid *)c_indp[pos-1],(ub2 *)0,(ub2 *)0,OCI_DEFAULT);     
          printf("OCIDefineByPos retval=%d\n,rc);
      // call OCIStmtFetch. In the next line, I receive the error
      rc=OCIStmtFetch(pOciStatCursor,pOciError,1,OCI_FETCH_NEXT,OCI_DEFAULT);
      printf("rc fetch %i",rc);
      return 0;
    {code}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Capturing cursor output in HTML format

    Hi,
    I want to capture Cursor's output in html format.
    following is the current query which is giving me output as mentioned below it
    Query:-
    declare
    v_msgtext  varchar(4000);
    cursor c_query IS
    select emp_no,emp_name,salary
              from employees
              where dept_id = 100;
    begin
    for v_query in c_query LOOP
    v_msgtext = v_msgtext ||
                        'empno:'|| v_query.emp_no||','||
                        'emp_name:'||v_query.emp_name||'.'||
                        'emp_salary:'||'v_query.salary'||
                        char(13)||char(10);
    END LOOP;
    utl_mail.send(v_sender, v_recipient, NULL, NULL, v_subject, v_msgText, 'text/html; charset=windows-1250', NULL);
    end; 
    o/p:-
    empno: 123,emp_name:sagar,emp_salary:10,000
    empno: 124,emp_name:neeraj,emp_salary:20.000
    empno: 125,emp_name:ashish,emp_salary:18.000
    empno: 126,emp_name:ramesh,emp_salary:5.000
    empno: 127,emp_name:suresh,emp_salary:30.000
    I want to generate the output as HTML report in tabular format with the below columns
    (empno,emp_name,salary) and send this html file via email to user.
    Can anybody please suggest a solution ASAP.
    Thanks in advance.

    Hi ,
    Please follow the below link may it will be useful for you.It shows how to generate a HTML format output through the query.
    oracle - Within a PL/SQL procedure, wrap a query or refcursor in HTML table - Stack Overflow

  • Capture cursor output in HTML format in PL/SQL

    Hi,
    I want to capture Cursor's output in html format.
    following is the current query which is giving me output as mentioned below it
    Query:-
    declare
    v_msgtext  varchar(4000);
    cursor c_query IS
    select emp_no,emp_name,salary
              from employees
              where dept_id = 100;
    begin
    for v_query in c_query LOOP
    v_msgtext = v_msgtext ||
                        'empno:'|| v_query.emp_no||','||
                        'emp_name:'||v_query.emp_name||'.'||
                        'emp_salary:'||'v_query.salary'||
                        char(13)||char(10);
    END LOOP;
    utl_mail.send(v_sender, v_recipient, NULL, NULL, v_subject, v_msgText, 'text/html; charset=windows-1250', NULL);
    end;  
    o/p:-
    empno: 123,emp_name:sagar,emp_salary:10,000
    empno: 124,emp_name:neeraj,emp_salary:20.000
    empno: 125,emp_name:ashish,emp_salary:18.000
    empno: 126,emp_name:ramesh,emp_salary:5.000
    empno: 127,emp_name:suresh,emp_salary:30.000
    I want to generate the output as HTML report in tabular format with the below columns
    (empno,emp_name,salary) and send this html file via email to user.
    Can anybody please suggest a solution ASAP.
    Thanks in advance.

    Hi,
    You can do in this way ...
    CALL FUNCTION 'WWW_ITAB_TO_HTML'
         TABLES
              HTML   = F_HTML
              FIELDS = FLDS
              ITABLE = ITAB.
    IF SY-SUBRC NE 0.
      WRITE: / 'Error in generating the html format'.
      EXIT.
    ENDIF.
    CALL FUNCTION 'WS_DOWNLOAD'
         EXPORTING
              FILENAME         = 'c:test.html'
              MODE             = 'BIN'
         TABLES
              DATA_TAB         = F_HTML
         EXCEPTIONS
              FILE_OPEN_ERROR  = 1
              FILE_WRITE_ERROR = 2
              OTHERS           = 9.
    call these 2 Fucntion modules for every page. so each page it wil downlaod a HTML page
    Regards
    Sudheer

  • Still not possible (4.0 EA3) to copy displayed column headings from ref cursor output.

    Hi,
    I've created an enhancement request to allow displayed column headings from ref_cursor output to be copied.
    This is still not possible (4.0 EA3)
    The ref cursor data can be copied, but not the headings..
    See July 2012 discussion of problem in comments at
    http://www.thatjeffsmith.com/archive/2011/12/sql-developer-tip-viewing-refcursor-output/

    Hi,
    I think you're out of luck... except if you're on 11g where you can use DBMS_SQL.TO_CURSOR_NUMBER to convert the REF CURSOR to a DBMS_SQL cursor, and then benefit from the DBMS_SQL package to get column details.
    http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28419/d_sql.htm#CHDJDGDG

  • Running a function with a cursor output

    Hi All,
    It sounds like this should be easy, but I can't get it to work! I'm trying to run or debug a function in JDev. The function simply calls a Java SP that returns a cursor. This all works fine and it runs in SPL Plus with no problems. The problem is that when I try to run it from within JDev I get presented with the PL/SQL block window, and nothing I do will let me view the contents of the cursor returned - mostly I just get errors and the code doesn't run at all.
    The default code it generates is:
    DECLARE
    v_Return NULL;
    BEGIN
    v_Return := ALISI.POC.POCCALLSP();
    -- Modify the code to output the variable
    -- DBMS_OUTPUT.PUT_LINE('v_Return = ' || v_Return);
    END;
    I think this should be modified to say:
    DECLARE
    v_Return Types.ref_cursor;
    BEGIN
    v_Return := ALISI.POC.POCCALLSP();
    -- Modify the code to output the variable
    DBMS_OUTPUT.PUT_LINE('v_Return = ' || v_Return);
    END;
    But the DBMS_OUTPUT.PUT_LINE is expecting a string, not a cursor, and nothing I've tried (I've tried so many things I can't begin to list them - or remember them) will work.
    Can anyone point out the error in my ways? Is it anything to do with the fact that I'm using a function and not a procedure? As you can probably tell I'm new to all this!
    Many thanks,
    John.

    With "simple" variables, we are able to display the output using DBMS_OUTPUT. For composite variables (PL/SQL tables, PL/SQL records, cursors, etc), there's no good way for us to directly display the result. DBMS_OUTPUT.PUT_LINE can only take a "String", or something that can be converted to it, and unlike Java, not everything implements a toString method. We would expect in such cases that the user modify the code as desired to output the data.
    That being said, you are actually encountering a bug here. With most datatypes that we can't display directly, we generally get enough information that we generate code that at least compiles and runs. I've logged a bug (3124777) to track this.
    (For what it's worth, I've tried this in 9.0.5, only to discover that the functionality has regressed a bit to be even less correct than in 9.0.3.)
    After the bug is fixed the output should look like this:
    DECLARE
      v_Return Types.ref_cursor; -- assuming this is the name of your ref cursor type
    BEGIN
      v_Return := ALISI.POC.POCCALLSP();
      -- Modify the code to output the variable
      -- DBMS_OUTPUT.PUT_LINE('v_Return = ' || v_Return);
    END;The user would then need to modify the part that displays the output. In this example, it might go something like this:
    DECLARE
      v_Return Types.ref_cursor; -- assuming this is the name of your ref cursor type
      v_Record v_Return%ROWTYPE;
    BEGIN
      v_Return := ALISI.POC.POCCALLSP();
      -- Modify the code to output the variable
      LOOP
        FETCH v_Return INTO v_Record;
        EXIT WHEN v_Return%NOTFOUND;
        DBMS_OUTPUT.PUT_LINE (v_Record.employee_id || CHR(9) || v_Record.last_name
          || CHR(9) || v_Record.salary); -- replace with your field names
      END LOOP;
    END;I hope this helps!
    -- Brian

  • Ref Cursor Output

    Hi,
    the I have the following procedure with an ref cursor as an output.
    CONCERN_ID_PK -- CONCERN_ID_FK -- ECN_ID_PK -- ECN_NO
    315 -- 315 -- 87 -- 4711
    i must store the values in variable like
    p_concern_id_pk
    p_concern_id_fk
    p_ecn_id_pk
    p_ecn_no
    because i want to call with the parameter an update procedure or/and an delete procedure.
    The select into statement doesn't work with an ref cursor I read.
    so what can be the solution for the problem ?
    I also have a types packes with the definief ref cursor
    type all_ecns is recursor;
    Must I use an self defined Object type or object table ????
    the procedures follows
    p_concern_id_pk in concern.concern_id_pk%TYPE,
    p_ecn_id_pk in ecn.ecn_id_pk%TYPE,
    p_ecncursor out types.all_ecns
    AS
    BEGIN
    OPEN p_ecncursor for select concern_id_pk, concern_id_fk, ecn_id_pk, ecn_no
    from ecn e,
    concern c
    where e.concern_id_fk = p_concern_id_pk
    and c.concern_id_pk = e.concern_id_fk
    and c.active = 1
    and ecn_id_pk = p_ecn_id_pk
    and c.active = 1;
    END;
    Thanks Marcel

    Is it something like this you're looking for?
    PACKAGE TYPES IS
    type tr is record (col1 tab1.col1%type, col2 tab1.col2%type);
    type tc is ref cursor returning tr;
    END;
    PROCEDURE get_data(p_cursor out types.tc) IS
    BEGIN
    open p_cursor for select col1,col2 from tab1;
    END;
    PROCEDURE process_data(p_cursor in types.tc)
    v_tr types.tr;
    BEGIN
    LOOP
    fetch p_cursor into v_tr;
    exit when p_cursor%notfound;
    dbms_output.put_line(v_tr.col1||' '||v_tr.col2);
    END LOOP;
    close p_cursor;
    END;

  • Cursor - Output in Continous form

    Hello Experts,
    I have the following cursor; i need to print the values continuosuly.
    How can i do it?
    declare
    reference_name varchar2(256);
    cursor reference_names is
           select distinct name as data
          from title
         and rownum <=5;                           
    BEGIN
      for reference_name in reference_names
      loop   
              dbms_output.put_line(reference_name.data||'-');
      end loop; 
      END;
      /Values in Column
    ================
    Titus
    John
    Bravid
    Need desired output as
    ======================
    Titus - John - Bravid
    Thanks...

    untested:
    declare
    cursor reference_names is
          select * from
            select distinct name as data
            from title
          where  rownum <=5;      
          v_sep varchar2(3):='';                    
    BEGIN
      for reference_name in reference_names
      loop   
              dbms_output.put(v_sep||reference_name.data);
                    v_sep:=' - ';
      end loop;
      dbms_output.put_line(''); 
    END;
    / Edited by: hm on 28.09.2011 04:19

  • *** Urgent - How to view Cursor output in TOAD ***

    Hi,
    I know how to view the output of a sysref cursor that is an out parameter from an SP, in SQL*PLUS
    But is there a way to see the resultset of a cursor in TOAD?
    This is urgent.
    Thanks for the helping hands.
    Sun

    TOADs SQL Editor works (almost) the same as SQL*Plus.
    You can work with VAR's and PRINT's in the very same way as SQL*Plus.
    Furthermore you can do the following:
    - Write an SQL statement with a bound cursor (with colons)
    - right-click in TAODs Editor
    - check for SQL Substitution variables.
    - run the script (F9) and a substition pop up »pops up«, from where you can choose CURSOR.
    The results will show up in the Data grid.
    Note: I am working with TOAD ver. 9

  • Exception while Registering Cursor Output Param

    Hi All,
    I am Trying to call a SP through java class. The SP has one of its output as CURSOR object.
    now during runtime when callableStatement.registerOutputParam () is called on that cursor object
    an SQL Exception is thrown giving mesasge as Invalid Column Index.
    Can Anyone please help me as to what may be the problem here.
    I have checked a number of times and the parameter index of the Cursor Object is correct.
    Thanks in advance.
    Regards,
    Sumbul.

    hi All,
    Can anyone please elaborate on the previous thread.
    I am still not able to execute the Procedure.
    From where should I match the Output Parameter index of my java code.
    Regards,
    Sumbul.
    Edited by: user10583473 on Jul 30, 2010 7:54 PM

  • Same Cursor Output - Different Query

    I am writing 2 cursors.
    Cursor 1 which gives me A,B,C,D columns as output.
    Cursor 2 gives me same A,B,C,D columns as output.
    But the Logic to calculate inside the cursor Select Query is different.
    I need to insert both A,B,C,D from Cursor 1 and Cursor 2 in same table by looping. Just curious to know do we have any way to insert the data by using same loop. Know it is impossible. Giving a try for any other solution.
    Because I have 5 different cursors with same columns to be fetched and to insert in same table.
    Planning to write a common insert script.

    select a,b,c,d from ... query 1 where code in ('AB','CD')...
    UNION ALL
    select a,b,c,d from ... query 1 where code = 'EF'...
    UNION ALL
    select a,b,c,d from ... query 1 where code NOT IN ('GH')
    But if only Code 'AB' is present, will that be fine to execute 'EF' query and 'GH' query also? All queries will have a minimum of 10 tables joins within 2 schema. If we write the condition before it will skip executing the 'EF' query and 'GH' query.
    Which option is better?I do not see any problem with including the CODE conditions in the Select queries until the tables in the query contains the CODE column. If there is no table with CODE column, then you may have to include it somehow (Assuming different tables for each query).
    Fine or not, it is for you to decide. If you use UNION/UNION ALL, all the queries shall be executed and the data, if present, shall be inserted into the target tables.
    Moreover
    select a,b,c,d from ... query 1 where code in ('AB','CD')...AND
    select a,b,c,d from ... query 1 where code NOT IN ('GH')Do you not think it will return Duplicate records? Query where CODE NOT IN ('GH') would include CODES 'AB', 'CD', right? And using UNION ALL does not eliminate duplicates. So, if you have a Primary/Unique key, you are almost certain to encounter an error. Isn't it?
    As an alternative, I think, you can use the Multitable Inserts as below:
    INSERT ALL|FIRST         ----------> Use as suitable. ALL will process each condition irrespective of its TRUTH value; FIRST will stop evaluating the conditions after first match. If you do not specify, Default is ALL.
      INTO target_table (column_list)
    VALUES (column_list_from_select_stmt)
    select column_list, CODE
      from source_table(s);For more information on MultiTable inserts, Read Here.
    Examples here.

  • Problem in ref cursor output..plz suggest changes

    SQL> select * from department;
        DEPTNO ENAME
         7124284 SINGH
    SQL> CREATE OR REPLACE PACKAGE l_ref_cursor
      2  AS
      3  TYPE rc IS REF CURSOR;
      4  END;
      5  /
    Package created.
    SQL> CREATE OR REPLACE PROCEDURE P_RET_REF_CURSOR(in_deptno IN NUMBER,lrc OUT l_ref_cursor.rc)
      2  AS
      3  BEGIN
      4  OPEN lrc FOR 'SELECT * FROM DEPARTMENT WHERE DEPTNO='||in_deptno;
      5  END;
      6  /
    Procedure created.
    SQL> DECLARE
      2  TYPE DEPT_REF_CURSOR IS REF CURSOR RETURN DEPARTMENT%ROWTYPE;
      3  C1 DEPT_REF_CURSOR;
      4  R_C1 C1%ROWTYPE;
      5  BEGIN
      6  EXECUTE IMMEDIATE 'BEGIN P_RET_REF_CURSOR(:A,:C); END;'
      7  USING IN 7123864,
      8  OUT C1;
      9  LOOP
    10  FETCH C1 INTO R_C1;
    11  EXIT WHEN C1%NOTFOUND;
    12  DBMS_OUTPUT.PUT_LINE(R_C1.ENAME);
    13  END LOOP;
    14  END;
    15  /
    DECLARE
    ERROR at line 1:
    ORA-03113: end-of-file on communication channelCould some one correct me, and also elucidate on what's wrong in my piece of code?
    Thanks,
    Bhagat

    The worse part is that it happens in 9.2.0.5.0 even..
    SQL> select * from v$version;
    BANNER
    Oracle9i Enterprise Edition Release 9.2.0.7.0 - 64bit Production
    PL/SQL Release 9.2.0.7.0 - Production
    CORE    9.2.0.7.0       Production
    TNS for Linux: Version 9.2.0.7.0 - Production
    NLSRTL Version 9.2.0.7.0 - Production
    SQL> select * from department;
        DEPTNO ENAME
       7124284 SINGH
    SQL> CREATE OR REPLACE PACKAGE l_ref_cursor 
      2  AS 
      3   TYPE rc IS REF CURSOR; 
      4  END;
      5  /
    Package created.
    SQL> CREATE OR REPLACE PROCEDURE P_RET_REF_CURSOR(in_deptno IN NUMBER,lrc OUT l_ref_cursor.rc)  
      2  AS 
      3  BEGIN 
      4   OPEN lrc FOR 'SELECT * FROM DEPARTMENT WHERE DEPTNO= :1' USING in_deptno; 
      5  END; 
      6  /
    Procedure created.
    SQL> DECLARE 
      2 
      3  TYPE DEPT_REF_CURSOR IS REF CURSOR RETURN DEPARTMENT%ROWTYPE; 
      4 
      5  C1 DEPT_REF_CURSOR; 
      6  R_C1 C1%ROWTYPE; 
      7  BEGIN 
      8 
      9  EXECUTE IMMEDIATE 'BEGIN P_RET_REF_CURSOR(:A,:C); END;'  USING IN 10, OUT C1; 
    10 
    11  LOOP FETCH C1 INTO R_C1;
    12  EXIT WHEN C1%NOTFOUND;
    13  DBMS_OUTPUT.PUT_LINE(R_C1.ENAME);
    14  END LOOP;
    15  END;
    16  /
    ERROR:
    ORA-03114: not connected to ORACLE
    DECLARE
    ERROR at line 1:
    ORA-03113: end-of-file on communication channelAt the same time
    SQL> DECLARE
      2   C1 l_ref_cursor.rc;
      3   R_C1 DEPARTMENT%ROWTYPE;
      4  BEGIN
      5    P_RET_REF_CURSOR(7124284,C1);
      6    LOOP
      7     FETCH C1 INTO R_C1;
      8     EXIT WHEN C1%NOTFOUND;
      9     DBMS_OUTPUT.PUT_LINE(R_C1.ENAME);
    10    END LOOP;
    11  end;
    12  /
    SINGH
    PL/SQL procedure successfully completed.Rgds.

  • Adding Cursor Output in BPEL Process Manually

    Need to Assign Multiple ErrorCode and RelatedField. Hence using Rowset. I am able to add one Row Only not able to add more than one row.
    In Assign Component i gave the following Expression:
    *$outputVariable.payload/ns1:RowSet/ns1:Row/ns1:Column[$RecordCount]/@ErrorCode*
    and i am incrementing the record count manually.
    <element name="OutputParameters">
    <complexType>
    <sequence>
    <element name="RowSet" type="db:RowSet" db:type="RowSet" minOccurs="0" maxOccurs="unbounded"
    nillable="true"/>
    </sequence>
    </complexType>
    </element>
    <complexType name="RowSet">
    <sequence>
    <element name="Row" minOccurs="0" maxOccurs="unbounded">
    <complexType>
    <sequence>
    <element name="Column" maxOccurs="unbounded" nillable="true">
    <complexType>
    <simpleContent>
    <extension base="string">
    <attribute name="ErrorCode" type="string" use="required"/>
    <attribute name="RelatedField" type="string" use="required"/>
    </extension>
    </simpleContent>
    </complexType>
    </element>
    </sequence>
    </complexType>
    </element>
    </sequence>
    </complexType>
    Any Help is much appreciated

    Hi vlad,
    I have tried the options that u have given ,if i choose the APPEND option the second row value is appended to the first row am unable to access the second row.
    i am expecting output in this format. in each assign component i need to assign rowset0,rowset1,rowset2.
    i tried mentioning like this its working only for index of 1. i think the problem must be initializing index of 2.
    *$outputVariable.payload/ns1:RowSet0/ns1:RowSet0_Row[1]/ns1:Value_CODE*
    <ns1:OutputParameters xmlns:ns1="http://xmlns.oracle.com/pcbpel/adapter/db/sp/GetDetials">
         <ns1:RowSet0 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="">
              <ns1:RowSet0_Row>
                   <ns1:Value_CODE xsi:nil="">XXXXXXXXXXXXXXXXXX</ns1:Value_CODE>
                   <ns1:Value_TEXT xsi:nil="">XXXXXXXXXXXXXXXXXX</ns1:Value_TEXT>
                   <ns1:Emp_NUMB xsi:nil="">1</ns1:Emp_NUMB>
                   <ns1:RowCount_NUMB xsi:nil="">48</ns1:RowCount_NUMB>
              </ns1:RowSet0_Row>
              <ns1:RowSet0_Row>
                   <ns1:Value_CODE xsi:nil="">XXXXXXXXXXXXXXXXXX </ns1:Value_CODE>
                   <ns1:Value_TEXT xsi:nil="">XXXXXXXXXXXXXXXXXX</ns1:Value_TEXT>
                   <ns1:Emp_NUMB xsi:nil="">2</ns1:Emp_NUMB>
                   <ns1:RowCount_NUMB xsi:nil="">48</ns1:RowCount_NUMB>
              </ns1:RowSet0_Row>
              <ns1:RowSet0_Row>
                   <ns1:Value_CODE xsi:nil="">XXXXXXXXXXXXXXXXXX</ns1:Value_CODE>
                   <ns1:Value_TEXT xsi:nil="">XXXXXXXXXXXXXXXXXX</ns1:Value_TEXT>
                   <ns1:Emp_NUMB xsi:nil="">2</ns1:Emp_NUMB>
                   <ns1:RowCount xsi:nil="">48</ns1:RowCount>
              </ns1:RowSet0_Row>
         </ns1:RowSet0>
    </ns1:OutputParameters>

  • Got my REF CURSOR, how to output?

    I started with this code:
    Re: find first record in the tree
    and get the dbms_output I'm looking for. What I don't understand is how to get the output into the refcursor OUT. I've read about FETCH INTO variables, but how does that get to the REF?
    There is an Oracle Form calling this procedure, if that makes any difference.

    Here an example of an stored procedure with REF CURSOR output
    CREATE OR REPLACE PROCEDURE Test_Proc
    (pIPI_EmpId IN PLS_INTEGER,
    pORC_RefCur OUT SYS_REFCURSOR)
    IS
    BEGIN
    OPEN pORC_RefCur FOR
    SELECT Employee_Name
    FROM Employee
    WHERE Employee_Id = pIPI_EmpId;
    END Test_Proc;
    Calling the procedure from Oracle Form
    DECLARE
    vRC_RefCur SYS_REFCURSOR;
    vT_Employee Employee.Employee_Name%TYPE;
    BEGIN
    Test_Proc(Form.Block.Employee_Id, vRC_RefCur);
    LOOP
    FETCH vRC_RefCur INTO vT_Employee;
    EXIT WHEN vRC_RefCur%NOTFOUND;
    Form.Block.Employee_Name := vT_Employee;
    END LOOP;
    END;

  • Cursor bound to out parameter with Connection Pool

    Is it possible to retrieve a cursor bound to an out parameter when using the thin
    driver to establish the connection pool to the database? I am currently using
    the JDriver to connect create the pool and the pool driver to connect from the
    app to the connection pool. We'd like to avoid using the Oracle client if possible.
    Currently I register the out parameter as java.sql.Types.OTHER, then call getResultSet(1)
    on the weblogic.jdbc.pool.CallableStatement object. But it breaks when I change
    the connection pool to use the thin driver. The error is at the bottom of this
    post.
    I think I could possibly get the current pool driver to work if can find some
    documentation on these two methods:
    void registerOutParameter(int i, int j, int k, int l)
    void registerOutParameter(int i, int sqlType, java.lang.String typeName)
    I have no idea what to put in for the ints in the first method or for sqlType
    or typeName. Can anyone point me to where I can find this documentation?
    E-docs mentions this class: weblogic.jdbc.vendor.oracle.OracleCallableStatement.
    (http://edocs.bea.com/wls/docs61/jdbc/thirdparty.html#1023867). Should I consider
    this? If so where is it?
    Thanks a lot,
    Matt Savino
    <<< error when using thin driver >>>
    preparing callable stmt
    callable stmt prepared, java.sql.Types.OTHER = 1111
    java.sql.SQLException: Invalid column type
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:273)
    at oracle.jdbc.driver.OracleStatement.get_internal_type(OracleStatement.java:4560)
    at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:225)
    at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:350)
    at weblogic.jdbc.pool.Statement.registerOutParameter(Statement.java:617)
    at jsp_servlet._reportmanager.__thin_outputresultset._jspService(__thin_outputresultset.java:145)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:263)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2390)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1959)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)

    Thanks Joe, your answer pointed me in the right direction. Just in case anyone
    wants to know, the solution took two changes:
    CHANGE
    cStat.registerOutParameter(1, java.sql.Types.OTHER);
    TO
    cStat.registerOutParameter(1, oracle.jdbc.driver.OracleTypes.CURSOR);
    (cStat is an instance of weblogic.jdbc.pool.CallableStatement)
    AND
    rs = cStat.getResultSet(1);
    TO
    rs = cStat.getCursor(1);
    Thanks again,
    Matt
    Joseph Weinstein <[email protected]> wrote:
    Hi Matt.
    Look at the Oracle thin driver documentation to determine what type you
    should define in the registerOutParameter call. We use 'OTHER', but
    their driver may use something else for CURSOR output parameters.
    joe
    Matt Savino wrote:
    Is it possible to retrieve a cursor bound to an out parameter whenusing the thin
    driver to establish the connection pool to the database? I am currentlyusing
    the JDriver to connect create the pool and the pool driver to connectfrom the
    app to the connection pool. We'd like to avoid using the Oracle clientif possible.
    Currently I register the out parameter as java.sql.Types.OTHER, thencall getResultSet(1)
    on the weblogic.jdbc.pool.CallableStatement object. But it breaks whenI change
    the connection pool to use the thin driver. The error is at the bottomof this
    post.
    I think I could possibly get the current pool driver to work if canfind some
    documentation on these two methods:
    void registerOutParameter(int i, int j, int k, int l)
    void registerOutParameter(int i, int sqlType, java.lang.String typeName)
    I have no idea what to put in for the ints in the first method or forsqlType
    or typeName. Can anyone point me to where I can find this documentation?
    E-docs mentions this class: weblogic.jdbc.vendor.oracle.OracleCallableStatement.
    (http://edocs.bea.com/wls/docs61/jdbc/thirdparty.html#1023867). Should
    I consider
    this? If so where is it?
    Thanks a lot,
    Matt Savino
    <<< error when using thin driver >>>
    preparing callable stmt
    callable stmt prepared, java.sql.Types.OTHER = 1111
    java.sql.SQLException: Invalid column type
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:273)
    at oracle.jdbc.driver.OracleStatement.get_internal_type(OracleStatement.java:4560)
    at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:225)
    at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(OracleCallableStatement.java:350)
    at weblogic.jdbc.pool.Statement.registerOutParameter(Statement.java:617)
    at jsp_servlet._reportmanager.__thin_outputresultset._jspService(__thin_outputresultset.java:145)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:263)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2390)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1959)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    PS: Folks: BEA WebLogic is expanding rapidly, with both entry and advanced
    positions
    for people who want to work with Java, XML, SOAP and E-Commerce infrastructure
    products.
    We have jobs at Nashua NH, Liberty Corner NJ, San Francisco and San Jose
    CA.
    Send resumes to [email protected]

Maybe you are looking for

  • Reg: Process Flow of DMS

    Hi Experts This is kumar.I'm new to DMS. pl explain the process flow of DMS. I have created document- cv01n, document structure. My queries are; 1. How to attach the document- relevant status 2.Where i can see the attched documents(object links),like

  • Printing a pdf from a marked-up pdf.

    Acrobat Pro 9 no longer lets me print a pdf from a marked-up pdf.  Any suggestions?

  • FTP adapter : file size

    Hi, I have a requirement to move file (unread) from remote server to local and capture the file size for logging purpose. I have modified my jca file to use FTPIoInteractionSpec and FTP working fine. To get the file size, I tried using jca.ftp.size p

  • Screen enhancement using BADI not workingin background for program RFRECPSFA520

    Hi Gurus, I implimented the badi BADI_RECP_SF (Enhancement spot BADI_RE_CP_SF) add custom tab with custom field for additional selection criteria.I used the steps provide in BADI documentation. Everything is working fine but when I run the program in

  • Email -Save as- New Folder- buggy -no copy/paste

    Email -Save as- New Folder- buggy. I can't paste text into a new folder field whether from a file/save as path or save attachments as- new folder.  That new folder dialog box does not allow copy or paste, only direct typing.   I've tried on three mac