Advertisement
Smudla

CV8_Domaci

Dec 8th, 2015
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 1.17 KB | None | 0 0
  1. CREATE OR REPLACE PACKAGE pck_reports AS
  2. PROCEDURE getReports(p_cursor OUT SYS_REFCURSOR);
  3. PROCEDURE getReportHeader(p_rep_id NUMBER, p_cursor OUT SYS_REFCURSOR);
  4. PROCEDURE executeReport(p_rep_id NUMBER, p_cursor OUT SYS_REFCURSOR, p_result OUT CLOB);
  5. END pck_reports;
  6.  
  7. CREATE OR REPLACE PACKAGE BODY pck_reports AS
  8.    PROCEDURE getReports(p_cursor OUT SYS_REFCURSOR) AS
  9.    BEGIN
  10.       OPEN p_cursor FOR SELECT rep_id, rep_description FROM IDAS2.reports;
  11.    END getReports;
  12.    PROCEDURE getReportHeader(p_rep_id NUMBER, p_cursor OUT SYS_REFCURSOR) AS
  13.    BEGIN
  14.       OPEN p_cursor FOR SELECT rco_column_visible_name FROM IDAS2.reports_columns WHERE rep_id = p_rep_id ORDER BY rco_column_rank;
  15.    END getReportHeader;
  16.    PROCEDURE executeReport(p_rep_id NUMBER, p_cursor OUT SYS_REFCURSOR, p_result OUT CLOB) AS i_report_query IDAS2.reports.rep_sql%TYPE;
  17.    BEGIN
  18.       SELECT rep_sql INTO i_report_query FROM IDAS2.reports WHERE rep_id = p_rep_id;
  19.       OPEN p_cursor FOR i_report_query;
  20.       p_result := 'OK';
  21.    EXCEPTION
  22.       WHEN OTHERS THEN
  23.         p_result := 'Chyba: ' || SQLERRM;
  24.         OPEN p_cursor FOR SELECT NULL FROM dual;
  25.    END executeReport;
  26. END pck_reports;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement