How to parameterize the schema name in APEX

Hi,
How to parameterize the schema name in APEX , in order to access different tables from the respective schema.
For example:-
select NAME display_value, CODE return_value
from paramSchema.DESC_LIST WHERE SELECTION_FLG = 'Y'
order by 1
in the above code, paramSchema will be replaced with the actual schema name duing runtime. I tried doing so by some hidden fields on page, but it didn't worked out.
I took the schema name from the respective server as per the IPof the server.
stored in a hidden field named as schema.
And replaced the same in place of schema name. But no luck.
select NAME display_value, CODE return_value
from :schema.DESC_LIST WHERE SELECTION_FLG = 'Y'
order by 1
Please help me in shorting it out.
Thanks,
Anuradha

Hi
In order to do that, you would need to use dynamic SQL by changing the report type to PL/SQL Function Body Returning SQL Query and have code along the lines of
DECLARE
l_sql VARCHAR2(32767);
BEGIN
l_sql := 'select NAME display_value, CODE return_value
from '||:schema||'.DESC_LIST WHERE SELECTION_FLG = 'Y'
order by 1';
RETURN l_sql;
END;However, by doing this, you lose alot of flexibility. The other options would be...
To have seperate report regions that are conditional on the value of the variable.
To use a WITH clause at the tope of the query like...
WITH src_data AS
(SELECT * FROM schema1.my_table
WHERE :schema = 'schema1'
UNION ALL
SELECT * FROM schema2.my_table
WHERE :schema = 'schema2')
SELECT *
FROM src_dataOther than that you could look at using synonyms and doing something similar.
Hope this helps.
Cheers
Ben

