Procdure that get query output

hi,
SELECT owning_organization_id,
COUNT(repair_number) AS repairNumber
FROM csd_repairs
WHERE creation_date > to_date(:1)
AND owning_organization_id IS NOT NULL
AND status = 'O'
GROUP BY owning_organization_id;
i want to just get the output of the above query .this should be done with PL/SQL procedure or function where :repairDate is parameter

CREATE OR REPLACE PACKAGE GETROCOUNTBYORGID
IS
TYPE repair_record is RECORD(owning_organization_id NUMBER,REPAIR_NUMBER VARCHAR2(30));
function getROCountbyorgId(repairDate IN Date) RETURN repair_record;
END GETROCOUNTBYORGID;
CREATE OR REPLACE PACKAGE BODY GETROCOUNTBYORGID
AS
  function getROCountbyorgId(repairDate IN Date) return repair_record is
  owningorgid number(30);
  repairnumber VARCHAR2(20);
    begin
           SELECT NVL(to_char(owning_organization_id),'Not Available') as organizationId,
               COUNT(repair_number) as repairNumber into owningorgid,repairnumber
           FROM csd_repairs
          WHERE creation_date > to_date(repairDate)
          AND status          = 'O'
          GROUP BY owning_organization_id;
  return repair_record;
  END getROCountbyorgId;
END GETROCOUNTBYORGID;now....you cannot return repair_record as this is a type and not a variable.
and you should not define owningorgid and repairnumber variables in the function but a v_repair_record variable of the type repair_record...
so your code should look like this:
CREATE OR REPLACE PACKAGE BODY GETROCOUNTBYORGID
AS
  function getROCountbyorgId(repairDate IN Date) return repair_record
  is
     v_reapir_record repair_record;
    begin
           SELECT NVL(to_char(owning_organization_id),'Not Available') as organizationId,
               COUNT(repair_number) as repairNumber
                into v_repair_record
           FROM csd_repairs
          WHERE creation_date > to_date(repairDate)
          AND status          = 'O'
          GROUP BY owning_organization_id;
  return v_repair_record;
  END getROCountbyorgId;
END GETROCOUNTBYORGID;furthermore...it is good practice to have naming conventions which identifies your types as types.
Something like
TYPE repair_record_type is RECORD(owning_organization_id NUMBER,REPAIR_NUMBER VARCHAR2(30));if you afterwards try to fill values into this type or if you want to return the type...you at least have the drawback to write more just because you are using a type rather than a variable
hth

Similar Messages

  • How to get query output data

    Hi,
    I have created procedure to analyze tables. I tried to get output but its not displaye in a proper way. I want to output as like as a query output.
    create or replace procedure tablestats
    as
    begin
    for cur in (SELECT OWNER,TABLE_NAME, NUM_ROWS, BLOCKS, AVG_ROW_LEN,TO_CHAR(LAST_ANALYZED, 'MM/DD/YYYY HH24:MI:SS')FROM DBA_TABLES WHERE OWNER='SCOTT') LOOP
    dbms_output.put_line(cur.owner||' '||' '||cur.table_name||' '||cur.NUM_ROWS||' '||cur.BLOCKS||' '||cur.AVG_ROW_LEN);
    DBMS_STATS.GATHER_TABLE_STATS('scott',cur.table_name);
    end loop;
    end;
    Output came lke this:
    SQL> exec tablestats
    SCOTT  DEPT 4 4 20
    SCOTT  EMP 14 4 38
    SCOTT  SALGRADE 5 4 10
    SCOTT  SERVICE 8 5 12
    SCOTT  BONUS 0 0 0
    PL/SQL procedure successfully completed.
    Acually i want output like..
      1* SELECT OWNER,TABLE_NAME, NUM_ROWS, BLOCKS, AVG_ROW_LEN,TO_CHAR(LAST_ANALYZED, 'MM/DD/YYYY HH24:MI:SS') Last_Analyzed FROM DBA_TABLES WHERE OWNER=
    'SCOTT'
    SQL> /
    OWNER                          TABLE_NAME                       NUM_ROWS     BLOCKS   AVG_ROW_LEN   LAST_ANALYZED
    SCOTT                          DEPT                                             4                   4                 20                   11/27/2013 19:10:44
    SCOTT                          EMP                                            14                   4                 38                    11/27/2013 19:10:44
    SCOTT                          SALGRADE                                   5                   4                 10                    11/27/2013 19:10:44
    SCOTT                          SERVICE                                      8                   5                 12                     11/27/2013 19:10:44
    SCOTT                          BONUS                                        0                    0                  0                      11/27/2013 19:10:44
    Please help me.
    Thanks,

    Hi,
    As John said, PL/SQL doesn't give you any of the nice formatting features that front end tools, like SQL*Plus, provide.  If you want headers, you have to say exactly what they are, and write them yourself.  If you want the columns to line up, you have to decide how long they will be and pad them yourself.  It's a lot of work.
    Why not let PL/SQL do the things that only PL/SQL can do, and let SQL*Plus do the things it does well?  Have your procedure  or function return a cursor, which you can then diplay in SQL*Plus, or write a piplined function, that you can use in queries where SQL*Plus can format the results.
    The query you posted can eaisly be done directly from SQL*Plus, of course.  I assume you posted a very simple example, becuase your question is just about display.  If you don't absolutely need PL/SQL, don't use PL/SQL.  What I said above applies if you really do need PL/SQL.

  • How to get query output in javascript

    i have a transaction with one output parameter.
    i have created an xacute query and referenced the transaction and its output parameter.
    now how do i get the value of that output parameter in a script in irpt file.
    i tried creating an applet.
    <APPLET NAME="executeApplet" CODEBASE="/XMII/Classes" CODE="iBrowser" ARCHIVE="illum8.zip" WIDTH="100" HEIGHT="100" MAYSCRIPT>
    <PARAM NAME = "QueryTemplate" VALUE="RH_DASHBOARD/Execute">
    </APPLET>
    i tried with this code in the script
    document.executeApplet.getQueryObject().getOutputParameter()
    but this gave  me the output parameter name not the value.
    i just need the value of the output parameter in the java script.

    Hi Rohit,
    Try using getBrowserObject().getSelectedItemAt(1).  Or you can use any of several other methods to get the value of your output.  If you are in 12.1 or greater, go to the workbench and open your webpage.  At the bottom of the window with the html and javascript, you will see an elipse of 5 dots.  Click and hold to drag that line up.  That will expose the script assistant when you can browse for the other methods available.
    Regards,
    Mike

  • How to get the output format options of SAP QUERY

    Hi Gurus,
    I want to get the output options available for sapquery program.means when you execute the program "AQZZ/SAPQUERY/FDF1============" you will get output options like sap alv,display as table,wordprocessing  etc.
    i am not able to unsderstand the logic in that standard code.my requirement is after fetching the data from the database i want to provide the ouput options SAP ALV,DISPLAY AS TABLE,WORD PROCESSING,SPREAD SHEET,FILESTORE.
    I can output the data in SAP ALV and i can store the data.But i am not able to use the the remaining options in my program.please provide me solution.
    I am very much thankful to the people who can provide me the solution.

    Hi,
    If you have a query then go to transaction 'SQ01' . Then press the change button . Then u will able to see the Output Options.Their u can select the option what ever u want.

  • Problem in query not getting desired output .

    i have the following table
    mysql> select * from emp;
    +------+-------+--------+-------+
    | eid  | ename | salary | depid |
    +------+-------+--------+-------+
    |   11 | ram   | 5000   | d1    |
    |   22 | shyam | 3000   | d1    |
    |   23 | mohan | 5500   | d2    |
    |   44 | radha | 8000   | d3    |
    |   48 | abhi  | 10000  | d3    |
    +------+-------+--------+-------+
    i am  executing  the following query :
    mysql> select  depid,count(depid) from emp where salary >5100 group by depid;
    and getting following result :
    +-------+--------------+
    | depid | count(depid) |
    +-------+--------------+
    | d2    |            1 |
    | d3    |            2 |
    +-------+--------------+
    2 rows in set (0.00 sec)
    i wants out put like this :
    +-------+--------------+
    | depid | count(depid) |
    +-------+--------------+
     |d1    |            0 |
    | d2    |            1 |
    | d3    |            2 |
    +-------+--------------+
    thanks in advance .
    csghanny.

    Hi
    csghanny,
    You question seems to be wrong.
    Because you are providing the filter condition where salary is greater than 5100. and for department d1, there is no salary more than 5100.
    +------+-------+--------+-------+
    | eid  | ename | salary | depid |
    +------+-------+--------+-------+
    |   11 | ram   | 5000   | d1    |
    |   22 | shyam | 3000   | d1    |
    |   23 | mohan | 5500   | d2    |
    |   44 | radha | 8000   | d3    |
    |   48 | abhi  | 10000  | d3    |
    +------+-------+--------+-------+
    select  depid, count(depid) from emp where salary >5100 group by depid;
    so there is no chance that this query will return the output what you are expecting.
    let us know, if you requirement is something different, so we can help you.
    Please Mark as Answer if my post solved your problem or Vote As Helpful if this helps. Blogs: www.sqlserver2005forum.blogspot.com

  • How to get the Query output to Excel

    Hi ,
    Can you tell me how to get the Query output to excel with out using any third party tool?
    Can you tell me how to write the code in Webservice and call it..
    Please explain it Elaboartly..
    Thanks in Advance!!!
    Mini

    whats your source system?
    you can use Live office, or query as a webservice if you are getting data from universe
    if you're getting data from SAP BI query and you have a java stack on your netweaver then you can get the data directly using sap bi connector in xcelsius.
    good luck

  • How do i get a output in CSV of a SQL query executed via SQL Command prompt

    Hi All,
    I have a question with reference to SQL command prompt. I have a sql query which runs properly and gives proper execution in SQL Management console in GUI.
    This report is used to pull the free disk space report of our servers
    As i want to schedule it as a report so i want to script it to run via SQL command prompt. I made the script and it works fine if i enter it in SQL command prompt. When i try to extract the output to a CSV File it fails. Below is the details of the command
    i am using to query to pull the data. Can anyone help me in getting the output of this query in SQL command prompt.
    sqlcmd -W -s , -S Servers FQDN
    use operationsmanager
    Go
    Query:"select Path, InstanceName, SampleValue 
    from PerformanceDataAllView pdv with (NOLOCK)
    inner join PerformanceCounterView pcv on pdv.performancesourceinternalid = pcv.performancesourceinternalid
    inner join BaseManagedEntity bme on pcv.ManagedEntityId = bme.BaseManagedEntityId
    where SampleValue < '20' and CounterName='% Free Space' and TimeSampled > '2014-08-06 11:00:00.00'
    order by countername, timesampled" -s "," -o "C:\DataSqlCmd.csv"
    Go
    When i enter the command without the quotes when the query is starting and ending and also without the output command (-s "," -o "C:\DataSqlCmd.csv") it is working and shows the output in the command prompt. Below is the screen shot for
    your reference.
    Due to security reasons i have to erase the server names:
    But when i add the line to extract the output ( -s "," -o "C:\DataSqlCmd.csv") It gives me this error:
    The exact command would be:
    sqlcmd -W -s , -S CINMLVSCOM01.e2klab.ge.com
    use operationsmanager
    Go
    "select Path, InstanceName, SampleValue 
    from PerformanceDataAllView pdv with (NOLOCK)
    inner join PerformanceCounterView pcv on pdv.performancesourceinternalid = pcv.performancesourceinternalid
    inner join BaseManagedEntity bme on pcv.ManagedEntityId = bme.BaseManagedEntityId
    where SampleValue < '20' and CounterName='% Free Space' and TimeSampled > '2014-08-06 11:00:00.00'
    order by countername, timesampled" -s "," -o "C:\DataSqlCmd.csv" -h-1
    Go
    saying the syntax is not correct or some thing as per the below screenshot.
    Can any one please help. Below is just the query whi i use to get the output in SQL management studio.
    Can any one make a command for the below quer so i can directly execute and test for getting the output.
    select Path, InstanceName, SampleValue 
    from PerformanceDataAllView pdv with (NOLOCK)
    inner join PerformanceCounterView pcv on pdv.performancesourceinternalid = pcv.performancesourceinternalid
    inner join BaseManagedEntity bme on pcv.ManagedEntityId = bme.BaseManagedEntityId
    where SampleValue < '20' and CounterName='% Free Space' and TimeSampled > '2014-08-06 11:00:00.00'
    order by countername, timesampled
    Gautam.75801

    Can you try the below query?
    select Path, InstanceName, SampleValue
    from PerformanceDataAllView pdv with (NOLOCK)
    inner join PerformanceCounterView pcv on pdv.performancesourceinternalid = pcv.performancesourceinternalid
    inner join BaseManagedEntity bme on pcv.ManagedEntityId = bme.BaseManagedEntityId
    where SampleValue < 20 and CounterName like '% Free Space' and TimeSampled > '2014-08-06 11:00:00.00'
    order by countername, timesampled
    -- replace the below query part in the below SQLCMD C:\>SQLCMD -S SERVERNAME -E -d operationsmanager -Q "select * from sys.databases ds with (nolock) where name='master'" -s "," -o "F:\PowerSQL\MyData.csv" -h -1
    SQLCMD -S SERVERNAME -E -d OperationsManager -Q "select Path, InstanceName, SampleValue
    from PerformanceDataAllView pdv with (NOLOCK)
    inner join PerformanceCounterView pcv on pdv.performancesourceinternalid = pcv.performancesourceinternalid
    inner join BaseManagedEntity bme on pcv.ManagedEntityId = bme.BaseManagedEntityId
    where SampleValue < '20' and CounterName='% Free Space' and TimeSampled > '2014-08-06 11:00:00.00'
    order by countername, timesampled" -s "," -o "c:\MyData.csv" -h -1
    Refer for the other ways 
    http://dba.stackexchange.com/questions/23566/writing-select-result-to-a-csv-file
    --Prashanth

  • Get the output of a query in a textpad..

    Hi..
    I need to get the output of a query in a notepad..
    Can anyone help me..

    spool c:\emp.txt
    fire select * from emp;
    spool off;
    go to c: and check your text file.
    hare krishna
    Alok

  • Can I get a query to get the output data like 4th column instead of 3rd col

    Can I get a query to get the output data like 4th column instead of 3rd column ?
    SQL&gt; select emp.deptno, empno, rownum from emp, dept where emp.deptno=dept.deptno;
    DEPTNO EMPNO ROWNUM
    10 7782 *1* *1*
    10 7839 *2* *2*
    10 7934 *3* *3*
    20 7369 *4* *1*
    20 7876 *5* *2*
    20 7902 *6* *3*
    20 7788 *7* *4*
    20 7566 *8* *5*
    30 7499 *9* *1*
    30 7698 *10* *2*
    30 7654 *11* *3*
    30 7900 *12* *4*
    30 7844 *13* *5*
    30 7521 *14* *6*
    14 rows selected.

    SQL> select emp.deptno, emp.empno,
      2    row_number() over(order by emp.deptno, emp.empno) rn,
      3    row_number() over(partition by emp.deptno order by emp.empno) dept_rn
      4  from emp, dept
      5  where emp.deptno=dept.deptno
      6  order by emp.deptno, emp.empno;
        DEPTNO      EMPNO         RN    DEPT_RN
            10       7782          1          1
            10       7839          2          2
            10       7934          3          3
            20       7369          4          1
            20       7566          5          2
            20       7788          6          3
            20       7876          7          4
            20       7902          8          5
            30       7499          9          1
            30       7521         10          2
            30       7654         11          3
            30       7698         12          4
            30       7844         13          5
            30       7900         14          6
    14 rows selected.Regards,
    Dima

  • Can we have triggers that get fired when we Query a table?

    Hi All,
    What could be the pricise answer to the following question?
    1. Can we have triggers that get fired when we Query a table?
    2. What the relation of triggers and delete, truncate statement in one line?
    3. What is data modelling? Why is it necessary?
    4. Which are not mandatory but essential files in Oracle?
    Regards,
    AAK

    1. Can we have triggers that get fired when we Query a table?for INSERT, UPDATE and DELETE statement, yes
    for SELECT statement, no.
    Question 2 is not clear for me.
    Question 3 is very very general ...
    4 >Which are not mandatory but essential files in Oracle?
    all database files (initialization file, control files, datafiles, redo log files) are mandatory. What is not mandatory but considered as a (very) bad practice is
    to have only 1 control file and only 1 redo log group with 1 redo log file.

  • How to get this output using sql query?

    Hi,
      How to get this output using sql query?
    Sno Name Age ADD Result
    1 Anil 23 delhi Pass
    2 Shruti 25 bangalor Pass
    3 Arun 21 delhi fail
    4 Sonu 23 pune Pass
    5 Roji 26 hydrabad fail
    6 Anil 28 delhi pass
    Output
    Sno Name Age ADD Result
    1 Anil 23 delhi pass
    28 delhi pass

    Hi Vamshi,
    Your query is not pretty clear.
    write the select query using Name = 'ANIL' in where condition and display the ouput using Control-break statements.
    Regards,
    Kannan

  • Not getting proper output in .rtf format

    Hi all i m getting this output when running request with an rtf template.o am working with XML publisher 4.5 and have developed template in microsoft word.
    Here is the output
    %PDF-1.4
    5 0 obj
    <<
    /Type /Page
    /Parent 3 0 R
    /Resources 4 0 R
    /Contents 6 0 R
    /MediaBox[ 0 0 612.0 792.0 ]
    /CropBox[ 0 0 612.0 792.0 ]
    /Rotate 0
    >>
    endobj
    6 0 obj
    << /Length 155 /Filter /FlateDecode >>
    stream
    x¿m¿!¿¿¿w`<¿¿¿VO¿¿¿¿<Ù¿¿¿¿¿ ¿04)¿¿¿j¿¿Z¿¿¿¿!¿I¿*¿¿PB¿¿¿¿b{¿¿*¿¿¿¿¿¿¿¿-¿¿ü¿¿C¿&T¿¿ndstream
    endobj
    1 0 obj
    <<
    /Type /Catalog
    /Pages 3 0 R
    >>
    endobj
    2 0 obj
    <<
    /Type /Info
    /Producer (Oracle XML Publisher 4.5.0)
    >>
    endobj
    3 0 obj
    <<
    /Type /Pages
    /Kids [
    5 0 R
    /Count 1
    >>
    endobj
    4 0 obj
    <<
    /ProcSet [ /PDF /Text ]
    /Font <<
    /F0 7 0 R
    >>
    >>
    endobj
    7 0 obj
    <<
    /Type /Font
    /Subtype /Type1
    /BaseFont /Helvetica
    /Encoding /WinAnsiEncoding
    >>
    endobj
    8 0 obj
    [ 5 0 R /XYZ 84.6 604.4 null ]
    endobj
    xref
    0 9
    0000000000 65535 n
    0000000401 00000 n
    0000000456 00000 n
    0000000534 00000 n
    0000000602 00000 n
    0000000010 00000 n
    0000000168 00000 n
    0000000678 00000 n
    0000000783 00000 n
    trailer
    <<
    /Size 9
    /Root 1 0 R
    /Info 2 0 R
    /ID [<974c380ea692f8fdbdad4b9206bce756><974c380ea692f8fdbdad4b9206bce756>]
    >>
    startxref
    832
    %%EOF
    any idea
    naveen

    Your issue has nothing to do with upgrading to 5.0, it is a post script printer issue. That output that is printing to your printer is caused because PASTA is not setup correctly. You should be able to query Metalink for PASTA and get the proper setup steps.
    Brett

  • To get the output  in the chart for a single selection

    Hi all,
    I used a query to get the output of the table, and for the same query i have  created a view to get the result in the chart.
    to get the output of the table for  a particular region i have created an input field and added value help to it. When i selected one particular region, i will be getting the data, in the table. But when i select a particular row in the table i need to get the data of that particular row only in the chart. (which i am getting)
    But when i select multiple regions at a time, then i am facing the issue. I get result of multiple regions data(at a time two rows are displayed in the chart) in the chart. where in i want to get data only for one region (only one row needs to get selected at a time) to get the result.
    Can any one throw a light of what needs to be done here.
    Thanks,
    Rani

    Hi Rani,
    I am not sure if I understand your question exactly, but it sounds like you need to set the selection mode for your table to "Single". If you do that the user will only have the possibility of selecting one row at a time in the table; they will not be able to select multiple rows.
    You make that setting in the Configure Element panel for the table.
    I hope this suggestions helps.
    Margaret

  • SQL query Output  exceeds 65000 rows in excel

    Hi,
    I have a SQL file attached to my concurrent program. The query in the SQL file returns tab separated output that i need to email as a csv through the same SQL file.
    The issue I am facing is that the query returns about 157000 records but only 65536 are being displayed in the excel worksheet.
    How can I get all the records by accommodating them in multiple worksheets of the same excel file?
    Please help!
    I am using EBS 11i.
    Code I am using in SQL file:
    set pages 3000
    set lines 300
    set heading off
    set term off
    set feedback off
    set verify off
    set echo off
    set serverout off
    spool /tmp/TEST.csv
    select 'Header'
    from dual
    SELECT column1||CHR(9)||column2
    FROM staging_table
    spool off
    set lines 1000 pages 40 head off echo off veri off
    select 'cd /tmp; cat $XX_TOP/install/sql/disclaimer.txt > x.dat; cat '||'/tmp/TEST.csv'||' | uuencode '||'/tmp/TEST.csv'
    ||' > '||substr('/tmp/TEST.csv',1,length('/tmp/TEST.csv')-4)||'.dat >> x.dat'
    ||' ; mail -s ''' ||'&1'||''' '||'&2'||' < x.dat'
    ||' ; rm '||substr('/tmp/TEST.csv',1,length('/tmp/TEST.csv')-4)||'.dat'||' ;'
    from dual
    list
    spool /tmp/email.txt
    spool off
    host chmod 777 /tmp/email.txt
    host /tmp/email.txt
    Thanks
    Edited by: user10648285 on May 13, 2011 5:27 AM

    open a blank Excel (2007 version), go to Data tab, then from External Data click From Text, select the CSV file (That having more than 65k records), click import, then from "start import at row" select 65001 and click next button, select delimiter as Comma, click Next button and filaly finish.
    In this way you will have the data after 65k rows in excel. Now you can simply open that cvs file in excel then you will have first 65k records (remening part will be discarded).
    So now you have two excel files and you can paste it in two diff tab.
    Note - you can repeate this activity if you have more than 130000 records...

  • How to get query result in comma dilimited text or excel file?

    Does anybody know how to get query results in comma delimited
    text file or excel file, I tried spool abc.txt, but the result
    showed some ------ lines
    Thanks

    Try doing this in your sql scripts
    set heading off
    set pagesize 0
    set linesize 4000
    set feedback off
    set verify off
    set trimespace on
    set colsep ","
    spool output.txt
    select * from dual (or whatever you are querying
    spool off
    There may be a couple other set statement that you could add but
    this should get you started in the right direction

Maybe you are looking for