Similar Messages

  • How to Get the schema name that contains the current procedure?

    I have try select sys_context( 'userenv', 'current_schema' ) from dual; but it returns the schema name of the login user. How to return the schema name of the procedure instead? For example, procedure A is in ControlDB, and I login as sys, when query procedure A it should return ControlDB instead of sys.
    I have searched in Google but no luck to find the answer so far, please help. Thank you

    It works!
    I am quite confused now. I did try to use select username from user_users in GetSchemaName procedure, but it always return the login user instead of the owner of the procedure. Why it return the procedure owner if I put the query inside a function then call it from the procedure?
    Is it because when the login user call the procedure and the procedure call the function, it's the procedure owner is calling the function so the user_users return the user that is calling it which is the procedure owner. And if the query is directly put inside the procedure, when the login user call the procedure, user_users return the login user directly? Does it imply that if the procedure call any function or other procedures etc, it would be the procedure's owner calling them instead of the login user?
    (sys_context works as well if I move the query into the function then call the function from the procedure)
    Cheers
    Message was edited by:
    user500168

  • How to configure the schema name dynamically based on user input.

    configure the schema name dynamically based on user input.
    For ex:
    We have two schemas:
    Schema1  - base schema having 15 tables.
    Schema2 -  tables which is specific to modules. Having only 10 tables which is also available in Schema1
    Login to application using Schema 1
    Access a particlular module and select the country. Here country selection is identified.
    Based on the country selection, we need to connect the schema respectively.
    If the user selects France --> It should connect Schema1
    If the user selects Germeny --> It should connect schema2.
    Used: Eclipselink

    You may want to have a different persistence unit for each country, then you just need to switch persistence units, and can put the schema in your orm.xml file.
    You may also want to investigate EclipseLink multi-tenant support,
    http://www.eclipse.org/eclipselink/documentation/2.5/jpa/extensions/a_multitenant.htm
    You can the schema in a persistence unit in code using a SessionCustomizer and the tableQualifier.

  • How to determine the schema name from stored function or procedure

    Hi all
    I need to find the way to determine the name of shema in which the given stored procedure residing. This SP is created with AUTHID CURRENT_USER what means that expression like SYS_CONTEXT('USERENV','CURRENT_USER') or SYS_CONTEXT('USERENV','CURRENT_SCHEMA') will be return the name of user or schema of user which calls given SP.
    can somebody help me?

    What is the problem you are trying to solve?
    Presumably, when you're creating a stored procedure, you know what schema owns it. So it's pretty trivial to simply create a local variable L_OWNER in your procedure, assign it the value of the schema owner, and then use that owner. Most people don't really need to figure out at runtime what they already knew at compile time.
    Barring that, you could inspect the data dictionary as user130038 suggested. That requires that you know the name of the procedure (which would likely also have to be a local variable that is initialized to a hard-coded value. And if there are multiple users that own procedures with the same name, it may not be reliable.
    Inspecting the call stack is the most reliable and dynamic approach. But it is also the most costly in terms or runtime performance and in terms of code complexity.
    Justin

  • How can find the schema name

    Hi,
    I just want to know,
    based on the sql statements in v$sql, want to know the schema from which the queries are being executed.
    and one more thing,
    one sql procedure/function got failed from the application , I want to know from which schema it got failed and the time when it got failed?
    RR

    You can define the EXCEPTION for any PL/SQL block to catch errors
    http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/exception_definition.htm#LNPLS01316
    Kamran Agayev A. (10g OCP)
    http://kamranagayev.wordpress.com
    [Step by Step install Oracle on Linux and Automate the installation using Shell Script |http://kamranagayev.wordpress.com/2009/05/01/step-by-step-installing-oracle-database-10g-release-2-on-linux-centos-and-automate-the-installation-using-linux-shell-script/]

  • How to read the whole name of a music title while scrolling down a list of titles? With the new iOs7 Music App there is no more black box showing the entire name!

    How to read the whole name of a music title while scrolling down a list of titles? The old software-app had the function to click for a longer time on a titles beginning letters until a black box revealed the entire name. I miss this function especially for my classical music, because lots of pieces start with similar words. E.g.:
    "Beethoven: Variations On "Ein Mädchen Oder Weibchen", Op. 66 - Var. 1"
    "Beethoven: Variations On "Ein Mädchen Oder Weibchen", Op. 66 - Var. 2"
    Scrolling in a list of title, I can't distinguish the titles, because just the first words are shown followed by: "...".
    That's horrible!

    Or you could include a width to your body style:
    body {
    background-image: url(Logo/sky1.jpg);
    background-position: center center;
    background-attachment: fixed;
    width: 75%;}
    It might work or not depending on your other color scheme.

  • How to hide the file name (the bizarre number assigned by the camera) when exporting an image version in aperture from an album. Pl understand I want to keep the file name in the project library version.

    how to hide the file name (the bizarre number assigned by the camera) when exporting an image version in aperture from an album. Pl understand I want to keep the file name in the project library version.

    Within Aperture you have Images, which are constructed on-the-fly from two files (the Master and the Version).  You get an image-format file _only_ when you export an Image.  You select the file name (usually a scheme) when you create an image-format file (that is, when you export).  Look under "Aperture→Presets→File Naming" for built-in Presets.  You can, of course, create your own or customize any provided.
    The Preset is applied to only the file newly created by your "export" command.  It is not applied to the Image in Aperture (unless you rename your Versions or your Masters).

  • How to specify the target name while deploying a code in OSB-- Plz Help

    Hi all,
    Am working in creating a cluster environment. For my testing i created a new managed server(OSB_Server) in 9001 port in the admin console itself and that server started running. The default managed server(Admin_Server) is in 7001 port. So when i deploy a code in 7001 sb console the WSDL gets exposed in 7001 because the default admin server port is 7001. While deploying a code in service bus admin console we are not specifying the target name. So how to specify the target name while deploying the code in service bus admin console. Plz help me.
    Regards
    Prabhu

    Hi Prabhu,
    There are three kind of server architecture possible for OSB -
    1. Single server - Everything gets deployed on Admin server itself
    2. Admin Server + Single Managed Server for OSB -- OSB configuration gets deployed on OSB managed server. OSB resources (proxy service, WSDL, Schema) will remain available on OSB managed server port only and NOT on admin server port
    3. Admin Server + OSB cluster -- OSB configuration gets deployed on OSB cluster. OSB resources (proxy service, WSDL, Schema) will remain available on OSB Cluster port(s) only and NOT on admin server port
    Converting one type of server architecture to any other type, requires a manual tedious process, so it is suggested that you create domain accordingly i.e. if you need clusters then while creating domain itself, create OSB cluster, so that all OSB applications gets deployed to OSB cluster. I will suggest you to create a clustered domain from scratch and import the configuration from your existing domian to this new clustered domain.
    You may refer-
    http://download.oracle.com/docs/cd/E17904_01/doc.1111/e15022/toc.htm
    Regards,
    Anuj

  • How to call a schema name using substitution name?

    Hi All,
    How to call a schema name using substitution menthod in odi?
    I was trying but I got the following error..
    ODI-1227: Task XXX(Procedure) fails on the source ORACLE connection YYY.
    Caused By: java.sql.SQLException: Missing IN or OUT parameter at index:: 1
    Here xxx procedurename.
    yyy-schemaname
    Please do the needful..
    Thanking you in Advance.
    Regards,
    PP

      1  declare
      2  sql_string varchar2(2000);
      3  begin
      4  sql_string := 'select ' || func_name || ' into a from dual ';
      5  execute immediate sql_string;
      6* end;
    SQL> /
    sql_string := 'select ' || func_name || ' into a from dual ';
    ERROR at line 4:
    ORA-06550: line 4, column 28:
    PLS-00201: identifier 'FUNC_NAME' must be declared
    ORA-06550: line 4, column 1:
    PL/SQL: Statement ignored
      1  declare
      2  sql_string varchar2(2000);
      3  func_name varchar2(30);
      4  begin
      5  func_name := 'some_func';
      6  sql_string := 'select ' || func_name || ' into a from dual ';
      7  execute immediate sql_string;
      8* end;
    SQL> /
    declare
    ERROR at line 1:
    ORA-00904: "SOME_FUNC": invalid identifier
    ORA-06512: at line 7
    SQL> desc some_func;
    ERROR:
    ORA-04043: object some_func does not exist
      1  create or replace function test_func
      2       return number
      3       is
      4       begin
      5          return 0;
      6*      end;
    SQL> /
    Function created.
      1  declare
      2  sql_string varchar2(2000);
      3  func_name varchar2(30);
      4  begin
      5  func_name := 'test_func';
      6  sql_string := 'select ' || func_name || ' into a from dual ';
      7  execute immediate sql_string;
      8* end;
    SQL> /
    declare
    ERROR at line 1:
    ORA-00905: missing keyword
    ORA-06512: at line 7
    SQL> Set serveroutput on
      1   declare
      2   sql_string varchar2(2000);
      3   func_name varchar2(30);
      4   return_value number;
      5   begin
      6   func_name := 'test_func';
      7   sql_string := 'select ' || func_name || ' from dual ';
      8   execute immediate sql_string into return_value;
      9   dbms_output.put_line(return_value);
    10* end;
    SQL> /
    0
    PL/SQL procedure successfully completed.Hope that helps.
    Regards
    Raj

  • Transform the schema name with APPLY_DML_HANDELER

    Hello:
    I have referred following notes, but I was trying to transform the schema name from schema_name_A to Schema_name_B in APPLY_DML_HANDELER, which does not seem like working.
    264035.1 How To Transform Schema Name In Streams
    309575.1 How To Transform A Schema Name In Streams for DML and Simple DDL Operations
    313766.1 Streams Heterogeneous Apply To SQL*Server
    Please confirm, if what I am trying to do it doable or not? Below is handler code.
    CREATE OR REPLACE PROCEDURE APPLY_DML_HANDLER(in_any_data IN SYS.ANYDATA) IS
    v_in_lcr SYS.lcr$_ROW_RECORD;
    v_in_lcr_status PLS_INTEGER;
    BEGIN
    v_in_lcr_status := in_any_data.GETOBJECT(v_in_lcr);
    v_in_lcr.set_object_owner('CSRREP');
    v_in_lcr.EXECUTE(TRUE);
    END;
    All gets compiled good and runs, but dba_apply_errors shows Ora-23416.
    Thanks,
    Rohit

    Hi Rohit,
    ORA-23416: table "string"."string" does not contain a primary key constraint
    Cause: The master table does not constaint a primary key constraint or the primary key constraint has been disabled.
    Action: Create a primary key constraint on the master table or enable the existing constraint.
    It is doable. I've done already done that in 9i. Be conscious that that kind of handler is executed for each LCR. So, that's highly paid.
    I think there are new features to do it in a better way in 10g but I haven't tried it yet.
    I had a bug somewhat similar that I fixed doing the following:
    dbms_rule_adm.grant_object_privilege(
    privilege => SYS.DBMS_RULE_ADM.EXECUTE_ON_RULE_SET,
    object_name => v_ruleset_name,
    grantee => v_new_owner
    );

  • How to use the column names generated from Dynamic SQL

    Hi,
    I have a problem with Dynamic SQL.
    I have written an SQL which will dynamically generate the Select statement with from and where clause in it.
    But that select statement when executed will get me hundreds of rows and i want to insert each row separately into one more table.
    For that i have used a ref cursor to open and insert the table.
    In the select list the column names will also be as follows: COLUMN1, COLUMN2, COLUMN3,....COLUMNn
    Please find below the sample code:
    TYPE ref_csr IS REF CURSOR;
    insert_csr ref_csr;
    v_select VARCHAR2 (4000) := NULL;
    v_table VARCHAR2 (4000) := NULL;
    v_where VARCHAR2 (4000) := NULL;
    v_ins_tab VARCHAR2 (4000) := NULL;
    v_insert VARCHAR2 (4000) := NULL;
    v_ins_query VARCHAR2 (4000) := NULL;
    OPEN insert_csr FOR CASE
    WHEN v_where IS NOT NULL
    THEN 'SELECT '
    || v_select
    || ' FROM '
    || v_table
    || v_where
    || ';'
    ELSE 'SELECT ' || v_select || ' FROM ' || v_table || ';'
    END;
    LOOP
    v_ins_query :=
    'INSERT INTO '
    || v_ins_tab
    || '('
    || v_insert
    || ') VALUES ('
    || How to fetch the column names here
    || ');';
    EXECUTE IMMEDIATE v_ins_query;
    END LOOP;
    Please help me out with the above problem.
    Edited by: kumar0828 on Feb 7, 2013 10:40 PM
    Edited by: kumar0828 on Feb 7, 2013 10:42 PM

    >
    I Built the statement as required but i need the column list because the first column value of each row should be inserted into one more table.
    So i was asking how to fetch the column list in a ref cursor so that value can be inserted in one more table.
    >
    Then add a RETURNING INTO clause to the query to have Oracle return the first column values into a collection.
    See the PL/SQL Language doc
    http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/returninginto_clause.htm#sthref2307

  • Question on how to Hide the User Name, Password, and Domain fields in the MDT Wizard

    MDT 2012 U1
    Deploying Windows 7 via Offline Media (ISO) to MS Virtual PC's
    I am looking on how to Hide the User Name, Password, and Domain fields which are prepopulated in the MDT wizard via the CS.ini (Not so concerned about the Domain field as I am User Name and Password)
    We do need the Computer Name and OU fields to be seen, so skipping the wizard is not a option
    The client just does not want these fields to be seen by the end users, they dont want them to even know the account name used for adding the machine to the domain, of course the password is not displayed but it must not be displayed either.
    But since we use the fields they must still  be fuctional just not seen.
    Thanks.....
    If this post is helpful please click "Mark for answer", thanks! Kind regards

    You shouldn't have to edit DeployWiz_Definition_ENU.xml. You should only need to add "SkipAdminPassword=YES" to the CS.ini file and your authentication information.
    Example:
    [Settings]
    Priority=Default
    Properties=MyCustomProperty
    [Default]
    OSInstall=Y
    SkipCapture=NO
    SkipAdminPassword=YES
    UserID=<MyUserID>
    UserPassword=<MyPassword>
    UserDomain=<MyDomain.com>
    SkipProductKey=NO
    SkipComputerBackup=YES
    SkipBitLocker=NO
    -Nick O.
    Nick,
    SkipAdminPassword=YES is for:
    You can skip the Administrator Password wizard page by using this property in the
    customsettings.ini.
    I am hidding the Username/Password/and domain field in the computer name Wizard pane which is read from the cs.iniDomainAdmin=xxxxx
    DomainAdminPassword=xxxxx
    DomainAdminDomain=xxxxxx
    JoinDomain=xxxxxx
    If this post is helpful please click "Mark for answer", thanks! Kind regards

  • How to Change the Alias name for Internet user in SU01 tr code through cod?

    Hi Guys,
                 My req is we have to change the Alias name(SU01 tr code) for the existing users thru code.So can anybody tell me how to change the Alias name like which we do it in SU01 tr code thru code or FM.?
                Is there any FM for tha changing Alias Name?
    Thanks,
    Gopi.

    Hello Gopi Anne ,
                                 You can use the following FM / BAPI :
    BAPI_USER_CHANGE
    MY_BAPI_USER_CHANGE
    For BAPI_USER_CHANGE :
    You need to make use of the IMPORT parameter :
    ALIAS     TYPE     BAPIALIAS                               User Name Alias
    ALIASX     LIKE     BAPIALIASX                               User alias change flag
    Thanks,
    Greetson

  • How to print the file name in sap

    Hi All,
    I have requirment like,
    there is a folder in my local system, inside that folder there are 10 Excel file like file1.xls,file2.xls..............file10.xls
    how to print the file name of all these file in SAp like
    file1.xls
    file2.xls
    file3.xls
    file4.xls
    file10.xls
    Appropriate points will be rewarded.
    Thanks in Advance
    Arun kumar

    Hi,
    Still you are facing any problem with this code expalin the problem with details , otherwise close this thread.
    Use Method <b>cl_gui_frontend_services=>directory_list_files</b> to read file names for a given directory
    after reading the files then Use FM : <b>RSPO_SX_OUTPUT_TEXTDATA</b> to create spool from internal table data and print the data.
    <b>sample code :</b>
    data: desktop_dir type string.
    data: ifiles type table of string.
    data: xfiles type string.
    data: count type i.
    data: filepath type string.
    call method cl_gui_frontend_services=>get_desktop_directory
      changing
        desktop_directory    = desktop_dir .
    call method cl_gui_cfw=>flush.
    call method cl_gui_frontend_services=>directory_list_files
      exporting
        directory                   = desktop_dir
    *    filter                      = '*.xls'
         files_only                  = 'X'
    *        DIRECTORIES_ONLY            =
      changing
        file_table                  = ifiles
        count                       = count.
      DATA : x_name       LIKE tsp03d-name,
             x_dest       LIKE tsp03d-padest VALUE 'LOCL',
             x_rows       LIKE sxpcklsti1-body_num VALUE 0,
             x_startrow   LIKE sxpcklsti1-body_start VALUE 1,
             x_pages      LIKE rspotype-pages VALUE 1,
             x_pages_1    TYPE p DECIMALS 2,
             x_rqtitle    LIKE sxpcklsti1-obj_descr,
             x_rqcopies   TYPE i VALUE 1,
             x_rqowner    LIKE trdyse01cm-username,
             x_immediate  LIKE pri_params-primm VALUE ' ',
             x_rqid       LIKE tsp01-rqident,
             i_contents    LIKE  solisti1 OCCURS 0 WITH HEADER LINE,
          x_pages   = 1.
          x_rqowner = sy-uname.
          x_dest     = 'LOCL'.
          x_startrow = 1.
          x_rqcopies = 1.
          x_immediate = 'X' .
          CALL FUNCTION 'RSPO_SX_OUTPUT_TEXTDATA'
           EXPORTING
    *       name                 =   x_name
             dest                 =  x_dest
             rows                 =  x_rows
             startrow             =  x_startrow
             pages                =  x_pages
             rqtitle              =  x_rqtitle
             rqcopies             =  x_rqcopies
             rqowner              =  x_rqowner
             immediately          =  x_immediate
           IMPORTING
             rqid                 =  x_rqid
           TABLES
             text_data            = i_contents
           EXCEPTIONS
             name_missing         = 1
             name_twice           = 2
             not_found            = 3
             illegal_layout       = 4
             internal_error       = 5
             size_mismatch        = 6
             OTHERS               = 7.
          IF sy-subrc <> 0.
    ** MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    **         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
          ENDIF.
    Regards
    Appana
    *Reward Points for helpful answers
    Message was edited by: L Appana

  • How to change the folder name in the web report.

    hi experts,
    can anybody give me the solution, how to change the folder name in the web report. any help is appreciated.
    waiting for ur favourable response.
    thanks
    suri

    Hi Tony,
    Yes, the business requires, only to change in the webreport only not in bex and roles. any suggestions will be helpful to me.
    thanks
    surendra

Maybe you are looking for

  • How do I transfer my contacts and other information from my 4S to my 5S when I receive it?

    In the past, I've always purchased my iPhone upgrades from the store (either Apple or AT&T) but I think I'm finally savvy enough to do all this on my own. I searched the knowledge base but I couldn't find anything that addressed this particular issue

  • Posting Cash Desk Overages

    When an overage is posted, the total amount of the cash drawer plus the negative amount of the overage is being posted to the cash deposit account. This negative amount should not hit the cash account and should show up as a credit to our expense/rev

  • Period (.) appearing at end of position displays

    Hello I've noticed that sometimes a period (.) is appearing at the end of position displays in the transport and event lists. eg 4 1 2 156. this can occur no matter how many digits are in the last number eg 4 1 2 1. Does this mean that some informati

  • Level 1 Alerts Not Working On BB Pearl.......Please help!

    Hi all, I used to have level 1 alerts on my BB to notify me of special emails that I needed to respond to urgently. Recently my company got acquired and we changed over to a new Exchange Server with a new Enterprise Activation (which wiped my BB comp

  • What to install in order to program in JSP

    Hey everyone, I only vaguely know what JSP is, so I'd like the basics on how to get started. First off, what do I need to download and install in order to run JSP scripts. I'm running Windows 98. Gibran